Как может я создавать Склеп:: RSA возражают от модуля, экспоненты и частной экспоненты?

Я пытаюсь портировать следующую php функциональность на жемчуг:

public function loadKey($mod, $exp, $type = 'public')
{
    $rsa = new Crypt_RSA();
    $rsa->signatureMode = CRYPT_RSA_SIGNATURE_PKCS1;
    $rsa->setHash('sha256');
    $rsa->modulus = new Math_BigInteger(Magicsig::base64_url_decode($mod), 256);
    $rsa->k = strlen($rsa->modulus->toBytes());
    $rsa->exponent = new Math_BigInteger(Magicsig::base64_url_decode($exp), 256);

    // snip...
}

Я должен преобразовать строку в форме ("$mod.$exp.$private_exp RSA."):

RSA.mVgY8RN6URBTstndvmUUPb4UZTdwvwmddSKE5z_jvKUEK6yk1u3rrC9yN8k6FilGj9K0eeUPe2hf4Pj-5CmHww==.AQAB.Lgy_yL3hsLBngkFdDw1Jy9TmSRMiH6yihYetQ8jy-jZXdsZXd8V5ub3kuBHHk4M39i3TduIkcrjcsiWQb77D8Q==

... к Склепу:: объект RSA. Я разделил компоненты, таким образом, у меня есть $mod, $exp, и $private_exp, но Склеп жемчуга:: RSA API, кажется, не имеет способ явно установить.

6
задан Ilmari Karonen 11 January 2013 в 18:13
поделиться