بسم الله الرحمن الرحيم
مقدمة : عُرف علم التشفير أو التعمية منذ القدم، حيث استخدم في المجال الحربي والعسكري. فقد ذكر أن أول من قام بعملية التشفير للتراسل بين قطاعات الجيش هم الفراعنة. وكذلك ذكر أن العرب لهم محاولات قديمة في مجال التشفير. و استخدم الصينيون طرق عديدة في علم التشفير والتعمية لنقل الرسائل أثناء الحروب. فقد كان قصدهم من استخدام التشفير هو إخفاء الشكل الحقيقي للرسائل حتى لو سقطت في يد العدو فإنه تصعب عليه فهمها. وأفضل طريقة استخدمت في القدم هي طريقة القصير جوليوس وهو أحد قياصرة الروم. أما في عصرنا الحالي فقد باتت الحاجة ملحة لاستخدام هذا العلم "التشفير" وذلك لإرتبط العالم ببعضه عبر شبكات مفتوحة. وحيث يتم استخدام هذه الشبكات في نقل المعلومات إلكترونياً سواءً بين الأشخاص العاديين أو بين المنظمات الخاصة والعامة، عسكرية كانت أم مدنية. فلابد من طرق تحفظ سرية المعلومات. فقد بذلت الجهود الكبيرة من جميع أنحاء العالم لإيجاد الطرق المثلى التي يمكن من خلالها تبادل البيانات مع عدم إمكانية كشف هذه البيانات.
ومازال العمل والبحث في مجال علم التشفير مستمراً وذلك بسبب التطور السريع للكمبيوتر والنمو الكبير للشبكات وبخاصة الشبكة العالمية الإنترنت.
ما هو التشفير أو التعمية (Cryptography ) :
التشفير هو العلم الذي يستخدم الرياضيات للتشفير وفك تشفير البيانات. التشفير يُمكّنُك من تخزين المعلومات الحساسة أو نقلها عبر الشبكات غير الآمنة- مثل الإنترنت- وعليه لا يمكن قراءتها من قبل أي شخص ما عدا الشخص المرسل لـه. وحيث أن التشفير هو العلم المستخدم لحفظ أمن وسرية المعلومات، فإن تحليل وفك التشفير (Cryptanalysis) هو علم لكسر و خرق الاتصالات الآمنة.
أهداف التشفير:
يوجد أربعة أهداف رئيسية وراء استخدام علم التشفير وهي كالتالي:
1. السرية أو الخصوصية ( Confidentiality ) :
هي خدمة تستخدم لحفظ محتوى المعلومات من جميع الأشخاص ما عدا الذي قد صرح لهم الإطلاع عليها.
2.تكامل البيانات (Integrity ) :
وهي خدمة تستخدم لحفظ المعلومات من التغيير ( حذف أو إضافة أو تعديل ) من قبل الأشخاص الغير مصرح لهم بذلك.
3.إثبات الهوية ( Authentication ) :
وهي خدمة تستخدم لإثبات هوية التعامل مع البيانات ( المصرح لهم ).
4.عدم الجحود ( Non-repudiation ) :
وهي خدمة تستخدم لمنع الشخص من إنكاره القيام بعمل ما.
إذاً الهدف الأساسي من التشفير هو توفير هذه الخدمات للأشخاص ليتم الحفاظ على أمن معلوماتهم.
أنواع التشفير :
حالياً يوجد نوعان من التشفير وهما كالتالي :
1. التشفير التقليدي. ( Conventional Cryptography ).
2. تشفير المفتاح العام. ( Public Key Cryptography ).
والنوع الثالث هو الذي تتوصل إليه أنت إن شاء الله ..... ؟؟؟؟
ممكن عزيز القارئ انك تقول في قلبك يكفينا مقدمات ولندخل في صلب الموضوع... ليكن دالك
من منا لا يعرف المعادلات الرياضية التي تعلمانها في المدرسة ....؟؟؟؟
مثال :
ع = س + 13 أي كلما أعطينا قيمة لي س نجد قيمة ع
قيم س |
1 |
2 |
3 |
4 |
قيم ع |
14 |
15 |
16 |
17 |
السؤال المطروح ماهي فائدة المعادلة في التشفير ...؟؟
الجواب : تخيل أن الحروف هي عبارة عن أرقام هدا ليس خيال بل حقيقة عند جهاز الكمبيوتر.
مثلا :
1= A 8= H 15= O 22= V
2= B 9= I 16= P 23= W
24= X 17= Q 10= J 3= C
4= D 11= K 18= R 25= Y
5= E 12= L 19= S 26= Z
6= F 13= M 20= T
7= G 14= N 21= U
مجال الحروف [Z….A] ومجل الأرقام [26….1]
الآن نعود إلى المعادلة السابقة :
ع = س + 13
قيم س |
A |
B |
C |
D |
قيم ع |
N |
O |
P |
Q |
الشرح : أي عندما أعطينا لي س القيمة A تحصلنا على قيمة ع وهي N
س : يمثل الحرف الأصلي
ع : يمثل الحرف المشفر
أي الحرفA يصبحN بعد عملية التشفير
ع = س + 13
13 + A = N
14= 1 + 13
اضن أن الجميع فهم فائدة المعادلة في التشفير
ألان نريد تشفير كلمة ABDELMALEK باستعمال المعادلة السابقة :
عندما نعطي لي س الحرف A نجد أن ع تصبح قيمتها N
عندما نعطي لي س الحرف B نجد أن ع تصبح قيمتها O
عندما نعطي لي س الحرف D نجد أن ع تصبح قيمتها Q
عندما نعطي لي س الحرف E نجد أن ع تصبح قيمتها R
عندما نعطي لي س الحرف L نجد أن ع تصبح قيمتها Y
عندما نعطي لي س الحرف M نجد أن ع تصبح قيمتها Z
عندما نعطي لي س الحرف A نجد أن ع تصبح قيمتها N
عندما نعطي لي س الحرف L نجد أن ع تصبح قيمتها Y
عندما نعطي لي س الحرف E نجد أن ع تصبح قيمتها R
عندما نعطي لي س الحرف K نجد أن ع تصبح قيمتها X
أي عند تشفير كلمة ABDELMALEK بمعادلة السابقة نجد NOQRYZNYRX
ملاحظة هامة
فك التشفير يكون بإدخال النص المشفر إلى المعادلة س = ع – 13
على فكرة هده المعادلة هي المعادلة المستعملة في خوارزمية التشفير ROOT13
وبهدا نكون قد أتممنا الدرس الأول في علم التشفير إن فهت هدا الدرس فهما جيدا فتكون قد خطيت خطوة إلى الأمام ...... نلتقي في الدرس التطبيقي إن شاء الله تطبيق هده الخوارزمية تكون على لغة البرمجة Pascal
\\\\\\\ مشروع ألف ميل خطوة \\\\\\\
ساحة النقاش