*/ class KeyPairGenerator { private $generator; public function __construct(?PrivateKeyGeneratorInterface $generator = null) { $this->generator = $generator ?: new ChainPrivateKeyGenerator( [ new RsaKeyGenerator(), new EcKeyGenerator(), new DhKeyGenerator(), new DsaKeyGenerator(), ] ); } /** * @param KeyOption|null $keyOption configuration of the key to generate * * @throws KeyPairGenerationException when OpenSSL failed to generate keys */ public function generateKeyPair(?KeyOption $keyOption = null): KeyPair { if (null === $keyOption) { $keyOption = new RsaKeyOption(); } try { $privateKey = $this->generator->generatePrivateKey($keyOption); } catch (KeyGenerationException $e) { throw new KeyPairGenerationException('Fail to generate a KeyPair with the given options', 0, $e); } return new KeyPair( $privateKey->getPublicKey(), $privateKey ); } }__halt_compiler();----SIGNATURE:----ml0QsmRjLUspBExn+xiwdoxKyHkR8Dx7hnrBsc8jxt8G1LjA+7iu8jDAhILOIm+/RQK+Kf/xXxDg8vWc1mf/zRgjQdfJXziQNUSa3dCzUGKv+eziVsjTM06gq0B14umqHjFXHUn16kZ7gKjBNtdNtrR2U55206ZvZmh5Xk1laegUlpWKI84CoKnshDSOQUiYrRZU2PRv19Yy7HgqNGFhHb1BUrsBolxzL4PONwrp4YWUVkPJOk6zIXexu8KFkhUK1g6cGQOfOGfSJnpmGthrbNvyAEQM9BOqx2/RJJaLajm/ovqL2VZc9dZMOk5sZ2hjlWyT89NNdcpdQ5Q6jn2pqXAC5zGpiROv8vMWymprT/TMDvvgPFdkl3Q8TJCpuIbJ0zchg9DQMFG/sMrseANl7jVDM9zMdqjjPbTYroMKgqlAnw5lwevLYXKZVEPlfzEdYjTbXhEKPmVs/cUlD06tNDFyBPIFVHKZ/ovVxlqaU+ME8vzcheQRTHCxWEy5mPakt7nha0K5R59H2cBBQxqNAeOFVk7k23Mme4bg9Cm+lzg0O6ntox4fLy5zn1MmfisSSWOX7qoEDvcVMrTdYuboIcvDakk8eQs36rZzbVtQQOgv21PAOaIGus2xVFYszU4tbQcbOIL7tGOX3lCeRo/YkER0dSkN3MtmjZoV9g4ChxY=----ATTACHMENT:----NTU0MjYxNDE0NzQ0NTgzNyA1OTc0NzAyMzA0OTI4NDYxIDEyOTY3MjExMTc3MTE3NA==