CryptDestroyHash 函式 (wincrypt.h)

重要 此 API 已被取代。 新的和現有的軟體應該開始使用 密碼編譯新一代 API。 Microsoft 可能會在未來的版本中移除此 API。
 
CryptDestroyHash函式會終結hHash參數所參考的雜湊物件。 在雜湊物件終結之後,就無法再使用它。

為了協助確保安全性,建議您在使用雜湊物件之後終結雜湊物件。

語法

BOOL CryptDestroyHash(
  [in] HCRYPTHASH hHash
);

參數

[in] hHash

要終結之雜湊物件的控制碼。

傳回值

如果函式成功,則傳回非零的值。

如果此函式失敗,則傳回值為零。 如需擴充錯誤資訊,請呼叫 GetLastError

「NTE」 開頭的錯誤碼是由您正在使用的特定 密碼編譯服務提供者 所產生, (CSP) 。 以下是一些可能的錯誤碼。

傳回碼 描述
ERROR_BUSY
hHash指定的雜湊物件目前正在使用,而且無法終結。
ERROR_INVALID_HANDLE
hHash參數會指定不正確控制碼。
ERROR_INVALID_PARAMETER
hHash參數包含不正確值。
NTE_BAD_ALGID
hHash控制碼指定此 CSP 不支援的演算法。
NTE_BAD_HASH
hHash參數指定的雜湊物件無效。
NTE_BAD_UID
找不到建立雜湊物件時所指定的 CSP 內容。

備註

當雜湊物件終結時,許多 CSP 都會覆寫保存雜湊物件之 CSP 中的記憶體。 然後釋放 CSP 記憶體。

呼叫 CryptCreateHashCryptDestroyHash之間應該有一對一的對應。

使用特定 CSP 建立的所有雜湊物件都必須終結,才能使用 CryptReleaseCoNtext 函式釋放該 CSP 控制碼。

範例

如需使用 CryptDestroyHash 函式的範例,請參閱 範例 C 程式:建立和雜湊工作階段金鑰

規格需求

   
最低支援的用戶端 Windows XP [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2003 [僅限傳統型應用程式]
目標平台 Windows
標頭 wincrypt.h
程式庫 Advapi32.lib
Dll Advapi32.dll

另請參閱

CryptCreateHash

CryptHashData

CryptSignHash

雜湊和數位簽章函式