伟大的事情都很简单,而且大多数都可以被凝结成几个词:自由,正义,荣誉,责任,仁慈,希望。——温斯顿·丘吉尔
在本文中,我将用代码示例来描述我所知道的最简单的区块链应用程序。这对于那些以区块链为起点的人来说是十分有用的,也可以为经验更为丰富的架构师们提供一个设计模型。
让我们想象一下下面这个用例:你收到了一份经了好几手的文档,而且你想要确保它的真实性。这份文件可能是你要购买的汽车的服务手册,也可能是证明你要购买的房屋的房产证明,它可能是任何东西。
去中心化Twitter项目Bluesky社区用户已超过5万人:金色财经报道,根据该公司发布的最新 App Store 数据和数据,消费者对 Jack Dorsey 支持的Twitter 替代品 Bluesky 的需求超过了访问量。在 Bluesky 网站上的新常见问题解答中,该公司分享其社区的用户已超过 50,000 人。然而,应用情报公司data.ai提供的估计表明,截至 2023 年 4 月 26 日,去中心化的 Twitter 克隆版在 iOS 上的全球安装量已超过 375,000 次,并且在苹果和谷歌应用商店的下载量排行榜上名列前茅。[2023/5/3 14:39:09]
对文档进行数字签名以确保其不被篡改并不是什么新鲜事了,你可以获取文档内容并生成一个加密签名,该签名会与文档本身一起被发送出去。
加密交易所Kraken已解决取款延迟问题:金色财经报道,加密货币交易平台 Kraken 于 UTC 时间 3 月 16 日 11:20(北京时间 3 月 16 日 19:20)表示客户连接和取款问题已得到解决。[2023/3/16 13:08:38]
文档接受者可以再次生成签名,并验证其与提供的签名是否匹配。若匹配一致,则证明文档没有被更改过。这就是MD5checksums可以提供的功能,使用起来非常方便。但它的缺点是你需要通过接收签名来验证文档的真实性。如果有人在中间同时修改了文件和签名,那你便无从查证了。
由于从个人那里获取数据并不十分可信,因此有时会有第三方介入,提供有偿的记录保存服务。这种获利动机是促使记录保管者保持诚实的根本原因。
第三方的介入确实是一个可行的方案,但远不是最完美的方案。记录保管者会将自己放在权力顶端的位置,并且在没有竞争压力的情况下榨取高额酬金。更糟糕的是,如果经济激励机制发生变化,那么记录保管者可能会变腐败。又由谁来看守这些守门人呢?
Solana链上活动持续冻结,验证者准备第二次尝试重启:2月26日消息,Solana网络的深度冻结仍在继续,验证者正在准备第二次重启尝试,希望能够恢复该链的用户服务。
到纽约时间晚上,运行Solana基础设施的验证者早已得出结论,解决目前问题的最佳方法是同步重启并分叉链。当验证者意识到他们选择了错误的重启点时,第一次尝试被放弃,进一步延长了延迟时间。
验证者和开发人员表示,最初的问题是交易处理缓慢,现在已经演变成Solana上的活动几乎完全中断,例如停止出块,交易没有被处理或验证。这意味着用户们的链上加密资产不可移动,持续冻结,直到关键的后端基础设施重新上线。
危机发生数小时后,Solana生态系统的关键人物仍在寻找事件发生的原因。一个主要的理论是,一个“fat block”影响了该区块链的机制。值得注意的是,在问题开始前不久,该网络正在升级。
截至发稿时,验证者与Solana Labs的开发人员合作,再次尝试重启区块链,并获得了70%的stake支持,该网络需要80%的绝对多数支持才能继续运作。
另外,Solana Status发推称,协调重启正在进行中,以解决从1.13升级到1.14期间导致区块终结速度显著变慢的问题。[2023/2/26 12:29:55]
高盛:美联储明年二季度或结束本轮加息 利率有望在5%至5.2% 区间:11月30日消息,高盛当前观点认为,美联储今年12月份有望加息50个基点,本轮加息将到明年二季度结束,联邦基金利率终值有望在5%-5.2%区间。美国经济明年大概率软着陆,经济增速有望在1%左右。(财联社)[2022/11/30 21:12:02]
区块链能为你做什么?
区块链数据储存是去中心化的、稳定的、不可变的。
“去中心化的”意味着数据储存在不同人员的硬件上共同运行。“稳定的”意味着即使一些参与者离开或者终止合作,数据储存也仍将继续运行。“不可变的”意味着一旦数据被储存在区块链中,它将无法被更改。
区块链以一种优雅的方式解决了文档注册表问题。一旦我们在区块链注册表中签了名,我们就不必担心文档和签名会被篡改。要想做到这一点,大多数参与者必须就这一变化达成一致意见,那这就不能算是什么秘密了。
美国国税局将招聘新员工加大对加密税收审计力度:金色财经报道,美国总统乔·拜登本月签署成为法律的《降低通胀法案》赋予美国国税局近790亿美元的新资金,其中450亿美元仅用于IRS的执法。该机构将利用这笔钱进行招聘,加大对加密税收问题的审计力度。新法律规定,除了一般的税收执法之外,美国国税局还将开展数字资产监控和合规活动。[2022/8/20 12:36:58]
与此同时,没有任何人有权以提供此服务的方式收取酬金,参与者们可以自己提供这项服务。
在这种情况下,文档可以是任何数据集。同样的模型也适用于验证任何商业交易、IoT数据集或用户身份等数据的真实性。
还是那句话:区块链以一种优雅的方式解决了文档注册表问题。一旦我们记录了签名,它就无法被篡改了。
如果我是在2016年写这篇文章的话,我可以执行大约一百行代码,然后给出一份二十多页的白皮书,并为一个项目筹集数百万美元。这一模型的应用是无穷无尽的,也的确有很多人抓住了这个机会。
如今,了解如何构建区块来设计更为复杂的解决方案是十分有用的。所有的区块链解决方案都依赖于储存用户生成的数据,并且要保证这些数据在不依赖于任何人的情况下仍是可信的。
执行
这次我没有从头开始编写合约代码。因为我一般不会做重复的工作,而区块链注册表已经被创建过十几次了。谷歌一键搜索就能找到GitHubrepo,我将用它来展示该模型是如何运作的。即使它使用的是老版的solidity,它仍然可以很好的工作,而且你可以自己测试一下。
这个合约非常简单,只有一个相关的合约变量和两个函数。
文档映射表把为文档计算的hash散列与添加它的区块链接起来。一个添加方法需要一个hash散列,并且将其储存在映射表中。一个验证方法返还一个hash散列的时间戳。
前端允许你上传带有合约的文档,添加签名并利用sha256算法计算文档内容的哈希值。
前端依然让你上传带有合约的文档,此时需要验证一下之前是否上传过该文档,如果之前上传过,则会返回上传的大概时间。
这就是实现去中心化文档注册表的全部内容,该注册表做了两件事情:
签署文档;
验证文档自上次记录签名后是否发生过改变;
这种方法之所以有效,是因为两个不同的文档具有相同签名的概率几乎为零。如果你能得到时间戳,那么你就可以确定你提供的文档是在哪个时间被导入到注册表中的。
当然,合约代码是可以被更新和改进的,但这17行核心代码仍然是正确的。
总结
文档注册表是具有商业价值的区块链应用程序中最容易实现的一个应用程序。在2016年,本文中的几行代码就足以助力一个百万美元的项目。如今,它们仍然能在更复杂的解决方案中反复使用。
文档注册表有效地利用了区块链的去中心化性和不变性这两个属性,从而不需要依赖其他人来证明数据的真实性。这个想法非常简单,但却是具有革命意义的。
来源|Hackernoon编译|火火酱责编|Carol出品|区块链大本营
郑重声明: 本文版权归原作者所有, 转载文章仅为传播更多信息之目的, 如作者信息标记有误, 请第一时间联系我们修改或删除, 多谢。