本文為英文版的機器翻譯版本,如內容有任何歧義或不一致之處,概以英文版為準。
NCryptCreatePersistedKey 使用金鑰儲存提供者 (KSP)
NCryptCreatePersistedKey
函數會建立新的金鑰,並將其存放在金鑰儲存提供者 () 中KSP。您可以使用 NCryptSetProperty函數在建立後設定其屬性。您必須呼叫 ,NCryptFinalizeKey才能使用 金鑰。
參數
-
hProvider
【in】 -
您要建立金鑰的金鑰儲存提供者的控點。使用 NCryptOpenStorageProvider取得此控點。
-
phKey
【輸出】 -
存放金鑰控制代碼的
NCRYPT_KEY_HANDLE
變數地址。 -
pszAlgId
【in】 -
Null 終止 Unicode 字串的指標,指定用於建立金鑰的密碼編譯演算法識別符。
AWS CloudHSM 金鑰儲存提供者 (KSP) 支援下列演算法:
常數/值 描述 BCRYPT_RSA_ALGORITHM
"RSA"
RSA 公有金鑰演算法。
BCRYPT_ECDSA_P256_ALGORITHM
"ECDSA_P256"
256 位元基本橢圓曲線數位簽章演算法 (FIPS 186-2)。
BCRYPT_ECDSA_P384_ALGORITHM
"ECDSA_P384"
384 位元主要橢圓曲線數位簽章演算法 (FIPS 186-2)。
BCRYPT_ECDSA_P521_ALGORITHM
"ECDSA_P521"
521 位元主要橢圓曲線數位簽章演算法 (FIPS 186-2)。
pszKeyName
【in,選用】-
包含金鑰名稱的 null 終止 Unicode 字串指標。如果此參數為 NULL,則此函數會建立未保留的暫時性金鑰。
dwLegacyKeySpec
【in、未使用】-
AWS CloudHSM 金鑰儲存提供者 (KSP) 不會使用此參數。
dwFlags
【in】-
用於修改函數行為的旗標。使用下列 0 或多個值:
Value 意義 NCRYPT_MACHINE_KEY_FLAG
此旗標沒有效果。
NCRYPT_SILENT_FLAG
此旗標沒有效果。
NCRYPT_OVERWRITE_KEY_FLAG
指定此旗標會覆寫 中名稱相同的任何現有金鑰HSM。
如果沒有此旗標,函數會傳回 。
傳回值
函數會傳回狀態碼,表示成功或失敗。
常見的傳回碼包括:
傳回代碼 | 描述 |
---|---|
ERROR_SUCCESS |
函數已成功完成。 |
NTE_INVALID_PARAMETER |
一或多個參數無效。 |
NTE_FAIL |
操作無法完成。 |
NTE_BAD_FLAGS |
|
NTE_NOT_SUPPORTED |
|
NTE_EXISTS |
具有指定名稱的金鑰已存在,且操作未使用 |