区块链在云制造资源分配的研究

2022-10-16 05:50徐杨杨王艳
计算机与生活 2022年10期
关键词:合约区块交易

徐杨杨,王艳+

1.江南大学 轻工过程先进控制教育部重点实验室,江苏 无锡214122

2.江南大学 物联网工程学院,江苏 无锡214122

云制造依托云计算、物联网、大数据、虚拟化等先进技术,为制造业提供一种新的生产模式。基于云制造平台,物理世界中的制造资源和制造能力通过数字孪生技术被抽象化为可以用于消费的虚拟资源,集中在云平台的资源池中,由云平台运营商统一调配,从而可以打破地理条件的约束。云制造旨在产品的整个生命周期内向用户提供各种灵活的、可定制的制造服务。

作为学术界和工业界共同关注的前沿问题,有关云制造的研究工作主要集中在可信性、资源分配和服务质量等方面。文献[5]为了有效表征合作信任,通过对历史服务评价数据的监测,构建了评价指标体系,将服务满意度量化,并提出了基于服务满意度的信任评价模型。文献[6]研究了云制造平台中制造资源的可信性问题,从信用和可靠性两方面评估制造资源的可信度。文献[7]为了解决云制造平台上复杂产品制造任务匹配过程中偏好信息的模糊性和不确定性,提出了一种基于双犹豫模糊偏好信息的双边匹配模型。文献[8]针对云制造平台在制造资源分配过程的能耗问题,提出了一种基于能耗感知的资源分配方法。文献[9]根据云制造具有复杂特征的资源调度问题,提出了一种资源竞价机制,保证了云制造市场的公平性。文献[10]考虑到不同的制造云服务具有相似的功能和不同的服务质量,提出了一种关联感知的制造云服务描述模型,用以描述单个服务对其他相关服务的依赖性。文献[11]研究了云制造过程中扰动对服务质量的影响,利用离散马尔科夫跳变系统实现对资源的动态优化。

上述有关云制造的相关理论研究与探索,虽然在可信性、资源分配和服务质量方面取得一定的进展,但是其依赖的底层系统架构依然是集中式的框架体系。在该框架下,云制造平台由运营商经营,制造资源供应方和需求方均由平台运营商调配。其最大特点是系统中的决策依赖于少量的节点,因此,其本质上无法避免单点故障。目前,主要通过冗余备份解决单点故障问题,但是需要付出昂贵的维护成本,并且无法从根本上解决单点故障。除此之外,系统中少数节点掌握过多的权限,容易成为黑客攻击的目标,存在保密数据泄露的风险。

区块链技术是一种全新的去中心化基础架构和分布式计算范式。在公有链中,所有节点具有相同的地位,满足一定条件才可以获得记账权。其他节点负责验证,验证通过后更新本地的数据。区块链网络通过发布奖励来刺激节点挖矿的积极性,因此,即便网络中没有中心节点的调度,区块链网络仍然能保证数据存储的完整性和一致性。同时,区块链技术是一种创造信任的技术,在弱信任的网络中,节点可以按照客观的标准,譬如算力、币龄等,获得大多数节点的认可。它提供了一种安全的方式来交换任何种类的商品、服务或交易。区块链上的数据具有不可篡改性,存储在区块中的数据通过哈希运算得到唯一的身份编码,并且区块以链式结构连接,通过这种方式强化已存储的数据的安全性。

区块链技术有着广阔的应用前景。翁晓泳利用区块链的去中心化特性和不可篡改特性,设计了一种双链结构,保护云平台中的共享数据。陈飞等人利用区块链的数据可溯性设计了食品溯源系统。任艳丽等人为了解决区块链中过期的数据,根据改进的门限环签名方案和基于空间证明的共识机制提出了可删除的区块链。文献[16]对区块链在制造业和工程上的应用做了系统的综述研究。文献[17]指出区块链技术可以满足高可信度、高数据安全的分布式系统的需求,并且提出了建立一种对工业资源进行可信管控的系统平台。文献[18]在基于区块链的云制造平台中,探索了非零和理性定价策略以及不同负载水平对平台各方收益的影响。文献[19-21]主要针对云制造平台中的信任问题,结合区块链设计出一种可信的服务交易方式。文献[22-23]针对第三方平台的集中式架构和信任问题,提出了分布式对等网络架构,以提高系统的安全性和可扩展性。文献[24]提出了一种基于区块链的工作流管理系统来集中共享不同客户的异构物流资源。文献[25]提出了基于区块链技术的服务组合模型。作为一种新型的制造架构,通过将原始的服务组合问题划分为多个子问题,每个子问题包含服务/任务池的一部分,从而克服了集中化机制。

区块链技术可以为云制造系统的信任问题和数据安全等问题提供一种有效的解决方案。然而将区块链的去中心化特性和数据不可篡改特性用于云制造的研究相对较少。因此,本文提出了一种基于区块链的去中心化的云制造交易平台框架。本文的工作和创新点如下:

(1)提出了一种基于区块链的去中心化的云制造交易平台框架,研究了制造资源/需求发布过程中的椭圆曲线数字签名算法,以及制造资源与需求匹配的流程。

(2)利用智能合约设计了面向云制造的制造资源校验合约和制造资源交易合约,并完成在Remix 平台中的实验测试。

(3)探索了在去中心化的架构下,制造资源供应商和制造资源需求者供需平衡的博弈问题,并在Matlab 上进行仿真,仿真结果表明制造资源供应方和需求方的博弈可以达到纳什均衡,并且较已有的研究有较快的收敛速度。

1 区块链

区块链是一种去中心化的分布式账本,具有共同维护、不可篡改、公开透明、安全和匿名性等优点,核心组件是智能合约和共识机制,其结构如图1 所示。区块头存放与共识有关的数据项,其中当前区块哈希值是该区块的唯一标识。区块体主要存放节点打包的交易记录。

图1 区块链结构Fig.1 Blockchain structure

按照去中心化程度,区块链可以分为公有链、联盟链和私有链。公有链是一种完全去中心化的网络,网络中的节点地位均等,可以随时加入或退出网络,以比特币和以太坊为代表。联盟链是一种多中心化的网络,中心数由组建联盟链的初始成员确定,节点的加入需要特定机构批准,以超级账本为代表。私有链是一种中心化的网络,适用于规模较小的团体。

智能合约(smart contract,SC)是一种嵌入到硬件上可自动执行的代码。广义上讲,智能合约是无需中介、自我验证、自我执行合约条款的计算机交易协议。智能合约赋予区块链更强的拓展性和更高的灵活性,允许开发人员在区块链网络中开发业务逻辑。智能合约以区块链的不可篡改性作为底层支撑,整个生命周期包括合约创建、合约部署、合约调用、状态更新。在合约的整个生命周期内,各个环节以交易的形式被记录到区块链中。

共识算法是区块链系统中的必要组成部分,共识是对区块链网络中的数据或状态达成一致的过程。作为分布式网络的区块链系统无法同时满足一致性、可用性和分区容错性,因此需要一种机制在满足分区容错性的基础上,在一致性和可用性之间进行妥协。目前,区块链系统中的共识算法大致可分为基于证明和基于投票的算法。著名的基于证明的共识算法有工作量证明算法、股权证明算法、委托权益证明算法等,基于投票的共识算法主要是拜占庭容错算法。

2 基于区块链的云制造资源分配

传统的云制造平台参与用户可以划分为制造资源供应方(manufacturing resource suppliers,MRS)、制造资源需求方(manufacturing resource demanders,MRD)、云平台运营方(cloud platform operators,CPO)。MRS将可用资源注册给CPO,由CPO 根据MRD 的需求统筹调配制造资源,如图2 所示,是一种集中式的架构。本文提出的基于区块链的云制造平台通过智能合约,在没有第三方直接参与的情况下,可实现制造资源的分配。如图3 所示,MRS 和MRD 就资源价格和资源供应量达成一致后,签署智能合约,同时将合约保存到区块链中,保证合约数据不被篡改。CPO负责监督MRS 和MRD 的交易行为,并通过核查SC校验用于交易的制造资源。当双方发生交易争端时,可通过CPO 和查看SC 判定争议对象。

图2 传统云制造平台架构Fig.2 Traditional cloud manufacturing platform architecture

图3 基于区块链的云制造平台架构Fig.3 Blockchain-based cloud manufacturing platform architecture

区块链技术的引入,可以强化MRD 和MRS 之间的信任,实现双方的直接交易,弱化了传统云制造平台中第三方的作用,极大地降低了信用成本。依靠非对称数字加密和通信技术,MRS 和MRD 可以实时掌握制造资源的使用情况。

2.1 制造资源/需求发布

为了增强制造资源/需求发布的安全性,本文使用椭圆曲线数字签名算法(elliptic curve digital signature algorithm,ECDSA)保障MRS 和MRD 之间的数据传输不被篡改。以MRD 向MRS 发送请求资源消息为例,具体步骤如下:

MRD 在有限域()上确定阶数为的椭圆曲线(,),其中和为曲线参数,并在椭圆曲线(,)上确定基点。()={0,1,…,-1},是素数且∈。下文中的均与此处相同。不失一般性,本文选取曲线(0,17)=-+17=0,如图4所示。

图4 椭圆曲线Fig.4 Elliptic curve

MRD选择一个随机数作为私钥,1 ≤<,并计算公钥:

选择安全的哈希函数,将请求信息进行哈希运算,获取信息摘要:

随机选择一个整数,1 ≤<。计算映射到椭圆曲线的坐标(,):

从而获得数字签名的第一部分:

若mod=0,mod 为取模运算,重新执行该步骤,否则执行下一步。

MRD使用私钥计算数字签名的另一部分:

若=0,返回第二步,否则执行下一步。

MRD 将资源请求消息、签名(,)、MSD 的公钥、椭圆曲线(,)和基点发送给MRS。

MRS 使用MRD 的公钥和签名信息对接收到的消息进行验证。计算:

若=×,则验证通过,否则验证失败。

ECDSA 算法

2.2 制造资源与制造需求匹配过程

考虑以下场景:MRD 需要生产一批产品,产品加工任务Task 可以分解为个子任务={,,…,Task}。每个子任务需要不同的加工设备和加工时间。因此,MRD 需要将该制造需求信息通过上一节提出的ECDSA 进行加密,并在区块链网络中发布。为了保障MRD 身份的匿名性,MRD的地址信息通过哈希函数加密,得到。

其中,=[,,…,d]表示MRD 的子任务的制造资源需求量,=[,,…,]表示MRD 第一轮愿意给每个子任务的制造资源的购买单价,={T,,…,}表示每个子任务的加工时间段,表示MRD 的地址信息;[(,),]表示MRD 用于签名的信息数据,(,) 表示椭圆曲线,是基点;表示MRD 的公钥信息。

MRD 使用ECDSA 对制造需求信息进行数字签名,并将签名和该需求信息广播到网络中。

MRS 在收到MRD 的制造资源请求消息′后,首先验证该消息的合法性,通过MRD 提供的公钥验证该消息是否是MRD 发送的消息。若消息不合法,则不予回应;若消息合法,则MRS 查看请求信息′,并将能够提供给MRD 的制造资源信息回复给MRD。

其中,=[,,…,s] 表示MRS 可以提供的制造资源;=[,,…,]表示MRS 对每个请求资源的第一轮出售单价;=[,,…,]表示资源的可用时间段。

MRD 在收到MRS 的制造资源供应消息′后,首先验证该消息的合法性,通过MRS 提供的公钥验证该消息是否是MRS 发送的消息。若消息不合法,则不予回应;若消息合法,则MRD 查看回复信息′,并对有争议的地方,例如价格,向MRS 发送消息进行协商。

=[,,…,]表示MRD 的第二轮报价。价格协商可能会持续几个回合,MRS 和MRD 之间的博弈最终会达到一个平衡点。若此刻双方都能接受平衡时刻的价格,则交易达成共识,进入下一步骤;若至少有一方不能接受平衡点价格,则交易失败,MRD重新向网络中发布资源请求消息。

MRS 和MRD 双方签署用于交易的智能合约。

在制造资源与需求的匹配过程中,按照价格,交易双方自主完成匹配与交易。合约签署后,被存放到区块链中,保证交易记录不被篡改,如图5 所示。

图5 制造资源与制造需求匹配机理Fig.5 Matching mechanism between manufacturing resources and manufacturing demand

制造资源与需求匹配算法

2.3 面向云制造的智能合约设计

智能合约是区块链的重要组成部分,存放在区块链特定的位置上,能够被区块链上的其他节点调用并自动执行,赋予区块链智能的特性。由于区块链的公开透明,所有节点在正式运行合约前,可以根据输入判断出合约的输出结果,因而不存在通过智能合约的造假。尽管智能合约具有这样的优势,但将这种优势应用到实际生产中的研究却寥寥无几。文献[31]将智能合约与工业物联网中的数据相结合,研究了数据包合约和数据分析服务合约,实现了数据商品的交易。受此启发,本文提出基于区块链的云制造框架,在资源分配过程中,通过签署制造资源校验合约和制造资源交易合约,保证交易的安全性和可信度。

存放在云制造资源池中的制造资源,是物理世界中制造资源的数字化版本。在虚拟化的过程中,MRS为了获得更大的利益,可能通过某种手段对虚拟资源进行造假,如故意夸大资源数量。虽然区块链可以保证链上数据的不可篡改性,但在数据上链的过程中,区块链无法保证原始数据的真实性。因此,引入一种监管机制显得尤其重要。本文在引入区块链技术时,并没有因其去中心化的特性,完全舍弃CPO 的监督功能。CPO 的监督功能只存在制造资源第一次上链的过程中,本文主要依靠CPO 和SC 完成数据上链的校验。如果MRS 上报的制造资源超出CPO 统计的制造资源范围,将拦截上报过程,提高系统的数据可信性。而一旦制造资源的数据上传到区块链网络,系统将根据历史记录判断制造资源的合法性。因此,保留CPO 的监督功能,虽然会增加一个校验环节,降低数据上链的效率,但可以提高数据的可信度。

首先,MRS为了向其他MRD 提供服务,需要将已有的制造资源信息,包括资源的种类s.,s∈和规模.等上传到制造资源校验合约。CPO通过调研或者实地考察等方式,对该MRS 的资源种类s.,s∈′及规模′.进行评估,得到一份资源信息档案′用以衡量该MRS的能力。通过两者的比较,云平台对符合评估范围的资源进行背书并批准其进入区块链,否定超出评估范围的制造资源,如图6所示,从而监督MRS按照真实的资源进行上报。

图6 面向云制造的智能合约设计流程Fig.6 Smart contract design process for cloud manufacturing

制造资源校验合约

MRS 和MRD 通过区块链通信网络就资源价格、种类及数量达成共识后,通过签署智能合约保证交易的真实有效。合约中的价格是双方商定后确定的价格。MRS 在合约中展示所有制造资源的种类s.和数量s.,s∈。MRD 根据购买需求选择相关的制造资源的种类d.和数量d.,d∈。在交易过程中,制造资源智能合约根据MRD的需求量和MRS的供给量以及资源价格,计算出支付金额,并将金额发送给MRS的账户[MRS]。同时,调整MRS对应资源的数量及账户金额[MRD],如图6所示。一旦智能合约在区块链上运行,所有交易记录将永久保存,不可篡改,从而保证交易的真实可靠。

制造资源交易合约

3 制造资源供需博弈

3.1 问题描述

基于区块链的云制造资源分配框架使得MRS 和MRD 可以通过区块链网络实时双向通信,并使双方能够及时了解对方的制造资源需求/供应情况。因此,MRD 可以根据MRS 提供的单位资源售价和供应量以及自己的需求情况确定资源的购买量,MRS 也可以根据MRD 的资源需求量调整制造资源供应量及资源售价。设在云制造平台中,对于某种制造资源存在个MRD 和1 个MRS。每个MRD 通过区块链网络发布对资源的需求量,MRS 汇总所有的需求信息后确定对该资源的供应量,且能够提供足够数量的资源,以便获得最优的收益。因此,双方在制定决策时存在时间上的先后顺序,是一种完全信息的动态决策过程。因此本文采用Stackelberg 博弈的相关理论解决MRD 和MRS 之间的资源收益问题,其中以MRD 为主导方,MRS 为跟随方,MRS 根据MRD 的资源需求量确定资源供应量,形成一个多领导者一跟随者问题。

首先,MRD 通过区块链网络发布制造资源需求量,=[,,…,]。表示每个MRD 的资源需求量,∈{1,2,…,}。MRD 获得制造资源后,通过加工生产产品获得收益,记制造资源转化为产品收益的效益为,=[,,…,x]。 x表示每个MRD的效益,∈{1,2,…,}。单位制造资源的支付价格=[]以及生产成本,=[,,…,]。表示每个MRD的生产成本,∈{1,2,…,}。因此,MRD的利润为:

MRD 了解制造需求后,确定制造资源的供应量=[]。制造资源的价格受到供需的影响而变化,与需求量成正相关,与供应量成负相关。因此资源售价定义为:

>0,>0 为需求量和供应量对价格的影响系数。MRS 负责制造资源日常维护,单位资源的维护成本记为=[]。因此MRS 的利润为:

博弈的目的在于使参与者获得最大的利润。因此,目标函数为:

3.2 资源供需Stackelberg 均衡

Stackelberg 博弈为主从博弈,本文以MRD 为主导方,先确定资源需求量,然后MRS 根据需求量确定供应量。博弈双方的最终目的是在对方策略的约束下,逐步调整自己的策略,实现自己利益的最大化。利益最大时,双方的策略集会达到相对稳定,即达到纳什均衡。

引理1对于资源价格=[,,…,α,…,α],是博弈参与方的个数,与收益()之间的Stackelberg 博弈如果满足条件1 和条件2,则存在纳什均衡。

是欧氏空间上的非空有界闭凸子集。

β∈, β关于α是连续且凹的。

对于式(11)~式(14)所描述的制造资源供需Stackelberg 博弈,存在纳什均衡。

又因为:

由式(15)、式(16)知,h关于是连续的,关于是连续的。由式(17)、式(18)知,h关于是凹的,关于是凹的。因此条件2 成立。

将式(19)代入式(16),并对式(16)关于求导,令导函数等于0 得:

综上,证明完毕。

4 实验及结果分析

4.1 智能合约测试及结果分析

智能合约的测试使用Remix 作为测试环境。Remix是一款基于浏览器的编译器和集成开发环境,允许用户使用Solidity语言构建以太坊合约并调试交易。

在制造资源校验合约中,MRS 和CPO 分别在合约中上传制造资源信息。然后,将合约部署到以太坊区块链网络中。图7 为该合约部署到区块链的详细信息,包括此次交易的唯一标识哈希值“0x99e6c1 ba7f0498fb3658d0225c2ab05a09d4161904f5f8bbfd90e f04fd5831c1”,合约地址“0x358AA13c52544ECCEF6 B0ADD0f801012ADAD5eE3”以及输入的制造资源信息。为验证合约的有效性,对制造资源上链验证合约进行四次测试,测试输入数据见表1。

图7 制造资源校验合约信息Fig.7 Manufacturing resource validation contract information

表1 合约测试输入数据Table 1 Input data of contract test

测试结果见图8~图11。在测试1 中,MRS 上报的资源种类与CPO 评估的种类一致,并且资源数量在评估范围内。因此,资源信息上链成功,在区块链网络中创建交易,生成交易的哈希值。测试2 中,MRS 恶意上报资源的种类和数量;测试3 中,MRS 夸大资源数量;测试4 中,MRS 虚报资源种类,均被区块链网络拦截,中断交易的执行,并回滚到上链前的状态,从而避免被篡改的原始数据上链,维护云制造平台中数据的真实和可信。因此,基于区块链的云平台架构可以有效监督平台中的操作记录,方便追溯争端的起源,维护平台的公开透明。

图8 测试1 结果Fig.8 Result of test 1

图9 测试2 结果Fig.9 Result of test 2

图10 测试3 结果Fig.10 Result of test 3

图11 测试4 结果Fig.11 Result of test 4

在制造资源交易合约中,MRD 的账户地址“0x5 B38Da6a701c568545dCfcB03FcB875f56beddC4”,账户金额为100。MRS 的账户地址“0xAb8483F64d9C 6d1EcF9b849Ae677dD3315835cb2”,出售50 份制造资源。双方协商的资源价格为3。MRD 购买30份资源后,MRD 的账户自动向MRS 的账户转账90,并提示“购买成功”,如图12 所示。若此时,MRD继续购买20 份制造资源,但此时MRD 的账户余额仅为10,不足以购买制造资源,此时合约就会中断交易的产生,并提示“余额不足,购买失败”,如图13 所示。若MRD 向MRS 购买制造资源但合约中只有制造资源,则区块链网络将终止交易的执行,如图14 所示,提示“没有相关资源”。

图12 交易信息Fig.12 Transaction information

图13 交易失败(金额不足)Fig.13 Transaction failure(insufficient amount)

图14 交易失败(无资源)Fig.14 Transaction failure(no resources)

Remix 上的实验仿真结果表明,依靠区块链技术的不可篡改性和可追溯性,将智能合约运用到云制造平台可以将所有操作记录以交易的形式保存在区块链中,有效保证交易信息的可靠性和安全性。

4.2 博弈仿真及结果分析

在基于区块链的云制造资源分配框架下,资源价格受供需影响,MRD 根据生产需求租赁相关制造资源,MRS 根据资源需求量制定相关的供应策略,双方博弈的最终目的是使自己在对方的策略约束下获得最大利润。实验使用MATLABR2019b对3个MRD和1个MRS之间的供需博弈进行仿真,价格函数的系数=0.8,=0.2,本文假设需求量对价格的影响大于供应量对价格的影响。=[100,200,200],=[45,45,15],=[10]。初始的需求量=[100,100,100],供应量=[200]。如图15 所示,经过20 次迭代后,需求量、供应量及资源价格均收敛,表明MRD和MRS可以达到纳什均衡。将本文提出的制造资源博弈模型与文献[32]中提出的电网供需博弈模型进行对比,虽然研究对象不一样,但两者均研究Stackelberg 均衡收敛问题,因此存在一定的对比研究意义。本文按照文献[32]中的参数设置,在MATLABR2019b 进行仿真对比,由图16 可知,本文在迭代15 次左右接近收敛,而文献[32]在迭代35 次才接近收敛,收敛速度提升57%左右。

图15 供需博弈结果Fig.15 Game results of supply and demand

图16 博弈收敛速度对比Fig.16 Comparison of convergence speed of games

在供需平衡后,MRD3 为获得更高的收益,私自增加需求量,打破了供需平衡。需求量的增加导致资源价格上涨,给MRS 带来更大的利润。同时也增加了MRD3 和MRD2 的购买成本。因此,MRS 希望通过提高供应量获得更大的收益,而MRD2 和MRD3被迫缩减对资源的需求,从而使价格趋于平衡。最终3 个MRD 和1 个MRS 回到了原有的供需平衡状态,如图17 所示。

图17 MRD3 需求增加对供需平衡的影响Fig.17 Impact of MRD3 demand surge on balance of supply and demand

5 结束语

本文主要研究了区块链技术与云制造平台融合的应用问题,提出了一种基于区块链的云制造资源分配框架。同时研究了资源需求方和供应方在该去中心化的框架下的Stackelberg 供需博弈问题。在该框架下,云平台的参与方通过区块链网络,使用椭圆曲线数字签名算法完成资源发布,通过智能合约完成资源的匹配和交易。通过Remix 完成智能合约的测试,结果表明,基于区块链的云平台交易数据能够被安全地存储在区块链中,且区块链的不可篡改性可以增强云制造数据的可信度。在多领导者一跟随者的博弈模型中,制造资源供应方与资源需求方能够获得纳什均衡。仿真结果表明,该模型的纳什均衡收敛速度较已有研究有较大的提升,并且具有一定的鲁棒性。今后将研究区块链在共识算法上的优化,降低其共识损耗,并探索如何提高其在云制造平台应用的吞吐量。

猜你喜欢
合约区块交易
《红楼梦》的数字化述评——兼及区块链的启示
区块链助跑财资管理
一场区块链引发的全民狂欢
区块链助力企业创新
大宗交易榜中榜
大宗交易榜中榜
大宗交易
惊人的交易