/** * @param array $queryParameters * * @return DeOrbitCallback * @throws InvalidRequestError */ private function handDeOrbitCallback(array $queryParameters) { if (!$this->cryptService->verifySignature($queryParameters["signature"], $queryParameters["deorbit"], $this->getPublicKey())) { throw new InvalidRequestError("Invalid signature for de-orbit callback"); } $data = json_decode($queryParameters["deorbit"], true); $lkTime = $this->getLaunchKeyDate($data["launchkey_time"]); return new DeOrbitCallback($lkTime, $data["user_hash"]); }
public function testVerifySignatureReturnsFalseWhenPlainTextSignatureIsNotValid() { $actual = $this->service->verifySignature(base64_decode(static::BASE64_RSA_ENCRYPTED), base64_decode(static::BASE64_RSA_ENCRYPTED), static::PUBLIC_KEY, false); $this->assertFalse($actual); }