- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我一直在分析一些 230V 通信并试图找出协议(protocol)的校验和算法。从我了解到的通信结构如下:
CheckSum8 Xor
这样的算法,
CheckSum8 Modulo 256
和
CheckSum8 2s Complement
;不幸的是没有任何运气。
| Start structure | Data | ChkSum |
00000100100010000 1010 1010 1010 1010 1011 10001100
00000100100010000 1010 1010 1010 1010 1001 01111100
00000100100010000 1010 1010 1010 1010 1101 01110010
00000100100010000 1010 1010 1010 1010 0101 01101110
00000100100010000 1010 1010 1010 1011 0101 01010110
00000100100010000 1010 1010 1010 1001 0101 00100110
00000100100010000 1010 1010 1010 1101 0101 11000110
00000100100010000 1010 1010 1010 0101 0101 11101000
00000100100010000 1010 1010 1011 0101 0101 10110100
00000100100010000 1010 1010 1001 0101 0101 00001100
00000100100010000 1010 1010 1101 0101 0101 10010010
00000100100010000 1010 1010 0101 0101 0101 01000000
00000100100010000 1010 1011 0101 0101 0101 00001010
00000100100010000 1010 1001 0101 0101 0101 10011110
00000100100010000 1010 1101 0101 0101 0101 01011000
00000100100010000 1010 0101 0101 0101 0101 00111010
00000100100010000 1011 0101 0101 0101 0101 11111110
00000100100010000 1001 0101 0101 0101 0101 10011000
00000100100010000 1101 0101 0101 0101 0101 01010100
00000100100010000 0101 0101 0101 0101 0101 00100010
更新:
| Start structure | Data | ?ChkSum? | HEX |
00 00000100100010000 0000 0000 0000 0000 0000 1011 1000 B8
01 00000100100010000 0000 0000 0000 0000 0001 1011 0010 B2
02 00000100100010000 0000 0000 0000 0000 0010 0100 1000 48
03 00000100100010000 0000 0000 0000 0000 0011 0100 0010 42
04 00000100100010000 0000 0000 0000 0000 0100 1011 0110 B6
05 00000100100010000 0000 0000 0000 0000 0101 1011 1100 BC
06 00000100100010000 0000 0000 0000 0000 0110 0100 0110 46
07 00000100100010000 0000 0000 0000 0000 0111 0100 1100 4C
08 00000100100010000 0000 0000 0000 0000 1000 1010 0100 A4
09 00000100100010000 0000 0000 0000 0000 1001 1010 1110 AE
10 00000100100010000 0000 0000 0000 0000 1010 0101 0100 54
11 00000100100010000 0000 0000 0000 0000 1011 0101 1110 5E
12 00000100100010000 0000 0000 0000 0000 1100 1010 1010 AA
13 00000100100010000 0000 0000 0000 0000 1101 1010 0000 A0
14 00000100100010000 0000 0000 0000 0000 1110 0101 1010 5A
15 00000100100010000 0000 0000 0000 0000 1111 0101 0000 50
16 00000100100010000 0000 0000 0000 0001 0000 1000 0000 80
17 00000100100010000 0000 0000 0000 0001 0001 1000 1010 8A
18 00000100100010000 0000 0000 0000 0001 0010 0111 0000 70
19 00000100100010000 0000 0000 0000 0001 0011 0111 1010 7A
20 00000100100010000 0000 0000 0000 0001 0100 1000 1110 8E
21 00000100100010000 0000 0000 0000 0001 0101 1000 0100 84
22 00000100100010000 0000 0000 0000 0001 0110 0111 1110 7E
23 00000100100010000 0000 0000 0000 0001 0111 0111 0100 74
24 00000100100010000 0000 0000 0000 0001 1000 1001 1100 9C
25 00000100100010000 0000 0000 0000 0001 1001 1001 0110 96
26 00000100100010000 0000 0000 0000 0001 1010 0110 1100 6C
27 00000100100010000 0000 0000 0000 0001 1011 0110 0110 66
28 00000100100010000 0000 0000 0000 0001 1100 1001 0010 92
29 00000100100010000 0000 0000 0000 0001 1101 1001 1000 98
30 00000100100010000 0000 0000 0000 0001 1110 0110 0010 62
31 00000100100010000 0000 0000 0000 0001 1111 0110 1000 68
32 00000100100010000 0000 0000 0000 0010 0000 1100 1000 C8
33 00000100100010000 0000 0000 0000 0010 0001 1100 0010 C2
34 00000100100010000 0000 0000 0000 0010 0010 0011 1000 38
更新 2:
| Dec | Start structure | Data | ?ChkSum? | HEX |
00 00000100100010000 0000 0000 0000 0000 0000 1011 1000 B8
01 00000100100010000 0000 0000 0000 0000 0001 1011 0010 B2
02 00000100100010000 0000 0000 0000 0000 0010 0100 1000 48
04 00000100100010000 0000 0000 0000 0000 0100 1011 0110 B6
08 00000100100010000 0000 0000 0000 0000 1000 1010 0100 A4
16 00000100100010000 0000 0000 0000 0001 0000 1000 0000 80
32 00000100100010000 0000 0000 0000 0010 0000 1100 1000 C8
64 00000100100010000 0000 0000 0000 0100 0000 0101 1000 58
128 00000100100010000 0000 0000 0000 1000 0000 1001 0110 96
256 00000100100010000 0000 0000 0001 0000 0000 1110 0100 E4
512 00000100100010000 0000 0000 0010 0000 0000 0000 0000 00
1024 00000100100010000 0000 0000 0100 0000 0000 0010 0110 26
2048 00000100100010000 0000 0000 1000 0000 0000 0110 1010 6A
4096 00000100100010000 0000 0001 0000 0000 0000 1111 0010 F2
8192 00000100100010000 0000 0010 0000 0000 0000 0010 1100 2C
16384 00000100100010000 0000 0100 0000 0000 0000 0111 1110 7E
32768 00000100100010000 0000 1000 0000 0000 0000 1101 1010 DA
65536 00000100100010000 0001 0000 0000 0000 0000 0111 1100 7C
131072 00000100100010000 0010 0000 0000 0000 0000 1101 1110 DE
262144 00000100100010000 0100 0000 0000 0000 0000 0111 0100 74
524288 00000100100010000 1000 0000 0000 0000 0000 1100 1110 CE
最佳答案
我想我已经破解了这个。以下是它的工作原理:
0b10111000
的初始运行结果开始(0x8B)。1
的输入位值,您希望将当前运行结果与该位的 8 位掩码进行异或。const UINT8 bitMasks[20] = {
0b00001010,
0b11110000,
0b00001110,
0b00011100,
0b00111000,
0b01110000,
0b11100000,
0b00101110,
0b01011100,
0b10111000,
0b10011110,
0b11010010,
0b01001010,
0b10010100,
0b11000110,
0b01100010,
0b11000100,
0b01100110,
0b11011100,
0b01110110
};
UINT8 ComputeWeirdHash(UINT32 inBits)
{
UINT8 result = 0b10111000;
for (i=0; i<20; i++)
{
if (inBits & (1L << i))
result ^= bitMasks[i];
}
return result;
}
现在,找到每个
bitMask
值,使用只有一位为
1
的输入.然后通过您的测试系统运行它以找到 8 位校验和。将结果与我们的初始运行结果值异或:
0b10111000
, 找到
bitMask
值(value)。
关于checksum - 逆向工程 "checksum"代,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62884108/
我一直在分析一些 230V 通信并试图找出协议(protocol)的校验和算法。从我了解到的通信结构如下: 第一个 block 总是相同的,必须是某种开始结构(910hex) 然后嵌套5个 block
我们正在通过 Phonegap 构建安卓混合应用程序。使用 PayTm 网络集成工具包。 正确生成校验和。但是,当提交表单进行付款时,会返回 **Invalid Checksum ** 问题。 最佳答
在运行金字塔配方时,以下在 chef-solo 中失败: =======================================================================
我正在尝试使用此处描述的3个步骤-http://www.javaworld.com/community/node/3968创建一个自定义Maven存储库。因此,我遵循了所有步骤,并在这里有了存储库:
我想在现有的角度应用程序中安装最新的 Electron 版本,因此我按照npm命令进行安装。 命令:npm i electron@latest 预期行为 Electron 应成功安装。 实际行为 因此
我有一个警报系统,我已将其配置为通过以太网向我的手机发送 SMS 消息。 这是我收到的一些短信: 5522 18 1137 00 003 1C76 5522 18 3137 00 003 3278 5
如果给定代码 + CRC 字符串,如何计算 CRC 算法? 我有几个由代码 + 匹配的 CRC 组成的字符串,但不知道如何计算有问题的 CRC,以便我可以生成更多的代码字符串。以下是一些示例(16 位
我是一名电子工程师,并没有发现从纯数学角度考虑 CRC 很重要。但是,我有以下问题: 为什么我们在计算 CRC 时要在消息中添加 n 个零,n 是生成多项式的次数吗?我在模2长除法以及CRC的硬件实现
假设我最后有一些带有 16 位校验和的数据包。我想猜测使用了哪种校验和算法。 首先,从转储数据中,我可以看到数据包有效负载中的一个字节变化完全改变了校验和,所以我可以假设它不是某种简单的异或或求和。
从 Internet 下载各种可执行文件或 zip 文件时,我从未使用过校验和。我知道它用于检查一致性并增加一点安全性。但是,当您从 Apache 或 Microsoft 等受人尊敬的项目下载时,有必
我有短的、可变长度的十进制数字,例如:#41551,它们是由人类手动转录的。输入错误会导致不良结果,所以我的第一个想法是使用 Luhn 算法添加校验和 - #41551-3。然而,这只会检测到错误,而
我正在寻找一种校验和算法,其中对于大数据 block ,校验和等于所有较小组成 block 的校验和之和。我发现的大部分内容都来自 RFC 1624/1141,它们确实提供了此功能。有人对这些校验和技
我有一个关于如何计算互联网校验和的问题。我在书中找不到任何好的解释,所以我在这里询问。 看看下面的例子。 发送以下两条消息:10101001和00111001。校验和用1的补码计算。到目前为止我明白了
以太网帧检查序列始终附加在数据链路层帧的末尾。为什么它附加到帧的末尾而不是其他地方? 我想了一下,认为这可能与例如如何进行有关。计算 CRC 校验和,如果帧的结构是 header+payload+cr
我正在尝试在 Verilog 中为 SENT 传感器协议(protocol)实现 CRC 算法。 在 SAE 发布的一份文件中,他们说他们的 CRC 使用生成多项式x^4 + x^3 + x^2 +
只需添加位即可生成校验和。取 1 补码的额外步骤有何用处? 我理解这个理论。我知道如何计算 1 的补码,并且知道如何将补码相加使结果全为 1。 我想看一个如何检测错误的简单示例。 最佳答案 我相信您正
Google 代码提供如下条形码: 当您下载软件时。它的目的是什么(我假设它与SHA1校验和有关,但如果是这样,它是如何使用的)? 编辑:现在我知道了它的名字,我发现 this article 。谢谢
当我尝试运行此语句时,我的程序无法编译: Checksum checksum = new CRC32(); 错误:找不到符号 符号:校验和类 我在程序开始时完成了以下操作。 import java.u
当我使用 torrent 下载 ISO 镜像时;我应该仍然验证文件的完整性(例如通过计算 sha256 哈希),还是在下载时自动完成? 最佳答案 BitTorrent 协议(protocol)具有一种
我必须做一点 java 自检程序(self-checksum)。这是我的代码示例 public class tamper { public static int checksum_self
我是一名优秀的程序员,十分优秀!