CryptVerifySignature
Vérifie la validité de la signature numérique des données.
Format
CryptVerifySignature ( données ; algorithme ; cléRSAPublique ; signature )
Paramètres
données
: toute expression de type texte qui représente les données à vérifier par rapport à la signature
.
algorithme
: nom de l'algorithme cryptographique à utiliser (consultez la section CryptAuthCode fonction).
cléRSAPublique
: texte qui représente la clé RSA publique PKCS #1 au format PEM correspondant à la clé privée utilisée pour générer la signature
.
signature
: signature RSA binaire à vérifier par rapport aux données
, comme la valeur renvoyée par la CryptGenerateSignature fonction.
Résultat
Nombre
Provient de la version
18.0
Description
Pour vérifier une signature, cette fonction compare le résumé du message de données
(à l'aide de l'algorithme spécifié) avec le résumé obtenu en décryptant la signature
à l'aide de la cléRSAPublique
.
Une clé RSA publique doit être au format suivant :
-----BEGIN PUBLIC KEY-----
MIICIjANBgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAqqDiwrPQwVaJzOzfFVBd
...
egkXva5cYBb8PNifmlPXVb8CAwEAAQ==
-----END PUBLIC KEY-----
Si la signature est valide pour les données, cette fonction renvoie 1 (vrai) ; si ce n'est pas le cas, elle renvoie 0 (faux). Si l'un des paramètres n'est pas valide, elle renvoie « ? ».
Exemple 1
Utilise l'algorithme SHA-512 pour générer le résumé de la rubrique Texte table::texteSigné. Décode au format Base64 la signature stockée dans la rubrique Texte table::signature et la renvoie sous forme de données de conteneur. Décrypte la signature à l'aide de la valeur de la rubrique Texte table::cléRSAPublique et compare le résumé de la signature avec le résumé de la rubrique Texte table::texteSigné. Si la signature est valide, renvoie 1.
CryptVerifySignature (
table::texteSigné ; "SHA512" ; table::cléRSAPublique ;
Base64Decode (
table::signature ; "sig.données"
)
)