Javascript 使用node.js通过HTTP将文件加密为字符串

Javascript 使用node.js通过HTTP将文件加密为字符串,javascript,node.js,http,encryption,Javascript,Node.js,Http,Encryption,我在寻求关于我想做什么的建议。 目前,我使用服务器a通过HTTP从服务器B请求文件 服务器B检查请求的路径是否存在,并通过HTTP以字符串形式返回文件内容。一切都很清楚 我想做的是对传输进行加密,所以在将文件内容发送回服务器A之前,我想以服务器B能够反转的方式对其进行保护 我要快,安全(盐),不要太大。(文件可以包含数千个字符) 实现这一目标的最佳方式是什么?我在两台服务器上都使用node.js 我也在考虑添加一个身份验证,并通过HTTPS来保护内容,假设保护(加密/等等)不能被破坏,它有用吗?

我在寻求关于我想做什么的建议。 目前,我使用服务器a通过HTTP从服务器B请求文件

服务器B检查请求的路径是否存在,并通过HTTP以字符串形式返回文件内容。一切都很清楚

我想做的是对传输进行加密,所以在将文件内容发送回服务器A之前,我想以服务器B能够反转的方式对其进行保护

我要快,安全(盐),不要太大。(文件可以包含数千个字符)

实现这一目标的最佳方式是什么?我在两台服务器上都使用node.js

我也在考虑添加一个身份验证,并通过HTTPS来保护内容,假设保护(加密/等等)不能被破坏,它有用吗?(Auth可以限制请求并避免使用太多带宽,但HTTPS真的值得吗?)


我对加密不太了解,在这里使用它可能不合适,请指导我。

要加密HTTP请求的内容,请使用HTTPS。不要费心重新发明轮子

HTTPS将使能够拦截这些服务器之间通信的人无法读取您来回发送的文件。描述在客户端和服务器上的节点应用程序中启用HTTPS的步骤。如果您在节点应用程序前面使用Nginx或Apache作为代理,您也可以找到它们的说明

HTTPS不会限制对服务器的访问。为此,您需要为此使用身份验证/授权系统。是一个非常标准的NodeJS模块

我要快,安全,不要太大。(文件可以包含数千个字符)

盐是一个不适用于这里的概念

在单向散列函数(如MD5或SHA)上使用salt,因此如果对同一字符串进行不同时间的加密,则不会得到相同的结果


如果用户A和B的密码都是“Password123”,则它们将是数据库中两个不同的哈希字符串。这意味着破解用户A的密码不会自动破解用户B的密码。

对于密码,您应该使用类似于bcrypt或pbkdf2的东西。是的,这就是方法。我试图解释盐的概念,突然想到了第一件事。您永远不应该使用SHA1或MD5来实际保护密码。理论上,HTTPS是安全的,我想知道NSA对此有何看法。^好的,我会等着使用HTTPS,这很复杂,我以前从未成功过,如果我这样做,我必须用HTTPS配置5个不同的应用程序。这里似乎需要身份验证。关于盐的信息,我用了bcrypt,但我不再用了,太大了,用windows操作真的很糟糕。。。我用了更简单的东西。本机nodejs库。谢谢