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

标签 c++ ssl openssl

我是 OpenSSL 的新手,正在尝试扩展 API。我想创建尽可能自定义的 ClientHello,以便查看我的服务器如何对其作出 react 。

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

overriding openssl lib settings

最佳答案

没有这个接口(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/

相关文章:

c++ - directx 9 与 Visual Studio 2012 Express

c++ - Go 和 C++ 中的 vector 性能

c++ - 迭代 std::map 如何返回基于键值的排序元素

apache - .htaccess 将 https 重定向到 http 不起作用

linux - 错误 : RPC failed; curl 56 OpenSSL SSL_read: error:140943FC:SSL routines:ssl3_read_bytes:sslv3 alert bad record mac, 错误号 0

node.js - 如何在 NodeJS 中使用 openssl-wrapper 生成 RSA key ?

c++ - std::bind 是否实现了 std::ref 和 std::cref 来消除函数调用的歧义?

Java - javax.net.ssl.SSLPeerUnverifiedException : peer not authenticated

ssl - 在 IIS 10 Windows Server 2019 上启用 TLS 1.3

PHP openssl_pkcs7_* 需要文件,安全问题