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 = $timestamp.";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); srand(time()); $ivSize = mcrypt_get_iv_size(MCRYPT_RIJNDAEL_128, MCRYPT_MODE_CBC); $iv = mcrypt_create_iv($ivSize,MCRYPT_RAND); $encryptedMessage = mcrypt_encrypt(MCRYPT_RIJNDAEL_128, $encryptionKey, $message,MCRYPT_MODE_CBC, $iv); $hmac = hash_hmac("sha1", $encryptedMessage.$iv, $checksumKey, true); $authorizationToken = base64_encode($encryptedMessage.$iv.$hmac) ?>
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/aMev0
function name:  (null)
number of ops:  84
compiled vars:  !0 = $encryptionKey, !1 = $checksumKey, !2 = $timestamp, !3 = $message, !4 = $blockSize, !5 = $padding, !6 = $ivSize, !7 = $iv, !8 = $encryptedMessage, !9 = $hmac, !10 = $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                                         $11     
          3        ASSIGN                                                   !0, $11
    3     4        INIT_FCALL                                               'base64_decode'
          5        SEND_VAL                                                 'xPwnkqGeQXmMJom48pSEdRmU1MXQ8kr3jCey20d%2Beu8%3D'
          6        DO_ICALL                                         $13     
          7        ASSIGN                                                   !1, $13
    5     8        INIT_FCALL                                               'floor'
          9        INIT_FCALL                                               'microtime'
         10        SEND_VAL                                                 <true>
         11        DO_ICALL                                         $15     
         12        MUL                                              ~16     $15, 1000
         13        SEND_VAL                                                 ~16
         14        DO_ICALL                                         $17     
         15        ASSIGN                                                   !2, $17
    6    16        CONCAT                                           ~19     !2, '%3Bfriendfinder123'
         17        ASSIGN                                                   !3, ~19
    7    18        ROPE_INIT                                     3  ~22     '%3CP%3EMessage%3A+'
         19        ROPE_ADD                                      1  ~22     ~22, !3
         20        ROPE_END                                      2  ~21     ~22, '%0A'
         21        ECHO                                                     ~21
    8    22        INIT_FCALL_BY_NAME                                       'mcrypt_get_block_size'
         23        FETCH_CONSTANT                                   ~24     'MCRYPT_RIJNDAEL_128'
         24        SEND_VAL_EX                                              ~24
         25        FETCH_CONSTANT                                   ~25     'MCRYPT_MODE_CBC'
         26        SEND_VAL_EX                                              ~25
         27        DO_FCALL                                      0  $26     
         28        ASSIGN                                                   !4, $26
    9    29        STRLEN                                           ~28     !3
         30        MOD                                              ~29     ~28, !4
         31        SUB                                              ~30     !4, ~29
         32        ASSIGN                                                   !5, ~30
   10    33        INIT_FCALL                                               'str_repeat'
         34        INIT_FCALL                                               'chr'
         35        SEND_VAR                                                 !5
         36        DO_ICALL                                         $32     
         37        SEND_VAR                                                 $32
         38        SEND_VAR                                                 !5
         39        DO_ICALL                                         $33     
         40        ASSIGN_OP                                     8          !3, $33
   12    41        INIT_FCALL                                               'srand'
         42        INIT_FCALL                                               'time'
         43        DO_ICALL                                         $35     
         44        SEND_VAR                                                 $35
         45        DO_ICALL                                                 
   13    46        INIT_FCALL_BY_NAME                                       'mcrypt_get_iv_size'
         47        FETCH_CONSTANT                                   ~37     'MCRYPT_RIJNDAEL_128'
         48        SEND_VAL_EX                                              ~37
         49        FETCH_CONSTANT                                   ~38     'MCRYPT_MODE_CBC'
         50        SEND_VAL_EX                                              ~38
         51        DO_FCALL                                      0  $39     
         52        ASSIGN                                                   !6, $39
   14    53        INIT_FCALL_BY_NAME                                       'mcrypt_create_iv'
         54        SEND_VAR_EX                                              !6
         55        FETCH_CONSTANT                                   ~41     'MCRYPT_RAND'
         56        SEND_VAL_EX                                              ~41
         57        DO_FCALL                                      0  $42     
         58        ASSIGN                                                   !7, $42
   16    59        INIT_FCALL_BY_NAME                                       'mcrypt_encrypt'
         60        FETCH_CONSTANT                                   ~44     'MCRYPT_RIJNDAEL_128'
         61        SEND_VAL_EX                                              ~44
         62        SEND_VAR_EX                                              !0
         63        SEND_VAR_EX                                              !3
         64        FETCH_CONSTANT                                   ~45     'MCRYPT_MODE_CBC'
         65        SEND_VAL_EX                                              ~45
         66        SEND_VAR_EX                                              !7
         67        DO_FCALL                                      0  $46     
         68        ASSIGN                                                   !8, $46
   18    69        INIT_FCALL                                               'hash_hmac'
         70        SEND_VAL                                                 'sha1'
         71        CONCAT                                           ~48     !8, !7
         72        SEND_VAL                                                 ~48
         73        SEND_VAR                                                 !1
         74        SEND_VAL                                                 <true>
         75        DO_ICALL                                         $49     
         76        ASSIGN                                                   !9, $49
   20    77        INIT_FCALL                                               'base64_encode'
         78        CONCAT                                           ~51     !8, !7
         79        CONCAT                                           ~52     ~51, !9
         80        SEND_VAL                                                 ~52
         81        DO_ICALL                                         $53     
         82        ASSIGN                                                   !10, $53
   21    83      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
158.95 ms | 1400 KiB | 31 Q