diff options
Diffstat (limited to 'vendor/web-token/jwt-signature-algorithm-none/None.php')
-rw-r--r-- | vendor/web-token/jwt-signature-algorithm-none/None.php | 48 |
1 files changed, 48 insertions, 0 deletions
diff --git a/vendor/web-token/jwt-signature-algorithm-none/None.php b/vendor/web-token/jwt-signature-algorithm-none/None.php new file mode 100644 index 0000000..5504b2a --- /dev/null +++ b/vendor/web-token/jwt-signature-algorithm-none/None.php @@ -0,0 +1,48 @@ +<?php + +declare(strict_types=1); + +/* + * The MIT License (MIT) + * + * Copyright (c) 2014-2018 Spomky-Labs + * + * This software may be modified and distributed under the terms + * of the MIT license. See the LICENSE file for details. + */ + +namespace Jose\Component\Signature\Algorithm; + +use Jose\Component\Core\JWK; + +final class None implements SignatureAlgorithm +{ + public function allowedKeyTypes(): array + { + return ['none']; + } + + public function sign(JWK $key, string $input): string + { + $this->checkKey($key); + + return ''; + } + + public function verify(JWK $key, string $input, string $signature): bool + { + return '' === $signature; + } + + private function checkKey(JWK $key) + { + if (!\in_array($key->get('kty'), $this->allowedKeyTypes(), true)) { + throw new \InvalidArgumentException('Wrong key type.'); + } + } + + public function name(): string + { + return 'none'; + } +} |