2015-05-07 31 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。