跳到主要内容
ecdsa.com

主体公钥信息(SPKI)

RFC 5280 定义的 ASN.1 结构,把算法标识符与公钥位串组合在一起;每张 X.509 证书内部都使用它,它也是标准的公钥文件格式(-----BEGIN PUBLIC KEY-----)。
其他写法SubjectPublicKeyInfoBEGIN PUBLIC KEYX.509 public keyPKIX public key

SubjectPublicKeyInfo 是由 AlgorithmIdentifier 和 subjectPublicKey BIT STRING 组成的 SEQUENCE。对于 EC 密钥,算法为 id-ecPublicKey,参数为曲线 OID,位串中存放 SEC 1 格式的点;对于 RSA,算法为 rsaEncryption,参数为 NULL,内部是 PKCS #1 的 RSAPublicKey;对于 Ed25519,算法为 1.3.101.112,没有参数,内容为 32 字节。DER 编码大小:P-256 为 91 字节,RSA-2048 为 294 字节,Ed25519 为 44 字节。

它是公钥的交换格式:OpenSSL -pubout、Java 的 X509EncodedKeySpec、Go 的 x509.MarshalPKIXPublicKey、WebCrypto 的 spki 导出以及大多数 JWT 库都使用它。SPKI 的哈希被用作在证书续期后依然不变的密钥级标识符:HPKP 风格的固定值(pin-sha256)、证书透明度监控以及 Chrome 的 CRLSets。

标准与参考资料

全部术语