3v4l.org

run code in 300+ PHP versions simultaneously
<?php // ------- INPUT DATA PART --------- $secured_server_seed = ''; // Input the server seed if you want to validate it $server_seed = ''; $client_seed = ''; $nonce = 0; $roll = 0; // ------- INPUT DATA PART END --------- if (!empty($secured_server_seed)) { $hash_seed = hash('sha256', $server_seed); echo "Server seed: " . (strtolower($secured_server_seed) === strtolower($hash_seed) ? 'valid' : 'invalid') . "\n"; } $game_hash = hash_hmac('sha512', $server_seed, $client_seed . '-' . $nonce); $roll_game = 1 + hexdec(substr($game_hash, 0, 7)) % 10000000; echo "Roll value for \"$nonce\" nonce: $roll_game\n"; echo "Roll is " . ($roll_game === $roll ? 'valid' : 'invalid') . "\n";

preferences:
80.52 ms | 402 KiB | 5 Q