web-dev-qa-db-ja.com

理想的な暗号通貨のデジタル署名

暗号通貨取引の検証に理想的なデジタル署名の特徴は何ですか?

私が尋ねる理由は、ビットコインの署名について この回答 は、コメントで可能な解決策を使用して、ECDSAのこの特定の使用を最適ではない潜在的な脆弱性について説明しているためです。

衝突がない、またはさらに悪いことに永遠に矛盾するなど、理想的な特性は現在不可能である可能性があることを理解していますが、デジタル署名のこの特定のアプリケーションを理解したいと思います。

2
user36556

ECDSAの問題は、ECDSAで署名されたものとは関係ありません。 each署名の完全にランダムなkパラメータの必要性は関係なく適用されます署名が暗号通貨用か、電子メール用か、デジタル証明書用か、その他何でも。

ECDSAは、デジタル署名スキームとして、非常に合理的です。それは効率的(RSAより速い)であり、その署名は短い(RSAより短い)、それはかなり長い間研究されてきた。ランダム性の必要性は重要な問題ですが、 解決策が存在します 。いずれにせよ、それは実装の問題と見なすことができます。最近のコンピューター(スマートフォンを含む)は、必要なすべてのランダム性にアクセスできます。コードだけが正しく書かれていれば。

2
Tom Leek

ECDSAの要件を尊重するだけで、すべてがうまくいきます。署名にRSAを使用することも問題ありません。

あなたが指摘したその特定のケースでは、トランザクションで乱数を再利用することにより、攻撃者は解決するだけで秘密鍵を回復することができます

Key=((r * modpow((s1 - s2), p - 2, p) * ((m1 * s2) - (m2 * s1)) % p

攻撃の例:

R=6819641642398093696120236467967538361543858578256722584730163952555838220871
S1=5111069398017465712735164463809304352000044522184731945150717785434666956473
M1=4834837306435966184874350434501389872155834069808640791394730023708942795899
S2=31133511789966193434473156682648022965280901634950536313584626906865295404159
M2=108808786585075507407446857551522706228868950080801424952567576192808212665067

結果を与える35027840177330064405683178523079910253772859809146826320797401203281604260438

これは1FaapwdwYVVBiV6Qvkis88c2KHPoxX1Jb1のキーを表します

参考文献

https://strm.sh/post/bitcoin-transaction-nonce-reuse/

0
OPSXCQ