في العديد من مكتبات التشفير، غالبًا ما يتم تحديد المفاتيح من خلال بعض تسلسلات الكلمات الثنائيه
فقط. راجِع على سبيل المثال دوالّ OpenSSL، مثل EVP_EncryptInit_ex،
التي تحتاج إلى مفتاح البدء أيضًا للحساب، بالإضافة إلى وحدات البايت للمفتاح، أو Cipher.init في أسلوب
javax.crypto، الذي يأخذ تسلسل المفتاح وAlgorithmParameterSpec. غالبًا ما يكون من الصعب استخدام هذه الدوال بشكل صحيح،
وقد تؤدي إضافة مَعلمات خاطئة إلى عواقب خطيرة.
يهدف Tink إلى أن يكون مختلفًا، ويتوقع أن يتألّف المفتاح دائمًا من المفتاح
المادة والبيانات الوصفية (المَعلمات).
على سبيل المثال، يحدِّد مفتاح AEAD الكامل بدقة طريقة عمل التشفير
والفك، ويحدِّد الدالتَين \(\mathrm{Enc}\) و
\(\mathrm{Dec}\)، وطريقة ترميز النص المشفَّر (مثل ناقل الإعداد، يليه التشفير، ثم العلامة).
مفتاح AES في Tink ليس تسلسلًا من البايتات بطول 128 أو 192 أو 256 بت فقط،
بل يخزِّن أيضًا مواصفات الخوارزمية المقابلة اللازمة لاحتساب
المفتاح، في شكل عنصر parameters. وبالتالي، فإنّ
مفتاح AES-EAX الكامل ومفتاح AES-GCM الكامل هما كائنان مختلفان في Tink.
تاريخ التعديل الأخير: 2024-11-14 (حسب التوقيت العالمي المتفَّق عليه)
[null,null,["تاريخ التعديل الأخير: 2024-11-14 (حسب التوقيت العالمي المتفَّق عليه)"],[[["In Tink, a Key is a cryptographic object encompassing both key material and metadata, ensuring clear and complete functionality specification."],["Unlike traditional libraries, Tink Keys include necessary parameters like IV and algorithm specifications, simplifying usage and mitigating potential errors."],["Tink Keys fully define cryptographic operations, including encryption, decryption, and ciphertext encoding, as exemplified by AEAD keys."],["Different key types with distinct algorithm specifications, like AES-EAX and AES-GCM, are treated as separate objects within Tink."],["Tink incorporates Keys into Keysets, enabling key rotation and enhanced security practices."]]],[]]