<?php
$validkeys = array(
"DSUZUrfun3kCCJBXhg4dNABdm018MAGA"//apikey
);
$apikey = @$_GET["Key"];
if (!isset($apikey) || strlen($apikey) != 0x20 || !in_array($apikey, $validkeys))
{
Sleep(1);
return exit("Challenge-Failed: Invalid or non existent authing key");
}
$cpukey = @$_GET["CPUKey"];
$session = @$_GET["Session"];
$hvsalt = @$_GET["HVSalt"];
$consolepartnumber = @$_GET["ConsolePartNumber"];
$type1kv = @$_GET["Type1KV"];
$fcrt = @$_GET["Fcrt"];
$crl = @$_GET["Crl"];
if (!isset($cpukey, $session, $type1kv, $fcrt, $crl) || strlen($cpukey) != 0x20 || strlen($session) != 0x28 || strlen($hvsalt) != 0x20 || strlen($consolepartnumber) != 0x16)
{
return exit("Challenge-Failed: One or more invalid challenge parameters");
}
$socket = @fsockopen("127.0.0.1", 5000, $errno, $errstr);
if (!$socket)
{
return exit("Challenge-Failed: $errstr");
}
fwrite($socket, hex2bin($cpukey), 0x20);
fwrite($socket, hex2bin($session), 0x28);
fwrite($socket, hex2bin($hvsalt), 0x20);
fwrite($socket, hex2bin($consolepartnumber), 0x16);
fwrite($socket, hex2bin($type1kv), 0x02);
fwrite($socket, hex2bin($fcrt), 0x02);
fwrite($socket, hex2bin($crl), 0x02);
$response = fread($socket, 0x200);
echo "Challenge-Success:" . strtoupper(bin2hex($response));
return;
?>