CryptDestroyHash 함수(wincrypt.h)
중요 이 API는 더 이상 사용되지 않습니다. 신규 및 기존 소프트웨어는 암호화 차세대 API 사용을 시작해야 합니다. Microsoft는 이후 릴리스에서 이 API를 제거할 수 있습니다.
보안을 보장하려면 해시 개체를 사용한 후 삭제하는 것이 좋습니다.
구문
BOOL CryptDestroyHash(
[in] HCRYPTHASH hHash
);
매개 변수
[in] hHash
소멸할 해시 개체의 핸들입니다.
반환 값
함수가 성공하면 반환 값이 0이 아닙니다.
함수가 실패하면 반환 값은 0입니다. 확장된 오류 정보는 GetLastError를 호출합니다.
"NTE"가 앞에 있는 오류 코드는 사용 중인 특정 CSP( 암호화 서비스 공급자 )에서 생성됩니다. 몇 가지 가능한 오류 코드는 다음과 같습니다.
반환 코드 | 설명 |
---|---|
|
hHash로 지정된 해시 개체는 현재 사용 중이며 제거할 수 없습니다. |
|
hHash 매개 변수는 유효하지 않은 핸들을 지정합니다. |
|
hHash 매개 변수에는 유효하지 않은 값이 포함되어 있습니다. |
|
hHash 핸들은 이 CSP가 지원하지 않는 알고리즘을 지정합니다. |
|
hHash 매개 변수로 지정된 해시 개체가 잘못되었습니다. |
|
해시 개체를 만들 때 지정한 CSP 컨텍스트를 찾을 수 없습니다. |
설명
해시 개체가 제거되면 많은 CSP가 해시 개체가 보관된 CSP의 메모리를 덮어씁니다. 그런 다음 CSP 메모리가 해제됩니다.
CryptCreateHash와 CryptDestroyHash 호출 사이에는 일대일 대응이 있어야 합니다.
특정 CSP를 사용하여 만든 모든 해시 개체는 CryptReleaseContext 함수를 사용하여 CSP 핸들을 해제하기 전에 제거해야 합니다.
예제
CryptDestroyHash 함수를 사용하는 예제는 예제 C 프로그램: 세션 키 만들기 및 해시를 참조하세요.
요구 사항
지원되는 최소 클라이언트 | Windows XP [데스크톱 앱만 해당] |
지원되는 최소 서버 | Windows Server 2003 [데스크톱 앱만 해당] |
대상 플랫폼 | Windows |
헤더 | wincrypt.h |
라이브러리 | Advapi32.lib |
DLL | Advapi32.dll |