打印

求助,大神进来看看曼些斯特编码怎么解

[复制链接]
2400|1
手机看帖
扫描二维码
随时随地手机跟帖
跳转到指定楼层
楼主
john_david_|  楼主 | 2016-7-10 13:36 | 只看该作者 回帖奖励 |倒序浏览 |阅读模式
5555555595555A65556AA696AA6666666955

    这是某压力传感器无线数据包解调后但未解码的报文(hex)


    已知其ID为0xFED31F,请继续将报文完整解码,提交hex。

tips:flag是flag{破译出的明文}

相关帖子

沙发
cbb0416| | 2016-7-23 17:48 | 只看该作者
曼切斯特编码有两种方式,一种是二进制数由0->1表示1,1->0表示0,另一种则相反。(这里0表示低电平,1表示高电平)
假如选择0->1代表1,则一个字节数据经过曼切斯特编码过程如下:
0x00(原始数据)-----0000 0000(原始数据二进制)-----1010 1010 1010 1010(曼切斯特编码后二进制)----- 0x55 0x55(曼切斯特编码后的数据)
0x5A(原始数据)-----0101 1010(原始数据二进制)-----1001 1001 0110 0110(曼切斯特编码后二进制)----- 0x99 0x66(曼切斯特编码后的数据)

以上两个例子可以看出编码过程,解码过程正好相反。
你的数据解码过程如下:
待解码数据: 5555555595555A65556AA696AA6666666955
解码后数据二进制数: 1111 1111 1111 1111 0111 1111 1100 1011 1111 1000 0010 0110 0000 1010 1010 1010 1001 1111
解码后十六进制数据: F       F      F       F      7       F      C       B      F      8      2       6      0      A      A      A      9       F
整理后为:FFFF7FCBF8260AAA9F

不过很奇怪的是这个解析之后的数据和你的不一致,我觉得可能会有下面几方面原因需要你自己去检查下:
1. 这个ID并不一定体现在这个数据中,或者经过了某些方式的转换,即无法通过这个hex数据直接找到这个ID数据
2. 我在推导过程中发生了错误,这个需要你自己推导验证下
3. 采用的曼切斯特编码是0->1表示为0的编码方式

使用特权

评论回复
发新帖 我要提问
您需要登录后才可以回帖 登录 | 注册

本版积分规则

1

主题

1

帖子

0

粉丝