2015-05-07 32 views
1

您好我是OpenSSL的新手,所以請忽略它的無效問題。 我只想在客戶端和服務器之間啓動EAP-TLS會話。所以,我正在使用下面提到的命令s_client EAP-TLS的實現代碼

openssl s_client -connect <ip-address>:<Port-NO> -tls1 

和它的工作正常,但我想同樣使用c代碼發生。

是否有任何c代碼實現s_client -connect?

+0

http://osxr.org/openssl/source/apps/s_client.c – Prabhu

回答

2

是否有任何c代碼實現s_client -connect?

是的,有。

登記<openssl src>/apps/s_client.c。這是s_client子命令的源代碼。或者,訪問OpenSSL的openssl/apps/s_client.c

你可以甚至建立s_client作爲獨立的符號,所以你可以步驟/調試它就地。見How to run different 'modes' of a program based on command line parameters?


... EAP-TLS

至於對EAP-TLS的問題...我認爲OpenSSL提供了它。但我可能是錯的。

幾年前,我研究了建議的標準,它更多地是通過TLS(或TLS)通道插入身份驗證方法的「框架」。請參閱RFC 5216(TLS)和RFC 6347(DTLS)。

要使用EAP-TLS,您需要一個「密鑰材料出口商」。這是RFC 5705的一部分。我認爲這個想法是使用您的身份驗證方法生成premaster_secretmaster_secret,然後將控制權重新轉換爲TLS。