recent
أخبار ساخنة

خوارزميات التشفير في أمن البيانات

الصفحة الرئيسية


خوارزميات التشفير ليست مفاجأة! فمُنذ الماضي السحيق حاول البشر إخفاء رسائلهم الخاصة و السرية بإستخدام أساليب مُتقدمة و ذكية وفقاً لزمانهم و ذكائهم و خبرتهم، و ما نملكُه اليوم من خوارزمياتٍ مُتقدمة ما هو إلا تراكم خبرات عبر العصور.هذا التقدم الذي وصلت لهُ البشرية اليوم من العلوم من كانوا ليصلوا إليه لولا الله ثم إجتهادات آبائهم و أجدادهم من قبلهم و وصول العلم السابق إليهم، و بلا شك فإن علم التشفير هو أحد العلوم التي تطورت منذ قديم الأزل و حتى يومنا هذا كما سترى من خلال هذه التدوينة الشاملة.

أولاً : Triple DES

إنه أحد أنواع خوارزميات التشفير ويعتبر أحد أنواع خوارزميات تشفير الكتل (BLOCK) ويعتبر بديلاً محسنًا لخوارزمية DES التي كانت معروفة بأنها آمنة ، ولكن بعد اختراقها وكشف كيف تم كسرها وأصبحت الحاجة إلى بديل مهم جدًا "ربما يكون العيب الرئيسي في DES هو أن طول مفتاح التشفير قصير جدًا حيث كان طوله 56 بت" ، أحد الاقتراحات لملء هذه الفجوة هو إطالة المفتاح ، ولكن قد لا تكون الخوارزمية الأصلية مفيدة مع مفتاح طويل ، لذلك تضمن الاقتراح أيضًا أن يتم ترميز الرسالة ثلاث مرات بمفاتيح مختلفة ، وهذا بالطبع يسد أحد الثقوب ، ولكن تبقى ثقوب أخرى دون تغيير. ضعفت بالرغم من ذلك لا تزال آمنة. تم تطوير هذا التشفير في عام 1998 واستبدل DES حتى تم اكتشاف معيار تشفير آخر ، AES. لقد كان بديلاً أكثر أمانًا وأمانًا. كان تطوير هذا الترميز هو توفير الوقت بدلاً من البدء في تطوير طرق جديدة. لقد قرروا استخدام ما كان موجودًا والبناء عليه ، لذلك تحظى بشعبية كبيرة اليوم. يعني 3DES المستخدم في Triple DES حلًا لأحد مشاكل الثغرة ، وهو طول المفتاح القصير ، لأن 3DES يعني مضاعفة المفتاح الأصلي (56 بت * 3) ، وبالتالي طول المفتاح في Triple Des = 56 * 3 = 168. أهم مزايا هذه الخوارزمية هي أن خوارزمية Des أكثر أمانًا وتتفوق خوارزمية Des على الخوارزمية الثلاثية من حيث السرعة حيث أن المعالجة الثلاثية بطيئة.

كيف تتم عملية تشفير النص الواضح في 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
إنها خوارزمية متماثلة. والتي يمكن استخدامها بدلاً من خوارزمية Des لتشفير البيانات. نظرًا لأن هذه الخوارزمية تأخذ أطوالها الرئيسية المختلفة (من 32 بت إلى 448 بت) ، يتراوح مفتاح الطول بين هذين الرقمين. هذا يجعلها مثالية وسرعة عالية مقارنة بخوارزمية 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       


ثالثاً :Honey Encryption

 هي اداة أمنية حديثة ومهمه في تحقيق الامان وتشفير البيانات, حيث تعُقد هذهِ الاداة الهجمات التي تعتمد على تخمين مفتاح التشفير او تخمين كلمة السر . عادة يعرف الشخص المخمن أنه قام بتخمين اشياء خاطئة لان نتيجه فك التشفير التي يحصل عليها خاطئة ايضاً أي ( غير مفهومه ) . لذا سيحاول مراراً وتكراراً الى أن يصل الى نتيجه مفهومه, ولكن مبدأ عمل خوارزمية Honey يكمن في اعطاء نتائج مفهومه ومنطقيه لعمليات التخمين الخاطئة مما يوهم المخمن بأن كل تخمين هو تخمين صحيح !. وهكذا يصعب على المخمن أن يعرف ما هو التخمين الصحيح , لان بشكل ما  فأن كل التخمينات  التي سيحصل عليها من فك التشفير هي تخمينات معقوله ومفهومه . وسميت بهذا الاسم  Honey (عسل) لآنها ستغري المخمن بالكثير من الاحتمالات الصحيحه في كل مره يخمن بها بشكل خاطئ !. 



google-playkhamsatmostaqltradent