ECDiffieHellmanKeyDerivationFunction Enumeración

Definición

Especifica la función de derivación de claves que la clase ECDiffieHellmanCng va a utilizar para convertir acuerdos confidenciales en material de clave.

public enum class ECDiffieHellmanKeyDerivationFunction
public enum ECDiffieHellmanKeyDerivationFunction
type ECDiffieHellmanKeyDerivationFunction = 
Public Enum ECDiffieHellmanKeyDerivationFunction
Herencia
ECDiffieHellmanKeyDerivationFunction

Campos

Hash 0

Se utiliza un algoritmo hash para generar el material de clave. La propiedad HashAlgorithm especifica el nombre del algoritmo que se va a utilizar. Si no se especifica el nombre del algoritmo, se utiliza SHA256 como algoritmo predeterminado. También puede especificar las propiedades SecretPrepend y SecretAppend, pero no son necesarias. La cantidad de material clave que se genera es equivalente al tamaño del código hash para el algoritmo especificado.

Hmac 1

Se utiliza un algoritmo de código de autenticación de mensajes basado en hash (HMAC) para generar el material de clave. La propiedad HmacKey especifica la clave que se va a utilizar. Se debe establecer esta propiedad o la propiedad UseSecretAgreementAsHmacKey debe estar establecida en true; de lo contrario, se genera una CryptographicException cuando se utiliza Hmac. Si se establecen ambas propiedades, el acuerdo confidencial se utiliza como clave HMAC. También puede especificar las propiedades SecretPrepend y SecretAppend, pero no son necesarias. La cantidad de material clave que se genera es equivalente al tamaño del valor HMAC.

Tls 2

Se utiliza el protocolo Seguridad de la capa de transporte (TLS) para generar el material de clave. Se deben establecer las propiedades Seed y Label; de lo contrario, se genera una CryptographicException cuando se utiliza Tls. Este valor genera 160 bits del material de clave.

Comentarios

La ECDiffieHellmanKeyDerivationFunction enumeración define el tipo de algoritmo que se usará para transformar un contrato secreto sin procesar en material de clave. El acuerdo secreto es el valor que se genera a partir de una clave privada y la clave pública de la otra parte, como parte del intercambio de claves. Es el valor de inicialización del material de clave generado por el ECDiffieHellmanCng.DeriveKeyMaterial método .

La ECDiffieHellmanCng.KeyDerivationFunction propiedad usa esta enumeración para obtener la función de derivación de claves para la ECDiffieHellmanCng clase .

Se aplica a