一种基于联盟链的积分系统设计

2021-06-01 12:57:12林威高圆圆
数字技术与应用 2021年4期
关键词:链码账本商户

林威 高圆圆

(1.深圳市二十一天网络科技有限公司,广东深圳 518000;2.深圳市鹏城实验室,广东深圳 518000)

0 引言

积分营销是一种企业常见的运营手段,消费者通过预消费或者完成一些企业的营销任务就可以获得积分权益。本文提出一种基于联盟链的积分系统,以解决传统企业营销积分运营过程中存在的问题。

传统的积分营销存在以下问题:不同企业发放的积分分散,积分价值低,无法累加;积分发行机制不透明,缺失公信力;积分数据的安全性低,有可能被篡改;中小企业搭建一套中心化的积分系统成本较高。

为了解决以上问题,我们提出一种基于联盟链的积分系统。企业可以在这个系统上发放积分,对于消费者来说,不同企业发放的积分是一样的,可以累加;积分系统基于联盟链技术设计,采用了分布式架构,数据对各个参与主体完全透明,积分具有公信力;利用了区块链数据不可篡改的特点,保障了积分数据的安全性;中小企业无需自建积分系统即来开展营销活动。

1 联盟链技术

现在区块链技术已经广泛应用到政务、司法、金融、供应链等各行各业。按照区块链的开放程度,区块链可以分为公有链、联盟链和私有链。公有链对所有人开放,任何人都可以参与;联盟链只对特定的组织开放;私有链只对特定的个人或实体开放。

现在业内普遍认为联盟链介于公有链和私有链之间,属于部分去中心化的区块链系统。公众可以查阅和交易,但不能验证交易或发布智能合约,只有联盟许可的实体才可以验证交易或发布智能合约。

目前可用于联盟链的技术包括:以太坊、Hyperledger Fabric、BCOS等。Hyperledger Fabric是联盟链技术中的优秀代表,当前最新版本是2.3版本,目前主要使用的稳定版本是1.4版本和2.2版本。本文介绍的积分系统的设计也是基于Hyperledger Fabric。

1.1 Hyperledger Fabric

Hyperledger Fabric(以下简称Fabric)是Linux基金会在2015年创立的超级账本(Hyperledger)项目中的一个子项目。Hyperledger项目创立的初衷是鼓励通过开源社区开发区块链技术,以推进跨行业的区块链技术发展和应用落地。

Fabric与比特币、以太坊等其他区块链系统一样,底层都是通过一个共享账本记录所有的系统交易数据,另外使用智能合约来和共享账本进行交互[1]。

Fabric与其他区块链系统不同之处在于许可机制。比特币网络是一个开放式的非许可系统,允许未知身份的用户参与系统交易验证,也就是记账。系统采用工作量证明(PoW)的共识协议来验证交易并保护网络。Fabric系统中可以参与记账的成员,需要从可信赖的成员服务提供者(MSP)进行注册。

1.2 Fabric系统架构

图1展示了Fabric系统架构。应用客户端通过SDK、API或事件对区块链系统服务进行操作,包括身份管理、账本管理、交易管理、智能合约的部署和调用。区块链系统包括成员管理、共识服务、链码服务、安全加密等服务组件。Fabric系统采用了模块化设计,各个组件都是可插拔的,比如账本数据可以多种格式存储,共识机制可以替换。

图1 Fabric 系统架构Fig.1 Fabric system architecture

1.3 资产

Fabric的账本上记录的是资产的状态,资产可是有形的资产,如房地产、设备等,也可是无形资产,如知识产权、债权等。在本文的积分系统中,资产就是积分。

资产在Fabric中表示为键值对的集合,可以用二进制或JSON格式表示。状态更改记录为账本上的交易[2]。

式中:每一行表示5个评语等级,每一列均对应着每个实施效果影响因素对评语集中某个等级的Vague集隶属度,rij表示因素指标Ci对应评语等级Vj的Vague值评语,且有rij=[tA fA]。组织相关专家针对每个指标按照评语集逐一进行选择,为更真实地表示专家的犹豫程度,允许专家弃权。

1.4 账本

每次资产的交易都会生成一条资产键值对的数据记录,这些键值对数据最终以新增、更新或删除的形式被提交到账本上。账本以区块的形式和不可变的顺序存储这些交易记录,并以状态数据库来维护当前资产状态。

1.5 智能合约

链码(Chaincode)是定义资产和修改资产状态的指令。链码执行后会产生一组用于写入的键值对数据,并被提交到网络上,最终记录在账本中。

Fabric的智能合约就是用链码编写,大多数情况下,链码只与账本的世界状态数据库交互,而不与交易日志交互。链码可以用多种编程语言实现,目前支持Go、Node.js和Java等。

1.6 Peer节点

区块链网络主要由Peer节点组成。Peer节点是网络的基本元素,他们存储了账本和智能合约。当应用程序需要访问账本和链码的时候,他们总是需要连接到Peer节点。

Fabric SDK的API使应用程序能够连接到Peer节点,调用链码生成交易,提交交易到网络,在网络中交易会被排序并且提交到分布式账本中,并且在这个流程结束的时候接收到事件。确保每个Peer节点的账本永远保持一致是通过以排序节点作为中心的一种共识机制。

1.7 共识机制

在分布式账本技术中,交易必须按照发生的顺序写入账本,即使它们可能位于网络中不同的参与者集合之中。为此,必须建立交易的顺序,且必须采用一种方法来拒绝错误或恶意插入到账本中的非法交易。简而言之,需要建立一套验证交易正确性的共识机制。

1.8 私密数据保护

Fabric在每个通道上使用不可变的账本,以及可操纵和修改资产当前状态的链码。账本存在于通道范围内,如果每个参与者都在同一个公共通道上,那么账本可以在整个网络上共享;账本也可以被私有化,仅允许特定的参与者掌握账本的副本。

2 积分系统的架构

在本文提出的积分系统设计中,积分系统的参与者有四种不同角色,包括:开展营销活动的企业(以下简称企业)、消费者、支持积分消费的特许商户(以下简称商户)和负责整个积分系统运营的平台方(以下简称平台)。

通常情况下平台需要依赖于具有金融牌照的机构比如银行,为资金提供监管,以保障资金的安全性和平台的公信力。

3 积分系统的功能

积分系统主要包括四个积分流通环节:积分发行、积分发放、积分消费、积分返还。每个环节相关参与者的账户余额都会发生改变[3]。

(1)积分发行:发行积分的过程是准备开展营销活动的企业,将营销活动产生的积分权益对应的等价资金或有价物,交给积分平台和金融机构托管。最常见的形式是企业将积分对应的一定比例(比如1:1)的准备金存入银行等金融机构的存管账户中,之后平台方可发行积分。

(2)积分发放和领取:消费者参与积分平台的营销活动,达成企业规定的一定任务条件,比如完成一定的预消费金额或者在社交媒体平台上转发或点赞数量等,由企业对任务完成确认后,即可获得该任务对应的积分奖励。

(3)积分消费:消费者以自己的积分在平台或指定商户中消费,可以换取积分对应的商品和服务。在积分消费环节中,积分由消费者账户转移到商户账户。

(4)积分返还:商户收到积分以后,要将积分返还给平台才能回笼流动资金,平台将积分对应的资金结算给商户。

(5)结余营销费用处理:如果企业营销费用有剩余,可以将积分返还平台,并提取剩余的存管资金。

(6)平台积分处置:平台回收积分以后,可以选择将积分销毁,或者保留在平台余额中,待有企业需发布新的营销活动时,再从平台余额中划拨积分到企业账户。

4 积分系统的原理

整个积分平台由积分核心系统、智能合约、区块链账本和积分应用组成。积分核心系统为积分应用提供接口,主要的积分应用包括:企业营销活动发布涉及到积分发行、企业营销活动涉及到积分领取、商户销售点(POS)系统涉及到积分支付、商户钱包涉及到积分结算。

商户钱包和营销活动发布系统是平台的应用,商户POS是商户的应用,企业营销活动是企业的应用。积分核心系统为应用提供接口。

5 积分系统的实现

我们基于Hyperledger Fabric来实现积分系统。一个积分联盟链包括四个组织,积分运营平台(CA1)、商户(CA2)、企业(CA3)和金融机构(CA4)各有自己的证书表明身份,持有未经联盟认可的机构证书不能加入区块链网络。如图2所示。

图2 积分系统部署实例Fig.2 Points system deployment example

商户钱包(A1)和营销活动发布(A4)都是平台的应用,需要使用CA1证书。商户POS(A2)是商户积分应用,需要使用CA2证书。营销活动页面(A4)是企业积分应用,需要使用CA3证书,用于对交易进行签名。

除各组织的CA节点外,整个区块链网络由四个节点组成,平台节点P1、商户节点P2、企业节点P3和排序节点O4。平台节点P1部署S1合约和S2合约,商户节点P2部署S2合约,企业节点P3部署S2合约。所有节点的数据都通过排序节点记录在一个共享账本L,且各个节点都部署L 的副本。

6 总结

基于联盟链技术实现的积分系统,资金由持牌金融机构存管,保障安全,积分数据不可篡改,交易真实可信。所有信息被公开地记录在公共账本上,各方可随时查阅和追溯历史交易记录。共享账本由多方节点共同维护,即使部分节点受到攻击,也不会破坏数据的完整性。另外通过数字签名交易和共识算法等底层系统,避免了积分被黑客盗取的风险。

猜你喜欢
链码账本商户
数说:重庆70年“账本”展示
当代党员(2019年19期)2019-11-13 01:43:29
江苏赣榆农商行 上线商户回访管理系统
金融周刊(2018年13期)2018-12-26 09:09:38
丢失的红色账本
大树爷爷的账本
“543”工作法构建党建共同体
丢失的红色账本
一种新压缩顶点链码
计算机应用(2017年6期)2017-09-03 10:23:54
基于链码特征的几何图形快速识别算法*
商户小额贷款信用评价模型
技术经济(2014年12期)2014-02-28 01:30:35
无损链码技术的分析与比较