التوصيف الرياضي
إن كل تحويل في آلة إنجما لأي حرف يمكن أن يعبر عنه رياضيًا كنتيجة لتباديل معينة. لنفترض ثلاث دوّارات لآلة إنجما تابعة للقوى الجوية الألمانية، وليكن
P يشير إلى تحويل لوحة المآخذ، و
U يشير إلى تحويل العاكس، و
L,
M,
R تشير إلى الدوّارات اليسار فالوسط فاليمين بشكل متتابع. يمكن عندها التعبير عن التعمية بالشكل:
E =
PRMLUL − 1M − 1R − 1P − 1.
بعد كل ضربة زر، يدور الدوّار مغيرًا التحويل. فمثلا، إذا دار الدوّار اليمين
R عدد من المواضع
i، يصبح التحويل ρ
iRρ
− i، حيث ρ هي التبديل الدوري (cyclic permutation) يبدأ من
A إلى
B، و
B إلى
C، وهكذا
دواليك. وبشكل مشابه، يمكن تمثيل الدوّار اليسار
j و
k دوران
M و
L. يمكن عندها توصيف تحويل التعمية بالشكل:
E =
P(ρ
iRρ
− i)(ρ
jMρ
− j)(ρ
kLρ
− k)
U(ρ
kL − 1ρ
− k)(ρ
jM − 1ρ
− j)(ρ
iR − 1ρ
− i)
P − 1.
إجراءات استخدام آلة إنجما تتطلب آلة إنجما قائمة بإعداد المفاتيح اليومي، وعدد من الوثائق المساعدة. إجراءات آلة إنجما الألمانية البحرية هي الأكثر تفصيلا، وأمنًا، من الإجراءات المستخدمة في الآلات الأخرى. طبع كتاب الرموز باللون الأحمر، بحبر منحل في الماء على ورق قرنقلي، بحيث يمكن تدميره بسهولة إذا خشي وقوعه بيد العدو. كتاب الرموز المبين أعلاه تم ضبطه أثناء أسر الغواصة الألمانية المسماة يوبوته
في الاستعمال الألماني العادي، قسمت الاتصالات إلى عدد من الشكبات العاملة المختلفة، ولكل منها إعدادات مختلفة لآلة إنجما. سميت شبكات الاتصالات هذه بالمصطلح
مفتاح في حديقة بلتشلي،
وأعطيت اسم رمز مثل،
أحمر، و
عصفور، و
قرش. أعطيت كل من هذه الوحدات العاملة على الشبكات، قائمة إعدادات لآلة إنجما لفترة من الزمن. ولكي تعمى رسالة ويفك تعميتها بشكل صحيح، يجب على كل من المرسل والمستقبل أن يعد آلته بنفس الطريقة، كاختيار الدوّار وترتيب
الاختبار، موقع البداية، وتوصيلات لوحة المآخذ. جميع هذه الإعدادات (مع بعضها 1المفتاح في المصطلح الحديث) يجب أن توضع مسبقًا، وتوزع في كتاب الرموز.
إن الحالة الأولية لآلة إنجما،المفتاح، لها عدة سمات:
- نظام الدوّارات (بالألمانية: Walzenlage): اختيار الدوّارات وترتيبها عند تركيبها.
- الوضع الأولي للدوّارات: يختارها المشغل، وهو مختلف لكل رسالة.
- إعداد الحلقات (بالألمانية: Ringstellung): موضع الحلقات الأبجدية نسبة إلى توصيل الدوّارات.
- إعداد المآخذ (بالألمانية: Steckerverbindungen): توصيل المآخذ في لوحة المآخذ.
- توصيل العاكس القابل للإعداد في النسخ الأخيرة جدًا.
لقد صممت آلة إنجما لتكون موثوقة حتى لو عرف توصيل الدوّارات من قبل العدو، بالرغم من الجهود العملية المعتبرة لحفظ سر التوصيل. إذا كان التوصيل سريًا، فإن العدد الكلي للإعدادات
المحتملة يتجاوز 10
114 (حوالي 380 بت)، وبمعرفة التوصيل وشروط التشغيل الأخرى، يمكن تخفيضه إلى 10
23 أي (76 بت). إن مستخدمي إنجما كانوا واثقين من وثوقيتها بسبب العدد الهائل من الاحتمالات، وقد كان من غير الملائم للعدو أن يحاول كل احتمالية للإعدادات بطريقة بروته فورس.
المؤشراتكانت معظم المفاتيح تترك ثابتة لفترة من الزمن، عادة تقدر هذه الفترة بيوم. على أية حال، كان يختار وضع جديد مختلف لكل دوّار ولكل رسالة، وهو مبدأ مشابه لمبدأ استهلال المتجهات (
Initialization vector)، في التعمية الحديثة، لأنه إذا أرسلت عدة رسائل معماة بنفس الإعدادات أو مقاربة لها، فإن محلل التعمية، مع توفر عدة رسائل مطولة وتتكلم في عمق
الموضوع، قد يكون قادرًا على فك الرسائل باستخدام تحليل التردد. يتم إرسال موضع البداية مباشرة قبل النص المعمى. يشار إلى الطريقة الصحيحة المستخدمة
بإجراء المؤشر، وقد سمحت إجراءات المؤشر الضعيفة بكسر تعمية الإنجما.
الشكل 2: إن الدواليب المحززة للدوّارات تنتأ من الغطاء، مما يسمح للمشغل بضبط الدوّارات، وموضعهم الحالي، هنا
RDKP، يكون مرئيًا للمشغل من خلال مجموعة من النوافذ
إن أول من استخدم
إجراءات المؤشر هم محللوون التعمية البولنديون ليخترقوا بشكل أولي آلة إنجما. وكان الإجراء بأن يعد المشغل آلته بالتوافق مع قائمة الإعدادات التي تتضمن موضعا مبدئيا
عاما للدوّارات (
Grundstellung—"ground setting") وليكن مثلا
AOH. يدير المشغل الدوّارات حتى ظهور
AOH ضمن نوافذ الدوّارات. وعندها يختار المشغل موضع البداية العشوائي لتلك الرسالة الخاصة. قد يختار المشغل
EIN، وتصبح هذه إعدادات الرسالة لمقطع
التعملية ذاك. ثم يبدأ المشغل بطباعة
EIN على الآلة، مرتين، ليتحقق من أخطاء التحويل. تكون النتائج هي
مؤشر معمّى،
EIN مكتوبة مرتين قد تتحول إلى
XHTLOA، التي ستنتقل مع
الرسالة. وأخيرًا، يدير المشغل الدوّارات إلى إعدادته للرسالة،
EIN في مثالنا هذا، ويطبع نص الرسالة كاملا.
تنعكس العملية عند الطرف المستلم. يعد المشغل الآلة بحسب الإعداد الأولي ويطبع الحروف الستة الأولى من الرسالة (
XHTLOA). في هذا المثال،
EINEIN تنتج عن المصابيح. يعيد تحريك
الدوّارات إلى
EIN، ثم يطبع المشغل كامل الرسالة لتنفك الرسالة المعماة.
إن الضعف في نظام المؤشرات أتى من عاملين. الأول، استخدام
إعدادات عامة أساسية (global ground setting)، وهو ما تم تغييره بحيث أصبح المشغل يختار الموضع الأولي
لتعمية المؤشر، ويرسل الوضع الأولي بشكل صريح. ثانيًا هو تكرار المؤشرات والذي كان شرخًا خطيرًا في وثوقية العملية. كانت تعمية إعدادات الرسالة تكرر مرتين، مما يعطي علاقة في تحويل
الحرفين الأول والرابع، وفي تحويل الحرفين الثاني والخامس، وفي تحويل الحرفين الثالث والسادس. هذه المشكلة في الوثوقية مكّنت مكتب التعمية البولندية من اختراق نظام إنجما قبل
الحرب في بدايات 1932. على أية حال، بدءًا من عام 1940، غير الألمان الإجراءات لزيادة السريّة.
استخدم
كتاب الرموز خلال الحرب العالمية الثانية لإعداد الدوّارات والحلقات. يختار المشغل لكل
رسالة موضعا مبدئيا عشوائيا، وليكن
WZA، ومفتاحا عشوائيا للرسالة، وليكن
SXT. يحرك المشغل الدوارات ليضبطها على موضع البداية
WZA ويعمي مفتاح الرسالة
SXT. لنفترض
النتيجة هي
UHL. ثم يعد مفتاح الرسالة
SXT كموضع أولي ويعمي الرسالة. بعدها، يحول
موضع البداية
WZA، ومفتاح الرسالة المعمى
UHL، ثم النص المعمى. يقوم المستلم بإعداد موضع البداية وفق أول مقطع رمزي،
WZA، ويفك تعمية المقطع الثاني،
UHL، للحصول على إعدادات
الرسالة
SXT. بعدها يستخدم إعداد الرسالة هذا
SXT كموضع أولي لفك تعمية الرسالة. بهذه الطريقة، كانت الإعدادات الأساسية مختلفة وأوقفت الإجراءات السابقة الشرخ في وثوقية إعدادات الرسالة المعماة مرتين.
استخدم هذا الإجراء من قبل فيرماخت والقوات الجوية فقط. لقد كانت إجراءات القوات البحرية (Kriegsmarine) لإرسال الرسالة باستخدام إنجما أكثر تعقيدًا، ومدروسة بشكل أكبر. قبل تعمية
الرسالة باستخدام آلة إنجما، كانت الرسالة تعمى باستخدام كتاب رموز (Kurzsignalheft). لقد حوى هذا الكتاب على جداول لتحويل الجمل إلى أربع مجموعات رباعية من الحروف. لقد
حوى الكتاب على العديد من الجمل المنتقاة، مثل المسائل اللوجستية كالتزود بالوقود، والمواعيد مع سفن المؤونة، وأسماء المرافئ والبلدان والأسلحة وظروف الطقس ومواقع العدو وسفنه، وجداول
الأوقات والتواريخ. ويوجد كتاب رموز آخر يتضمن تعريف المفتاح (Kenngruppen) ومفتاح الرسالة (Spruchschlüssel). لمزيد من التفاصيل أنظر (Kurzsignale on German U-Boats)
الاختصارات وعلامات الترقيماستخدمت آلة إنجما الحربية 26 حرفًا أبجديًا فقط. واستبدلت الإشارات بمجموعة من الرموز
النادرة، وتم إهمال الفراغات أو استبدالها بـX. حيث كانت X تشير إلى الفراغ أو النقطة. بعض الإشارات اختلفت في القطع الأخرى من الجيش. استبدل فيرماخت الفاصلة بـZZ وإشارة الاستفهام بـ(FRAGE) أو (FRAQ). استبدلت القوات البحرية (كريغزمارينه، Kriegsmarine)
الفاصلة بـY، وإشارة الاستفهام بإشارة UD. التركيبة CH، كما في كلمة (Acht) أي ثمانية، وكلمة (Richtung) أي اتجاه، استبدلت بـ Q فأصبحت (AQT,RIQTUNG). استبدل
الصفران أو الثلاثة أو الأربعة أصفار بـCenta، MILLE، MYRIA.
كان جيش الدفاع (فيرماخت) وسلاح الجو (لوفتفافيه) يرسلون الرسائل في مجموعات من 5
حروف، بينما كانت القوات البحرية (كريغزمارينه)، وباستخدام آلة إنجما ذات الأربع دوّارات،
ترسل الرسائل في مجموعات من أربع حروف. الكلمات المستخدمة بشكل متكرر كان يجب أن تتغير قدر الإمكان. فكلمات مثل Minensuchboot بمعنى كاسحة ألغام يمكن أن تكتب (MINENSUCHBOOT، أو MINBOOT، أو MMMBOOT، أو MMM354). ولجعل تحليل التعمية أصعب، فقد تم إلغاء أكثر من 250 حرفًا في الرسالة الواحدة. قسمت الرسائل الطويلة إلى عدة أجزاء، لكل منها مفتاح رسالة خاص به. لمزيد من التفاصيل انظر ترجمات (Tony Sale) لـ(الإجراءات العامة) "
[7]. وانظر أيضًا (إجراءات الضابط والأركان)
[8].
تاريخ تطور الآلةكان هناك العديد من النماذج من عائلة آلة إنجما، وأول آلات الإنجما بدأت منذ بدايات عام 1920. وبدءًا من منتصف 1920 بدأ العديد من فروع الجيش الألماني استخدام إنجما، مع إضافة العديد من التغييرات لزيادة وثوقيتها. بالإضافة إلى أن العديد من الدول تبنت الآلة وكيّفتها مع آلات التعمية خاصتها.