Node.js 如果使用HTTPS,Socket.io是否安全?
我正在使用Node.js、Express和Socket.io实现一个聊天平台。我现在已经将我的服务器改为使用HTTPS而不是普通的HTTP。但是,我想知道,这是否也保护客户端/服务器在套接字之间发送的消息?例如,我从一个套接字发送到另一个套接字的所有数据现在也加密了吗 我现在的代码:Node.js 如果使用HTTPS,Socket.io是否安全?,node.js,express,ssl,socket.io,tls1.2,Node.js,Express,Ssl,Socket.io,Tls1.2,我正在使用Node.js、Express和Socket.io实现一个聊天平台。我现在已经将我的服务器改为使用HTTPS而不是普通的HTTP。但是,我想知道,这是否也保护客户端/服务器在套接字之间发送的消息?例如,我从一个套接字发送到另一个套接字的所有数据现在也加密了吗 我现在的代码: const fs = require('fs') const express = require('express'); const app = express(); const path = req
const fs = require('fs')
const express = require('express');
const app = express();
const path = require('path');
const server = require('https').createServer({
key: fs.readFileSync('server.key'),
cert: fs.readFileSync('server.cert')
}, app)
const io = require('socket.io')(server);
当我试图在网上搜索这篇文章时,我读到了一些相互矛盾的信息,其中很多信息都是7岁以上的。我希望有人能通过这种方式给我带来更多的清晰,因为我很不幸无法嗅探我的本地主机流量(Windows用户) 是的,只要您通过https连接并且使用有效的证书,从您的代码片段中可以看出,您正在执行通过该套接字传输的所有消息都将通过标准https协议进行加密。安全吗?这是一个非常广泛的问题,可能包括很多事情,比如身份验证、服务器安装的安全性、https密钥的保护等等。。。。通信通道本身是加密的,因此中间人侦听器对它是安全的(假设您的https服务器已正确部署)。当您将socket.io连接到https服务器时,socket.io连接上的所有通信都通过TLS加密(使用公钥/私钥加密)进行加密,与常规https通信的方式相同。