2017-07-04 8 views
0

お客様の証明書が期限切れになることをお客様に通知するため、TLS暗号化が期待通りに機能する前に更新する必要があります。PEM形式の証明書の有効期限を取得する

PEM形式の証明書の有効期限を取得するにはどうすればよいですか?

+1

可能な複製をさかのぼり[からのSSL証明書の有効期限を確認する方法PEMでエンコードされた証明書?](https://stackoverflow.com/questions/21297853/how-to-determine-ssl-cert-expiration-date-from-a-pem-encoded-certificate) – beny23

答えて

1
#if FROMFILE 
BIO* bio = BIO_new_file(filename, "rb"); 
if (bio == null) goto err; 
#else 
BIO* bio = BIO_new(BIO_s_mem()); 
BIO_write(bio, data, dataLen); 
#endif 

X509* x509 = PEM_read_bio_X509(bio, NULL, NULL, NULL); 
if (x509 == null) goto err; 

#if OPENSSL_11 
ASN1_TIME* notBefore = X509_get0_notBefore(x509); 
#else 
ASN1_TIME* notBefore = x509->validity->notBefore; 
#endif 

// Choose a time representation and convert the ASN1_TIME to it. 

goto cleanup; 

err: 
// Exercise left to the reader. 

cleanup: 
// Don't free notBefore, since it was obtained via a get0 or interior pointer. 
if (x509) X509_free(x509); 
if (bio) BIO_free(bio); 
関連する問題