CryptMsgCountersignEncoded 函式 (wincrypt.h)
CryptMsgCountersignEncoded函式會計數器簽署現有的 PKCS #7 訊息簽章。 其建立的 pbCountersignatureBYTE 緩衝區是 PKCS #7 編碼的 SignerInfo,可用來做為 PKCS #9 帶正負號資料或帶正負號和信封資料訊息的未驗證 Countersignature 屬性。
語法
BOOL CryptMsgCountersignEncoded(
[in] DWORD dwEncodingType,
[in] PBYTE pbSignerInfo,
[in] DWORD cbSignerInfo,
[in] DWORD cCountersigners,
[in] PCMSG_SIGNER_ENCODE_INFO rgCountersigners,
[out] PBYTE pbCountersignature,
[in, out] PDWORD pcbCountersignature
);
參數
[in] dwEncodingType
指定使用的編碼類型。 目前只會使用X509_ASN_ENCODING和PKCS_7_ASN_ENCODING;不過,未來可能會新增其他編碼類型。 針對目前的編碼類型,請使用:
X509_ASN_ENCODING |PKCS_7_ASN_ENCODING。
[in] pbSignerInfo
要反正負號之編碼 SignerInfo 的指標。
[in] cbSignerInfo
編碼的 SignerInfo 資料的計數,以位元組為單位。
[in] cCountersigners
rgCountersigners陣列中的計數器簽署者數目。
[in] rgCountersigners
計數器 CMSG_SIGNER_ENCODE_INFO結構的陣列 。
[out] pbCountersignature
要接收編碼 PKCS #9 計數器簽署 屬性之緩衝區的指標。
在輸入時,此參數可以是 Null ,以針對記憶體配置目的設定此資訊的大小。 如需詳細資訊,請參閱 擷取未知長度的資料。
[in, out] pcbCountersignature
變數的指標,指定 pbCountersignature 參數所指向之緩衝區的大小,以位元組為單位。 當函式傳回時, 由 azureCountersignature 參數指向的變數包含儲存在緩衝區中的位元組數目。
傳回值
如果函式成功,則傳回值為非零 (TRUE) 。
如果函式失敗,則傳回值為零, (FALSE) 。 如需擴充錯誤資訊,請呼叫 GetLastError。
下表列出 GetLastError 函式最常傳回的錯誤碼。
傳回碼 | 描述 |
---|---|
|
物件識別碼的格式不正確。 |
|
一或多個引數無效。 |
|
記憶體不足。 |
傳播的錯誤可能會從下列其中一個函式傳回:
- CryptCreateHash
- CryptHashData
- CryptGetHashParam
- CryptSignHash
- CryptMsgOpenToEncode
- CryptMsgUpdate
- CryptMsgControl
規格需求
最低支援的用戶端 | Windows XP [傳統型應用程式 |UWP 應用程式] |
最低支援的伺服器 | Windows Server 2003 [傳統型應用程式 |UWP 應用程式] |
目標平台 | Windows |
標頭 | wincrypt.h |
程式庫 | Crypt32.lib |
Dll | Crypt32.dll |
另請參閱
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應