RSA署名の長さは何ですか?キーサイズが1024でRSAシグネチャが128バイト、鍵サイズが512ビット、RSAシグネチャが64バイトの場合は、常にRSAキーサイズと同じサイズですか? RSA係数は何ですか? また、RSA-sha1とは何ですか? すべてのポインターを大いに感謝します。RSA署名サイズ?
答えて
あなたが正しいです、RSA署名のサイズは鍵のサイズに依存します、RSA署名のサイズは、モジュラスの長さに等しいバイトです。つまり、「nビット鍵」の場合、結果の署名は正確にnビット長くなります。計算された署名値は必ずしもnビットではないが、結果は正確にnビットに一致するようにパディングされる。
ここで、この動作方法を示します。RSAアルゴリズムはmodular exponentiationに基づいています。そのような計算のために、最終結果は、「標準」結果の残りをモジュラスで割ったものである。モジュラ演算はNumber Theoryで大きな役割を果たします。合同(≡)の定義は
m is congruent to n mod k if k divides m - n
簡単な例がある - せ、N = 2及びk次いで= 7、
2 ≡ 2 (mod 7) because: 7 divides 2 - 2
9 ≡ 2 (mod 7) because: 7 divides 9 - 2
16 ≡ 2 (mod 7) because: 7 divides 16 - 2
...
7は実際は、分割の定義は
除算0でありませんプロパティBを有する整数nがある場合にbは01 NA =整数を分割します整数aは
n = 0の場合、すべての整数が0を分けることを意味しますが、合同を負の数に拡張することもできます(RSAの場合は重要ではありません) )。
合理性の原則は、剰余の知識を私たちの素朴な理解にまで広げているということです。この例では、モジュラスは「mod後の数値」です。例では、7となります。私たちはこれを合同クラスと呼び、計算の「残りの部分」について直感的にやっているのと同じように、通常は1つの代表(最も小さな一致する整数> 0)を選択します。
m^d ≡ r (mod n)
これは二つのことを意味するようにRSAで
は、メッセージMは、「プライベート指数」Dとべき乗を意味署名、結果rは、最小の整数> 0であり、モジュラスNよりも小さい
- (ビット単位)nで囲まれている(ビット)のRの長さ(ビット単位)Mの
- 長さでなければならない< = N(ビットでも)
シグネチャを正確にnビット長くするには、何らかの形のパディングが適用されます。 Cf。有効なオプションについてはPKCS#1を参照してください。
第2の事実は、複数のチャンクでmを打ち切って署名しなければならないことを暗示しています< = nしかし、これは実際には遅すぎるので(モジュール累乗は計算上高価です)したがって、メッセージをnより小さくするためにメッセージを圧縮する別の方法が必要です。この目的のために、あなたが言及したSHA-1のようなcryptographically secure hash functionsを使用します。任意の長さのメッセージmにSHA-1を適用すると、RSAモジュラスの典型的なサイズよりも小さい20バイトの「ハッシュ」が生成されます。一般的なサイズは1024ビットまたは2048ビット、つまり128または256バイトです。任意のメッセージに対して署名計算を適用することができます。
このようなハッシュ関数の暗号特性は、(理論上 - 署名偽造は研究コミュニティの大きな話題です)、ブルートフォース以外の署名を偽造することはできません。
- 1. RSA署名サイズの不一致
- 2. RSA署名パフォーマンス
- 3. RSA署名の確認iOS
- 4. RSAデジタル署名検証
- 5. 未加工のRSA解読/署名
- 6. 署名は、RSAキーペア弾む城
- 7. RSA署名検証パラメータの明確化
- 8. RSA SHA256署名の生成と検証
- 9. RSA署名の作成と転送
- 10. 基本暗号の理解:RSA署名
- 11. RSAデジタル署名が失敗する
- 12. .net PSSパディング付きRSA署名データエラー
- 13. DKIMキーが無効 - 悪いRSA署名
- 14. RSAとjsrsasignとCとの署名
- 15. rsaモジュールとm2cryptoからRSA署名が異なる
- 16. C#RSAで署名を署名し、検証する。エンコードの問題
- 17. RSA SHA-256ハッシュでJWTに署名する方法
- 18. インポートした秘密鍵を使用したRSA署名
- 19. C#でのRSA署名とC++での検証C++で
- 20. Crypto ++ RSA - 同じ鍵ペアで暗号化して署名する
- 21. RSA公開鍵アルゴリズムを使用した署名
- 22. GOでRSA-SHAを使用した署名と復号
- 23. apache cxf wss4j署名方式dsaからrsa
- 24. Gitの拡張機能は、GithubのRSA署名
- 25. pacs#11 apiを使用してRSAでsha256ハッシュに署名しますか?
- 26. java.lang.SecurityException:以下は無署名ファイル用manifiestセクション(RSA、SF、DSAファイルとMANIFEST.MFを除く)
- 27. ブラインドRSA署名は.NET暗号化APIを使用していますか?
- 28. RSA-SHA1アルゴリズムを使用してXML要素に署名する方法は?
- 29. 署名者に署名するDocusign署名付き文書
- 30. Node.Js Crypto - 署名と署名解除JSON
ありがとうございました!あなたの助けをよろしく – user839917
...それはどれくらいですか? 1024ビットの鍵で1バイトを暗号化すると、署名が1024ビット長くなることがわかります。 – ixe013
私は結果をもう少し明確に強調しました:)そうです、1024ビットの鍵は1024ビットの署名を生成します。 – emboss