一、ECDSA:
全名是Elliptic Curve DSA,即橢圓曲線DSA。它是Digital Signature Algorithm (DSA)應用了橢圓曲線加密算法的變種。橢圓曲線算法的原理很複雜,但是具有很好的公開密鑰算法特性,通過公鑰無法逆向獲得私鑰。
二、GM國密算法
GM國密算法實現方式與PKCS11一致。中間層提供SM2進行簽名與驗籤,SM3進行哈希,SM4實現加密。
三、Secp256k1
Secp256k1是指比特幣中使用的ECDSA(橢圓曲線數字簽名算法)曲線的參數,並且在高效密碼學標準(Certicom Research,http://www.secg.org/sec2-v2.pdf)中進行了定義。具有如下特點:
1)佔用很少的帶寬和存儲資源,密鑰的長度很短。
2)讓所有的用戶都可以使用同樣的操作完成域運算。
四、Ed25519
Ed25519數字簽名和驗證的性能都極高, 一個4核2.4GHz 的 Westmere cpu,每秒可以驗證 71000 個簽名,安全性極高,等價於RSA約3000-bit。簽名過程不依賴隨機數生成器,不依賴hash函數的防碰撞性,沒有時間通道攻擊的問題,並且簽名很小,只有64字節,公鑰只有32字節。
據https://safecurves.cr.yp.to/index.html網站性能比較如下: