Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
Le fournisseur de base et le fournisseur étendu peuvent spécifier la valeur et la longueur de la valeur de sel à utiliser. Le fournisseur de base définit une valeur salt à l’aide de la valeur de paramètre KP_SALT. Le fournisseur de base définit toujours onze octets de valeur de sel.
Le fournisseur amélioré définit la valeur salt en appelant CryptSetKeyParam avec la valeur de paramètre KP_SALT_EX spécifiée et avec le paramètre pbData pointant vers une structure CRYPT_INTEGER_BLOB qui contient le sel.
Notes
La longueur totale d’une clé symétrique de fournisseur amélioré et sa valeur salt ne peuvent pas être supérieures à 128 bits.
KP_SALT continue d’être fourni à des fins de compatibilité descendante avec le fournisseur de base. Les applications plus récentes doivent utiliser la valeur de paramètre KP_SALT_EX.
L’exemple suivant définit une valeur de sel.
// Specify 4 bytes of salt.
BYTE rgbSalt[] = {0x01, 0x02, 0x03, 0x04};
CRYPT_DATA_BLOB sSaltData;
sSaltData.pbData = rgbSalt;
sSaltData.cbData = sizeof(rgbSalt);
// Set the 4 bytes of salt required.
// hKey is an HCRYPTPROV handle previously
// assigned, such as by CryptImportKey.
if (CryptSetKeyParam(
hKey,
KP_SALT_EX,
(BYTE*)&sSaltData,
0))
{
printf("The salt value is set.\n");
}
else
{
printf("Setting the salt value failed.\n");
}