Public-Key

證明擁有 libsodium 中的私鑰

  • January 20, 2020

我想證明我擁有使用sk公鑰的私鑰。pk``libsodium

因此,我正在m使用 libsodium 的crypto_sign功能簽署一條持續的消息。然後發布已簽名的消息 ( signature + m)。

libsodiumcrypto_sign用作Ed25519數字簽名方案。

問題:

  • 重複使用恆定消息是否會引入任何攻擊媒介?
  • 關於狀態的 libsodium 文件crypto_sing

在驗證使用公鑰簽名的消息之前,驗證者需要已經知道並最終信任公鑰。

https://libsodium.gitbook.io/doc/public-key_cryptography/public-key_signatures#purpose

該資訊是否與我的案件相關,因為我實際上不想驗證消息,但想證明擁有sk

如果您要多次公開帶有簽名的同一消息,它很容易受到重放攻擊。這是另一方基本上複製您的消息和簽名並可以隨時重新發布的地方,這意味著他們擁有密鑰。為了解決這個問題,請在簽名前向消息中添加一小段資訊,例如每個已發布簽名唯一的計數器或隨機數。

至於信任簽名密鑰,必須使用受信任方,即證書頒發機構或 PKI,以便從他們那裡收到的任何數據都是可信的。所以當 Alice 發布消息和簽名時,CA 告訴人們 Alice 的靜態公鑰,這是可信的,然後每個人都可以安全地驗證 Alice 確實擁有她聲稱擁有的私鑰這一事實。

引用自:https://crypto.stackexchange.com/questions/77120