我是 OpenSSL 的新手,正在尝试扩展 API。我想创建尽可能自定义的 ClientHello
,以便查看我的服务器如何对其作出 react 。
我的问题是:如何从库外部(在我的程序中)设置 ClientHello
中的 Random
部分?
最佳答案
没有这个接口(interface)。它只是使用 RAND_pseudo_bytes
来生成随机字节。但是您可能会尝试修改源代码以添加您自己的钩子(Hook),可能是 ssl/s23_clnt.c
中的 ssl23_client_hello
。
编辑:随着 OpenSSL 1.1.0 对代码的大修,相关代码可以在 ssl/statem/statem_clnt.c
函数 tls_construct_client_hello
中找到,它正在使用ssl_fill_hello_random
(ssl/s3_lib.c
) 生成字节,然后调用 RAND_bytes
。
关于c++ - 是否可以从外部设置 ClientHello 随机数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39190777/