|
发表于 2020-4-10 14:37:18
|
显示全部楼层
湖南省郴州市
.版本 2
.局部变量 FIN, 整数型
.局部变量 opcode, 整数型
.局部变量 mask, 整数型
.局部变量 MaskingKey, 整数型, , "4"
.局部变量 PayLoadLength, 整数型
.局部变量 Frame, 文本型, , "0"
.局部变量 n, 整数型
.局部变量 i, 整数型, , , 当前位
.局部变量 xx, 整数型, , "0"
字节集_字节集到数组 (原xx, Frame)
i = 1
FIN = 右移 (到整数 (Frame [i]), 7) ' i=1
opcode = 位与 (到整数 (Frame [i]), 15)
i = i + 1 ' i=2
mask = 右移 (到整数 (Frame [i]), 7)
PayLoadLength = 位与 (到整数 (Frame [i]), 127) ' 0x7F
i = i + 1
' 处理特殊长度
.如果真 (PayLoadLength = 126)
PayLoadLength = 左移 (到整数 (Frame [i]), 8)
i = i + 1
PayLoadLength = PayLoadLength + 到整数 (Frame [i])
i = i + 1
.如果真结束
.如果真 (PayLoadLength = 127)
i = i + 4
PayLoadLength = 左移 (到整数 (Frame [i]), 24)
i = i + 1
PayLoadLength = PayLoadLength + 左移 (到整数 (Frame [i]), 16)
i = i + 1
PayLoadLength = PayLoadLength + 左移 (到整数 (Frame [i]), 8)
i = i + 1
PayLoadLength = PayLoadLength + 到整数 (Frame [i])
i = i + 1
.如果真结束
' 获取MaskingKey
.如果真 (mask ≠ 0)
.计次循环首 (4, n)
MaskingKey [n] = 到整数 (Frame [i])
i = i + 1
.计次循环尾 ()
' 对xx进和掩码做异或运算
.变量循环首 (0, PayLoadLength - 1, 1, n)
加入成员 (xx, 位异或 (到整数 (Frame [i + n]), MaskingKey [n % 4 + 1])) ' 这个出现数组错误
.变量循环尾 ()
' 调试输出 (Frame)
' ’调试输出 (“xx”)
' ’调试输出 (xx)
返回 (toString (xx))
是否已握手 [数组_查找 (客户Duan, 服务器1.取回客户 ())] = 真 ' 这个出现数组错误 |
|