3v4l.org

run code in 300+ PHP versions simultaneously
<?php $key = 'P!Fgob$*LKDF D)(F IDD&P?/'; $string = ' RW81TzczRElWOVROZE9MWE1JVmtSWmk3MjRBZW5NdWdWZnhYU29DWEttMVN0VUhmCi1fY3dxWVJJNHNkbXQwVXNHLWoyOVV3OFU1MG1yWnpyR3RXcG8taWF3cUFTVWxyZQpWUFRiTFVUc0hKR0NaNWNFbWx4UXZaRGYzb2xOa2Nibm81Mk9wN2VDRDE3T0hHbE8KZWU1bjhmSXkyUmRfSTI3YWp0NXoxXzJOdjl6N2ZoazZQaHZVQzVkRzY4UklONkVOCnlsTDdRTmlDMlJqRndTUU5Icm1YUmstX09tZzhmN1J1bTdfbzQ0c1pJQkVLOFJWagp4MjdqcXdGSWY1am1kdE5NMXdhRXIzMDJPTENMbXF5endwbFN6cWc4WmFmazRrS0MKaEFNTjJURnZINjBzR0lZSmpTdTJmcDJ6Mnp5WEl4Z2toSV9VWjRwOXloUjdNTFZwClV4SEk2ZC1fRzg4eUphU2FhbGlYS194TFVhYVZ6RFl0S2ZEckNzNkF6dGprLS01UQp2SHJ4R2p6dFZiUHN6OUpyMW9kdGxPc2g1cHVOS0s2YkptOEZFSlJKNFVzZW51U2sKZnFkV0d5ekdPQjA4dXg2R2JIWmlPZkRHUjdRNzYtdnJLOEtmaG9ILVowd3BoRV9zClNEZnIzMW0wMk55TFFCbWdiQTVrOEduOHlIVXlya3NtY2xWSWNtVVFZdXhObkdYbwpRaU56d2tVV0NJVjJZZHR2NjlWeU5GVWctOFZBYk9HNWFxaVJvUGxQZ3IycVlBNG4Kc0JfQWFjd2pkMFV5LWxYRThFZW9BSXhYMFBTbldQUVNwcllyTTRaQ0xvUjRwY3puCm5PakFuclNTZ2UyNWE1bzRweTdUekNVYW5kMlZKNE5Jei1rdnI1Qmp6OW9UZlc3UApwVHZDOGg0cHV0SW1NQWFmLUc5X2xzM1JzSlcwYndXUkVpSnNTT1dSeGQ0 '; // note the spaces $iv = mcrypt_create_iv( mcrypt_get_iv_size(MCRYPT_RIJNDAEL_128, MCRYPT_MODE_CBC), MCRYPT_DEV_URANDOM ); $encrypted = $string; $data = base64_decode($string); $iv = substr($data, 0, mcrypt_get_iv_size(MCRYPT_RIJNDAEL_128, MCRYPT_MODE_CBC)); $decrypted = rtrim( mcrypt_decrypt( MCRYPT_RIJNDAEL_128, hash('base64', $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);
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/hSF3C
function name:  (null)
number of ops:  70
compiled vars:  !0 = $key, !1 = $string, !2 = $iv, !3 = $encrypted, !4 = $data, !5 = $decrypted
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    4     0  E >   ASSIGN                                                   !0, 'P%21Fgob%24%2ALKDF+D%29%28F+IDD%26P%3F%2F'
    5     1        ASSIGN                                                   !1, '+RW81TzczRElWOVROZE9MWE1JVmtSWmk3MjRBZW5NdWdWZnhYU29DWEttMVN0VUhmCi1fY3dxWVJJNHNkbXQwVXNHLWoyOVV3OFU1MG1yWnpyR3RXcG8taWF3cUFTVWxyZQpWUFRiTFVUc0hKR0NaNWNFbWx4UXZaRGYzb2xOa2Nibm81Mk9wN2VDRDE3T0hHbE8KZWU1bjhmSXkyUmRfSTI3YWp0NXoxXzJOdjl6N2ZoazZQaHZVQzVkRzY4UklONkVOCnlsTDdRTmlDMlJqRndTUU5Icm1YUmstX09tZzhmN1J1bTdfbzQ0c1pJQkVLOFJWagp4MjdqcXdGSWY1am1kdE5NMXdhRXIzMDJPTENMbXF5endwbFN6cWc4WmFmazRrS0MKaEFNTjJURnZINjBzR0lZSmpTdTJmcDJ6Mnp5WEl4Z2toSV9VWjRwOXloUjdNTFZwClV4SEk2ZC1fRzg4eUphU2FhbGlYS194TFVhYVZ6RFl0S2ZEckNzNkF6dGprLS01UQp2SHJ4R2p6dFZiUHN6OUpyMW9kdGxPc2g1cHVOS0s2YkptOEZFSlJKNFVzZW51U2sKZnFkV0d5ekdPQjA4dXg2R2JIWmlPZkRHUjdRNzYtdnJLOEtmaG9ILVowd3BoRV9zClNEZnIzMW0wMk55TFFCbWdiQTVrOEduOHlIVXlya3NtY2xWSWNtVVFZdXhObkdYbwpRaU56d2tVV0NJVjJZZHR2NjlWeU5GVWctOFZBYk9HNWFxaVJvUGxQZ3IycVlBNG4Kc0JfQWFjd2pkMFV5LWxYRThFZW9BSXhYMFBTbldQUVNwcllyTTRaQ0xvUjRwY3puCm5PakFuclNTZ2UyNWE1bzRweTdUekNVYW5kMlZKNE5Jei1rdnI1Qmp6OW9UZlc3UApwVHZDOGg0cHV0SW1NQWFmLUc5X2xzM1JzSlcwYndXUkVpSnNTT1dSeGQ0+'
    8     2        INIT_FCALL_BY_NAME                                       'mcrypt_create_iv'
    9     3        INIT_FCALL_BY_NAME                                       'mcrypt_get_iv_size'
          4        FETCH_CONSTANT                                   ~8      'MCRYPT_RIJNDAEL_128'
          5        SEND_VAL_EX                                              ~8
          6        FETCH_CONSTANT                                   ~9      'MCRYPT_MODE_CBC'
          7        SEND_VAL_EX                                              ~9
          8        DO_FCALL                                      0  $10     
          9        SEND_VAR_NO_REF_EX                                       $10
   10    10        FETCH_CONSTANT                                   ~11     'MCRYPT_DEV_URANDOM'
         11        SEND_VAL_EX                                              ~11
         12        DO_FCALL                                      0  $12     
    8    13        ASSIGN                                                   !2, $12
   13    14        ASSIGN                                                   !3, !1
   16    15        INIT_FCALL                                               'base64_decode'
         16        SEND_VAR                                                 !1
         17        DO_ICALL                                         $15     
         18        ASSIGN                                                   !4, $15
   17    19        INIT_FCALL                                               'substr'
         20        SEND_VAR                                                 !4
         21        SEND_VAL                                                 0
         22        INIT_FCALL_BY_NAME                                       'mcrypt_get_iv_size'
         23        FETCH_CONSTANT                                   ~17     'MCRYPT_RIJNDAEL_128'
         24        SEND_VAL_EX                                              ~17
         25        FETCH_CONSTANT                                   ~18     'MCRYPT_MODE_CBC'
         26        SEND_VAL_EX                                              ~18
         27        DO_FCALL                                      0  $19     
         28        SEND_VAR                                                 $19
         29        DO_ICALL                                         $20     
         30        ASSIGN                                                   !2, $20
   19    31        INIT_FCALL                                               'rtrim'
   20    32        INIT_FCALL_BY_NAME                                       'mcrypt_decrypt'
   21    33        FETCH_CONSTANT                                   ~22     'MCRYPT_RIJNDAEL_128'
         34        SEND_VAL_EX                                              ~22
   22    35        INIT_FCALL                                               'hash'
         36        SEND_VAL                                                 'base64'
         37        SEND_VAR                                                 !0
         38        SEND_VAL                                                 <true>
         39        DO_ICALL                                         $23     
         40        SEND_VAR_NO_REF_EX                                       $23
   23    41        INIT_FCALL                                               'substr'
         42        SEND_VAR                                                 !4
         43        INIT_FCALL_BY_NAME                                       'mcrypt_get_iv_size'
         44        FETCH_CONSTANT                                   ~24     'MCRYPT_RIJNDAEL_128'
         45        SEND_VAL_EX                                              ~24
         46        FETCH_CONSTANT                                   ~25     'MCRYPT_MODE_CBC'
         47        SEND_VAL_EX                                              ~25
         48        DO_FCALL                                      0  $26     
         49        SEND_VAR                                                 $26
         50        DO_ICALL                                         $27     
         51        SEND_VAR_NO_REF_EX                                       $27
   24    52        FETCH_CONSTANT                                   ~28     'MCRYPT_MODE_CBC'
         53        SEND_VAL_EX                                              ~28
   21    54        SEND_VAR_EX                                              !2
         55        DO_FCALL                                      0  $29     
         56        SEND_VAR                                                 $29
   27    57        SEND_VAL                                                 '%00'
         58        DO_ICALL                                         $30     
   19    59        ASSIGN                                                   !5, $30
   32    60        ECHO                                                     'Encrypted%3A%0A'
   33    61        INIT_FCALL                                               'var_dump'
         62        SEND_VAR                                                 !3
         63        DO_ICALL                                                 
   35    64        ECHO                                                     '%0A'
   37    65        ECHO                                                     'Decrypted%3A%0A'
   38    66        INIT_FCALL                                               'var_dump'
         67        SEND_VAR                                                 !5
         68        DO_ICALL                                                 
         69      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
163.98 ms | 1400 KiB | 23 Q