معمي هيل

تعتبر تعمية ھیل أو تشفير هيل أول طريقة تعمية تتعامل فیھا مع 3 حروف في نفس الوقت، ويمكنك التعامل مع عدد أكبر من الأحرف (أو أقل) وتعتبر من التعميات المتعددة الألفبائيات. اخترعت سنة 1929 وسمیت بھذا الاسم نسبة إلى مخترعھا ليستر اس. هيل (Lester S. Hill) وھي تعتمد في عملھا على الجبر الخطي. ولكي تستطیع، التعمية بھا یجب أن یكون لدیك أساسیات التعامل مع المصفوفات (ضرب المصفوفات بالتحديد).
تصغير|لستر هيل، مخترع المُعمِّي

يحتاج مُعَمِّي هيل إلى كلمة مفتاحية (Key Word) وهي عبارة عن كلمة يتم تحويل أحرفها إلى أرقام حسب تسلسل كل حرف في الأبجدية حيث يبدأ التسلسل ب 0 ليأخذ Z مثلا في الأبجدية الإنجليزية 25.
+جدول الحروف الخاص بالأبجدية الإنجليزيةZYXWVUTSRQPONMLKJIHGFEDCBA252423222120191817161514131211109876543210

 التعمية  
يلزم أولاً اختيار الكلمة المفتاحية وتحويلها لمصفوفة أرقام على شكل n*n، مثلا كلمة JECD تصير  وبعد ذلك يختار عدد أحرف النص الأولي على حسب مصفوفة الكلمة المفتاحية حيث أن أعمدة مصفوفة الكلمة المفتاحية يجب أن يساوي عدد صفوف مصفوفة أحرف النص الصريح، في هذه الحالة يجب أن يكون عدد الأحرف زوجيا مثلا لنختار كلمة Encryption كنص أصلي ولنختر التشفير بحرفين:
 En تصير 
 cr تصير 
 yp تصير 
 ti تصير 
 on تصير 
2. تُضرَب المصفوفتان ويحتاج ذلك معرفة طريقة الضرب بعدها يُقسَّم الناتج على 26  ويُحسب باقي القسمة (لأن عدد أحرف الأبجدية الإنجليزية 26 وهي الحروف المستخدمة في هذه الحالة).

ونعمل مود 26






وتُغيَّر كل حرف بالعدد المقابل في الجدول ليصير النص الأولي بعد التعمية:

kvidqpvkwp

 فك التعمية 
 ملاحظات 
لفك التعمية نحتاج إلى مصفوفة معكوسة لمصفوفة المفتاحكتاب Hill Cipher شفرةھیل وتوجد مصفوفات ليس لها مصفوفة معكوسة.

لذا بعد اختيار المفتاح يجب التأكد أولا من أن له مصفوفة معكوسة وإن لم يكن ذلك فلا يمكن فك تعمية الرسالة، بعد اختيار المفتاح وتحويله لمصفوفة نعمل محدد المصفوفة إن كان منعدما فإن المفتاح غير صالح لذا يجب التأكد من أن محدد مصفوفة المفتاح غير منعدم كما يجب أن يكون فرديا ومود 26 الخاص به مخالف ل 13.

 الخطوات 
 نحدد أولا محدد المصفوفة وفي حالتنا ، وهو غير منعدم.
 نقوم بتحديد مود 26 المحدد  إذن، ويجب أن يكون  لذلك يجب أن يكون مخالفا ل13 وفرديا.
 نقوم بتحديد x حيث أن  في حالتنا لدينا  و  إذن x=11
 نحسب adjx حيث أن adjx = x * adj . 
 نعمل مود 26 لadjx 
إذن المصفوفة المعكوسة لمصفوفة المفتاح هي 

 بعد الحصول على المصفوفة المعكوسة 
نأخذ النص المشفر ونقسمه إلى ثنائيات أو حسب المتفق عليه في حالتنا kv id qp vk wp. نحولها إلى مصفوفات ونضرب المصفوفة المعاكسة فيها:

ونعمل مود 26





وبالتالي تصبح كلمة kvidqpvkwp كلمة encryption .

 المراجع 

تصنيف:معميات تقليدية
تصنيف:تعمية