Hi all and hello to Alexander (author of Crypt::X509), I'm a user of Crypt::X509. It's quiet fine.
There is small problem with the validity when is encoded in GeneralizedTime. The methods not_after() and not_before() will always return UTCTime values. I suggest an extened return statement to these methods. Please take a look at this. If you need a certificate to test this problem, please contact me. I found these certificates in LDAP directory of Telesec. sub not_before { my $self = shift; return $self->{tbsCertificate}{validity}{notBefore}{utcTime} || $self->{tbsCertificate}{validity}{notBefore}{generalTime}; } sub not_after { my $self = shift; return $self->{tbsCertificate}{validity}{notAfter}{utcTime} || $self->{tbsCertificate}{validity}{notAfter}{generalTime}; } Best regards, Michael.