APP下载

基于区块链的精准扶贫云平台设计与研究*

2020-12-15陈高翔马振锋

关键词:以太区块精准

陈高翔,马振锋

(百色职业学院,广西 百色 533000)

改革开放以来,我国政府在引导帮助贫困家庭和人口实现摆脱贫困的道路上攻坚克难,愈行愈远,取得了一定的成绩.2013年11月,党和国家领导人习近平总书记提出了精准扶贫的思想方针,要求各地要不折不扣、不遗余力解决贫困问题.为体现扶贫工作的精确性,不少地方政府相继构建精准扶贫大数据云平台,以面向记录在册的贫困地区、家庭、人口提出针对性的救扶计划,并完成科学有效的动态追踪.但事实上,不同平台的使用并不规范和安全,存在一定的问题,如一部分人为图扶贫补贴而出现身份造假,监管人员存在违纪违规操作;部分工作记录不计真实数字,搞“数字脱贫”假象;扶贫专款发放监管机制不严,困难户接收款项精准度不足;平台系统内存数据频现肆意篡改、数据失真的情况;中心化结构数据呈现可信度降低等.近几年,区块链技术得到发展,在诸多数据处理技术中展现了自身的技术特性与优势,可以链式数据架构来保存数据,以共识模式来更新数据,使得数据一致性较为明显,结构去中心化目标突出.因此,将区块链技术引入到精准扶贫大数据云平台系统的设计开发中,确保各项数据可实现永久保存、不会遭受篡改风险、全程接受跟踪监控,促进系统去中心化运行,具有十分重要的意义.

1 区块链技术概述

区块链技术出自比特币的技术研究,初期用于加密货币,后被用于金融等更多领域,属于分布式基础架构,无须设置中心服务器,直接将不同的系统参与者作为结构维护和数据存储对象,所有参与者均可共享数据.区块链现行模式存在私有链、公有链、联盟链三类,各模式概念及执行思路存在不同,所场景需求和应用要求差异性较大,模式特征表现有别.

区块链主要由区块联结而成,区块经算法运行后形成,每一个区块信息包括独立版本号、前一区块的哈希值、随机Nonce数、代表顺序的时间戳以及有效时间内的所有交易记录,结构如图1所示.区块链的区块设计中,前后两个区块具有严格逻辑性,前一区块哈希值为后一区块的形成前提,新生成的新区块按链条顺序排于区块链末端,不易改变.若不同用户对同一区块链进行数据录入,则区块链将严格理顺区块时间来排列区块,智能选择后续区块来满足用户的写录需求,形成最长的区块链条.

图1 区块链的区块结构示例Fig.1 Example of block structure of blockchain

区块链网络层的特征之一是启用P2P(peer to peer)对等网络架构,从图2所示结构图谱可知区块链网络内所涵盖的计算机节点具有统一服务机制.区块链在使用P2P网络后能够直接在节点中存储处理数据,因此在网络架构中只要存在某一台计算机主机在运行区块链,就可以做到数据不丢失、程序不篡改、服务不终止.

图2 P2P网络结构示意Fig.2 P2P network structure diagram

区块链既有较高的安全性,在数据的交易执行过程中严格体现逻辑行为一致性,依赖于非对称加密技术的应用.非对称加密使用一对不同的密钥,公钥在区块链网络中所有节点可见,私钥只由账户自己保存,通过其中一个密钥不能解密出另外一个.区块链节点用公钥加密数据后,只能用对应账户的私钥解密,由于在数据传输过程中未涉及密钥交换,其安全性能比对称加密等级高.椭圆曲线密码体制(Elliptic Curve Cryptosystem,ECC)不同于其他公钥算法的特点集中体现在拥有更低规模的计算量,拥有更短规格的密钥长度,加解密速度更快,因此存储空间和传输带宽的要求也就更低,在区块链中得到广泛应用.

2 精装扶贫云平台系统设计需求

2.1 现有系统的结构及功能

新时代赋予扶贫攻坚工作更大的机遇和挑战,为此,各地政府以中央“精准扶贫”指导方针为根本遵循,不断引深网络化管理的探索与实践.积极结合扶贫需求,并努力集中整合在同一系统.现阶段被各地广泛应用的精准扶贫系统基本框架和功能如图3所示.系统主要基于B/S架构或C/S架构开发,数据的存储和应用通过中央服务器完成,服务器中集聚了大量核心功能.

图3 精准扶贫系统结构及功能示例Fig.3 Structure diagram of precision poverty alleviation system

在后期的系统开发探索中,可简化开发及维护流程的中心化结构模式的应用得到了共识.但中心化模式的隐患也存在很多:一是系统的研发维护权限往往集中在独立运营主体上,管理运营上存在数据失窃的风险;二是以MySQL和Oracle数据库形式存于中央服务器的数据可能遭受数据管理员的违规处理;三是服务器由单一企业保管维护,网络安全性不高,对数据资源的保护不利;四是人为更改系统操作日志的概率较高,违规记录不易追查;五是扶贫金面向困难服务户的发放记录不清晰,使用路径记录不详实.因此,积极调整思路,采用去中心化的架构体系对于数据的记录和源头保存意义重大.

2.2 基于区块链的精准扶贫云平台设计需求

2.2.1 技术选型

本文所设计的精准扶贫云平台系统,启用以太坊作为技术支撑平台.以太坊是富有代表性的区块链平台,其图灵完备,且无区块大小限制,可运行智能合约,合约由Solidity语言编写,具有可开发性,便于学习.在以太坊的应用中,能够屏蔽区块链底层逻辑和复杂算法,利于专注研究应用逻辑,可提升效率、降低成本.

2.2.2 总体设计需求

精准扶贫系统的建立,目的旨在强化扶贫工作从宏观到微观的环节落实,增强监控记录精准度.工作人员可随时利用身边的电脑、手持PAD、智能手机等终端在浏览器地址栏中输入正确网址后进入系统,可按不同权限在不同操作页中工作.为增强安全性,以太坊区块链需要公私钥识别,工作人员要在区块链中存储个人以太坊地址,并由个人妥善保管私钥.区块链还要持续更新存储不同地址的人员资料、贫困户基本信息、扶贫工作动态、社调走访信息、扶贫措施信息、扶贫资金发放信息等内容.区块链与外部世界的交互以交易方式完成,只有合约账户接收到外部账号的交易信号才会改变后者的以太坊状态.工作人员个人所匹配的私钥,可用于完成交易签名,增强交易唯一有效性.精准扶贫云平台系统核心业务流程与职能如图4所示.

图4 精准扶贫云平台系统核心业务流程与职能示例Fig.4 Use case of precision poverty alleviation system

具体的系统应实现的核心功能为:

(1)用户确保使用正确的以太坊个人账号,以正常流程登入系统;

(2)设合约创建管理员、系统管理员,由前者管理后者信息以及以太坊地址;

(3)确定区块链身份后,系统管理员于链中编辑扶贫工作人员、帮扶干部的信息;

(4)扶贫工作人员负责贫困户账户管理,涉及以太坊地址管理、扶贫资金管理,并对指定帮扶干部分配贫困户;

(5)帮扶干部在系统辅助管理中及时掌握贫困对象情况,添加调研走访、扶贫动态、帮扶措施等信息;

(6)贫困户可申请账号并接受扶贫资金管理,绑定银行账号后可转出划拨的扶贫资金;

(7)系统出现故障或升级维护,合约创建管理员、系统管理员可投票决定系统急停.

3 基于区块链的精准扶贫云平台设计

3.1 系统开发环境

基于区块链的精准扶贫云平台系统设计基础是实现去中心化理念.以寻求开源模式,选定以太坊平台来完成区块链环境搭建.可将云平台系统的开发主机配置进行规范,基本的硬件配置应具备16 GB内存、i5处理器、500 GB硬盘存储空间,并能够最大程度运行虚拟化软件,可在主机中借助软件开辟好5台虚拟机,内存均为2 GB的虚拟机,系统要求配64位Ubuntu 14.04.1及以上版本,利于搭建以太坊网络、IPFS去中心化文件系统网络.其中,虚拟机还可完成以太坊验证节点的部署,要留好network层、protocol层,用于对精准扶贫大数据的收发解析.

3.2 系统架构

系统设两层架构:交互层和网络存储层,其中交互层设五个基础功能模块,用户交互层中所有的作用机理其实与其他系统的用户交互层作用一致.网络存储层由太坊网络、IPFS去中心化文件系统网络构成,以太坊网络中大量节点经逻辑算法的识别分配后可组建区块链联盟,实施共识机制保障内部协调,并为系统内出现的各种交易指令的激励与响应提供验证或存储服务.如图5所示.

图5 精准扶贫云平台系统架构Fig.5 Cloud structure of precision poverty alleviation system

3.3 交互层模块设计

交互层模块是紧扣精准扶贫系统的实际需求而设定,将“账户管理”“帮扶工作”“扶贫资金”“贫困户信息”“系统管理”五个模块按照对应的需求功能进行细分设计,模块结构功能如图6所示.

图6 模块功能结构图Fig.6 Module structure diagram

3.4 用户接口设计

对于精准扶贫云平台系统的使用,用户感受的评价指标影响性是较大的.要设计出识别度较高的友好界面,才能是打造良好平台系统的基础.文中的用户接口设计主要采用分层结构思路,如图7所示.系统按合约账号信息识别判定进入界面的用户,按照权限设置的差异性,对应连接不同界面.

图7 用户接口设计图Fig.7 User interface diagram

不同身份用户登录平台后,Session会记录个体权限.无论要进入哪个功能模块,需要接口管理组件和监听接口组件联合操作,形成对调用智能合约下所触发事件的判断与执行.

3.5 以太坊接口管理

设计中,通过Contract Manager块命令,仅接收需要处理的目标地址以及交易数据,就可发送交易指令,而用户则会在合理的密钥识别后由Session管理获取.

以太坊中新区块的形成要通过监听组件来完成监听,这样有利于交易信息在太坊网络不同节点中的广播,交易信息在广播后组织验证,并最终流入新区块,如此可确保新区块交易要在新区块的逻辑区域内才能成功完成.若出现不同区块时间,交易信息没有得到有效的反馈,系统就会重新向用户提示重发交易指令.Contract Manager块子类积极参与底层结构的功能调用,所能调用的功能包括在智能合约引导下的交互交易类函数以及constant函数,后者不会出现函数调用交易费用,仅能发起系统数据查询激励.对于以太坊下不同子类与对应合约的交互,要注意在方法逻辑和不同参数方面的统一性,这样可有效降低对数据交互的影响,避免交互出错.

4 结语

区块链技术的应用已经成为未来行业研发的重要技术潮流,相应的探索研究力度还会增大.在精准扶贫工作中,使用区块链技术建立的云平台系统所具有的去中性化、无保留公开、全过程记录、数据不可篡改、路径便于追踪溯源等优势是显而易见的.当然,该精准扶贫云平台系统的设计,需要技术的不断突破才能更好地更好和维护好系统,才能为我国的扶贫工作带来更多的助力,保障扶贫管理的科学性、精确性,也保障扶贫资金使用的安全性、规范性.

猜你喜欢

以太区块精准
以太极为旗,开启新时代“黄河大合唱”
精准防返贫,才能稳脱贫
区块链:一个改变未来的幽灵
区块链:主要角色和衍生应用
车易链:做汽车业的“以太坊”
精准的打铁
区块链+媒体业的N种可能
读懂区块链
精准扶贫 齐奔小康
精准扶贫二首