3v4l.org

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

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
167.87 ms | 1392 KiB | 23 Q