«التشفير Encryption»: الفرق بين المراجعتين

من SalamaTech Wiki سلامتك ويكي
اذهب إلى: تصفح، ابحث
[مراجعة منقحة][مراجعة منقحة]
ط (تنقّل في الكتيب eBook Navigation)
ط (التشفير بالمفتاح المتناظر Symmetric Key Encryption)
 
(48 مراجعة متوسطة بواسطة نفس المستخدم غير معروضة)
سطر 1: سطر 1:
 
[[ملف:Encryption.png]]
 
[[ملف:Encryption.png]]
  
==مقدمة==
+
=مقدمة=
 
+
<onlyinclude>
 
تشفير المعلومات  (إنكريبشن Encryption) ضمن إطار [[علم التعمية Cryptography]] هو عملية تحويل المعلومات من شكلها المقروء أو الواضح إلى شكل لا يمكن معه قراءتها أو معاينتها إلا للمخولين بذلك.
 
تشفير المعلومات  (إنكريبشن Encryption) ضمن إطار [[علم التعمية Cryptography]] هو عملية تحويل المعلومات من شكلها المقروء أو الواضح إلى شكل لا يمكن معه قراءتها أو معاينتها إلا للمخولين بذلك.
  
سطر 9: سطر 9:
 
يفيد تشفير المعلومات إذا في اخفاء محتوى الرسائل المتبادلة بين شخصين عن أي شخص يتعرض هذه الرسالة ويحاول قراءتها. كما يفيد التشفير في ابقاء محتوى الملفات المشفرة غير مقروء في حال وقعت هذه الملفات في أيدي شخص أو أشخاص غير مخولين لقراءة محتواها كوقوع القرص الصلب في أيدي الاشخاص الخطأ.
 
يفيد تشفير المعلومات إذا في اخفاء محتوى الرسائل المتبادلة بين شخصين عن أي شخص يتعرض هذه الرسالة ويحاول قراءتها. كما يفيد التشفير في ابقاء محتوى الملفات المشفرة غير مقروء في حال وقعت هذه الملفات في أيدي شخص أو أشخاص غير مخولين لقراءة محتواها كوقوع القرص الصلب في أيدي الاشخاص الخطأ.
  
كما لمرسل الرسالة أو لصاحب المعلومات المصلحة في ابقاء المعلومات والرسائل سرية كذلك هناك مصلحة لدى معترضي الرسائل لكسر تشفير الرسائل. كسر التشفير علم قائم بحد ذاته بدأ مع العالم الكندي الذي ابتكر طريقة لكسر تشفير قيصر هي طريقة [[التحليل الاحصائي Frequency Analysis]] مكنت مستخدمها من قراءة الرسالة المعترضة المشفرة بتشفير قيصر. هذا بدوره دفع إلى تطور وسائل تشفير أكثر "جودة" ما دفع علم كسر التشفير إلى الأمام وما يزال هذان العلمان يطاردا بعضهما حتى اليوم.
+
كما لمرسل الرسالة أو لصاحب المعلومات المصلحة في ابقاء المعلومات والرسائل سرية كذلك هناك مصلحة لدى معترضي الرسائل لكسر تشفير الرسائل. كسر التشفير علم قائم بحد ذاته بدأ مع "الكِنْدي" العالم والفيلسوف العربي الذي ابتكر طريقة لكسر تشفير قيصر هي طريقة [[التحليل الاحصائي Frequency Analysis]] مكنت مستخدمها من قراءة الرسالة المعترضة المشفرة بتشفير قيصر. هذا بدوره دفع إلى تطور وسائل تشفير أكثر "جودة" ما دفع علم كسر التشفير إلى الأمام وما يزال هذان العلمان يطاردا بعضهما حتى اليوم.</onlyinclude>
 +
 
 +
=كسر التشفير=
 +
 
 +
يحاول الباحثون في مجال أمن البيانات والمهاجمون على حد سواء إيجاد ثغرات في خوارزميات التشفير هذه تتيح للمهاجم استنباط مفتاح التشفير جزئيا أو كليا، أو استرجاع البيانات المشفرة جزئيا أو كليا. تسمى هذه المحاولات ب[[الهجمات على خوارزمية التشفير Attack of Cryptographic Cipher]]، كالبحث مثلا عن ثغرة في خوارزمية AES. في حين يحاول آخرون إيجاد ثغرات في تطبيق معين يستخدم خوارزمية تشفير معينة وليس الخوارزمية نفسها، كالبحث مثلا عن ثغرة في تطبيق [[AESCrypt]]، وتسمى هذه الهجمات ب[[هجمات القناة الجانبية Side-Channel Attacks]]، وقد يحاول آخرون تخمين المفتاح المستخدم فيما يسمى عادة ب[[الهجمات على كلمات السرّ Malicious Cyber Attacks on Passwords]]
 +
 
 +
تتميز إذا خوارزميات التشفير فيما بينها من ناحية الأمان بوجود وبقدرة الهجمات على خزارزمية التشفير من استنباط مفتاح التشفير في وقت معقول وموارد معقولة. فوجود هجوم على خوارزمية ما لا يكفي لاعتبارها سيئة إذ قد يحتاج هذا الهجوم إلى موارد هائلة أو إلى وقت طويل جدا. لكن وبسبب التطور التقني، وتضاعف قدرة الحواسيب التقليدية كل سنتين تقريبا، وظهور حوسبة الكم Quantum Computing وقد تتحول خارزمية ما من خوارزنية آمنة إلى خوارزمية غير آمنة بسبب وجود هجوم أصبح تنفيذه في وقت وموارد معقولة ممكنا.
 +
 
 +
=أنواع التشفير=
 +
 
 +
على الرغم من وجود خوارزميات كثيرة جدا للتشفير مثل AES، Blowfish، RSA، الخ. إلا أنه يمكن تصينف هذه الخوارزميات المخنلفة ضمن صنفين متمايزين هما التشفير بالمفتاح المتناظر، والتشفير بالمفاتيح غير المتناظرة. وسنحاول فيما يلي توضيح هذين الصنفين:
 +
 
 +
==التشفير بالمفتاح المتناظر Symmetric Key Encryption==
 +
 
 +
في هذا النوع من أنواع خوارزميات التشفير، يتم استخدام مفتاح التشفير Encryption Key ذاته للتشفير Encryption ولفكّ التشفير Decryption.
 +
 
 +
بما أن مفتاح التشفير هو ذاته مفتاح فك التشفير فإن ذلك يقتضي أن تقوم الجهة التي قامت بتشفير مجلد ما بخوارزمية تشفير محددة ومفتاح تشفير محدد، بمشاركة هذا المفتاح مع الجهة التي ترغب بفك تشفير المجلد للاطلاع على محتوياته. لذلك لا تعتبر هذه الطريقة للتشفير طريقة آمنة لتشفير البيانات المتبادلة على منصات التواصل مثلا أو لتبادل الملفات المشفرة، إن يكفي لجهة تستطيع التنصت على البيانات المتبادلة وترغب بفك تشفير البيانات المتبادلة، اعتراض مفتاح التشفير واستخدامه في فك تشفير البيانات.
 +
 
 +
لذلك تعتبر هذه الخوارزميات جيدة عن عدم الحاجة لمشاركة البيانات المشفرة، أو عند عدم الحاجة لمشاركة مفتاح التشفير. وغير جيدة بالمقارنة مع خوارزميات التشفير بالمفتاح غير المتناظر Asymmetric Key Encryption.
 +
 
 +
لكن وفي حال استخدام هذه الطريقة في تبادل البيانات المشفرة، ننصح بمشاركة مفتاح التشفير بطريقة آمنة مع الجهة (الجهات) المستقبلة، كارساله عبر تطبيقات التواصل مثل [[واير Wire]] أو [[سيغنال Signal]] التي تدعم [[التشفير طرف إلى طرف End-to-End Encryption]].
 +
 
 +
تقسم هذه الخوارزميات بدورها لقسمين رئيسيين هما Stream Ciphers و Block Ciphers، ويوجد أمثلة كثيرة عن خوارزميات تشفير مفتاح متناظر من هذا النوع أو ذاك نذكر منها:
 +
* تشفير Vigenere Stream Cipher
 +
* AES Block Cipher
 +
* Blowfish Block Cipher
 +
* GCM Block Cipher
 +
 
 +
يبين الشكل التالي عملية التشفير بالمفتاح المتناظر، حيث يتم تشفير النص المقروء في أيمن الشكل إلى مجموعة مبهمة من الرموز في يسار الشكل، باستخدام خوارزمية Blowfish CRC وكلمة السرّ [email protected]@. وأيضا يوضح الشكل العملية المقابلة، ابتداءا بالرموز المبهمة على يسار الشكل حيث يمكن الحصول على النص المقروء في يمين الشكل عبر فك التشفير باستخدام الخوارزمية ذاتها ومفتاح التشفير ذاته. استخدامنا لمفتاح التشفير ذاته في العمليتين يعني بالضرورة أن خوارزمية التشفير هذه هي من نوع التشفير بالمفتاح المتناظر.
 +
 
 +
[[ملف:Symmetric key encryption blowfish ar.png|640px]]
 +
 
 +
==التشفير بالمفاتيح غير المتناظرة Asymmetric Keys Encryption==
 +
<!--
 +
Public-key cryptography, or asymmetric cryptography, is a cryptographic system that uses pairs of keys: public keys which may be disseminated widely, and private keys which are known only to the owner. The generation of such keys depends on cryptographic algorithms based on mathematical problems to produce one-way functions. Effective security only requires keeping the private key private; the public key can be openly distributed without compromising security.[1]
 +
 
 +
In such a system, any person can encrypt a message using the receiver's public key, but that encrypted message can only be decrypted with the receiver's private key.
 +
 
 +
Robust authentication is also possible. A sender can combine a message with a private key to create a short digital signature on the message. Anyone with the sender's corresponding public key can combine the same message and the supposed digital signature associated with it to verify whether the signature was valid, i.e. made by the owner of the corresponding private key.[2][3]
 +
 
 +
Public key algorithms are fundamental security ingredients in modern cryptosystems, applications and protocols assuring the confidentiality, authenticity and non-repudiability of electronic communications and data storage. They underpin various Internet standards, such as Transport Layer Security (TLS), S/MIME, PGP, and GPG. Some public key algorithms provide key distribution and secrecy (e.g., Diffie–Hellman key exchange), some provide digital signatures (e.g., Digital Signature Algorithm), and some provide both (e.g., RSA).-->
 +
{{template:Paragraph_Under_Construction}}
 +
 
 +
=استخدامات شائعة للتشفير=
  
==تشفير الأقراص والملفات==
+
===تشفير الأقراص والملفات===
  
 
برامج تشفير الأقراص هي برامج مصممة لحماية المعلومات الموجودة على الأقراص عبر تقنية تجعل المعلومات المخزنة على القرص مشفرة. تقوم هذه البرامج بإظهار محتوى الملفات المشفرة الموجودة على القرص المشفر عبر فك تشفيرها عند طلبها من قبل مستخدم يملك كلمة السر الصحيحة التي استخدمت لحماية المعلومات المشفرة من الوصول لغير المصرح لهم قراءة محتويات القرص.
 
برامج تشفير الأقراص هي برامج مصممة لحماية المعلومات الموجودة على الأقراص عبر تقنية تجعل المعلومات المخزنة على القرص مشفرة. تقوم هذه البرامج بإظهار محتوى الملفات المشفرة الموجودة على القرص المشفر عبر فك تشفيرها عند طلبها من قبل مستخدم يملك كلمة السر الصحيحة التي استخدمت لحماية المعلومات المشفرة من الوصول لغير المصرح لهم قراءة محتويات القرص.
  
برامج تشفير الأقراص يمكن أن تستخدم لاخفاء بيانات ضمن القرص المشفر بحيث يستطيع صاحب البيانات إخفاء حقيقة وجودها في حين لا يمكن لأحد إثبات وجود هذه المعلومات في ما يسمى [[الإنكار القابل للتصديق Plausible Deniability]] لتوضيح ذلك نفترض المثال التالي:
+
برامج تشفير الأقراص يمكن أن تستخدم لاخفاء بيانات ضمن القرص المشفر بحيث يستطيع صاحب البيانات إخفاء حقيقة وجودها في حين لا يمكن لأحد إثبات وجود هذه المعلومات في ما يسمى [[النكران القابل للتصديق Plausible Deniability]] لتوضيح ذلك نفترض المثال التالي:
 +
 
 +
رامي ناشط لديه جدول بمعلومات مهمة جدا, يقوم رامي بانشاء قرص مشفر ويستخدم كلمة سر أولى لحماية هذا القرص ويضع معلومات غير مهمة جدا ضمن القرص المشفر. بعد ذلك يقوم رامي بإخفاء الجدول ضمن القرص باستخدام كلمة سر ثانية. للأسف تم اعتقال رامي ومصادره حاسبه. يقوم المحقق بمعاينة الحاسب ويلاحظ وجود قرص مشفر. يقوم المحقق بتعذيب رامي للحصول على كلمة السر الخاصة بالقرص. رامي خوفا من التعذيب يقوم بذكر كلمة السر الأولى. التي يستخدمها المحقق لمعاينة الملفات المشفرة, التي قلنا سابقا أنها غير مهمة جدا. لكن ما لا يعلمه المحقق أن القرص يحتوي معلومات مهمة مخفية لا يستطيع المحقق سؤاله عنها لعدم وجود دليل على وجودها. ويمكن لرامي أن ينكر وجودها في حال سؤل عنها دون أن يكون للمحقق أي دليل يشير إلى وجودها. ربما بقليل من الحظ تنقذ هذه الخاصية حياة رامي.
 +
 
 +
أحد أكثر برامج تشفير الأقراص التي تملك هذه الخاصية هو برنامج [[ڤيراكريبت VeraCrypt]]. ترو كريبت برنامج تشفير أقراص يعمل على أنظمة تشغيل متعددة, سهل الاستخدام وله سمعة طيبة. ويعطي مستخدمه امكانية تشفير المجلدات وأيضا تشفير الأقراص الصلبة والمحمولة. بالإضافة لذلك يوفر تروكريب أيضا امكانية [[النكران القابل للتصديق Plausible Deniability]] عبر المجلدات المخفية ضمن القرص المشفر. للمزيد حول البرنامج وطريقة استخدامه اتبع الرابط إلى صفحة برنامج [[ڤيراكريبت VeraCrypt]].
 +
 
 +
هناك أيضا برامج أخرى لتشفير الملفات مثل برنامج [[AES Crypt]]. وهو برنامج سهل الاستخدام متوفر على أنظمة تشغيل متعددة يعتمد على معيار  Advanced Encryption Standard AES لتشفير الملفات. لمزيد من المعلومات عن البرنامج وطريقة استخدامه اتبع الرابط إلى صفحة برنامج [[AES Crypt]]. وبالنسبة للهواتف الذكية هناك تطبيق [[كريبتونايت Cryptonite]] للأجهزة العاملة بنظام أندرويد.
 +
 
 +
نجد أيضا تطبيقات أو برامج تتخصص بحماية الملفات المخزنة لدى خدمات التخزين السحابي مثل [[دروببوكس Dropbox]] و[[غوغل درايف Google Drive]]. تقوم معظم هذه الخدمات بتخزين الملفات على خوادمها بشكل مشفرّ. وينم التشفير وفك التشفير على المخدمات ذاتها. إذا يستطيع مزود خدمة التخزين السحابي أن يقوم بفك تشفير الملفات المخزنة لديه والاطلاع عليها في حال أراد ذلك أو حال رضوخه لقرار محكمة مثلا. لحماية محتوى الملفات الملفات من مزود خدمة التخزين السحابي أو السلطات، يمكن تشفيرها على جهاز المستخدم بحيث ترفع ملفات مشفرة سلفا إلى مزود الخدمة. ويقوم جهاز المستخدم بفك التشفير أيضا على الجهاز بعيدا عن مخدمات مزود الخدمة. ومن هذه البرامج، برنامج [[بوكس كريبتور BoxCryptor]] المدفوع وبرنامج [[كريبتوميتر Cryptomator]] المجاني و[[مفتوح المصدر]]. وبالطبع يمكن الاستعاضة عن هذه التطبيقات عبر استخدام خدمة تخزين سحابي تدعم التشفير على جهاز المستخدم مثل خدمة [[سينك Sync]].
  
رامي ناشط لديه جدول بمعلومات مهمة جدا, يقوم رامي بانشاء قرص مشفر ويستخدم كلمة سر أولى لحماية هذا القرص ويضع معلومات غير مهمة جدا ضمن القرص المشفر. بعد ذلك يقوم رامي باخفاء الجدول ضمن القرص باستخدام كلمة سر ثانية. للأسف تم اعتقال رامي ومصادره حاسبه. يقوم المحقق بمعاينة الحاسب ويلاحظ وجود قرص مشفر. يقوم المحقق بتعذيب رامي للحصول على كلمة السر الخاصة بالقرص. رامي خوفا من التعذيب يقوم بذكر كلمة السر الأولى. التي يستهدمها المحقق لمعاينة الملفات المشفرة, التي قلنا سابقا أنها غير مهمة جدا. لكن ما لا يعلمه المحقق أن القرص يحتوي معلومات مهمة مخفية لا يستطيع المحقق سؤاله عنها لعدم وجود دليل على وجودها. ويمكن لرامي أن ينكر وجودها في حال سؤل عنها دون أن يكون للمحقق أي دليل يشير إلى وجودها. ربما بقليل من الحظ تنقذ هذه الخاصية حياة رامي.
+
===تشفير قرص نظام التشغيل===
  
أحد أكثر برامج تشفير الأقراص التي تملك هذه الخاصية هو برنامج [[تروكريبت TrueCrypt]]. ترو كريبت برنامج تشفير أقراص يعمل على أنظمة تشغيل متعددة, سهل الاستخدام وله سمعة طيبة. ويعطي مستخدمه امكانية تشفير المجلدات وأيضا تشفير الأقراص الصلبة والمحمولة. بالإضافة لذلك يوفر تروكريب أيضا امكانية [[الإنكار القابل للتصديق Plausible Deniability]] عبر المجلدات المخفية ضمن القرص المشفر. للمزيد حول البرنامج وطريقة استخدامه اتبع الرابط إلى صفحة برنامج [[تروكريبت TrueCrypt]].
+
تدعم أنظمة التشغيل إمكانية تشفير السواقة التي يوجد عليها نظام التشغيل بحيث لا يمكن الوصول إلى هذه المعلومات إلا بعد الاقلاع من نظام التشغيل وتسجيل الدخول بنجاح إلى حساب المستخدم. بعد تسجيل الدخول يقوم نظام التشغيل بإتاحة المعلومات الموجودة على القرص للمستخدم عند الحاجة لها بشكل مؤقت مبقيا عليها مشفرة على القرص. يذكر أيضا أن أنظمة تشغيل الهواتف الذكية سواء كانت iOS أو Android تدعم أيضا هذه الإمكانية.
  
هناك أيضا برامج أخرى لتشفير الملفات مثل برنامج [[AES Crypt]]. وهو برنامج سهل الاستخدام متوفر على أنظمة تشغيل متعددة يعتمد على معيار  Advanced Encryption Standard AES لتشفير الملفات. لمزيد من المعلومات عن البرنامج وطريقة استخدامه اتبع الرابط إلى صفحة برنامج [[AES Crypt]].
+
للمزيد حول هذه الميزة وكيفية إعدادها اتبع الرابط إلى المقالة التالية: [[تشفير قرص نظام التشغيل Operating System Disk Encryption]]
  
==تشفير رسائل البريد الالكتروني==
+
===تشفير رسائل البريد الإلكتروني===
  
تشفير رسائل البريد الالكتروني أمر ضروري جدا وأمر أساسي لضمان الخصوصية.
+
تشفير رسائل البريد الإلكتروني أمر ضروري جدا وأمر أساسي لضمان الخصوصية.
  
 
لتشفير رسائل البريد الالكتروني يتم الاعتماد على [[بروتوكول PGP لتشفير رسائل البريد الالكتروني|بروتوكول PGP]] وهي الأحرف الأولى للكلمات Pretty Good Privacy التي تعني بالعربية: خصوصية جيدة جدا. يتيح [[بروتوكول PGP لتشفير رسائل البريد الالكتروني|بروتوكول PGP]] امكانية توقيع رسالة ما الكترونيا وتشفيرها. بحيث لا يستطيع فك تشفيرها إلا الشخص الموجهة إليه تلك الرسالة. تجري عملية التشفير على جهاز المرسل وعملية فك التشفير على جهاز المستقبل باستخدام ما يسمى المفاتيح. [[بروتوكول PGP لتشفير رسائل البريد الالكتروني|بروتوكول PGP]] يقوم بتشفير محتوى الرسالة لكنه للأسف لا يشفر عنوان البريد الالكتروني ولا حساب صاحب البريد الالكتروني ولا حساب المستقبل. للمزيد حول بروتوكول PGP واستخدامه اتبع الرابط: [[بروتوكول PGP لتشفير رسائل البريد الالكتروني|بروتوكول PGP]]
 
لتشفير رسائل البريد الالكتروني يتم الاعتماد على [[بروتوكول PGP لتشفير رسائل البريد الالكتروني|بروتوكول PGP]] وهي الأحرف الأولى للكلمات Pretty Good Privacy التي تعني بالعربية: خصوصية جيدة جدا. يتيح [[بروتوكول PGP لتشفير رسائل البريد الالكتروني|بروتوكول PGP]] امكانية توقيع رسالة ما الكترونيا وتشفيرها. بحيث لا يستطيع فك تشفيرها إلا الشخص الموجهة إليه تلك الرسالة. تجري عملية التشفير على جهاز المرسل وعملية فك التشفير على جهاز المستقبل باستخدام ما يسمى المفاتيح. [[بروتوكول PGP لتشفير رسائل البريد الالكتروني|بروتوكول PGP]] يقوم بتشفير محتوى الرسالة لكنه للأسف لا يشفر عنوان البريد الالكتروني ولا حساب صاحب البريد الالكتروني ولا حساب المستقبل. للمزيد حول بروتوكول PGP واستخدامه اتبع الرابط: [[بروتوكول PGP لتشفير رسائل البريد الالكتروني|بروتوكول PGP]]
  
من المهم جدا الانتباه أنه قد يتمكن الأشخاص المتطفلون على الخصوصية من ملاحظة وجود رسالة مشفرة أو أكثر (إذا استطاعوا اختراق حساب البريد الالكتروني مثلا أو إذا كان لديهم الإمكانية لمراقبة وارد البريد كأن يكون حساب بريدك الالكتروني ملكا لمزود خدمة تحت سلطة جهاز أمني استبدادي). وربما قد يدفهم ذلك لمزيد من التطفل أو حتى الانتقال إلى مستوى الملاحقة الجسدية حسب الوضع والقوانين والامكانيات والمعلومات المتوفرة لدى المتطفلين على الخصوصية مهما كانوا. لذلك قد يكون استخدام بروتوكول التشفير مضرا.
+
من المهم جدا الانتباه أنه قد يتمكن الأشخاص المتطفلون على الخصوصية من ملاحظة وجود رسالة مشفرة أو أكثر (إذا استطاعوا اختراق حساب البريد الإلكتروني مثلا أو إذا كان لديهم الإمكانية لمراقبة وارد البريد كأن يكون حساب بريدك الإلكتروني ملكا لمزود خدمة تحت سلطة جهاز أمني استبدادي). وربما قد يدفهم ذلك لمزيد من التطفل أو حتى الانتقال إلى مستوى الملاحقة الجسدية حسب الوضع والقوانين والإمكانيات والمعلومات المتوفرة لدى المتطفلين على الخصوصية مهما كانوا. لذلك قد يكون استخدام بروتوكول التشفير مضرا.
 +
 
 +
لذلك ليس بالضرورة أن يكون تشفير رسائل البريد الإلكتروني أفضل الطرق لضمان سلامتك الجسدية... لكنه بالتأكيد أفضل طريقة لضمان إرسال رسائل بريد الكتروني لا يمكن إلا للمستقبل المقصود قراءتها.
 +
 
 +
===التشفير في منصات التواصل===
  
لذلك ليس بالضرورة أن يكون تشفير رسائل البريد الالكتروني أفضل الطرق لضمان سلامتك الجسدية... لكنه بالتأكيد أفضل طريقة لضمان إرسال رسائل بريد الكتروني لا يمكن إلا للمستقبل المقصود قراءتها.
+
{{template:Paragraph_Under_Construction}}
  
 
==تنقّل في الكتيب eBook Navigation==
 
==تنقّل في الكتيب eBook Navigation==
  
 
<!--[[كلمات السرّ Passwords |السابق: كلمات السرّ Passwords]]-->
 
<!--[[كلمات السرّ Passwords |السابق: كلمات السرّ Passwords]]-->
[[المصادقة Authentication |السابق: المصادقة Authentication]]
+
<!--[[المصادقة Authentication |السابق: المصادقة Authentication]]-->
 +
[[التحكم بالوصول Access Control|السابق: التحكم بالوصول Access Control]]
  
 
<!--[[أنظمة التشغيل Operating Systems| التالي: أنظمة التشغيل Operating Systems]]-->
 
<!--[[أنظمة التشغيل Operating Systems| التالي: أنظمة التشغيل Operating Systems]]-->
سطر 53: سطر 109:
 
[[التحليل الاحصائي Frequency Analysis]]
 
[[التحليل الاحصائي Frequency Analysis]]
  
[[الإنكار القابل للتصديق Plausible Deniability]]
+
[[النكران القابل للتصديق Plausible Deniability]]
 +
 
 +
[[تشفير القرص الصلب Hard disk encryption]]
  
 
[[تروكريبت TrueCrypt]]
 
[[تروكريبت TrueCrypt]]
 +
 +
[[ڤيراكريبت VeraCrypt]]
 +
 +
[[التشفير باستخدام OpenSSL]]
  
 
[[إي إي إس كريبت AES Crypt]]
 
[[إي إي إس كريبت AES Crypt]]
 +
 +
[[كريبتونايت Cryptonite]]
 +
 +
[[كريبتوميتور Cryptomator]]
  
 
[[بروتوكول PGP]]
 
[[بروتوكول PGP]]
سطر 70: سطر 136:
  
 
[http://www.asecuritysite.com/encryption Bill's Security Site.com - Encryption]
 
[http://www.asecuritysite.com/encryption Bill's Security Site.com - Encryption]
 +
 +
[https://www.youtube.com/watch?v=iUGr-gDdpDo&feature=youtu.be Where Does Encryption Happen and Speed Presentations]
 +
 +
[https://codebeautify.org/encrypt-decrypt صفحة لتشفير النصوص وفك التشفير وفق خوارزميات مختلفة بشكل مباشر أونلاين]
  
 
[[Category:التشفير Encryption]]
 
[[Category:التشفير Encryption]]

المراجعة الحالية بتاريخ 13:24، 11 ديسمبر 2019

Encryption.png

مقدمة

تشفير المعلومات (إنكريبشن Encryption) ضمن إطار علم التعمية Cryptography هو عملية تحويل المعلومات من شكلها المقروء أو الواضح إلى شكل لا يمكن معه قراءتها أو معاينتها إلا للمخولين بذلك.

تدل الآثار والوثائق التاريخية أن التشفير بدأ في مصر حوالي 2000 عام قبل الميلاد. وظهر أيضا في بلاد ما بين النهرين حوالي 1500 قبل الميلاد. ويذكر أن جيش اسبرطة استخدم التشفير في رسائله. في عهد الامبراطورية الرومانية,عرف عن الامبراطور الروماني يوليوس قيصر ومن تلاه تشفير الرسائل الموجهه لقادة الحربه باستخدام تشفير سمي باسمه: تشفير قيصر Caesar Code.

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

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

كسر التشفير

يحاول الباحثون في مجال أمن البيانات والمهاجمون على حد سواء إيجاد ثغرات في خوارزميات التشفير هذه تتيح للمهاجم استنباط مفتاح التشفير جزئيا أو كليا، أو استرجاع البيانات المشفرة جزئيا أو كليا. تسمى هذه المحاولات بالهجمات على خوارزمية التشفير Attack of Cryptographic Cipher، كالبحث مثلا عن ثغرة في خوارزمية AES. في حين يحاول آخرون إيجاد ثغرات في تطبيق معين يستخدم خوارزمية تشفير معينة وليس الخوارزمية نفسها، كالبحث مثلا عن ثغرة في تطبيق AESCrypt، وتسمى هذه الهجمات بهجمات القناة الجانبية Side-Channel Attacks، وقد يحاول آخرون تخمين المفتاح المستخدم فيما يسمى عادة بالهجمات على كلمات السرّ Malicious Cyber Attacks on Passwords

تتميز إذا خوارزميات التشفير فيما بينها من ناحية الأمان بوجود وبقدرة الهجمات على خزارزمية التشفير من استنباط مفتاح التشفير في وقت معقول وموارد معقولة. فوجود هجوم على خوارزمية ما لا يكفي لاعتبارها سيئة إذ قد يحتاج هذا الهجوم إلى موارد هائلة أو إلى وقت طويل جدا. لكن وبسبب التطور التقني، وتضاعف قدرة الحواسيب التقليدية كل سنتين تقريبا، وظهور حوسبة الكم Quantum Computing وقد تتحول خارزمية ما من خوارزنية آمنة إلى خوارزمية غير آمنة بسبب وجود هجوم أصبح تنفيذه في وقت وموارد معقولة ممكنا.

أنواع التشفير

على الرغم من وجود خوارزميات كثيرة جدا للتشفير مثل AES، Blowfish، RSA، الخ. إلا أنه يمكن تصينف هذه الخوارزميات المخنلفة ضمن صنفين متمايزين هما التشفير بالمفتاح المتناظر، والتشفير بالمفاتيح غير المتناظرة. وسنحاول فيما يلي توضيح هذين الصنفين:

التشفير بالمفتاح المتناظر Symmetric Key Encryption

في هذا النوع من أنواع خوارزميات التشفير، يتم استخدام مفتاح التشفير Encryption Key ذاته للتشفير Encryption ولفكّ التشفير Decryption.

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

لذلك تعتبر هذه الخوارزميات جيدة عن عدم الحاجة لمشاركة البيانات المشفرة، أو عند عدم الحاجة لمشاركة مفتاح التشفير. وغير جيدة بالمقارنة مع خوارزميات التشفير بالمفتاح غير المتناظر Asymmetric Key Encryption.

لكن وفي حال استخدام هذه الطريقة في تبادل البيانات المشفرة، ننصح بمشاركة مفتاح التشفير بطريقة آمنة مع الجهة (الجهات) المستقبلة، كارساله عبر تطبيقات التواصل مثل واير Wire أو سيغنال Signal التي تدعم التشفير طرف إلى طرف End-to-End Encryption.

تقسم هذه الخوارزميات بدورها لقسمين رئيسيين هما Stream Ciphers و Block Ciphers، ويوجد أمثلة كثيرة عن خوارزميات تشفير مفتاح متناظر من هذا النوع أو ذاك نذكر منها:

  • تشفير Vigenere Stream Cipher
  • AES Block Cipher
  • Blowfish Block Cipher
  • GCM Block Cipher

يبين الشكل التالي عملية التشفير بالمفتاح المتناظر، حيث يتم تشفير النص المقروء في أيمن الشكل إلى مجموعة مبهمة من الرموز في يسار الشكل، باستخدام خوارزمية Blowfish CRC وكلمة السرّ [email protected]@. وأيضا يوضح الشكل العملية المقابلة، ابتداءا بالرموز المبهمة على يسار الشكل حيث يمكن الحصول على النص المقروء في يمين الشكل عبر فك التشفير باستخدام الخوارزمية ذاتها ومفتاح التشفير ذاته. استخدامنا لمفتاح التشفير ذاته في العمليتين يعني بالضرورة أن خوارزمية التشفير هذه هي من نوع التشفير بالمفتاح المتناظر.

Symmetric key encryption blowfish ar.png

التشفير بالمفاتيح غير المتناظرة Asymmetric Keys Encryption

Under Construction Non Commercial Reuse White Blue.png

هذه الفقرة ما تزال قيد الانشاء

استخدامات شائعة للتشفير

تشفير الأقراص والملفات

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

برامج تشفير الأقراص يمكن أن تستخدم لاخفاء بيانات ضمن القرص المشفر بحيث يستطيع صاحب البيانات إخفاء حقيقة وجودها في حين لا يمكن لأحد إثبات وجود هذه المعلومات في ما يسمى النكران القابل للتصديق Plausible Deniability لتوضيح ذلك نفترض المثال التالي:

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

أحد أكثر برامج تشفير الأقراص التي تملك هذه الخاصية هو برنامج ڤيراكريبت VeraCrypt. ترو كريبت برنامج تشفير أقراص يعمل على أنظمة تشغيل متعددة, سهل الاستخدام وله سمعة طيبة. ويعطي مستخدمه امكانية تشفير المجلدات وأيضا تشفير الأقراص الصلبة والمحمولة. بالإضافة لذلك يوفر تروكريب أيضا امكانية النكران القابل للتصديق Plausible Deniability عبر المجلدات المخفية ضمن القرص المشفر. للمزيد حول البرنامج وطريقة استخدامه اتبع الرابط إلى صفحة برنامج ڤيراكريبت VeraCrypt.

هناك أيضا برامج أخرى لتشفير الملفات مثل برنامج AES Crypt. وهو برنامج سهل الاستخدام متوفر على أنظمة تشغيل متعددة يعتمد على معيار Advanced Encryption Standard AES لتشفير الملفات. لمزيد من المعلومات عن البرنامج وطريقة استخدامه اتبع الرابط إلى صفحة برنامج AES Crypt. وبالنسبة للهواتف الذكية هناك تطبيق كريبتونايت Cryptonite للأجهزة العاملة بنظام أندرويد.

نجد أيضا تطبيقات أو برامج تتخصص بحماية الملفات المخزنة لدى خدمات التخزين السحابي مثل دروببوكس Dropbox وغوغل درايف Google Drive. تقوم معظم هذه الخدمات بتخزين الملفات على خوادمها بشكل مشفرّ. وينم التشفير وفك التشفير على المخدمات ذاتها. إذا يستطيع مزود خدمة التخزين السحابي أن يقوم بفك تشفير الملفات المخزنة لديه والاطلاع عليها في حال أراد ذلك أو حال رضوخه لقرار محكمة مثلا. لحماية محتوى الملفات الملفات من مزود خدمة التخزين السحابي أو السلطات، يمكن تشفيرها على جهاز المستخدم بحيث ترفع ملفات مشفرة سلفا إلى مزود الخدمة. ويقوم جهاز المستخدم بفك التشفير أيضا على الجهاز بعيدا عن مخدمات مزود الخدمة. ومن هذه البرامج، برنامج بوكس كريبتور BoxCryptor المدفوع وبرنامج كريبتوميتر Cryptomator المجاني ومفتوح المصدر. وبالطبع يمكن الاستعاضة عن هذه التطبيقات عبر استخدام خدمة تخزين سحابي تدعم التشفير على جهاز المستخدم مثل خدمة سينك Sync.

تشفير قرص نظام التشغيل

تدعم أنظمة التشغيل إمكانية تشفير السواقة التي يوجد عليها نظام التشغيل بحيث لا يمكن الوصول إلى هذه المعلومات إلا بعد الاقلاع من نظام التشغيل وتسجيل الدخول بنجاح إلى حساب المستخدم. بعد تسجيل الدخول يقوم نظام التشغيل بإتاحة المعلومات الموجودة على القرص للمستخدم عند الحاجة لها بشكل مؤقت مبقيا عليها مشفرة على القرص. يذكر أيضا أن أنظمة تشغيل الهواتف الذكية سواء كانت iOS أو Android تدعم أيضا هذه الإمكانية.

للمزيد حول هذه الميزة وكيفية إعدادها اتبع الرابط إلى المقالة التالية: تشفير قرص نظام التشغيل Operating System Disk Encryption

تشفير رسائل البريد الإلكتروني

تشفير رسائل البريد الإلكتروني أمر ضروري جدا وأمر أساسي لضمان الخصوصية.

لتشفير رسائل البريد الالكتروني يتم الاعتماد على بروتوكول PGP وهي الأحرف الأولى للكلمات Pretty Good Privacy التي تعني بالعربية: خصوصية جيدة جدا. يتيح بروتوكول PGP امكانية توقيع رسالة ما الكترونيا وتشفيرها. بحيث لا يستطيع فك تشفيرها إلا الشخص الموجهة إليه تلك الرسالة. تجري عملية التشفير على جهاز المرسل وعملية فك التشفير على جهاز المستقبل باستخدام ما يسمى المفاتيح. بروتوكول PGP يقوم بتشفير محتوى الرسالة لكنه للأسف لا يشفر عنوان البريد الالكتروني ولا حساب صاحب البريد الالكتروني ولا حساب المستقبل. للمزيد حول بروتوكول PGP واستخدامه اتبع الرابط: بروتوكول PGP

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

لذلك ليس بالضرورة أن يكون تشفير رسائل البريد الإلكتروني أفضل الطرق لضمان سلامتك الجسدية... لكنه بالتأكيد أفضل طريقة لضمان إرسال رسائل بريد الكتروني لا يمكن إلا للمستقبل المقصود قراءتها.

التشفير في منصات التواصل

Under Construction Non Commercial Reuse White Blue.png

هذه الفقرة ما تزال قيد الانشاء

تنقّل في الكتيب eBook Navigation

السابق: التحكم بالوصول Access Control

التالي: البروتوكولات Protocols

أساسيات في الأمن الرقمي Information Security Essentials

الفهرس Index

الفهرس الكامل Full Index

اقرأ أيضا See Also

تشفير قيصر Caesar Code

التحليل الاحصائي Frequency Analysis

النكران القابل للتصديق Plausible Deniability

تشفير القرص الصلب Hard disk encryption

تروكريبت TrueCrypt

ڤيراكريبت VeraCrypt

التشفير باستخدام OpenSSL

إي إي إس كريبت AES Crypt

كريبتونايت Cryptonite

كريبتوميتور Cryptomator

بروتوكول PGP

بروتوكول PGP لتشفير رسائل البريد الالكتروني

إخفاء البيانات Hiding Data

مراجع References

A Short History of Cryptography

Bill's Security Site.com - Encryption

Where Does Encryption Happen and Speed Presentations

صفحة لتشفير النصوص وفك التشفير وفق خوارزميات مختلفة بشكل مباشر أونلاين