| 规则一 | 同一私钥下 k 必须唯一 |
|---|---|
| 规则二 | k 不可预测,取自带密码学随机源 |
| 确定性方案 | RFC 6979:由私钥与消息散列确定派生 k |
| 历史案例 | 2010 年 PS3 因 k 固定导致私钥被恢复 |
使用成熟库(cryptography)
使用成熟库(cryptography)
from cryptography.hazmat.primitives import hashes
from cryptography.hazmat.primitives.asymmetric import ec
sig = private_key.sign(data, ec.ECDSA(hashes.SHA256())) # 库内部安全处理 k签名服务若在重启或容器复制后复用随机状态,可能产生相同 k;密钥生成与签名都应由可信随机源驱动。