آموزش رمزگذاری در لاراول

3 سال پیش
آموزش رمزگذاری در لاراول

آموزش رمزگذاری در لاراول

در این درس از مجموعه آموزش برنامه نویسی سایت سورس باران، به آموزش رمزگذاری در لاراول خواهیم پرداخت.

رمزگذاری فرایند تبدیل یک متن ساده به پیام با استفاده از برخی الگوریتم ها است به طوری که هر کاربرd نمی تواند اطلاعات را بخواند. این برای انتقال اطلاعات حساس مفید است زیرا شانس کمتری برای متجاوز برای هدف قرار دادن اطلاعات منتقل شده وجود دارد.

رمزگذاری با استفاده از فرایندی به نام رمزنگاری انجام می شود. متنی که باید رمزگذاری شود، متن ساده نامیده می شود و متن یا پیامی که پس از رمزگذاری به دست می آید، Cipher Text نامیده می شود. فرآیند تبدیل متن رمزنگاری شده به متن ساده را رمزگشایی می نامند.

لاراول از رمزنگاری AES-256 و AES-128 استفاده می کند که از کد باز SSL برای رمزگذاری استفاده می کند. تمام مقادیر موجود در لاراول با استفاده از پروتکل کد تأیید اعتبار پیام امضا می شوند تا پس از رمزگذاری ، مقدار اصلی را نتوان دستکاری کرد.

پیکربندی رمزگذاری در لاراول

دستور مورد استفاده برای تولید کلید در لاراول در زیر نشان داده شده است –

php artisan key:generate

 

لطفاً توجه داشته باشید که این دستور از مولد بایت های تصادفی امن PHP استفاده می کند و می توانید خروجی را همانطور که در تصویر زیر نشان داده شده است مشاهده کنید –

Artisan Key
دستور داده شده در بالا به تولید کلیدی که می تواند در برنامه وب استفاده شود کمک می کند.

مقادیر رمزگذاری به درستی در فایل config/app.php تراز شده اند، که شامل دو پارامتر برای رمزگذاری یعنی کلید و رمز است. اگر مقدار استفاده شده از این کلید به درستی تراز نشده باشد ، همه مقادیر رمزگذاری شده در Laravel ناامن خواهند بود.

فرایند رمزگذاری در لاراول

رمزگذاری یک مقدار را می توان با استفاده از راهنمای رمزگذاری در کنترل کننده های کلاس Laravel انجام داد. این مقادیر با استفاده از رمزنگاری OpenSSL و AES-256 رمزگذاری می شوند. تمام مقادیر رمزگذاری شده با کد احراز هویت پیام (MAC) امضا می شوند تا تغییرات رشته رمزگذاری شده را بررسی کنند.

defaultCommand
کد زیر در کنترلر ذکر شده است و برای ذخیره یک پیام مخفی یا حساس استفاده می شود.

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;
use App\Http\Controllers\Controller;

class DemoController extends Controller{
   **
      * Store a secret message for the user.
      *
      * @param Request $request
      * @param int $id
      * @return Response
   */
   
   public function storeSecret(Request $request, $id) {
      $user = User::findOrFail($id);
      $user->fill([
         'secret' => encrypt($request->secret)
      ])->save();
   }
}

 

فرایند رمزگشایی در لاراول

رمزگشایی مقادیر با کمک رمزگشایی انجام می شود. خطوط کد زیر را رعایت کنید –

use Illuminate\Contracts\Encryption\DecryptException;

// Exception for decryption thrown in facade
try {
   $decrypted = decrypt($encryptedValue);
} catch (DecryptException $e) {
   //
}

 

لطفاً توجه داشته باشید که اگر فرآیند رمزگشایی به دلیل عدم استفاده از MAC ناموفق باشد، یک استثنا مناسب ایجاد می شود.

 

منبع.

 

 

لیست جلسات قبل آموزش لاراول

  1. آموزش لاراول
  2. آموزش مقدماتی لاراول
  3. آموزش نصب لاراول
  4. آموزش ساختار برنامه در لاراول
  5. آموزش پیکربندی لاراول
  6. آموزش مسیریابی در لاراول
  7. آموزش Middleware در لاراول
  8. آموزش فضای نام در لاراول
  9. آموزش کنترل کننده ها در لاراول
  10. آموزش درخواست در لاراول
  11. آموزش کوکی در لاراول
  12. آموزش پاسخ در لاراول
  13. آموزش View در لاراول
  14. آموزش تمپلیت Blade در لاراول
  15. آموزش ریدایرکت کردن در لاراول
  16. آموزش کار با پایگاه داده در لاراول
  17. آموزش خطاها و ورود به سیستم در لاراول
  18. آموزش فرم ها در لاراول
  19. آموزش محلی سازی در لاراول
  20. آموزش اعتبار سنجی در لاراول
  21. آموزش بارگذاری فایل در لاراول
  22. آموزش ارسال ایمیل در لاراول
  23. آموزش ایجکس در لاراول
  24. آموزش مدیریت خطا در لاراول
  25. آموزش مدیریت رویداد در لاراول
  26. آموزش نما در لاراول
  27. آموزش قراردادها در لاراول
  28. آموزش احراز هویت در لاراول
  29. آموزش مجوز در لاراول
  30. آموزش کنسول Artisan مجوز در لاراول

 

 

 

0
برچسب ها :
نویسنده مطلب erfan molaei

دیدگاه شما

بدون دیدگاه