我想知道是否有(我希望有)ECDH(椭圆曲线 Diffie-Hellman)和 ECDSA(椭圆曲线数字签名算法)的公钥大小标准,适用于素数字段(192、224、256)上的每种曲线类型, 384 和 521)。
公钥长度
信息安全
密码学
密钥管理
电子签名
2021-08-29 07:30:22
1个回答
ECDSA 或 ECDH 公钥是一个曲线点——因此它具有曲线的大小。如果您愿意,对于基于 EC 的密码算法,我们并不是真正谈论标准尺寸,而是标准曲线。
让许多人共享同一条曲线是没有问题的——这不会让他们共享私钥或类似的东西。另一方面,由于点计数等原因,创建一条新曲线非常复杂且昂贵。所以定义了几条标准曲线;最著名和最受支持的是NIST 发布的FIPS 186-3中的那些。有 15 条这样的曲线,其中 5 条使用“素数域”,即以大素数为模的整数——长度分别为 192、224、256、384 和 521 位。如果您决定使用 P-256 曲线,那么根据定义,您的公钥将是该曲线上的一个点,表示为 256 位字段中的两个值(这两个值是点坐标 X 和 Y)。
出于传统,我们可以说 P-256 是“256 位曲线”,因为可能的曲线点的数量恰好是 2 255和 2 256之间的质数。因此,如果出于某些法律/营销原因,您需要将密钥的大小表示为位数,请说“256”。请注意,您不能直接比较不同算法的密钥大小(1024 位 RSA 密钥并不比 256 位 ECDSA 密钥“强”)。