传统关系数据库在设计表时通常会有一个或多个时间戳(timestamp)用于标记添加或修改时间的一行。

基本上,这些时间戳是在应用程序内部使用的。当数据与其他应用程序共享时,这些时间戳意义不大,因为时间戳可以伪造。
在数据黑市中,数据经纪人可以使用银行VIP注水客户数据,掺入一半假数据。
为了扰乱市场竞争对手的视线,保险公司故意污染数据,将高净值用户列入保险欺诈用户黑名单,将保险欺诈用户列入高净值用户名单,然后故意泄露污染数据。
如果每个数据都有一个真实和可信的时间戳(这个数据产生的真实时间点),这种欺诈行为更难工作,因为假数据的时间戳通常是最近的。
过去,我们很少关心数据的时间戳,也很少理解时间戳对数据的意义。一个原因可能是我们不知道如何使用技术来实现这样的时间戳。
如果技术完全可行,这次戳对我们来说意义重大。
首先,我们有历新手学炒币如何开户注册的历史数据,真史数据。
第二,这些数据可以被其他应用或分析工具使用,因为它们更有价值,因为它们是可信的。
第三,我们可以根据这些可信的历史记录生成信用。
最后,我们真正进入了一个信用社会。
想象一下,如果我们想在未来的某一天证明我们的数据是在今天生成的,我们可以以某种形式的哈希(如默克尔树)获得哈希值,然后在第二天的参考信息上发布广告,发布哈希值。明天的参考信息将成为我们的时间戳。
如果我们明天想做同样的事情,我们可以这样做。另一个关键点是记住给哈希今天的哈希值。这样,每天的哈希值就包含了以前所有数据的哈希信息。
区块链在P2P分布式时间戳服务通过节点间的共识算法在网络上实现。
区块链是由记录块(区块)组成的链条,时间有序。一个块包括两部分:块头(Block
Header)记录部分。默克尔树(Merkle
Tree)默克尔来,默克尔树根(Root)将哈希值作为本区块中记录的所有数字指纹放入区块头。
块头还包含以下字段:前块头的哈希值(这是前块的数字指纹,或指向前块的哈希指针),时间戳和高度(Hight,即从第一个区块开始数本区块是第几个块),以及一些其他信息。系统的共识算法保证了每过固定的一段时间(Bitcoin是10分钟左右),参与整个系统记账的节点会达成共识,在区块链上添加下一个新区块。
时间戳的设计增加了根据时间指数更改记录的难度。记录越老,就越难更改。这是因为如果更改某个块中的记录,则意味着该块的原始默克尔树根失效,需要更改该块的数字指纹。因为下一个块的块包含了哈希指针,这意味着下一个块也需要更改。直到最新的块。
可见要想改动一个区块,必须同时改动该区块后面的所有区块。因为在区块链中放置一个块需要消耗大量的资源(资源类型因共识算法而异,可以是计算能力、流逝时间、权益等)。随着后面添加的块越来越多,几乎不可能改变一个块。
对于一个普通的应用程序,如何实现这样的时间戳服务?我们需要创建自己的区块链吗?没有必要,Bitcoin新手间戳服务是炒币短线技巧的好时机。我们可以写哈希值Bitcoin在区块链中。这是存在证明(Proof
of Existence)。Factom它还提供类似的服务,每10分钟收集所有哈希,生成一个哈希值Bitcoin在区块链中。
哪些数据需要时间戳?它必须是不能更改的数据,特别适合存档文件。你现在需要考虑实施时间戳吗?这与你的数据策略有关。在大数据时代,拥有高质量的数据是有价值的。时间戳可以在一定程度上保证数据的可信度,至少这些数据已经通过了时间测试。
