【问题标题】:How to properly log traffic keys in openssl using SSL_CTX_set_keylog_callback?如何使用 SSL_CTX_set_keylog_callback 在 openssl 中正确记录流量密钥?
【发布时间】:2022-07-09 01:23:21
【问题描述】:

我创建了这个回调函数来记录密钥

void SSL_CTX_keylog_cb_func_cb(const SSL *ssl, const char *line){
    FILE  * fp;
    fp = fopen("key_log.log", "w");
    if (fp == NULL)
    {
        printf("Failed to create log file\n");
    }
    fprintf(fp, "%s\n", line);
    fclose(fp);
}

key_log.log我只得到这个

CLIENT_TRAFFIC_SECRET_0 af391f5fa21ca10ac61262e4<REDACTED>4

尝试使用此日志文件解密在wireshark中捕获的流量没有帮助,所有数据包仍然加密,我做错了什么

这就是我设置回调函数的方式

    SSL_library_init();
    ctx = init_ctx();
    SSL_CTX_set_keylog_callback(ctx, SSL_CTX_keylog_cb_func_cb);

【问题讨论】:

    标签: c openssl wireshark


    【解决方案1】:

    使用"w"模式,之前要打开的文件内容被擦除覆盖。

    使用"a"模式将数据追加到文件中。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-05-10
      • 1970-01-01
      • 2012-05-27
      • 2020-02-28
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多