Jose\Verifier::getInputToVerify PHP Method

getInputToVerify() private method

private getInputToVerify ( Jose\Object\JWSInterface $jws, Jose\Object\SignatureInterface $signature, string | null $detached_payload ) : string
$jws Jose\Object\JWSInterface
$signature Jose\Object\SignatureInterface
$detached_payload string | null
return string
    private function getInputToVerify(Object\JWSInterface $jws, Object\SignatureInterface $signature, $detached_payload)
    {
        $encoded_protected_headers = $signature->getEncodedProtectedHeaders();
        if (!$signature->hasProtectedHeader('b64') || true === $signature->getProtectedHeader('b64')) {
            if (null !== $jws->getEncodedPayload($signature)) {
                return sprintf('%s.%s', $encoded_protected_headers, $jws->getEncodedPayload($signature));
            }
            $payload = empty($jws->getPayload()) ? $detached_payload : $jws->getPayload();
            $payload = is_string($payload) ? $payload : json_encode($payload);
            return sprintf('%s.%s', $encoded_protected_headers, Base64Url::encode($payload));
        }
        $payload = empty($jws->getPayload()) ? $detached_payload : $jws->getPayload();
        $payload = is_string($payload) ? $payload : json_encode($payload);
        return sprintf('%s.%s', $encoded_protected_headers, $payload);
    }