عندما تبدأ العمل مع Tink لأول مرة، هناك بعض المفاهيم الأساسية التي يجب عليك فهمها قبل أن تبدأ رحلتك، وهي موضحة في الأقسام التالية.
الألعاب الأساسية
يستخدم تطبيق Tink الأساسيات كوحدات أساسية للتشفير تدير إحدى الخوارزمية الأساسية بحيث يتمكّن المستخدمون من تنفيذ مهام التشفير بأمان. وتحدّد المجموعة الأولية تفاصيل خوارزمية التشفير والنوع الرئيسي.
الإصدارات الأولية المتوافقة مع Tink:
- التشفير الذي تمت مصادقته مع البيانات المرتبطة (AEAD): هو الطريقة الأساسية الأكثر شيوعًا لتشفير البيانات، وهي مناسبة لمعظم احتياجات التشفير. يوفر AEAD سرية النص العادي، ويسمح بالتحقق من سلامته ومصداقيته. يُرجى الاطّلاع على مقالة التشفير المُصدَّق عليه مع البيانات المرتبطة (AEAD).
- التشفير المحدد: يشير هذا المصطلح إلى نوع من التشفير الأساسي الذي يُنتج دائمًا النص المشفر نفسه لنص عادي ومفتاح معيّن. قد يكون هذا محفوفًا بالمخاطر، لأن المهاجم يحتاج فقط إلى معرفة أي النص المشفر يتوافق مع إدخال نص عادي معين للتعرف عليه. راجِع مقالة تحديد موقع AEAD.
- التوقيع الرقمي: يشير هذا المصطلح إلى عنصر أساسي غير متماثل (راجِع تشفير المفتاح غير المتماثل) لتأكيد صحة وسلامة البيانات الموقَّعة. يُرجى الاطّلاع على التوقيع الرقمي.
- التشفير المختلط: هو أسلوب أولي يجمع بين التشفير غير المتماثل للمفاتيح والتشفير للمفتاح المتماثل (يمكنك الاطّلاع على تشفير المفتاح غير المتماثل وتشفير المفتاح المتماثل). يجمع التشفير المختلط بين كفاءة التشفير المتماثل وسهولة التشفير باستخدام المفتاح العام. لتشفير رسالة، يتم إنشاء مفتاح متماثل جديد واستخدامه لتشفير بيانات النص العادي، بينما يتم استخدام المفتاح العام للمستلِم لتشفير المفتاح المتماثل فقط. يتكون النص المشفر النهائي من النص المشفر المتماثل والمفتاح المتماثل المشفر. راجع التشفير المختلط.
- رمز مصادقة الرسالة (MAC): عنصر أساسي متماثل (راجع تشفير المفتاح المتماثل) لتأكيد صحة البيانات وسلامتها. راجِع رمز مصادقة الرسالة (MAC).
- بث AEAD: يوفر هذا النموذج الأساسي تشفيرًا مصادقًا لبث البيانات، ويفيد عندما تكون البيانات المراد تشفيرها كبيرة جدًا بحيث لا يمكن معالجتها في خطوة واحدة. راجِع بث AEAD.
يمكنك الاطّلاع على الإعدادات الأساسية المتوافقة حسب اللغة للحصول على معلومات حول التوافق.
لمزيد من المعلومات، يمكنك الاطّلاع على التصميم الأساسي.
الأنواع الرئيسية
ينفذ النوع الرئيسي مجموعة أساسية محددة. تحتوي معظم المجموعة الأولية على عدة أنواع رئيسية للاختيار من بينها بناءً على متطلباتك للأمان ووقت التشغيل والمساحة. على سبيل المثال، AES128_GCM عبارة عن AEAD تتميّز بالسرعة والفعالية في تلبية معظم الاحتياجات. يمكنك الاطّلاع على المزيد من المعلومات على الأنواع الرئيسية المتوافقة حسب اللغة.
مجموعات المفاتيح ومقابضها
يستخدم Tink مجموعات المفاتيح لإدارة المفاتيح. مجموعة المفاتيح هي في الأساس مجموعة من المفاتيح التي تسهل تدوير المفتاح. وفي ما يلي الخصائص الجديرة بالملاحظة لمجموعة المفاتيح:
- لكل مفتاح في مجموعة المفاتيح معرّف فريد يكون فريدًا داخل مجموعة المفاتيح. تتم عادةً إضافة رقم التعريف هذا كبادئة إلى كل نص مُشفر أو توقيع أو علامة يتم إنتاجها للإشارة إلى المفتاح الذي تم استخدامه (اطّلع على كيفية استخدام Tink علامات النصوص المشفَّرة للحصول على مزيد من المعلومات).
- هناك مفتاح واحد فقط في كل مرة في مجموعة المفاتيح يكون أساسيًا. المفتاح الأساسي في مجموعة المفاتيح هو المفتاح "قيد الاستخدام" في الوقت الحالي.
- يجب أن تكون كل المفاتيح في مجموعة المفاتيح عمليات تنفيذ نفس المجموعة الأساسية (مثل AEAD)، لكن يمكن أن يكون لها أنواع مفاتيح مختلفة (على سبيل المثال، مفتاح AES-GCM وXCHACHA20-POLY1305).
كل تطبيق من تنفيذ Tink يوفّر واجهات برمجة تطبيقات لإنشاء أو تعديل مجموعات المفاتيح. ومع ذلك، ننصحك باستخدام أداة Tinkey على واجهة سطر الأوامر.
يعمل المستخدمون من خلال مجموعة مفاتيح باستخدام مقبضات مجموعة مفاتيح. مقبض مجموعة المفاتيح يقلل من
تعرُّض المادة الأساسية الحساسة الفعلية. كما أنه يختزل مجموعة مفاتيح تسمح للمستخدمين
بالحصول على مجموعة أولية "تغطي" مجموعة المفاتيح بالكامل. على سبيل المثال، يمكنك الحصول على مجموعة مفاتيح AEAD في مجموعة مفاتيح N
؛ مع التشفير وفك التشفير باستخدام المجموعة الأساسية التي تم الحصول عليها، يتم استخدام المفتاح الأساسي في مجموعة المفاتيح بعد ذلك.
ولمزيد من المعلومات، يمكنك الاطّلاع على تصميم مجموعة المفاتيح.