دراسة وشروحات الخواريزميات لتشفيرالبيانات -خواريزمية Algorithm DES - الدرس الاول 2 - - نسخة قابلة للطباعة +- الفريق العربي للهندسة العكسية (https://www.at4re.net/f) +-- قسم : منتديات الهندسة العكسية - Reverse Engineering Forums (https://www.at4re.net/f/forum-4.html) +--- قسم : إكتشاف آفاق جديدة بعلم الهندسة العكسية - Discover New Prospects in RCE (https://www.at4re.net/f/forum-44.html) +--- الموضوع : دراسة وشروحات الخواريزميات لتشفيرالبيانات -خواريزمية Algorithm DES - الدرس الاول 2 - (/thread-1529.html) |
دراسة وشروحات الخواريزميات لتشفيرالبيانات -خواريزمية Algorithm DES - الدرس الاول 2 - - Polia - 06-04-2020 سنعمل على معرفة وفهم طريقة عمل هده الخواريزمية باستعمال مفتاح DES
التاليي: 83D49342D5705C3B والرسالة هي : 6F91B55DB7361C38 وهدا المتال نفسه سبق ورئيناه مع باقة دجي تيفي هنا
ويمكننا عن طريق هده الخواريزيمة بتشفير الرسالة او فك تشفيرها علما ان طريقة فك التشفير تستخدم نفس العملية المستعملة في التشفير لكن تستعمل المفاتيح المولدة في ترتيب عكسي عوض بدا التطبيق من K1 ..الى K16 في التشفير في فك التشفير يتم البدا بالعكس من K16 … الى K1 وسنبدا بشرح طريقة التشفير علما ان مفتاح الدي سنعمل عليه للشرح هو DES 83D49342D5705C3B والرسالة 6F91B55DB7361C38 واد قمنا الان بتشفير الرسالة سنحصل على نتيجة 3DEDB92B296B13C8 الان سنرى خطوة خطوة القضية باكملها كيف وحصلنا على تلك النتيجة بعد تشفير الرسالة بالخواريزنية DES واول شيئ سنقوم به هو توليد المفاتيح K1 ,K2,K3,K4,K5,K6,K7,K8,K9,10,K11,12,13,14,15,16, الموجودة في الخريطة التالية علما ان في الخريطة تلك لم يدكر طريقة الحصول على K1 ….. K16 ودلك ما سنتعرف عليه ان شاء الله وسنشرحه توليد المفاتيح K1 ,K2,K3,K4,K5,K6,K7,K8,K9,10,K11,12,13,14,15,16 من مفتاح DES الدي هو 83D49342D5705C3B وكما قلنا من قبل ان فقط نستعمل 56Bits وليس 64Bits وسنقوم باستعمال طاولة التي تسمى (Permuted Choice 1 (PC-1 لمفتاح DES الدي يتكون من 8Bytes اي 64Bits لاستنتاج نفسها ولكن فقط ب 56Bits ودلك عن طريق حدف البت التامن لكل بايت اولا سنقوم بتحويل المفتاح الى بيناري 83D49342D5705C3B 1000001111010100100100110100001011010101011100000101110000111011 ومن كل بايت من هده البايتات سيتم حدف البت التامن بعد مرورها على طاولة التغيير التي تسمى (Permuted Choice 1 (PC-1 83=10000011 D4=11010100 93=10010011 42=01000010 D5=11010101 70=01110000 5C=01011100 3B=00111011 الان سنقوم بترتيب هده البتات بهدا الشكل 01(1)—02(0)—03(0)—04(0) 05(0)—06(0)—07(1)—08(1)--- 83 = 1000 0011 09(1)—10(1)—11(0)—12(1) 13(0)—14(1)—15(0)—16(0)--- D4 = 1101 0100 17(1)—18(0)—19(0)—20(1) 21(0)—22(0)—23(1)—24(1)--- 93 = 1001 0011 25(0)—26(1)—27(0)—28(0) 29(0)—30(0)—31(1)—32(0)--- 42 = 0100 0010 33(1)—34(1)—35(0)—36(1) 37(0)—38(1)—39(0)—40(1)--- D5 = 1101 0101 41(0)—42(1)—43(1)—44(1) 45(0)—46(0)—47(0)—48(0)--- 70 = 0111 0000 49(0)—50(1)—51(0)—52(1) 53(1)—54(1)—55(0)—56(0)--- 5C = 0101 1100 57(0)—58(0)—59(1)—60(1) 61(1)—62(0)—63(1)—64(1)--- 3B = 0011 1011 ثم نمرر تلك البتات على الطاولة التالية للتغيير التي هي معروفة باسم (Permuted Choice 1 (PC-1 لحدف البتات التي هي باللون الاحمر 8, 16, 24, 32, 40, 48 , 56 , 64 Permuted Choice 1 (PC-1) 57-49-41-33-25-17-09 01-58-50-42-34-26-18 10-02-59-51-43-35-27 19-11-03-60-52-44-36 63-55-47-39-31-23-15 07-62-54-46-38-30-22 14-06-61-53-45-37-29 21-13-05-28-20-12-04 اد ركزنا في هده الطاولة البت الدي كان يحتل الموقع 57 الان سيحتل الموقع 01 والدي كان يحتل الموقع 49 الان سيحتل الموقع 02 ... الخ وكدلك كما قلنا ستلاحظ ان البتات 8, 16, 24, 32, 40, 48 , 56 , 64 ليست موجودة وسنبدا بوضع البتات وسيبقى لنا هدا الشكل 57(0)-49(0)-41(0)-33(1)-25(0)-17(1)-09(1) --- 0001011 01(1)-58(0)-50(1)-42(1)-34(1)-26(1)-18(0) --- 1011110 10(1)-02(0)-59(1)-51(0)-43(1)-35(0)-27(0) --- 1010100 19(0)-11(0)-03(0)-60(1)-52(1)-44(1)-36(1) --- 0001111 63(1)-55(0)-47(0)-39(0)-31(1)-23(1)-15(0) --- 1000110 07(1)-62(0)-54(1)-46(0)-38(1)-30(0)-22(0) --- 1010100 14(1)-06(0)-61(1)-53(1)-45(0)-37(0)-29(0) --- 1011000 21(0)-13(0)-05(0)-28(0)-20(1)-12(1)-04(0) --- 0000110 وكما تلاحظون ان هده الطاولة لا تحتوي على مواقع البتات 8, 16, 24, 32, 40, 48 , 56 , 64 بمعنى اخر ان تم حدف هده البتات وفي الاخير نحصل على 56Bits بعد ان نضع كل تلك البتات المستنتجة بعد التغيير في سطر 0001011 1011110 1010100 0001111 1000110 1010100 1011000 0000110 نحوله الى الهيكس: 177AA0F8D52C06 سنقسم ما حصلنا عليه في قسمين وسنسميه C0 ; D0 C0=177AA0F D0=8D52C06 انتهى الدرس الاول لكي لا اكثر عليكم واعقد الامور ونلتقي في الدرس التاني ان شاء الله للمتابعة |