isCertificateExpired method

bool isCertificateExpired(
  1. String certificatePEM
)

Implementation

bool isCertificateExpired(String certificatePEM) {
  try {
    var pemList = splitPEMs(certificatePEM);

    var certificate = X509Utils.x509CertificateFromPem(pemList.first);

    var tbsCertificateValidity = certificate.tbsCertificate?.validity;
    if (tbsCertificateValidity == null) {
      return false;
    }

    var notBefore = tbsCertificateValidity.notBefore;
    var notAfter = tbsCertificateValidity.notAfter;

    var now = DateTime.now();

    if (now.compareTo(notBefore) < 0) return true;
    if (now.compareTo(notAfter) > 0) return true;

    return false;
  } catch (_) {
    return true;
  }
}