您好我是OpenSSL的新手,所以請忽略它的無效問題。 我只想在客戶端和服務器之間啓動EAP-TLS會話。所以,我正在使用下面提到的命令s_client EAP-TLS的實現代碼
openssl s_client -connect <ip-address>:<Port-NO> -tls1
和它的工作正常,但我想同樣使用c代碼發生。
是否有任何c代碼實現s_client -connect?
您好我是OpenSSL的新手,所以請忽略它的無效問題。 我只想在客戶端和服務器之間啓動EAP-TLS會話。所以,我正在使用下面提到的命令s_client EAP-TLS的實現代碼
openssl s_client -connect <ip-address>:<Port-NO> -tls1
和它的工作正常,但我想同樣使用c代碼發生。
是否有任何c代碼實現s_client -connect?
是否有任何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_secret
或master_secret
,然後將控制權重新轉換爲TLS。
http://osxr.org/openssl/source/apps/s_client.c – Prabhu