问题标签 [handshake]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
ssl - SSL 认证
是否有一种简单的方法可以检查两个 .p12 文件,一个用于服务器,一个用于客户端,对于双方都需要授权(包括客户端授权)的 SSL 握手是否应该相互接受?这些 .p12 文件中的每一个都包含信任管理器和密钥管理器。
特别是,什么会在服务器端导致这样的错误?
ios - iOS 如何使用 ASyncSocket 进行 SSL 握手?
我已经使用 ASyncSocket 成功地将我的服务器与套接字连接连接起来。现在我正在尝试进行 SSL 握手以将服务器与 SSL 连接。知道如何进行吗?
tcp - 握手后的 TCP:seq ack 作业
好的,所以我有这个家庭作业的问题,我得到'Host X'发送'Host Z'一个数据包并且Seq = 46和Ack = 87并且有效负载/数据='你好?
从那里我得到:从主机 Z 发送到主机 X 的数据包,有效载荷 =“离开”,最后一个数据包从主机 X 发送到主机 Z,数据 =“否!”
作业是找出最后两个数据包的 Seq 和 Ack 的值是多少。我知道握手已经结束,所以它不仅仅是将 1 添加到 Seq 并将其放入下一个数据包的 Ack 中那么简单。我在某处读到,当接收到有效负载时,接收者会发出一个等于 1 + 有效负载长度(以字节为单位)的 Ack。如果这是正确的,我将如何将这些字符串转换为字节?Seq 会发生什么?那仍然是从先前的数据包 Ack 中直接抓取的吗?
非常感谢大家。
假设每个字符等于一个字节,我会继续回答我的问题,如果我错了,希望有人能纠正我。
我假设我得到的 Seq 和 Ack 是握手的第一个传输,所以:
我相信这就是全部,我上面的内容是正确的,但是如果我做错了什么,请告诉我。再次感谢大家。
ssl - 具有 2 路 SSL 的 Weblogic(10.3) 中的 Web 服务客户端 (JAX-WS) 无法完成握手
一周以来,我们一直在寻找解决问题的方法,在查看了很多类似的帖子并阅读了所有可用文档之后,我们还没有找到解决方案。
我将解释我目前的情况,希望有人可以帮助我们解决问题。
我们在 JAX-WS 中开发了一个 Web 服务客户端,它与另一个平台中的服务器端 Web 服务通信。通信是 2 路 SSL,我们有服务器端的 CA,信任他,我们的私有证书在服务器端识别。
我们的 Web 服务客户端部署在 Weblogic 10.3 中,当它要调用服务器端 Web 服务时,我们动态加载信任库和仅加载一个证书的密钥库,因为每次我们要使用不同的证书,因此我们不能只使用静态密钥库。
问题是当我们建立连接、协商握手时,因为 Weblogic 忽略了我们在调用之前加载的信任库和密钥库,而只在 Weblogic 的密钥库中查找受信任的证书和私钥......
如果我们把我们信任的证书放在 Weblogic 的信任库中并重新开始通信。我们开始握手,我们信任服务器端(因为现在 Weblogic 在其密钥库中找到 CA),但是当我们的 Web 服务客户端必须发送证书以被服务器端信任时,“证书链”是空的并且我们得到一个“BAD_CERTIFICATE”。
我们已经尝试使用 Apache CXF 和 JAX-WS,但问题是一样的,使用系统属性和库设置密钥库......所以我们不知道为什么我们的 Web 服务客户端无法发送证书。由于某种原因,Weblogic 似乎没有为他们服务,也许是 Weblogic 配置,但我们不知道。
如果有人知道我们能做什么,请告诉我们。
提前致谢。
php - 通过 PHP 使用安全 Websocket - 加密握手
我读到(安全)Websocket 使用的端口与 HTTP(S) 协议相同。但是,我的 PHP Websocket 服务器从客户端接收加密握手,我正在监听 12345 端口上的打开连接。
我的系统通过非安全 websocket 运行良好,但我需要添加安全功能,我不明白为什么我会收到这些加密握手。多亏了 OSI 模型,这对我来说是透明的......
如果我配置 apache 来激活 SSL 引擎并监听 12345 端口。我将无法再次将此端口用于我的 PHP Websocket 服务器,因为它将处于“已使用”状态......或者我忘记了一些东西......
我迷路了 :(
编辑:
这是我的安全 websocket 标头(使用wss://
):
Request URL:wss://localhost:12345/
这里是我的简单 websocket 标头(使用ws://
):
Request URL:ws://localhost:12345/
Request Method:GET
Status Code:101 Switching Protocols
Request Headersview source
Connection:Upgrade
Host:localhost:12345
Origin:http://localhost
Sec-WebSocket-Extensions:x-webkit-deflate-frame
Sec-WebSocket-Key:wovBDvKiKdy/+0Y2BQPr9w==
Sec-WebSocket-Version:13
Upgrade:websocket
(Key3):00:00:00:00:00:00:00:00
Response Headersview source
Connection:Upgrade
Sec-WebSocket-Accept:1ao7ngQG4LAa3JxFibyvoocbSAM=
Upgrade:websocket
(Challenge Response):00:00:00:00:00:00:00:00:00:00:00:00:00:00:00:00
为什么我在没有安全连接的情况下得到更多?
matlab - 用于从 Matlab 中的 C .dll 文件接收数据的握手
我正在尝试从 Matlab 获得摄像机的实时视图。摄像机 SDK 是用 C 编写的,所以我一直在使用 .dll 从 Matlab 与摄像机进行通信(我是一名自学成才的程序员,所以如果我的术语不正确,我深表歉意)。然而,对于实时取景,我担心当 Matlab 从相机缓冲区读取数据时,相机不会意识到 Matlab 正在读取数据,并继续盲目更新缓冲区。因此,我认为需要握手机制,这就是我的麻烦所在。
下面是概述我当前解决方案的伪代码。我的问题是关于两个 while() 循环中的语句。我该如何检查我正在使用的布尔值的状态?我能想到的可能性需要在多个函数之间进行杂乱无章的参数传递。有没有更清洁的方法?
现在对于 Matlab 方面:
谢谢,
RS
r - ROAuth握手
我一直在尝试使用以下脚本通过 ROAuth 进行身份验证:
每次输入此代码时,我都会收到错误消息:
我不确定我做错了什么。通过重新安装 ROauth 和 RCurl 并检查它们的版本信息(ROAuth 0.9.1 和 RCurl_1.91-1.1(?) ),我确保每个必要的包都是最新的。安装后,我重新启动了 R(作为另一篇文章建议的可能解决方案)。我复制粘贴并仔细检查了消费者密钥和消费者秘密,我确信它们是正确的。有没有人有任何其他想法?
谢谢你。
c# - C#中的SSL握手?
我在端口 80 上的 httpwebrequest 标头中发送了升级标头,以使用 TLS。服务器成功响应 101 切换协议响应,从而升级协议。现在我想知道如何在 C# 中的同一端口上启动 SSL 握手。?
python - wpa-handshake 与 python - 散列困难
我尝试编写一个 Python 程序来计算 WPA 握手,但我遇到了哈希问题。为了比较,我安装了cowpatty (看看我从哪里开始出错)。
我的 PMK 生成工作正常,但 PTK 计算似乎总是错误的。我不确定是否必须格式化我的输入(macadresses 和 noces),或者只是将它们作为字符串提供给函数。
我会给你我的路由器信息,这没问题,因为我只是设置它进行测试。
我的程序如下所示:
所需的输出(cowpatty 确认)是:
也许你们中的某个人可以告诉我,为什么我的程序根本不起作用。hmac 功能是否正常工作?我的输入格式错误吗?我必须在任何地方考虑字节序吗?提前感谢您的宝贵时间,我将不胜感激!
networking - 第三方可以欺骗数据包来干扰已经打开的连接吗?
这是我想到的场景。
计算机 A 是客户端连接的服务器,但客户端必须通过禁令检查。计算机 B 是充当禁令聚合器的服务器。来自多个服务器的禁令来自这里,任何服务器都可以通过 API 访问。计算机 C 是一个被禁止的客户端,它想要绕过禁令并连接到计算机 A。
这是登录过程:计算机 C 向计算机 A 发送其用户名和密码组合。计算机 A 接收登录信息并确保其有效。计算机 A 向计算机 B 询问计算机 C 的用户名禁令。计算机 B 向计算机 A 发送禁令记录。计算机 A 收到禁令记录并检查计算机 A 是否应因禁令而断开连接并采取相应措施。
所以,我的问题是计算机 C 是否可以欺骗计算机 B 对计算机 A 询问他的禁令记录的回应。不幸的是,我不太了解套接字以及 TCP 握手的工作原理。
如果计算机 C 知道计算机 B 表示他没有被禁止的响应是什么样的,知道何时需要向计算机 A 发送虚假响应,并且欺骗他的 IP 以类似于计算机 B 的 IP,那么他能否成功欺骗计算机 A认为他没有记录在案?