ZetCode

Dart X509Certificate

最后修改于 2025 年 4 月 4 日

Dart 中的 X509Certificate 类提供了处理 X.509 证书的功能。这些证书用于 SSL/TLS 连接。

X509Certificate 允许解析、检查和验证数字证书。它是 Dart 中用于安全网络通信的 dart:io 库的一部分。

基本定义

X509Certificate 代表一个 X.509 数字证书。它包含有关证书持有者、颁发者、有效期和公钥的信息。

主要功能包括主体/颁发者检查、有效期检查和指纹生成。它对于安全的网络通信至关重要。

解析证书

此示例显示了如何解析 PEM 编码的证书字符串。

main.dart
import 'dart:io';

void main() {
  const pemCert = '''
-----BEGIN CERTIFICATE-----
MIIDUTCCAjmgAwIBAgIJAKH9y6A5hQ4AMA0GCSqGSIb3DQEBCwUAMBsxGTAXBgNV
BAMMEHd3dy5leGFtcGxlLmNvbTAeFw0yMzAxMDEwMDAwMDBaFw0yNDAxMDEwMDAw
MDBaMBsxGTAXBgNVBAMMEHd3dy5leGFtcGxlLmNvbTCCASIwDQYJKoZIhvcNAQEB
BQADggEPADCCAQoCggEBALe9z5jZV7v5X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9
X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9
X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9
X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9
X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9
X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9
X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9
X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9
X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9
X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9
X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9
X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9
X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9
X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9
X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9
X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9
X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9
X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9
X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9
X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9
X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9
X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9
X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9
X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9
X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9
X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9
X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9
X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9
X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9
X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9
X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9
X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9
X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9
X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9
X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9
X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9
X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9
X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9
X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9
X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9
X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9
X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9
X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9
X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9
X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9
X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9
X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9X9h9
X9