شهادات الـ SSL وطريقة عمل البروتوكول الآمن HTTPS
في هذه المقالة سأقوم بشرح ماهية شهادات الـ SSL وطريقة عمل البروتوكول الآمن HTTPS وعلاقته بتلك الشهادات . قبل أن أبدأ، دعونا نراجع سوياً أساسيات أمن المعلومات التالية اللازمة لفهم الموضوع:
- التشفير وأنواعه.
- عملية الـ hashing.
- التوقيع الرقمي.
- ما هو التشفير (Encryption)؟
هو عملية تحويل نص أو أي نوع آخر من البيانات (binary مثلاً) إلى شكل آخر غير مفهوم مختلف كلياً عن شكله الأصلي وذلك لغرض إخفائه، ويتم ذلك بواسطة عمليات وخوارزميات رياضية تتضمن وجود مفتاح سري (secret key) يستخدم بشكل أو بآخر أثناء العملية العكسية (عملية فك التشفير Decryption).
قيمة المفتاح السري قد تكون رقم أو نص أو عدد من الأحرف العشوائية.
- أنواع التشفير:
يوجد نوعين من عمليات التشفير:
- تشفير متماثل Symmetric: وفيه يكون المفتاح السري متماثل، أي هو نفسه المستخدم في التشفير وفك التشفير. من أشهر خوارزميات التشفير من هذا النوع هي AES.
- تشفير غير متماثل Asymmetric: وفيه يتم استخدام مفتاحين بدلاً من مفتاح واحد، وبينهما علاقة رياضية بحيث أحدهما يستخدم للتشفير والآخر يستخدم لفك التشفير. بمعنى آخر، أي رسالة تم تشفيرها بالمفتاح الأول لن يتمكن أحد من فك تشفير الرسالة إلا إذا كان لديه المفتاح الثاني، وأي رسالة تم تشفيرها بالمفتاح الثاني لن يتمكن أحد من فك تشفير الرسالة إلا إذا كان لديه المفتاح الأول. يطلق على أحد هذه المفاتيح مفتاح عام public key وعلى الآخر مفتاح خاص private key. يقصد بالمفتاح العام إمكانية مشاركته مع الجميع بينما يجب الاحتفاظ بالمفتاح الخاص بمكان خاص وعدم مشاركته مع أحد. فمثلاً، أقوم بتشفير رسالة بمفتاحي الخاص وأنشرها على الإنترنت. في هذه الحالة، أي شخص لديه المفتاح العام الخاص بي يمكنه فك تشفير رسالتي مع ضمان أن هذه الرسالة أنا من كتبها وليس شخصاً آخر. في الجهة المقابلة، أي شخص يشفر رسالة بمفتاحي العام لن يستطيع أحد قراءة هذه الرسالة إلا أنا حامل المفتاح الخاص. من أشهر خوارزميات التشفير من هذا النوع هي RSA.
- ما هو الـ Hashing؟
هي عملية تحويل نص أو أي نوع آخر من البيانات (binary مثلاً) إلى شكل آخر غير مفهوم مختلف كلياً عن شكله الأصلي، ويتم ذلك بواسطة عمليات وخوارزميات رياضية دون استخدام أي مفاتيح خارجية، ولا يمكن إعادة البيانات إلى شكلها الأصلي ولذلك تسمى one way function بعكس التشفير two way function. الناتج من عملية الـ hashing يسمى تقنياً digest. عملية الـ hashing على نفس المدخل ينتج عنه نفس الـ digest في كل مرة. تستخدم عملية الـ hashing لعدة أمور من أهمها اختبار التكامل وعدم حدوث تغيير في البيانات (integrity)، بمعنى آخر لو تم تعديل ملف يمكن معرفة ما إذا تغير أم لا بمعرفة قيمة الـ hash الحالية والسابقة للملف. من أشهر خوارزميات الـ hashing هي MD5 وSHA بمختلف أنواعها (من SHA-0 إلى SHA-3).
الخوارزميات MD5 و SHA-0 و SHA-1 لا ينصح باستخدامها لوجود ثغرات معروفة فيها.
بعض المواقع تضع قيمة الـ hash بجانب روابط الملفات التي يتم تنزيلها حتى يمكننا التأكد من سلامة الملف بعمل hashing عليه بعد اكتمال عملية التنزيل ومطابقة القيمتين.
معلومة إضافية: الطريقة الصحيحة لتخزين كلمات المرور في قواعد البيانات هي بتطبيق عملية hashing على كلمة المرور وتخزينها بقاعدة البيانات، وأثناء عملية تسجيل الدخول يتم التحقق من كلمة المرور المدخلة بعمل hashing لها ومقارنتها بما هو موجود بقاعدة البيانات.
- ما هو التوقيع الرقمي Digital Signature؟
التوقيع الرقمي على رسالة معينة هي آلية تضمن أن هذه الرسالة هي مرسلة من شخص محدد وليس من شخص آخر وكذلك تضمن بأن هذه الرسالة لم يتم التعديل عليها منذ إنشائها. أولى خطوات إنشاء التوقيع الرقمي هي إنشاء مفتاحين عام وخاص باستخدام أحد خوارزميات التشفير غير المتماثلة. بعد ذلك يتم عمل hashing للرسالة المراد إرسالها. بعد ذلك يتم تشفير قيمة الـ hash باستخدام المفتاح الخاص. وأخيراً يتم إرسال الرسالة كما هي غير مشفرة مع إرفاق قيمة الـ hash المشفرة سابقاً.
للتحقق من التوقيع الرقمي، يقوم المستقبل بعمل hashing للرسالة الأصلية ثم يقوم بفك تشفير قيمة الـ hash المشفرة التي تم استقبالها وذلك بواسطة المفتاح العام، وأخيراً يتم مقارنة القيمتين.
- ما هي الشهادة الرقمية Digital Certificate؟
يشار إليها أحياناً بـ public key certificate وأحياناً SSL certificate، وهي مستند رقمي (ببساطة ملف) يستخدم لإثبات ملكية مفتاح عام public key. الشهادة تحتوي بشكل أساسي على المعلومات التالية:
- المفتاح العام public key.
- معلومات عن مالك الشهادة. تقنياً يطلق عليها اسم Subject.
- توقيع رقمي من جهة معتمدة لتوقيع الشهادات تسمى Certificate Authority أو اختصاراً CA، وذلك لغرض تأكيد صحة معلومات الشهادة. تقنياً يطلق عليها اسم Issuer.
المعيار X.509 هو معيار يستخدم لوصف مكونات الشهادة الرقمية، وهو المستخدم في شهادات الـ SSL المستخدمة في الاتصال المشفر HTTPS أثناء التصفح، بالإضافة إلى استخدامات أخرى سنستعرضها لاحقاً. النسخة الثالثة من المعيار X.509 هي المستخدمة حالياً.
- مكونات شهادة X.509 (النسخة الثالثة):
1- tbsCertificate: تحتوي على المعلومات الأساسية للشهادة:
- version: رقم نسخة المعيار X.509. حيث يبدأ العد من القيمة 0 (v3 = 2).
- serialNumber: قيمة يتم إسنادها إلى الشهادة من قِبل الـ CA.
- signature: الخوارزمية المستخدمة في توقيع الشهادة. مثال: “SHA-256 with RSA Encryption” (الخوارزمية SHA-256 هي خوارزمية hashing من نوع SHA-2 حيث آن طول القيمة الناتجة digest تكون بطول 256 بت).
- issuer: معلومات الجهة (CA) التي أصدرت الشهادة وقامت بتوقيعها، وتصاغ المعلومات على هيئة (Distingushed Name (DN على حسب المعيار X.500 (الشائع استخدامه في الـ LDAP لتعريف العناصر). يتكون الـ DN عادةً من سلسلة من (relative distinguished names (RDN مفصولة فيما بينها بفاصلة “,”. أهم الـ RDNs المستخدمة هنا هي:
- (commonName (CN: اسم الشهادة.
- (organizationName (O: اسم الشركة مثلاً.
- (organizationUnit (OU: اسم القسم داخل الشركة مثلاً.
- (country (C: اسم الدولة مثلاً. ويتكون من حرفين حسب صيغة المعيار ISO 3166.
- (stateName (S: اسم الولاية مثلاً.
- (localityName (L: اسم المدينة مثلاً.
- validity: تاريخ صلاحية الشهادة، ويتكون من حقلين:
- notBefore: تاريخ بداية صلاحية الشهادة.
- notAfter: تاريخ نهاية صلاحية الشهادة.
- subject: معلومات الجهة مالكة الشهادة. وتصاغ المعلومات على هيئة (Distingushed Name (DN على حسب المعيار X.500، مطابق لما تم شرحه سابقاً في الحقل issuer. في حالة شهادات الـ SSL، يسند إلى الـ commonName رابط الموقع المراد تطبيق البروتوكول HTTPS عليه. هذه الطريقة أصبحت غير مدعومة في أغلب المتصفحات الجديدة، والبديل لها هو استخدام الحقل الإضافي “Subject Alternative Name” والذي سنتطرق للحديث عنه لاحقاً.
- subjectPublicKeyInfo: يحتوي على حقلين:
- algorithm: الخوارزمية المستخدمة في إنشاء المفتاح العام.
- subjectPublicKey: قيمة المفتاح العام.
- issuerUniqueID: قيمة يتم إسنادها إلى الشهادة من قِبل الـ CA.
- subjectUniqueID: قيمة يتم إسنادها إلى الشهادة من قِبل الـ CA.
- extensions: حقول إضافية تم إضافتها في النسخة الثالثة من المعيار X.509 لإمكانيات أكبر للشهادة. مع كل حقل إضافي يتم تحديد ما إذا كان الحقل critical أو non-critical. الأنظمة التي تستخدم الشهادات ترفض الشهادة إن كان هناك حقل critical ولا تدعمه، بينما تُهمل الحقول الـ non-critical التي لا تدعمها. من أهم هذه الحقول الإضافية:
- Subject Alternative Name: يستخدم لإضافة أسماء إضافية للجهة المالكة للشهادة. أحد استخداماته هي تحديد أكثر من dns name للموقع في حالة شهادات الـ SSL. مثال: “DNS:fouad.io, DNS:subdomain.fouad.io” حيث ستكون الشهادة صالحة للموقع fouad.io و subdomain.fouad.io. يمكن تحديد IP بدلاً من DNS name. مثال: “ip:35.196.42.156″، ويمكن الجمع بينهما.
- Basic Constraints: يستخدم في حالة كانت الشهادة هي شهادة CA.
- Key Usage: يستخدم لتحديد استخدامات المفتاح العام المرفق مع الشهادة. يمكن إسناد أحد القيم التالية أو مجموعة منها: digitalSignature, nonRepudiation, keyEncipherment, dataEncipherment, keyAgreement, keyCertSign, cRLSign, encipherOnly, decipherOnly.
- Extended Key Usage: يستخدم لتحديد استخدامات إضافية للمفتاح العام المرفق مع الشهادة. يمكن إسناد أحد القيم التالية أو مجموعة منها: serverAuth, clientAuth, codeSigning, emailProtection, timeStamping, OCSPSigning.
- وغيرها الكثير.
- signatureAlgorithm: يحمل نفس قيمة tbsCertificate.signature.
- signature: قيمة التوقيع الرقمي، حيث تستخدم قيمة tbsCertificate كمدخل لخوارزمية التوقيع الرقمي.
- ما هي الجهات المعتمدة لإصدار الشهادات وتوقيعها وما هو دورها؟
الـ Certificate Authority أو اختصاراً CA هي جهة معتمدة تقوم بإصدار الشهادات وتوقيعها. بعض هذه الجهات تقدم هذه الخدمة بشكل مجاني وبعضها تكون بمقابل مادي، وعادةً التي بمقابل مادي يتم تجديدها بشكل سنوي. وتشترط هذه الجهات للتوقيع بعض المستندات من مالك الشهادة للتأكد من المعلومات المدونة بالشهادة، وقد تستخدم طرق أخرى للتأكد مثل إضافة DNS record على عنوان الموقع أو استضافة رابط معين على السيرفر الذي يشير إليه عنوان الموقع. ولذلك فهي تضمن لأي طرف ثالث بأن تلك الشهادة هي ملك لصاحبها وجميع المعلومات التي عليها صحيحة.
تبدأ عملية إنشاء الشهادة بقيام مالك الشهادة بإنشاء زوج من المفاتيح مفتاح عام ومفتاح خاص باستخدام أحد خوارزميات التشفير الغير متماثل. يحتفظ مالك الشهادة بالمفتاح الخاص في مكان آمن. بعد ذلك يقوم مالك الشهادة بإنشاء طلب توقيع شهادة (certificate signing request (CSR (حسب المعيار PKCS#10) يتضمن المفتاح العام بالإضافة إلى معلومات مالك الشهادة بصيغة DN وهي المعلومات ذاتها التي ستضاف لاحقاً في الشهادة. بعد ذلك يقوم مالك الشهادة بالتوقيع الرقمي على الطلب باستخدام المفتاح الخاص، وهذا يضمن عدم التلاعب بمحتوى الطلب. وأخيراً يقوم مالك الشهادة بإرسال الطلب CSR إلى أحد الجهات المعتمدة CA من أجل إنشاء الشهادة وتوقيعها رقمياً. قد تطلب الـ CA من مالك الشهادة إرسال مستندات داعمة تثبت صحة معلومات الطلب أو قد تستخدم طرق أخرى كما تم ذكره سابقاً.
هنا قائمة بأشهر الجهات المعتمدة لإصدار الشهادات وتوقيعها:
- Comodo.
- Symantec.
- GoDaddy.
- GlobalSign.
- IdenTrust.
- DigiCert.
- StartCom.
- Entrust.
- Trustwave.
- Verizon.
- Secom.
- Unizeto.
- Buypass.
- QuoVadis.
- Deutsche Telekom.
- Network Solutions.
- TWCA.
- Let’s Encrypt.
- ما هي الشهادة الموقعة ذاتياً self-signed certificate؟
هي الشهادة التي ينشئها مالكها ويوقعها بنفسه. بمعنى آخر، الشهادة تحمل نفس المعلومات في الحقلين subject وissuer.
- ما هي سلسلة الشهادات certificate chain؟
هي سلسلة من شهادتين أو أكثر بحيث كل شهادة تكون هي المصدِّرة والموقِّعة للشهادة التي تسبقها في السلسلة، والشهادة الموجودة بآخر السلسلة هي شهادة موقعة ذاتياً self-signed certificate. الشهادة الموجودة بآخر السلسلة تسمى root certificate، والشهادة الموجودة بالمنتصف تسمى intermediate certificate، والشهادة الموجودة بأول السلسلة تسمى end-entity certificate. الـ root certificate والـ intermediate certificate هي شهادات تابعة لجهات معتمدة CA، بينما الشهادات التي لدى المستخدمين وأصحاب المواقع هي شهادات من نوع end-entity certificate.
- الشهادات الموثوقة Trusted Certificate:
جميع الأنظمة التي تستخدم الشهادات الرقمية لديها قائمة افتراضية تحتوي على شهادات خاصة بالجهات المعتمدة CA تسمى بالشهادات الموثوقة Trusted Root Certificates، حيث أن أي شهادة تكون موقعة بواسطة CA ضمن هذه القائمة أو CA ضمن سلسلة شهادات وآخر السلسلة هي شهادة CA ضمن هذه القائمة فهذا يعني أن تلك الأنظمة تثق بهذه الشهادة.
أنظمة التشغيل لديها قائمة الشهادات الموثوقة بشكل افتراضية تستخدمها للوثوق بالشهادات الرقمية الخارجية. فمثلاً المتصفح Internet Explorer يستخدم قائمة الشهادات الموثوقة الخاصة بنظام التشغيل Windows للوثوق بالمواقع التي تستخدم البروتوكول HTTPS. المتصفح Chrome يستخدم قائمة الشهادات الموثوقة الخاصة بنظام التشغيل المستضيف، بينما المتصفح Firefox لديه قائمة شهادات موثوقة خاصة به. منصة Java لديها قائمة شهادات موثوقة خاصة بها أيضاً (القائمة موجودة داخل الـ keystore على المسار java.home/lib/security/cacerts)، وتستخدم للوثوق بالمواقع عند الاتصال بها بواسطة البروتوكول HTTPS وتستخدم أيضاً لتوقيع ملفات الـ jar لضمان سلامة الملفات من التعديل عليها (توقيع ملفات الـ jar أصبح شرط أساسي عند استخدام تقنية Java Web-Start).
عند تثبيت برنامج على نظام التشغيل Windows مثلاً، سيظهر لك اسم الناشر publisher في حالة تم توقيع ملف التثبيت بواسطة شهادة موثوقة كما هو موضوح في الصورة التالية:
يُشترط نوع خاص من الشهادات لتوقيع ملفات التثبيت وملفات الـ jar، وتحمل هذه الشهادات القيمة codeSigning ضمن الحقل الإضافي Extended Key Usage. غالباً هذا النوع من الشهادات غير مجاني، وسوف يشترط الـ CA من مقدم الطلب بعض المستندات للتحقق من صحة المعلومات المرفقة مع الـ CSR، وذلك لأن طرق التحقق الأخرى غير مناسبة هنا.
الشهادات الموقعة ذاتياً self-signed certificate والتي لا تتبع CA تكون غير موثوقة على جميع الأنظمة، والطريقة الوحيدة لجعلها موثوقة هي بإضافتها بشكل يدوي إلى قائمة الشهادات الموثوقة.
إذا كان السيرفر المستضيف لموقع معين يستخدم شهادة SSL موثوقة للمتصفح (بالاعتماد على قائمة الشهادات الموثوقة)، والشهادة تستخدم خوارزميات قوية ومدعومة من جهة المتصفح، وجميع الروابط الموجودة بداخل صفحة الـ HTML جميعها تبدأ بـ HTTPS وليس HTTP، فإن المتصفح سيظهر شعار القفل الأخضر وهذا يعني بأن الاتصال بينك وبين السيرفر مشفر وأن السيرفر الذي تتصل به هو فعلاً المكتوب بشريط العنوان الموجود بأعلى المتصفح. يرجى ملاحظة بأن القفل الأخضر لا يعني بالضرورة أن الموقع آمن!
يمكن التلاعب بقائمة الشهادات الموثوقة لمن لديه صلاحية وصول. فمثلاً، يمكن التلاعب بالشهادات الموثوقة في نظام التشغيل Windows للأجهزة الموجودة في بيئة عمل بواسطة قسم الـ IT، واستبدال شهادة Google مثلاً بشهادة أخرى وهمية ثم تحويل جميع الـ traffic من تلك الأجهزة إلى سيرفر خاص، وبذلك يمكن مراقبة جميع الزيارات إلى مواقع Google (والتعديل عليه إن أرادوا) وسيظهر القفل الأخضر الآمن لدى مستخدمي تلك الأجهزة.
بعض الـ CA يقدم نوع خاص من شهادات الـ SSL يسمى Extended Validation Certification أو اختصاراً EV Certificate، حيث يتميز الموقع المستخدم لهذه الشهادة بظهور اسم الجهة المالكة للشهادة في شريط أخضر يزيد من مصداقية الموقع. تقنياً يتم استخدام الحقل الإضافي Certificate Policy ضمن الشهادة.
بعض الـ CA يقدم شهادات تسمى Wildcard Certificate وتعني ببساطة أنها تعمل على مدى كامل من الـ subdomains. فمثلاً، fouad.io.* تعمل على a.fouad.io و b.fouad.io وما يشابه.
- ما هو البرتوكول الآمن HTTPS؟
هو بروتوكول يستخدم للتخاطب بين الـ client والـ server عبر الإنترنت. يستخدم نفس لغة التخاطب المستخدمة في البروتوكول HTTP ولكن مدعوم بطبقة البروتوكول TLS (أو SSL سابقاً) التي تقدم ميزة تشفير البيانات والتأكد من سلامة البيانات المرسلة من التلاعب بالإضافة إلى الموثوقية عن طريق تأكيد هوية الموقع الذي يتم زيارته بواسطة الشهادات الرقمية.
يشار عادةً إلى البروتوكول TLS (أو الذي يسبقه SSL) بالاسم SSL.
البروتوكول SSL v3 غير آمن الآن لوجود ثغرات أمنية معروفة به، ويستحسن استخدام البروتوكول TLS v1.2.
ترسل جميع حقول الـ HTTP سواء في الـ HTTP Request أة الـ HTTP Response مشفرة ولا يمكن لأي طرف ثالث (شركات الاتصالات مثلاً) مشاهدة محتواها إذا كان الاتصال آمن بشكل سليم. يستطيع الطرف الثالث فقط معرفة IP السيرفر المراد زيارته، ولا يستطيع معرفة الـ path. فمثلاً عند زيارة الصفحة https://fouad.io/2012/11/thread_definition، الطرف الثالث سيعلم بأنك زرت الموقع fouad.io ولكن لن يستطيع معرفة أي صفحة تمت زيارتها.
- طريقة عمل البروتوكول TLS v1.2:
عند زيارة موقع عبر البروتوكول الآمن HTTPS فإن أول خطوة يقوم بها المتصفح والسيرفر هي التصافح Handshake. تتكون عملية التصافح من 3 خطوات رئيسية:
- رسائل التحية Hello Messages: تستخدم هذه الرسائل لتبادل معلومات المتصفح والسيرفر وإمكانيات كلٍ منهما من ناحية دعمهما لمختلف نسخ بروتوكولات الأمان (TLSv1.2 مثلاً) وخوارزميات التشفير المدعومة (Cipher Suite) وغيرها. المتصفح يبدأ أولاً بإرسال ClientHello محملة بتلك المعلومات وبعدها يرد السيرفر بإرسال ServerHello مبيناً فيها التأكيد أو الرفض على بدء عملية الاتصال.
- تبادل الشهادة: يقوم السيرفر بإرسال الشهادة الرقمية الخاصة به إلى المتصفح. بعد ذلك يتأكد المتصفح من صلاحية الشهادة وما إذا كانت موثوقة بالنسبة له أم لا بالاعتماد على قائمة الشهادات الموثوقة كما تم شرحه سابقاً.
- تبادل المفتاح السري: يقوم المتصفح بإنشاء مفتاح سري باستخدام أسلوب التشفير المتماثل Symmetric Encryption (التشفير وفك التشفير يتم بنفس المفتاح، كما تم شرحه سابقاً). يقوم المتصفح بتشفير المفتاح السري بواسطة المفتاح العام الخاص بالسيرفر ثم يقوم بإرساله إلى السيرفر، وبذلك يضمن بأن السيرفر هو الوحيد القادر على فك التشفير بواسطة المفتاح الخاص.
في هذه المرحلة، يمتلك كلاً من المتصفح والسيرفر المفتاح السري الذي قام بإنشائه المتصفح. تنتهي هنا عملية المصافحة، ويبدأ المتصفح بإرسال أول HTTP Request إلى السيرفر بعد تشفيره بالمفتاح السري. عندما تصل الرسالة إلى السيرفر، يقوم بفك تشفيرها بواسطة المفتاح السري ذاته. بعد ذلك يقوم بإرسال HTTP Respone إلى المتصفح بعد تشفيره بالمفتاح السري. عندما تصل الرسالة إلى المتصفح، يقوم بفك تشفيرها بواسطة المفتاح السري. يرجى ملاحظة بأن المتصفح هنا هو مثال على الـ client، والعملية تكون مشابهة تماماً عندما يكون الـ client ليس المتصفح (يتم الاتصال من كود جافا مثلاً).
التعليقات (15)
أضف تعليقك
أداة البحث
التصنيفات
- أمن معلومات (1)
- برمجة (7)
موضوع رائع وشرح تفصيلي
اتضح عندي بعد قراءة الموضوع فهم أوضح للـ hash ولماذا لا ينصح باستخدام MD5
للفائدة موقع https://zerossl.com/ لإصدار شهادات مجانية لمدة 3 أشهر ويمكن تجديدها، الشهادات موثقة من Let’s Encrypt
شكراً لك
شرح جداُ رائع اشكرك اخي الفاضل
تبين لي كثير من بعض الامورالتي كانت غير واضحة لي في هذا المجال
جزاك الله عنا خير الجزاء
فأنت تساهم في رفع مستوى المحتوى العربي
يصير انا اسوي الشهاده بنفسي ولا لازم شركات ؟
يمكنك إنشاء الشهادة بنفسك، ولكن سوف تكون self-signed وبالتالي ليست موثوقة في جميع الأنظمة.
هل يعني أن روابط (https)
لا يمكن أن تكون غير موثوقة ؟
يستطيع أي موقع الحصول على شهادة SSL بكل سهولة وبشكل مجاني. لذلك، اللون الأخضر بجانب https في المتصفحات لا يعني أن الموقع آمن ولكن يعني أن الاتصال بينك وبين سيرفر الموقع مشفر.
ماشاء الله , لي كم يوم أقرا في المواضيع هذي , وحبيت طريقة شرحك
هالنقطة ما اتضحت لي : (يمكن التلاعب بقائمة الشهادات الموثوقة …)
طيب على فرض شخص غير في الشهادات في جهازي الشخصي , على سبيل المثال : شهادة موقع يوتيوب , بدل ما تكون شهادة من جوجل قام و اضاف شهادة من عنده بشكل يدوي ..
في حالة كان الاتصال مشفر فكيف راح يقدر يعرف الترفك الي يمر ؟
حياك الله أخ عبدالمجيد.
بما أنه صاحب الشهادة المثبتة بجهازك، يكون لديه المفتاح الخاص الذي يستطيع من خلاله فك تشفير الترافيك المشفر. بعد ذلك يمكنه التعديل على محتوى الرسالة ثم تشفيرها مرة أخرى بشهادة موقع اليوتيوب الأصلية.
اقرأ عن هجمة Man-In-The-Middle أو اختصاراً MITM Attack.
السلام عليكم
أنا عندي مشكلة وهي أني قمت بتشفير بعض الملفات بواسطة الشهادة لكنني لم أحتفظ بتلك الشهادة فبقيت الملفات مشفرة . فماذا أفعل بارك الله فيك
شكراًجداَ على المعلومات القيمة واللي فعلاً احنا كطلاب كومبيوتر مانعرفها من خلال الجامعه ..
سؤالي واللي يتردد بذهني دائما
أمن المعلومات علم معقد جداَ والأعقد منه علم البرمجه وبالتالي بيكون صعب جداً ان اي احد يخترق المعلومات الا شخص بروفشنال
وزي ماقالوا الهكر لازم يصير مبرمج ,, على ذلك ليه كل من هب ودب صار هكر وهكر بدون ادنى معلومه عن البرمجه ؟
ممتاز شرح تفصيلي جميل واحسن بكثير من مواقع اجنبية كثيرة, وفهمك للموضوع وافي.
انا حاليا ابحث عن التوقيع الالكتروني لمؤسسة خاصة بدل الورقي هل تستطيع ان ترشدني لشئ ما.
السلام عليكم
هل يوجد مصدر عربي لتعلم هذي الاشياء واتطور من نفسي؟ وهل يرجد كورس يشرح كل هذي الاشياء؟
تخصصي علوم حاسب وابغى اطور من نفسي لكن ضايع ، واعشق هذي الاشياء واتمنى احصل مصدر عربي مميز يشرح هذي الاشياء،
تحياتي
بارك الله فيك لقد استفدت كثيرا
السلام عليكم .. شكرا الك ع هدا الشرح المفصل ربي يجزيك كل خير ؟؟
بس يوجد لدي سؤال واتمنى الاجابه عليه؟؟
Q//هل ال( CA ) تحول النظام الموزع الى نظام مركزي ؟؟؟
سلمت يداك
جزاك الله خير
شرح وافي وجميل