如何设计一个基于分布式账本的项目

最近因为工作需要,在设计一个基于分布式账本的项目。在思考整个项目的过程中,查找了不少资料,参考了一些项目的白皮书,对如何设计一个分布式账本项目有了些许心得。这点心得还上不得台面。先记录做个总结。

首先说明下为什么叫分布式账本而不是区块链。在对区块链进行分析的过程中,我们发现区块链本身具有很大的局限性,其主要为基于PoW工作量证明设计的,适合并发要求不高的场景。区块链是分布式账本实现的一种形式,但不是全部。

言归正传。如何才能设计一个基于分布式账本的项目呢?我们以投票为例。我们既然要用分布式账本来做一件事情,首先要明确用它解决什么问题,这个问题是不是有其他解决方案。用分布式账本做这件事情真的有优势吗?在投票领域,解决造假一直是个难题。以美国总统选举为例,为了防止作弊,需要设计专门的选票,需要有专人看管投票箱,在票的运输过程中要严加看管,计票过程也要全程监控,防止出错或者作弊。

为什么美国人不采用电子投票呢?很简单,投票系统面临包括网络攻击、过程修改、拒绝服务、欺骗、投票收买、以及对投票人电脑进行病毒攻击等在内的风险。分布式账本可以极大的提高造假的成本,篡改数据是非常难的一件事情。所以对于这种需要防止造假,需要数据具有不可篡改的场景,是非常适合使用分布式账本技术的。

电子投票主要由两部分组成,分别是身份系统和投票系统。身份系统用于核验投票者的身份。核验身份有很多方式,可以使用电子卡片或者电子优盾等做身份验证。如果您在银行开通过网上银行,银行都会给您发一个类似优盘的优盾。这个就是解决身份造假问题的。以瑞士为例,身份认证是通过选民身份确认。选民下载DAPP——Uport进行身份认证。在Uport上,Zug公民填写姓名、出生日期、上传身份证或者护照,将数据上链,申请注册Uport ID,并对自己的信息持有私钥。城市管理员通过公钥开启公民的个人信息,经过两周的验证审核,可正式使用该ID。

那么如何才能进行投票呢?我们以纳斯达克设计的投票系统为例。该系统会为每位有投票全的用户分配相应的投票权资产和投票代币资产。如果同时持有投票权资产,那么用户就可以通过发送代币的方式对每个会议议程进行投票。比如张三投1票,即给张三的对应地址发送一个代币。

投票系统因为涉及的环节少,目的单一,传统方式解决困难。使用分布式账本可以有效解决造假以及网络攻击问题。目前分布式账本还处于早期阶段,需要结合传统技术,传统方案与分布式账本结合的方式,共同解决问题。在使用场景中,需要使用分布式账本的优势,对于其不擅长的并发以及效率问题,可采用现有技术实现。在整个方案的设计中,须聚集于解决问题,而不被技术所迷惑。

免责声明

1. 本分析根据分析对象提供或已经正式对外公布的信息,相关信息的合法性、真实性、完整性、准确性由分析对象负责。

2. 本文的分析及结论只能用于相关决策参考,不构成任何买入或卖出等投资建议,vicoin价值评级不对投资者据此操作造成的任何损失承担后果。

3. 本文版权属于vicoin价值评级所有,未经授权,任何机构和个人不得复制、转载、出售和发布,如引用、刊发,须注明出处,且不得歪曲和篡改。

猜你喜欢

扫码打赏,请随意

打赏ETC,EOS,RDN,QSP,金额随意

VICOIN价值评级,币圈靠谱评级专家。我们专注于区块链项目评级。在这里,遇见您的百倍项目。招募对数字货币评级感兴趣的有志之士共同打造靠谱的数字货币评级服务。同时招募开发人员和志愿者。

  • 发表于:
  • 原文链接https://kuaibao.qq.com/s/20180907G0PMVA00?refer=cp_1026
  • 腾讯「云+社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 yunjia_community@tencent.com 删除。

扫码关注云+社区

领取腾讯云代金券