|
|
|
|
|
CrypteAsymétrique (Fonction) En anglais : EncryptAsymmetric Crypte un buffer en utilisant un algorithme de chiffrement asymétrique (RSA) nécessitant une clé publique et une clé privée. Ce message crypté pourra être décrypté : - avec la fonction DécrypteAsymétrique.
- avec un logiciel tiers (en utilisant les mêmes options de remplissage).
bufACrypter est un Buffer = "Message à crypter"
bufMessageCrypté est un Buffer
sFichierCléPublique est une chaîne = fRepExe() + "\ClePublique.pem"
sMotDePasseCléPublique est une chaîne = "xxx"
bufMessageCrypté = CrypteAsymétrique(bufACrypter, sFichierCléPublique, ...
sMotDePasseCléPublique, cryptePaddingPKCS1)
bufMessageCrypté est un Buffer
bufMessageDécrypté est un Buffer
sFichierCléPrivée est une chaîne = fRepExe() + "\ClePrivee.pem"
sMotDePasseCléPrivée est une chaîne = "xxx"
bufMessageDécrypté = DécrypteAsymétrique(bufMessageCrypté, sFichierCléPrivée, ...
sMotDePasseCléPrivée, cryptePaddingPKCS1)
bufACrypter est un Buffer = ChaîneVersUTF8("?????? Test")
bufCléPrivée est un Buffer
bufCléPublique est un Buffer
(bufCléPrivée, bufCléPublique) = CrypteGénèreCléRSA(1024)
bufChiffré est un Buffer = CrypteAsymétrique(bufACrypter, bufCléPublique)
bufSign est un Buffer = CertificatSigneChaîne(bufChiffré, bufCléPrivée, "", ...
certSignatureSeule + certSHA256)
SI CertificatVérifieChaîne(bufChiffré, bufSign, bufCléPublique, "", "", ...
certSignatureSeule + certSHA256) ALORS
bufClair est un Buffer = DécrypteAsymétrique(bufChiffré, bufCléPrivée)
Trace("Message authentique")
Trace(UTF8VersChaîne(bufClair))
SINON
Trace("Message non authentifié")
FIN
Syntaxe
<Résultat> = CrypteAsymétrique(<Contenu à  crypter> , <Fichier clé publique> [, <Mot de passe> [, <Remplissage>]])
<Résultat> : Chaîne de caractères ou Buffer Résultat du cryptage du message spécifié. <Contenu à crypter> : Buffer Buffer à crypter. Attention : La taille du message à crypter doit être inférieure à la taille de la clé diminuée de la taille minimum du padding (11 octets pour PKCS1 et 41 pour OAEP). Par exemple, pour une clé de 4096 bits et le padding OAEP, le message ne peut dépasser 471 octets. <Fichier clé publique> : Chaîne de caractères ou Buffer - Nom et chemin du fichier correspondant à la clé publique à utiliser pour crypter. Les formats de clé pem, der et p12 sont supportés.
- Buffer contenant la clé publique à utiliser pour crypter.
<Mot de passe> : Chaîne de caractères optionnelle Mot de passe du fichier de clé (si nécessaire). <Remplissage> : Constante optionnelle de type Entier Mode de remplissage des données cryptées pour être compatibles avec la taille requise par les algorithmes de cryptage par blocs :
| | cryptePaddingOAEP | Remplissage effectué selon l'algorithme OAEP (Optimal Asymmetric Encryption Padding). | cryptePaddingPKCS1 (Valeur par défaut) | Remplissage effectué selon l'algorithme PKCS 1 (Public Key Cryptographic Standards). |
Liste des exemples associés :
|
Exemples unitaires (WINDEV) : Chiffrement asymétrique
[ + ] Utilisation des fonctions WLangage de chiffrement asymétrique (CrypteAsymétrique, DécrypteAsymétrique)
|
Classification Métier / UI : Code métier Composante : wd300com.dll
Documentation également disponible pour…
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|