NAME
Crypt::Perl::X509v3 - TLS/SSL Certificates
SYNOPSIS
my $cert = Crypt::Perl::X509v3->new(
key => $crypt_perl_public_key_obj,
issuer => [
[ commonName => 'Foo', surname => 'theIssuer' ],
[ givenName => 'separate RDNs' ],
],
subject => \@subject, #same format as issuer
not_before => $unixtime,
not_after => $unixtime,
# The same structure as in Crypt::Perl::PKCS10 …
extensions => [
[ keyUsage => 'keyCertSign', 'keyEncipherment' ],
[ $extn_name => @extn_args ],
# ..
],
serial_number => 12345,
issuer_unique_id => '..',
subject_unique_id => '..',
);
# The signature algorithm (2nd argument) is not needed
# when the signing key is Ed25519.
$cert->sign( $crypt_perl_private_key_obj, 'sha256' );
my $pem = $cert->to_pem();
STATUS
This module is experimental! The API may change between versions. If you’re going to build something off of it, ensure that you check Crypt::Perl’s changelog before updating this module.
DESCRIPTION
This module can create TLS/SSL certificates. The caller has full control over all certificate components, and anything not specified is not assumed.
There currently is not a parsing interface. Hopefully that can be remedied.