Merge branch '3.0'

This commit is contained in:
terrafrost 2020-03-30 00:42:08 -05:00
commit 61398e0fbf
3 changed files with 14 additions and 2 deletions

View File

@ -513,7 +513,7 @@ abstract class PKCS8 extends PKCS
return $public;
}
return false;
throw new \RuntimeException('Unable to parse using either OneAsymmetricKey or PublicKeyInfo ASN1 maps');
}
/**

View File

@ -412,7 +412,7 @@ abstract class RSA extends AsymmetricKey
$key->publicExponent = $components['publicExponent'];
$key->k = $key->modulus->getLengthInBytes();
if ($components['isPublicKey']) {
if ($components['isPublicKey'] || !isset($components['privateExponent'])) {
$key->exponent = $key->publicExponent;
} else {
$key->privateExponent = $components['privateExponent'];

View File

@ -1033,4 +1033,16 @@ v/Ow5T0q5gIJAiEAyS4RaI9YG8EWx/2w0T67ZUVAw8eOMB6BIUg0Xcu+3okCIBOs
$key = PublicKeyLoader::load($key);
$key->withPassword('demo')->toString('XML');
}
public function testPublicAsPrivatePKCS1()
{
$key = '-----BEGIN RSA PRIVATE KEY-----
MIGJAoGBANOV2sOh8KgK9ENJMCzkIQ+UogWU7GP4JMpGxT6aEoxE3O5zUo2D1asv
RrnqAxlf1zz+1dnRDU8EYbt+DJMLJ5pBeDbBuQzzV690+f7eporcZombSN2JoPAM
n9dyFZYXxil/cgFG/PDMnuXy1Wcl8hb8iwQag4Y7ohiLXVTJa/0BAgMBAAE=
-----END RSA PRIVATE KEY-----';
$key = PublicKeyLoader::load($key);
$result = $key->toString('PKCS1');
$this->assertInternalType('string', $result);
}
}