دورة تسيير المواقع والمدونات
أكاديمية كوبيراتيك العالمية
الورشة ٠١: تعريفات و مفاهيم عامة:
الدرس رقم: ٠٦
هام جدا: من أكمل المسار الخاص بالدورة يتحصل على شهادة معتمدة من الأكاديمية.
بسم الله الرحمن الرحيم و الصلاة و السلام على سيدنا محمد النبي الأمي العربي و على آله و صحبه أجمعين.
بداية أرحب بكم و أتمنى أن تكون هذه الدورة في متناول الجميع، و هنا ننوه إلى أن الدورة ليست للمتخصصين في مجال البرمجة، إنما هي موجهة لصناع المحتوى، حتى تكون عندهم المبادئ الأولية لولوج عالم الأنترنت الواسع.
في كل درس سنعتمد الطريقة التالية:
١-نشر الدرس
٢-تكليف المشتركين بتطبيق في آخر كل درس.
٣-الإجابة عن تساؤلات المشتركين و من باب تنظيم الأمور قسمنا التساؤلات الى نوعين.
النوع الأول: يمكن طرحه في التعليقات لمن يمكنهم التعليق على الصفحة.
النوع الثاني: المتعلق بأسئلة العضو المشترك عن شيء يخص التطبيقات في آخر الدروس هذه يجب طرحها على فريق المنصة عبر الواتساب:00213668251213
على كل المشاركين في الدورة الالتزام بما يلي:
١-قراءة الدرس.
٢-عند الانتهاء من الدرس التعليق ب “تم”، ليحتسب حضوره للدرس.
٣-الالتزام بالاجابة عن التطبيقات التي تطرح في آخر الدرس.
======================
السؤال١: ما معنى التعمية أو التشفير؟.
التعمية أو التشفير (بالإنجليزية: Encryption) يتناولها علم المعلومات (التي تكون بشكل نص بسيط عند التخزين على وسائط التخزين المختلفة أو عند نقلها على شبكات نص مجرد (plaintext) بحيث تصبح غير مقروءة لأحد باستثناء من يملك معرفة خاصة أو مفتاح خاص لإعادة تحويل النص المشفر إلى نص مقروء.
عملية الفك هذه تتم عن طريق ما يدعى مفتاح التشفير.
نتيجة عملية التشفير تصبح المعلومات مشفرة وغير متاحة لأي أحد لأغراض سرية عسكرية أو سياسية أو أمنية.
تقسم خوارزميات التشفير حسب طريقة العمل على اجزاء ورموز البيانات إلى نوعين: المقطعي والمتصل.
١-التشفير المقطعي:
يقوم على مبدأ تقسيم المحتوى الأصلي (نصوص أو صور أو أي شيء آخر) إلى مجموعات متساوية الطول من البتات تسمى بلوكات Blocks أو مقاطع ثم تشفير كل مقطع على حدة.
إن أكثر خوارزميات التشفير تعتمد على التشفير المقطعي مثل خوارزميات إيه إي إس، DES، 3DES، خوارزمية آر إس إيه، إم دي5، TIGER وغیرها.
٢-التشفير المتصل:
ويقوم على مبدء تشفير البيانات المتصل أو جدول البيانات بشكل مستمر؛ حيث يتم توليد مفتاح مستمر يتم دمجه مع البيانات الأصلية بخوارزمية تشفير ذات مفتاح متماثل وغالبا يتم ذلك بعملية XOR المنطقية.
ومن خوارزميات التشفير المتصل على سبيل المثال RC4 التي تعد خوارزمية التشفير المتصل الأوسع انتشاراً.
تقسم خوارزميات التشفير حسب طريقة نوع مفتاح التشفير وفك التشفير إلى نوعين:
١-التشفير المتناظر:
خوارزمية التشفير المتناظر إذا استخدم نفس المفتاح في التشفير وفك التشفير يقوم نظام التعمية المتماثل symmetric systems باستخدام نفس المفتاح في التشفير وفك التشفير.
من مزايا التشفير المتماثل انه سهل الاستعمال وسريع ولكن لديه عيب مهم “خصوصا حين يستخدم في الشبكات الكبيرة” وهو مفاتيح بين طرفي عملية التواصل على الشبكة اللذان يستخدمان عملية التشفير.
من الأمثلة على الخوارزميات التي تستخدم المفتاح المتناظر إيه إي إس ,DES, 3DES, وغیرها.
التشفير غير المتناظر:
خوارزمية غير المتناظر أو المفتاح العام إذا استخدم مفتاح للتشفير و آخر لفك التشفير asymmetric systems، فهو يقوم بتوليد مفاتيح مختلفة ثم استخدامها في تشفير وفك تشفير زوجين من مفاتيح الحماية.
وباستخدام هذين الزوجين من المفاتيح، أحدهما عام public والآخر خاص private، يستطيع مفتاح واحد منهما فقط أن يقوم بفك الشفرة التي ينشئها الآخر.
ومن غيرالمرجح أن تؤدي معرفة مفتاح واحد فقط إلى تحديد المفتاح الآخر، ولهذا يتم استخدام نظام التعمية غير المتماثل في إنشاء التوقيعات الرقمية ونقل المفاتيح المتماثلة.
من الأمثلة على الخوارزميات التي تستخدم المفتاح المتناظر خوارزمية خوارزمية آر إس إيه.
لقد كانت معظم أنظمة التعمية في الماضي تستخدم النظام المتماثل فقط، وتكمن مشكلة هذا النظام في الصعوبة التي يتم مواجهتها في توزيع المفاتيح على أشخاص بعينهم، فنظرا لأن التشفير المتماثل يعتمد على استخدام نفس المفتاح في التشفير وفك التشفير، فإن المرء يضطر إلى استخدام أساليب مبتكرة وصعبة معاً لمنع الآخرين من اعتراض المفتاح، ولكن إذا ما تمكن أحدهم من اعتراض المفتاح، فستكون لديه القدرة على استخدامه في فك شفرة(في حالة التشفير المتماثل فقط) أي شيء قام المفتاح بتشفيره.
تجدر الاشارة ان هناك نوع من التشفير لا يحتاج إلى مفتاح تشفير وهو دالة هاش التشفيرية.
السؤال ٢: ما الهدف من التشفير؟.
١-السرية أو الخصوصية ( Confidentiality ) : هي خدمة تستخدم لحفظ محتوى المعلومات من جميع الأشخاص ما عدا الذي قد صرح لهم الإطلاع عليها.
2-تكامل البيانات (Integrity) فلا يمكن التعديل او الاضافة من قبل الأشخاص الغير مصرح لهم بذلك.
3-إثبات الهوية ( Authentication ) : وهي خدمة تستخدم لإثبات هوية التعامل مع البيانات ( المصرح لهم).
السؤال٣: ما هي دالة الهاش؟.
دالة تجزئة أو دالة هاش (بالإنجليزية: Hash function) هي أي خوارزمية أو دالة رياضية تُحوِّل مجموعة كبيرة من البيانات إلى بيانات أصغر، وهي عادةً ما تكون عدد صحيح يعمل بمثابة مؤشر لمجموعة من البيانات، وتسمي القيم التي تسترجعها دالة هاش: قيم هاش أورموز هاش أو مجاميع هاش أو هاش
الفرق بين الهش والضغط أن الضغط يمكن فكه وإعادة البيانات إلى حجمها الأصلي؛ لكن الهش لا يمكنه ذلك، فحين تهش البيانات لن يعود بالإمكان استرداد حجمها الأصلي.
تُستخدم دالات هاش غالباً لتطوير الجداول أو مهام البيانات مثل: العثور على العناصر الموجودة داخل قاعدة البيانات، والكشف عن صفوف مماثلة في ملف كبير، وإيجاد مساحات مماثلة في تسلسلات الدي إن إيه، وغيرها.
وقد تحدد دالة هاش مفتاح أو اثنين من مفاتيح قيمة هاش نفسها، وفي كثير من التطبيقات، يجب تقليل نسبة التصادم. وهذا يعني أنه يجب على دالة هاش رسم خريطة لمفاتيح قيم هاش بالتساوي قدر الإمكان. وقد تتطلب بعض التطبيقات خصائص أخرى.
وعلى الرغم من أن الفكرة قد نشأت في الخمسينيات، لا يزال موضوع تصميم دالات هاش قيد البحث.
ترتبط دالات هاش بتدقيق المجموع، وتدقيق الأرقام، والبصمات، والدالات العشوائية، ورموز تصحيح الخطأ، ودالة هاش الرمزية.
وعلى الرغم من تداخل هذه المفاهيم إلى حدٍ ما، لكل مفهوم استخداماته واحتياجاته الخاصة، كما يتم تصميم كل واحدة منهم بشكل مختلف.
السؤال٤: ما هو التشفير ام دي ٥ / MD5؟
تُعد دالة هاش تشفيرية (Message Digest) من أكثر دوال الاختزال انتشارًا، وقد صُمّمت في نسختها الأوليّة (MD2) عام 1989م عن طريق الدكتور رونالد ريفست أستاذ الحاسب في معهد ماساتشوستس للتقنية (MIT)، وتم تطويرها إلى نسخة (MD5) عن طريق مطوّرها نفسه عام 1991م بعد أن تمّت دراسة خواصّ الأمن فيها وتغطية ثغرات سابقتها لفترة طويلة. تستخدم MD5 دالّة ميركل ديمقارد (Merkle–Damgård construction)، وتقوم على اختزال رسالة ذات طول متغيّر إلى طول ثابت هو 128 بت بغضّ النظر عن طولها الأصليّ، حيث يتم تحويل الرسالة إلى حزم (blocks) طول كُلّ منها 512 بت بغرضِ اختزالها في خطواتٍ لاحقة. من الجدير بالذكر أنّ أي تغيير مهما كان حجمه في النصّ الأصليّ يُنتج قيمة اختزال مختلفة تمامًا عن القيمة السابقة، أو هو ما تحاول الدالّة تحقيقه خلاص.
تتميّز MD5 عن غيرها من دوال الاختزال في عدّة نقاط:
1-سهلة التنفيذ وقليلة التكلفة.
2-تُوفّر مخرجًا مختلفًا لكلّ مدخل مهما صغر الفرق بينهم وهو ما يُسمّى بالبصمة (Fingerprint). j 3-استحالة الرّجوع من قيمة الاختزال إلى الرسالة الأصليّة.
و تستخدم فيما يلي:
١-التأكيد على صحّة الملفّات (Data Integrity):
أحد أبرز أهداف دوال الاختزال بشكل عام التأكد من صحّة الملفّات المستلمة عن طريق قنوات الإرسال غير الآمنة، تعمل دالّة MD5 مثل نظيراتها من دوال التشفير على اختزال كامل الرسالة إلى قيمة اختزال نهائيّة، ترسل مع الرسالة فتُمكّن المستقبل عند اختزاله الرسالة مُجدّدًا بعد استلامها من التأكّد من كونها لم تُعدّل أو تعطب في الطريق.
2-علم التوقيع الرقمي (Digital Signature):
هي ملفّات تُرسل مع الرسائل المُشفّرة أو غير المشفّرة بغرض إثبات هويّة المُرسل، حيث تضمن لنا ألاّ يقوم الأشخاص غير المخوّلون بانتحال شخصيّة أخرى موثوقة. ونظرًا لكون التواقيع الرقميّة تعتبر معرّفات لمستخدمها؛ فإنه ينبغي أن نضمن عدم وجود أكثر من توقيع يملك الرّقم ذاته، وهذه إحدى المشاكل التي تواجه علم الاختزال ويُطلق عليها مشكلة يوم الميلاد.
تضمن MD5 تفرّد قيمة الاختزال في مجال قدره 2^64 والذي عُدّ رقمًا مناسبًا لاستخدام التواقيع الرقمية حتّى تم اختراقها.
3-كلمة المرور (Password): (Authentication)
من أجل الحفاظ على خصوصيّة المستخدمين، سواءً في الشركات أو الأجهزة الشخصيّة، فإنّ كلمات المُرور تُخزّن مُختزلة في قاعدة البيانات للحدّ من استفادة الشخص المُخترق منها إن أمكنه الوصول إليها، وتُعتبر MD5 أكثر دوال الاختزال استخدامًا في مجال كلمة المرور وتعريف المستخدم في الوقت الحاليّ.
السؤال ٥: ما هو التشفير بين الطرفيات او التشفير حتى النهاية؟.
في الاتصالات، التشفير بين الطرفيات (بالإنجليزية: End-to-end encryption) هو التشفير بحيث لا يقرأ الرسائل المبعوثة سوى أصحابها، بمعنى أن الاتصالات تظل مشفرة من نقطة النهاية الأولى وحتى نقطة النهاية الثانية واللتين تكونان طرفي الاتصال.
ولا يستطيع أي شخص ثالث قراءتها بما فيها الحكومات والسلطات ومقدمي الخدمة، حيث يكون هذا التشفير معروفا فقط بين الشخصين ويكون عشوائيا. ولا تخزن هذه الرسائل في أي خادوم حيث تكون فقط عند الشخصين المتخاطبين. هذا النوع من التشفير صُمم لمنع العبث والتنصت على الرسائل المبعوثة بين الطرفين.
في هذا النوع من التشفير لا بد أن تكون المفاتيح المستخدمة للتشفير معروفة فقط لطرفي الاتصال، وذلك يتم عن طريق تشفير البيانات باستخدام سلسلة من الرموز التي تم ترتيبها مسبقًا. كما أن هنالك طريقة أخرى من خلال تبادل مفتاح سري باستخدام تبادل مفتاح ديفي هيلمان.
السؤال ٦: ما هو تبادل مفتاح ديفي هيلمان؟.
يرجع الفضل في إظهار مفهوم التشفير الغير متناظر إلى الرائدين Whitfield Diffie و Martin Hellman, حيث قدَّما هذا المفهوم لأول مرة في المؤتمر الوطني للحاسوب في عام 1976.
قبل أن يتم نشره بعد بضعة أشهر في “التوجهات الجديدة في علم التشفير” (New Directions in Cryptography).
يظل المخترع الأب مُختفيا خلف الكواليس – كما يحدث دائما في تاريخ التشفير – إذْ يعتبر البعض أن الباحث الأمريكي Ralph Merkle هو أول من اكتشف فكرة “تشفير المفتاح العام” (Cryptography Asymmetric) بشكل مستقل, رغم أن كتاباته عن الموضوع لم تُنشر إلا مؤخرا.
تُعتبر خوارزمية D-H الأول من نوعها في موضوع تبديل المفاتيح, حيث تسمح لشخصين (عادة ما يُطلق عليهما Alice و Bob) بتبادل بيانات حساسة دون أن يفهمها الطرف الثالث (المتصنت) حتى و لو حصل على نسخة منها. تعتمد الخوارزمية في عملها على إنشاء مفتاح سري مشترك يمكن استخدامه فيما بعد لتشفير المحادثات باستخدام خوارزمية تشفير مفتاح متماثل Symmetric-key.
شرح البروتوكول:
١-ليكن “ا” و “ب” العددان الصحيحان اللذان اختارهما كل من Alice و Bob علناً, “ا” و “ب” يجب أن يكونا أوليين فيما بينهما.
٢-سريا، تختار Alice بدورها عددا صحيحا بشكل عشوائي, نُسميه “ج”، ثم تحسب العدد التالي “د”:
د=باقي قسمة العدد (ب قوة ج) على “ا”.
ثم تُرسل علناً العدد الجديد “د” إلى Bob.
٣-يقوم Bob بنفس الحركة السابقة: يختار بشكل سري عددا عشوائيا “ه” ثم يحسب العدد التالي:
و=باقي قسمة العدد (ب قوة ه) على “ا” ثم يُرسل الناتج إلى Alice.
٤-من الآن فصاعدا, كل طرف يملك نتيجة حساب الآخر، Alice ما عليها سوى حساب ما يلي:
ز= باقي قسمة العدد ( و قوة ج) على “ا”.
و Bob ما عليه سوى حساب ما يلي:
ح=باقي قسمة العدد (د قوة ه) على “ا”.
و انتهى الأمر !.
سيجدان ان “ح=ز”.
مثال تطبيقي:
1-المسألة العامة (التي تظهر على الأنترنت للجميع).
1-فلنختر عشوائيا عددا أوليا مع p و أقل منه و ليكن p=419 (احتفظ بالرقم الذي اخترته و لا تخبر به أحدا).
2-فلنختر عدد عشوائيا مشتركا أوليا مع p و أصغر منه و ليكن: g=7.
2-ما يظهر في شاشة عرض الطرف الأول B:
Bx=344
(تم اختياره عشوائيا من خلال المسألة العامة التي طرحت على الشاشة للعامة).
يقوم بحساب العدد By.
باقي قسمة العدد (7 قوة 344) على 419
النتيجة By=49
يطلب من الطرف الثاني ارسال Ay (Ay=208)
ثم يحسب ذهنيا العدد s:
باقي قسمة العدد (Ay قوة Bx) على 419.
النتيجة s =107.
3-ما يظهر في شاشة عرض الطرف الأول A:
Ax=178
(تم اختياره عشوائيا من خلال المسألة العامة التي طرحت على الشاشة للعامة).
يقوم بحساب العدد Ay.
باقي قسمة العدد (7 قوة 178) على 419.
النتيجة Ay=208.
يطلب من الطرف الثاني ارسال(By=49) By.
ثم يحسب ذهنيا العدد s:
باقي قسمة العدد (By قوة Ax) على 419.
النتيجة: s=107.
بهذا نكون قد انهينا الورشة الأولى.
التطبيق ٠٦:
١-ما هو التشفير؟.
٢-ما أنواع التشفير؟.
٣-طبق تبادل مفتاح ديفي هيلمان بحيث المسألة المعروضة على العامة هي:
1-فلنختر عشوائيا عددا أوليا مع العدد p و أقل منه و ليكن p=13. (احتفظ بالعدد الذي اخترته و لا تخبر به أحدا).
2-فلنختر عددا مشتركا اوليا مع p و أصغر منه و ليكن:g=9.
ترسل الاجابات مرفقة برقم ID و الاسم الكامل الى واتساب المنصة: 00213668251213
بالتوفيق للجميع.
يمكنك عزيزي الزائر وضع تعليقاتك واقتراحاتك معنا فتفضل مشكورا على المتابعة