3v4l.org

run code in 300+ PHP versions simultaneously
<?php $key = 'password to (en/de)crypt'; $string = 'tesr'; // note the spaces $iv = mcrypt_create_iv( mcrypt_get_iv_size(MCRYPT_RIJNDAEL_128, MCRYPT_MODE_CBC), MCRYPT_DEV_URANDOM ); $encrypted = base64_encode( $iv . mcrypt_encrypt( MCRYPT_RIJNDAEL_128, hash('sha256', $key, true), $string, MCRYPT_MODE_CBC, $iv ) ); $data = base64_decode($encrypted); $iv = substr($data, 0, mcrypt_get_iv_size(MCRYPT_RIJNDAEL_128, MCRYPT_MODE_CBC)); $decrypted = rtrim( mcrypt_decrypt( MCRYPT_RIJNDAEL_128, hash('sha256', $key, true), substr($data, mcrypt_get_iv_size(MCRYPT_RIJNDAEL_128, MCRYPT_MODE_CBC)), MCRYPT_MODE_CBC, $iv ), "\0" ); echo 'Encrypted:' . "\n"; var_dump($encrypted); echo "\n"; echo 'Decrypted:' . "\n"; var_dump($decrypted);
Output for 7.0.6 - 7.0.20, 7.1.0 - 7.1.33, 7.2.0 - 7.2.33, 7.3.0 - 7.3.33, 7.4.0 - 7.4.33, 8.0.0 - 8.0.30, 8.1.0 - 8.1.28, 8.2.0 - 8.2.18, 8.3.0 - 8.3.6
Fatal error: Uncaught Error: Call to undefined function mcrypt_create_iv() in /in/YiCYK:8 Stack trace: #0 {main} thrown in /in/YiCYK on line 8
Process exited with code 255.
Output for 7.0.5
Encrypted: string(44) "PM2OF82IR6VsiINx7sU9T4ZgQ+ocmpWfAg0utVPs5Js=" Decrypted: string(4) "tesr"
Output for 7.0.4
Encrypted: string(44) "7/DbDUIQyYYsCBlyALLOBAP1XMuDaxHjhLAOw6av9S0=" Decrypted: string(4) "tesr"
Output for 7.0.3
Encrypted: string(44) "FyvyYqTxgVusNpaMp9c0MLspFTZnmflL95BhcCLtJvM=" Decrypted: string(4) "tesr"
Output for 7.0.2
Encrypted: string(44) "vXhd6iMSMtRVSwUhFayoeuMiArYb4FRqHSkn6oWJ8tk=" Decrypted: string(4) "tesr"
Output for 7.0.1
Encrypted: string(44) "//30vp9K4gYIabYhU4FBNAWaQizF+oDfK1RNXc4XA0M=" Decrypted: string(4) "tesr"
Output for 7.0.0
Encrypted: string(44) "Vr+Eg9F9mmHkcL/1R++238IxrO7ki7y3qX19vrjTIf4=" Decrypted: string(4) "tesr"
Output for 5.5.35, 5.6.21 - 5.6.28
Fatal error: Call to undefined function mcrypt_create_iv() in /in/YiCYK on line 8
Process exited with code 255.
Output for 5.6.20
Encrypted: string(44) "gyr/XmOsxQmy9dLYWXUp3BEY7CSVkb7OYMX3PcTXhk8=" Decrypted: string(4) "tesr"
Output for 5.6.19
Encrypted: string(44) "4Y3LsWLuHsuW2QikISBFGvDLuw1E4mjwsSrDUSSukwA=" Decrypted: string(4) "tesr"
Output for 5.6.18
Encrypted: string(44) "e4CkjibuJM4CZ/A5r+Ilx9l0lfolPE+GXmBRscZIBmQ=" Decrypted: string(4) "tesr"
Output for 5.6.17
Encrypted: string(44) "dGtjaSRr1PuBeQC14dYO7xNp3DaQJZhUMP7oA0aXGIs=" Decrypted: string(4) "tesr"
Output for 5.6.16
Encrypted: string(44) "ruJDzBoKvHTrZucrHZrOnpeQvmfaPaGmtjIdTzuEH/I=" Decrypted: string(4) "tesr"
Output for 5.6.15
Encrypted: string(44) "GGZuAEcvGY4GbTo0bmgsOOLpMtdCqZX23ifAcqpMSEo=" Decrypted: string(4) "tesr"
Output for 5.6.14
Encrypted: string(44) "OfHIgZ9VEsMevwf5x0ji4yyfkTnJkxtCCGQhTdvpRZ0=" Decrypted: string(4) "tesr"
Output for 5.6.13
Encrypted: string(44) "81yQVaSgpjeMuq8+BpQJnz7FVFzwO3aZ7DzgASK5Lk4=" Decrypted: string(4) "tesr"
Output for 5.6.12
Encrypted: string(44) "CmqzaZPOIBJe+IdakTjiNhfMpWOBCobLBBrzk465ua8=" Decrypted: string(4) "tesr"
Output for 5.6.11
Encrypted: string(44) "koT1t8a6Nfoy/Y4aR008xoLzhjBAaJqnEvGuXxpAkMU=" Decrypted: string(4) "tesr"
Output for 5.6.10
Encrypted: string(44) "CT/4FtoOpcnSaAvRv8a7Qayff8T8DGzTEFEvy+wgcUs=" Decrypted: string(4) "tesr"
Output for 5.6.9
Encrypted: string(44) "oRsI9c3YsYRoBAI6I6tX24L8TLQB4iMHmqepS8T7zUU=" Decrypted: string(4) "tesr"
Output for 5.6.8
Encrypted: string(44) "rdutqb5Xv+aiFAQIgTQX9Bw0eeI6pZXaBcJPeldofqg=" Decrypted: string(4) "tesr"
Output for 5.5.34
Encrypted: string(44) "o7nFVfWlzBDIGH7X58dP1hBCNgr3vF5NsisU/UaFSOM=" Decrypted: string(4) "tesr"
Output for 5.5.33
Encrypted: string(44) "aOE7jBtqJvP72UVUem0kiDbsaUs/2eoNDvQGEkECsYw=" Decrypted: string(4) "tesr"
Output for 5.5.32
Encrypted: string(44) "ohXOY1lgpbqJczmGlbPg4u8SGLgd6vqYWq+kn1qi14k=" Decrypted: string(4) "tesr"
Output for 5.5.31
Encrypted: string(44) "ecu/KCvDJsKXBeOGQgN5XoTRZXQdwe7NoPqwCSnMeWM=" Decrypted: string(4) "tesr"
Output for 5.5.30
Encrypted: string(44) "Zw7qbVC6DmJoP+wJWwNHK/bHFALz64qyRVwBxvcJET0=" Decrypted: string(4) "tesr"
Output for 5.5.29
Encrypted: string(44) "HDR3D1t7Er3MyZA07YBzU3BvDQ9J6H1SBX2FSCu1C/s=" Decrypted: string(4) "tesr"
Output for 5.5.28
Encrypted: string(44) "ljNWm72vQXEIreFJJdAY5XkBoVp2S0opU8I8lMhq1Ig=" Decrypted: string(4) "tesr"
Output for 5.5.27
Encrypted: string(44) "KHmqsvatzyt6zHpuBRIinIHD7O7k4BzxISN/A8Pkgf4=" Decrypted: string(4) "tesr"
Output for 5.5.26
Encrypted: string(44) "M1RDM2NeDkw+FosABCNJpyWsGziiECLjcnpBWrGTzWk=" Decrypted: string(4) "tesr"
Output for 5.5.25
Encrypted: string(44) "Ti+YT1Kr79BwdPOJUMIQ/Aoh+h3/+gYME9GIndcDqQw=" Decrypted: string(4) "tesr"
Output for 5.5.24
Encrypted: string(44) "0zyVcJuATCEYvqQSTvNee4OFIj4eOw7a3pG1klHloDY=" Decrypted: string(4) "tesr"

preferences:
158.63 ms | 401 KiB | 225 Q