首页 > 解决方案 > 列出客户端在 Nodejs 中支持的所有 TLS 密码

问题描述

我有一个使用以下代码运行的简单 Nodejs 服务器:

const https = require("http2");
const fs = require("fs");

const PORT = 443;

let server = https.createSecureServer({
    allowHTTP1: true,
    key:  fs.readFileSync("./key.pem"),
    cert: fs.readFileSync("./cert.pem")
});

server.on("error", console.log);

server.on("request", (request, response) => {
    response.writeHead(200, {"Content-Type": "text/plain"});
    response.end("Hello, World", "utf-8");
});

我知道我可以使用request.socket.getCipher().

如何获取客户端在消息中发送的所有密码的列表ClientHello
我更喜欢 Nodejs 解决方案,而不使用像tsharkor之类的外部工具tcpdump

感谢您的时间。

标签: node.jstls1.2

解决方案


您可以使用request.socket.getSharedSigalgs()


推荐阅读