我是OpenSSL的新手,正在尝试扩展API。我想创建尽可能自定义的ClientHello,以便了解服务器如何对此作出反应。

我的问题是:如何从库外部(在程序内)在Random中设置ClientHello部分?

c++ - 是否可以从外部设置ClientHello随机数-LMLPHP

最佳答案

没有为此的界面。它只是使用RAND_pseudo_bytes生成随机字节。但是您可以尝试修改源代码以添加自己的钩子(Hook),可能是ssl23_client_hello中的ssl/s23_clnt.c

编辑:使用OpenSSL 1.1.0完成大代码修改后,相关代码可以在ssl/statem/statem_clnt.c函数tls_construct_client_hello中找到,它使用ssl_fill_hello_random(ssl/s3_lib.c)生成字节,然后调用RAND_bytes

09-06 17:19