跳到主要内容
ecdsa.com

SEC 1 ECPrivateKey

SEC 1 和 RFC 5915 定义的椭圆曲线私钥结构,OpenSSL 将其写为 -----BEGIN EC PRIVATE KEY-----,其中存储私钥标量,以及可选的曲线参数和公钥点。
其他写法EC PRIVATE KEYECPrivateKeyRFC 5915SEC1

ECPrivateKey 是一个 SEQUENCE,依次包含版本号 1、以 OCTET STRING 表示的私钥标量、可选的 [0] 曲线参数,以及可选的 [1] 公钥 BIT STRING。[0] 字段通常存放命名曲线的 OID;使用显式曲线参数写出的文件(很少见,且被许多库拒绝)则在这里携带完整的曲线定义。

它是 PKCS #1 RSA 格式在椭圆曲线上的对应格式:OpenSSL 的 openssl ecparam -genkey 和 openssl ec 仍然输出这种格式,而 openssl genpkey 输出 PKCS #8,后者把同样的 ECPrivateKey 嵌入 PrivateKeyInfo 中,并把曲线 OID 移到算法参数里。Java 和 WebCrypto 要求使用 PKCS #8。

这个名称也指 SEC 1 文档本身(Standards for Efficient Cryptography,第 2 版,2009年),其中定义了 ECDSA、ECDH、ECIES、点编码和公钥恢复。

标准与参考资料

全部术语