

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# AWS 密碼編譯的方法
<a name="aws-cryptography-services"></a>

*密碼編譯演算法*是數學建構，旨在提供安全服務，例如機密性 （加密）、真實性 （訊息驗證碼和數位簽章） 和不可否認性 （數位簽章）。如果您是初次使用密碼編譯、加密和相關術語，建議您先閱讀[關於資料加密](https://docs.aws.amazon.com/prescriptive-guidance/latest/strategy-data-at-rest-encryption/about-data-encryption.html)，然後再繼續本指南。

## AWS 密碼編譯基礎
<a name="foundations"></a>

密碼編譯是 for. AWS 服務 support 安全的重要部分 AWS。支援傳輸中、靜態或記憶體中資料的加密。  您可以在我們的部落格文章中，進一步了解對創新 AWS 的承諾，以及投資對主權和加密功能的額外控制，宣布[AWS 數位主權承諾](https://aws.amazon.com/blogs/security/aws-digital-sovereignty-pledge-control-without-compromise/)。

AWS 遵循[共同責任模型](https://aws.amazon.com/compliance/shared-responsibility-model/)來保護您的資料。 AWS 服務 使用符合業界標準的受信任密碼編譯演算法，並促進互通性。這些演算法由公有標準機構和學術研究進行審核。政府、產業和學術界廣泛接受相關標準。

AWS 預設為高保證密碼編譯實作，並偏好有效率的硬體最佳化解決方案。我們的密碼編譯核心程式庫 [AWS-LC](https://github.com/aws/aws-lc) 可作為透明度和整個產業重複使用的開放原始碼。LC AWS中的許多密碼編譯演算法實作都經過正式驗證，以提高對數個不同平台中實作正確性和安全性的保證。此程式庫也經過 NIST 的 FIPS-140 程式驗證。

## 密碼編譯演算法
<a name="about-algorithms"></a>

我們定義三種類型的密碼編譯演算法：
+ *非對稱**密碼編譯*使用一對金鑰：用於加密 （或驗證） 的公有金鑰，以及用於解密 （或簽署） 的私有金鑰。您可以共用公有金鑰，因為它不用於解密，但對私有金鑰的存取應該受到高度限制。 AWS 服務 支援或計劃支援量子後演算法，例如 ML-KEM 和 ML-DSA。 AWS 服務 也支援傳統的密碼編譯演算法，例如 RSA 和橢圓曲線密碼編譯 (ECC)。
+ *對稱**密碼編譯*使用相同的金鑰來加密和解密，或驗證和驗證資料。 AWS 服務 通常會與 AWS Key Management Service (AWS KMS) 整合，以加密使用 AES-256 模式的靜態資料。 
+ *其他密碼編譯函數*會與非對稱和對稱密碼編譯搭配使用，以針對機密性、完整性、身分驗證和不可否認應用程式建置安全、實用的通訊協定。範例包括雜湊函數和金鑰衍生函數。

## 中的建議密碼編譯演算法 AWS
<a name="algorithms"></a>

下表摘要說明 AWS 視為適合跨其服務進行部署以保護資料的加密演算法、模式和金鑰大小。隨著密碼編譯標準演進，本指南將隨著時間演進。

服務中可用的演算法可能會有所不同，並會在每個服務的文件中說明。如果您需要適用於已核准演算法的軟體程式庫實作，請檢查它是否包含在最新版本的 [AWS-LC 程式庫](https://github.com/aws/aws-lc)中。

演算法已核准在下列兩種類別之一 AWS 下用於 ：
+ *偏好的*演算法符合 AWS 安全性和效能標準。
+ *可接受的*演算法可用於某些應用程式的相容性，但不建議使用。

### 非對稱密碼編譯
<a name="asymmetric-cryptography.b1543bff-16f1-5150-96d4-785120c14e05"></a>

下表列出適合 AWS 在 內用於加密、金鑰協議和數位簽章的非對稱演算法。


| 
| 
| **類型** | **演算法** | **狀態** | 
| --- |--- |--- |
| 加密 | RSA-OAEP (≥2048 位元模數） | 可接受 | 
| 加密 | HPKE (P-256 或 P-384、HKF 和 AES-GCM) | 可接受 | 
| 金鑰協議 | ML-KEM-768 或 ML-KEM-1024 | 偏好 （抗量子） | 
| 金鑰協議 | ECDH(E) 搭配 P-256, P-384, P-521 或 X25519 | 可接受 | 
| 金鑰協議 | ECDH(E) 搭配 brainpoolP256r1, brainpoolP384r1 或 brainpoolP512r1 | 可接受 | 
| Signatures (簽章) | ML-DSA-65 或 ML-DSA-87 | 偏好 （抗量子） | 
| Signatures (簽章) | SLH-DSA | 可接受 （抗量子） | 
| Signatures (簽章) | ECDSA 搭配 P-256, P-384, P-521 或 Ed25519 | 可接受 | 
| Signatures (簽章) | RSA (≥2048 位元模數） | 可接受 | 

### 對稱密碼編譯
<a name="symmetric-cryptography.7cb55a3e-eecb-5f61-82b7-4faa705ac662"></a>

下表列出適合在 內用於加密、已驗證加密和金鑰包裝 AWS 的對稱演算法。


| 
| 
| **類型** | **演算法** | **狀態** | 
| --- |--- |--- |
| 已驗證的加密 | AES-GCM-256 | 偏好 | 
| 已驗證的加密 | AES-GCM-128 | 可接受 | 
| 已驗證的加密 | ChaCha20/Poly1305 | 可接受 | 
| 加密模式 | AES-XTS-256 （用於區塊儲存） | 偏好 | 
| 加密模式 | AES-CBC/CTR （未驗證模式） | 可接受 | 
| 金鑰包裝 | AES-GCM-256 | 偏好 | 
| 金鑰包裝 | 具有 256 位元金鑰的 AES-KW 或 AES-KWP | 可接受 | 

### 其他密碼編譯函數
<a name="other-cryptographic-functions.f1580287-815e-5157-9e15-9a2ca3d80bfa"></a>

下表列出視為適合在 內用於雜湊、金鑰衍生和訊息身分驗證 AWS 的演算法。


| 
| 
| **類型** | **演算法** | **狀態** | 
| --- |--- |--- |
| 雜湊 | SHA-384 | 偏好 | 
| 雜湊 | SHA-256 | 可接受 | 
| 雜湊 | SHA3 | 可接受 | 
| 金鑰衍生 | HKDF\$1Expand 或 HKDF 搭配 SHA-256 | 偏好 | 
| 金鑰衍生 | 使用 HMAC-SHA-256 的計數器模式 KDF | 可接受 | 
| 訊息驗證碼 | HMAC-SHA-384 | 偏好 | 
| 訊息驗證碼 | HMAC-SHA-256 | 可接受 | 
| 訊息驗證碼 | KMAC | 可接受 | 
| 密碼雜湊 | 使用 SHA384 加密 | 偏好 | 
| 密碼雜湊 | PBKDF2 | 可接受 | 

## 在 中使用的密碼編譯 AWS 服務
<a name="used-services"></a>

AWS 服務 倚賴經審核演算法的安全、開放原始碼實作來保護您的資料。演算法的特定選擇和組態會因服務而異。有些 AWS 工具和服務使用特定的演算法。在其他情況下，您可以在支援的演算法和金鑰長度之間進行選擇，也可以使用建議的預設值。

AWS 密碼編譯服務符合各種密碼編譯安全標準，因此您可以符合政府或產業法規。如需 AWS 服務 符合資料安全標準的完整清單，請參閱[AWS 合規計劃](https://aws.amazon.com/compliance/programs/)。