تنظيم صفحاتك في مجموعات
يمكنك حفظ المحتوى وتصنيفه حسب إعداداتك المفضّلة.
تشفير المفاتيح غير المتماثل: هو نظام تشفير يستخدم مفاتيح مزدوجة، عامة وخاصة، لتشفير البيانات وفك تشفيرها. تُستخدم المفاتيح العامة
لتشفير البيانات ويمكن مشاركتها. تُستخدم المفاتيح الخاصة لفك تشفير البيانات ولا تكون معروفة إلا للمالك.
Ciphertext: نتيجة لإجراء تشفير على نص عادي باستخدام خوارزمية. لا يمكن فهم النص المُشفر حتى يتم تحويله مرة أخرى إلى نص عادي باستخدام مفتاح.
الاتساق: يعني هذا أن منصة Tink تعمل "بالطريقة نفسها" في جميع لغات البرمجة. على سبيل المثال، يوفر Tink اتساق التقييم، مما يعني أنه بالنسبة لمجموعة مفاتيح معينة، إذا نجح الإنشاء الأساسي بلغتين، فإن الوحدات الأساسية تتصرف بنفس الطريقة.
المفتاح: جزء من المعلومات (على سبيل المثال، سلسلة)
مطلوب لتشفير البيانات أو فك تشفيرها. راجِع الكائنات الرئيسية لمعرفة طريقة تمثيلها.
مفتاح مجموعة المفاتيح ومؤشر مجموعة المفاتيح:
يستخدم تطبيق Tink مجموعات المفاتيح لإدارة المفاتيح. مجموعة المفاتيح هي في الأساس مجموعة من المفاتيح
التي تسهل تدوير المفتاح. وفي ما يلي الخصائص الجديرة بالملاحظة لمجموعة المفاتيح:
لكل مفتاح في مجموعة المفاتيح معرّف فريد يكون فريدًا داخل مجموعة المفاتيح. تتم عادةً إضافة
رقم التعريف هذا كبادئة إلى كل نص مُشفر أو توقيع أو
علامة يتم إنتاجها للإشارة إلى المفتاح الذي تم استخدامه (اطّلع على كيفية استخدام Tink علامات
النصوص
المشفَّرة للحصول على مزيد من المعلومات).
هناك مفتاح واحد فقط في كل مرة في مجموعة المفاتيح يكون أساسيًا. المفتاح الأساسي في مجموعة المفاتيح هو
المفتاح "قيد الاستخدام" في الوقت الحالي.
يجب أن تكون كل المفاتيح في مجموعة المفاتيح عمليات تنفيذ نفس المجموعة الأساسية
(مثل AEAD)، لكن يمكن أن يكون لها أنواع مفاتيح مختلفة (على سبيل المثال، مفتاح AES-GCM
وXCHACHA20-POLY1305).
كل تطبيق من تنفيذ Tink يوفّر واجهات برمجة تطبيقات لإنشاء أو تعديل مجموعات المفاتيح. ومع ذلك، ننصحك
باستخدام أداة Tinkey على واجهة سطر الأوامر.
يعمل المستخدمون من خلال مجموعة مفاتيح باستخدام مقبضات مجموعة مفاتيح. مقبض مجموعة المفاتيح يقلل من
تعرُّض المادة الأساسية الحساسة الفعلية. كما أنه يختزل مجموعة مفاتيح تسمح للمستخدمين
بالحصول على مجموعة أولية "تغطي" مجموعة المفاتيح بالكامل. على سبيل المثال، يمكنك الحصول على مجموعة مفاتيح AEAD في مجموعة مفاتيح N؛ مع التشفير وفك التشفير باستخدام المجموعة الأساسية التي تم الحصول عليها، يتم استخدام المفتاح الأساسي في مجموعة المفاتيح بعد ذلك.
نظام إدارة المفاتيح (KMS): نظام يستخدم لإدارة مفاتيح التشفير،
بما في ذلك إنشائها وتخزينها واستخدامها وتدويرها وإتلافها واستبدالها.
النوع الرئيسي:
ينفذ النوع الرئيسي مجموعة أساسية محددة. تحتوي معظم المجموعة الأولية على عدة أنواع رئيسية
للاختيار من بينها بناءً على متطلباتك للأمان ووقت التشغيل
والمساحة. على سبيل المثال، AES128_GCM عبارة عن AEAD تتميّز بالسرعة والفعالية في تلبية معظم الاحتياجات. يمكنك الاطّلاع على المزيد من المعلومات على الأنواع الرئيسية المتوافقة حسب اللغة.
المَعلمات: تصف بدقة المعلومات
المطلوبة لإنشاء مفتاح، مع استبعاد المادة الأساسية ومعرّف المفتاح. راجِع كائنات المَعلمات لمعرفة طريقة تمثيلها.
Plaintext: نموذج إدخال مفهوم لنص مشفر أو لعناصره.
Primitive:
يستخدم تطبيق Tink الإصدارات الأولية كوحدات أساسية للتشفير تدير
خوارزمية أساسية ليتمكّن المستخدمون من تنفيذ مهام التشفير بأمان. وتحدّد المجموعة الأولية تفاصيل خوارزمية التشفير والنوع الرئيسي.
الإصدارات الأولية المتوافقة مع Tink:
التشفير الذي تمت مصادقته مع البيانات المرتبطة (AEAD): هو الطريقة الأساسية الأكثر شيوعًا لتشفير البيانات، وهي مناسبة لمعظم احتياجات التشفير. يوفر AEAD سرية النص العادي، ويسمح بالتحقق من سلامته ومصداقيته. يُرجى الاطّلاع على مقالة التشفير المُصدَّق عليه مع البيانات المرتبطة
(AEAD).
التشفير المحدد: يشير هذا المصطلح إلى نوع من التشفير الأساسي الذي يُنتج دائمًا النص المشفر نفسه لنص عادي ومفتاح معيّن. قد يكون هذا محفوفًا بالمخاطر، لأن المهاجم يحتاج فقط إلى معرفة أي النص المشفر يتوافق مع إدخال نص عادي معين للتعرف عليه. راجِع مقالة تحديد موقع
AEAD.
التوقيع الرقمي: يشير هذا المصطلح إلى عنصر أساسي غير متماثل (راجِع تشفير المفتاح غير المتماثل) لتأكيد صحة وسلامة البيانات الموقَّعة. يُرجى الاطّلاع على
التوقيع الرقمي.
التشفير المختلط: هو أسلوب أولي يجمع بين التشفير غير المتماثل للمفاتيح
والتشفير للمفتاح المتماثل (يمكنك الاطّلاع على تشفير المفتاح غير المتماثل وتشفير المفتاح
المتماثل). يجمع التشفير المختلط بين كفاءة التشفير المتماثل وسهولة التشفير باستخدام المفتاح العام. لتشفير رسالة، يتم إنشاء مفتاح متماثل جديد واستخدامه لتشفير بيانات النص العادي، بينما يتم استخدام المفتاح العام للمستلِم لتشفير المفتاح المتماثل فقط. يتكون النص المشفر النهائي من النص المشفر المتماثل والمفتاح المتماثل المشفر. راجع التشفير
المختلط.
رمز مصادقة الرسالة (MAC): عنصر أساسي متماثل (راجع تشفير المفتاح المتماثل) لتأكيد صحة البيانات وسلامتها. راجِع رمز مصادقة الرسالة (MAC).
بث AEAD: يوفر هذا النموذج الأساسي تشفيرًا مصادقًا
لبث البيانات، ويفيد عندما تكون البيانات المراد تشفيرها كبيرة جدًا بحيث لا يمكن معالجتها في خطوة واحدة. راجِع بث AEAD.
تاريخ التعديل الأخير: 2025-07-25 (حسب التوقيت العالمي المتفَّق عليه)
[[["يسهُل فهم المحتوى.","easyToUnderstand","thumb-up"],["ساعَدني المحتوى في حلّ مشكلتي.","solvedMyProblem","thumb-up"],["غير ذلك","otherUp","thumb-up"]],[["لا يحتوي على المعلومات التي أحتاج إليها.","missingTheInformationINeed","thumb-down"],["الخطوات معقدة للغاية / كثيرة جدًا.","tooComplicatedTooManySteps","thumb-down"],["المحتوى قديم.","outOfDate","thumb-down"],["ثمة مشكلة في الترجمة.","translationIssue","thumb-down"],["مشكلة في العيّنات / التعليمات البرمجية","samplesCodeIssue","thumb-down"],["غير ذلك","otherDown","thumb-down"]],["تاريخ التعديل الأخير: 2025-07-25 (حسب التوقيت العالمي المتفَّق عليه)"],[[["\u003cp\u003eTink is a cryptographic library that provides a consistent and safe way to perform cryptographic operations across multiple programming languages.\u003c/p\u003e\n"],["\u003cp\u003eIt uses primitives like AEAD, MAC, Digital Signatures, and more to manage underlying algorithms, and keysets to handle key management and rotation.\u003c/p\u003e\n"],["\u003cp\u003eTink offers flexibility with key types to balance security, performance, and size needs.\u003c/p\u003e\n"],["\u003cp\u003eDevelopers can use the registry (soon to be deprecated) or Tinkey, a command-line tool, for managing cryptographic keys.\u003c/p\u003e\n"],["\u003cp\u003ePlaintext and Ciphertext represent the data before and after encryption, respectively, and are fundamental concepts within cryptography.\u003c/p\u003e\n"]]],["Asymmetric key encryption uses public keys for encryption and private keys for decryption. Ciphertext is the encrypted output, reversible to plaintext with a key. Tink uses keysets, a collection of keys, managed via keyset handles. A keyset's primary key is the one actively used. Key types implement specific primitives, which are cryptographic tools. Primitives include AEAD, deterministic encryption, digital signature, hybrid encryption, MAC, and streaming AEAD.\n"],null,["# Glossary\n\n**Asymmetric key encryption** : A cryptographic system that uses paired\nkeys---public and private---to encrypt and decrypt data. *Public keys* are used to\nencrypt data and may be shared. *Private keys* are used to decrypt data, and are\nonly known to the owner.\n\n**Ciphertext**: The result of encryption performed on plaintext using an\nalgorithm. Ciphertext is not understandable until it has been converted back\ninto plaintext using a key.\n\n[**Consistency**](/tink/design/consistency): Means that Tink behaves \"the same\"\nin all programming languages. For example, Tink provides evaluation consistency,\nwhich means that for a given keyset, if primitive creation succeeds in two\nlanguages, the primitives behave the same.\n\n[**Key**](/tink/design/keys): A piece of information (for example, a string)\nrequired to encrypt or decrypt data. See [Key\nobjects](/tink/design/key_objects#key_objects) for how they're represented.\n\n[**Keyset \\& keyset handle**](/tink/design/keysets):\nTink uses *keysets* for managing keys. A keyset is essentially a set of keys\nthat facilitate key rotation. Noteworthy properties of a keyset are:\n\n- Each key in a keyset has a unique ID, which is unique within a keyset. This ID is usually added as a prefix to each produced ciphertext, signature or tag to indicate which key was used (see how Tink [tags\n ciphertexts](/tink/design/keysets#tagging_ciphertexts) for more info).\n- Only one key at a time in a keyset is *primary*. A primary key in a keyset is the key \"in use\" at the moment.\n- All the keys in a keyset *must* be implementations of the same primitive (such as AEAD), but can have different key types (for example, an AES-GCM and XCHACHA20-POLY1305 key).\n\nEach Tink implementation provides APIs to create or edit keysets. However, we\nrecommend using [Tinkey](/tink/tinkey-overview) our CLI tool.\n\nUsers operate over a keyset using *keyset handles* . A keyset handle limits the\nexposure of the actual sensitive key material. It also abstracts a keyset\nallowing users to obtain a primitive that \"wraps\" the entire keyset. For\nexample, you can get an AEAD primitive of a keyset with `N` keys; encryption and\ndecryption with the obtained primitive then uses the primary key in the keyset.\n\n**Key management system (KMS)**: A system used to manage cryptographic keys,\nincluding their generation, storage, use, rotation, destruction, and\nreplacement.\n\n**Key type** :\nA *key type* implements a specific primitive. Most primitives have several key\ntypes to choose from depending on your requirements for security, runtime, and\nspace. For example, AES128_GCM is an [AEAD](/tink/aead) that is fast and\neffective for most needs. See more at [Supported key types by\nlanguage](/tink/supported-key-types).\n\n[**Parameters**](/tink/design/parameters): Fully describes the information\nrequired to create a key, excluding the key material and the key ID. See\n[Parameters objects](/tink/design/key_objects#parameters_objects) for how\nthey're represented.\n\n**Plaintext**: The intelligible input form of an encrypted text or of its\nelements.\n\n[**Primitive**](/tink/design/primitives_and_interfaces):\nTink uses *primitives* as cryptographic building blocks that manage an\nunderlying algorithm so users can perform cryptographic tasks safely. A\nprimitive defines the details of a cryptographic algorithm and the key type.\n\nPrimitives supported by Tink:\n\n- **Authenticated Encryption with Associated Data (AEAD)** : The most common primitive for data encryption; suitable for most encryption needs. AEAD provides plaintext confidentiality, and allows verification of its integrity and authenticity. See [Authenticated Encryption with Associated Data\n (AEAD)](/tink/aead).\n- **Deterministic encryption:** A primitive that always produces the same ciphertext for a given plaintext and key. This can be risky, because an attacker only needs to find out which ciphertext corresponds to a given plaintext input to identify it. See [Deterministic\n AEAD](/tink/deterministic-aead).\n- **Digital signature** : An asymmetric (see *Asymmetric key encryption* ) primitive for confirming the authenticity and integrity of signed data. See [Digital signature](/tink/digital-signature).\n- **Hybrid encryption** : A primitive that combines asymmetric key encryption and symmetric key encryption (see *Asymmetric key encryption* and *Symmetric\n key encryption* ). Hybrid encryption combines the efficiency of symmetric encryption with the convenience of public-key encryption. To encrypt a message, a fresh symmetric key is generated and used to encrypt the plaintext data, while the recipient's public key is used to encrypt the symmetric key only. The final ciphertext consists of the symmetric ciphertext and the encrypted symmetric key. See [Hybrid\n encryption](/tink/hybrid).\n- **Message Authentication Code (MAC)** : A symmetric (see *Symmetric key\n encryption* ) primitive for confirming the authenticity and integrity of data. See [Message Authentication Code (MAC)](/tink/mac).\n- **Streaming AEAD** : A primitive providing authenticated encryption for streaming data; useful when the data to be encrypted is too large to be processed in a single step. See [Streaming AEAD](/tink/streaming-aead).\n\nSee [Supported primitives by language](/tink/primitives-by-language) for\ncompatibility information.\n\n[**Registry**](/tink/design/registry): A global entity in Tink that knows how to\ngenerate new keys and primitives. Also see the guidance on [debugging\nregistration errors](/tink/faq/registration_errors).\n| **Note:** The *registry* is in the process of being deprecated (to be replaced by non-global configurations).\n\n**Symmetric key encryption**: A cryptographic algorithm that uses the same key\nto encrypt plaintext and decrypt ciphertext."]]