3v4l.org

run code in 300+ PHP versions simultaneously
<?php $key = 'RainBow'; $encrypted = 'iVBORw0KGgoAAAANSUhEUgAAAZAAAAGQAQMAAAC6caSPAAAABlBMVEX///8AAABVwtN+AAAEVElEQVR4nO2bTXKdQAyERbFgyRE4CkeDo3EUjsCSBYUy3dIM2G8Tu2omWWic50psvmy69NcaROLUP53yXCK96jmc6Ufjgc+0y5R+saUfzLrKsi72ZCBtkBvq9FevV39SqYG/OSQxeHybE5UeX5cV/w6kFZLEvPvLlRz49HiMSiV3ASBgEgIhA2mLuJQpxgZEmOJxKokI21KESSD/AmHq09MDzM4+PalPAmmMeOpDkBlxpAhLck4QM2U+TckPae8zWwbyt4hJcAEaTn4RGfcJX9vMr1T1P1uFQCoi5SQtB5QYPZHEIGUKl31mwLDuy8cJpB5CKe8eYnrdJ8I0ligqiWYMH2EaC6QFQm1uVBdj0CcfXvcn1c0K/0o15YmvQCojqe5nQCnkcKJLppQWYllLxJhly0DqIy8lUZJStyDWKcjH/EItA/kF0mnqepHH1IoLxhGGS5Jl5zCSx/dX6gukAQLm8lHEh8RRMb0nKa3qz2qJTCSQVggCrMPw7n0y6wuCDMCOwd1bssSIn0DqI+jH7u7i3wd2ZKeZw7SGre47sWpRP5DaiGnJwdICjDVJGGHpz8bkx8SI1KdPjAVSFUn1CJy3ych+bBVGepAl+Qn75NyMBVIfMTHpjiHOWJJQkQ6f96mlefbL0ycH8iOEunQYRRgvaJU9jVndn00ZuF0EAmmDWKOs1pExjVndz/GySU5jUtQPpAFitj1XVsPLtbf5ZfIsRtOeTwfSBkGIlVsRNvCPhw+W9rilPh7J4gdSG7HJMu8RxaWkaW+PaR73pXRwgTRB7u61effnuOQCtlmz8L4REchPEY4i95euF/HiGyv1ArO+dQmkBfLksWxCljzmfbKW8/TJgVRGGGE0Vcy0Z30ZGWKa3a7N7p1IqUmBVEc6V/Ky1TulVIsxP1BzzakvkFaIGmBS+vwCNXc8PjHzbfPKqyriUgZSHxFmPzfttUjJirS7lOVmVzG7AvkRgjuK7zyWzS5bWOGgI+PVOUyJGkgz5LZExnhBo3zk1buZKnP6tqhdCfI+OZAWiPqtxt72Iu7Aaxaz3DpZXiEWSG3EPEi7Pif0h3mpcaTZJcW0z0pqIG2QIiXNrrx4NyF9skSbvLg5LIE0QWz1Dqvr8gWvL7kmmJAT4otBZn3ya1sfSANELPUN2bTXclJ8iUm56GPEBPJDBJtEvvjJS/AY3mn1sk+eTBP1CvNciAikOqJ2wSExJ1e8thnhdaBsQ86Wx1QCaYX4XsSvz8FWGXKE7cKhUs1UsSOBtEHy4UXg/AL7943V/MW0D6QBkre7Pe8Pqd+fU3/3jY49fBir+9nnD6Q+4u+K2odSErElF6KMu0dcIBL+54H8BunK2+haTEi/3oCQoavieUwCaY5cXx14SCm2eH9t3il0IG0RVXttxM1h+W7a53IUSBPEUl9/Paa92MaKATZzwYvB0re8gbRBmNOY965n3Ld3eXZbJGpZpqhqIG2QOP/l+QPs8HUSjWdh7wAAAABJRU5ErkJggg=='; $encrypted = 'ypsEp4Hi0cbf8b9Dcjq/Mbjf41Pge2Fffcf53coEt5gm0IcbNB3UgU74a65QSo4tYoqImg4jGM46YPIUbqmPxw=='; $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/ftJqo
function name:  (null)
number of ops:  58
compiled vars:  !0 = $key, !1 = $encrypted, !2 = $data, !3 = $iv, !4 = $decrypted
line      #* E I O op                           fetch          ext  return  operands
-------------------------------------------------------------------------------------
    4     0  E >   ASSIGN                                                   !0, 'RainBow'
    5     1        ASSIGN                                                   !1, 'iVBORw0KGgoAAAANSUhEUgAAAZAAAAGQAQMAAAC6caSPAAAABlBMVEX%2F%2F%2F8AAABVwtN%2BAAAEVElEQVR4nO2bTXKdQAyERbFgyRE4CkeDo3EUjsCSBYUy3dIM2G8Tu2omWWic50psvmy69NcaROLUP53yXCK96jmc6Ufjgc%2B0y5R%2BsaUfzLrKsi72ZCBtkBvq9FevV39SqYG%2FOSQxeHybE5UeX5cV%2Fw6kFZLEvPvLlRz49HiMSiV3ASBgEgIhA2mLuJQpxgZEmOJxKokI21KESSD%2FAmHq09MDzM4%2BPalPAmmMeOpDkBlxpAhLck4QM2U%2BTckPae8zWwbyt4hJcAEaTn4RGfcJX9vMr1T1P1uFQCoi5SQtB5QYPZHEIGUKl31mwLDuy8cJpB5CKe8eYnrdJ8I0ligqiWYMH2EaC6QFQm1uVBdj0CcfXvcn1c0K%2F0o15YmvQCojqe5nQCnkcKJLppQWYllLxJhly0DqIy8lUZJStyDWKcjH%2FEItA%2FkF0mnqepHH1IoLxhGGS5Jl5zCSx%2FdX6gukAQLm8lHEh8RRMb0nKa3qz2qJTCSQVggCrMPw7n0y6wuCDMCOwd1bssSIn0DqI%2BjH7u7i3wd2ZKeZw7SGre47sWpRP5DaiGnJwdICjDVJGGHpz8bkx8SI1KdPjAVSFUn1CJy3ych%2BbBVGepAl%2BQn75NyMBVIfMTHpjiHOWJJQkQ6f96mlefbL0ycH8iOEunQYRRgvaJU9jVndn00ZuF0EAmmDWKOs1pExjVndz%2FGySU5jUtQPpAFitj1XVsPLtbf5ZfIsRtOeTwfSBkGIlVsRNvCPhw%2BW9rilPh7J4gdSG7HJMu8RxaWkaW%2BPaR73pXRwgTRB7u61effnuOQCtlmz8L4REchPEY4i95euF%2FHiGyv1ArO%2BdQmkBfLksWxCljzmfbKW8%2FTJgVRGGGE0Vcy0Z30ZGWKa3a7N7p1IqUmBVEc6V%2FKy1TulVIsxP1BzzakvkFaIGmBS%2BvwCNXc8PjHzbfPKqyriUgZSHxFmPzfttUjJirS7lOVmVzG7AvkRgjuK7zyWzS5bWOGgI%2BPVOUyJGkgz5LZExnhBo3zk1buZKnP6tqhdCfI%2BOZAWiPqtxt72Iu7Aaxaz3DpZXiEWSG3EPEi7Pif0h3mpcaTZJcW0z0pqIG2QIiXNrrx4NyF9skSbvLg5LIE0QWz1Dqvr8gWvL7kmmJAT4otBZn3ya1sfSANELPUN2bTXclJ8iUm56GPEBPJDBJtEvvjJS%2FAY3mn1sk%2BeTBP1CvNciAikOqJ2wSExJ1e8thnhdaBsQ86Wx1QCaYX4XsSvz8FWGXKE7cKhUs1UsSOBtEHy4UXg%2FAL7943V%2FMW0D6QBkre7Pe8Pqd%2BfU3%2F3jY49fBir%2B9nnD6Q%2B4u%2BK2odSErElF6KMu0dcIBL%2B54H8BunK2%2BhaTEi%2F3oCQoavieUwCaY5cXx14SCm2eH9t3il0IG0RVXttxM1h%2BW7a53IUSBPEUl9%2FPaa92MaKATZzwYvB0re8gbRBmNOY965n3Ld3eXZbJGpZpqhqIG2QOP%2Fl%2BQPs8HUSjWdh7wAAAABJRU5ErkJggg%3D%3D'
    7     2        ASSIGN                                                   !1, 'ypsEp4Hi0cbf8b9Dcjq%2FMbjf41Pge2Fffcf53coEt5gm0IcbNB3UgU74a65QSo4tYoqImg4jGM46YPIUbqmPxw%3D%3D'
    8     3        INIT_FCALL                                               'base64_decode'
          4        SEND_VAR                                                 !1
          5        DO_ICALL                                         $8      
          6        ASSIGN                                                   !2, $8
    9     7        INIT_FCALL                                               'substr'
          8        SEND_VAR                                                 !2
          9        SEND_VAL                                                 0
         10        INIT_FCALL_BY_NAME                                       'mcrypt_get_iv_size'
         11        FETCH_CONSTANT                                   ~10     'MCRYPT_RIJNDAEL_128'
         12        SEND_VAL_EX                                              ~10
         13        FETCH_CONSTANT                                   ~11     'MCRYPT_MODE_CBC'
         14        SEND_VAL_EX                                              ~11
         15        DO_FCALL                                      0  $12     
         16        SEND_VAR                                                 $12
         17        DO_ICALL                                         $13     
         18        ASSIGN                                                   !3, $13
   11    19        INIT_FCALL                                               'rtrim'
   12    20        INIT_FCALL_BY_NAME                                       'mcrypt_decrypt'
   13    21        FETCH_CONSTANT                                   ~15     'MCRYPT_RIJNDAEL_128'
         22        SEND_VAL_EX                                              ~15
   14    23        INIT_FCALL                                               'hash'
         24        SEND_VAL                                                 'sha256'
         25        SEND_VAR                                                 !0
         26        SEND_VAL                                                 <true>
         27        DO_ICALL                                         $16     
         28        SEND_VAR_NO_REF_EX                                       $16
   15    29        INIT_FCALL                                               'substr'
         30        SEND_VAR                                                 !2
         31        INIT_FCALL_BY_NAME                                       'mcrypt_get_iv_size'
         32        FETCH_CONSTANT                                   ~17     'MCRYPT_RIJNDAEL_128'
         33        SEND_VAL_EX                                              ~17
         34        FETCH_CONSTANT                                   ~18     'MCRYPT_MODE_CBC'
         35        SEND_VAL_EX                                              ~18
         36        DO_FCALL                                      0  $19     
         37        SEND_VAR                                                 $19
         38        DO_ICALL                                         $20     
         39        SEND_VAR_NO_REF_EX                                       $20
   16    40        FETCH_CONSTANT                                   ~21     'MCRYPT_MODE_CBC'
         41        SEND_VAL_EX                                              ~21
   13    42        SEND_VAR_EX                                              !3
         43        DO_FCALL                                      0  $22     
         44        SEND_VAR                                                 $22
   19    45        SEND_VAL                                                 '%00'
         46        DO_ICALL                                         $23     
   11    47        ASSIGN                                                   !4, $23
   24    48        ECHO                                                     'Encrypted%3A%0A'
   25    49        INIT_FCALL                                               'var_dump'
         50        SEND_VAR                                                 !1
         51        DO_ICALL                                                 
   27    52        ECHO                                                     '%0A'
   29    53        ECHO                                                     'Decrypted%3A%0A'
   30    54        INIT_FCALL                                               'var_dump'
         55        SEND_VAR                                                 !4
         56        DO_ICALL                                                 
         57      > RETURN                                                   1

Generated using Vulcan Logic Dumper, using php 8.0.0


preferences:
192.83 ms | 1400 KiB | 23 Q