Mantieni tutto organizzato con le raccolte
Salva e classifica i contenuti in base alle tue preferenze.
In molte librerie di crittografia, le chiavi sono spesso identificate solo da alcune sequenze di byte. Prendi ad esempio le funzioni OpenSSL come EVP_EncryptInit_ex,
che, oltre ai byte della chiave, richiede anche l'IV per il calcolo; oppure il
metodo javax.crypto Cipher.init, che accetta sia una sequenza di chiavi sia un
AlgorithmParameterSpec. Spesso è difficile utilizzare correttamente queste funzioni
e passare i parametri sbagliati può avere conseguenze gravi.
Tink mira a essere diverso e si aspetta che una chiave sia sempre composta sia dal materiale della chiave sia dai metadati (i parametri).
Ad esempio, una chiave AEAD completa specifica in dettaglio il funzionamento della crittografia e della decrittografia: specifica le due funzioni \(\mathrm{Enc}\) e\(\mathrm{Dec}\)e come viene codificata la crittografia (ad es. vettore di inizializzazione, seguito dalla crittografia, seguito dal tag).
Una chiave AES in Tink non è solo una sequenza di byte di lunghezza 128, 192 o 256 bit, ma memorizza anche le specifiche dell'algoritmo corrispondenti necessarie per calcolare la chiave, sotto forma di oggetto parameters. Di conseguenza, una chiave AES-EAX completa e una chiave AES-GCM completa sono oggetti diversi in Tink.
[[["Facile da capire","easyToUnderstand","thumb-up"],["Il problema è stato risolto","solvedMyProblem","thumb-up"],["Altra","otherUp","thumb-up"]],[["Mancano le informazioni di cui ho bisogno","missingTheInformationINeed","thumb-down"],["Troppo complicato/troppi passaggi","tooComplicatedTooManySteps","thumb-down"],["Obsoleti","outOfDate","thumb-down"],["Problema di traduzione","translationIssue","thumb-down"],["Problema relativo a esempi/codice","samplesCodeIssue","thumb-down"],["Altra","otherDown","thumb-down"]],["Ultimo aggiornamento 2025-07-25 UTC."],[[["\u003cp\u003eIn Tink, a Key is a cryptographic object encompassing both key material and metadata, ensuring clear and complete functionality specification.\u003c/p\u003e\n"],["\u003cp\u003eUnlike traditional libraries, Tink Keys include necessary parameters like IV and algorithm specifications, simplifying usage and mitigating potential errors.\u003c/p\u003e\n"],["\u003cp\u003eTink Keys fully define cryptographic operations, including encryption, decryption, and ciphertext encoding, as exemplified by AEAD keys.\u003c/p\u003e\n"],["\u003cp\u003eDifferent key types with distinct algorithm specifications, like AES-EAX and AES-GCM, are treated as separate objects within Tink.\u003c/p\u003e\n"],["\u003cp\u003eTink incorporates Keys into Keysets, enabling key rotation and enhanced security practices.\u003c/p\u003e\n"]]],["Tink's **Key** includes both key material and metadata, defining its functionality. Unlike other libraries that only use byte sequences, Tink requires complete parameter specifications. A full AEAD key defines encryption and decryption processes, along with ciphertext encoding. AES keys in Tink include algorithm specifications, making different AES types distinct objects. Keys in Tink exist as parts of a set of keys called a Keyset, allowing key rotation.\n"],null,[]]