sid*_*ise 9 security ssl node.js express
我正在尝试使用Node.js,Express.js和TLS(1.2)在客户端和服务器之间创建一个非常安全的连接.
我认为我的问题在于理解TLS实际上是什么 - 意味着什么是交换,何时以及如何由谁.
无论如何,我正在寻找互联网,就像一个疯子(疯狂的人)试图找出以下内容:
var tls = require('tls');调用?var https = require('https');调用?当使用另一个节点作为客户端时,我可以工作,但在这种情况下,客户端将是浏览器中的用户.我可以同时使用浏览器还是只使用https?
谢谢
Ave*_*ery 35
让我们确实从TLS开始.
TLS是一种在客户端和服务器之间提供安全连接的方法.它通过为客户端和服务器提供安全的交换密钥的方式来实现这一点,这样他们就可以使用公钥加密来保护它们的传输.确切的机制可以在这里找到,但这对于这个答案来说真的不重要.
现在,什么是https?首先,我们来谈谈HTTP.HTTP是一种协议,用于定义Web服务器和客户端如何交谈和交换网页或数据.基本上,它包括来自客户端的请求,服务器使用数字消息,标题和(可选)主体进行响应.如果您熟悉编写网页,这很明显.
那么现在,最后,什么是HTTPS?HTTPS是使用TLS保护数据的HTTP版本.这意味着客户端和服务器可以使用他们习惯使用的相同协议,包含在加密中.
现在,让我们在node.js中讨论这些.
使用时require('tls'),您只使用加密层,而不定义协议.这对于任何不期望精确协议的东西都可以正常工作,例如你的其他node.js客户端.
当您使用时require('https'),您专门使用HTTP over TLS.该HTTPS模块 实际上是一个子类 TLS模块!(哎呀,实际上,它https.Server是它的子类tls.Server)这意味着无论何时使用https模块,你都使用tls.
现在,最后一个问题:浏览器想要什么?如果您一直关注我所说的一切,您可以看到浏览器需要https.事实上,您今天访问过的大多数网页都可能已经过了https.
| 归档时间: |
|
| 查看次数: |
8200 次 |
| 最近记录: |