3v4l.org

run code in 300+ PHP versions simultaneously
<?php function decryptData($value){ $key = "ICS2015"; $crypttext = base64_decode($value); $iv_size = mcrypt_get_iv_size(MCRYPT_RIJNDAEL_256, MCRYPT_MODE_ECB); $iv = mcrypt_create_iv($iv_size, MCRYPT_RAND); $decrypttext = mcrypt_decrypt(MCRYPT_RIJNDAEL_256, $key, $crypttext, MCRYPT_MODE_ECB, $iv); return trim($decrypttext); } function encryptData($value) { $key = "ICS2015"; $text = $value; // getting the size of the IV (Initialization Vector) belonging to a specific cipher / mode combination // Accept two params // 1: cipher (MCPYPT_ciphername constraint or the name of algorithms string) // 2: mode (MCPYPT_MODE_modename constraint or one of the following string - ecb, cbc, cfb, ofb, nofb or stream ) $iv_size = mcrypt_get_iv_size(MCRYPT_RIJNDAEL_256, MCRYPT_MODE_ECB); // Create an initialization vector(IV) from RANDOM source $iv = mcrypt_create_iv($iv_size, MCRYPT_RAND); // Encrypt plaintext with given params $crypttext = mcrypt_encrypt(MCRYPT_RIJNDAEL_256, $key, $text, MCRYPT_MODE_ECB, $iv); return base64_encode($crypttext); } $data = 'testdata'; $encData = encryptData($data); $decData = decryptData($encData); echo "$data : " + $data + "\r\n"; echo "$encData : " + $encData + "\r\n"; echo "$decData : " + $decData + "\r\n"; ?>
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/UnUjb
function name:  (null)
number of ops:  25
compiled vars:  !0 = $data, !1 = $encData, !2 = $decData
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   32     0  E >   ASSIGN                                                   !0, 'testdata'
   33     1        INIT_FCALL                                               'encryptdata'
          2        SEND_VAR                                                 !0
          3        DO_FCALL                                      0  $4      
          4        ASSIGN                                                   !1, $4
   34     5        INIT_FCALL                                               'decryptdata'
          6        SEND_VAR                                                 !1
          7        DO_FCALL                                      0  $6      
          8        ASSIGN                                                   !2, $6
   35     9        NOP                                                      
         10        FAST_CONCAT                                      ~8      !0, '+%3A+'
         11        ADD                                              ~9      ~8, !0
         12        ADD                                              ~10     ~9, '%0D%0A'
         13        ECHO                                                     ~10
   36    14        NOP                                                      
         15        FAST_CONCAT                                      ~11     !1, '+%3A+'
         16        ADD                                              ~12     ~11, !1
         17        ADD                                              ~13     ~12, '%0D%0A'
         18        ECHO                                                     ~13
   37    19        NOP                                                      
         20        FAST_CONCAT                                      ~14     !2, '+%3A+'
         21        ADD                                              ~15     ~14, !2
         22        ADD                                              ~16     ~15, '%0D%0A'
         23        ECHO                                                     ~16
   39    24      > RETURN                                                   1

Function decryptdata:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/UnUjb
function name:  decryptData
number of ops:  34
compiled vars:  !0 = $value, !1 = $key, !2 = $crypttext, !3 = $iv_size, !4 = $iv, !5 = $decrypttext
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    5     0  E >   RECV                                             !0      
    6     1        ASSIGN                                                   !1, 'ICS2015'
    7     2        INIT_FCALL                                               'base64_decode'
          3        SEND_VAR                                                 !0
          4        DO_ICALL                                         $7      
          5        ASSIGN                                                   !2, $7
    8     6        INIT_FCALL_BY_NAME                                       'mcrypt_get_iv_size'
          7        FETCH_CONSTANT                                   ~9      'MCRYPT_RIJNDAEL_256'
          8        SEND_VAL_EX                                              ~9
          9        FETCH_CONSTANT                                   ~10     'MCRYPT_MODE_ECB'
         10        SEND_VAL_EX                                              ~10
         11        DO_FCALL                                      0  $11     
         12        ASSIGN                                                   !3, $11
    9    13        INIT_FCALL_BY_NAME                                       'mcrypt_create_iv'
         14        SEND_VAR_EX                                              !3
         15        FETCH_CONSTANT                                   ~13     'MCRYPT_RAND'
         16        SEND_VAL_EX                                              ~13
         17        DO_FCALL                                      0  $14     
         18        ASSIGN                                                   !4, $14
   10    19        INIT_FCALL_BY_NAME                                       'mcrypt_decrypt'
         20        FETCH_CONSTANT                                   ~16     'MCRYPT_RIJNDAEL_256'
         21        SEND_VAL_EX                                              ~16
         22        SEND_VAR_EX                                              !1
         23        SEND_VAR_EX                                              !2
         24        FETCH_CONSTANT                                   ~17     'MCRYPT_MODE_ECB'
         25        SEND_VAL_EX                                              ~17
         26        SEND_VAR_EX                                              !4
         27        DO_FCALL                                      0  $18     
         28        ASSIGN                                                   !5, $18
   11    29        INIT_FCALL                                               'trim'
         30        SEND_VAR                                                 !5
         31        DO_ICALL                                         $20     
         32      > RETURN                                                   $20
   12    33*     > RETURN                                                   null

End of function decryptdata

Function encryptdata:
Finding entry points
Branch analysis from position: 0
1 jumps found. (Code = 62) Position 1 = -2
filename:       /in/UnUjb
function name:  encryptData
number of ops:  31
compiled vars:  !0 = $value, !1 = $key, !2 = $text, !3 = $iv_size, !4 = $iv, !5 = $crypttext
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
   14     0  E >   RECV                                             !0      
   16     1        ASSIGN                                                   !1, 'ICS2015'
   17     2        ASSIGN                                                   !2, !0
   22     3        INIT_FCALL_BY_NAME                                       'mcrypt_get_iv_size'
          4        FETCH_CONSTANT                                   ~8      'MCRYPT_RIJNDAEL_256'
          5        SEND_VAL_EX                                              ~8
          6        FETCH_CONSTANT                                   ~9      'MCRYPT_MODE_ECB'
          7        SEND_VAL_EX                                              ~9
          8        DO_FCALL                                      0  $10     
          9        ASSIGN                                                   !3, $10
   25    10        INIT_FCALL_BY_NAME                                       'mcrypt_create_iv'
         11        SEND_VAR_EX                                              !3
         12        FETCH_CONSTANT                                   ~12     'MCRYPT_RAND'
         13        SEND_VAL_EX                                              ~12
         14        DO_FCALL                                      0  $13     
         15        ASSIGN                                                   !4, $13
   27    16        INIT_FCALL_BY_NAME                                       'mcrypt_encrypt'
         17        FETCH_CONSTANT                                   ~15     'MCRYPT_RIJNDAEL_256'
         18        SEND_VAL_EX                                              ~15
         19        SEND_VAR_EX                                              !1
         20        SEND_VAR_EX                                              !2
         21        FETCH_CONSTANT                                   ~16     'MCRYPT_MODE_ECB'
         22        SEND_VAL_EX                                              ~16
         23        SEND_VAR_EX                                              !4
         24        DO_FCALL                                      0  $17     
         25        ASSIGN                                                   !5, $17
   29    26        INIT_FCALL                                               'base64_encode'
         27        SEND_VAR                                                 !5
         28        DO_ICALL                                         $19     
         29      > RETURN                                                   $19
   30    30*     > RETURN                                                   null

End of function encryptdata

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
178.58 ms | 1407 KiB | 21 Q