具有特定密码的Node.js TLS请求

编程入门 行业动态 更新时间:2024-10-10 01:21:57

具有特定<a href=https://www.elefans.com/category/jswz/34/1771279.html style=密码的Node.js TLS请求"/>

具有特定密码的Node.js TLS请求

我有一个Node.js应用,需要检查外部资源的TLS兼容性。在发出外部TLS请求时,我需要限制Node.js将使用的特定密码。我正在寻找实现此目的的示例代码。

更多信息:苹果需要在iOS 9 all outbound connections be encrypted中使用,并且允许的密码列表受到限制。

可接受的密码是:

TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384
TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384
TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA
TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256
TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA
TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384
TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA

我的目标是建立一个可以检查以确保外部服务器满足Apple要求的服务。

回答如下:

您可以仅使用该密码列表连接到每个资源。如果连接成功,则您知道正在使用其中一种密码,因此将其签出。可以通过ciphers属性设置唯一的密码列表。例如:

ciphers

您还可以通过在节点v10.16.0或更高版本中设置var ciphers = ['TLS_ECDHE_ECDSA_WITH_AES_256_GCM_SHA384', 'TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256', 'TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA384', 'TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA', 'TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA256', 'TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA', 'TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384', 'TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256', 'TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384', 'TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256', 'TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA'].join(':'); tls.connect({ host: 'example', port: 443, ciphers: ciphers }, function() { // Success! }).on('error', function(err) { // Unsuccessful! You may check `err` to make sure it wasn't an unexpected // error like ECONNREFUSED }); 属性或secureProtocolsecureProtocol属性来限制使用的协议。例如,要使用TLSv1.2:

minVersion

更多推荐

具有特定密码的Node.js TLS请求

本文发布于:2024-05-13 10:02:37,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1759413.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:密码   Node   TLS   js

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!