Ripple

瑞波如何驗證簽名?

  • November 19, 2015

據我了解,客戶端將以下資訊發送到伺服器 1.消息的雜湊值,2.公鑰 3.私鑰簽名

並且伺服器用公鑰和雜湊驗證簽名,檢查它是否屬於某個私鑰,伺服器還需要檢查公鑰是否對應於漣漪地址。

我對嗎?

而且我已經看到有一種用於 ECDSA 簽名的公鑰恢復方法。<https://crypto.stackexchange.com/questions/18105/how-does-recovering-the-public-key-from-an-ecdsa-signature-work>

如果我之前的判斷是正確的,那麼客戶端是否可以只向伺服器發送簽名和雜湊?我想這是一個問題,因為我們無法從簽名和雜湊中得出曲線。

你對第一部分是正確的。

不幸的是,從簽名中恢復公鑰是不太可能*的。*您可以恢復用於 ECDSA 目的的公鑰,但這並不能保證它與預期的公鑰逐字節相同。這意味著它可能不會散列到正確的地址,這可能會導致檢查是否使用了正確的公鑰失敗。

引用自:https://bitcoin.stackexchange.com/questions/41418