0
:SignatureMethod.RSA_SHA1
をしかし、通常の署名を使用しているときにだけ
署名の方法
Cipher c1=Cipher.getInstance("RSA");
を行うには、したがって、これら2つの違いは何ですか?
:SignatureMethod.RSA_SHA1
をしかし、通常の署名を使用しているときにだけ
署名の方法
Cipher c1=Cipher.getInstance("RSA");
を行うには、したがって、これら2つの違いは何ですか?
差は単純である:
RSA
は公開鍵が重要なメッセージを暗号化するために使用されている(public-key)cryptographyアルゴリズムです。暗号化されたデータは、秘密鍵で復号化する必要があります。一方、RSA
cryptography + SHA1
Message Digestの組み合わせである。
RSA-SHA1
である。 message digestは4つの主要なまたは重要な特性を有する一方向ハッシュ関数である:
を有する2つの異なるメッセージを見つけることが不可能であるハッシュ
RSA
)を介して署名が作成され、次に、真正性のハッシング関数(例えば、SHA-1
)を介して公開鍵、メッセージ、および署名に対する検証プロセスが行われる。
しかし、xmlの署名では、すでに "DigestMethod.SHA256"があります。ここでは、referece要素のダイジェストを見つけることができます。次に秘密鍵で要素に署名します。 –
Ashwin
私はまだあなたに従っていない。 Digestメソッドは、(あなたのケースでは 'DigestMethod.SHA256')Message Digestにどのアルゴリズムを使用したかを伝えるためだけに使われます。 「署名」は、暗号を使用して署名を生成する。これは** DigestMethodの前に**発生する必要があります。 –
最初に、レフェレンス要素のディジットが計算されます。そのdigenstは、署名されたinfo要素に含まれています。この署名されたino要素は、送信者秘密鍵を使用して署名されます。メッセージを受信する受信機は、最初に署名を検証する。次に、参照要素のダイジェストを作成し、それを着信ダイジェスト値と比較することによって、参照要素を検証する。 – Ashwin