"إذا أراد العامل أن يؤدي عمله بشكل جيد، فعليه أولاً أن يشحذ أدواته." - كونفوشيوس، "مختارات كونفوشيوس. لو لينجونج"
الصفحة الأمامية > برمجة > هل يمكنني ترحيل التشفير الخاص بي من Mcrypt إلى OpenSSL ، وفك تشفير البيانات المشفرة Mcrypt باستخدام OpenSSL؟

هل يمكنني ترحيل التشفير الخاص بي من Mcrypt إلى OpenSSL ، وفك تشفير البيانات المشفرة Mcrypt باستخدام OpenSSL؟

نشر في 2025-04-30
تصفح:790

Can I Migrate My Encryption from Mcrypt to OpenSSL, and Decrypt Mcrypt-Encrypted Data Using OpenSSL?

ترقية مكتبة التشفير الخاصة بي من mcrypt إلى openssl

هل يمكنني ترقية مكتبة التشفير الخاصة بي من mcrypt إلى openssl؟ في OpenSSL ، هل من الممكن فك تشفير البيانات المشفرة مع Mcrypt؟ توفر منشورتان مختلفتان معلومات متضاربة. إذا كان الأمر كذلك ، كيف؟

الإجابة: من الممكن فك تشفير البيانات المشفرة باستخدام McRypt باستخدام OpenSsl. $ salt = sentstr ($ data ، 0 ، 128) ؛ $ enc = substr ($ data ، 128 ، -64) ؛ $ mac = substr ($ data ، -64) ؛ قائمة ($ cipherkey ، $ mackey ، $ iv) = $ this-> getKeys ($ salt ، $ key) ؛ if ($ mac! == hash_hmac ('sha512' ، $ enc ، $ mackey ، true)) { العودة كاذبة } $ dec = openssl_decrypt ($ enc ، $ this-> cipher ، $ cipherkey ، openssl_raw_data ، $ iv) ؛ إرجاع $ Dec ؛ }

ملاحظات إضافية:

openssl_decrypt () الدالة في وضع CBC.

"هذا مفتاح سري." ، 'G906M70P (IHZA5T و 5X7 (W0�31) u) �e79ciyjq! ip2u (xt13q6) tj6gz3d2wi & 0 ") 7cp5' ، CHR (6). CHR (200). CHR (16). "مفتاحي". CHR (3). CHR (4). CHR (192). CHR (254). 'Zyx0987 !!' ، "وأخيراً مفتاح آخر للاختبار هنا:" ، ] ؛ بيانات $ = [ 'a' ، "هذا اختبار" ، "الآن اختبار تشفير شيء أطول قليلاً مع 1234567890." ، '$ length = mcrypt_get_block_size (mcrypt_blowfish ، mcrypt_mode_cbc) ؛ $ last = ord (بيانات $ [strlen ($ data) - 1]) ؛ '، 'lorem ipsum dolor sit amet ، incectetur adipiscing leit. Donec Sit Amet Pharetra Urna. الدهليز ante ipsum primis في faucibus orci luctus et ultrices posuere cubilia curae ؛ Ut Fringilla ، QUAM SED ELEIFEND ELEIFEND ، JUSTO TURPIS CONCETTER Tellus ، Quis Tristique Eros erat في NIBH. nunc dictum neque vel diam moleestie fermentum. Pellentesque Dignissim dui quis turtor eleifend ، ut maximus elit egestas. Donec Posuere Odio et Auctor Porta. Quisque placerat condimentum maximus. curabitur luctus dolor eget sem luctus ، في Dignissim Turtor Venenatis. Mauris Eget Nulla nisl. '، ] ؛ الفشل $ = 0 ؛ foreach ($ data as $ datum) { foreach (مفاتيح $ كما مفتاح $) { $ ENC = تشفير جديد (MCRYPT_BLOWFISH ، MCRYPT_MODE_CBC) ؛ $ encrypted = $ enc-> encrypt ($ datum ، $ key) ؛ $ dec = incryptionopenssl ('BF-CBC') ؛ $ decrypted = $ dec-> decrypt ($ المشفر ، مفتاح $) ؛ if (STRCMP ($ datum ، $ فك التشويه)! == 0) { ECHO "تشفير مع مفتاح" مفتاح $ "من" $ datum ". فشل $ ؛ } } } إذا (فشل $) { صدى "فشل اختبارات الفشل $.
\ n" ؛ } آخر { صدى "الكل بخير
\ n" ؛ }

أحدث البرنامج التعليمي أكثر>

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

Copyright© 2022 湘ICP备2022001581号-3