نظرة عامة على إجراءات إخفاء الهوية لنظام التصويت الإلكتروني عن بعد

В المنشورات السابقة لقد استقرينا على حقيقة أنه في نظام التصويت الإلكتروني عن بعد الذي ندرسه، يتم استخدام خوارزمية "التوقيع الإلكتروني الأعمى" المشفرة لضمان سرية التصويت وإخفاء هوية الناخب. في هذه المقالة سوف ننظر إليها بمزيد من التفصيل.

أولا، دعونا ننتقل إلى خوارزمية التوقيع الإلكتروني المعروفة والمألوفة، والتي تستخدم على نطاق واسع في أنظمة المعلومات لأغراض مختلفة. يعتمد التوقيع الإلكتروني على خوارزميات التشفير غير المتماثلة. التشفير غير المتماثل هو تشفير باستخدام مفتاحين: يستخدم أحدهما للتشفير والآخر لفك التشفير. يطلق عليهم المفتاح المفتوح (العام) والمفتاح الخاص. المفتاح العام معروف للآخرين، والمفتاح الخاص معروف فقط لصاحب التوقيع الإلكتروني ويتم تخزينه في مكان لا يمكن للآخرين الوصول إليه.

عند التوقيع، يحدث ما يلي: أولاً، يتم تقليل المستند الإلكتروني، باستخدام التحويلات الرياضية، إلى سلسلة من الأحرف بحجم معين - وهذا ما يسمى وظيفة التجزئة.

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

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

الآن دعنا ننتقل إلى ما هو "التوقيع الأعمى" وكيف يمكن أن يساعدنا في إخفاء الهوية.

لنتخيل أنه في المثال الموضح أعلاه، المرسل هو الناخب، والوثيقة هي بطاقة الاقتراع، والمستلم هو لجنة الانتخابات، أو كما قلنا “مكون فرز الأصوات”. سيكون لدينا مكون "قائمة الناخبين" كطرف ثالث (المدقق). في هذه الحالة، يمكن أن تتم العملية على النحو التالي.

نظرة عامة على إجراءات إخفاء الهوية لنظام التصويت الإلكتروني عن بعد

يقوم الناخب بإنشاء زوج من المفاتيح على جهازه – الخاص والعامة. وبما أن هذه المفاتيح تم إنشاؤها على جهازه الشخصي في المتصفح، فهي معروفة له فقط.

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

لن يقوم المدقق (مكون قائمة الناخبين) بالتوقيع على المفتاح العام إلا بعد التحقق من وجود الناخب في قائمة الناخبين.

ولحل مشكلة الحفاظ على سرية التصويت، يجب ألا يكون المفتاح العام للناخب الذي تم إنشاؤه على جهازه معروفاً لأي شخص. اتضح أن المدقق يجب أن يوقع على شيء غير معروف له. تبدو المهمة مستحيلة، ولكن هنا تأتي خوارزميات التشفير للإنقاذ - في هذه الحالة، خوارزمية "التوقيع الأعمى"

أولاً، يجب إخفاء المفتاح العام على جهاز الناخب. الإخفاء هو أداء العمليات الحسابية الفردية على جهاز المستخدم. تخيل أنك فكرت في رقم عشوائي من 1 إلى 100، ثم فكرت في رقم عشوائي ثانٍ من 1 إلى 10 وثالث من 10 إلى 50، ورفعت الرقم الذي فكرت به في البداية إلى قوة الرقم الثاني، وقسمته بدون والباقي بالثلث. وتم إبلاغ النتيجة للآخرين. لن يكون من الصعب عليك استعادة الرقم الأصلي، لأنك تعرف تسلسل الإجراءات والأرقام التي في ذهنك. لكن من حولك لن يكونوا قادرين على القيام بذلك.

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

تُستخدم الخوارزمية الموصوفة على نطاق واسع في بروتوكولات التصويت السرية. يستخدم نظام التصويت الإلكتروني عن بعد حاليًا خوارزمية RSA بطول مفتاح يبلغ 4096 بت للتوقيعات العمياء.

بشكل عام، إجراء إخفاء الهوية هو كما يلي.

  1. عند إنشاء التصويت، يتم إنشاء زوج مفاتيح "مدقق" منفصل، ويتم تسجيل المفتاح العام في blockchain. يتم إنشاء زوج مفاتيح فريد لكل صوت.
  2. يتم تحديد هوية المستخدم في نظام تحديد الهوية (في هذه الحالة، في تقييم الأثر البيئي والاجتماعي)، ويوفر الإذن بنقل بيانات تحديد الهوية الخاصة به من نظام تحديد الهوية إلى DEG PTC.
  3. يتحقق مكون "قائمة الناخبين" في DEG PTC من وجود المستخدم في قائمة الناخبين.
  4. على جهاز المستخدم، يتم إنشاء مفاتيحه الشخصية - الخاصة والعامة، المعروفة له فقط.
  5. المفتاح العام مخفي على جهاز المستخدم
  6. ومع بيانات التعريف والمفتاح العام المقنع، يصل المستخدم إلى مكون "قائمة الناخبين".
  7. يتحقق المكون مرة أخرى من وجود المستخدم في القائمة وحقيقة أنه لم يتلق توقيعًا من قبل
  8. إذا كانت جميع عمليات التحقق ناجحة، فسيتم توقيع المفتاح
  9. يتم تسجيل حقيقة التوقيع على المفتاح في blockchain
  10. يقوم المستخدم على جهازه بإزالة القناع من المفتاح العام ويتلقى مفتاحًا خاصًا ومفتاحًا عامًا وتوقيعًا على المفتاح العام، وجميع المفاتيح معروفة له فقط.
  11. بعد ذلك، يتم نقل المستخدم إلى منطقة مجهولة - إلى موقع ويب منفصل edg2020.gov.ru، حيث يكون من المستحيل التعرف عليه (على سبيل المثال، قبل النقل، يمكنه توصيل VPN أو تغيير مزود الإنترنت الخاص به، مما يغير بالكامل عنوان IP)
  12. يعتمد قبول الاقتراع فقط على ما إذا كان توقيع "المدقق" قد تم التحقق منه وما إذا كان هذا المفتاح لم يتم استخدامه من قبل.

بعد ذلك، نقدم وصفًا للخوارزمية من وجهة نظر التشفير.
خيارات التوقيع والتعيين:

نظرة عامة على إجراءات إخفاء الهوية لنظام التصويت الإلكتروني عن بعد
نظرة عامة على إجراءات إخفاء الهوية لنظام التصويت الإلكتروني عن بعد

M - بتنسيق الحشو FDN للتوقيع.

المصدر: www.habr.com

إضافة تعليق