المهارات الرقمية9 فصل ثاني

التاسع

icon

مفهومُ التشفيرِ

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

ويمكن تعريف التشفير على أنه: عملية تحويل النص الأصلي الى نص غير مفهوم إلا من قبل الشخص المرسل والشخص المستقبل للرسالة.

ومن أهم المصطلحات التي يجب أن تتعرف عليها في عالم التشفير:

المصطلح باللغة العربية

المصطلح باللغة الإنجليزية

التشفير

Encryption

فك التشفير

Decryption

النص الأصلي للرسالة

Plaintext

النص او الرسالة بعد عملية التشفير

Cipher text

الخوارزمية المعتمدة بالتشفير

Cryptographic algorithm

المفاتيح المستخدمة في عملية التشفير/فك التشفير

Keys

 

طرقُ تشفيرِ البياناتِ

يقوم علم التشفير على مجموعة من المفاهيم الرياضية والخوارزميات  لتحويل المعلومات الى معلومات يصعب فك تشفيرها بهدف حماية المعلومات باستخدام الخوارزميات المشفرة وعلامات التجزئة والتوقيعات ليضمن السرية،النزاهة، وصحة المعلومات وهوية المستخدم.وهناك عدد كبير من الخوارزميات التي تستخدم في عمليات التشفير والتي تختلف حسب درجة تعقيدها وقوتها. فمن الخوارزميات ما هو بسيط وسهل و لا يحتاج الى عمليات حسابية معقدة، مما مكّن العديد من الأفراد تعلمها بسهولة.

ويتم تصنيف خوارزميات التشفير حسب ثلاثة معايير:

 

 

 

 

 

 

 

 

 

 

 

وفيما يلي استعراض لبعض هذه الخوارزميات حسب تصنيفها:

 

أولًا: بحسبِ نوعِ عمليةِ التشفيرِ المستخدَمَةِ:

1.خوارزمياتُ التعويضِ(Substitution)

 وهي خوارزمية تقوم على مبدأ تغيير حروف الرسالة بحروف أخرى،أي انّ الشخص يرى الرسالة بحروف مختلفة تماما عن الاحرف الأصلية التي أرادها المرسل. وتعتمد على مفتاح التشفير، حيث يكون هناك مجموعة حروف للنص الأصلي ومقابلها مجموعة من الحروف للنص المشفر. تقوم على معادلات رياضية.

وحتى نتخيل الأمر،دعنا نفترض أننا نريد  اعتماد طريقة الإزاحة بمقدا واحد لكل حرف كخوارزمية تشفير لنا:

أي أن حرف A   يصبح B وحرف B يصبح C، وهكذا...

فإذا كان النص الأصلي MATH فإن النص المشفر يصبح NBWI

ومن أشهر الشيفرات التي تعتمد هذا الأسلوب شيفرة قيصر (Ceaser Cipher) والتي سوف نتناولها بالتفصيل.

2.خوارزمياتُ الإبدالِ (Transposition)

وهي خوارزمية تقوم على مبدأ  تبديل مكان الحروف وليس تغيير الحرف ،بحيث تكون الرسالة  الأصلية مكتوبة بطريقة ثم يتم إعادة ترتيب النص  وبتغيير مواقع الحروف حسب معادلا معينة. ومن أشهر الأمثلة عليها خوارزمية تبديل سياج السكة الحديدية. والتي سوف نتناولها بالتفصيل.

3.خوارزميةُ المنتجِ(Product)

يقوم مبدأ عمل هذه الخوارزمية على الجمع بين طريقتين أو أكثر لعملية التشفير، أي انها ممكن أن تجمع بين طريقة التعويض وطريقة الإبدال في تشفير نفس النص. مما يعمل على رفع درجة الامان بشكل أكبر من الطرق السابقة.

 

ثانياً: حسب مفتاح التشفير المستخدم

 

التشفيرُ المتماثلُ (Symmetric Encryption)

وهي طريقة تشفير يُعتمد فيها مفتاحٌ سريٌّ خاصٌّ واحدٌ لتشفيرِ النصِّ وفكِّ التشفيرِ.ويكون كل من المرسل والمستقبل يملك هذا المفتاح ويعرفه.ويمتاز بانه بسيط وفعال ولا يحتاج الى قوة معالجة كبيرة.

ويمكنتلخيص مبدأ عمل طريقة التشفير المتماثل كما يلي:

  • يكتب المرسل النص المحدد ثم يعمل على تشفيره وكأنه يضيف عليه قفل يغلقه من خلال مفتاح خاص به.
  • يقوم المرسل بإرسال النص المشفر عبر الشبكة.
  • يقوم الطرف المقابل باستقبال النص المشفر، ويجب عليه أن يكون يمتلك المفتاح نفسه،بحيث يقوم المفتاح بفك التشفير عن النص.
  • يرجع النص المشفر الى نص عادي ويستقبله الشخص المستقبل كما صدر من المرسل

وفيما يلي شكل توضيحي يمثل عملية التشفير المتماثل:

 

التشفيرُ غيرُ المتماثلِ(Asymmetric Encryption)

وتسمى أيضا (تشفير المفتاح العام ) وهي طريقة تشفير تعتمد استخدام مفتاحين للتشفير:

مفتاح عام (Public Key): وهو مفتاح متاح للجميع،يتم مشاركته مع الجميع

مفتاح خاص (Private Key): مفتاح يعطى لأشخاص محددين فقط ولا يُتاح للعامة، ومن يملكه هو وحده القادر على فك التشفير.

وكل من المرسل والمستقبل لديه مفتاحا مختلفاً عن الآخر.وتعتبر هذه الطريقة أكثر أمناً من التشفير المتماثل إلا أنها أكثر تعقيداً.

ويمثل الشكل التالي آلية عمل التشفير غير المتماثل:

 

ثالثاً: حسب طريقة معالجة النص

تشفيرُ الكُتلِ (Block Cipher)

طرقة تشفير تقوم على مبدأ تشفير الكتل ذات الحجم الثابت فقط،أي يشفر النص العادي بحجم 128 بت وينشيء مقابله نصاً مشفرا بحجم 128 بت أيضا.

تشفيرُ التدفُّقِ (Stream Cipher)

وهو التشفير الذي يعتمد على تشفير النص من خلال أخذ بت واحدة  أو بايت واحدة من الرسالة الأصلية في كل مرة .

وفيما يلي جدولا يوضح الفروق ما بين الطريقتين:

تشفيرُ الكُتلِ (Block Cipher)

تشفيرُ التدفُّقِ (Stream Cipher)

تحوُّلُ النصُّ الأصليُّ إلى نصٍّ مشفرٍ بأخذِ

النصِّ الأصليِّ مثلَ كتلةٍ في كلِّ مرةٍ )الكتلةُ

تستخدمُ 64 بتّ أوْ أكثرَ.

تحوُّلُ النصُّ الأصليُّ إلى نصٍّ مشفرٍ بأخذِ بت واحدٍ من الرسالةِ الأصليةِ في كلِّ مرةٍ شيفرةُ التدفقِ تستخدمُ 8 بت في كلِّ مرةٍ(.

عمليةُ تشفيرِ الكتلِ بسيطةٌ.

عمليةُ تشفيرِ التدفقِ أكثرَ تعقيدًا.

عمليةُ فكِّ التشفيرِ صعبةٌ.

عمليةُ فكِّ التشفيرِ سهلةٌ.

يعملُ تشفيرُ الكتلِ على مبدأِ التشفيرِ بالإبدالِ

)مثلَ تشفيرِ سياجِ السكةِ الحديديةِ(.

يعملُ تشفيرُ التدفقِ على مبدأِ التشفيرِ بالتعويضِ )مثلَ شيفرةِ قيصرَ(.

تستهلكُ وقتًا أطولَ مقارنةً بتشفيرِ التدفقِ.

تستهلكُ وقتًا أقلَّ.

أكثرُ أمنًا.

أقلُّ أمنًا.

 

وبعد أن تعرفنا على ثلاث آليات مختلفة لعمليات التشفير، دعنا الآن نأخذ مثالين على أشهر خوارزميات التشفير وهما :

التشفيرُ بالتعويضِ: وهيَ شيفرةٌ قصيرةٌ   Caesar Cipher

التشفيرُ بالإبدالِ: وهيَ شيفرةُ تبديلِ سياجِ السكةِ الحديديةِ Rail Fence Transposition Cipher72FG

 

شيفرةُ قيصرَ (Caesar Cipher)

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

يقوم مبدأ عملها على على التشفير بالتعويض. حيث يتم استبدال كل حرف من النص الأصلي(Plain Text) بالحرف الذي يقابله لينتج النص المشفر(Encrypted Text). ويتم اختيار الحرف المقابل للحرف الأصلي من خلال إجراء عملية إزاحة للحروف بعدد معين من الإزاحات.

إزاحة واحدة: حرف A يقابله B

إزاحتين: حرف A يقابله C وهكذا.

وفيما يلي قائمة تمثل مميزات وسلبيات شيفرة قيصر:

 

 

 

 

 

 

 

 

 

 

 

خطواتُ تطبيقِ الخوارزميّةِ:

1.يتم تحديد قيمةِ الإزاحةِ للحروفِ في الرسالة التي سوف يتم إرسالها ) تتراوحُ قيمةُ الإزاحةِ بينَ 25 1) والتي تمثل مفتاح التشفير.

2.يتم إنشاءُ جدولٍ منْ صفينِ؛ حيثُ يحتوي الصفُّ الأولُ منَ الجدولِ على الحروفِ بترتيبِها العاديِّ، ويحتوي الصفُّ الثاني على الحروفِ بعدَ تطبيقِ قيمةِ الإزاحةِ. كما في الصورة التالية:

 

3.تبدأ عملية تشفيرُ الرسالةِ  بحيث يتم إستبدال كلِّ حرفٍ من حروف الرسالة بالحرفِ الذي يقابله الموجودِ في الصفِّ الثاني منْ الجدولِ بعدَ تطبيقِ لإزاحةِ.

4.التأكدُ أنَّ مستلمَ الرسالةِ لديْهِ مفتاحُ التشفير والذي يمثل مقدار الإزاحةِ حتى يستطيعَ فكَّ التشفيرِ.

 5.لفكِّ تشفيرِ الرسالةِ في شيفرةِ قيصرَ، تطبقُ المعادلةَ  (26- قيمة الإزاحة) لإيجادِ قيمةِ الإزاحةِ في النصِّ المشفرِ، وإعادةِ الحروفِ الأصليةِ.

مثال     

أستخدم شيفرة قيصر لتشفير رسالة نصها الأصلي (I like chemistry) ومفتاح الإزاحة =10

حسب الخطوات التي تعلمناها بالأعلى:

1.قيمة الإزاحة =10

2.نقوم بإنشاء الجدول الذي يمثل الصف الأول فيه الحروف حسب ترتيبها الأبجدي والصف الثاني تكون الحروف مرتبه بعد تطبيق مفتاح التشفير =قيمة الإزاحة =10، ويظهر معنا كما في الصورة التالية:

 

فحرف a ترتيبه واحد وبعد اضافة 10 حروف  يقابله الحرف  وهكذا...

3.نقوم بوضع حروف الرسالة الأصلية في الصف الأول، ونضع الحروف التي تقابلها بعد تطبيق الإزاحة في الصف الثاني، ويظهر معنا الجدول التالي:

فيصبح النص المشفر المقابل لعبارة I like chemistry هو  s vsuo mrowscdbi

 

ولغايات فك تشفير النص،لا بد من مستلم الرسالة أن:

  1. يكون لديه نفس مفتاح التشفير وهو قيمة الإزاحة =10
  2. يطبق معادلة (26- مفتاح الإزاحة) لتصبح (26-10) =16
  3. نقوم بإنشاء جدول فك التشفير الجديد حسب قيمة الإزاحة
  4. بالاستعانة بجدول فك  التشفير نستطيع استعادة النص الأصلي وقراءته.

 

شيفرةُ تبديلِ سياجِ السكةِ الحديديّةِ ( Rail Fence Transposition Cipher)

هي احدى الشيفرات التي تعتبر مثالاً على خوارزميات التشفير بالإبدال ،ويطلق عليها  أيضاً شيفرة الخط المتعرج

(Zig Zag Cipher). وتعتبر من التقنيات البسيطة في عمليات التشفير ،حيث انها تعتمد على تبديل أماكن الحروف في الرسالة الأصلية لإنتاج نص جديد مشفر يعتمد على مفتاح التشفير.ومفناح التشفير يقصد به عدد الأسطر التي سوف يعاد كتابة الرسالة  الأصلية بواسطتها.

 

خطواتُ تطبيقِ الخوارزميّةِ:

1.يتم اعتماد مفتاح التشفير وهنا يساوي عدد الأسطر التي سوف نكتب بها الرسالة.

2.يتم وضع إشارة Ø مكان كل فراغ بين الكلمات موجود في الرسالة.

3.يتم تعبئة حروف الرسالة متتالية في السطور الموجودة بشكل متعرج (Zig Zag).

 

مثال

لتشفير كلمة Hello World  باستخدام شيفرة تبديل سياج السكة الحديدية وبعدد أسطر = 3

1.مفتاح التشفير =3

2.نعيد كتابة العبارة مع وضع Ø بدل كل فراغ موجود،فتصبح كالتالي (ØWorldHello)

3.سوف يتم تعبئة الحروف مع الفراغ في جدول من 3 سطور وعدد الأعمدة 11 (يساوي عدد الحروف في العبارة)، بشكل متعرج ، لينتج معنا الجدول التالي:

4.نقوم بكتابة الحروف التي نتجت في الصف الأول متتابعة حتى نصل أول فراغ (هنا اول فراغ في السطر الثاني) ثم التي نتجت في بعد اول فراغ، لتصبح الكلمة بعد التشفير Horel ollWd

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

Jo Academy Logo