logo好方法网

基于区块链和边缘计算的药事供应链管理系统及方法


技术摘要:
本发明提出了一种基于区块链和边缘计算的药事供应链管理系统,包括:节点信息上传模块、数据存储模块、数据上传模块、公私钥以及标识符存储模块、身份验证模块、公私钥对分发模块、节点标识模块、边缘服务器部署模块、边缘服务器信息存储模块、边缘服务器处理模块、存  全部
背景技术:
药事供应链管理是以提高药事产品质量、药事服务水平以及药事供应链整体效益 为目标,把整条供应链看作一个集成组织,“链”上的各个企业都看作合作伙伴,对供应链活 动中的物流、信息流和资金流的计划、组织、协调和控制。由于药事供应链具有流通环节和 交易层次多、交易渠道复杂、医药产品存储要求高等特点,传统集中式药事供应链管理模式 依靠一个核心机构对整个供应链进行管理,管理效率和效益低下,供应链各环节间的信任 机制不健全,数据透明度低,难以实现药事产品的溯源追责。 区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型 应用模式,它使每个个体都能参与数据库记录,具有去中心化、公开透明等特点。药事相关 企业将区块链作为接口,直接上传医药产品生产、流通过程中的数据,建立自己的记账节 点,并与上下游企业合作,保证数据共享、安全、透明、可验证,从而打通医药追溯的“大动 脉”。 现有技术中,传统的基于区块链的药事供应链管理系统具有共识机制消耗资源量 大等问题,区块链节点的计算能力不足,难以高效地完成计算任务以达成共识,使得整个药 事供应链管理系统的效率低下。因此,本发明引入边缘计算为区块链节点提供相应的计算 服务,提高药事供应链管理系统的效率。 现有技术中公开了一种供应链管理方法,其申请号为:201711421233.9,该方法利 用RFID及区块链中的智能合约技术来实现实际供应链管理中涉及的多方环节间的资金与 信息流管理,一件商品在供应链环节中所包含的生产、运输、仓储、销售等信息基于RFID技 术完成快速上链操作;以区块链作为底层分布式账本,以其不可篡改、数据完整准确的特性 实现商品数据的安全上链存储,便于方便快速且准确的追溯到商品在供应链中涉及的所有 信息,实现商品各环节数据的可追溯、可查证、在多方间的统一和透明。其不足之处在于:区 块链的共识机制消耗了大量的计算资源,节点无法承担计算资源以达成共识,可以进行改 进,以提高区块链节点的共识效率。
技术实现要素:
本发明的目的是提供一种基于区块链和边缘计算的药事供应链管理系统及方法, 将区块链节点达成共识所需的计算任务交给边缘服务器来完成,解决区块链节点计算能力 不足的问题,提高药事供应链的管理效率;同时利用改进的k-means算法为区块链节点部署 最佳位置以及最优数量的边缘服务器,提高边缘服务器的资源利用率。 本发明的目的是这样实现的:一种基于区块链和边缘计算的药事供应链管理系 统,包括: 节点信息上传模块:用来上传药事供应链节点的身份信息、位置以及一段时间内 4 CN 111612393 A 说 明 书 2/6 页 每个节点产生的需要处理的区块和产生时刻; 数据存储模块:用来存储对应边缘服务器发送的区块信息; 数据上传模块:负责将药事供应链节点产生的新区块上传至对应的边缘服务器; 公私钥以及标识符存储模块:用来存储药事供应链节点各自的公私钥对以及标识 符; 身份验证模块:用来验证药事供应链节点的合法性,并对访问区块链网络的权限 进行授权; 公私钥对分发模块:负责为合法的药事供应链节点分发唯一的公私钥对,避免非 合法节点的伪造攻击; 节点标识模块:为药事供应链中所有经过身份验证的节点生成唯一的标识符; 边缘服务器部署模块:负责为药事供应链中所有的节点部署边缘服务器; 边缘服务器信息存储模块:用来存储边缘服务器部署的位置、数量以及各边缘服 务器的区块链节点集合; 边缘服务器处理模块:负责处理区块链节点的计算任务,向区块链网络上传最终 生成的区块,并将该区块发送至集合中的所有区块链节点和其余各边缘服务器; 存储模块:用来存储由边缘服务器上传的区块; 共识模块:用来存储基于工作量证明的共识机制; 智能合约模块:用来存储药事供应链各节点间签署的智能合约。 一种基于区块链和边缘计算的药事供应链管理方法,包括以下步骤: 步骤1:由药事供应链中所有节点组成区块链联盟链,联盟链中的所有区块链节点 登录系统,将该节点的身份信息、位置以及一段时间内产生的需要处理的区块和产生时刻 上传至系统; 步骤2:系统对各节点进行身份验证后,授予合法节点访问区块链网络的权限,并 分发唯一的公私钥对,用作身份识别,防止伪造攻击; 步骤3:按照规定的边缘服务器部署方法为药事供应链中所有的区块链节点部署 边缘服务器,得到边缘服务器部署的最佳位置、最优数量以及分配给边缘服务器的区块链 节点集合; 步骤4:药事供应链节点将需要上传至区块链网络的数据存入新建区块中,计算出 数据的哈希值,并用私钥进行加密,形成数字签名。同时,将产生数据的时间戳存入区块中; 步骤5:药事供应链节点将新建区块发送至对应的边缘服务器,边缘服务器在收到 该区块后,判断是否由该边缘服务器集合中的区块链节点发送;若是,则计算出符合工作量 证明机制的nonce值,向区块链网络发送该区块,并同时发送给其他各边缘服务器;否则,向 该药事供应链节点回送拒绝请求消息; 步骤6:其他边缘服务器在收到这一区块后,向各自集合中的区块链节点发送,所 有的区块链节点都在本地存储该区块的信息,便于后续的查询工作。 作为本发明的进一步限定,步骤3)边缘服务器部署方法具体为: 3-1)信息采集:负责收集基于区块链和边缘计算的药事供应链管理系统中区块链 节点的数量、位置以及一段时间内每个节点产生的需要处理的区块和产生时刻。数据预处 理负责将边缘服务器计算出每个区块符合要求的nonce值所花的时间进行排序,得到的最 5 CN 111612393 A 说 明 书 3/6 页 长时间作为时间域;将该时间内每个节点产生的所有区块总大小中的最大值,作为该节点 需要被边缘服务器处理的区块大小。 3-2)决策分析:在执行优化算法前,需要对边缘服务器部署的约束条件进行分析, 在部署边缘服务器时,需要满足一定的约束条件,即同一边缘服务器上同时处理的数据量 大小不能超过该边缘服务器自身的总容量,在满足上述约束条件的同时,部署算法要使得 边缘服务器总的资源利用率达到最大; 3-3)边缘服务器部署:执行基于改进k-means的边缘服务器部署算法,在满足约束 条件的前提下,解得边缘服务器部署的目标函数的帕累托最优解,即边缘服务器部署的最 优位置以及最佳数量。 作为本发明的进一步限定,步骤3-3)中采用的基于改进k-means的边缘服务器部 署算法步骤如下: 3-3-1:初始化k,使得区块链节点所需的总资源量大于k-1个边缘服务器的总容量 而小于等于k个边缘服务器的总容量; 3-3-2:选择两两距离最大的k个区块链节点作为聚类中心; 3-3-3:对区块链集合中的每一个节点,计算其与每个聚类中心的距离,与哪个聚 类中心最近就划分到那个聚类中心所属的集合; 3-3-4:聚类完成后,重新计算每个集合的中心,得到边缘服务器的部署位置; 3-3-5:判断是否有过载的边缘服务器,若有,则选择超载边缘服务器集合中所需 资源量最小的区块链节点,分配到距离最近的欠超载边缘服务器集合中; 3-3-6:重复3-3-5,直到所有边缘服务器都达到负载均衡,算法终止;如果始终不 能达到负载均衡,则使得边缘服务器的个数k=k 1,重复3-3-2~3-3-6。 本发明采用以上技术方案与现有技术相比,具有以下技术效果: 1)本发明将区块链节点达成共识所需的计算任务交给边缘服务器来完成,解决了 区块链节点计算能力不足的问题,能够提高药事供应链的管理效率; 2)基于改进k-means的边缘服务器部署算法为区块链节点部署最佳位置以及最优 数量的边缘服务器,能够提高边缘服务器的资源利用率,节约部署边缘服务器的成本。 附图说明 图1为本发明系统模块框图。 图2为本发明中边缘服务器部署流程图。
分享到:
收藏