编者按:本文转自白话区块链,作者系Aimee译,36氪经授权转载。
是的,区块链的确解决了一些难题,但并不意味着可以使用区块链解决一切问题。如果你把它当作万全之策,可能会制造出更多的问题,比如解决方案将会非常昂贵和缓慢。
场景:小明想开发一个速读app,他需要区块链吗?
小明的情况是开发一个速读应用程序,没有数据要存储。区块链是一个分布式数据库,数据库的目的是存储和访问数据。如果没有任何数据需要存储,那就不需要区块链。
如果有数据要存储,那么继续看下一个问题。
场景:小明想开发一个app,用来汇总不同来源的新闻;小丽公司的业务涉及另外两家小企业和一家会计师事务所,会有彼此间的定期交易。
根据Kurl Wust和Arthur Gervais的研究论文,如果你是唯一一个写入数据的人,那就不需要区块链。小明的情况就不需要区块链,他可以开发Android或IOS应用程序,使用苹果推送或谷歌消息推送摘要,这样也会更便宜。分布式数据库的目的是为了避免不一致,如果你是唯一写入数据的人,那么就不会产生不一致。因此,小明不需要区块链。
不过,如果是需要认证学生身份的大学,因为需要确保数据的真实性和无法伪造,区块链在这种情况下是有意义的。
如果多个实体参与金融交易,那么每个人都必须维护一个账本,存在不一致的可能性,因为涉及多个人并且需要记录交易,区块链在此是有意义的。小丽的情况中,这些公司必须单独保留账本,就有可能出现不一致的情况,那就需要区块链了。
如果有多个人在写入数据,那么让我们继续下一个问题。
场景:小时候,我和弟弟会交换衣服和巧克力,如果有争执,妈妈会帮助我们协调。
在这种情况下,妈妈是我们值得信赖的第三方,我们不需要区块链。如果你有可以信任的第三方,他可以成为交易中介,那么就不必使用区块链。
如果没有可信的第三方,那么让我们继续下一个问题。
场景:小明想开发一个应用程序,任何人都可以表达他们对政党的意见,但他想在应用程序中保护贡献者的隐私。
当我们在商店买东西时,我们不想透露我们的身份。比特币、以太坊等解决了金融交易中暴露身份的问题,如果你想保护数据贡献者的隐私,可以使用像Zcash这样无需许可的区块链。
在小明的情况中,使用区块链是有意义的,因为可以保护用户的身份。
如果涉及的人员不是匿名的,那继续看下一个问题。
5、写入数据的人是否相互信任?
场景:我不相信大部分滴滴司机的评分都是4.5,这是被操纵的吗?
区块链解决了信任问题,例如,在一个集中化的数据库中,权威机构可以将操纵后的数据展现给用户。滴滴的这种情况是有可能的,也许乘客都很好说话,很善良。在区块链中,所有各方将看到相同的数据。如果数据是由大家提供的,那么就在您的信任圈内,这时不需要区块链。
如果写入数据的人没有相互信任,那继续看下一个问题。
场景:小明希望金枪鱼供应链更透明,希望知道抓鱼、加工、包装等情况。
你希望你的数据透明吗?在上面金枪鱼的这种情况下,需要使用公共许可的区块链技术,公众将有权限阅读区块链中的数据。在小明的案例中,购买金枪鱼的人可以确认金枪鱼没有任何健康风险。如果您不希望数据公开,只有当事人才能看到,那么可以使用许可链,比如,超级帐本Hyperledger(许可链是指参与到区块链系统中的每个节点都是经过许可的,未经许可的节点是不可以接入到系统中,私有链和联盟连都属于许可链。小编注)
回答完以上这些问题将能确定一个应用是否真的需要区块链。也就是说,需要用区块链来解决的应用通常有这样的特点:“需要进行数据存储、通常存在多个数据输入源、各参与方没有可信的第三方、写入数据的人通常匿名且各方不需要相互信任、数据有公开验证的需要”。
如果不恰当使用区块链,可能代价高昂,比如跟中心化服务器相比,区块链在检索数据方面速度缓慢。但是,如果用区块链来解决适当的问题,那肯定是有益的。