2017-06-02 69 views
0

我记录了两台设备之间的蓝牙传输,我想对协议进行逆向工程。我想了一切,但没有日期时间格式。 我有以下已知对十六进制值和日期:反向工程十六进制值到时间日期格式

00:fe:a6:11:f5:0d:c7:19:00:ff:01:09:00:00:00:00 --> 03.06.2017 - 07:44:06 
00:fe:68:40:f4:0d:da:15:00:ff:01:09:00:00:00:00 --> 02.06.2017 - 16:51:20 
00:fe:33:3d:f4:0d:c6:14:00:ff:01:09:00:00:00:00 --> 02.06.2017 - 16:37:39 
00:fe:83:1d:f4:0d:ba:15:00:ff:01:09:00:00:00:00 --> 02.06.2017 - 14:22:27 
00:fe:c2:19:f4:0d:7d:16:00:ff:01:09:00:00:00:00 --> 02.06.2017 - 14:06:26 
00:fe:f5:15:f4:0d:b2:16:00:ff:01:09:00:00:00:00 --> 02.06.2017 - 13:50:13 
00:fe:67:14:f4:0d:e4:16:00:ff:01:09:00:00:00:00 --> 02.06.2017 - 13:43:35 
00:fe:80:0f:f4:0d:6a:17:00:ff:01:09:00:00:00:00 --> 02.06.2017 - 13:22:40 

我怎样才能把它转换从十六进制值的日期/时间格式?我已经尝试过,如果他们以unix时间戳格式传输日期/时间,但似乎他们正在使用不同的东西。

有人看到解决方案吗?

感谢

回答

0

THX你的答案。

我发现如何的日期和时间进行解码。 Grp 3和Grp 2在unix时间的小端,但从2010年开始奇怪,而不是从1970年开始。

所以我必须添加40年才能获得正确的年份。

例如:

00:fe:a6:11:f5:0d:c7:19:00:ff:01:09:00:00:00:00 --> 03.06.2017 - 07:44:06 

UNIX时间解码:

0d:f5:11:a6 --> 234164646 -> unix time stamp 1977-06-03T05:44:06+00:00 in ISO 8601 

加入40年的这UNIX时间戳,我得到正确的日期和时间。

0

我需要有更多的数据要能够充分理解这是怎么回事,但这里是我可以从现有的有限数据收集:

|Grp 1 |Grp 2 |Grp 3 |Grp 4 | Grp 5  | Padding? | 
|------|------|------|------|-----------|------------| 
|00 fe |a6 11 |f5 0d |c7 19 |00 ff 01 09|00 00 00 00 | : 03.06.2017 - 07:44:06 
|00 fe |68 40 |f4 0d |da 15 |00 ff 01 09|00 00 00 00 | : 02.06.2017 - 16:51:20 
|00 fe |33 3d |f4 0d |c6 14 |00 ff 01 09|00 00 00 00 | : 02.06.2017 - 16:37:39 
|00 fe |83 1d |f4 0d |ba 15 |00 ff 01 09|00 00 00 00 | : 02.06.2017 - 14:22:27 
|00 fe |c2 19 |f4 0d |7d 16 |00 ff 01 09|00 00 00 00 | : 02.06.2017 - 14:06:26 
|00 fe |f5 15 |f4 0d |b2 16 |00 ff 01 09|00 00 00 00 | : 02.06.2017 - 13:50:13 
|00 fe |67 14 |f4 0d |e4 16 |00 ff 01 09|00 00 00 00 | : 02.06.2017 - 13:43:35 
|00 fe |80 0f |f4 0d |6a 17 |00 ff 01 09|00 00 00 00 | : 02.06.2017 - 13:22:40
  • 第1组:年?
  • 第2组:不确定。可能与时间计算方式有关。
  • 第3组:我相当有信心,这是一天和一个月。如果我的猜测是正确的,那么它的包装非常紧密。
  • 第4组:我有一个预感这是小时/分钟/秒。至少,这个和第2组以某种方式连接在一起。
  • 组5:与时间戳不太可能相关。
  • 填充:我假设是从来没有使用过,这只是空的空间。

真正能够颠倒协议的唯一方法是有很多不同的信息。日期与不同的年/月/日和时间戳与同类小时,但不同分/秒,等

道歉,如果这并不能帮助你多少,无论哪种方式,祝你好运!