Các loại khoá được hỗ trợ theo ngôn ngữ

Các bảng sau đây liệt kê các loại khoá mà mỗi nguyên hàm hỗ trợ, được phân loại theo ngôn ngữ.

AEAD

Triển khai Java C++
(BoringSSL)
C++
(OpenSSL)
Objective-C Go Python
AES-GCM
AES-GCM-SIV yes1 no no
AES-CTR-HMAC
AES-EAX no
Phong bì KMS no
CHACHA20-POLY1305 no no no no
XCHACHA20-POLY1305 no

AEAD truyền trực tuyến

Triển khai Java C++
(BoringSSL)
C++
(OpenSSL)
Objective-C Go Python
AES-GCM-HKDF-STREAMING no
AES-CTR-HMAC-STREAMING no

AEAD xác định

Triển khai Java C++
(BoringSSL)
C++
(OpenSSL)
Objective-C Go Python
AES-SIV

MAC

Triển khai Java C++
(BoringSSL)
C++
(OpenSSL)
Objective-C Go Python
HMAC-SHA2
AES-CMAC

PRF

Triển khai Java C++
(BoringSSL)
C++
(OpenSSL)
Objective-C Go Python
HKDF-SHA2 no
HMAC-SHA2 no
AES-CMAC no

Chữ ký

Triển khai Java C++
(BoringSSL)
C++
(OpenSSL)
Objective-C Go Python
ECDSA trên các đường cong NIST
Ed25519
RSA-SSA-PKCS1
RSA-SSA-PSS
ML-DSA 2 no no
SLH-DSA (SHA2-128S) 3 no no

Mã hoá kết hợp

Triển khai Java C++
(BoringSSL)
C++
(OpenSSL)
Objective-C Go Python
HPKE no no
ECIES có AEAD và HKDF 4
ECIES có DeterministicAEAD và HKDF 5 no

JWT MAC

Triển khai Java C++
(BoringSSL)
C++
(OpenSSL)
Objective-C Go Python
JWT HMAC-SHA2 no

Chữ ký JWT

Triển khai Java C++
(BoringSSL)
C++
(OpenSSL)
Objective-C Go Python
JWT ECDSA qua các đường cong NIST no
JWT RSA-SSA-PKCS1 no
JWT RSA-SSA-PSS no

  1. AES-GCM-SIV yêu cầu phải cài đặt Conscrypt làm trình cung cấp dịch vụ bảo mật JCE. 

  2. ML-DSA yêu cầu phải cài đặt Conscrypt làm trình cung cấp dịch vụ bảo mật JCE. 

  3. SLH-DSA yêu cầu bạn cài đặt Conscrypt làm nhà cung cấp dịch vụ bảo mật JCE. 

  4. ECIES yêu cầu một đường cong NIST. 

  5. ECIES yêu cầu một đường cong NIST.