Dil tarafından desteklenen anahtar türleri
Koleksiyonlar ile düzeninizi koruyun
İçeriği tercihlerinize göre kaydedin ve kategorilere ayırın.
Aşağıdaki tablolarda her temel uygulamanın desteklediği, dile göre sınıflandırılmış anahtar türleri listelenmiştir.
AEAD
Uygulama |
Java |
C++ (BoringSSL) |
C++ (OpenSSL) |
Objective-C |
Go |
Python |
AES-GCM |
evet1 |
evet |
evet |
evet |
evet |
evet |
AES-GCM-SIV |
evet2 |
evet |
no |
no |
evet |
evet |
AES-TO-HMAC |
evet |
evet |
evet |
evet |
evet |
evet |
AES-EAX |
evet |
evet |
evet |
evet |
no |
evet |
KMS Zarfı |
evet |
evet |
evet |
no |
evet |
evet |
CHACHA20-POLY1305 |
evet |
no |
no |
no |
evet |
no |
XCHACHA20-POLY1305 |
evet |
evet |
no |
evet |
evet |
evet |
AEAD akışı
Uygulama |
Java |
C++ (BoringSSL) |
C++ (OpenSSL) |
Objective-C |
Go |
Python |
AES-GCM-HKDF-STREAMING |
evet |
evet |
evet |
no |
evet |
evet |
AES-CTR-HMAC-STREAMING |
evet |
evet |
evet |
no |
evet |
evet |
Deterministik AEAD
Uygulama |
Java |
C++ (BoringSSL) |
C++ (OpenSSL) |
Objective-C |
Go |
Python |
AES-SIV |
evet |
evet |
evet |
evet |
evet |
evet |
Mac
Uygulama |
Java |
C++ (BoringSSL) |
C++ (OpenSSL) |
Objective-C |
Go |
Python |
HMAC-SHA2 |
evet |
evet |
evet |
evet |
evet |
evet |
AES-CMAC |
evet |
evet |
evet |
evet |
evet |
evet |
PRF
Uygulama |
Java |
C++ (BoringSSL) |
C++ (OpenSSL) |
Objective-C |
Go |
Python |
HKDF-SHA2 |
evet |
evet |
evet |
no |
evet |
evet |
HMAC-SHA2 |
evet |
evet |
evet |
no |
evet |
evet |
AES-CMAC |
evet |
evet |
evet |
no |
evet |
evet |
İmza
Uygulama |
Java |
C++ (BoringSSL) |
C++ (OpenSSL) |
Objective-C |
Go |
Python |
NIST eğrileri üzerinden ECDSA |
evet |
evet |
evet |
evet |
evet |
evet |
Ed25519 |
evet |
evet |
evet |
evet |
evet |
evet |
RSA-SSA-PKCS1 |
evet |
evet |
evet |
evet |
evet |
evet |
RSA-SSA-PSS |
evet |
evet |
evet |
evet |
evet |
evet |
Karma Şifreleme
Uygulama |
Java |
C++ (BoringSSL) |
C++ (OpenSSL) |
Objective-C |
Go |
Python |
HPKE |
evet |
evet |
no |
no |
evet |
evet |
AEAD ve HKDF ile ECIES |
evet3 |
evet |
evet |
evet |
evet |
evet |
DeterministicAEAD ve HKDF ile ECIES |
evet4 |
evet |
evet |
no |
evet |
evet |
JWT MAC
Uygulama |
Java |
C++ (BoringSSL) |
C++ (OpenSSL) |
Objective-C |
Go |
Python |
JWT HMAC-SHA2 |
evet |
evet |
evet |
no |
evet |
evet |
JWT İmzası
Uygulama |
Java |
C++ (BoringSSL) |
C++ (OpenSSL) |
Objective-C |
Go |
Python |
NIST eğrilerine göre JWT ECDSA |
evet |
evet |
evet |
no |
evet |
evet |
JWT RSA-SSA-PKCS1 |
evet |
evet |
evet |
no |
evet |
evet |
JWT RSA-SSA-PSS |
evet |
evet |
evet |
no |
evet |
evet |
Aksi belirtilmediği sürece bu sayfanın içeriği Creative Commons Atıf 4.0 Lisansı altında ve kod örnekleri Apache 2.0 Lisansı altında lisanslanmıştır. Ayrıntılı bilgi için Google Developers Site Politikaları'na göz atın. Java, Oracle ve/veya satış ortaklarının tescilli ticari markasıdır.
Son güncelleme tarihi: 2025-07-25 UTC.
[null,null,["Son güncelleme tarihi: 2025-07-25 UTC."],[[["\u003cp\u003eThe tables provide a comprehensive overview of the cryptographic primitives supported by Tink across various programming languages, including Java, C++, Objective-C, Go, and Python.\u003c/p\u003e\n"],["\u003cp\u003eSupport for specific primitives can vary depending on the chosen language and underlying cryptographic library (e.g., BoringSSL, OpenSSL).\u003c/p\u003e\n"],["\u003cp\u003eTink offers a wide range of cryptographic capabilities, encompassing AEAD, Streaming AEAD, Deterministic AEAD, MAC, PRF, Signatures, Hybrid Encryption, and JWT support.\u003c/p\u003e\n"],["\u003cp\u003eWhile 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.\u003c/p\u003e\n"],["\u003cp\u003eDevelopers should consult the tables to ensure their target language and platform support the required cryptographic primitives for their specific use case.\u003c/p\u003e\n"]]],["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"],null,["# Key types supported by language\n\nThe following tables list the key types each [primitive](/tink/primitives-by-language)\nsupports, classified by language.\n\nAEAD\n----\n\n| Implementation | Java | C++ (BoringSSL) | C++ (OpenSSL) | Objective-C | Go | Python |\n|--------------------|----------------|-----------------|---------------|-------------|--------|--------|\n| AES-GCM | yes^[1](#fn1)^ | yes | yes | yes | yes | yes |\n| AES-GCM-SIV | yes^[2](#fn2)^ | yes | **no** | **no** | yes | yes |\n| AES-CTR-HMAC | yes | yes | yes | yes | yes | yes |\n| AES-EAX | yes | yes | yes | yes | **no** | yes |\n| KMS Envelope | yes | yes | yes | **no** | yes | yes |\n| CHACHA20-POLY1305 | yes | **no** | **no** | **no** | yes | **no** |\n| XCHACHA20-POLY1305 | yes | yes | **no** | yes | yes | yes |\n\nStreaming AEAD\n--------------\n\n| Implementation | Java | C++ (BoringSSL) | C++ (OpenSSL) | Objective-C | Go | Python |\n|------------------------|------|-----------------|---------------|-------------|-----|--------|\n| AES-GCM-HKDF-STREAMING | yes | yes | yes | **no** | yes | yes |\n| AES-CTR-HMAC-STREAMING | yes | yes | yes | **no** | yes | yes |\n\nDeterministic AEAD\n------------------\n\n| Implementation | Java | C++ (BoringSSL) | C++ (OpenSSL) | Objective-C | Go | Python |\n|----------------|------|-----------------|---------------|-------------|-----|--------|\n| AES-SIV | yes | yes | yes | yes | yes | yes |\n\nMAC\n---\n\n| Implementation | Java | C++ (BoringSSL) | C++ (OpenSSL) | Objective-C | Go | Python |\n|----------------|------|-----------------|---------------|-------------|-----|--------|\n| HMAC-SHA2 | yes | yes | yes | yes | yes | yes |\n| AES-CMAC | yes | yes | yes | yes | yes | yes |\n\nPRF\n---\n\n| Implementation | Java | C++ (BoringSSL) | C++ (OpenSSL) | Objective-C | Go | Python |\n|----------------|------|-----------------|---------------|-------------|-----|--------|\n| HKDF-SHA2 | yes | yes | yes | **no** | yes | yes |\n| HMAC-SHA2 | yes | yes | yes | **no** | yes | yes |\n| AES-CMAC | yes | yes | yes | **no** | yes | yes |\n\nSignature\n---------\n\n| Implementation | Java | C++ (BoringSSL) | C++ (OpenSSL) | Objective-C | Go | Python |\n|------------------------|------|-----------------|---------------|-------------|-----|--------|\n| ECDSA over NIST curves | yes | yes | yes | yes | yes | yes |\n| Ed25519 | yes | yes | yes | yes | yes | yes |\n| RSA-SSA-PKCS1 | yes | yes | yes | yes | yes | yes |\n| RSA-SSA-PSS | yes | yes | yes | yes | yes | yes |\n\nHybrid Encryption\n-----------------\n\n| Implementation | Java | C++ (BoringSSL) | C++ (OpenSSL) | Objective-C | Go | Python |\n|---------------------------------------|----------------|-----------------|---------------|-------------|-----|--------|\n| HPKE | yes | yes | **no** | **no** | yes | yes |\n| ECIES with AEAD and HKDF | yes^[3](#fn3)^ | yes | yes | yes | yes | yes |\n| ECIES with DeterministicAEAD and HKDF | yes^[4](#fn4)^ | yes | yes | **no** | yes | yes |\n\nJWT MAC\n-------\n\n| Implementation | Java | C++ (BoringSSL) | C++ (OpenSSL) | Objective-C | Go | Python |\n|----------------|------|-----------------|---------------|-------------|-----|--------|\n| JWT HMAC-SHA2 | yes | yes | yes | **no** | yes | yes |\n\nJWT Signature\n-------------\n\n| Implementation | Java | C++ (BoringSSL) | C++ (OpenSSL) | Objective-C | Go | Python |\n|----------------------------|------|-----------------|---------------|-------------|-----|--------|\n| JWT ECDSA over NIST curves | yes | yes | yes | **no** | yes | yes |\n| JWT RSA-SSA-PKCS1 | yes | yes | yes | **no** | yes | yes |\n| JWT RSA-SSA-PSS | yes | yes | yes | **no** | yes | yes |\n\n*** ** * ** ***\n\n1. AES-GCM does not work [properly](/tink/issues/aes_gcm_android_19) on Android \\\u003c=19. [↩](#fnref1)\n\n2. Requires Conscrypt to be installed as a JCE security provider. [↩](#fnref2)\n\n3. Requires a NIST curve. [↩](#fnref3)\n\n4. Requires a NIST curve. [↩](#fnref4)"]]