EVP_CIPHER-AES
名稱
EVP_CIPHER-AES - AES EVP_CIPHER 實作
說明
使用 EVP_CIPHER API 支援 AES 對稱式加密。
演算法名稱
下列演算法在 FIPS 提供者和預設提供者中皆可使用
- "AES-128-CBC", "AES-192-CBC" 和 "AES-256-CBC"
- "AES-128-CBC-CTS", "AES-192-CBC-CTS" 和 "AES-256-CBC-CTS"
- "AES-128-CFB", "AES-192-CFB", "AES-256-CFB", "AES-128-CFB1", "AES-192-CFB1", "AES-256-CFB1", "AES-128-CFB8", "AES-192-CFB8" 和 "AES-256-CFB8"
- "AES-128-CTR", "AES-192-CTR" 和 "AES-256-CTR"
- "AES-128-ECB", "AES-192-ECB" 和 "AES-256-ECB"
- "AES-192-OFB", "AES-128-OFB" 和 "AES-256-OFB"
- "AES-128-XTS" 和 "AES-256-XTS"
- "AES-128-CCM", "AES-192-CCM" 和 "AES-256-CCM"
- "AES-128-GCM", "AES-192-GCM" 和 "AES-256-GCM"
- "AES-128-WRAP", "AES-192-WRAP", "AES-256-WRAP", "AES-128-WRAP-PAD", "AES-192-WRAP-PAD", "AES-256-WRAP-PAD", "AES-128-WRAP-INV", "AES-192-WRAP-INV", "AES-256-WRAP-INV", "AES-128-WRAP-PAD-INV", "AES-192-WRAP-PAD-INV" 和 "AES-256-WRAP-PAD-INV"
- "AES-128-CBC-HMAC-SHA1", "AES-256-CBC-HMAC-SHA1", "AES-128-CBC-HMAC-SHA256" 和 "AES-256-CBC-HMAC-SHA256"
下列演算法在預設提供者中可使用,但在 FIPS 提供者中不可使用
- "AES-128-OCB", "AES-192-OCB" 和 "AES-256-OCB"
- "AES-128-SIV", "AES-192-SIV" 和 "AES-256-SIV"
- "AES-128-GCM-SIV", "AES-192-GCM-SIV" 和 "AES-256-GCM-SIV"
參數
此實作支援 EVP_EncryptInit(3) 中的「參數」 所述的參數。
注意事項
AES-SIV 和 AES-WRAP 模式實作不支援串流。這表示要取得正確的結果,在初始化內容後只能有一個 EVP_EncryptUpdate(3) 或 EVP_DecryptUpdate(3) 呼叫。
AES-XTS 實作允許執行串流,但每個 EVP_EncryptUpdate(3) 或 EVP_DecryptUpdate(3) 呼叫都要求每個輸入都是區塊大小的倍數。只有最後一個 EVP_EncryptUpdate() 或 EVP_DecryptUpdate() 呼叫可以選擇性地輸入一個不是區塊大小的倍數,但大於一個區塊的輸入。在這種情況下,會使用密文竊取 (CTS) 來填滿區塊。
另請參閱
provider-cipher(7), OSSL_PROVIDER-FIPS(7), OSSL_PROVIDER-default(7)
歷史
GCM-SIV 模式密碼在 OpenSSL 版本 3.2 中新增。
版權
版權所有 2021-2023 OpenSSL 專案作者。保留所有權利。
根據 Apache 授權條款 2.0(「授權條款」)授權。您只能在遵守授權條款的情況下使用此檔案。您可以在原始程式碼散佈中的 LICENSE 檔案中取得一份副本,或在 https://www.openssl.org/source/license.html 取得。