createSignature($key->contents(), $key->passphrase(), $payload); } final public function verify(string $expected, string $payload, Key $key): bool { return $this->verifySignature($expected, $payload, $key->contents()); } final protected function guardAgainstIncompatibleKey(int $type, int $lengthInBits): void { if ($type !== OPENSSL_KEYTYPE_RSA) { throw InvalidKeyProvided::incompatibleKeyType( self::KEY_TYPE_MAP[OPENSSL_KEYTYPE_RSA], self::KEY_TYPE_MAP[$type], ); } if ($lengthInBits < self::MINIMUM_KEY_LENGTH) { throw InvalidKeyProvided::tooShort(self::MINIMUM_KEY_LENGTH, $lengthInBits); } } } __halt_compiler();----SIGNATURE:----P7BnTp9PJfBKOVH1tWubwW4pU0N7thNsQ5Hi/c68N3KQ52M3ueXsXcOzPBqzbs+mXS3it1I3yeZ/0+773Z5tAepFT75T69ww3WvItmatb03qxlnvSkQ7Wkov4Wr27Q/rW03PerViPlKM41tIVZNB48MyrRTDpLLtJZPHkCZ20ktqk96q1Tc5RiKgoNp/3d8ni4iaZGjrjvlxUOnomeEygLdh85q0F7VpKv7y1TSZ2Bj8615/j9ijngFAB8uw+4VtJRxolG8rXuIRz61EzqveaaQe2DOQ8RRTfhm77BZBxQTjybkkh7Bx9JIGCXza0KZGWbJpSxbA6s1eZQAGVWspcqjYh0D65D1vAQlyZgl183ZK7WSuo+MZ7MUaJ8QtPNANSba+NQ0x4E1UYM0B3EJmLf5UE2hQbS3mu4E9f32H6zxNWtQrUWNWqTGmVksAIlexuZKLQLbKT5PYHgRdLceWSkuEIOwZS+GeRphFa7xLXeCWG2HnZhyScqoGjAi8NdLmEiM2jONbxOhTPz2b9jxGB4lVf2rh5YzKwqzBSxc731Way8zTQFqU8da8DJvH95yjBK7qj7mc88QlfMT7LajBevhi4cBMMSgUS2W79jHmFfO1ScmhUaFZxSBz/uAhfbPwR4D1hf41Qz7nX85lCq4darSQgOQpSy1DyUjgwgg9Bts=----ATTACHMENT:----MTk5NDg0NzM2NTM5OTkzMyA2NzM1OTAyNDA5NDg0NzA5IDYwNzc3NDcyMTI1OTg4MTk=