跳到主要内容
ecdsa.com

公钥

非对称密钥对中可以自由分享的那一半,用于验证签名、向对应私钥的持有者加密数据,或与其协商密钥。
其他写法public keypubkeyverification key

从数学上看,公钥由私钥派生:ECDSA 和 ECDH 中是曲线点 Q = d·G,Ed25519 和 X25519 中是 32 字节的编码点,RSA 中是模数和指数 (n, e),ML-KEM 和 ML-DSA 中是矩阵种子加一个向量。公钥大小从 32 字节(Ed25519)、33/65 字节(P-256 压缩/未压缩形式)到 294 字节(以 DER 编码为 SubjectPublicKeyInfo 的 RSA-2048),再到 1,312~2,592 字节(ML-DSA)不等。

常见的封装形式:DER 或 PEM 格式的 SubjectPublicKeyInfo(-----BEGIN PUBLIC KEY-----)、较旧的 PKCS #1 RSAPublicKey(BEGIN RSA PUBLIC KEY)、JWK(kty、crv、x、y 或 n、e)、OpenSSH 单行格式(ssh-ed25519 AAAA…)、WebAuthn 中的 COSE_Key、OpenPGP 密钥包,以及区块链地址——地址就是公钥的哈希。

公钥本身不携带身份。信任来自绑定关系:由 CA 签名的证书、通过 HTTPS 从颁发者获取的 JWKS、known_hosts 条目、固定的指纹或链上地址。使用从他人处获得的公钥之前,先校验它(是否在曲线上、大小、类型)。

标准与参考资料

全部术语