مقدّمة
تحدّثنا في المقالة السابقة عن (تقنيات التشفير القديمة) التي ظهرت عند المصريين والرومان، ثمّ تحدّثنا عن ولادة (علم التشفير المنظّم) على يد الفيلسوف (الكندي) والعالم (القلخشاندي) وتسميتهم دراسة أنظمة (خوارزميات) التشفير واكتشاف نقاط الضعف فيها بـ (علم التَّعْمِيَة). وفي هذه المقالة سنتحدّث عن المنعطف الذي مرّ به هذا العلم في الحرب العالمية الثانية.
مبدأ كيرشوف
ينصّ المبدأ على ما يلي: “يجب أن يكون التشفير آمنًا حتى لو كان نظام التشفير مكشوفًا للعامة، كلمة السر فقط هي التي تضمن السرية”. وقد أعاد عالم الرياضيات الأمريكي (Claude Shannon) صياغة هذا القانون بقوله: “لا بدّ أنّ العدو يعرف نظام التشفير”؛ وبالتالي صار الهدف هو إتاحة دراسة أنظمة التشفير (خوارزميات التشفير) لكل الناس والباحثين؛ ليشترك الجميع في تحليل نقاط ضعفها. أي أنّ سريّة عملية التشفير أصبحت معتمدةً على المفتاح(key) فقط. نعم، خوارزمية التشفير مكشوفة للجميع، ولكن لكل مستخدم مفتاح سري خاص به هو فقط، ولا جرم أنّ تخبئة المفتاح أسهل من تخبئة النظام!
التشفير المتناظر والتشفير اللامتناظر
لنفترض أننا نريد تشفير عبارة “السلام عليكم. قابلني في الحديقة بعد صلاة العصر” باستخدام مفتاح سرّي (K1).
تصبح لدينا الرسالة بعد تشفيرها على الشكل: (ٍ#%]dsf&54536DHDn%$$&)
الآن عندما تصل الرسالة إلى الطرف الآخر (المستقبل) فإننا نميّز حالتين:
١- إذا كان فكّ تشفير الرسالة بنفس مفتاح التشفير (K1) فإننا نسمّي التشفير (متناظرًا). أما إذا كان فكّ التشفير بمفتاح آخر مختلف (K2) فإننا نسمّي التشفير (غير متناظر).
ما الفرق بين نوعي التشفير السابقين؟
في حالة التشفير (الغير متناظر) فإن كل شخص يستخدم النظام لديه زوج من المفاتيح، مفتاح عام ومفتاح سرّي، سيقول المستخدم للنّاس: “يا أيّها الناس، من أراد أن يرسل لي رسالةً مشفّرة فليستخدم المفتاح (K2) (المفتاح العام)، وأنا بحوزتي المفتاح (K1) (المفتاح السري) الذي لا يملكه أحدٌ غيري وهو فقط يمكنه أن يفكّ التشفير ويستعيد الرسالة الأصلية”
أما في حالة التشفير (المتناظر) فإن كل شخص يستخدم النظام سيقول للنّاس: “يا أيها الناس، من أراد أن يرسل لي رسالةً مشفّرة فليتّفق معي على مفتاح (K) مشترك بيننا، نحافظ على سرّيته معاً ولا أحد غيرنا يعرفه. فإذا أراد ارسال رسالةٍ شفّرها بالمفتاح (K)، وعندما تصل الرسالة إليّ فإنني أفكّ تشفيرها بنفس المفتاح (K)”.
أي الطريقتين أقوى؟
في التشفير اللامتناظر لا حاجة لاجتماع طرفي العلاقة.
كلّ إنسان يمتلك زوجًا من المفاتيح (K1, K2) يقوم بنشر منشور على صفحته على الفيسبوك يقول فيه للناس أن يستخدموا مفتاحه العام لتشفير الرسائل وعندما تصله الرسالة المشفرة سيستخدم المفتاح الخاص لفكّ تشفيرها.
أما في التشفير المتناظر فإنك مضّطر للاجتماع بكلّ انسان والاتفاق معه على مفتاح مشترك.
ففي التشفير المتناظر هناك عدد هائل من المفاتيح؛ فكلّما أردت أن تتعامل مع جهة مختلفة عليك أن تتفق معها على مفتاح مشترك بينكما؛ فعدد المفاتيح المشتركة بعدد الجهات المختلفة. فيصبح عندك ربما 100 مفتاح! أما في التشفير اللامتناظر فلا حاجة لهذا العدد الهائل من المفاتيح، لديك مفتاحان (سري وعام)، تحتفظ بالمفتاح السري وتنشر المفتاح العام لكل جهات الاتصال وانتهى الأمر.
التشفير في الحرب العالمية الثانية
كان التشفير المتناظر هو المستخدم في الحرب العالمية الثانية، وأشهر أنظمة التشفير كان نظام (Enigma) الذي استخدمه الألمان. وانصبّت جهود الحلفاء في تطوير تقنيات تدرس الرسائل المشفّرة للوصول إلى المفتاح الذي يتمّ به تشفير الرسالة. واستطاع الإنجليز كسر الشفرة في مشروع (Bletchley Park) المُقام في بلدة (Milton Keynes). ويعد ( Alan Turing) من أبرز الأسماء التي عملت في هذا المشروع.
في المقالة التالية سنتحدّث -إن شاء الله- عن دور الرياضيّات في التشفير (توليد المفاتيح)، وعن أشهر خوارزميات التشفير.
المراجع :
1 –
https://www.bletchleypark.org.uk
2 –
Enigma: The Battle For the Code Hugh Sebag Montefi ore, Phoenix publishers, New Ed., October 2004
3 –
http://netlab.cs.ucla.edu/wiki/files/shannon1949.pdf
4 –
https://www.bletchleypark.org.uk مشروع (Bletchley Park)