3v4l.org

run code in 200+ php & hhvm versions
Bugs & Features
<?php function insecureEncryptDoNotUse(string $plaintext, string $key): string { return \openssl_encrypt( $plaintext, 'aes-128-ctr', $key, OPENSSL_RAW_DATA | OPENSSL_ZERO_PADDING, str_repeat("\x00", 16) ); } function insecureDecryptDoNotUse(string $ciphertext, string $key): string { return \openssl_decrypt( $ciphertext, 'aes-128-ctr', $key, OPENSSL_RAW_DATA | OPENSSL_ZERO_PADDING, str_repeat("\x00", 16) ); } $key = str_repeat("3.14", 4); $ciphertextA = insecureEncryptDoNotUse('0000000000000001', $key); $xor = str_repeat("\x00", mb_strlen($ciphertextA, '8bit') - 1) . "\x40"; $ciphertextB = $ciphertextA ^ $xor; var_dump(insecureDecryptDoNotUse($ciphertextB, $key));
based on 1XAGa
Output for 7.0.0 - 7.2.11
Fatal error: Uncaught Error: Call to undefined function openssl_encrypt() in /in/8e4J0:6 Stack trace: #0 /in/8e4J0(28): insecureEncryptDoNotUse('000000000000000...', '3.143.143.143.1...') #1 {main} thrown in /in/8e4J0 on line 6
Process exited with code 255.
Output for hhvm-3.15.4 - 3.22.0
string(16) "000000000000000q"
Output for 5.6.0 - 5.6.38
Parse error: syntax error, unexpected ':', expecting '{' in /in/8e4J0 on line 4
Process exited with code 255.