# علم التعمية

علم التشفير أو التعمية Cryptography ..
هو الحقل المهتم بالتقنيات اللغوية و الرياضية لتحقيق أمن المعلومات, خاصة في عملية الاتصال. تاريخياً, اهتم علم التعمية فقط بالتشفير أي وسائل تحويل المعلومات من شكلها الطبيعي المفهوم إلى شكل غير مفهوم ولقد اهتم الإنسان منذ آلاف السنين على هذا العلم لحجب المعلومات السرية عن أعداءه. وقد اقتصر استخدام علم التعمية في القرون الماضية في الحفاظ على أمن المعلومات العسكرية والمراسلات الدبلوماسية وحماية الأمن الوطني.لكن نطاق تطبيقات التعمية توسع كثيراً في العصر الحديث بعد تطور الاتصالات وحدوث ثورة الاتصالات لما تتطلبه من وثوقية أحيانا وضمان عدم الاختراق ومنع التجسس والقرصنة الإلكترونية وتأمين سبل التجارة الإلكترونية.
التشفير أو الترميز (علم الأسرار), لم يكن علماً إلا مؤخراً, فهو علم يبحث عن تشفير معطيات حساسة وتحليلها. يمكن القول أنه فن قديم وعلم جديد, ففن لأن يوليوس قيصر قد استخدمه قديماً, أما علم فلأنه ارتبط ببعض العلوم الأخرى التي ظهر بعضها في 1970وما بعدها كالجبر ,نظرية الأعداد , نظرية التعقيد, ونظرية المعلومات .
ينقسم علم التعمية إلى قسمين: • التشفير . • كسر التشفير.
فواضع التعمية يكون هدفه الأساسي هو ضمان سرية المعلومات المنقولة وعدم تعرضها للمعتدي. أما محلل التعمية فإن هدفه مضاد تماماً وهو كسر التعمية ومعرفة محتوى المعلومات المنقولة أو تحريفها بشكل يؤدي إلى قبولها على أنها المعلومات الصحيحة.
وبناءاً على ذلك فإننا نستطيع تعريف التعمية على أنها تحويل نص واضح مقروء إلى نص غير مفهوم باستخدام إحدى طرق التعمية والتي قد تكون غير سرية ولكنها تستخدم مفتاحاً سرياً يمكن من يمتلكه من أن يعيد النص المعمي إلى النص الواضح . أما كسر التعمية فهي العملية العكسية للتعمية , أي محاولة معرفة المفتاح السري من النص المعمي ومن ثم الحصول على النص الواضح. يتضح لنا أن علم التعمية قائم على العناصر التالية: مرسل- مستقبل - رسالة - النص الواضح - النص المعمى - مفتاح التعمية . الآن نقدم تعريف رياضي لنظام التعمية.
تعريف..
C مجموعه منتهية من الرموز تسمى النص المعمى .
لكل يوجد تحويل تعميه يقابله تحويل كسر تعميه بحيث يكون
تعريف نظام الإزاحة: ليكن ℤ m ∈ في نظام الإزاحة :Zm P = C = K = وتعرف دالة التعمية كالتالي:
ولتوضيح هذا النظام نقابل بين الهجائيتين العربية والانجليزية وعناصر كل من
={0,1,2,3,…,25}, ={0,1,2,3,… ,28},
الحرف الرقم الحرف الرقم الحرف الرقم الحرف الرقم ِA 0 H 7 O 14 V 21 B 1 I 8 P 15 W 22 C 2 J 9 Q 16 X 23 D 3 K 10 R 17 Y 24 E 4 L 11 S 18 Z 25 F 5 M 12 T 19 G 6 N 13 U 20
الحرف الرقم الحرف الرقم الحرف الرقم الحرف الرقم ء 0 د 8 ط 16 م 24 أإى 1 ذ 9 ظ 17 ن 25 ب 2 ر 10 ع 18 هـ,ة 26 ت 3 ز 11 غ 19 و، ؤ 27 ث 4 س 12 ف 20 ي 28 ج 5 ش 13 ق 21 ح 6 ص 14 ك 22 خ 7 ض 15 ل 23
خطوات تعمية النص الواضح في نظام الازاحة : عند استخدامنا لنظام الازاحة في تعمية نص معين وبمعرفة المفتاح K فاننا نقوم بالتالي 1_ كتابة حروف النص بشكل منفصل ودون ترك فراغات بينها . 2_ نستخدم الجدول (1) لتحويل الرسالة إلى الأرقام المقابلة لكل حرف . 3_ اضافة قيمة K إلى كل رقم من أرقام الرسالة . 4_ استخدام الجدول (1) مرة أخرى لإيجاد الحرف المقابلة لكل من الأرقام الناتجة من الخطوة الثالثة فنكون بذلك النص المعمى لتلك الرسالة .
مثـــــال : استخدمي نظام الازاحة بمفتاح K=15 لتعمية الرسالة الواضحة
الحـــل : 1_ كتابة حروف الرسالة بشكل منفصل بدون فراغات ط ل ب ا ل ع ل م ف ر ي ض ة ع ل ى ك ل م س ل م
2_ نستخدم الجدول (1) فنحصل على 16 23 2 1 23 18 23 24 20 10 28 15 26 18 23 1 22 23 24 12 23 24
3_ باضافة 15 إلى كل من الأرقام السابقة وإيجاد قيمتها قياس 29 نحصل على 2 9 17 16 9 4 9 10 6 25 14 1 12 4 9 16 8 9 10 27 9 10 4_ باستخدام الجدول (1) مرة أخرى نحصل على النص المعمى التالي ب ذ ظ ط ذ ث ذ ر ح ن ص ا س ث ذ ط د ذ ر و ذ ر
ملاحظــــــة : عند استخدامنا للغة الانجليزية فإن m=26 ونتبع نفس الخطوات السابقة ولكن باستخدام الجدول (2) بدلا من الجدول (1) في الخطوات 2 و 4 وعادة مانكتب الرسالة المعمية بحروف كبيرة بينما نستخدم الحروف الصغيرة للرسالة الواضحة .
مثــــــال : استخدمي نظام الازاحة بمفتاح K=11 لتعمية الرسالة الواضحة
الحـــل : 1_ نكتب حروف الرسالة الواضحة بدون فراغات Theweatherisbad
2_ باستخدام الجدول (2) نحصل على 3 0 1 18 8 17 4 7 19 0 4 22 4 7 19
3_ باضافة K=11 إلى كل من الأرقام السابقة نحصل على 14 11 12 3 19 2 15 18 4 11 15 7 15 18 4
4_ باستخدام الجدول (2) مرة أخرى نحصل على ESPHPLESPCTDMLO وبهذا نحصل على الرسالة المعمية .
تعريف تحليل التعمية: هو عملية استخدام النص المعمى للتوصل إلى النص الواضح وذلك من محلل التعمية الذي لا يعرف مسبقا بالمفتاح السري ولكنه قد يعرف طريقة التعمية بالإضافة إلى معلومات أخرى مثل خصائص اللغة المستخدمة في نقل المعلومات ومعلومات جانبية إضافية مثل طبيعة الرسالة أو موضوعها.
* يعتمد حل التعمية في كثير من الأحيان على دراسة الخصائص الإحصائية للغة المستخدمة، وأُسلوب كتابة المراسلات. إذ تمتاز اللغات الطبيعية بأنها ذات تركيب إحصائي بالغ التعقيد. وقد يختلف التوزيع الإحصائي وعدد الحروف والأصوات من لغة إلى أخرى، ولكن جميع اللغات تمتاز بتوزيع غيرمنتظم وبتكرارية عالية نسبيًا، تتيح للناطقين بهذه اللغات معرفة المعنى المقصود حتى لو فقدت أو تغيرت بعض أجزاء الرسالة أومقاطع الكلام. وفي اللغة العربية مثلاً، يختلف التكرار النسبي من حرف إلى آخر، إذ إن بعض الحروف كالألف مثلاً، ترد في النصوص نص مكتوب يعتمد اعتمادًا كبيرًا على الحرف أو الحروف السابقة له. فاحتمال ورود حرف اللام بعد الألف والرسائل أكثر بكثير من حروف أخرى كحرف الظاء أو الغين. بل إن احتمال ورود حرف معين في كما في ¸ال• التعريف أكبر بكثير من باقي الحروف. وإذا أخذنا حرف السين مثلاً، فإن احتمال ورود التاء أو الصاد أو الضاد بعدها أو قبلها قليل؛ إذ ليست هناك كلمات عربية تقترن فيها التاء أو الصاد أو الضاد مع السين إلا قليلاً. ويستفيد محلل التعمية من هذه الحقائق كثيرًا في حل الرسائل واستخراج تعميتها.
الطرق المستخدمة في تحليل التعمية: إن الصراع الدائم بين واضع التعمية ومحلل التعمية لا يزال قائما منذ أن استخدم الإنسان أنظمة التعمية, حيث يكون الأمر الأهم لواضع التعمية هو تطوير نظام يصعب على محلل النظام اكتشاف مفتاحه السري . أما محلل التعمية فإنه يقوم بدراسة الطرق الممكنة التي تؤدي إلى اكتشاف بعض الثغرات في النظام المستخدم، ومن ثم حل هذا النظام, وبالتالي يصبح هذا النظام عديم الفائدة من الناحية الأمنية. إن جميع طرق التعمية تخضع لمبدأ كرتشوف ( Kerckhoff's principle ) . أي أن محلل التعمية يكون على علم مسبق بنظام التعمية المستخدم .
الطرق الأكثر شيوعا في تحليل التعمية هي : 1.طريقة النص المعمى فقط: ( Cipher text _ only ) يكون محلل التعمية على دراية بالنص المعمى .
2.طريقة معرفة النص الواضح :( Known plaintext ) يكون محلل التعمية على دراية بجزء من الرسالة الواضحة وما يقابل هذا الجزء من الرسالة المعماة.
3.طريقة معرفة مؤقتة للنص الواضح:(Chosen plaintext ) في هذه الحالة يكون محلل التعمية قد حصل على مدخل مؤقت لعملية التعمية . وعليه يقوم باختيار جزء من النص الواضح وإيجاد ما يقابله من النص المعمى .
4.طريقة معرفة مؤقتة للنص المعمى:(Chosen cipher text) في هذه الحالة يكون محلل التعمية قد حصل على مدخل مؤقت لعملية إعادة التعمية . وعليه يقوم باختيار جزء من النص المعمى وإيجاد ما يقابله من النص الواضح .
هدف محلل التعمية في الطرق المستخدمة أعلاه : معرفة المفتاح المستخدم . لكسر التعمية في نظام الإزاحة نتبع الخطوات التالية: 1.يجب أن نعرف ترتيب الحروف سواء بالعربية أو الإنجليزية أو أي لغة مستخدمة.
2.كتابة الرسالة بدون ترك فراغات بين الكلمات وتكون الحروف capital إذا كانت اللغة المستخدمة الإنجليزية.
3.نستخدم الجدول ( A للغة العربية و B للغة الإنجليزية ) لتحويل كل حرف في الرسالة إلى الرقم المقابل له في الجدول.
4.نطرح من كل عدد في الخطوة 3 العدد k قياس m الذي ينتمي لمجموعة المفاتيح.
5.نقوم بكتابة النص الواضح باستخدام الجدول ( A للغة العربية و B للغة الإنجليزية ) مرة أخرى لتحويل كل رقم في الخطوة 4 إلى الحرف المقابل له في الجدول.
ملاحظة: في حالة استخدامنا الهجائية العربية يكون m = 29 وفي حالة استخدامنا الهجائية الإنجليزية فإن m = 26 .
مثـــــــال :
س ل ب س ج س ج ظ ط س ق د
باستخدام الجدول A وتطبيق الخطوات أعلاه:
خطوة 2 س ل ب س ج س ج ظ ط س ق د خطوة3 12 23 2 12 5 12 5 17 16 12 21 8 خطوة 4 1 16 20 1 23 1 23 6 5 1 10 26 خطوة 5 أ ط ف أ ل أ ل ح ج أ ر ه
∴النص الواضح هو : أطفال الحجار
مثـــــــال : إذا كان k = 4 واللغة المستخدمة الإنجليزية فإن m = 26 وكان النص المعمى : T P I E W I W I R H Q S R I C
باستخدام الجدول B والخطوات أعلاه:
خطو 2 C I R S Q H R I W I W E I P T خطوة 3 2 8 17 18 16 7 17 8 22 8 22 4 8 15 19 خطوة 4 24 4 13 14 12 3 13 4 18 4 18 0 4 11 15 خطوة 5 y e n O m d n e s e s a e l p
ملاحظات: 1. عند استخدامنا للهجائية الإنجليزية نكتب النص الواضح بحروف صغيره وأما النص المعمى فنكتبه بحروف كبيرة. 2. لكي يكون نظام التعمية عمليا فإنه يجب أن تكون الخوارزميات المستخدمة لحساب كل من ℮k و dkحدودية . كما يجب أن يكون من الصعب على العدو اكتشاف المفتاح المستخدم عند اعتراضه النص المعمى وبهذا لا يستطيع أن يحصل على النص الواضح حتى لو كان على علم بنظام التعمية المستخدم.
ولقد قام العديد من المهتمين بحساب التردد النسبي لأحرف الهجائيتين العربية والإنجليزية من خلال إحصاء الأحرف لبعض الروايات , المجلات والصحف اليومية.
الجدول C
إحصائية قام بها طلاب المقرر بجامعة الملك سعود للغة العربية وبحث للدكتور إبراهيم القاضي.
الجدول D الحرف A B C D E F G H I J الاحتمال 0.082 0.015 0.028 0.043 0.127 0.022 0.020 0.061 0.070 0.002 الحرف K L M N O P Q R S T الاحتمال 0.008 0.040 0.024 0.067 0.075 0.019 0.001 0.060 0.063 0.091 الحرف U V W X Y Z الاحتمال 0.028 0.010 0.023 0.001 0.020 0.001 إحصائية قام بها كل من بيكر (Beker ) و بيبر ( Piper ) للغة الإنجليزية.
الجدول C هو احتمال أحرف اللغة العربية. الجدول D هو احتمال أحرف اللغة الإنجليزية.
* نلاحظ من الجدول C أن الأكثر تردد في حروف اللغة العربية هي: أ , ل , ي , ث على التوالي • وأقلها تردد هي : ز , ع , ض على التوالي.
* وكما لاحظ الدكتور إبراهيم القاضي في دراسته للخصائص المعلوماتية والتعموية للغة العربية أن أكثر الثنائيات شيوعا في اللغة العربية لعينة مكونة من عشرة آلاف حرف هي :
* أ ل ( (314, أ م ( 231) , و أ ( 154) , م ن ( 128 ) , ل أ ( 121) , م أ ( 117) , ل هـ 113)) , ي ن (109) , هـ م ((101 , و ن ( 99 ) , ل ل ( 81 ) , ل م ( 76 ) , و ل ( 73) , ع ل ( 71 ) , ك م ( 65 ) , ل ي ( 63 ) , و م ( 53 ) , ل ك ( 51 )
* نلاحظ من الجدول D أن أحرف الهجائية الإنجليزية تقسم إلى خمسة أقسام هي 1. الحرف E باحتمال 120 . 2. الحروف T , A , O , I , N , S , H و R باحتمالات واقعة بين 0.06 و 0.09 . 3. الحرفين D و L واحتمال كل منهما 0.43 و 0.4 على التوالي . 4. الحروف C , U , M , W , F , G , Y , P و B باحتمالات واقعة بين 0.015 و 0.023 . 5. الحروف V , K , J , X , Q و Z واحتمال كل منها أقل من 0.01 0
* ونلاحظ أن أكثر ثلاثون ثنائيا ( حرفان متتاليان ) ترددا مرتبة تنازليا هي: T H , H E , I N , E R , A N , R E , E D , O N , E S , S T , E N , A T , T O , N T , H A , N D ,O U , E A , N G , A S , O R , T I , I S , E T , I T , A R , T E , S E , H I , O F .
* وأكثر الثلاثيات شيوعا هي :
مثـــال : استخدمي تحليل التردد في اللغة العربية لقراءة الرسالة المعمية التالية باستخدام نظام الإزاحة :
نحسب ترددات الحروف في النص المعمى :
الحرف ذ ق ش ح ك م ز التردد 4 1 2 2 2 2 1
يجب أن نبحث عن قيمة ل k لكي نحصل على النص الواضح من النص المعمى أعلاه من الجدول نلاحظ أن الحرف ذ هو الأكثر تردد في النص المعمى و نلاحظ من الجدول C أن الحرف الأكثر تردد في اللغة العربية هو الحرف أ فعلا الأرجح الحرف ذ في النص المعمى يقابله في النص الواضح الحرف أ .
هذا لا يدل على أننا وجدنا المفتاح نحول النص المعمى إلى الأرقام المقابلة لها بمعلومة k = 8 ثم طرح 8 قياس 29 وتحويل الناتج إلى الحروف المقابلة لها في الجدول A
النص غير واضح ∴ k = 8 لا يعطي نتيجة نبحث عن قيمة أخرى لـ k بملاحظة الجدول نرى أن الحروف ش , ح , ل , م هي الأكثر تردد بعد الحرف ذ في النص المعمى . فعلا الأرجح أحد هذه الحروف ش , ح , ل , م في النص المعمى يمكن أن يقابل الحرف أ في النص الواضح نأخذ الحرف ش في النص المعمى ونقابله في النص الواضح الحرف أ . ⇐ ش = ( أ ) ℮k ⇐ k + 1 = 13 ⇐ k = 12 هذا لا يدل على أننا وجدنا المفتاح نحول النص المعمى إلى الأرقام المقابلة لها بمعلومة k = 12 ثم طرح 12 قياس 29 وتحويل الناتج إلى الحروف المقابلة لها في الجدول A .
ذ ق ذ ش ح ك م ش ح ذ م ك ز ذ
النص الواضح هو : هذه الرسالة سرية .
مثــــال : استخدمي تحليل التردد في اللغة الإنجليزية لقراءة الرسالة المعمية التالية باستخدام نظام الإزاحة W K L V P H V V D J H L V W R S V H F U H W
الحرف W K L V P J R H D S F U التردد 3 1 2 5 1 1 1 4 1 1 1 1
هذا لا يدل على أننا وجدنا المفتاح . نحول النص المعمى إلى الأرقام المقابلة لها بمعلومة k = 17 ثم طرح 17 قياس 26 وتحويل الناتج إلى الحروف المقابلة لها في الجدول B .
W H U F H V S R W V L H J D V V H P V L K W 22 7 20 5 7 21 18 17 22 21 11 7 9 3 21 21 7 15 21 11 10 22 5 16 3 14 16 4 1 0 5 4 20 16 18 12 4 4 16 24 4 20 19 5 F Q D O Q E B A F E U Q S M E E Q Y E U T F
∴ k = 17 لا يعطي نتيجة نبحث عن قيمة أخرى لـ k
W H U F H V S R W V L H J D V V H P V L K W 22 7 20 5 7 21 18 17 22 21 11 7 9 3 21 21 7 15 21 11 10 22 19 4 17 2 4 18 15 14 19 18 8 4 6 0 18 18 4 12 18 8 7 19 T E R C E S P O T S I E G A S S E M S I H T
∴ المفتاح k = 3 مفتاح مقبول
ملاحظة : نلاحظ أنه بالإمكان تحليل التعمية باستنفاد فضاء المفاتيح حيث نحتاج في اللغة العربية إلى تجريب 29 مفتاح ونحتاج في اللغة الإنجليزية إلى تجريب 26 مفتاح. وبالتالي فإن نظام الإزاحة لا يعتبر نظاما آمنا .
نظام قيصر... من أشهر أنظمة التعمية هو نظام قيصر الذي استخدمه يوليوس قيصر أثناء حكمه في عهد الإمبراطورية الرومانية منذ أكثر من ألفي سنة
مثــــال: لنفرض أن قيصر يود أن يرسل الرسالة التالية إلى قائد جيوشه :
ولكنه حريص ألا تقع هذه الرسالة بيد العدو لكي لا تكشف الخطة ويعرض جيشه للخسارة ,لذا فانه بدلا من إرسال النص الواضح للرسالة استخدم عملية التعمية التالية: 1.كتب الرسالة بدون ترك فراغات بين الكلمات: أ ل هـ ج و م ي و م أ ل أ ح د 2.استخدم الجدول الذي كتبناه لتحويل حروف الرسالة إلى أرقام كما يلي : 1 23 26 5 27 24 28 27 1 23 1 6 8 3.أضاف العدد ثلاثة لكل عدد من الخطوة 2 لنحصل على
لاحظ أن عملية الجمع تتم في 4.استخدم الجدول مرة أخرى لإيجاد الحروف المقابلة للأعداد في الخطوة 3. ث هـ ء د أ و ب أ و ث هـ ث ذ ز وهذه الرسالة هي التي قام بإرسالها إلى جيوشه بعد وصول النص المعمى إلى قائد الجيوش الذي علم مسبقا بمفتاح التعمية يقوم بالخطوات التالية للحصول على النص الواضح أ- يستخدم الجدول لتحويل النص المعمى إلى مايقابله من الأرقام : 4 26 0 8 1 27 3 4 27 4 1 9 11 ب- يقوم بطرح ثلاثة من كل رقم في خطوة -ا- ليحصل على:
مثــــال: إذا حصلنا على النص المعمي التالي باستخدام نظام قيصر فجدي النص الواضح: VWRSWDONLQJLQWKHFODVV الحـل: 1.نقوم بكتابة الأحرف وما يقابلها من أرقام كالتالي H K W Q L J Q L N O D W S R W V 7 10 22 16 11 9 16 11 13 14 3 22 18 17 22 21
V V D O F 21 21 3 14 5 2.نقوم بطرح ثلاثة من كل الأرقام في الخطوة الأولى فنحصل على الجدول التالي H K W Q L J Q L N O D W S R W V 4 7 19 13 8 6 13 8 10 11 0 19 15 14 19 18
V V D O F 18 18 0 11 2
3.نقوم بمقابلة الأرقام الناتجة بالأحرف المقابلة لها فنحصل على التالي
4 7 19 13 8 6 13 8 10 11 0 19 15 14 19 18 E H T N I G N I K L A T P O T S 18 18 0 11 2 S S A L C
إذا النص الواضح هو Stop talking in the class