我有一個指向TLS證書的指針,我需要獲取commonName屬性;使用openssl從tls證書有效獲取常用名字
我首先創建了帶有函數d2i_X509的X509對象;
x = d2i_X509(NULL, &p, certificate_lenght);
if (x == NULL)
return https_failure;
比我調用函數X509_NAME_get_text_by_NID用於獲取COMMONNAME
X509_NAME_get_text_by_NID(X509_get_subject_name(x),NID_commonName, hc->https_domain_name, 256);
它爲我,但我很擔心性能。我認爲,當我只需要commonName時,所有證書對象都會被解析。有沒有更好的方法讓commonName更有效率。
實際上,如果你想驗證一個HTTPS網站,你需要首先查找主題替代名稱擴展名(DNS類型),如果沒有任何擴展名,則只需要退回到CN。 – Bruno 2013-04-05 11:07:58
您不應該在沒有進行實際測量的情況下推測可能的低效率。 – EJP 2013-04-05 11:51:06
我沒有說什麼是低效的。性能對我的情況很重要。我想了解是否有更有效的方法。 – 2013-04-05 12:11:05