You are on page 1of 24

ENCRYPTION

AND
DECRYPTION
IN FIXED POINT
METHOD
Represented by :
Zynab Zyad
Faten Falah
‫المحتويات ‪:‬‬
‫التشفير واهميته‬
‫الطرق العددية ( طريقة النقطة الثابتة )‬
‫الدوال الفوضوية‬
‫الخوارزمية المقترحة‬
‫خطوات خوارزمية التشفير‬
‫خطوات خوارزمية فك التشفير‬
‫النتائج والتحليالت‬
‫التشفير واهميته‬
‫إن التطور الهائل في شبكات الحاسوب واألجهزة الرقمية وزيادة استخدام االنترنت في الوقت‬
‫الحاضر أدى بشكل ملحوظ إلى االعتماد على هذه التقنيات في مختلف أمور الحياة وبخاصة‬
‫بعد جائحة كورونا حيث تم تغيير نمط المعيشة والعمل ليكون مالئمًا من المنازل وهذا يتطلب‬
‫زيادة وتنوع المواد التي يتم تداولها في األوساط الرقمية ومن ضمنها المعلومات النصية‬
‫والصورية ومقاطع الفيديو‪ ،‬ومن هنا أصبح توفير االمنية للمعلومات المتبادلة متطلبًا‬
‫ضروريًا لكل مجاالت االستخدام سواء كانت تعليمية أو طبية أو سياسية أو اقتصادية أو حتى‬
‫االستخدامات الشخصية للحفاظ على الخصوصية والسرية بالنظر إلى زيادة أنواع وتعقيد‬
‫الهجمات على البيانات وزيادة طرق وجهات اعتراض المعلومات‪ ،‬ومن اهم مجاالت أمن‬
‫المعلومات هو التشفير (‪ )Encryption‬حيث يتم تشفير المعلومات بمختلف أنواعها لمنع‬
‫الوصول غير المصرح إلى محتوياتها من قبل األشخاص غير المعنيين بها‪ ،‬ويمكن تعريف‬
‫التشفير بأنه تحويل البيانات من شكلها القابل للقراءة إلى شكل مرَّم ز غير مفهوم‪.‬‬
‫من الضروري حماية المعلومات النصية بمختلف أشكالها سواء كانت كلمات سر مخزونة‬
‫أو بريد الكتروني أو أرقام بطاقات بنكية أو مالحظات مهمة أو بحوث علمية سرية أو‬
‫رسائل شخصية سواء كانت هذه المعلومات النصية منقولة عبر وسائل التواصل‬
‫المختلفة على الشبكة العنكبوتية أو مخزونة في ملفات بداخل حواسيب ثابتة أو أجهزة‬
‫رقمية‪ .‬ومن هنا تأتي أهمية تشفير هذه البيانات حيث ال يعني التشفير بالضرورة عدم‬
‫الوصول غير المصرح به للبيانات وإنما يعني عدم الوصول للمعلومات المفيدة التي‬
‫ينبغي أن تبقى سرية او خاصة‪ .‬ومقترح البحث يتضمن إنشاء خوارزمية تشفير وإخفاء‬
‫المعلومات النصية ضمن صورة عشوائية باستخدام حل المعادالت الرياضية بطريقة‬
‫النقطة الثابتة (‪ )Fixed Point Method‬وكذلك استخدام الدالة اللوجستية الفوضوية‬
‫كمرحلة ثانية لزيادة قوة التشفير وتوليد نقاط الصورة التي يتم اإلخفاء ضمنها‪.‬‬
‫اهداف التشفير‬
‫السرية‬
‫هـي عمليـة حفـظ المعلومـات أو البيانـات وجعلهـا سـرية‬
‫بحيـث ال يكـون متعـارف عليهـا أي تكون غيرمفهومة‬
‫بالنسبة لآلخرين‪.‬‬

‫الصالحية‬
‫معرفـة إن الرسـالة مرسـلة فـي الوقـت المناسـب ومـن‬
‫الشـخص المناسـب وبـدون تدخل ‪ ،‬لذلك يضاف مع‬
‫لرسالة التوقيع و الوقت لغرض تثبيت صالحية‬
‫الرسالة ‪.‬‬

‫التكاملية‬
‫التأكد من إن الرسالة غير محذوف منها شي أو مضاف‬
‫لها شي ‪.‬‬

‫عدم التنكر‬
‫هـي الخدمـة التـي تمنـع الشـخص مـن إنكـار الرسـالة‬
‫المرسـلة أي الرسـالة المنقولة ‪.‬‬
‫مكونات نظام التشفير‬
‫ان نظام التشفير يتكون من األجزاء التالية ‪:‬‬

‫النص الصريح ‪:‬‬


‫ويرمز له بالرمز(‪ )M‬وهوالنص المراد تشفيره‬

‫النص المشفر ‪:‬‬


‫ويرمز له بالرمز(‪ )C‬وهوالنص المراد فتح الشفره له ‪.‬‬

‫المفتاح ‪:‬‬
‫ويرمز له بالرمز(‪ )k‬وهوالمفتاح المستخدم في تشفير وفك تشفيرللنص‪.‬‬

‫خوارزمية التشفير ‪:‬‬


‫ويرمز له بالرمز(‪ )Ek‬وهي الخوارزمية لتحويل النص الصريح الى نص مشفر‪.‬‬

‫خوارزمية فك التشفير ‪:‬‬


‫ويرمز له بالرمز(‪ )Dk‬وهي الخوارزمية لتحويل النص المشفر الى نص صريح‪.‬‬
‫انواع نظم التشفير‬
‫التشفير بالمفتاح الغير متناظر‬ ‫التشفير بالمفتاح المتناظر‬
‫هو أسلوب من أساليب التشفير يتم فيه تشفير البيانات‬ ‫هـو أسـلوب مـن أسـاليب التشـفير يسـتعمل فيـه مفتـاح سـري‬
‫باستعمال مفتاح ما وفك تشفيرها باستعمال مفتاح آخر ولهـذا‬ ‫لتشـفير رسـالة مـا وفـك تشـفيرها‪ ،‬ويسـمى التشـفير بالمفتـاح‬
‫الســبب ســمي بالتشــفير الغيــر متنــاظر ألن مفتــاح التشــفير‬ ‫المتناظر ألن المفتاح الذي يستعمل لتشفير الرسالة هو نفسه‬
‫يختلــف عــن مفتــاح فــك التشــفير‪ ،‬ومــن ثــم فإنـه يســمح بتوزيــع‬ ‫المستعمل لفك تشفيرها ويقسم على نوعين ‪:‬‬
‫صالحيات التشفير وفك التشفير على الجهات المختلفة بأن‬ ‫التشـفير الكتلـي‬
‫يعطي لبعضهم مفاتيح التشفير فقط ويعطي لآلخرين مفاتيح‬ ‫التشفير االنسيابي‬
‫فك التشفير‪ .‬ويسمى هذا النوع من التشفير أيضا التشفير‬
‫بالمفتاح العام (‪ ، )Encryption Public_key‬ألنـك تسـتطيع أن‬
‫تنشـر أحــد المفتــاحين وهــو يســمى المفتــاح العــام (‪)Public_Key‬‬
‫وتحــتفظ بــاآلخر ســريا ويســمى المفتــاح الخــاص(‪.)Private_key‬‬
‫التشـفير الكتلـي (‪)ciphers Block‬‬
‫يعـد التشـفير الكتلـي احـد أنـواع التشـفير الحديثـة باإلضـافة الـى التشــفير االنسيابي ‪ .‬في هذا‬
‫النوع‪ ،‬يقسم النص الصريح الى كتل بأحجام متساوية‪ ،‬ومن ثم تطبق خوارزمية التشـفير علـى‬
‫كـل كتلة ويحولها الى كتلة أخرى مشفرة ‪ .‬وكما موضح في اإلشكال ( ‪( ) 2‬و ‪.)3‬‬
‫التشفير االنسيابي(‪)ciphers stream‬‬
‫أنظمة التشفير االنسـيابي تقسـم الـنص الصـريح (‪)M‬إلـى ثنائيـات (‪).…,m1,m2‬‬
‫(‪ )bit by bit‬أو رموز متتابعة كما في الشكل (‪ ، ) 4‬وتقوم بتشفير كل ‪mi‬‬
‫باستخدام العنصر ‪ ki‬من سلسلة المفتاح ‪ …,K=k1,k2,k3‬اي ان‬
‫‪Ek (M) =Ek (m1) Ek (m2) Ek (m3)….‬‬
‫يتكون نظام التشفير االنسيابي من جزأين أساسين هما ‪:‬‬
‫خوارزمية توليد سلسلة المفتاح(سلسلة شبه عشوائية )‪.‬‬
‫المازج(‪.)MIXER‬‬
‫تقوم الخوارزمية بتوليد سلسـلة المفتـاح اعتمـادا علـى مفتـاح يغـذيها ثـم تمـزج‬
‫السلسـلة المتولـدة مـع الـنص الصـريح بوسـاطة المازج لتوليد النص المشفر‬
‫يكون المازج عادة هو عملية (‪ )3,4(،)XOR‬كما موضحه بالشكل (‪. )5‬‬
‫طريقة النقطة الثابتة التكرارية (‪)Fixed Point Method‬‬
‫التحليل العددي (‪ )Numerical Analysis‬هو أحد فروع الرياضيات وعلم الحاسوب حيث يعتمد على إنشاء وتحليل وتنفيذ‬
‫الخوارزميات للوصول إلى حلول للمعادالت غير الخطية للمشاكل الرياضية المبنية على التغيرات والتقلبات المستمرة‪ ،‬هناك‬
‫عدة طرق عددية تعتمد على وضع المعادالت المعقدة وتغيير صيغتها إلى طرق يسهل حلها والحصول على نتائج جذورها‪،‬‬
‫هنالك الكثير من المسائل الرياضية التي ال تحل بخوارزميات مباشرة وفي هذه الحالة قد يكون من الممكن حلها باستخدام طرق‬
‫تكرارية مثل هذه الطريقة تبدأ بتخمين وإيجاد التقريب األنجح الذي يقترب بفعالية من الحل المطلوب حتى عندما تتواجد أحيانا‬
‫خوارزميات مباشرة فقد تفضل الطرق التكرارية أحيانا ألنها أكثر فعالية (قد تتطلب زمنا أقل وقدرة حسابية أقل إضافة لتقريب‬
‫جيد للحل) أو قد تكون أكثر استقرارا‪ .‬ومن ضمن هذه الطرق التكرارية هي طريقة النقطة الثابتة (‪ )Fixed Point Method‬حيث‬
‫تتميز بانها ال تحتاج إلى استخدام المشتقات للوصول الى النتائج كما في طريقة (‪.)Newton Raphson‬‬
‫تستخدم طريقة النقطة الثابتة لحل المعادالت المختلفة والمعقدة عندما تكون المعادلة بصيغة (‪ )F(x) = 0‬وذلك‬
‫بوضع صيغة ثانية للمعادلة بالشكل اآلتي‪ )X = g(x)( :‬فعلى سبيل المثال يمكن كتابة المعادلة‬
‫(‪ )𝑥³ −2 = 0‬بعدة طرق‪ ،‬منها‪:‬‬
‫𝑥‪𝑥 = 𝑥³ −2𝑥 +‬‬
‫‪𝑥 = 2-𝑥³+5𝑥/ 5‬‬
‫‪𝑥 = 2 /𝑥²‬‬
‫ثم يتم اختيار قيمة مناسبة لـ ‪ X = X0‬وتنفيذ إحدى المعادالت التي يؤدي حلها بطريقة النقطة الثابتة إلى التباعد أو التقارب حسب اختيار الدالة‬
‫وإجراء سلسلة من التكرارات إلى حين الوصول إلى جذر المعادلة وهو ()‪ )X= g(x‬باستخدام الصيغة اآلتية‪ Xn+1 = g(xn) :‬في كل مرة تكرار‪.‬‬
‫تم استخدام هذه الطريقة العددية في الخوارزمية المقترحة لسهولتها وعدم الحاجة إلى مشتقات للدالة وكذلك لسرعة التنفيذ مع إعطاء تعقيد‬
‫وقوة للخوارزمية من حيث استخدام الدالة المستخدمة كمفتاح للتشفير وهذا األمر يجعل تخمين المعادلة المستخدمة أمرًا مستحيال لصعوبة‬
‫تخمين أو التكهن بالمعادلة المستخدمة (‪ )F(x) = 0‬مما يعني مساحة واسعة او فضاء غير محدود لمفتاح التشفير وهنا تكمن أهمية هذه الطريقة‬
‫في التشفير‪.‬‬
‫الدوال الفوضوية‬
‫النظم الفوضوية هي أنظمة غير خطية تمتلك العديد من المواصفات التي تجعلها على عالقة وثيقة مع علم التعمية‬
‫والتشفير كالحساسية للتغيير في القيم االبتدائية ومعامالت التحكم والسلوك المشابه للضوضاء‪ ،‬حيث أن السالسل‬
‫المولدة باستخدام الدوال الفوضوية هي شبه عشوائية وهيكليتها معقدة جدًا وتوقع سلوكها صعب أيضا لذلك تعتبر اختيارًا‬
‫أقرب للمثالي في أنظمة التشفير‪.‬‬

‫وتعتبر الدالة اللوجستية (‪ )Logistic map‬من أبسط الدوال الفوضوية أحادية البعد وأكثرها استخدامًا لخواصها المميزة‬
‫والمذكورة أعاله‪ ،‬المعادلة اآلتية هي معادلة الدالة اللوجستية‪:‬‬
‫)‪Xn+1 = µ Xn (1 – Xn‬‬

‫حيث أن (‪ )Xn+1‬هي السلسلة الفوضوية الناتجة وتكون أعداد هذه‬


‫السلسلة أعدادًا حقيقية بين (‪ )1 - 0‬أما ‪ µ‬فهو معامل التحكم للدالة وقيمته‬
‫بين (‪ )4 – 0‬وتظهر الدالة الخواص الفوضوية عندما تكون قيمة معامل‬
‫التحكم بين (‪ )4 – 3.6‬مع وجود بعض الفترات التي ال تعطي فيها الدالة‬
‫القيم بالصورة العشوائية المطلوبة وهذه الفترات هي المساحة الفارغة‬
‫المبينة في الرسم البياني الخاص بقيم الدالة اللوجستية الموضحة أدناه‪ ،‬أما‬
‫(‪ )Xn‬فهي القيمة االبتدائية وتكون قيمتها بين (‪ .)1 – 0‬تم استخدام هذه‬
‫الدالة في الخوارزمية المقترحة لتوليد السالسل الفوضوية المستخدمة في‬
‫عمليتي التشفير واإلخفاء‪.‬‬
‫الخوارزمية المقترحة‬
‫تم انشاء خوارزمية تشفير انسيابية متناظرة (‪)Symmetric Stream Encryption Algorithm‬‬
‫حيث يتم استخدام المفتاح السري نفسه عند عمليتي التشفير واالستخالص‪ ،‬تعتمد خوارزمية‬
‫التشفير وفك التشفير على معادلة رياضية يتم استخدامها كأحد مفاتيح التشفير وفك التشفير‬
‫ويتم حل المعادلة باستخدام طريقة النقطة الثابتة (‪ )Fixed Point Method‬واالستفادة من‬
‫النتيجة لتشفير النص األصلي للمرحلة األولى ثم يتم االعتماد على طريقة الفوضى باستخدام‬
‫الدالة اللوجستية لتوليد سلسلة عشوائية يتم استخدامها لتشفير النص للمرحلة الثانية وكذلك‬
‫استخدام السلسلة إلنشاء صورة يتم إخفاء النص المشفر ضمن نقاطها الصورية‪ ،‬ثم يتم إرسال‬
‫الصورة إلى المستلم مع إرسال المفاتيح عبر قناة آمنة ليقوم بفك التشفير واستخالص النص‬
‫األصلي من الصورة باستخدام المفاتيح المستلمة‪.‬‬
‫خطوات خوارزمية التشفير‬
‫عملية إدخال النص األصلي والمفاتيح‪ :‬يتم إدخال النص األصلي من قبل المرسل باإلضافة إلى قيم المفاتيح (تشمل هذه المفاتيح‬
‫المعادلة التي يتم حلها بطريقة النقطة الثابثة وكذلك قيمة معامل التحكم والقيمة االبتدائية للدالة اللوجستية الفوضوية مع مراعاة‬
‫حدود عمل الدالة اللوجستية في المنطقة الفوضوية) باإلضافة إلى إدخال القيمة األولية لدالة التشفير بطريقة النقطة الثابتة‬
‫(‪ )Fixed Point Method‬مع عدد تكرارات تنفيذ الطريقة للحصول على حل الدالة (قيمة ‪ X‬لمعادلة النقطة الثابتة)‪.‬‬
‫يتم الحصول على قيم (‪ )Ascii Code‬للنص الصريح الذي تم إدخاله‪.‬‬

‫لكل حرف من أحرف النص األصلي يتم تطبيق طريقة النقطة الثابتة لحل المعادلة التي تم اختيارها كمفتاح بعد إضافة قيمة رمز‬
‫(‪ )Ascii‬للحرف نفسه مع المعادلة إليجاد قيمة معينة لكل حرف من أحرف الرسالة‪ ،‬أي أن هناك معادلة خاصة بكل حرف من أحرف‬
‫النص الصريح باالعتماد على رمز (‪ )Ascii‬لذلك الحرف وكالتالي‪:‬‬
‫‪X = F(x) + Ascii code for each char of plain-text‬‬

‫القيم الناتجة من المعادالت أعاله تكون قيم حقيقية (‪ )Real Values‬وطول السلسلة تكون مساوية لطول أحرف النص األصلي‬
‫ولغرض استخدام قيم السلسلة في خطوة التشفير الثانية وكذلك خطوات إخفاء النص المشفر ضمن الصورة يتم تحويل صيغة‬
‫القيم إلى قيم صحيحة حيث أن صيغة الناتج من المعادالت هي (‪ )Double64‬اي بطول (‪ )64‬بت والقيم المناسبة للتشفير‬
‫ولإلخفاء ضمن بكسالت الصورة يجب أن تكون قيم صحيحة بحجم (‪ )8‬بت أو بايت (‪ uint8‬في برنامج الماتالب) أي أن كل قيمة‬
‫سيتم تحويلها إلى (‪ )8‬بايت بمعنى أن طول السلسلة الناتجة يكون (طول النص األصلي * ‪ )8‬ثم يتم خزن الناتج في مصفوفة حيث‬
‫أن هذه المصفوفة تحتوي على النص المشفر أوليًا باستخدام طريقة النقطة الثابتة (‪ )First Layer‬ويتم استخدامها في الخطوات‬
‫األخرى‪.‬‬
‫لغرض جعل النص المشفر حساسًا ألي تغيير ولو كان طفيفًا في النص األصلي فيتم حساب معدل قيم أحرف النص األصلي ثم‬
‫قسمة الناتج على (‪ )255‬للحصول على قيمة حقيقية من (‪.)1 – 0‬‬

‫يتم تعديل القيمة االبتدائية التي تم إدخالها من قبل المستخدم بإضافة القيمة التي تم الحصول عليها في الخطوة السابقة إليها مع‬
‫مراعاة أن ال تزيد القيمة االبتدائية للدالة اللوجستية عن (‪ )1‬وذلك لضمان العمل ضمن المنطقة الفوضوية للدالة والتي تعطي نتائج‬
‫عشوائية‪ ،‬وفي حال كان مجموع القيمتين أكبر من (‪ )1‬فيتم تعويض المتبقي من عملية قسمة الناتج على (‪ )1‬للحصول على القيمة‬
‫االبتدائية الجديدة‪.‬‬

‫باالعتماد على القيمة االبتدائية المعدلة للدالة اللوجستية وقيمة معامل التحكم (‪ )µ‬التي تم إدخالها يتم توليد سلسلة فوضوية عدد‬
‫عناصرها مساوي لعدد بكسالت صورة ملونة بحجم (‪ )512*512‬أي أن عدد عناصر السلسلة هو (‪.)3 * 512 * 512‬‬

‫(‪ )255 – 0‬لتكون مناسبة‬ ‫يتم تعديل قيم السلسلة الفوضوية الناتجة والتي تكون قيم حقيقية بين (‪ )1 – 0‬إلى قيم صحيحة بين‬
‫للتعامل معها للتشفير كطبقة ثانية وكذلك إلنشاء الصورة التي تتم عملية اإلخفاء للنص المشفر النهائي بين قيم النقاط الصورية‬
‫(‪ )Pixel‬لها‪ ،‬حيث يتم التعديل باستخدام المعادلة اآلتية‪:‬‬
‫)‪X = uint8 ( mod ( X * 10^14 ), 255‬‬
‫حيث يتم ضرب الرقم في (‪ )1014‬ألن قيم الدالة اللوجستية تكون بهذه الدقة من المراتب‪.‬‬
‫يتم عمل دالة أو الحصرية (‪ )XOR‬بين القيم المشفرة الناتجة من طريقة النقطة الثابتة في الخطوة (ث) و للقيم األولى من‬
‫السلسلة الناتجة من الخطوة (د) وبعدد قيم مساوية لعدد أحرف النص األصلي مضروبًا في العدد (‪ )8‬للسبب المذكور في‬
‫الخطوة (ث)‪ ،‬أي أن السلسلة الناتجة الجديدة أصبحث تحتوي في بدايتها على النص المشفر بطريقتي النقطة الثابتة والدالة‬
‫اللوجستية وباقي عناصر السلسلة الفوضوية تبقى مساوية لقيمها المذكورة في الخطوة السابقة (د)‪.‬‬

‫لغرض زيادة قوة التشفير يتم إخفاء موقع وجود النص المشفر المخفي ضمن عناصر الصورة المولدة باستخدام طريقة‬
‫لبعثرة عناصر السلسلة الفوضوية الناتجة في الخطوة السابقة (ذ)‪ ،‬وهذه الطريقة تتلخص بترتيب عناصر السلسلة الناتجة‬
‫تصاعديًا أو تنازليًا في مصفوفة منفصلة وكذلك الحصول على مصفوفة المواقع األصلية للقيم قبل ترتيبها‪ ،‬ثم الحصول‬
‫على سلسلة جديدة هي نتيجة بعثرة القيم حسب مصفوفة المواقع وكالتالي‪:‬‬
‫[‪Sort(Logistic_uint8_array) = ]sorted_array, Indices‬‬
‫حيث أن (‪ )Logistic_uint8_array‬هي ناتج الخطوة (ذ)‬
‫‪;Z = 1: 512*512*3‬‬
‫)‪Scrambled_array(indices(z)) = Logistic_uint8_array(z‬‬
‫يتم تغيير أبعاد السلسلة الناتجة من الخطوة السابقة وتقسيمها إلى ثالث مصفوفات بحجم ‪ 512 * 512‬لتكون القنوات‬
‫اللونية (‪ )R, G, B‬للصورة المولدة ثم تجميع المصفوفات الثالث لتكوين الصورة وحفظها ليتم إرسالها إلى المستلم‪.‬‬

‫حفظ المفاتيح السرية إلى ملف ليتم إرساله إلى المستخدم عبر قناة آمنة وهذه المفاتيح هي (المعادلة التي يتم حلها‬
‫باستخدام النقطة الثابتة‪ ،‬القيمة االبتدائية المعدلة للدالة اللوجستية‪ ،‬قيمة معامل التحكم للدالة اللوجستية‪ ،‬طول النص‬
‫األصلي أو المشفر بوحدة ‪.)Byte‬‬

‫خطوات خوارزمية فك التشفير‬


‫هي ذاتها خطوات التشفير لكن بصورة عكسية من ناحية العمليات والخطوات نالحظ أنه في عملية فك‬
‫التشفير أو االستخالص وعند الوصول إلى خطوة فك التشفير باستخدام المعادلة التي تم حلها بطريقة‬
‫النقطة الثابتة (‪ )Fixed Point‬في التشفير فإنه ال حاجة الستخدام طريقة النقطة الثابتة في فك التشفير‬
‫أو بمعنى آخر ال حاجة الستدعاء دالة النقطة الثابتة ألن العملية العكسية لخطوة التشفير في هذه المرحلة‬
‫هي إيجاد قيمة الـ (‪ )Ascii‬لكل حرف باستخدام معادلة التشفير الرياضية فقط أما قيمة المتغير (‪ )X‬فهي‬
‫مستحصلة من الخطوة التي قبلها ويتم تعويضها مباشرة ولهذا ال يتم إرسال القيمة االبتدائية وعدد‬
‫التكرارات التي تم استخدامها في طريقة النقطة الثابتة في عملية التشفير إلى المستلم‪.‬‬
‫النتائج والتحليالت‬
‫تم تنفيذ الخوارزمية المقترحة باستخدام برنامج (‪ )MatLab R2021b‬حيث تمت تجربة عمل خوارزميتي‬
‫التشفير واالستخالص لعدة نصوص وكانت عملية االستخالص ناجحة عند استخدام المفتاح ذاته‬
‫والصورة اآلتية تبين الصورة الناتجة عند تشفير كلمة (‪ )Encryption‬وعملية فك التشفير‬

‫وتم إجراء التحليالت اآلتية لمعرفة قوة الخوارزمية المقترحة وصمودها أمام مختلف أنواع الهجمات‪:‬‬
‫تحليل مساحة وطول المفتاح‬
‫تحليل حساسية المفتاح‬
‫التحليالت اإلحصائية‬
‫تحليل مساحة وطول المفتاح‬
‫حسب قوانين العالم كيركوف في التشفير فإن أمنية نظام التشفير يجب أن يكون معتمدًا على المفتاح بصورة رئيسية أي أن الخوارزمية‬
‫المستخدمة للتشفير وفك التشفير تكون مفتوحة ومعلنة لجميع األطراف ما عدا المفتاح يتم الحفاظ عليه بسرية تامة وذلك لسببين‬
‫أولها أن االحتفاظ بسرية المفتاح يكون أسهل بكثير من االحتفاظ بسرية الخوارزمية والتي تكون غالبًا معقدة وطويلة‪ ،‬أما السبب الثاني‬
‫فهو أن استبدال المفتاح عند اكتشافه يكون أسهل من عملية استبدال الخوارزمية بأكملها عند انكشافها‪.‬‬
‫بالعودة إلى مواصفات المفتاح المناسب للصمود أمام هجوم القوة الغاشمة (‪ )Brute Force Attack‬فإن المفتاح يجب أن ال يكون‬
‫طويًال جدًا أو قصيرًا جدًا فالمفتاح الطويل جدًا يبطئ من سرعة عمليتي التشفير واالستخالص أما المفتاح القصير جدًا فيمكن الحصول‬
‫عليه وتنبؤه بسهولة عند استخدام الهجمات المختلفة ومن ضمنها الهجوم أعاله وحسب سرعة الحواسيب المستخدمة في وقتنا الحالي‬
‫فإن طول المفتاح يجب أن ال يقل عن (‪ )bit 100‬أي أن مساحة المفتاح يجب أن ال تقل عن (‪.)2^100‬‬
‫المفاتيح المستخدمة في الخوارزمية المقترحة هي‪:‬‬
‫المعادلة الرياضية التي يتم حلها باستخدام طريقة النقطة الثابتة‪ :‬مساحة هذا المفتاح مختلفة وتعتمد على حدود المعادلة التي يتم‬
‫استخدامها وهذا المفتاح هو الذي تستمد منه الخوارزمية قوتها ضد هجوم القوة الغاشمة أو هجمات التنبؤ بالمفتاح حيث ال حصر‬ ‫‪1‬‬
‫لالحتماالت التي يجب تجربتها وليست هناك نقطة ثابتة أو نقطة نهاية تبدأ منها هجمة القوة الغاشمة‪.‬‬

‫معامالت الدالة اللوجستية‪ :‬والتي تشمل القيمة االبتدائية للدالة اللوجستية باالضافة إلى معامل التحكم للدالة اللوجستية‪ ،‬على‬
‫فرض أن دقة المفتاحين أعاله هي (‪ )10^-14‬كما تبين نتائج التحليالت القادمة فإن مساحة المفتاح الناتجة من المفتاحين أعاله هي‪:‬‬ ‫‪2‬‬
‫‪10^28‬أي ما يعادل ‪.2^93‬‬
‫طول النص األصلي بوحدة (‪ :)Byte‬يتم استخدام طول النص األصلي كأحد المفاتيح أيضا حيث ان هذا المفتاح مهم في عملية‬
‫االستخالص واستخراج معلومات النص من الصورة‪ .‬مساحة المفتاح الناتجة من هذا المفتاح هو (‪ )220‬أي بطول (‪.)bit 20‬‬ ‫‪3‬‬
‫وبذلك تصبح مساحة المفتاح للخوارزمية باكملها هي‪:‬‬
‫مساحة المفتاح من الدالة الرياضية ‪Key Space = 2^113 +‬‬
‫وهذه المساحة منيعة جدا ضد الهجمات المعتمدة على تنبؤ وتخمين المفتاح بكل أنواعها‪.‬‬
‫تحليل حساسية المفتاح‬
‫باالضافة إلى ضرورة امتالك المفتاح لمساحة واسعة لمقاومة هجمات التنبؤ فإن ناتج خوارزمية التشفير وفك التشفير يجب أن يكون‬
‫حساسًا جدًا ألي تغيير طفيف في المفاتيح المستخدمة‪ ،‬بعبارة أخرى فإنه يجب أن يولد التغيير الصغير جدًا في المفتاح نصًا مشفرًا‬
‫مختلفا عن النص المشفر الذي تم توليده باستخدام المفتاح قبل التغيير‪ ،‬أو أن التغيير الصغير جدا في المفتاح يؤدي إلى فشل‬
‫استخالص النص األصلي‪ ،‬وتم إجراء التحليالت اآلتية لمعرفة مدى حساسية الخوارزمية المقترحة‪:‬‬
‫تم تشفير وإخفاء الحرف (‪ )M‬باستخدام خوارزمية التشفير باستخدام قيم المفاتيح المدرجة في الصورة أدناه وتم الحصول على النص‬
‫المشفر الذي يمثل الحرف أعاله في الصورة‪ ،‬ومن ثم تم إجراء تغيير بسيط في أحد مفاتيح الدالة اللوجستية بقيمة (‪ )13-10‬وكانت‬
‫النتائج كما في الصورتين أدناه‪:‬‬
‫تم تشفير وإخفاء كلمة (‪ )Encryption‬باستخدام خوارزمية‬
‫التشفير باستخدام قيم المفاتيح المدرجة في الصورة أدناه وتم‬
‫استخالص الكلمة باستخدام المفاتيح ذاتها في خوارزمية فك‬
‫التشفير‪ ،‬ومن ثم تم إجراء تغيير بسيط في أحد مفاتيح الدالة‬
‫اللوجستية بقيمة (‪ )13-10‬عند االستخالص ففشلت عملية‬
‫استخالص النص األصلي وكالتالي حيث تظهر النتائج في الصور‬
‫أدناه أن الخوارزمية حساسة جدًا للتغيير في قيم المفاتيح‪.‬‬
‫التحليالت اإلحصائية‬
‫تستهدف هذه التحليالت النص المشفر حيث يتم محاولة اكتشاف التكرارات ومعدل تردد الحروف أو الرموز المعينة في النص المشفر للتنبؤ بالنص‬
‫األصلي أو إنشاء عالقة لمعرفة مفتاح التشفير‪ ،‬لذلك يجب أن تكون الخواص اإلحصائية للنص المشفر مختلفة تمامًا عن النص األصلي ومشابهة‬
‫للضوضاء‪ ،‬تكون تكرارات االحرف لمختلف اللغات بترددات ثابتة ولذلك يجب الحصول على نص مشفر مختلف للحرف نفسه في كل مرة تكرار ضمن‬
‫النص األصلي‪ ،‬كمثال فإن تردد تكرار الحرف (‪ )A‬في اللغة االنكليزية هي بنسبة (‪ )%8‬حسب الدراسات التي تم إجراؤها لذلك يقوم المهاجم بعمل دراسة‬
‫لنسبة تكرار الرموز ضمن النص المشفر ومساواة نسب التكرار حسب تردد األحرف باألحرف األصلية نفسها والحصول على النص األصلي والمفتاح‪،‬‬
‫ولمعرفة صمود الخوارزمية المقترحة ضد الهجمات اإلحصائية فإنه تم تشفير األحرف (‪ )aaaaa‬وبينت نتيجة النص المشفر أن كل حرف له قيمة مشفرة‬
‫مختلفة عن سابقه وهذا يدل أن الخوارزمية مثالية في إخفاء تردد تكرار األحرف‪ ،‬كما أن المدرج التكراري للصورة التي تم توليدها في الخوارزمية تبين أن‬
‫الصورة لها خواص مشابهة للضوضاء من حيث نسبة تكرار قيم النقط الصورية من (‪ .)255 - 0‬والصورة اآلتية تبين هذه النتائج‪:‬‬
‫التحليالت التفاضلية‬
‫لتنفيذ الهجمات التفاضلية يقوم المهاجم بتشفير نص معين والحصول على النتيجة المشفرة ثم إحداث تغيير بسيط جدًا في النص األصلي ذاته‬
‫كتغيير حرف واحد أو كلمة واحدة والحصول على النص المشفر له ومن ثم محاولة إيجاد عالقة بين النصين المشفرين لمعرفة مفاتيح التشفير‪ ،‬فحينما‬
‫يكون التغيير بين النصين المشفرين صغيرًا فإن الخوارزمية ضعيفة ويستطيع المهاجم الحصول على المفتاح بسهولة وعندما يكون التغيير كبيرا بين‬
‫النصين المشفرين عند إحداث تغيير بسيط في النص األصلي فإن الهجوم سيكون فاشًال بمعنى أن الخوارزمية منيعة ضد هذه الهجمات والمفتاح‬
‫آمن‪ .‬وإن إضافة الخطوة (ج) من خطوات التشفير إلى خوارزمية التشفير جعلت الخوارزمية متينة ضد هذه الهجمات ولغرض معرفة قوة الخوارزمية‬
‫ضد هذا النوع من الهجمات تم تشفير حرف (‪ )m‬ومن ثم تم تشفير حرف (‪ )n‬والذي يختلف عن الحرف السابق بقيمة بت واحدة فقط وتم الحصول‬
‫على نتائج مختلفة جذريا ومن ثم تم تشفير كلمتي (‪ )Encryption‬و(‪ )Encryptiom‬باستخدام نفس المفتاح وأيضا النتائج كانت مختلفة تمامًا‪،‬‬
‫والصور اآلتية توضح هذه النتائج‪:‬‬
THANK
YOU

You might also like