RSACryptoServiceProvider.VerifyData(Byte[], Object, Byte[]) Metoda
Definicja
Ważny
Niektóre informacje dotyczą wersji wstępnej produktu, która może zostać znacząco zmodyfikowana przed jego wydaniem. Firma Microsoft nie udziela żadnych gwarancji, wyraźnych ani dorozumianych, w odniesieniu do podanych tutaj informacji.
Sprawdza, czy podpis cyfrowy jest prawidłowy, określając wartość skrótu w podpisie przy użyciu podanego klucza publicznego i porównując go z wartością skrótu podanych danych.
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
Parametry
- buffer
- Byte[]
Dane, które zostały podpisane.
- halg
- Object
Nazwa algorytmu skrótu użytego do utworzenia wartości skrótu danych.
- signature
- Byte[]
Dane podpisu do zweryfikowania.
Zwraca
true jeśli podpis jest prawidłowy; w przeciwnym razie , false.
Wyjątki
Parametr halg ma wartość null.
Parametr halg nie jest prawidłowym typem.
Przykłady
W poniższym przykładzie pokazano, jak użyć VerifyData metody w celu zweryfikowania podpisu. Ten przykład kodu jest częścią większego przykładu udostępnionego SignHash dla metody .
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
Uwagi
Ta metoda weryfikuje RSA podpis cyfrowy wygenerowany przez metodę SignData . Podpis jest weryfikowany przez uzyskanie wartości skrótu z podpisu przy użyciu klucza publicznego, z którego został podpisany, i porównanie tej wartości z wartością skrótu podanych danych.
Parametr halg może akceptować Stringparametr , a HashAlgorithmlub Type.