2016-02-12 68 views
0

如何從服務器端讀取客戶端證書使用mbedtls(polarssl)? 我有一臺服務器,使用mbedtls(polarssl)編碼。我想讀取客戶端證書並從該證書中獲取一些信息。任何人都可以知道什麼函數將被用來讀取客戶端證書?如何閱讀polarssl中的客戶端證書?

+0

您是否看過https://github.com/ARMmbed/mbedtls/tree/development/programs上的示例程序? – talamaki

回答

0

我想你可以使用mbedtls_x509_crt_info,它返回一個關於證書的信息字符串。

當客戶端連接並打印信息時,您可以get the peer certificate from the ssl session

mbedtls_ssl_context ssl; 

... 

mbedtls_x509_crt *crt = ssl.session->peer_cert; 

unsigned char buf[1024]; 
int ret = mbedtls_x509_crt_info((char *) buf, sizeof(buf) - 1, "", crt); 
if(ret != -1) 
{ 
    mbedtls_printf("%s\n", buf); 
} 

我沒有測試這個,只是檢查了例子。