RSACryptoServiceProvider.VerifyData(Byte[], Object, Byte[]) Methode
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Überprüft, ob eine digitale Signatur gültig ist, indem der Hashwert in der Signatur unter Verwendung des bereitgestellten öffentlichen Schlüssels und durch Vergleichen mit dem Hashwert der bereitgestellten Daten.
public:
bool VerifyData(cli::array <System::Byte> ^ buffer, System::Object ^ halg, cli::array <System::Byte> ^ signature);
public bool VerifyData (byte[] buffer, object halg, byte[] signature);
override this.VerifyData : byte[] * obj * byte[] -> bool
member this.VerifyData : byte[] * obj * byte[] -> bool
Public Function VerifyData (buffer As Byte(), halg As Object, signature As Byte()) As Boolean
Parameter
- buffer
- Byte[]
Die Daten, die signiert wurden.
- halg
- Object
Der Name des Hashalgorithmus, der zum Erstellen des Hashwerts der Daten verwendet wird.
- signature
- Byte[]
Die zu überprüfenden Signaturdaten.
Gibt zurück
true
, wenn die Signatur gültig ist, andernfalls false
.
Ausnahmen
Der halg
-Parameter ist null
.
Der halg
-Parameter ist kein gültiger Typ.
Beispiele
Das folgende Beispiel zeigt, wie Sie die VerifyData -Methode verwenden, um eine Signatur zu überprüfen. Dieses Codebeispiel ist Teil eines größeren Beispiels für die SignHash -Methode.
bool VerifyHash( RSAParameters rsaParams, array<Byte>^signedData, array<Byte>^signature )
{
RSACryptoServiceProvider^ rsaCSP = gcnew RSACryptoServiceProvider;
SHA1Managed^ hash = gcnew SHA1Managed;
array<Byte>^hashedData;
rsaCSP->ImportParameters( rsaParams );
bool dataOK = rsaCSP->VerifyData(signedData, CryptoConfig::MapNameToOID("SHA1"), signature);
hashedData = hash->ComputeHash( signedData );
return rsaCSP->VerifyHash( hashedData, CryptoConfig::MapNameToOID( "SHA1" ), signature );
}
public bool VerifyHash(RSAParameters rsaParams, byte[] signedData, byte[] signature)
{
RSACryptoServiceProvider rsaCSP = new RSACryptoServiceProvider();
SHA1Managed hash = new SHA1Managed();
byte[] hashedData;
rsaCSP.ImportParameters(rsaParams);
bool dataOK = rsaCSP.VerifyData(signedData, CryptoConfig.MapNameToOID("SHA1"), signature);
hashedData = hash.ComputeHash(signedData);
return rsaCSP.VerifyHash(hashedData, CryptoConfig.MapNameToOID("SHA1"), signature);
}
Public Function VerifyHash(ByVal rsaParams As RSAParameters, ByVal signedData() As Byte, ByVal signature() As Byte) As Boolean
Dim rsaCSP As New RSACryptoServiceProvider()
Dim hash As New SHA1Managed()
Dim hashedData() As Byte
Dim dataOK As Boolean
rsaCSP.ImportParameters(rsaParams)
dataOK = rsaCSP.VerifyData(signedData, CryptoConfig.MapNameToOID("SHA1"), signature)
hashedData = hash.ComputeHash(signedData)
Return rsaCSP.VerifyHash(hashedData, CryptoConfig.MapNameToOID("SHA1"), signature)
End Function 'VerifyHash
Hinweise
Diese Methode überprüft die RSA digitale Signatur, die von der SignData -Methode erstellt wurde. Die Signatur wird überprüft, indem der Hashwert aus der Signatur mithilfe des öffentlichen Schlüssels abgerufen wird, mit dem sie signiert wurde, und dieser Wert mit dem Hashwert der bereitgestellten Daten verglichen wird.
Der halg
-Parameter kann eine String, oder HashAlgorithmeine Typeakzeptieren.