SslImportMasterKey 함수
SslImportMasterKey 함수는 서버 쪽 SSL(Secure Sockets Layer Protocol) 키 교환 작업을 수행합니다.
구문
SECURITY_STATUS WINAPI SslImportMasterKey(
_In_ NCRYPT_PROV_HANDLE hSslProvider,
_In_ NCRYPT_KEY_HANDLE hPrivateKey,
_Out_ NCRYPT_KEY_HANDLE *phMasterKey,
_In_ DWORD dwProtocol,
_In_ DWORD dwCipherSuite,
_In_ PNCryptBufferDesc pParameterList,
_In_ PBYTE pbEncryptedKey,
_In_ DWORD cbEncryptedKey,
_In_ DWORD dwFlags
);
매개 변수
-
hSslProvider [in]
-
SSL 프로토콜 공급자에 대한 핸들은 instance.
-
hPrivateKey [in]
-
교환에 사용되는 프라이빗 키 에 대한 핸들입니다.
-
phMasterKey [out]
-
master 키를 받을 핸들에 대한 포인터입니다.
-
dwProtocol [in]
-
CNG SSL 공급자 프로토콜 식별자 값 중 하나입니다.
-
dwCipherSuite [in]
-
CNG SSL 공급자 암호 그룹 식별자 값 중 하나입니다.
-
pParameterList [in]
-
키 교환 작업의 일부로 사용되는 정보를 포함하는 NCryptBuffer 버퍼 배열에 대한 포인터입니다. 정확한 버퍼 집합은 사용되는 프로토콜 및 암호 도구 모음에 따라 달라집니다. 최소한 목록에는 클라이언트 및 서버 제공 임의 값이 포함된 버퍼가 포함됩니다.
-
pbEncryptedKey [in]
-
서버의 공개 키로 암호화된 암호화된 프리마스터 비밀 키가 포함된 버퍼에 대한 포인터입니다.
-
cbEncryptedKey [in]
-
pbEncryptedKey 버퍼의 크기(바이트)입니다.
-
dwFlags [in]
-
이 매개 변수를 NCRYPT_SSL_SERVER_FLAG 설정하여 서버 호출임을 나타냅니다.
반환 값
함수가 성공하면 0을 반환합니다.
함수가 실패하면 0이 아닌 오류 값이 반환됩니다.
가능한 반환 코드에는 다음이 포함되지만 이에 국한되지는 않습니다.
반환 코드/값 | 설명 |
---|---|
|
필요한 버퍼를 할당하는 데 메모리가 부족합니다. |
|
제공된 핸들 중 하나가 잘못되었습니다. |
|
phMasterKey 매개 변수는 NULL입니다. |
설명
이 함수는 프리마스터 암호를 해독하고, SSL master 비밀을 계산하고, 이 개체에 대한 핸들을 호출자에게 반환합니다. 그런 다음 이 master 키를 사용하여 SSL 세션 키를 파생하고 SSL 핸드셰이크를 완료할 수 있습니다.
참고
이 함수는 RSA 키 교환 알고리즘을 사용할 때 사용됩니다. DH를 사용하는 경우 서버 코드는 대신 SslGenerateMasterKey를 호출합니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 |
Windows Vista [데스크톱 앱만 해당] |
지원되는 최소 서버 |
Windows Server 2008 [데스크톱 앱만 해당] |
헤더 |
|
DLL |
|