مقدمة عن التشفير الانتقالي Transposition Ciphers و شفرة Route Transposition
يعتبر احد طرق التشفير القديمة classical ciphers , وتفترض هذه الطريقة بتغيير مواقع احرف الكلمة المراد تشفيرها , على سبيل المثال اريد ان اشفر كلمة spyman بطرق التشفير الانتقالي , فسوف تصبح SMPAYN , لو تلاحظ الكلمة المشفرة لم تأتي بحروف جديدة , وانما عدلت على مواقع الحروف القديمة فقط .
بعض طرق التشفير الانتقالي :
1- شفرة Railfence Transposition
2- شفرة Columnar Transposition
3- شفرة Route Transposition
4- myszkowski transposition cipher
5- permutation transposition cipher
6- anagramming jumbling words transposition cipher
7-combining monoalphabetic and simple transposition
بعض انواع التشفير الانتقالي لا تحتاج الى مفتاح (key) لذلك تسمى بطرق (Keyless Transposition) مثل شفرة railfence وشفرة الروت Route Transposition ,, لكن تحتوي شفرة الرّيل فينس على رقم تزحيف الاحرف وقد يعتبره البعض مفتاح .
شفرة Route Transposition :
تعتبر شفرة الروت من الشفرات الابدالية السهلة التي لا تحتاج الى مفتاح key , كل ما تحتاج اليه هو الاتفاق على عدد الاعمدة والصفوف وتنظيم احرف النص الواضح في الشبكة ( الجدول ) .
طريقة التشفير Encryption :
1- نقوم بفرض عدد الاعمدة بالاتفاق بين المرسل والمستلم (Alice and Bob) . وليكن خمسة مثلا
2- نقوم بحساب عدد احرف النص الواضح ونقسمها على العدد الذي فرضناه في الخطوة رقم واحد , (دائماً نقرب الناتج للاعلى ) مثلاً كان ناتج القسمة 6.1 اذن نقوم بتقريبه للـ 7 (دائما هذا الشيء ثابت لا يتغير)
3- نقوم بتوزيع احرف النص الواضح سطر سطر ( او بشكل دوامة تبدأ من اسفل اليسار او اليمين من الاعلى او الاسفل حسب الاتفاق بين اليس و بوب )
4- في حال اكتمال توزيع النص الواضح بداخل الشبكة وبقى لدينا فراغ فنقوم بوضع بداخل الفراغ حرف x .
مثال سوف اقوم بتشفير كلمة spymanh4 حسب الخطوات اعلاه :
1- فرضنا عدد الاعمدة 5
2- قسمنا عدد احرف النص الواضح (في مثالنا 8) على عدد الاعمدة فيكون الناتج 1.6 , نقرب العدد للاعلى فيكون 2 وهو عدد الصفوف .
3- قمنا بتوزيع النص الواضح سطر سطر .
4- وضعنا x في الفراغ
ونقرأ عمود عمود , فيكون النص المشفر : SNPHY4MXAX
مثل اخر : شفر العبارة التالية : abort the mission, you have been spotted ( بالعربي , انهي المهمة انت قد كشفت )
بأستخدام شفرة الروت .
نطبق الطرق اعلاه :
في هذا المثال تكون القراءة مختلفة والمسار مختلف (ممكن اختيار طريقة عمود عمود ولكن اريد ان ابين ممكن اختيار اي مسار )
لاحظ الصورة ادناه لمعرفة كيفية اختيار المسار :
تبدأ من اسفل اليسار وتصعد وتتحرك بشكل لولبي ( دوامة كأنما ) وصولا للمركز . عكس اتجاه عقارب الساعة
فيكون السايفر : XTEAN ITROB ATSYV NTEDX OEHOM EHSOE SPBUI
طريقة فك التشفير :
نفس طريقة فك التشفير , تحدد الطريقة المتفق عليها ويتم عمل جدول ويقوم مفكك الشفرة بتطبيق الطريقة عليها .
مثال : قم بتشفير الكلمة SNPHY4MXAX بأستخدم شفرة الروت .
لو لاحظ بالمثال اعلاه قمنا بتشفير هذه الكلمة في خمس اعمدة وصفين , ورتبنا النص بشكل سطور .. نكتب الجدول ونرتب النص المشفر على شكل اعمدة :
الان نقرأ سطر سطر , فيكون الناتج spymanh4xx نحذف الـ xx فيكون الناتج spymanh4
كذلك نفس الطريقة للمثال الاخر .
للتوضيح اكثر شاهد هذا الفيديو , يبدأ شرح شفرة الروت بالدقيقة 2:23
برمجة الشفرة :
بما ان هذه الشفرة متغيرة فلا يوجد برنامج او كود يشمل جميع الطرق لانه معتمدة على الاتفاق بين Alice و Bob
اتمنى لكم التوفيق