أنواع المفاتيح المتوافقة مع اللغة

تسرد الجداول التالية الأنواع الرئيسية التي يدعمها كل أساسي، مصنفة حسب اللغة.

AEAD

التنفيذ Java C++
(BoringSSL)
C++
(OpenSSL)
Objective-C البدء Python
AES-GCM نعم1 نعم نعم نعم نعم نعم
معيار AES-GCM-SIV نعم2 نعم لا لا نعم نعم
تشفير AES-CTR-HMAC نعم نعم نعم نعم نعم نعم
معيار AES-EAX نعم نعم نعم نعم لا نعم
ظرف KMS نعم نعم نعم لا نعم نعم
CHACHA20-POLY1305 نعم لا لا لا نعم لا
XCHACHA20-POLY1305 نعم نعم لا نعم نعم نعم

بث AEAD

التنفيذ Java C++
(BoringSSL)
C++
(OpenSSL)
Objective-C البدء Python
AES-GCM-HKDF-STREAMING نعم نعم نعم لا نعم نعم
AES-CTR-HMAC-STREAMING نعم نعم نعم لا نعم نعم

AEAD محدد

التنفيذ Java C++
(BoringSSL)
C++
(OpenSSL)
Objective-C البدء Python
معيار AES-SIV نعم نعم نعم نعم نعم نعم

رمز مصادقة الرسائل (MAC)

التنفيذ Java C++
(BoringSSL)
C++
(OpenSSL)
Objective-C البدء Python
تقنية HMAC-SHA2 نعم نعم نعم نعم نعم نعم
بروتوكول AES-CMAC نعم نعم نعم نعم نعم نعم

PRF

التنفيذ Java C++
(BoringSSL)
C++
(OpenSSL)
Objective-C البدء Python
خوارزمية HKDF-SHA2 نعم نعم نعم لا نعم نعم
تقنية HMAC-SHA2 نعم نعم نعم لا نعم نعم
بروتوكول AES-CMAC نعم نعم نعم لا نعم نعم

التوقيع

التنفيذ Java C++
(BoringSSL)
C++
(OpenSSL)
Objective-C البدء Python
معيار ECDSA مقابل منحنيات المعهد الوطني للمعايير والتكنولوجيا (NIST) نعم نعم نعم نعم نعم نعم
Ed25519 نعم نعم نعم نعم نعم نعم
RSA-SSA-PKCS1 نعم نعم نعم نعم نعم نعم
RSA-SSA-PSS نعم نعم نعم نعم نعم نعم

التشفير المختلَط

التنفيذ Java C++
(BoringSSL)
C++
(OpenSSL)
Objective-C البدء Python
هPKE نعم نعم لا لا نعم نعم
ECIES مع AEAD وHKDF نعم3 نعم نعم نعم نعم نعم
مركز ECIES مع مصرف defisticAEAD وHKDF نعم4 نعم نعم لا نعم نعم

عنوان JWT MAC

التنفيذ Java C++
(BoringSSL)
C++
(OpenSSL)
Objective-C البدء Python
اختبار JWT HMAC-SHA2 نعم نعم نعم لا نعم نعم

توقيع JWT

التنفيذ Java C++
(BoringSSL)
C++
(OpenSSL)
Objective-C البدء Python
منح JWT ECDSA فوق منحنيات المعهد الوطني للمعايير والتكنولوجيا (NIST) نعم نعم نعم لا نعم نعم
معيار JWT RSA-SSA-PKCS1 نعم نعم نعم لا نعم نعم
اختبار JWT RSA-SSA-PSS نعم نعم نعم لا نعم نعم

  1. لا تعمل AES-GCM بشكل صحيح على نظام التشغيل Android <=19.

  2. يتطلب تثبيت Conscrypt كمقدم أمان JCE.

  3. يتطلب ذلك منحنى NIST.

  4. يتطلب ذلك منحنى NIST.