انواع کلیدی که توسط زبان پشتیبانی می شوند
جداول زیر انواع کلیدهایی را که هر کدام از آنها ابتدایی پشتیبانی می کند را فهرست می کند که بر اساس زبان طبقه بندی شده اند.
AEAD
پیاده سازی | جاوا | C++ (BoringSSL) | C++ (OpenSSL) | هدف-C | برو | پایتون |
---|
AES-GCM | بله 1 | آره | آره | آره | آره | آره |
AES-GCM-SIV | بله 2 | آره | نه | نه | آره | آره |
AES-CTR-HMAC | آره | آره | آره | آره | آره | آره |
AES-EAX | آره | آره | آره | آره | نه | آره |
پاکت KMS | آره | آره | آره | نه | آره | آره |
CHACHA20-POLY1305 | آره | نه | نه | نه | آره | نه |
XCHACHA20-POLY1305 | آره | آره | نه | آره | آره | آره |
پخش جریانی AEAD
پیاده سازی | جاوا | C++ (BoringSSL) | C++ (OpenSSL) | هدف-C | برو | پایتون |
---|
AES-GCM-HKDF-Streaming | آره | آره | آره | نه | آره | آره |
AES-CTR-HMAC-Streaming | آره | آره | آره | نه | آره | آره |
AEAD قطعی
پیاده سازی | جاوا | C++ (BoringSSL) | C++ (OpenSSL) | هدف-C | برو | پایتون |
---|
AES-SIV | آره | آره | آره | آره | آره | آره |
مک
پیاده سازی | جاوا | C++ (BoringSSL) | C++ (OpenSSL) | هدف-C | برو | پایتون |
---|
HMAC-SHA2 | آره | آره | آره | آره | آره | آره |
AES-CMAC | آره | آره | آره | آره | آره | آره |
PRF
پیاده سازی | جاوا | C++ (BoringSSL) | C++ (OpenSSL) | هدف-C | برو | پایتون |
---|
HKDF-SHA2 | آره | آره | آره | نه | آره | آره |
HMAC-SHA2 | آره | آره | آره | نه | آره | آره |
AES-CMAC | آره | آره | آره | نه | آره | آره |
امضا
پیاده سازی | جاوا | C++ (BoringSSL) | C++ (OpenSSL) | هدف-C | برو | پایتون |
---|
ECDSA بر روی منحنی های NIST | آره | آره | آره | آره | آره | آره |
Ed25519 | آره | آره | آره | آره | آره | آره |
RSA-SSA-PKCS1 | آره | آره | آره | آره | آره | آره |
RSA-SSA-PSS | آره | آره | آره | آره | آره | آره |
رمزگذاری ترکیبی
پیاده سازی | جاوا | C++ (BoringSSL) | C++ (OpenSSL) | هدف-C | برو | پایتون |
---|
HPKE | آره | آره | نه | نه | آره | آره |
ECIES با AEAD و HKDF | بله 3 | آره | آره | آره | آره | آره |
ECIES با DeterministicAEAD و HKDF | بله 4 | آره | آره | نه | آره | آره |
JWT MAC
پیاده سازی | جاوا | C++ (BoringSSL) | C++ (OpenSSL) | هدف-C | برو | پایتون |
---|
JWT HMAC-SHA2 | آره | آره | آره | نه | آره | آره |
امضای JWT
پیاده سازی | جاوا | C++ (BoringSSL) | C++ (OpenSSL) | هدف-C | برو | پایتون |
---|
JWT ECDSA بر روی منحنی های NIST | آره | آره | آره | نه | آره | آره |
JWT RSA-SSA-PKCS1 | آره | آره | آره | نه | آره | آره |
JWT RSA-SSA-PSS | آره | آره | آره | نه | آره | آره |
جز در مواردی که غیر از این ذکر شده باشد،محتوای این صفحه تحت مجوز Creative Commons Attribution 4.0 License است. نمونه کدها نیز دارای مجوز Apache 2.0 License است. برای اطلاع از جزئیات، به خطمشیهای سایت Google Developers مراجعه کنید. جاوا علامت تجاری ثبتشده Oracle و/یا شرکتهای وابسته به آن است.
تاریخ آخرین بهروزرسانی 2024-10-26 بهوقت ساعت هماهنگ جهانی.
[null,null,["تاریخ آخرین بهروزرسانی 2024-10-26 بهوقت ساعت هماهنگ جهانی."],[[["The tables provide a comprehensive overview of the cryptographic primitives supported by Tink across various programming languages, including Java, C++, Objective-C, Go, and Python."],["Support for specific primitives can vary depending on the chosen language and underlying cryptographic library (e.g., BoringSSL, OpenSSL)."],["Tink offers a wide range of cryptographic capabilities, encompassing AEAD, Streaming AEAD, Deterministic AEAD, MAC, PRF, Signatures, Hybrid Encryption, and JWT support."],["While most primitives are widely supported, some exceptions exist, such as limited AES-GCM functionality on older Android versions and the need for Conscrypt for AES-GCM-SIV in Java."],["Developers should consult the tables to ensure their target language and platform support the required cryptographic primitives for their specific use case."]]],["The content outlines the supported cryptographic primitives across different programming languages, including Java, C++, Objective-C, Go, and Python. Key actions involve identifying language support for AEAD (AES-GCM, AES-GCM-SIV, etc.), Streaming AEAD, Deterministic AEAD, MAC (HMAC-SHA2, AES-CMAC), PRF, Signature (ECDSA, Ed25519, RSA), Hybrid Encryption, JWT MAC, and JWT Signature. Each table indicates whether a specific implementation is supported (\"yes\") or not (\"no\") within each language's Tink library.\n"]]