ما بعد المفتاح العام: التشفير الوظيفي
تعرّفوا إلى رؤية التشفير الوظيفي: يكشف فك التشفير ناتج دالة فقط، وليس النص الصريح.
ما بعد المفتاح العام: التشفير الوظيفي درس مجاني في Cryptology Academy على CoddyKit. هذا هو الدرس 1 من أصل 4. يمكنك قراءة الدرس كاملاً أدناه مجاناً — ثم تمرن عليه مباشرة في المتصفح باستخدام محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7. هذا الدرس جزء من مسار التعلم في Cryptology Academy، وتقدمك يتزامن عبر الويب وتطبيق CoddyKit. تتضمن دورة Cryptology Academy 4 دروس في المجموع.
قيود التشفير التقليدي
يتبع التشفير التقليدي بالمفتاح العام نموذجًا بسيطًا: تُشفّر الرسالة باستخدام مفتاح عام، ثم تُفكّ باستخدام المفتاح الخاص المقابل. ويطّلع من يفك التشفير على الرسالة النصية الأصلية كاملةً. ويُعد هذا النموذج القائم على الكل أو لا شيء خشنًا أكثر من اللازم للعديد من التطبيقات؛ فقد ترغب قاعدة بيانات طبية في السماح لطبيب بمعرفة ما إذا كان المريض يعاني حالةً معينة فقط، من دون إتاحة السجل الطبي بأكمله له. ويعالج التشفير الوظيفي هذا القيد.
التشفير القائم على الهوية
يتيح التشفير القائم على الهوية (IBE)، الذي اقترحه Shamir في عام 1984 وأنشأه Boneh وFranklin في عام 2001، استخدام سلسلة هوية (مثل عنوان بريد إلكتروني أو اسم نطاق أو معرّف موظف) بوصفها مفتاحًا عامًا. وتولّد سلطة مفاتيح موثوقة مفاتيح خاصة لهويات محددة. ويلغي IBE الحاجة إلى شهادات المفاتيح العامة، ويتيح توزيع المفاتيح بسهولة. ويُعد IBE أبسط أشكال التشفير الوظيفي.
تعريف التشفير الوظيفي
يعمّم التشفير الوظيفي (FE)، الذي عرّفه Boneh وSahai وWaters رسميًا في عام 2011، مفهوم IBE. ففي مخطط FE، تستطيع سلطة المفاتيح إنشاء مفتاح دالة sk_f لأي دالة f. وباستخدام Enc(x) ومفتاح الدالة sk_f، يستطيع من يفك التشفير حساب f(x)، لكنه لا يعرف شيئًا آخر عن x يتجاوز ما تكشفه f(x). ويمكن أن تكون الدالة f أي دالة قابلة للحساب ضمن الفئة التي يدعمها المخطط.
FE للجداء الداخلي
يتيح التشفير الوظيفي للجداء الداخلي لمن يملك sk_y حساب الجداء الداخلي
FE لاختبار المساواة
يتيح FE لاختبار المساواة لطرف ما التحقق مما إذا كانت قيمة مشفّرة تطابق قيمة محددة v، ولا يكشف له سوى ما إذا كانت المساواة متحققة. وهذا يتيح استعلامات قواعد البيانات التي تحافظ على الخصوصية: إذ يحتفظ خادم بسجلات مشفّرة، ويستعلم مستخدم عن السجلات المطابقة لقيم محددة من دون أن يعرف الخادم ما الذي يبحث عنه المستخدم أو يتعلم نتائج تتجاوز إجابة نعم أو لا بشأن المطابقة. وتستخدم الإنشاءات العملية الاقترانات الثنائية الخطية.
FE للدوائر العامة
يدعم أقوى أشكال FE دوائر منطقية أو حسابية عشوائية بوصفها دوال. ويستطيع من يفك التشفير، باستخدام sk_f لأي دالة f ذات زمن كثير الحدود، حساب f(x) انطلاقًا من Enc(x). وقد أنشأ Garg وGentry وHalevi وRaykova وSahai وWaters (2013) FE للدوائر العامة نظريًا باستخدام الخرائط متعددة الخطية، لكن إنشاءات FE العامة الحالية غير عملية لاعتمادها على افتراضات غير مثالية بشأن الخرائط متعددة الخطية.
التشويش غير القابل للتمييز
يُعدّ التشويش غير القابل للتمييز (iO) أقوى بدائية تشفيرية معروفة، ويرتبط ارتباطًا وثيقًا بالتشفير الوظيفي. يأخذ مخطط iO دائرة C وينتج نسخة مشوشة O(C) تحسب الدالة نفسها، لكنها لا تكشف أي معلومات عن C تتجاوز سلوكها بالنسبة إلى المدخلات والمخرجات. يستلزم iO معظم البدائيات التشفيرية المعروفة، بما في ذلك التشفير الوظيفي العام. توجد إنشاءات مرشحة تستند إلى مسائل الشبكات، لكنها لا تزال بعيدة عن التطبيق العملي.
التشفير القائم على السمات كحالة خاصة
يُعدّ التشفير القائم على السمات (ABE) شكلًا قابلًا للتطبيق عمليًا من التشفير الوظيفي، حيث تُقيَّد الدالة f بتقييم سياسة: f(x) = 1 إذا حققت مجموعة السمات x السياسة، و0 خلاف ذلك. يتيح ABE تحكمًا دقيقًا في الوصول، بحيث تعتمد حقوق فك التشفير على سمات المستخدم. ويُعدّ ABE الشكل الأكثر استخدامًا عمليًا من التشفير الوظيفي، إذ تُطبَّق تقنياته في التخزين السحابي والرعاية الصحية وإنترنت الأشياء.
خارطة طريق الإنشاءات
يتطور تاريخ إنشاءات التشفير الوظيفي من الأشكال البسيطة إلى القوية: IBE (Boneh-Franklin 2001) → FE للمساواة (إنشاءات متعددة بين 2005 و2010) → FE للضرب الداخلي (ABDALLA 2016) → FE للدوائر محدودة العمق (المبني على الخرائط متعددة الخطية، 2013) → FE العام (المفترض اشتقاقه من iO). تزداد قوة كل خطوة، لكنها تصبح أيضًا أكثر تعقيدًا وأقل كفاءة. ويستخدم النشر العملي أبسط شكل يحقق الوظيفة المطلوبة.
نموذج أمان التشفير الوظيفي
يُعرَّف أمان FE بعدم قابلية التمييز بين تشفير رسالتين x0 وx1، حتى عند توفير مفاتيح دوال لدوال f عشوائية، ما دامت f(x0) = f(x1) لجميع الدوال التي جرى الاستعلام عنها. ويضمن ذلك أن يتعلم مُجري فك التشفير القيمة f(x) تحديدًا، ولا يتعلم شيئًا إضافيًا. توجد مستويان للأمان: الأمان الانتقائي، حيث يلتزم الخصم برسائل التحدي قبل رؤية المفتاح العام، والأمان التكيفي، وهو أمان كامل قائم على المحاكاة.
تحديات النشر العملي
لا يزال FE العام غير عملي، لكن يمكن نشر FE للضرب الداخلي وABE اليوم. وتشمل التحديات الحاجة إلى جهة موثوقة لإصدار المفاتيح، وهي نقطة فشل واحدة، وتعقيد إلغاء المفاتيح، والتكلفة الإضافية للأداء الناتجة عن عمليات الاقتران، ومحدودية التوحيد القياسي. وتشمل اتجاهات البحث FE متعدد الجهات، من دون جهة موثوقة واحدة، وإنشاء المفاتيح اللامركزي، وFE لفئات أكبر من الدوال من دون استخدام الخرائط متعددة الخطية.
اختبار تعريف التشفير الوظيفي
ما الذي يميز التشفير الوظيفي عن التشفير التقليدي بالمفتاح العام؟
مراجعة التشفير الوظيفي
يعمّم التشفير الوظيفي (Boneh-Sahai-Waters 2011) تقنية IBE، إذ يتيح استخدام مفاتيح الدوال sk_f لحساب f(x) من Enc(x) من دون معرفة x بالكامل. توجد إنشاءات عملية لـ FE للضرب الداخلي، مثل الاستدلال الخاص في تعلّم الآلة، ولـ FE لاختبار المساواة. ويُعدّ ABE حالة خاصة قابلة للنشر عمليًا لتقييم سياسات الوصول. ويتطلب FE للدوائر العامة خرائط متعددة الخطية، وهو غير عملي. ويُعدّ iO أقوى بدائية مرتبطة به. ويتمثل التحدي الأساسي في الانتقال من النظرية إلى التطبيق الفعال.
الأسئلة الشائعة
هل درس «ما بعد المفتاح العام: التشفير الوظيفي» مجاني؟
نعم — نص درس «ما بعد المفتاح العام: التشفير الوظيفي» كامل متاح مجاناً هنا على الويب. لتمرينه بشكل تفاعلي (محرر أكواد مدمج ومدرس ذكاء اصطناعي متاح 24/7) وفتح باقي دورة Cryptology Academy، انتقل إلى CoddyKit PRO. تتضمن دورة Cryptology Academy 4 دروس في المجموع.
ماذا ستتعلم في «ما بعد المفتاح العام: التشفير الوظيفي»؟
تعرّفوا إلى رؤية التشفير الوظيفي: يكشف فك التشفير ناتج دالة فقط، وليس النص الصريح. تتمرن على Cryptology Academy مع أكواد عملية تشغلها مباشرة في المتصفح، ومدرس ذكاء اصطناعي متاح 24/7 يجيب على أسئلتك أثناء عملك.
هل أحتاج إلى خبرة سابقة لأبدأ Cryptology Academy؟
لا تُشترط خبرة سابقة. Cryptology Academy على CoddyKit منظم للمبتدئين حتى المتقدمين، لذا يمكنك البدء من هنا أو من البداية والتقدم بسرعتك الخاصة. هذا هو الدرس 1 من أصل 4.
كم من الوقت يستغرق درس «ما بعد المفتاح العام: التشفير الوظيفي»؟
معظم دروس CoddyKit تستغرق حوالي 5–10 دقائق. كل منها موجز وتفاعلي، لذا تحرز تقدماً مستمراً وتستأنف من حيث توقفت عبر الويب والتطبيق.
هل يمكنني كتابة وتشغيل أكواد في درس Cryptology Academy هذا؟
نعم. كل درس في Cryptology Academy يتضمن محرر أكواد مدمج، لذا تكتب وتشغل أكواداً حقيقية مباشرة في متصفحك وتحصل على تعليقات فورية من الذكاء الاصطناعي — بدون إعداد محلي.
جميع الدروس في هذه الدورة
- ما بعد المفتاح العام: التشفير الوظيفي
- ABE وفق سياسة النص المشفّر (CP-ABE)
- ABE وفق سياسة المفتاح (KP-ABE) والمقارنة
- التطبيقات العملية لـ ABE