Identificadores de propiedad primitiva de criptografía

Los valores siguientes se usan con las funciones BCryptGetProperty y BCryptSetProperty para identificar una propiedad.

BCRYPT_ALGORITHM_NAME

L"AlgorithmName"

Cadena Unicode terminada en null que contiene el nombre del algoritmo.

BCRYPT_AUTH_TAG_LENGTH

L"AuthTagLength"

Las longitudes de etiqueta de autenticación admitidas por el algoritmo. Esta propiedad es una estructura BCRYPT_AUTH_TAG_LENGTHS_STRUCT . Esta propiedad solo se aplica a los algoritmos.

BCRYPT_BLOCK_LENGTH

L"BlockLength"

Tamaño, en bytes, de un bloque de cifrado para el algoritmo. Esta propiedad solo se aplica a algoritmos de cifrado de bloques. Este tipo de datos es un DWORD.

BCRYPT_BLOCK_SIZE_LIST

L"BlockSizeList"

Lista de las longitudes de bloque admitidas por un algoritmo de cifrado. Este tipo de datos es una matriz de DWORD. El número de elementos de la matriz se puede determinar dividiendo el número de bytes recuperados por el tamaño de una sola DWORD.

BCRYPT_CHAINING_MODE

L"ChainingMode"

Puntero a una cadena Unicode terminada en null que representa el modo de encadenamiento del algoritmo de cifrado. Esta propiedad se puede establecer en un identificador de algoritmo o un identificador de clave en uno de los valores siguientes.

Identificador Valor Descripción
BCRYPT_CHAIN_MODE_CBC L"ChainingModeCBC"
Establece el modo de encadenamiento del algoritmo en el encadenamiento de bloques de cifrado.
BCRYPT_CHAIN_MODE_CCM L"ChainingModeCCM"
Establece el modo de encadenamiento del algoritmo en contador con el modo CBC-MAC (CCM). Windows Vista: Este valor se admite a partir de Windows Vista con SP1.

BCRYPT_CHAIN_MODE_CFB L"ChainingModeCFB"
Establece el modo de encadenamiento del algoritmo en comentarios de cifrado.
BCRYPT_CHAIN_MODE_ECB L"ChainingModeECB"
Establece el modo de encadenamiento del algoritmo en el código electrónico.
BCRYPT_CHAIN_MODE_GCM L"ChainingModeGCM"
Establece el modo de encadenamiento del algoritmo en modo Galois/counter (GCM). Windows Vista: Este valor se admite a partir de Windows Vista con SP1.

BCRYPT_CHAIN_MODE_NA L"ChainingModeN/A"
El algoritmo no admite el encadenamiento.

BCRYPT_DH_PARAMETERS

L"DHParameters"

Especifica parámetros que se van a usar con una clave de Diffie-Hellman. Este tipo de datos es un puntero a una estructura de BCRYPT_DH_PARAMETER_HEADER . Esta propiedad solo se puede establecer y debe establecerse para la clave antes de que se complete la clave.

BCRYPT_DSA_PARAMETERS

L"DSAParameters"

Especifica los parámetros que se van a usar con una clave DSA. Esta propiedad es un BCRYPT_DSA_PARAMETER_HEADER o una estructura de BCRYPT_DSA_PARAMETER_HEADER_V2 . Esta propiedad solo se puede establecer y debe establecerse para la clave antes de que se complete la clave.

Windows 8: a partir de Windows 8, esta propiedad puede ser una estructura de BCRYPT_DSA_PARAMETER_HEADER_V2. Utilice esta estructura si el tamaño de la clave supera los 1024 bits y es menor o igual que 3072 bits. Si el tamaño de clave es mayor o igual que 512 pero menor o igual que 1024 bits, use la estructura BCRYPT_DSA_PARAMETER_HEADER .

BCRYPT_EFFECTIVE_KEY_LENGTH

L"EffectiveKeyLength"

Tamaño, en bits, de la longitud efectiva de una clave RC2. Este tipo de datos es un DWORD.

BCRYPT_HASH_BLOCK_LENGTH

L"HashBlockLength"

Tamaño, en bytes, del bloque para un hash. Esta propiedad solo se aplica a algoritmos hash. Este tipo de datos es un DWORD.

BCRYPT_HASH_LENGTH

L"HashDigestLength"

Tamaño, en bytes, del valor hash de un proveedor hash. Este tipo de datos es un DWORD.

BCRYPT_HASH_OID_LIST

L"HashOIDList"

Lista de identificadores de objeto hash codificados en DER (OID). Esta propiedad es una estructura BCRYPT_OID_LIST . Esta propiedad solo se puede leer.

BCRYPT_INITIALIZATION_VECTOR

L"IV"

Contiene el vector de inicialización (IV) de una clave. Esta propiedad solo se aplica a las claves.

BCRYPT_KEY_LENGTH

L"KeyLength"

Tamaño, en bits, del valor de clave de un proveedor de claves simétrico. Este tipo de datos es un DWORD.

BCRYPT_KEY_LENGTHS

L"KeyLengths"

Longitudes de clave admitidas por el algoritmo. Esta propiedad es una estructura de BCRYPT_KEY_LENGTHS_STRUCT . Esta propiedad solo se aplica a los algoritmos.

BCRYPT_KEY_OBJECT_LENGTH

L"KeyObjectLength"

No se usa esta propiedad. La propiedad BCRYPT_OBJECT_LENGTH se usa para obtener esta información.

BCRYPT_KEY_STRENGTH

L"KeyStrength"

Número de bits de la clave. Este tipo de datos es un DWORD. Esta propiedad solo se aplica a las claves.

BCRYPT_MESSAGE_BLOCK_LENGTH

L"MessageBlockLength"

Esto se puede establecer en cualquier identificador de clave que tenga establecido el modo de encadenamiento CFB. De forma predeterminada, esta propiedad se establece en 1 para CFB de 8 bits. Establecerlo en el tamaño de bloque en bytes hace que se use CFB de bloque completo. Para las claves XTS se usa para establecer el tamaño, en bytes, de la unidad de datos XTS (normalmente 512 o 4096).

BCRYPT_MULTI_OBJECT_LENGTH

L"MultiObjectLength"

Esta propiedad devuelve un BCRYPT_MULTI_OBJECT_LENGTH_STRUCT, que contiene información necesaria para calcular el tamaño de un búfer de objetos. Esta propiedad solo se admite en las versiones del sistema operativo que admiten la función BCryptCreateMultiHash .

BCRYPT_OBJECT_LENGTH

L"ObjectLength"

Tamaño, en bytes, del subobjeto de un proveedor. Este tipo de datos es un DWORD. Actualmente, los proveedores de algoritmos de cifrado hash y simétrico usan búferes asignados por el autor de la llamada para almacenar sus subobjetos. Por ejemplo, el proveedor hash requiere que asigne memoria para el objeto hash obtenido con la función BCryptCreateHash . Esta propiedad proporciona el tamaño del búfer para el objeto de un proveedor para poder asignar memoria para el objeto creado por el proveedor.

BCRYPT_PADDING_SCHEMES

L"PaddingSchemes"

Representa el esquema de relleno del proveedor de algoritmos RSA. Este tipo de datos es un DWORD. Puede ser uno de los siguientes valores.

Identificador Valor Descripción
BCRYPT_SUPPORTED_PAD_ROUTER 0x00000001 El proveedor admite el relleno agregado por el enrutador.
BCRYPT_SUPPORTED_PAD_PKCS1_ENC 0x00000002 El proveedor admite el esquema de relleno de cifrado PKCS1.
BCRYPT_SUPPORTED_PAD_PKCS1_SIG 0x00000004 El proveedor admite el esquema de relleno de firmas PKCS1.
BCRYPT_SUPPORTED_PAD_OAEP 0x00000008 El proveedor admite el esquema de relleno OAEP.
BCRYPT_SUPPORTED_PAD_PSS 0x00000010 El proveedor admite el esquema de relleno psS.

BCRYPT_PROVIDER_HANDLE

L"ProviderHandle"

Identificador del proveedor CNG que creó el objeto pasado en el parámetro hObject . Este tipo de datos es un BCRYPT_ALG_HANDLE. Esta propiedad solo se puede recuperar; no se puede establecer.

BCRYPT_SIGNATURE_LENGTH

L"SignatureLength"

Tamaño, en bytes, de la longitud de una firma para una clave. Este tipo de datos es un DWORD. Esta propiedad solo se aplica a las claves. Esta propiedad solo se puede recuperar; no se puede establecer.

Requisitos

Requisito Value
Cliente mínimo compatible
Windows Vista [solo aplicaciones de escritorio]
Servidor mínimo compatible
Windows Server 2008 [solo aplicaciones de escritorio]
Encabezado
Bcrypt.h