CreateMD5SSOHash 함수(winineti.h)
CreateMD5SSOHash 함수는 지정된 계정 또는 영역에 대한 기본 Microsoft Passport 암호를 가져오고, 지정된 와이드 문자 챌린지 문자열을 사용하여 MD5 해시를 만들고, 결과를 16진수 바이트 문자열로 반환합니다.
구문
BOOL CreateMD5SSOHash(
[in] PWSTR pszChallengeInfo,
[in] PWSTR pwszRealm,
[in] PWSTR pwszTarget,
[out] PBYTE pbHexHash
);
매개 변수
[in] pszChallengeInfo
MD5 해시에 사용할 와이드 문자 챌린지 문자열에 대한 포인터입니다.
[in] pwszRealm
암호를 가져올 영역의 이름을 지정하는 문자열에 대한 포인터입니다. pwszTarget이 NULL이 아니면 이 매개 변수는 무시됩니다. pwszTarget 및 pwszRealm이 모두 NULL인 경우 기본 영역이 사용됩니다.
[in] pwszTarget
암호를 가져올 계정의 이름을 지정하는 문자열에 대한 포인터입니다. pwszTarget이 NULL이면 pwszRealm으로 표시된 영역이 사용됩니다.
[out] pbHexHash
MD5 해시가 16진수 문자열 형식으로 반환되는 출력 버퍼에 대한 포인터입니다. 이 버퍼는 33바이트 이상이어야 합니다.
반환 값
성공하면 TRUE를 반환하고 그렇지 않으면 FALSE를 반환합니다.
설명
CreateMD5SSOHash 함수가 지정된 계정 또는 영역에 대한 Microsoft Passport 암호를 성공적으로 가져오면 챌린지 문자열과 암호를 와이드 문자에서 멀티바이트(일반적으로 8비트) 문자로 변환하고, 연결하고, RSA 라이브러리를 사용하여 결과 키에서 MD5 해시를 생성합니다. 그런 다음, 해시를 pbHexHash 매개 변수가 가리키는 버퍼에 배치하는 8비트 16진수(소문자 사용)의 null로 끝나는 문자열로 변환합니다.
따라서 pbHexHash 가 가리키는 출력 버퍼는 해시의 16바이트 각각에 대해 2바이트, 총 33바이트에 대해 종료 null 문자를 허용할 만큼 충분히 길어야 합니다.
WinINet API의 다른 모든 측면과 마찬가지로 이 함수는 DllMain 내에서 또는 전역 개체의 생성자 및 소멸자에서 안전하게 호출할 수 없습니다.
요구 사항
요구 사항 | 값 |
---|---|
지원되는 최소 클라이언트 | Windows 2000 Professional[데스크톱 앱만] |
지원되는 최소 서버 | Windows 2000 Server[데스크톱 앱만] |
대상 플랫폼 | Windows |
헤더 | winineti.h(Wininet.h 포함) |
라이브러리 | Wininet.lib |
DLL | Wininet.dll |