<?php declare(strict_types=1); namespace Jose\Component\Signature\Algorithm; use InvalidArgumentException; use Jose\Component\Core\JWK; final class HS256 extends HMAC { public function name(): string { return 'HS256'; } protected function getHashAlgorithm(): string { return 'sha256'; } protected function getKey(JWK $key): string { $k = parent::getKey($key); if (mb_strlen($k, '8bit') < 32) { throw new InvalidArgumentException('Invalid key length.'); } return $k; } }