标签: handshake

与python的wpa握手 - 哈希困难

我尝试编写一个计算WPA握手的Python程序,但是我遇到了哈希问题.为了比较,我安装了cowpatty (看看我开始错误的地方).

我的PMK生成工作正常,但PTK计算似乎也是错误的.我不确定是否必须格式化我的输入(macadresses和noces)或者只是将它们作为字符串放入函数中.

我会给你我的路由器信息,这是没有问题,因为我只是设置它进行测试.

我的程序如下:

import hmac,hashlib,binascii

passPhrase  = "10zZz10ZZzZ"
ssid        = "Netgear 2/158" 
A           = "Pairwise key expansion" 
APmac       = "001e2ae0bdd0"
Clientmac   = "cc08e0620bc8"
ANonce      = "61c9a3f5cdcdf5fae5fd760836b8008c863aa2317022c7a202434554fb38452b"
SNonce      = "60eff10088077f8b03a0e2fc2fc37e1fe1f30f9f7cfbcfb2826f26f3379c4318"
B           = min(APmac,Clientmac)+max(APmac,Clientmac)+min(ANonce,SNonce)+max(ANonce,SNonce)
data="0103005ffe010900200000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000"

def customPRF512(key,A,B):
    blen = 64
    i    = 0
    R    = ''
    while i<=((blen*8+159)/160):
        hmacsha1 = hmac.new(key,A+chr(0x00)+B+chr(i),sha)
        i+=1
        R = R+hmacsha1.digest()
    return R[:blen]


pmk = pbkdf2(passPhrase, ssid, 4096, 32) #no sourcecode, since b2a_p(pmk) output fits to those of cowpatty

ptk = customPRF512(pmk,A,B) #the …
Run Code Online (Sandbox Code Playgroud)

python hash handshake wpa

7
推荐指数
1
解决办法
3829
查看次数

nginx错误消息 - "peer"是指什么?

为了调试nginx错误情况,我需要首先完全理解错误日志消息.我们的nginx会不时编写特定的错误日志消息.

记录消息

" SSL握手中的对等关闭连接(104:通过对等方连接重置),同时SSL握手到上游 ".

什么是"同行"?

我想知道:"peer"是指上游,意味着上游在ssl握手期间关闭了连接,或者它是否指向客户端,这意味着客户端在负载均衡器和Web服务器内部关闭时关闭了连接握手?

建立

  • nginx负载均衡器
  • 2个运行IIS8的Web服务器(上游)
  • Ssl提供者:Comodo

ssl nginx handshake

7
推荐指数
2
解决办法
5952
查看次数

在 Windows 上调试 ssl 握手的选项

我在 Windows 服务器上遇到问题,其中指向 https 端点的应用程序失败并显示: javax.net.ssl.SSLHandshakeException:收到致命警报:handshake_failure。事实上,它曾经成功过,但现在却失败了。这是在企业内部,因此 https 指向私有 IP 地址。

我有哪些选项可以调查 Windows 服务器的握手失败?openssl 在 Windows 上不可用。我用谷歌搜索了wireshark和微软网络监视器。不确定我是否会继续部署这两个选项中的任何一个。有什么建议么?

TIA

托尼

windows ssl handshake

7
推荐指数
0
解决办法
2868
查看次数

设置TCP连接需要多少数据?

我正在构建一个应用程序,我的手机经常将数据发送到我的服务器.由于我将使用我的移动数据,我想知道设置(并拆除?)与我的服务器的TCP连接需要多少数据.

tcp handshake

7
推荐指数
1
解决办法
5490
查看次数

TLS握手错误

我已经设置了一个使用自签名证书的docker注册表,但是我收到了这个错误.这次握手错误是什么意思?每当我尝试将图像推送到我的注册表时,日志就会增加.(这是关于tls的我的注册表的日志)

$ docker logs 30273f6ed90f | grep tls
    2015/12/15 13:42:25 http: TLS handshake error from 10.0.0.xx:43393: EOF
    2015/12/15 13:42:30 http: TLS handshake error from 10.0.0.xx:43396: EOF
    2015/12/15 13:42:40 http: TLS handshake error from 10.0.0.xx:43401: EOF
    2015/12/15 13:44:34 http: TLS handshake error from 10.0.0.xx:43442: EOF
    2015/12/15 13:44:39 http: TLS handshake error from 10.0.0.xx:43443: EOF
    2015/12/15 13:44:49 http: TLS handshake error from 10.0.0.xx:43460: EOF
    2015/12/15 13:45:25 http: TLS handshake error from 10.0.0.xx:43479: tls: first record does not look like a TLS handshake …
Run Code Online (Sandbox Code Playgroud)

ssl handshake docker docker-registry

7
推荐指数
1
解决办法
1万
查看次数

Php curl设置ssl版本

由于3天我无法连接到paypal沙箱.我发现他们可能无法支持SSLv3.所以我尝试通过设置更改我的curl请求中的SSL版本:

curl_setopt($curl, CURLOPT_SSLVERSION,1); # 1 = TLSv1
Run Code Online (Sandbox Code Playgroud)

但它仍然给我同样的错误:

error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure
Run Code Online (Sandbox Code Playgroud)

知道为什么脚本仍在使用SSLv3吗?

我正在使用php 5.5和以下curl版本(目前在我的主机[在1和1的托管主机]询问升级到更新的版本)

curl 7.21.0(i486-pc-linux-gnu)libcurl/7.21.0 OpenSSL/0.9.8o zlib/1.2.3.4 libidn/1.15 libssh2/1.2.6协议:dict文件ftp ftps http https imap imaps ldap ldaps pop3 pop3s rtsp scp sftp smtp smtps telnet tftp功能:GSS-Negotiate IDN IPv6 Largefile NTLM SSL libz

php curl handshake sslv3

7
推荐指数
1
解决办法
2万
查看次数

SSL 握手失败,“证书未知”

我们有一个当前通过 HTTP 协议运行的应用程序。我们的目标是将其迁移到 HTTPS。我们已经进行了必要的更改,但是在登录应用程序期间,我收到了“对等方未通过身份验证”错误消息。

我对 SSL 世界完全陌生,所以我谷歌搜索并捕获了 Wireshark 跟踪,通信如下所示:

  1. 客户端发送 [SYN] 到服务器。
  2. 服务器向客户端发送 [SYN,ACK]。
  3. 客户端向服务器发送 [ACK]。
  4. 客户端将消息发送ClientHello到服务器。
  5. 服务器发送ServerHello,然后发送带有消息的证书“ServerHello, Certificate, ServerHelloDone
  6. 警报 61,严重级别,说明:证书未知 // 此处失败。

请分享您对可能出现的问题的意见。我们被困在这里,无法继续前进。

ssl https tcp x509certificate handshake

7
推荐指数
1
解决办法
3万
查看次数

Https连接,Android 2.3和4之间的差异

我正在开发一个从不同服务器(http和https)检索图像的项目.

我发现这个有用的Q/A以避免No peer certificate errorAndroid 2.3中的问题,但我无法理解为什么在Android 4(> 3)中这个问题(" No peer certificate error")没有呈现.

如果我错了,请纠正我:

  • 在Android 2.3中,HTTPS连接执行整个证书检查(和握手);
  • 在Android> 3中,即使握手失败,也会建立HTTPS连接(例如:我的应用程序,因为对等方没有证书).

这些Android版本有什么区别?为什么我需要相信所有 Android 2.3而不是Android 4?

为什么在Android 2.3中我收到以下例外:"javax.net.ssl.SSLPeerUnverifiedException: No peer certificate error" 在Android 4中一切正常并且连接已建立?

一切都与Android Honeycomb中引入的SNI 服务器名称指示相关吗?

ssl https android handshake sni

6
推荐指数
1
解决办法
3737
查看次数

TCP握手失败 - 服务器的回复出了什么问题?

我正在使用ENC28J60芯片和PIC18F4620构建服务器.芯片通过以太网连接到我的PC.目前,我正在尝试建立TCP连接,稍后我将构建一个HTTP连接.我之前从未使用过TCP.

我只在嵌入式设备上实现TCP,而不是在PC上.

在发送所需的ARP请求和回复后,我打开浏览器,输入芯片的IP地址,然后按Enter键.在wireshark中,我看到一个带有SYN标志的TCP请求1.我相信SYN标志表示新的握手启动,所以这很好,不是吗?

我的芯片的回复1启用了SYN和ACK标志.根据我的理解,这是回复SYN标记请求的正确方法.芯片发送的确认号是正确的.现在,根据相同的参考,芯片应该在启用ACK标志的情况下得到答复.

然而,这个过程似乎重新开始:PC发送与第一个数据包完全相同的数据包1,只有"身份识别"发生了变化.我编写了我的芯片,当它在同一个套接字上不断获得SYN请求时停止回复,所以这是传输的结束,在浏览器中我读到无法访问服务器.

此连接在四个插槽上同时进行,所有结果都相同.

因为我只是使用我的PC作为客户端(并且我的以太网端口/驱动程序没有任何问题),所以问题必须是服务器和第二个数据包.

第二个包有什么问题?Wireshark不会将任何内容标记为不正确,但客户端不会发送ACK.


1:以下是wireshark接收的数据包:

Client: 3085 > 80 [SYN] Seq=0 Win=65535 Len=0 MSS=1460 WS=8 TSval=0 TSecr=0 SACK_PERM=1
0000  00 13 d4 c6 53 16 00 1a  a0 03 c7 21 08 00 45 00   ....S... ...!..E.
0010  00 40 de 48 40 00 80 06  9a e1 c0 a8 00 01 c0 a8   .@.H@... ........
0020  00 3c 0c 0d 00 50 …
Run Code Online (Sandbox Code Playgroud)

tcp client-server handshaking tcpserver handshake

6
推荐指数
1
解决办法
2188
查看次数

websocket握手源代码中的laddr和raddr是什么

我正在学习 websocket 在 python 3 中的工作原理。我在 websocket 源代码中添加了 print(sock) 到 _handshake.py 的 def 握手,以了解 sock 中的消息是什么,结果是这样的:

Print out sock:<ssl.SSLSocket fd=508, family=AddressFamily.AF_INET, type=0, proto=0, laddr=('192.168.1.2', 58730), raddr=('202.160.125.211', 443)>
Run Code Online (Sandbox Code Playgroud)

我想知道 laddr 和 raddr 是什么?我知道这太基础了,但没有扎实的背景,因为我似乎很难理解我已经在 gg 中搜索了这些关键字,但没有解释。

def handshake(sock, hostname, port, resource, **options):
    headers, key = _get_handshake_headers(resource, hostname, port, options)
    header_str = "\r\n".join(headers)
    send(sock, header_str)
    dump("request header", header_str)
    print("Print out sock:{}".format(sock))
    status, resp = _get_resp_headers(sock)
    if status in SUPPORTED_REDIRECT_STATUSES:
        return handshake_response(status, resp, None)
    success, subproto = _validate(resp, key, options.get("subprotocols"))
    if not success:
        raise …
Run Code Online (Sandbox Code Playgroud)

websocket python-3.x handshake

6
推荐指数
1
解决办法
3084
查看次数