BCRYPT_DSA_PARAMETER_HEADER_V2 구조체(bcrypt.h)
BCRYPT_DSA_PARAMETER_HEADER_V2 구조체는 DSA 키를 생성하기 위한 정보를 포함하는 DSA(디지털 서명 알고리즘) 매개 변수 BLOB의 헤더로 사용됩니다. 이 구조체는 BCryptSetProperty 함수의 BCRYPT_DSA_PARAMETERS 속성과 함께 사용됩니다.
구문
typedef struct _BCRYPT_DSA_PARAMETER_HEADER_V2 {
ULONG cbLength;
ULONG dwMagic;
ULONG cbKeyLength;
HASHALGORITHM_ENUM hashAlgorithm;
DSAFIPSVERSION_ENUM standardVersion;
ULONG cbSeedLength;
ULONG cbGroupSize;
UCHAR Count[4];
} BCRYPT_DSA_PARAMETER_HEADER_V2;
멤버
cbLength
이 구조체의 총 크기(바이트)와 메모리에서 이 구조체 바로 뒤에 오는 버퍼입니다.
dwMagic
키의 매직 값입니다.
이 멤버는 다음 값이어야 합니다.
BCRYPT_DSA_PARAMETERS_MAGIC_V2(0x324d5044)
cbKeyLength
이 구조체가 적용되는 키의 크기(바이트)입니다.
hashAlgorithm
사용할 해시 알고리즘을 지정하는 HASHALGORITHM_ENUM 열거형 값입니다.
standardVersion
적용할 FIPS(Federal Information Processing Standard)를 지정하는 DSAFIPSVERSION_ENUM 열거형 값입니다.
cbSeedLength
소수 q 를 생성하는 데 사용되는 시드의 길이(바이트)입니다.
cbGroupSize
소수 q의 크기입니다. 현재 키가 길이가 1024비트를 초과하면 q 는 32바이트 길이입니다.
Count[4]
시드에서 소수 q를 생성하기 위해 수행된 반복 횟수입니다. 자세한 내용은 NIST 표준 FIPS186-3을 참조하세요.
설명
BCryptSetProperty 호출에서 이 구조를 사용하는 경우 BCryptGenerateKeyPair 호출에서 만든 DSA 키에 대한 매개 변수를 설정하려면(cbKeyLength*8) 이전에 설정된 dwLength와 같아야 합니다.
구조체는 길이가 1024비트이지만 3072비트보다 작거나 같은 DSA 키에 적용됩니다.
이 구조체는 더 큰 버퍼의 헤더로 사용됩니다. DSA 매개 변수 Blob의 연속 메모리 형식은 다음과 같습니다. Seed, q, Modulus 및 Generator는 big-endian 형식입니다.
BCRYPT_DSA_PARAMETER_HEADER_V2
Seed[cbSeedLength] // Big-endian.
q[cbGroupSize] // Big-endian.
Modulus[cbKeyLength] // Big-endian.
Generator[cbKeyLength] // Big-endian.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 8 [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2012 [데스크톱 앱만 해당] |
머리글 | bcrypt.h |