3v4l.org

run code in 300+ PHP versions simultaneously
<?php $encryptionKey = base64_decode("xErBbroP73A4DPhHAIEMul6zf9lenyuEno04tmdWZ3g="); $checksumKey = base64_decode("xPwnkqGeQXmMJom48pSEdRmU1MXQ8kr3jCey20d+eu8="); $timestamp = floor(microtime(true)*1000); $message = "13970168083796;friendfinder123"; echo "<P>Message: $message\n"; $blockSize = mcrypt_get_block_size(MCRYPT_RIJNDAEL_128, MCRYPT_MODE_CBC); $padding = $blockSize - (strlen($message) % $blockSize); $message .= str_repeat(chr($padding), $padding); echo "<P>Message 1: $message\n"; srand(time()); $ivSize = mcrypt_get_iv_size(MCRYPT_RIJNDAEL_128, MCRYPT_MODE_CBC); $iv = mcrypt_create_iv($ivSize,MCRYPT_RAND); $iv = "#@dkL$*T"; echo "<P>IV: ($iv)\n"; $encryptedMessage = mcrypt_encrypt(MCRYPT_RIJNDAEL_128, $encryptionKey, $message,MCRYPT_MODE_CBC, $iv); $newmessage = base64_encode($encryptedMessage); echo "<P>newmessage: $newmessage\n"; $hmac = hash_hmac("sha1", $encryptedMessage.$iv, $checksumKey, true); $authorizationToken = base64_encode($encryptedMessage.$iv.$hmac); echo "<P>authorizationToken: $authorizationToken \n"; ?>
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/ubT0P
function name:  (null)
number of ops:  104
compiled vars:  !0 = $encryptionKey, !1 = $checksumKey, !2 = $timestamp, !3 = $message, !4 = $blockSize, !5 = $padding, !6 = $ivSize, !7 = $iv, !8 = $encryptedMessage, !9 = $newmessage, !10 = $hmac, !11 = $authorizationToken
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    2     0  E >   INIT_FCALL                                               'base64_decode'
          1        SEND_VAL                                                 'xErBbroP73A4DPhHAIEMul6zf9lenyuEno04tmdWZ3g%3D'
          2        DO_ICALL                                         $12     
          3        ASSIGN                                                   !0, $12
    3     4        INIT_FCALL                                               'base64_decode'
          5        SEND_VAL                                                 'xPwnkqGeQXmMJom48pSEdRmU1MXQ8kr3jCey20d%2Beu8%3D'
          6        DO_ICALL                                         $14     
          7        ASSIGN                                                   !1, $14
    5     8        INIT_FCALL                                               'floor'
          9        INIT_FCALL                                               'microtime'
         10        SEND_VAL                                                 <true>
         11        DO_ICALL                                         $16     
         12        MUL                                              ~17     $16, 1000
         13        SEND_VAL                                                 ~17
         14        DO_ICALL                                         $18     
         15        ASSIGN                                                   !2, $18
    6    16        ASSIGN                                                   !3, '13970168083796%3Bfriendfinder123'
    7    17        ROPE_INIT                                     3  ~22     '%3CP%3EMessage%3A+'
         18        ROPE_ADD                                      1  ~22     ~22, !3
         19        ROPE_END                                      2  ~21     ~22, '%0A'
         20        ECHO                                                     ~21
    8    21        INIT_FCALL_BY_NAME                                       'mcrypt_get_block_size'
         22        FETCH_CONSTANT                                   ~24     'MCRYPT_RIJNDAEL_128'
         23        SEND_VAL_EX                                              ~24
         24        FETCH_CONSTANT                                   ~25     'MCRYPT_MODE_CBC'
         25        SEND_VAL_EX                                              ~25
         26        DO_FCALL                                      0  $26     
         27        ASSIGN                                                   !4, $26
    9    28        STRLEN                                           ~28     !3
         29        MOD                                              ~29     ~28, !4
         30        SUB                                              ~30     !4, ~29
         31        ASSIGN                                                   !5, ~30
   10    32        INIT_FCALL                                               'str_repeat'
         33        INIT_FCALL                                               'chr'
         34        SEND_VAR                                                 !5
         35        DO_ICALL                                         $32     
         36        SEND_VAR                                                 $32
         37        SEND_VAR                                                 !5
         38        DO_ICALL                                         $33     
         39        ASSIGN_OP                                     8          !3, $33
   11    40        ROPE_INIT                                     3  ~36     '%3CP%3EMessage+1%3A+'
         41        ROPE_ADD                                      1  ~36     ~36, !3
         42        ROPE_END                                      2  ~35     ~36, '%0A'
         43        ECHO                                                     ~35
   13    44        INIT_FCALL                                               'srand'
         45        INIT_FCALL                                               'time'
         46        DO_ICALL                                         $38     
         47        SEND_VAR                                                 $38
         48        DO_ICALL                                                 
   14    49        INIT_FCALL_BY_NAME                                       'mcrypt_get_iv_size'
         50        FETCH_CONSTANT                                   ~40     'MCRYPT_RIJNDAEL_128'
         51        SEND_VAL_EX                                              ~40
         52        FETCH_CONSTANT                                   ~41     'MCRYPT_MODE_CBC'
         53        SEND_VAL_EX                                              ~41
         54        DO_FCALL                                      0  $42     
         55        ASSIGN                                                   !6, $42
   15    56        INIT_FCALL_BY_NAME                                       'mcrypt_create_iv'
         57        SEND_VAR_EX                                              !6
         58        FETCH_CONSTANT                                   ~44     'MCRYPT_RAND'
         59        SEND_VAL_EX                                              ~44
         60        DO_FCALL                                      0  $45     
         61        ASSIGN                                                   !7, $45
   16    62        ASSIGN                                                   !7, '%23%40dkL%24%2AT'
   17    63        ROPE_INIT                                     3  ~49     '%3CP%3EIV%3A+%28'
         64        ROPE_ADD                                      1  ~49     ~49, !7
         65        ROPE_END                                      2  ~48     ~49, '%29%0A'
         66        ECHO                                                     ~48
   19    67        INIT_FCALL_BY_NAME                                       'mcrypt_encrypt'
         68        FETCH_CONSTANT                                   ~51     'MCRYPT_RIJNDAEL_128'
         69        SEND_VAL_EX                                              ~51
         70        SEND_VAR_EX                                              !0
         71        SEND_VAR_EX                                              !3
         72        FETCH_CONSTANT                                   ~52     'MCRYPT_MODE_CBC'
         73        SEND_VAL_EX                                              ~52
         74        SEND_VAR_EX                                              !7
         75        DO_FCALL                                      0  $53     
         76        ASSIGN                                                   !8, $53
   21    77        INIT_FCALL                                               'base64_encode'
         78        SEND_VAR                                                 !8
         79        DO_ICALL                                         $55     
         80        ASSIGN                                                   !9, $55
   22    81        ROPE_INIT                                     3  ~58     '%3CP%3Enewmessage%3A+'
         82        ROPE_ADD                                      1  ~58     ~58, !9
         83        ROPE_END                                      2  ~57     ~58, '%0A'
         84        ECHO                                                     ~57
   24    85        INIT_FCALL                                               'hash_hmac'
         86        SEND_VAL                                                 'sha1'
         87        CONCAT                                           ~60     !8, !7
         88        SEND_VAL                                                 ~60
         89        SEND_VAR                                                 !1
         90        SEND_VAL                                                 <true>
         91        DO_ICALL                                         $61     
         92        ASSIGN                                                   !10, $61
   26    93        INIT_FCALL                                               'base64_encode'
         94        CONCAT                                           ~63     !8, !7
         95        CONCAT                                           ~64     ~63, !10
         96        SEND_VAL                                                 ~64
         97        DO_ICALL                                         $65     
         98        ASSIGN                                                   !11, $65
   27    99        ROPE_INIT                                     3  ~68     '%3CP%3EauthorizationToken%3A+'
        100        ROPE_ADD                                      1  ~68     ~68, !11
        101        ROPE_END                                      2  ~67     ~68, '+%0A'
        102        ECHO                                                     ~67
   29   103      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
159.01 ms | 1404 KiB | 31 Q