xseric
作者xseric2018-06-28 13:47
项目经理, CEB

积分交换区块链项目需求分析最佳实践

字数 5464阅读 6618评论 1赞 3

项目说明

本项目是一个基于区块链技术的积分交换实验项目,采用改进后的以太坊平台作为底层区块链技术实现,结合不同机构之间的积分业务系统,主要为解决当前积分使用体验的难点问题提供可行的解决方案用于探索研究。

1.背景和原因

1.1背景

随着区块链技术引起了大量的关注,其在金融、共享经济、物联网等方面存在很高的应用价值。当前传统金融行业在积分兑换方面存在着一些难点问题,比如积分应用环境狭窄,单一积分体系资源有限,较小的客户规模无法带来显著的费率优势;其次,积分较难被获取,由于没有积分通兑能力,只能在单一平台获取积分;最后,积分兑换门槛高、品种少、性价比低,整体用户体验较差。因此,如果能够利用区块链的“去中心化”核心技术建立一个积分互通方案,实现跨平台积分的互联互通,让参与积分互通的企业之间相互信任彼此,可以解决积分的难点问题,提升客户的满意度及使用体验,同时为其他的业务场景提供丰厚的实践经验及参考价值。

1.2目的

本项目通过采用区块链(以太坊)技术为对区块链核心技术应用进行探索验证,目的完成基于区块链技术的积分交换业务流程,包括积分的帐户验证、明细查询、积分交换等功能,实现不同机构之间积分业务系统与区块链平台的无缝衔接。

1.3区块链发展趋势

区块链技术通俗的讲就是一种分布式数据库技术,它的特点就是去中心化,公开透明,能够让每个人都参与数据库的记录和维护。如今区块链已经是金融科技等领域广泛探讨的热门话题,并且该技术的关注和研究也在近年来呈现了爆发式的增长态势。当然,在区块链技术的不断发展演进中,可以看到它既有优点,也有缺点,在区块链技术项目真正落地之前,一方面还需要在技术层面进行大量的改进工作,另一方面区块链的落地需要适应监管政策要求,要有相应的法律法规和技术标准,保证区块链市场环境的健康发展。总之,利用区块链的“去中心化”核心技术,可以有效实现建立交易各方的信任机制,从而实现了信息与价值的高效和低成本流动。未来随着区块链技术的不断成熟和广泛应用,将会给不同行业的变革与发展带来革命性的变化。

2.项目实施的预期应用效果

应用区块链技术的价值包括业务价值、IT价值和运维价值三个方面。

2.1对于企业业务的价值

利用区块链技术实施本项目,带来最大的优势就是其“去中心化”。在没有“去中心化”之前,各家公司的积分运营系统都是各自孤立的,不仅积分专区品类较少,用户兑换体验不好,同时为增加用户体验,不得不去与更多的供应商沟通大而全的商品,这样会增加人力成本的投入,同时也会带来采购的风险;另一方面,中心化部署也会增加硬件投入的成本,比如日常和容灾需要至少两套服务器,有服务器就需要建设配套的机房、采购、终端设备维护等,购置和维护成本都相当高。区块链的“去中心化”(分布式)技术,可以有效降低中心化部署的硬件及维护成本,同时利用该技术建立积分交换项目,通过在区块链节点中设定好积分交换的规则,将每一个孤岛式积分专区变成联网式的积分商城,拓展了积分使用的范围,同时可根据各自公司的业务特点提供积分专区的商品品类,减少边缘商品的供应,降低人力采购的成本,同时简化了公司间的对帐、结算、清算等操作流程,让用户自由选择积分的兑换专区,选择自己喜好的商品,为用户带来良好的购物体验。

2.2对于IT系统的价值

利用区块链技术的积分交换项目,主要在购买成本和开发成本上有很大的优势。在没有应用区块链技术之前,如果想做多机构系统互通,可能需要单独建立一个中介系统,然后再与各家系统进行对接,或者不需要中介系统各家自行进行对接,每一次对接都需要相当的开发维护成本投入,其对接的效果可能也不尽满意;另外大都区块链技术均提供了开源平台,一方面我们可以基于开源平台根据自身需求来进行个性化的开发改造,满足区块链积分交换平台的特殊需求,可以减少软件产品购买成本,另一方面由于区块链为分布式的系统,在开发对接上只需研制一套系统即可在其它对接节点间进行复用,无须再和不同公司积分系统对接时投入过多对接开发的成本在里面,对IT系统的改动是最小的。
其次利用区块链技术实施本项目,可实现IT系统更好的安全性。利用区块链技术的安全性主要体现在几个方面,第一是数据信息的安全性。区块链通过采用基于共识机制和加密算法来确保交易无法抵赖和破坏,并尽量保护用户信息和记录的隐私性。同时每一个交易都会维护在一条不断增长的链,只可能添加记录,而发生过的记录都不可篡改。第二是降低信用成本。因区块链利用了“去中心化”技术,所以不同企业的积分系统之间交换是不需要中介机构来做验证的,因此在用户做积分交换时,通过区块链的共识机制利用区块链各个节点的数据保证了该用户是合法的,且拥有可交换的积分数据,避免恶意用户对积分进行交换。第三是降低容灾风险,因为区块链是分布式的,所以每一个区块链的节点都拥有一份相同的数据库备份,即使有一个节点因故障宕机了,那么还可以通过其它的区块链节点进行数据交换或者数据恢复。综上所看,有区块链技术保障可减少业务相关的安全设备投入,降低相关的成本投入,让业务关注在发展积分个性化服务中去。

2.3对于IT运维的价值

传统的系统运维一般都需要管理员具有操作系统、脚本编写等技能,区块链的运维同样也是要求相应的运维管理人员具备同等技能,但区块链技术能带给运维管理人员更多的优势。比如通过区块链技术本身可有效防止网络攻击和故障,为运维人员降低系统的故障率及复杂性。另外可发挥区块链自动化的优势,将复杂的账本高效率的自动记录完成,同时因为区块链透明化,任何一个客户都能了解自己的金融交易的现状,可以说任何人都是管理员,都能在这个数据库中获取相应的信息,大大降低了运维人员的投入。

3.区块链项目风险管理

区块链项目的建设和应用的过程中有以下风险需要提前考虑包括:

3.1业务风险

目前来看,区块链技术的应用大都在构想和实验之中,同时由于区块链技术的特性将会改变现有的市场格局,即脱离中心化运营的孤岛,将权限放开,这势必会影响某一方的利益。所以,如果要想在实际生活、生产中运用,还需要获得监管部门和市场的认可。另一方面,区块链技术的发展也会受到现行制度的制约,区块链的去中心化会淡化现有的中心化监管体制,对现有体制造成深刻冲击。同时在部署这样一个基础系统时,对时间成本和人力物力都耗费很大,因此将会受到很大阻力。

3.2技术风险

因为选择开源平台作为区块链底层技术的实现,那么就会存在系统技术特性及质量上的问题,因为我们都知道开源软件很少有出于安全性考虑,一方面系统在运行过程中如果出现异常,遇到故障需要排除问题,那么这时除了开源社区可以请求帮助,剩下的必须团队自己花费时间研究和解决问题。另一方面系统的安全性需要进行扫描,及时发现安全漏洞并进行修复。总之,系统如果使用了开源的代码,那么项目除了要同意许可证的条款,同样要承担任何潜在的技术债务。

3.3人员风险

最后是人员的风险,目前区块链底层开发的人才相对稀缺,需要对区块链项目有开发经验的人员就显得更加珍贵。因此项目的开展不仅需要有技术开发经验的人员,同时也对区块链开源项目有一定经验的人员加入,为其合理配置项目中的职责,保障项目的正常实施。

4.预算评估

4.1项目成本分类

成本的分类,根据各公司的情况来决定,主要区别在于是否将区块链技术进行外包开发。外包开发的好处在于成本的节约,效率的提高,充分利用各种资源来迅速提升自身的竞争力。但外包的方式让公司无法掌握核心技术,灵活性不够高,同时在质量和服务方面也存在相应的风险。而具有独立研发区块链底层技术能力的可以自主研发,不过相对的成本就会很高,但带来的优势也与外包形成相反的对比。除了底层技术的研发的费用外,还应包括基于区块链平台的二次开发费用,主要是针对自身的业务来定,如本项目是要做积分交换的业务,那么就需要完成个性化的智能合约及其它相关部件的开发。此外,项目的实施费用也占据了很大一部分,包括购置服务器、部署、运维等等。

4.2项目成本预算

根据公司对本项目目标的要求,主要在于对区块链技术应用的实践及探索,因此外包的形式比较适用于本项目。一方面对项目成本进行了控制,另一方面减小人资的消耗。对于服务器方面,由于自建机房有闲置服务器,暂无需额外采购。

5.关键技术路线选型

5.1积分交换区块链物理架构图

如下图所示,本次项目要实现的是一个基于区块链技术的联盟链,每一个联盟成员都有一个各自独立的节点,所有成员共享区块链账本数据。其中积分交换的交易数据均记录在区块链上,这是利用区块链交易多副本记录,不可篡改特点,从技术层面解决机构间互信问题。
kd4bwhyack2o

kd4bwhyack2o

5.2区块链技术平台的对比

目前,我们熟知的区块链主流开源体系主要有三个,他们是比特币(BitCoin)、以太坊(ETH)以及IBM的Hyperledger Fabric。比特币不用说,它是区块链技术首个大规模成功应用的案例,通过网络中的“矿工”挖矿来完成对交易记录的记账过程,维护了网络的正常运行。其主要是一种数字货币,应用在公有链中。
以太坊可以说是将原有的区块链技术进行了扩展,从交易延伸为智能合约。总体上,以太坊与其他的区块链一样,拥有点对点的网络协议,拥有密码算法、共识机制等等,由众多连接到网络的节点来维护和更新一个共同的账本。
以太坊的进步为区块链提供了与智能合约的完整契合。其通过建立抽象的基础层,使任何人都能够创建智能合约和去中心化应用,并在其中设立他们自由定义的规则、交易方式和状态转换函数等。Solidity是一种类似JavaScript的脚本语言,也是以太坊的智能合约编写的推荐语言,可以通过简单的几行代码即可实现某些简易的业务逻辑。智能合约是部署在区块链的代码,但区块链本身是不能执行代码的,代码的执行是在本地的EVM(以太坊虚拟机)中,实际上,部署在区块链上代码是能够在本地产生原智能合约代码的代码,可以理解区块链为一个数据库,而客户端从数据库中读取了存储的运行代码,并在本地运行后,将结果写入到了区块链这个数据库中。智能合约就像能在以太坊的平台上创建的包含价值而且只有满足某些条件才能打开的加密箱子,并且因为图灵完备性、价值意识(value-awareness)、区块链意识(blockchain-awareness)和记录多状态所增加的功能而比比特币脚本所能提供的智能合约强大得多。
最后是Hyperledger超级账本,Hyperledger项目是一个成员共同协作的企业级,开源分布式账本框架和代码库,它的目的是推动区块链技术发展。那么Fabric就是超级账本区块链中的一个项目,与其他的区块链技术一样,它具有一个账本,使用智能合约,且是一个参与者可以分别管理自身交易的系统。
与以太坊不同的是,其提供了更加安全的会员服务,Hyperledger Fabric支撑了一个所有参与者已知身份的交易网络。公钥基础设施在这里被用来生成绑定到网络中不同组织与应用客户端的加密证书。因此,它可以更广泛地在通道级别上操纵和控制数据访问控制。这种控制就像是一种“许可”,与通道的存在和功能,形成了隐私性与保密性这个关键问题的解决方案。此外,Fabric提供了多种不同的共识机制可进行切换,账本数据也可以以多种形式存储,更可以为参与者创建单独的账本交易,禁止其竞争对手知道交易的细节。
有人比喻以比特币为代表的货币区块链技术为区块链1.0架构,以以太坊为代表的智能合约区块链技术为2.0架构,实现了完备的权限控制和安全保障的Hyperledger项目可以看成是一套框架,代表着3.0架构时代的到来。

5.3以太坊的优势

相对于Hyperledger Fabric,以太坊拥有一个成熟的生态系统,并使得智能合约和业务逻辑的开发变得非常简单,使得其成熟易用,接口丰富,这是以太坊一个巨大的优势。
本项目本身是一个研究实践的项目,利用以太坊灵活通用的智能合约,建立各种去中心化的服务。所谓智能合约不再只是一个计算机程序,它自己本身就是一个参与者,能够对接收到的信息进行回应,既可以接收和储存价值,也可以向外界发送信息和价值。这个程序就像一个可以被信任的人,可以临时保管资产,总是按照事先制定的规则执行操作。这样我们就可以根据我们不同的业务来制定属于自己的智能合约。以太坊提供了高级语言让用户自己来编写智能合约,高级语言最后会编译成在以太坊虚拟机(EVM)中执行的EVM字节码,部署在以太坊区块链上。以太坊虚拟机(EVM)是智能合约的运行环境,它是一个完全独立的沙盒,合约代码在EVM内部运行,对外是完全隔离的,甚至不同合约之间也只有有限的访问权限,这也是以太坊项目中的一个主要创新。
另外以太坊可以通过enode地址的方式建立联盟链,每个启动节点必须提供各自的enode来加入积分联盟网络,只有在联盟网络中的系统可以对数据进行读写和发送交易,共同来记录交易数据,防止恶意节点伪造交易记录。同时在进行交易时,需对用户的真实性通过验证后,才可以进行交易,这样保证数据的一致性和安全性。在共识算法中,以太坊默认的PoW(Proof of Work)共识机制在联盟链场景下,算力竞争容易造成资源浪费和不可靠问题,所以改为采用PBFT(Practical Byzantine Fault Tolerance)算法作为以太坊共识机制,采用PBFT之后的以太坊可适用于联盟链场景中,在很大程度上能够减少算力开销,并在一定程度上减少网络上的数据传输量。

如果觉得我的文章对您有用,请点赞。您的支持将鼓励我继续创作!

3

添加新评论1 条评论

wuwenpinwuwenpin软件开发工程师, 南京
2018-07-13 07:34
谢谢分享!
Ctrl+Enter 发表

本文隶属于专栏

最佳实践
不同的领域,都有先行者,实践者,用他们的最佳实践来加速更多企业的建设项目落地。

作者其他文章

相关资料

X社区推广