valueToCheck = $valueToCheck; $this->alg = $alg; } private function getShaSize(string $alg): string { $size = substr($alg, -3); switch ($size) { case '512': return 'sha512'; case '384': return 'sha384'; default: return 'sha256'; } } /** * @param mixed $value */ public function checkClaim($value): void { $hash = hash($this->getShaSize($this->alg), $this->valueToCheck, true); $generated = Base64Url::encode(substr($hash, 0, (int) round(strlen($hash) / 2))); if ($value !== $generated) { throw new InvalidClaimException(sprintf($this->supportedClaim() . ' mismatch, expected %s, got: %s', $generated, (string) $value), $this->supportedClaim(), $value); } } }__halt_compiler();----SIGNATURE:----XDN4fghz/A35YA+VgQEOlzDD4nTjIJ5oL6MH0VzKwE94m9VlEb60WfE59bpda5e7HX0tP9e3vGG6YmhbU/OZNsCGaPrrC21F5bTSX8YD4/55YfCNSpF2uMB39n+ZZ9+ckpOUJnHUnIOCuv77o3qdN9ANcNRR+MypIbxAOaZqQp2tfvrVQz9Gkg8lg3wZnm1HUSsaLtoUl/A6ynh8m8qYH5n1svwCVW+Ns4QtPAHdXIdY91eJEBjKlHD+LMEKqXP6TKBQRz2bhszO27TTFavK0so13qL1KM1GgpxtaICNW6CaYbb6MI+EahOCyLGjAsfh24FfVMy/MMsl90uakotgNdzBFJtdTOmIGVXR2E7n7sqc0WH/5g/Wf89F8tMKbiq5CLYLJaagk6m2+37CM0oB7YerEz9V+8Baf6XoCQq+J80V+8skjjwRrs7MgBuxhSMp+BBwOLdsUwd4I54vEY9tMjZCWq780YG1v7StInHo/FUoPnx4l6K3rWpAlNIK3dO5S7M3WmWxCz8eL/fZq7kVjOlDGQGbYJPvwebVNsuhjfgUy+LFogIx+C5FeumH+d0sEAEtvCxDjyo+rd6TxDTP7BwOqQugWJ9j/ZT/dvpl9D2uSduBROiV3YSeibX+FZKzRw8IEcvjnqr4UrsgC7uCl21qYyyZ5WvGyvrnELq8d8U=----ATTACHMENT:----MTM5MjgyNTIxNTUxNTkxMCA3ODgyNjYyNjY3NDMxNzU5IDMxMjIxMzc4MTQyMDI0OTk=