CryptographicEngine.VerifySignature Método
Definición
Importante
Parte de la información hace referencia a la versión preliminar del producto, que puede haberse modificado sustancialmente antes de lanzar la versión definitiva. Microsoft no otorga ninguna garantía, explícita o implícita, con respecto a la información proporcionada aquí.
Comprueba una firma de mensaje.
public:
static bool VerifySignature(CryptographicKey ^ key, IBuffer ^ data, IBuffer ^ signature);
static bool VerifySignature(CryptographicKey const& key, IBuffer const& data, IBuffer const& signature);
public static bool VerifySignature(CryptographicKey key, IBuffer data, IBuffer signature);
function verifySignature(key, data, signature)
Public Shared Function VerifySignature (key As CryptographicKey, data As IBuffer, signature As IBuffer) As Boolean
Parámetros
- key
- CryptographicKey
Clave usada para la comprobación. Debe ser la misma clave usada anteriormente para firmar el mensaje.
- data
- IBuffer
Mensaje que se va a comprobar.
- signature
- IBuffer
Firma calculada anteriormente sobre el mensaje que se va a comprobar.
Devoluciones
bool
True si se comprueba el mensaje.
Ejemplos
public void SampleVerifyHMAC(
IBuffer buffMsg,
CryptographicKey hmacKey,
IBuffer buffHMAC)
{
// The input key must be securely shared between the sender of the HMAC and
// the recipient. The recipient uses the CryptographicEngine.VerifySignature()
// method as follows to verify that the message has not been altered in transit.
Boolean IsAuthenticated = CryptographicEngine.VerifySignature(hmacKey, buffMsg, buffHMAC);
if (!IsAuthenticated)
{
throw new Exception("The message cannot be verified.");
}
}
Comentarios
Para firmar contenido, el remitente normalmente crea un hash sobre el mensaje, firma (cifra) el hash y, a continuación, envía la firma y el mensaje sin cifrar. El destinatario usa la misma clave y algoritmo para calcular un hash sobre el mensaje, descifra la firma y compara la firma descifrada con el valor hash. Si coinciden, el destinatario puede estar razonablemente seguro de que el mensaje proviene realmente del remitente y no se manipuló durante la transmisión. Para obtener más información, vea MACs, hashes y firmas.