"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > Lithe Crypt: تبسيط التشفير في تطبيقات PHP

Lithe Crypt: تبسيط التشفير في تطبيقات PHP

تم النشر بتاريخ 2024-11-10
تصفح:544

Lithe Crypt: Simplificando a Criptografia em Aplicações PHP

Lithe Crypt هي أداة مساعدة بسيطة للتشفير وفك التشفير في لغة PHP، وهي مصممة للعمل مع إطار عمل Lithe. ويستخدم خوارزمية AES-256-CBC لمعالجة البيانات بشكل آمن.

تثبيت

لتثبيت حزمة Lithe Crypt، يمكنك استخدام Composer. إذا لم تكن قد قمت بتثبيته بالفعل، فتأكد من توفر Composer على نظامك. ثم قم بتشغيل الأمر التالي في دليل المشروع الخاص بك:

composer require lithemod/crypt

متطلبات

  • PHP 8 أو أعلى
  • تم تمكين ملحق OpenSSL في تثبيت PHP الخاص بك

يستخدم

تحميل متغيرات البيئة

قبل استخدام فئة Crypt، تحتاج إلى تحميل متغيرات البيئة الخاصة بك. استخدم الكود التالي لتحميل ملف .env الخاص بك:

use Lithe\Support\Env;

// Carregar variáveis de ambiente
Env::load(__DIR__); // Ajuste o caminho conforme necessário

إعداد APP_KEY

تأكد من تعيين متغير البيئة APP_KEY. يجب أن يكون هذا المفتاح عبارة عن سلسلة بترميز Base64 بحجم 32 بايت. يمكنك تكوينه في ملف .env الخاص بك أو مباشرة في بيئة الخادم.

مثال لمفتاح base64 صالح:

YXNkZmFnc2Rhc2RmYWdlcyBhc2RmYWdlcyBhYXNkZmFnc2Q=

تشفير البيانات

لتشفير البيانات، استخدم طريقة التشفير الخاصة بفئة Crypt. يمكنك أيضًا تحديد ما إذا كنت تريد استخدام IV ثابت (متجه التهيئة) للتشفير:

use Lithe\Support\Security\Crypt;

$data = "dados sensíveis";

// Criptografar sem IV fixo
$encrypted = Crypt::encrypt($data);
echo "Dados Criptografados: " . $encrypted;

// Criptografar com IV fixo (útil para valores únicos como e-mails)
$encryptedWithSameIV = Crypt::encrypt($data, true);
echo "Dados Criptografados com IV Fixo: " . $encryptedWithSameIV;

فك تشفير البيانات

لفك تشفير البيانات المشفرة مسبقًا، استخدم طريقة فك التشفير. يجب عليك تحديد نفس المعلمات المستخدمة أثناء التشفير لضمان فك التشفير الصحيح:

use Lithe\Support\Security\Crypt;

// Descriptografar sem IV fixo
$decrypted = Crypt::decrypt($encrypted);
echo "Dados Descriptografados: " . $decrypted;

// Descriptografar com IV fixo
$decryptedWithSameIV = Crypt::decrypt($encryptedWithSameIV, true, $data);
echo "Dados Descriptografados com IV Fixo: " . $decryptedWithSameIV;

معالجة الاستثناء

إذا لم يتم تعريف APP_KEY أو كان غير صالح، فستطرح فئة Crypt استثناء CryptException. من الضروري معالجة هذا الاستثناء في التعليمات البرمجية الخاصة بك لتجنب الأخطاء غير المتوقعة:

use Lithe\Exceptions\Encryption\CryptException;

try {
    $encrypted = Crypt::encrypt($data);
    // Descriptografar sem IV fixo
    $decrypted = Crypt::decrypt($encrypted);
} catch (CryptException $e) {
    echo "Erro de Criptografia: " . $e->getMessage();
}

الاعتبارات النهائية

Lithe Crypt يقدم طريقة عملية وآمنة للتعامل مع تشفير البيانات وفك تشفيرها في تطبيقات PHP الخاصة بك. من خلال تطبيق خوارزمية AES-256-CBC وسهولة التكامل مع إطار عمل Lithe، يمكنك حماية بياناتك بشكل فعال. جربه وانظر كيف يمكنه تحسين أمان التطبيق الخاص بك!

إذا كان لديك أي أسئلة أو اقتراحات، فلا تتردد في التعليق أدناه!

بيان الافراج تم إعادة نشر هذه المقالة على: https://dev.to/lithephp/lithe-crypt-simplificando-a-criptografia-em-aplicacoes-php-27jj?1 إذا كان هناك أي انتهاك، يرجى الاتصال بـ [email protected] للحذف هو - هي
أحدث البرنامج التعليمي أكثر>

تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.

Copyright© 2022 湘ICP备2022001581号-3