public static function isValid($response, $username = "", $salt = "", $panel = true) { if ($panel) { $_username = "******"; $_name = "_panel_name"; $_ninjaPower = "_panel_ninja_power"; $_hash = "_panel_hash"; $_user_ref = "_panel_user_ref"; } else { $_username = "******"; $_name = "_openctf_name"; $_ninjaPower = "_openctf_ninja_power"; $_hash = "_openctf_hash"; $_user_ref = "_openctf_user_ref"; } $response->cookie($_user_ref, $username, time() + 86400 * 30, "/", Session::getDomain(), Session::isSecure()); if ($username == "" && $salt == "") { if (isset($_COOKIE[$_username]) && isset($_COOKIE[$_name]) && isset($_COOKIE[$_ninjaPower]) && isset($_COOKIE[$_hash])) { return true; } } if (isset($_COOKIE[$_username]) && isset($_COOKIE[$_name]) && isset($_COOKIE[$_ninjaPower]) && isset($_COOKIE[$_hash])) { if ($username == $_COOKIE[$_username]) { $time = Security::decrypt($_COOKIE[$_ninjaPower], $salt); $hash = hash("sha256", $salt . $username . $time); if ($hash == $_COOKIE[$_hash]) { return true; } else { return false; } } else { return false; } } else { return false; } }