jiankewuying 发表于 2024-1-28 10:36:31

有偿求分析下面101个数据的checksum 较验方法(666元)

下面是104个数字,其中0-101个是源数据, 102-103数据是 0-101个数据的通过某种算法较验后的结果。现在想知道是通过什么原理来较验的。 附件是 两组参考数据。

00000724823
00100724823
00200723526
00300718320
00400710584
00500699052
00600685208
00700668223
00800650118
00900628575
01000606489
01100581877
01200558008
01300532216
01400508427
01500484430
01600461458
01700438331
01800416234
01900394317
02000374355
02100354541
02200336046
02300317888
02400301056
02500284106
02600268012
02700252013
02800237148
02900222708
03000211040
03100199548
03200190294
03300182315
03400175781
03500170321
03600165553
03700161509
03800158070
03900154994
04000152611
04100150810
04200149011
04300147212
04400145413
04500143614
04600142634
04700141652
04800140670
04900139688
05000138706
05100138056
05200137407
05300136758
05400136109
05500135460
05600135007
05700134554
05800134101
05900133648
06000133195
06100132927
06200132659
06300132391
06400132123
06500131855
06600131683
06700131510
06800131337
06900131164
07000130991
07100130847
07200130705
07300130563
07400130421
07500130279
07600130154
07700130029
07800129904
07900129779
08000129654
08100129598
08200129540
08300129482
08400129424
08500129366
08600129319
08700129274
08800129229
08900129184
09000129139
09100129121
09200129103
09300129085
09400129067
09500129049
09600129049
09700129049
09800129049
09900129049
10000129049
10100129049
1023A4DD5AB
10300024883

contonuncle 发表于 2024-1-28 12:10:35

本帖最后由 contonuncle 于 2024-1-28 12:14 编辑

我來試試運氣
你意思是:
1023A4DD5AB
10300024883
是上面所有數據的校驗?
原始數據是整形的嗎?還是字符?

foxpro2005 发表于 2024-1-28 12:27:37

原始数据是小数的,格式如下:

leafstamen 发表于 2024-1-28 12:38:23

盲猜把前3位序号去掉,剩余数为十进制需要转为十六进制,然后再去运算。

foxpro2005 发表于 2024-1-28 13:26:41

本帖最后由 foxpro2005 于 2024-1-28 14:49 编辑

leafstamen 发表于 2024-1-28 12:38
盲猜把前3位序号去掉,剩余数为十进制需要转为十六进制,然后再去运算。
(引用自4楼)

不会是这么简单的(干嘛都两行呢),应该是不对的
测试过校验和,CRC32(几种算法),整数与小数部分分开计算,都不对

jiankewuying 发表于 2024-1-28 16:48:25

原始数据应该是ascii码

jiankewuying 发表于 2024-1-28 16:48:58

但是理解为数值也可以

jiankewuying 发表于 2024-1-28 16:55:35

上位机接收过来,确认是ascii码

智涅 发表于 2024-1-28 17:09:06

有上位机那也可以从上位机入手

jiankewuying 发表于 2024-1-28 18:20:46

上位机是exe文件,是导入和导出 如何入手,

Himem 发表于 2024-1-28 18:24:24

本帖最后由 Himem 于 2024-1-28 18:28 编辑

jiankewuying 发表于 2024-1-28 18:20
上位机是exe文件,是导入和导出 如何入手,
(引用自10楼)

上位机如果修改后导入会报错,或接收到校验错误会报错,的确就能很容易逆出算法

t3486784401 发表于 2024-1-28 18:36:51

别的不说,这数据贴的很随意嘛,怎么序号也贴进来了。
先把序号拿掉,再说校验的事情吧。

再就是猜测哈希函数,感觉样本也不太够的样子。
举例:我的哈希函数定义为恒定输出,输入啥都输出102、103那两行的校验值。
这种情况都没法被现有例子排除掉

jiankewuying 发表于 2024-1-28 18:52:14

序号也是文件的一部分,我不确定序号有没有参与运算,上位机刚试验了下。如果故意改变序号是会出错的

ztg328 发表于 2024-1-28 19:28:23

都有exe了,不是都ida吗

leafstamen 发表于 2024-1-28 21:02:47

foxpro2005 发表于 2024-1-28 13:26
不会是这么简单的(干嘛都两行呢),应该是不对的
测试过校验和,CRC32(几种算法),整数与小数部分分开 ...
(引用自5楼)

所谓的整数小数只是你的臆想,我大体看下来反而感觉是ascii

jiankewuying 发表于 2024-1-28 21:27:04

是ascii 码,这个确定。

Himem 发表于 2024-1-28 23:19:05

本帖最后由 Himem 于 2024-1-28 23:23 编辑

直接把上位机exe丢上来呗,有直路没必要让大家硬猜了

foxpro2005 发表于 2024-1-28 23:45:23

jiankewuying 发表于 2024-1-28 18:52
序号也是文件的一部分,我不确定序号有没有参与运算,上位机刚试验了下。如果故意改变序号是会出错的 ...
(引用自13楼)

改变序号校验不对,那肯定证明序号也参与了运算,
这个要有上位机软件配合才好分析了

jiankewuying 发表于 2024-1-29 06:45:46

上位机安装文件 由于过大,附在
   网盘里面 链接: https://pan.baidu.com/s/1ISrMnOJJtnsJGyxkYC0P3g?pwd=gred 提取码: gred 复制这段内容后打开百度网盘手机App,操作更方便哦
      --来自百度网盘超级会员v4的分享

jiankewuying 发表于 2024-1-29 07:47:10

ztg328 发表于 2024-1-28 19:28
都有exe了,不是都ida吗
(引用自14楼)

19楼已提供上位机

jiankewuying 发表于 2024-1-29 07:47:40

Himem 发表于 2024-1-28 23:19
直接把上位机exe丢上来呗,有直路没必要让大家硬猜了
(引用自17楼)

19楼已提供上位机

jiankewuying 发表于 2024-1-29 07:48:48

foxpro2005 发表于 2024-1-28 23:45
改变序号校验不对,那肯定证明序号也参与了运算,
这个要有上位机软件配合才好分析了
...
(引用自18楼)

19楼已提供

sunrn123 发表于 2024-1-29 11:04:44

一组数据不好分析,如果有100组这样的数据,一定可以分析出来

jiankewuying 发表于 2024-1-29 11:38:47

已经提供了两组数据。 另外如果可以使用ida 分析上位机exe的话,应该会更快吧,上位机里有算法

Himem 发表于 2024-1-29 12:03:51

本帖最后由 Himem 于 2024-1-29 12:50 编辑

居然是labview


CPA_LearnParameterFormat.vi
CPA_LearnParameterChksum.vi
这两个用labview打开看看

jiankewuying 发表于 2024-1-29 12:06:04

序号如果错了会报警,但不确定是否参与检验算法。

jiankewuying 发表于 2024-1-29 12:07:22

25楼 兄弟 是ida 看过exe 代码了吗 ?

foxpro2005 发表于 2024-1-29 12:45:46

看控件风格就知道了是 LabVIEW 或 Labwindows/CVI

jiankewuying 发表于 2024-1-29 21:12:34

Himem 发表于 2024-1-29 12:03
居然是labview


(引用自25楼)

朋友,你这个压缩包的数据 是来自于 安装文件吗? 奇怪我打开安装文件没有找到你压缩包的文件

jiankewuying 发表于 2024-1-29 22:17:48

Himem 发表于 2024-1-29 12:03
居然是labview


(引用自25楼)

能够使用labview 打开

foxpro2005 发表于 2024-1-29 22:53:40

本帖最后由 foxpro2005 于 2024-1-29 22:57 编辑

你应该是看不到程序框图的,后面103行这一个估计应该是CRC16校验码
102行那个昨天测试过CRC32,几种模式都不对,当时没有把行号参于进去。

jiankewuying 发表于 2024-1-29 23:41:07

foxpro2005 发表于 2024-1-29 22:53
你应该是看不到程序框图的,后面103行这一个估计应该是CRC16校验码
102行那个昨天测试过CRC32,几种模式都 ...
(引用自31楼)

尝试了网上提供的所有CRC16算法,都无法对应。即然是Labviw开发, 是否使用IDA 的路线 仍然适用与可行

tim 发表于 2024-1-29 23:55:34

别惦记ida了,那个出来是汇编

qwe2231695 发表于 2024-1-30 02:06:45

Labviw 打开 vi文件就行了 CPA_LearnParameterFormat.vi
CPA_LearnParameterChksum.vi

foxpro2005 发表于 2024-1-30 10:21:30

本帖最后由 foxpro2005 于 2024-1-30 10:38 编辑

qwe2231695 发表于 2024-1-30 02:06
Labviw 打开 vi文件就行了 CPA_LearnParameterFormat.vi
CPA_LearnParameterChksum.vi
(引用自34楼)

你看不到程序框图的,LZ你这个CRC16在线校验的是HEX,你要转成十进制看一下对比,多几组数据看看103行的校验是不是十进制数。
----------------------
还有一个笨一点的方法可以进行推导:
1.把000~101行数据部分全部置为0
2.根据我们常规的校验方法进行试凑,根据上位机校验通过情况来得知方法。

页: [1]
查看完整版本: 有偿求分析下面101个数据的checksum 较验方法(666元)