2010-08-26 74 views
1

我需要为相互认证做些什么函数调用?我搜查了很多,但没有发现任何有用的东西。如何在Openssl中实现客户端的相互认证?

任何人可以帮助我这样做呢?

+0

其中相互认证的味道,你想使用? TLS-SRP? TLS-PSK?带有PKIX证书的TLS? – jww 2016-05-05 06:06:06

回答

1

该函数调用你正在寻找的是SSL_set_verify()家庭。在服务器端,指定SSL_VERIFY_PEER | SSL_VERIFY_FAIL_IF_NO_PEER_CERT需要有效的客户端证书。在客户端,只需要SSL_VERIFY_PEER

双方还必须确保匿名密码没有在其指定的密码列表(SL_CTX_set_cipher_list()设置)允许的。

+0

我已经使用这个,当我试图写它返回-1。 你能告诉我我哪里可能是错的吗? – Bharat 2010-08-27 08:31:19

+0

@bharat:不是从那么少的信息。用'ERR_print_errors_fp(stderr);'(并在程序启动时调用'SSL_load_error_strings()'来转储实际的错误,以确保你的错误字符串可用)。 – caf 2010-08-27 09:03:58