11

我正在研究一个小谜题。我有一些时间戳,我知道它们是时间戳,但无法弄清楚它们是如何编码的。

3ebf5b89 means 08-October-2013 hour 8 AM but minute I can't provide neither second 
3ebd5f09 means 09-October-2013 hour 8 AM Unknown minute/second.
3ea15d09 means 11-October-2013 hour 8 AM Unknown minute/second but before half past hour.

关于编码的任何想法?

奇怪的是,随着时间的流逝,日期似乎变得更低。

如果我转换为十进制并从小日期中减去大日期,我会得到一个以秒为单位转换的值,大约是两个日期之间的天数,每天有 5 小时的误差。

乐:

我设法获得了更准确的时间戳:

3ea02d09 - Oct 11th, 2013 at 17:10 (hour:minute)
3ea7ff89 - Oct 12th, 2013 at 14:28
3ea7cf09 - Oct 12th, 2013 at 15:34
4

3 回答 3

1

我尝试使用二进制形式的输入,并在值和相应的 UNIX 时间戳之间使用按位XOR(穷人密码)运算符。

这是我到目前为止所得到的:

(1381507800 ^ 0x3ea02d09) = 0110110011111 00000001111 11 010 001

(1381584480 ^ 0x3ea7ff89) = 0110110011111 11010110001 11 101 001

(1381588440 ^ 0x3ea7cf09) = 0110110011111 11010010010 11 010 001
  • 16bits + 2bits 保持稳定。
  • 前 13 位加上后 3 位(如果组合成 16 位)让我想到了某种旋转左移。

请注意,我的时区是 UTC+1,因此我的 UNIX 时间戳可能不准确。如果您可以在系统上获得相应的时间戳以进一步推动这一领先优势,那就太好了。

于 2013-10-21T10:29:21.327 回答
1

似乎时间戳使用 Pi 作为其基础来计算时间!?

3ea7ff89 - 10 月 12 日时 14 分 28 3ea7cf09 - 10 月 12 日时 15 分 34

差异:12416 ~ 66 分钟,如果我们将其除以 60 每分钟 60 秒,然后我们将其除以 66 以得到 3.13535353535 的分钟差,这非常接近 Pi。如果我们使用 pi 来反转公式: Pi*66*60=12440 这在您的时间戳中未传递的秒数的错误范围内。

于 2013-10-14T13:31:56.563 回答
1

我想知道那些转换为十进制的 HEX 与Unix 纪元时间有一些关系:

这些十六进制数字正在转换为一些有效的日期,但与您提到的不同:

Hex 3ebf5b89 = Decimal 1052728201 = Mon, 12 May 2003 08:30:01 GMT

Hex 3ebd5f09 = Decimal 1052598025 = Sat, 10 May 2003 20:20:25 GMT

Hex 3ea15d09 = Decimal 1050762505 = Sat, 19 Apr 2003 14:28:25 GMT


Hex 3ea02d09 = Decimal 1050684681 = Fri, 18 Apr 2003 16:51:21 GMT

Hex 3ea7ff89 = Decimal 1051197321 = Thu, 24 Apr 2003 15:15:21 GMT

Hex 3ea7cf09 = Decimal 1051184905 = Thu, 24 Apr 2003 11:48:25 GMT
于 2013-10-21T03:59:50.237 回答