NCryptStreamOpenToUnprotect 函式 (ncryptprotect.h)
NCryptStreamOpenToUnprotect 函式會開啟數據流物件,可用來將大量數據解密為用於加密的相同保護描述元。 呼叫 NCryptStreamUpdate 來執行解密。 若要解密較小的訊息,例如密鑰和密碼,請呼叫 NCryptUnprotectSecret。
語法
SECURITY_STATUS NCryptStreamOpenToUnprotect(
[in] NCRYPT_PROTECT_STREAM_INFO *pStreamInfo,
DWORD dwFlags,
[in, optional] HWND hWnd,
[out] NCRYPT_STREAM_HANDLE *phStream
);
參數
[in] pStreamInfo
NCRYPT_PROTECT_STREAM_INFO結構的指標,其中包含使用者定義回呼函式的位址,以接收解密的數據,以及使用者定義內容數據的指標。
dwFlags
旗標,指定金鑰服務提供者的其他資訊。 這可以是零或下列值。
值 | 意義 |
---|---|
|
要求金鑰服務提供者未顯示使用者介面。 |
[in, optional] hWnd
要顯示之使用者介面的父視窗句柄。如果有的話。
[out] phStream
解密數據流之句柄的指標。
傳回值
傳回狀態代碼,指出函式的成功或失敗。 可能的傳回碼包括但不限於下列專案。
傳回碼 | Description |
---|---|
|
函式成功。 |
|
dwFlags 參數必須包含零 (0) 或 NCRYPT_SILENT_FLAG。 |
|
phStream 和 pStreamInfo 參數不可為 NULL。
pStreamInfo 參數所指向之NCRYPT_PROTECT_STREAM_INFO結構之 pfnStreamOutput 成員所指向的回調函式不能是 NULL。 |
|
記憶體不足,無法配置數據流。 |
備註
NCryptStreamOpenToUnprotect 函式會建立可用來加密大型訊息的內部數據流物件。 您無法直接使用物件。 您必須改用這個函式所傳回的物件句柄。
先呼叫此函式,再呼叫 NCryptStreamUpdate 函式。 如果您要加密大型檔案,請在迴圈中使用 NCryptStreamUpdate ,該迴圈會逐區塊前進,並在每個區塊完成時加密每個區塊,並通知回呼。 如需詳細資訊,請參閱 NCryptStreamUpdate。
NCryptStreamOpenToUnprotect 函式會從數據流標頭擷取未加密的保護描述項規則字串。 規則字串會由 NCryptStreamOpenToUnprotect 函式放在標頭中。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows 8 [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2012 [僅限傳統型應用程式] |
目標平台 | Windows |
標頭 | ncryptprotect.h |
程式庫 | NCrypt.lib |
Dll | NCrypt.dll |