مشكلة خبراء التشفير في المطاعم

في علم التشفير، تُعنى مسألة "مُشفّري العشاء" بدراسة كيفية إجراء عملية حسابية آمنة متعددة الأطراف لدالة XOR المنطقية. وقد طرح ديفيد تشاوم هذه المسألة لأول مرة في أوائل ثمانينيات القرن الماضي، واستخدمها كمثال توضيحي لإثبات إمكانية إرسال رسائل مجهولة الهوية مع ضمان عدم إمكانية تتبع المُرسِل والمُستقبِل بشكل كامل. وغالبًا ما يُشار إلى شبكات الاتصال المجهولة الهوية القائمة على هذه المسألة باسم شبكات DC (حيث يرمز DC إلى "مُشفّري العشاء"). [ 1 ]

على الرغم من كلمة "تناول الطعام" ، فإن مشكلة خبراء التشفير الذين يتناولون الطعام لا علاقة لها بمشكلة الفلاسفة الذين يتناولون الطعام .

وصف

توضيح لمشكلة خبراء التشفير في المطاعم

يجتمع ثلاثة خبراء تشفير حول مائدة العشاء. يخبرهم النادل أن شخصًا ما قد يكون أحد خبراء التشفير أو وكالة الأمن القومي الأمريكية (NSA) قد دفع ثمن الوجبة. يحترم خبراء التشفير حق بعضهم البعض في الدفع بشكل مجهول، لكنهم يرغبون في معرفة ما إذا كانت وكالة الأمن القومي هي من دفعت. لذلك يقررون تنفيذ بروتوكول من مرحلتين.

في المرحلة الأولى، يقوم كل اثنين من خبراء التشفير بإنشاء سر مشترك مكون من بت واحد، على سبيل المثال عن طريق رمي عملة معدنية خلف قائمة طعام بحيث يرى اثنان فقط من خبراء التشفير النتيجة بالتناوب لكل اثنين من خبراء التشفير. لنفترض، على سبيل المثال، أنه بعد رمي العملة، يتشارك خبير التشفير أ و ب بتًا سريًا.1{\displaystyle 1}يشترك كل من A و C0{\displaystyle 0}، ويشترك كل من B و C1{\displaystyle 1}.

في المرحلة الثانية، يعلن كل خبير تشفير علنًا عن بت، وهو:

  • إذا لم يدفعوا ثمن الوجبة، فإن عملية " أو الحصرية " (XOR) للبتّين المشتركين اللذين يمتلكونهما مع جاريهم،
  • إذا دفعوا ثمن الوجبة، فإن عكس ذلك هو XOR.

بافتراض أن أياً من خبراء التشفير لم يدفع، فإن (أ) يعلن10=1{\displaystyle 1\oplus 0=1}أعلن ب11=0{\displaystyle 1\oplus 1=0}ويعلن C01=1{\displaystyle 0\oplus 1=1}من ناحية أخرى، إذا دفعت (أ)، فإنها تعلن¬(10)=0{\displaystyle \lnot (1\oplus 0)=0}.

تكشف الإعلانات العامة الثلاثة مجتمعةً عن إجابة سؤالهم. ببساطة، يتم حساب عملية XOR للبتات الثلاثة المعلنة. إذا كانت النتيجة صفرًا، فهذا يعني أن أيًا من خبراء التشفير لم يدفع (وبالتالي، لا بد أن وكالة الأمن القومي قد دفعت الفاتورة). وإلا، فهذا يعني أن أحد خبراء التشفير قد دفع، لكن هويته تبقى مجهولة لباقي خبراء التشفير.

ابتكر ديفيد تشاوم مصطلح شبكة خبراء التشفير في المطاعم ، أو DC-net، لهذا البروتوكول.

القيود

بروتوكول DC-net بسيط وأنيق. ومع ذلك، فإنه يعاني من عدة قيود، وقد تم استكشاف بعض الحلول لها في أبحاث لاحقة (انظر قسم المراجع أدناه).

تصادم
إذا دفع اثنان من خبراء التشفير ثمن العشاء، فإن رسائلهما ستلغي بعضها البعض، وستكون نتيجة عملية XOR النهائية هي0{\displaystyle 0}يُطلق على هذا اسم التصادم، ويسمح لمشارك واحد فقط بالإرسال في كل مرة باستخدام هذا البروتوكول. في حالة أعم، يحدث التصادم طالما أن أي عدد زوجي من المشاركين يرسل رسائل.
خلل
بإمكان أي خبير تشفير خبيث لا يرغب في نجاح تواصل المجموعة أن يُعطّل البروتوكول بحيث تصبح نتيجة عملية XOR النهائية عديمة الفائدة، وذلك ببساطة عن طريق إرسال بتات عشوائية بدلاً من النتيجة الصحيحة. تكمن المشكلة في أن البروتوكول الأصلي صُمم دون استخدام أي تقنية مفتاح عام ، ويفتقر إلى آليات موثوقة للتحقق من التزام المشاركين بالبروتوكول. [ 2 ]
تعقيد
يتطلب البروتوكول مفاتيح سرية مشتركة بين المشاركين، وهو ما قد يُشكل إشكالية في حال وجود عدد كبير منهم. كما أن بروتوكول DC-net، رغم كونه "آمنًا بشكل مطلق"، يعتمد في الواقع على افتراض وجود قنوات "آمنة بشكل مطلق" بين أزواج المشاركين، وهو أمر يصعب تحقيقه عمليًا.

تقوم خوارزمية شبكة الفيتو المجهولة ذات الصلة بحساب عملية OR المنطقية لمدخلات العديد من المستخدمين، بدلاً من عملية XOR المنطقية كما هو الحال في شبكات DC، والتي قد تكون مفيدة في التطبيقات التي تناسبها عملية دمج OR المنطقية بشكل طبيعي.

تاريخ

فكّر ديفيد تشاوم لأول مرة في هذه المشكلة في أوائل ثمانينيات القرن العشرين. وكان أول منشور يوضح الأفكار الأساسية الكامنة وراءها من تأليفه. [ 3 ] وقد نُشرت النسخة الدورية في العدد الأول من مجلة علم التشفير . [ 4 ]

التعميمات

يمكن تعميم شبكات التيار المستمر بسهولة للسماح بعمليات إرسال أكثر من بت واحد لكل جولة، وللمجموعات التي يزيد عدد المشاركين فيها عن ثلاثة، ولـ "أبجديات" عشوائية بخلاف الأرقام الثنائية 0 و1، كما هو موضح أدناه.

إرسال رسائل أطول

لتمكين مُرسِل مجهول من إرسال أكثر من بت واحد من المعلومات في كل جولة من جولات DC-nets، يمكن لمجموعة خبراء التشفير ببساطة تكرار البروتوكول عدة مرات حسب الحاجة لإنشاء عرض نطاق إرسال بالبتات المطلوبة. ولا يشترط أن تتم هذه التكرارات بشكل متسلسل. في أنظمة DC-nets العملية، من المعتاد أن يتفق كل زوج من المشاركين مسبقًا على سر رئيسي مشترك واحد، باستخدام تبادل مفاتيح ديفي-هيلمان على سبيل المثال. ثم يقوم كل مشارك بتغذية هذا السر الرئيسي المشترك محليًا إلى مولد أرقام شبه عشوائية ، لإنتاج عدد من "رميات العملة" المشتركة حسب الحاجة للسماح لمُرسِل مجهول بإرسال بتات متعددة من المعلومات.

أحجام مجموعات أكبر

يمكن تعميم البروتوكول على مجموعة منن{\displaystyle n}يتشارك المشاركون مفتاحًا سريًا مشتركًا. في كل جولة من البروتوكول، إذا أراد أحد المشاركين إرسال رسالة غير قابلة للتتبع إلى المجموعة، فإنه يعكس بتّه المعلن. يمكن تمثيل المشاركين بيانيًا بشبكة متصلة بالكامل ، حيث تمثل الرؤوس المشاركين، وتمثل الحواف مفاتيحهم السرية المشتركة.

رسوم بيانية متفرقة لمشاركة الأسرار

يمكن تشغيل البروتوكول باستخدام رسوم بيانية لمشاركة الأسرار غير مكتملة الاتصال ، مما قد يُحسّن أداء وقابلية التوسع لتطبيقات DC-net العملية، مع احتمال تقليل مستوى إخفاء الهوية إذا تمكن المشاركون المتواطئون من تقسيم الرسم البياني لمشاركة الأسرار إلى مكونات متصلة منفصلة. على سبيل المثال، تعميم جذاب بديهيًا ولكنه أقل أمانًا لـن>3{\displaystyle n>3}يستخدم المشاركون بنية حلقية ، حيث يشارك كل خبير تشفير يجلس حول طاولة سرًا فقط مع خبير التشفير الذي يجلس على يساره ويمينه مباشرة، وليس مع جميع خبراء التشفير الآخرين. هذه البنية جذابة لأن كل خبير تشفير يحتاج إلى تنسيق رميتين للعملة المعدنية في كل جولة، بدلاً منن{\displaystyle n}مع ذلك، إذا كان آدم وتشارلي عميلين في وكالة الأمن القومي يجلسان مباشرةً على يمين ويسار بوب، الضحية البريئة، وإذا تواطأ آدم وتشارلي سرًا لكشف أسرارهما لبعضهما البعض، فبإمكانهما تحديد ما إذا كان بوب هو مُرسِل البت 1 في عملية DC-net، بغض النظر عن عدد المشاركين الإجمالي. وذلك لأن آدم وتشارلي المتواطئين "قسما" مخطط مشاركة الأسرار إلى جزأين منفصلين، أحدهما يحتوي على بوب فقط، والآخر يحتوي على جميع المشاركين الآخرين النزيهين.

يمكن وصف بنية شبكة DC-net أخرى لتبادل الأسرار، المستخدمة في نظام Dissent لتحقيق قابلية التوسع [ 5 بأنها بنية عميل/خادم أو مستخدم/موثوق به . في هذا النوع، نفترض وجود نوعين من المشاركين يؤدون أدوارًا مختلفة: عدد كبير محتمل n من المستخدمين الذين يرغبون في إخفاء هويتهم، وعدد أقل بكثيرم{\displaystyle m}من الأمناء الذين يتمثل دورهم في مساعدة المستخدمين على تحقيق هذا الإخفاء للهوية. في هذا الهيكل، كل واحد منن{\displaystyle n}يُشارك المستخدمون سرًا مع كل واحد منم{\displaystyle m}الأمناء - لكن المستخدمين لا يشاركون الأسرار مباشرة مع مستخدمين آخرين، والأمناء لا يشاركون الأسرار مباشرة مع أمناء آخرين - مما ينتج عنهن×م{\displaystyle n\times m}مصفوفة مشاركة الأسرار. إذا كان عدد الأمناءم{\displaystyle m}إذا كانت الشبكة صغيرة، فلن يحتاج كل مستخدم إلا لإدارة عدد قليل من الأسرار المشتركة، مما يُحسّن كفاءة المستخدمين بنفس طريقة بنية الشبكة الحلقية. ومع ذلك، طالما أن أحد الأمناء على الأقل يتصرف بنزاهة ولا يُسرّب أسراره أو يتواطأ مع المشاركين الآخرين، فإن هذا الأمين النزيه يُشكّل "مركزًا" يربط جميع المستخدمين النزيهين في مُكوّن واحد مُتصل بالكامل، بغض النظر عن أيٍّ من المستخدمين أو الأمناء الآخرين أو عددهم الذين قد يتواطؤون بشكل غير نزيه. لا يحتاج المستخدمون إلى معرفة أو تخمين أيّ أمين نزيه؛ فأمانهم يعتمد فقط على وجود أمين واحد على الأقل نزيه وغير متواطئ.

أبجديات بديلة وعوامل دمج

على الرغم من أن بروتوكول DC-nets البسيط يستخدم الأرقام الثنائية كأبجدية إرسال، ويستخدم عامل XOR لدمج النصوص المشفرة، إلا أن البروتوكول الأساسي قابل للتعميم ليشمل أي أبجدية وعامل دمج مناسبين لتشفير المفتاح لمرة واحدة . تنشأ هذه المرونة بشكل طبيعي من حقيقة أن الأسرار المشتركة بين العديد من أزواج المشاركين هي في الواقع مجرد مفاتيح لمرة واحدة مدمجة بشكل متناظر ضمن جولة واحدة من DC-net.

يُعدّ استخدام مجموعة منتهية مناسبة للتشفير بالمفتاح العام كأبجدية، مثل مجموعة شنور أو منحنى إهليلجي ، واستخدام عامل المجموعة المرتبط بها كعامل دمج لشبكة DC، خيارًا بديلًا مفيدًا لأبجدية وعامل دمج شبكة DC. يُمكّن هذا الاختيار العملاء من استخدام تقنيات إثبات المعرفة الصفرية للتحقق من خصائص صحة النصوص المشفرة التي ينتجونها في شبكة DC، مثل عدم قيام المشارك بتشويش قناة الإرسال، دون المساس بميزة إخفاء الهوية التي توفرها شبكة DC. اقترح غول وجولز هذه التقنية لأول مرة [ 6 ] ، ثم طورها فرانك [ 7 ] ، ونُفذت لاحقًا في Verdict ، وهو تطبيق قابل للتحقق تشفيريًا لنظام Dissent [ 8 ] .

التعامل مع الاصطدامات أو تجنبها

إن الإجراء الذي اقترحه ديفيد تشاوم في الأصل لتجنب التصادمات هو إعادة إرسال الرسالة بمجرد اكتشاف التصادم، لكن الورقة لا تشرح بالضبط كيفية ترتيب إعادة الإرسال.

يتجنب نظام Dissent إمكانية حدوث تصادمات غير مقصودة باستخدام عملية خلط قابلة للتحقق لإنشاء جدول إرسال لشبكات DC، بحيث يعرف كل مشارك بالضبط أي البتات في الجدول تتوافق مع خانة الإرسال الخاصة به، ولكنه لا يعرف من يملك خانات الإرسال الأخرى. [ 9 ]

التصدي لهجمات التعطيل

يقسم برنامج Herbivore شبكة إخفاء الهوية الكبيرة إلى مجموعات أصغر، مما يُمكّن المشاركين من تجنب محاولات التعطيل عن طريق مغادرة المجموعة المُعطّلة والانضمام إلى مجموعة أخرى، حتى يجد المشارك مجموعة خالية من المُعطّلين. [ 10 ] يُؤدي هذا النهج إلى خطر يتمثل في إمكانية قيام مُهاجم يمتلك العديد من العُقد بتعطيل المجموعات التي لم يخترقها بالكامل ، وبالتالي "توجيه" المشاركين نحو مجموعات قد تكون فعّالة تحديدًا لأنها مُخترقة بالكامل. [ 11 ]

يُطبّق بروتوكول Dissent عدة آليات لمواجهة التشويش. استخدم البروتوكول الأصلي [ 9 ] عملية خلط تشفيرية قابلة للتحقق لتشكيل جدول إرسال شبكة DC-net وتوزيع "مهام الإرسال"، مما يسمح بالتحقق من صحة النصوص المشفرة اللاحقة لشبكة DC-net باستخدام فحص تجزئة تشفيرية بسيط . مع ذلك، تطلبت هذه التقنية عملية تحقق جديدة قبل كل جولة من جولات DC-net، مما أدى إلى زمن استجابة طويل. تسمح آلية لاحقة أكثر كفاءة باستمرار سلسلة من جولات DC-net دون عمليات خلط وسيطة في حال عدم وجود تشويش، ولكنها تستخدم عملية خلط استجابةً لحدث تشويش لتوزيع اتهامات مجهولة المصدر ، مما يمكّن ضحية التشويش من كشف هوية الجاني وإثباتها. [ 5 ] أخيرًا، تدعم الإصدارات الأحدث شبكات DC القابلة للتحقق بالكامل - بتكلفة كبيرة في كفاءة الحساب نظرًا لاستخدام التشفير بالمفتاح العام في شبكة DC - بالإضافة إلى وضع هجين يستخدم شبكات DC فعالة قائمة على XOR في الحالة العادية وشبكات DC قابلة للتحقق فقط عند حدوث خلل، لتوزيع الاتهامات بسرعة أكبر مما هو ممكن باستخدام عمليات الخلط القابلة للتحقق. [ 8 ]

مراجع

  1. تشاوم دي إل (1988). "مشكلة خبراء التشفير في المطاعم: عدم إمكانية تتبع المرسل والمستلم بشكل غير مشروط". مجلة علم التشفير . 1(1):65-75.
  2. الفرسان والأوغاد .
  3. ديفيد تشاوم (1985). "الأمن بدون هوية: أنظمة المعاملات لجعل التجسس الشامل عتيقًا" (ملف PDF) . مجلة اتصالات رابطة مكائن ​​الحوسبة . 28 (10): 1030-1044 . CiteSeerX 10.1.1.319.3690 . doi : 10.1145/4372.4373 . S2CID 15340054 .  
  4. ديفيد تشاوم (1988). "مشكلة خبراء التشفير في المطاعم: عدم إمكانية تتبع المرسل والمستلم بشكل مطلق" . مجلة علم التشفير . 1 (1): 65-75 . CiteSeerX 10.1.1.127.4293 . doi : 10.1007/BF00206326 . S2CID 2664614 .  
  5. 1 2 ديفيد إسحاق وولينسكي؛ هنري كوريجان-جيبس؛ برايان فورد؛ آرون جونسون (8-10 أكتوبر 2012). المعارضة بالأرقام: بناء نطاق قوي لإخفاء الهوية . الندوة العاشرة لـ USENIX حول تصميم وتنفيذ أنظمة التشغيل (OSDI). هوليوود، كاليفورنيا، الولايات المتحدة الأمريكية.
  6. فيليب غول؛ آري جولز (2-6 مايو 2004). إعادة النظر في خبراء التشفير أثناء تناول الطعام (ملف PDF) . يورو كريبت 2004. إنترلاكن، سويسرا.
  7. فرانك، كريستيان (2008). اتجاهات جديدة لخبراء التشفير في مجال تناول الطعام (PDF) (رسالة ماجستير).
  8. 1 2 هنري كوريجان-جيبس؛ ديفيد إسحاق وولينسكي؛ برايان فورد (14-16 أغسطس 2013). المراسلة المجهولة المسؤولة استباقيًا في Verdict . ندوة USENIX الأمنية الثانية والعشرون. واشنطن العاصمة، الولايات المتحدة الأمريكية.
  9. 1 2 هنري كوريجان-جيبس؛ برايان فورد (أكتوبر 2010). المعارضة: إخفاء هوية المجموعة المسؤولة . المؤتمر السابع عشر لجمعية آلات الحوسبة (ACM) حول أمن الحاسوب والاتصالات (CCS). شيكاغو، إلينوي، الولايات المتحدة الأمريكية. مؤرشف من الأصل في 29 نوفمبر 2012. تم الاسترجاع في 9 سبتمبر 2012 .
  10. إمين غون سيرر؛ شاراد غويل؛ مارك روبسون؛ دوغان إنجين (19-22 سبتمبر 2004). التهرب من آكلي اللحوم: مشاركة الملفات مع إخفاء هوية قوي (ملف PDF) . ورشة عمل ACM SIGOPS الأوروبية. لوفين، بلجيكا.
  11. نيكيتا بوريسوف؛ جورج دانيزيس؛ براتيك ميتال؛ باريسا تبريز (أكتوبر 2007). حجب الخدمة أم حجب الأمن؟ كيف يمكن للهجمات على الموثوقية أن تُعرّض إخفاء الهوية للخطر (ملف PDF) . مؤتمر ACM لأمن الحاسوب والاتصالات (CCS). الإسكندرية، فرجينيا، الولايات المتحدة الأمريكية.