السلام عليكم ورحمه الله وبركاته
سنتناول اليوم موضوع مهم خاصة للباحثين عن المواضيع التي تخص تشفير البيانات والمعلومات بأستخدام الخوارزميات الامنية الرئيسية والاكثر استخداماً.
نبداً مباشرة وبدون أطاله وبدون مقدمات بشرح خوارزميات التشفير
أولاً : Triple DES
هي احد انواع خوارزميات التشفير وتعتبر من انواع خوارزميات تشفير الكتل ( BLOCK ) وتعتبر بديل محسن لخوارزمية الـ DES التي كانت معروفه بأمانها, ولكن بعدما تم اختراقها وكشف كيفيه اختراقها أصبحت الحاجة لبديل مهمه جداً "ولعل العيب الأساسي في DES هو ان طول مفتاح التشفير قصير جدا إذ كان طوله 56 بت" , واحد الاقتراحات لسد هذه الثغرة هو اطالة المفتاح ولكن الخوارزمية الاصلية قد لا تكون ذات نفع مع مفتاح طويل لذا تضمن الاقتراح أيضا ان تشفر الرسالة ثلاث مرات بواسطة مفاتيح مختلفة , هذا طبعا سد أحد الثغرات ولكن ثغرات أخرى ظلت دونما تغيير وقد اضعفت هذه الثغرات 3DES وبالرغم من هذا فانه ما زال امنا . هذا التشفير طُور عام 1998 وقد حل مكان DES حتى كُشف النقاب عن معيار تشفير آخر وهو AES هذا المعيار كان بديلا لهما واكثر امانا . تطوير هذا التشفير كان لكي يوفروا الوقت بدل أن يبدأوا بتطوير وسائل جديدة قرروا استخدام ما كان موجودا والبناء عليه لذا فهو شائع الاستخدام ليومنا هذا . ويعني الـ 3DES المستخدم في Triple DES حل لأحد مشاكل الثغرة وهي طول المفتاح القصير , حيث أن الـ 3DES تعني ضرب المفتاح الاصلي ( 56 بت * 3 ) وبالتالي فأن طول المفتاح في Triple Des = 56 * 3 = 168 . واني اهم الايجابيات التي تتميز بها هذهِ الخوارزمية عن خوارزمية الـ Des هي اكثر أماناً وتتفوق خوارزمية Des على خوارزمية Triple من ناحية السرعة حيث أن الـ Triple بطيئه المعالجة.
كيف تتم عملية تشفير النص الواضح في Triple Des؟
1- تشفير كتل النص الواضح بأستخدام ( Single Des Block With key 56 bit (k1) )
2- تشفير مخرج (Output) العملية الاولى من جديد بأستخدام ( Single Des Block With key 56 bit (k2) )
3- تشفير مخرج العملية الثانية من جديد بأستخدام ( Single Des Block With key 56 bit (k3) )
4- المخرج النهائي هو النص المشفر ( Ciphertext )
كيف تتم عملية فك تشفير النص المشفر في Triple Des؟
تتم عملية فك التشفير كما تتم عملية التشفير والفرق الوحيد هو ان العملية فك التشفير ستجري عكس عملية التشفير حيث يبداً المستخدم بفك تشفير K3 ومن ثم يفك تشفير K2 ومن ثم K1 والنتيجة النهائيه هي النص الواضح
ثانياً : Blowfish
وهي عباره عن خوارزمية تشفير كتل (Blocks) متماثل (Symmetric). والتي يمكن أستخدامها بدلاً من خوارزمية الـ Des في تشفير البيانات.حيث أن هذهِ الخوارزمية تأخذ لمفتاحها اطوال مختلفه (من 32 بت الى 448 بت) حيث يتراوح الـ length key بين هاذين الرقمين المذكورين. وهذا ما يجعلها مثاليه وتمتاز بسرعه عالية مقارنة بخوارزمية الـ Des.
كيف تعمل خوارزمية Blowfish ؟
تقسم هذهِ الخوارزمية من حيث العمل الى جزئين
الجزء الاول : توسيع المفتاح ( Key-expansion )
الجزء الثاني : تشفير البيانات (Data Encryption)
الجزء الاول : Key-Expansion
يتم توسيع المفتاح المتكون من 448 بت الى مفاتيح فرعيه مجموعها 4168 بايت . ويتم توليد هذهِ المفاتيح قبل عملية التشفير وفك التشفير بقليل. حيث يحتوي الـ P على 18 مصفوفه , كل مصفوفه تمتلك 32 بت.
P1,P2,………….,P18
* هنالك اربعه من (بت S-boxes 32 ) تتكون من 256 بت لكل ادخالات منها :
S1,0, S1,1,………. S1,255
S2,0, S2,1,……….. S2,255
S3,0, S3,1,……….. S3,255
S4,0, S4,1,..............S4,255
كيف يتم حساب المفاتيح الفرعيه بأستخدام خوارزمية (Blowfish)؟
1- تهيئة المصفوفة ( P-array) ومن ثم تهيئة الـ ( Four S-Boxes ) بالترتيب مع سلسلة ثابته, تتكون هذهِ السلسلة من ارقام الست عشرية (hexadecimal digits) للـ Pi
2- تطبيق عملية XOR على P1 مع الـ 32 بت الاولى , ومن ثم تطبيق عملية الـ XOR على P2 مع الـ 32 بت الثانية , ونكرر هذهِ العملية مراراً وتكراراً على الـ Pi المتبقية مع نفس المفتاح ( 32 بت )
3- تشفير سلسلة الاصفار مع خوارزمية ( BlowFish ) وذلك بأستخدام المفاتيح الفرعيه التي تحدثنا عنها اعلاه .
4- استبدال P1 و P2 بمخرج ( Output ) الخطوة ( 3 )
5- تشفير المخرج من الخطوة رقم ( 3 ) بأستخدام المفاتيح الفرعيه
6- استبدال P3 و P4 بمخرج ( Output ) الخطوة 5
7- الاستمرار بالتشفير بتكرير الخطوات الثلاثه اعلاه على كل الـ P-arrays
* في المجموعه يجب الحصول على 521 تكرار لتوليد كافة المفاتيح الفرعيه المطلوبة
الجزء الثاني : Data Encryption
خوارزمية التشفير البيانات للـ Blowfish
في البداية يتم التشفير بتقسم (64bit) X الى جزئين كل جزء يمتلك 32 بت : XR,XL
ثم :-
For i = 1to 16:
xL = XL XOR Pi
xR = F(XL) XOR xR
Swap XL and xR
Swap XL and xR (Undo the last swap.)
xR = xR XOR P17
xL = xL XOR P18
Recombine xL and xR
تشفير النصؤص هو نفسه تشفير الكلمات
ردحذفالسلام عليكم ورحمه الله اريد شرحا وافيا لخوارزميه الtwofish
ردحذفالسلام عليكم اسال من \ال twofish
ردحذفارجو الجواب حالا
ردحذف