Signature
EdDSA 與具有自定義曲線的 ECDSA 有何不同?
我剛剛找到了這份草案/非正式 IETF 規範:Alternative Elliptic Curve Representation:
本文件詳細說明瞭如何將蒙哥馬利曲線和(扭曲的)愛德華茲曲線表示為短 Weierstrass 形式的曲線,並說明如何使用已經實現的現有實現來實現橢圓曲線計算,例如使用 NIST 素數曲線的 ECDSA 和 ECDH。
這引發了我的好奇心,因為我認為 ECDSA 和 EdDSA 的差異不僅僅是不同的曲線。
據我了解,愛德華茲曲線可以用 Weierstrass 形式表示。
EdDSA 與使用帶有 Edwards 曲線(例如,Curve25519)的 ECDSA 轉換為 Weierstrass 曲線有何不同?由於曲線參數,我最感興趣的是功能方面而不是可能的優化。
EdDSA不是不同曲線上的 ECDSA。相反,它是一種 Schnorr 簽名。事實上,這個名字非常令人困惑,我很確定它是為了給人留下這種印象而選擇的,因為 Schnorr 鮮為人知。
Schnorr本質上是關於公鑰離散日誌的零知識證明,通過應用於經典 Schnorr Sigma 協議的 Fiat-Shamir 範式獲得。
ECDSA 是一個完全不同的簽名方案,它是專門為繞過 Schnorr 的專利而設計的(至少,這是該領域的理解)。