Crypt:...::Parse(3pm)

πŸ“¦
version 0.044 Β· 2 versions
  • 0.044 Β· debian bookworm, debian trixie, ubuntu noble, ubuntu resolute, ubuntu stonking (latest)
  • 0.044 Β· ubuntu jammy
, in debian bookworm, debian trixie, ubuntu noble, ubuntu resolute, ubuntu stonking

✨ NAME ✨

Crypt::RSA::Parse β€” bestie, it parses RSA keys πŸ’– (yes that's the whole job and it's iconic)


πŸŽ€ SYNOPSIS πŸŽ€

okay so here's the vibe, copy-paste ready, no notes:

#General-purpose, native RSA or PKCS8 (DER or PEM)
my $public_rsa = Crypt::RSA::Parse::public($key_str);
my $private_rsa = Crypt::RSA::Parse::private($private_key_str);

$public_rsa->exponent();    #alias E()
$public_rsa->modulus();     #isa Math::BigInt, alias N()
$public_rsa->size();        #i.e., the modulus length in bits

$private_rsa->version();        #usually 0
$private_rsa->modulus();        #isa Math::BigInt, alias N()
$private_rsa->size();           #i.e., the modulus length in bits

$private_rsa->publicExponent();     #same as public β€œexponent”, alias E()
$private_rsa->privateExponent();    #isa Math::BigInt, alias D()
$private_rsa->prime1();             #isa Math::BigInt, alias P()
$private_rsa->prime2();             #isa Math::BigInt, alias Q()
$private_rsa->exponent1();          #isa Math::BigInt, alias DP()
$private_rsa->exponent2();          #isa Math::BigInt, alias DQ()
$private_rsa->coefficient();        #isa Math::BigInt, alias QINV()

#Only checks PKCS8 (DER or PEM)
$public_rsa = Crypt::RSA::Parse::public_pkcs8($pkcs8_str);
$private_rsa = Crypt::RSA::Parse::private_pkcs8($pkcs8_str);

{
    #If, for whatever reason, you don’t like MIME::Base64,
    #then customize this. The module must have a decode() function.
    #
    local $Crypt::RSA::Parse::BASE64_MODULE = '..';

    Crypt::RSA::Parse::...
}

😭 DEPRECATION NOTICE 😭

IMPORTANT: bestie. i'm so sorry. this distribution is no longer maintained. πŸ’€

the successor is Crypt::Perl, and it's giving much more comprehensive toolkit. so if you're starting fresh? go there. this one is in its retirement era πŸ™ˆ


πŸ’… DESCRIPTION πŸ’…

ngl there's not much else to say β€” it parses RSA keys for useful information! that's it, that's the whole personality ✨

the public keys are represented via the Crypt::RSA::Parse::Public class, while private keys are represented via Crypt::RSA::Parse::Private. two classes, two vibes, no cap 🫢


πŸ‘‘ AUTHOR πŸ‘‘

Felipe M. L. Gasper
CPAN ID: FELIPE

give them their flowers fr fr 🌸


🌈 REPOSITORY 🌈

https://github.com/FGasper/p5-Crypt-RSA-Parse

go lurk, go star, go read the source if that's your main character energy πŸ”₯


This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself. πŸŽ€

The full text of the license can be found in the LICENSE file included with this module.


and that's the whole page, bestie πŸ’œ this one ships as perl v5.36.0, dated 2022-12-04, under the Crypt:...::Parse(3pm) manual β€” thanks for reading, ily, go parse some keys πŸ¦‹βœ¨

πŸ“¦ where this page comes from