Make Magicsig capable of loading public PKCS1 keys
This commit is contained in:
parent
2970333adb
commit
f4ed171397
@ -243,8 +243,8 @@ class Magicsig extends Managed_DataObject
|
|||||||
* Fill out $this->privateKey or $this->publicKey with a Crypt_RSA object
|
* Fill out $this->privateKey or $this->publicKey with a Crypt_RSA object
|
||||||
* representing the give key (as mod/exponent pair).
|
* representing the give key (as mod/exponent pair).
|
||||||
*
|
*
|
||||||
* @param string $mod base64-encoded
|
* @param string $mod base64url-encoded
|
||||||
* @param string $exp base64-encoded exponent
|
* @param string $exp base64url-encoded exponent
|
||||||
* @param string $type one of 'public' or 'private'
|
* @param string $type one of 'public' or 'private'
|
||||||
*/
|
*/
|
||||||
public function loadKey($mod, $exp, $type = 'public')
|
public function loadKey($mod, $exp, $type = 'public')
|
||||||
@ -263,6 +263,15 @@ class Magicsig extends Managed_DataObject
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public function loadPublicKeyPKCS1($key)
|
||||||
|
{
|
||||||
|
$rsa = new Crypt_RSA();
|
||||||
|
if (!$rsa->setPublicKey($key, CRYPT_RSA_PUBLIC_FORMAT_PKCS1)) {
|
||||||
|
throw new ServerException('Could not load PKCS1 public key. We probably got this from a remote Diaspora node as the profile public key.');
|
||||||
|
}
|
||||||
|
$this->publicKey = $rsa;
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* Returns the name of the crypto algorithm used for this key.
|
* Returns the name of the crypto algorithm used for this key.
|
||||||
*
|
*
|
||||||
|
Loading…
Reference in New Issue
Block a user