3v4l.org

run code in 300+ PHP versions simultaneously
<?php $encAlgo = 'rijndael-256'; $encMode = 'ecb'; function encrypt_base64_urlenc($secret, $shared) { global $encAlgo; global $encMode; $secret .= '\0'; return rawurlencode( base64_encode( trim(mcrypt_encrypt( $encAlgo, $shared, $secret, $encMode, mcrypt_create_iv( mcrypt_get_iv_size( $encAlgo, $encMode ), 2 ) ), "\0") ) ); } function decrypt_base64($secret, $shared) { global $encAlgo; global $encMode; $result = trim(mcrypt_decrypt( $encAlgo, $shared, base64_decode(strtr($secret,' ','+')), $encMode, mcrypt_create_iv( mcrypt_get_iv_size( $encAlgo, $encMode ), 2 ) ), "\0"); $terminator = strpos($result, '\0'); if ( $terminator !== -1 ) return substr($result, 0, $terminator); return $result; } $test = encrypt_base64_urlenc('thisisatest','derpderp'); echo "$test\n"; $decd = decrypt_base64(rawurldecode($test),'derpderp'); echo "$decd\n"; $v = 'UQZv+VpZTlLkjPSaNnkrnDUMXH1pHKb/Jd7Aq+g9exo='; $k = base64_decode('WOZ5NTIR9HrGM6bdehY0LMG8rmnnvplUprgSJE4cl1Y='); echo decrypt_base64($v, $k);

preferences:
48.18 ms | 402 KiB | 5 Q