Error using Crypt::OpenSSL::RSA - Fails loading public key - Help needed

Collapse
This topic is closed.
X
X
 
  • Time
  • Show
Clear All
new posts
  • John Bergstrom

    Error using Crypt::OpenSSL::RSA - Fails loading public key - Help needed

    Hello everyone!

    I wrote a simple perl program to encrypt a string using
    Crypt::OpenSSL: :RSA.

    Everything as described in the module documentation. The public key
    is a valid X.509 encrypted certificate.

    When I tried executing the code I get the following error:
    -------------------
    Failed to read key at blib/lib/Crypt/OpenSSL/RSA.pm (autosplit into
    blib/lib/auto/Crypt/OpenSSL/RSA/load_public_key .al) line 225
    -------------------

    Below is the exact code I that I'm trying to get working.

    Anyone any ideas?

    Thanks a lot in advance for your help!

    =TEST CODE START========== =============
    use lib qw(/usr/local/lib/perl5/site_perl/5.6.1/i386-freebsd/);
    use lib qw(/usr/local/lib/perl5/site_perl/5.6.1/i386-freebsd/auto/);

    use Crypt::OpenSSL: :Random;
    use Crypt::OpenSSL: :RSA;

    $key_string ="-----BEGIN CERTIFICATE-----
    MIIB8zCCAVygAwI BAgIQC/mb6aRvL5BCaxMVp EBAazANBgkqhkiG 9w0BAQQFADAT
    MREwDwYDVQQDEwh UZXN0Q2VydDAeFw 0wMzA3MTExMjI1N DFaFw0zOTEyMzEy MzU5
    NTlaMBMxETAPBgN VBAMTCFRlc3RDZX J0MIGfMA0GCSqGS Ib3DQEBAQUAA4GN ADCB
    iQKBgQDgp5o5a4y QbIv8RHVfJcWmac QmZmzd/GBxhoNOx7H922J4 8ocGqvgF8beu
    PN7wsI/fUqjm5pzFgb12+A yDN5gq0vLMA8wmK S/Cdc+3OCK5EkBE9X i/RSoeno+Q
    o0a0M8lLl8mZBOa pyq67FvLsHdQQLc ZHqR8kP6Dn54FsT vyfgQIDAQABo0gw RjBE
    BgNVHQEEPTA7gBB fYCG1dYRmxJcj+J/jH9YloRUwEzERMA 8GA1UEAxMIVGVzd ENl
    cnSCEAv5m+mkby+ QQmsTFaRAQGswDQ YJKoZIhvcNAQEEB QADgYEAu9H1SWLT Vi4K
    mGnsDw/ZeLtd/s8nq+k1b7Ds3LEZ MBLaEyMiCkZ8zzE eGmvlJwB54XS+zh wj0RDW
    Kc2McRfsUuPkpnG MfANu3zATydGry0 3FCrO+uid4X91Lf +h9YL+BSewyrsnN jCx0
    0qMa+jkZ9C7vcIn RRNzabtnypylza7 A=
    -----END CERTIFICATE-----";

    $plaintext = "Test String";

    # not necessary if we have /dev/random:
    # Crypt::OpenSSL: :Random::random _seed($good_ent ropy);

    Crypt::OpenSSL: :RSA->import_random_ seed();
    $rsa_pub = Crypt::OpenSSL: :RSA->new_public_key ($key_string);

    $ciphertext = $rsa->encrypt($plain text);

    print "ENCRYPTED: [$ciphertext]\n";
    =TEST CODE END============ ==
Working...