كانت أول مرة أقرأ فيها عن مصطلح "تشفير البيانات" في مقال عن هواتف شاومي حيث أن جميع بيانات الهاتف مشفرة بشكل كامل، هذا يعني أنه لن يتم الإتصال مع الهاتف إلا بطريقة رسمية وسليمة ولن تستطيع كسر حمايتها للوصول إلى هذه البيانات، ولكن كيف يحدث ذلك؟ هذا ما سنتعرف عليه في مساهمتنا حول تجربتي في تشفير البيانات.
ما هو تشفير البيانات
هو عملية تحويل البيانات من شكلها الطبيعي إلى شكل آخر ليصعب قرأتها أو حتى الوصول إليها من قبل أي جهة كانت بهدف المحافظة على أمن وسلامة البيانات ولا يتم التعامل معها إلا بالطرق السليمة والآمنة.
فكرة تشفير البيانات
التشفير ليس من اختراع العصر الرقمي. سيعرف هواة التاريخ أن علم التشفير يعود إلى مصر في العصور القديمة، حيث كانت الرسائل السرية تُشفَّر عادةً باستخدام استبدال الرموز على سبيل المثال، تعتمد على استبدال التشفير حرفًا واحدًا بآخر بعدد ثابت من المسافات أسفل الأبجدية.
أما اليوم، فيبقى المبدأ الأساسي كما هو، كيف؟ حيث يأخذ التشفير الرقمي نصًا يمكن قراءته (يُعرف أيضًا باسم نص عادي) ويقوم بتشويشها، ومع ذلك، يتم تحقيق ذلك من خلال خوارزميات التشفير الأكثر تعقيدًا وقوة من سلفهم البديل الأبجدي الأحادي، حيث أنه لدينا متغيرات، تُعرف أيضًا باسم المفاتيح ، يتم إنشاؤها بشكل عشوائي وفريدة من نوعها، تقوم بعض الأنظمة بإنشاء مفاتيح جديدة لكل جلسة.
هذا يعني أنه إذا أراد أحد المهاجمين سرقة معلومات بطاقتك الائتمانية، على سبيل المثال، فلن يتعين عليهم فقط معرفة الخوارزمية المستخدمة لتشفير البيانات ولكن أيضًا ما هو المفتاح، هذه ليست مهمة سهلة بأي حال من الأحوال، وهذا هو السبب في أن التشفير مقاوم للغاية لهجمات القوة الغاشمة force attacks، وهذا أيضًا سبب كونه أحد أفضل الطرق لحماية بياناتك الحساسة عبر الإنترنت.
أنواع التشفير
يوجد العديد من انواع تشفير البيانات ولكن المستخدم منها وبكثرة نوعين أساسيين وهما كالتالي :
التشفير المتماثل: وهي الطريقة التقليدية في تشفير الرسائل حيث يتم استخدام مفتاح واحد يتم من خلاله كلا من عمليتي التشفير وفك التشفير؛ وأهم ما يتم التركيز عليه في هذه الطريقة هو الحفاظ على أمن وسرية المفتاح لأنه يمكن استخدامه في كلا الناحيتين. ويجب إيجاد طريقة آمنة ومضمونة لإرسال هذا المفتاح.
ويوجد العديد من الخوارزميات التي تعتمد مبدأ التشفير المتماثل مثل: Iii, AES, DES, IDEA, 3DES, blowfish.
التشفير الغير متماثل: يسمى بتشفير المفتاح العام؛ حيث تحتوي هذه الطريقة على نوعين من المفاتيح المفتاح العام والمفتاح الخاص. المفتاح العام هو المفتاح الذي يستخدم في التشفير والمفتاح الخاص يستخدم في عملية فك التشفير ويتم التشفير بأن تقوم بتوزيع المفتاح العام لمن يريد إرسال الرسائل إليك وتحتفظ بالمفتاح الخاص لك كي تتمكن أنت فقط من فتح هذه الرسائل؛ وتتميز هذه الطريقة بكونها أكثر أمانا من السابقة نظرا لكون من يمتلك المفتاح الخاص هو فقط من سيتمكن من فتح الرسالة أما من يمتلك المفتاح العام فهو يستطيع كتابة الرسائل فقط وليس فتحها.
ويوجد العديد من الخوارزميات التي تعتمد مبدأ التشفير الغير المتماثل مثل: PGP, DSA, Deffie-Hellman, Elgamal, RSA
تجربتي مع تشفير Deffie
كنت أحتاج إلى بناء تشفير لقاعدة بيانات محادثات عبر موقع إلكتروني، هدف هذه المحادثات عملية للغاية حيث تسمح لمجموعتين من استقبال وإرسال البيانات بشكل مشفر مع الاحتفاظ بالمفتاح السري الخاص بفتح هذا التشفير لكلا المجموعتين، ولاكن كيف يتم ذلك؟ دعني أخبرك بخورزمية التشفير التالية :
- ليكن لدينا متصل أول، ومتصل ثاني لديهما العددان الصحيحان B,N اللذان اختارهما كلا من المتصل الأول والمتصل الثاني ويجب أن يكون العددان أولين فيما بينهما.
- يختار المتصل الأول بدوره عددا صحيحا بشكل عشوائي, نسميه a, ثم تحسب العدد N%Bª = A ثم ترسل – علناً – العدد الجديد إلى المتصل الثاني.
- يقوم المتصل الثاني بنفس الحركة السابقة: يختار بشكل سري عددا عشوائيا g ثم يحسب N%B=g ثم يرسل الناتج إلى المتصل الأول.
- من الآن فصاعدا، كل طرف يملك نتيجة حساب الآخر، كل ما عليها هو حساب قيم المتصل الاول و المتصل الثاني وفق الخوارزمية.
ما هي تجاربكم في تشفير البيانات؟ وما هي الخوارزمية التي اتبعتموها في ذلك ؟