This article mainly introduces the DES encryption and decryption method implemented by PHP, and analyzes the related skills related to DES encryption and decryption implemented by PHP in the form of a complete example, if you need it, refer to the example in this article to describe the DES encryption and decryption instance implemented by PHP. We will share this with you for your reference. The details are as follows:
<? Php $ key = 'very impant Ant data'; function jiami ($ key, $ str) {/* Open module, and create IV */$ td = mcrypt_module_open ('Des ', '', 'ECB ',''); // $ td = mcrypt_module_open (MCRYPT_DES, '', MCRYPT_MODE_CBC,''); // $ td = mcrypt_module_open ('Des ', '', 'cbc',''); $ key = substr ($ key, 0, mcrypt_enc_get_key_size ($ td); $ iv_size = mcrypt_enc_get_iv_size ($ td ); $ iv = mcrypt_create_iv ($ iv_size, MCRYPT_RAND);/* I Nitialize encryption handle */if (mcrypt_generic_init ($ td, $ key, $ iv) ===- 1) {return FALSE ;} /* Encrypt data */$ c_t = mcrypt_generic ($ td, $ str);/* Clean up */mcrypt_generic_deinit ($ td); mcrypt_module_close ($ td ); return $ c_t;} function jiemi ($ key, $ str) {/* Open module, and create IV */$ td = mcrypt_module_open ('Des ','', 'ECB ', ''); // $ td = mcrypt_module_open (MCRYPT_DES,'', MCRYPT_MODE_CBC, ''); // $ Td = mcrypt_module_open ('Des ','', 'cbc', ''); $ key = substr ($ key, 0, mcrypt_enc_get_key_size ($ td); $ iv_size = mcrypt_enc_get_iv_size ($ td); $ iv = mcrypt_create_iv ($ iv_size, MCRYPT_RAND ); /* Initialize encryption handle */if (mcrypt_generic_init ($ td, $ key, $ iv) ===- 1) {return FALSE ;} /* Reinitialize buffers for decryption */$ p_t = mdecrypt_generic ($ td, $ str);/* Clean up */mcrypt_ge Neric_deinit ($ td); mcrypt_module_close ($ td); return trim ($ p_t);} $ str = 'Hello world! '; Echo 'key:'. $ key .'
'; Echo 'Str:'. $ str .'
'; $ Jiami = jiami ($ key, $ str); echo 'encryption:'. $ jiami .'
'{File_put_contents('jiamiqian.txt ', {str}{file_put_contents('jiamihou.txt', $ jiami); $ jiemi = jiemi ($ key, $ jiami); echo 'decryption: '. $ jiemi .'
';