اذهب إلى المحتوى

السؤال

نشر

عند عمل مشروع لارافيل Laravel جديد يجب توليد مفتاح من خلال الأمر التالي:

php artisan key:generate

الأمر السابق يقوم بتوليد مفتاح ويتم تخزينه بصيغة base64 في الملف env.

أعلم أن هذا المفتاح يستخدم في حماية بعض المعلومات المهمة في المشروع، ولكن كيف يتم هذا الأمر؟ وما هي المعلومات التي يتم تشفيرها بإستخدام هذا المفتاح؟

Recommended Posts

  • 1
نشر

معروف ان عملية التشفير هي طريقة لحماية البيانات تستعمل خوارزمياتها مفتاحا للتشفير والغاءه.

بالمختصر المفيد، كل مكون من مكونات لارافيل يستخدم التشفير encyption او يتضمنه يستخدم APP_KEY بشكل ما. مثال:

  • ملفات تعريف الارتباط 
  • الجلسات 
  • كلمات المرور
  • رموز csrf

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

راجع: التشفير (Encryption) في Laravel

يمكن الاطلاع على انه يتم تحميله من قبل موفر خدمة التشفير في التطبيق، هذا الملف كائن بالمسار:

Illuminate/Encryption/EncryptionServiceProvider.php

 

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...