随着工业互联网产生的数据量日益增加, 越来越多的企业选择将工业互联网数据外包存储在云服务器上以节省存储开销. 为了防止外包存储的数据被篡改或删除, 企业需要定期对其进行审计. 提出了一种基于智能合约的工业互联网数据公开审计方案. 该方案基于博弈论的思想, 设计了一系列智能合约, 以高效地抵抗参与者恶意行为. 与现有抗合谋的公开审计方案相比, 该方案不依赖于复杂的密码学工具实现对参与者恶意行为的抵抗, 使得其更为高效, 进而能够更好地应用于海量且频繁更新的工业互联网数据场景中. 特别地, 所设计的博弈合约作为一种独立的工具, 能够与现有的公开审计方案有效结合, 在不降低其审计效率的同时, 增加方案的安全性. 在本地环境和以太坊公有测试链Ropsten上对博弈合约以及整体方案进行了一系列的测试, 结果表明, 所设计的合约运行花费低且对运行环境适应性强, 对原有完整性审计方案的效率影响小; 同时, 与其他抗审计者恶意行为的完整性方案相比, 该方案更为高效.
As the amount of data generated by the Industrial Internet grows, more and more companies are choosing to outsource the storage for their Industrial Internet data to cloud servers to save storage costs. To prevent the outsourced data from being tampered or deleted, companies need to audit the data integrity regularly. This study proposes a public auditing scheme for Industrial Internet data based on smart contracts. Particularly, a series of game-theory based smart contracts are designed which can efficiently mitigate malicious participators including the third-party auditor and the cloud server. Compared to existing collusion-resistant public auditing schemes, the proposed scheme does not rely on complex cryptographic tools to achieve resistance to participant malicious behavior, and thus is more efficient and suitable to Industrial Internet applications where huge amount of data need to be frequently updated. Specifically, the game-based contract designed in this study as an individual solution, can be effectively combined with existing public auditing schemes to turn out a public auditing scheme with better security without losing efficiency. Finally, a series of tests are conducted on the proposed contract in the local environment and Ropsten, the common test chain for Ethereum. The results show that the designed contract is cheap to run and adaptable to the operating environment, has little impact on the efficiency of the original integrity audit solution, and is more efficient than other integrity schemes that resist the malicious behavior of auditors.
随着信息技术在制造业的应用, 工业互联网成为备受关注的热点[
云存储技术是指数据提供方雇佣云服务器为其进行数据存储服务. 云存储相比传统本地数据库存储更便捷, 节省了企业本地购入存储设备以及后期维护的大额开销. 同时, 云存储还具有强可塑性, 它能为不同的客户制定不同需求的服务, 非常契合工业互联网数据存储的要求. 然而, 将工业互联网数据外包给云存储服务器后[
为了检验在云存储服务器数据的完整性, 在2007年, Juels等人[
由于其具有较强的灵活性, 公开审计方案近几年受到了众多学者的关注, 出现了许多相关研究[
文献[
然而, 该思路在应用于工业互联网外包数据公开审计场景前, 仍需要解决以下3个技术挑战.
1) 工业互联网外包数据公开审计场景中, 恶意且理性的审计者和云存储服务器会发起的攻击与外包云计算场景的大不相同. 如, 由于工业互联网数据更新频繁的特性, 导致审计者需要短时间内进行多次审计, 审计者可能会发起的恶意延迟审计攻击或不审计以节省审计成本, 云存储服务器也可能发起的恶意扰乱审计流程攻击以设法获得审计者的押金, 甚至审计者和云存储服务器可以共同发起的恶意合谋攻击欺骗用户. 具体实现的完整性审计方案应能抵御在工业互联网场景下理性的审计参与者所能发起的全部攻击.
2) 文献[
3) 在外包云计算场景中, 云计算服务器最终会返回一个具体的结果给用户, 因此文献[
在此基础上, 本文提出了基于博弈合约的安全高效工业互联网外包数据公开审计方案. 该方案分为博弈合约部分和完整性审计部分. 其中, 博弈合约部分借鉴文献[
1) 从博弈论的角度分析工业互联网公开审计方案中审计者和云存储服务器的利益关系, 对恶意审计者和云存储服务器发起攻击与否时的利益得失进行建模, 根据收益模型设计一套基于智能合约的奖惩机制, 该奖惩机制由囚徒合约、合谋合约和背叛合约组成. 它们使得双方都诚实地执行协议时才能获得最大利益, 因此降低了恶意参与者的攻击动机.
2) 基于以上几个合约, 设计出一个能够抵抗恶意审计者和云存储服务器的公开审计方案. 具体地, 详细给出了如何将以上博弈合约与现有的公开审计方案有机结合的方法, 展示出本方案的高拓展性.
3) 在本地环境与以太坊公有测试链上测试了本文设计智能合约的效率, 并得出其具备高效性以及对运行环境适应性强的结论.
本文第1节介绍公开完整性验证的相关方法和研究现状. 第2节介绍本文所需的储备知识, 包括博弈论模型和智能合约的定义. 第3节介绍本文所构建的系统模型, 包括系统角色的介绍、威胁模型的介绍和安全目标的定义. 第4节给出我们方案的一个具体例子. 第5节对我们的方案进行安全分析, 以证明本文的方案能抵御系统模型中定义的威胁模型. 第6节对本文的方案进行性能测试, 以证明其高效性与高适应性. 最后总结全文.
自Ateniese等人[
以上公开审计方案都假设第三方审计者半可信, 但在实际情况中, 审计者有着很强的经济动机做出恶意行为, 例如延迟审计、不审计、甚至与服务器合谋来获取更大的利益. 为此, Xu[
在本节中, 我们介绍本文所使用的博弈与策略概念和智能合约概念.
在本文中, 我们参考文献[
●
●
●
●
●
●
●
●
●
接下来, 我们将用一个博弈例子来详细介绍定义1, 如
博弈树的示意图
策略决定了参与者在博弈的任何阶段采取的行动. 根据文献[
例如,
除了需要分析参与者面临的博弈和策略以外, 方案还需要处理它们选择之后引起的实际利益变化. 一个直接的解决思路是, 引入可信第三方运行奖惩机制以保证博弈游戏的公平执行. 然而, 伴随着第三方的引入, 该方案也会面临着新的安全挑战, 如, 如何确保第三方真的可信, 保证可信第三方在处理争议时, 不会偏袒任何一方, 避免可信第三方发生偷窃参与者资金等恶意行为. 为此, 本文提出使用智能合约替代可信第三方处理双方利益, 并且原先的可信第三方将作为一个威慑实体存在, 只在双方出现争议时才会被智能合约唤醒辅助其判断恶意方的工作, 以减少方案对可信第三方的依赖.
智能合约的概念由Nick Szabo于1995年提出[
智能合约的运行可以分为两个阶段: 智能合约的部署和智能合约的调用. 本文以以太坊中智能合约的运行作为例子, 介绍这两个阶段的大致流程. 在以太坊系统中存在着一个以太坊虚拟机EVM, 其作用如沙盒一样将合约执行的环境与区块链隔离开[
智能合约部署示意图
本节首先介绍本文依据的工业互联网外包数据公开审计系统模型, 以及其中存在的威胁. 最后再详细介绍本文方案想要达成的设计目标.
系统模型图
● 用户: 用户是工业互联网数据的提供方. 为了节省数据存储的开销, 用户雇佣云存储服务器外包存储工业互联网数据. 同时, 为了确保自己外包的数据不会被不可信的云存储服务器恶意删除, 其雇佣审计者对外包的数据进行定时的审计. 然而, 审计者也是不可信的, 为此, 用户部署智能合约以抵御双方的恶意行为.
● 云存储服务器: 云存储服务器是提供外包存储服务的供应商. 本文假设云存储服务器具有理性且不可信的特征, 即其以自己的利益优先, 并可能为了更高的利益做出恶意行为.
● 审计者: 审计者是出售算力的实体, 其被用户雇佣使用算力为用户做审计服务. 同时, 审计者也具有理性且不可信的特征, 也有可能为了利益做出恶意行为.
● 智能合约: 智能合约为区块链的一个应用, 在本系统中作为下发审计任务、支付审计者和云存储服务器薪资以及处罚双方恶意行为的用户代理者. 由于区块链的性质, 智能合约不会受任何一方控制. 因此, 从双方的角度上, 智能合约就像是一个公正的裁决者.
● 可信第三方: 可信第三方(trusted third party, TTP)协助智能合约检验审计证据. 当审计者和云存储服务器产生争议时, TTP就会被唤醒并重新执行审计协议, 给出正确的审计证据以协助合约判决.
在清楚上述各实体在系统里的角色后, 根据
● 首先, 用户需要部署智能合约, 在智能合约上设置审计任务和奖罚机制, 并提交用于支付审计者和云存储服务器的薪资.
● 然后, 用户会把需要存储的数据提交给云存储服务器, 通知审计者审计相关的信息, 并要求双方都在智能合约上注册.
● 智能合约会下派审计任务给审计者, 审计者根据任务审计云存储服务器上的数据.
● 审计者和云存储服务器最后会把审计得到的审计证据提交到智能合约上, 智能合约对审计证据进行检验: 如果正确, 则支付薪资给双方; 反之, 则唤醒TTP协助判决, 智能合约根据判决结果对双方进行奖惩.
威胁模型是指系统模型中实体可能发生的不诚实或侵犯另外实体利益的行为. 此处, 本文只考虑审计者和云存储服务器的威胁模型, 用户、智能合约以及可信第三方并没有作恶的动机. 对审计者和云存储服务器威胁模型的具体分析阐述如下.
● 审计者威胁模型: 审计者的动机是获取更大的利益, 因此, 其可能会不诚实执行审计流程, 返回任意结果作为审计证据, 以节省审计所消耗的算力成本. 或者, 审计者可以发起延迟审计攻击, 以节省一定的审计开销. 除此之外, 任何可以获取更高利益的行为审计者都会接受, 即使侵犯了用户的利益.
● 云存储服务器威胁模型: 云存储服务器的动机也是为了获得更高的利益, 因此, 它也可能会不诚实执行审计流程, 返回任意的结果给用户. 同时, 为了获得更高的收益, 云存储服务器可以删除用户的数据, 将获得的额外空间转租给其他用户. 然而, 为了不让用户发现它的作弊行为, 其必须能够通过审计者的审计. 为此, 云存储服务器可以根据审计者理性的特点发起恶意合谋攻击, 贿赂审计者一起欺骗用户.
值得注意的是, 在审计者威胁模型中, 本文没有考虑审计者发起恶意合谋攻击的情况. 这是因为审计者发起合谋的动机没有云存储发起合谋的动机强烈, 并且云存储服务器接受审计者合谋邀请的概率可忽略不计. 所以, 本文只考虑云存储服务器会发起恶意合谋.
基于系统模型和威胁模型, 我们从效率、安全性和可拓展性这3个方面定义了本文的设计目标, 具体内容如下所示.
● 效率: 方案所涉及的算法应具有高效性, 即不应该对运行的环境有过高的要求, 算法运行效率高. 同时, 各方在调用智能合约时, 只需要较低的运行费用.
● 安全性: 本文提出的方案应该满足以下安全要求:
1) 公平性: 审计者和云存储服务器能够获得的利益不应该被对方影响, 即不存在由于对方的行为而影响到自己利益损失的情况, 双方各自能获得的利益只取决于自己做出的行为.
2) 抵御威胁: 方案应该能够抵御威胁模型中定义的各种安全威胁.
● 可拓展性: 本文提出的方案应该具备可拓展性, 其体现在方案中的完整性审计部分具有可替换性, 即只要是满足一定条件的公开审计方案, 就都能应用到我们的方案里.
本节详细介绍本文提出的基于博弈合约的安全高效工业互联网外包数据公开审计方案. 该方案包括两个重要组成部分: 完整性审计和博弈合约. 需要注意的是, 本文方案中的完整性审计部分具有可替换性, 任何一个满足条件(审计者和云存储服务器能生成一个可比较的审计证据)的可公开审计方案都能应用到我们的方案中.
完整性审计是指审计者、云存储服务器和智能合约三者执行用户指定的工业互联网外包存储数据审计任务. 这里, 我们使用Ateniese等人[
基于博弈合约的公开审计流程图
各阶段的详细描述如下.
a) 初始化阶段: 用户调用
b) 查询阶段: 审计者根据用户的要求, 在一定时间内调用囚徒合约上的查询审计任务函数, 开始一轮审计任务. 囚徒合约会生成3个随机数(
c) 证明阶段: 云存储服务器验证审计者发送的签名无误后, 云存储服务器根据查询生成被查询数据的聚合签名和审计证据. 具体地, 首先, 云存储服务器根据
d) 验证阶段: 审计者先验证云存储服务器的签名
值得注意的是, 在完整性审计流程中所提到的智能合约特指囚徒合约. 该合约基于囚徒困境博弈问题设计, 即签订的双方能够通过合作来获得最大的利益, 但是双方无法达成这种合作, 最后, 各方都只能做出诚实的行为以获取较为高的利益. 然而, 在智能合约的场景下, 囚徒困境中所提到的双方合作能够被达成. 仅需有一方构建一个促成双方合作的合谋合约, 该合谋合约需要满足的条件是双方都必须提交押金, 并且该押金的金额要大于另一方在囚徒困境中因为背叛而损失的金额. 为了实现本文方案的安全性, 我们详细分析了双方在囚徒合约以及合谋合约中的利益关系, 并从中发现破绽, 设计了背叛合约打破双方因为合谋合约所建立的信任关系, 从而迫使双方诚实审计. 具体分析如第4.2节所示.
在本节中, 我们分析上述完整性审计流程中审计者和云存储服务器的利益关系, 并得出双方的博弈树, 进而设计博弈合约. 博弈合约主要由囚徒合约、合谋合约以及背叛合约组成. 其中, 囚徒合约为审计者和云存储服务器主要执行的合约; 而合谋合约和背叛合约并不会被理性的双方执行, 它们是为了确保双方会诚实地执行囚徒合约而设计. 接下来, 我们会详细介绍每个合约对应的博弈树, 以凸现它们的作用. 博弈树会牵涉到审计者和云存储服务器提交的押金以及用户支付的薪酬等金额, 为方便理解, 我们先进行统一定义, 如下所示.
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
●
同时, 上述变量之间还存在以下关系.
●
●
●
●
●
囚徒合约由用户部署, 审计者和云存储服务器双方签署进行调用. 审计者和云存储服务器之间的关系在囚徒合约中形成了囚徒困境. 双方都被要求在合约上提交押金, 当任何一方出现恶意行为时, 其押金会被支付给诚实的另一方. 通过这样的奖惩机制, 可以迫使理性的参与者诚实地执行审计. 囚徒合约的描述如下.
● 囚徒合约由用户部署, 用户需要设置每次审计的数据块数
● 囚徒合约由审计者和云存储服务器签署, 双方都需要分别提交押金
● 审计者需要在
● 云存储服务器需要在
● 如果审计者在
● 如果审计者没有在
囚徒合约要求双方提交公钥, 是为了避免任何一方发起的恶意干预审计流程行为. 当审计者故意发送错误的查询或云存储服务器故意发送错误的查询数据聚合标签后, 诚实的一方可以使用对方发送的签名作为证据上诉囚徒合约, 以惩戒对方. 囚徒合约最终的判断审计结果方法简单地设置为对比双方的审计证据, 这是由于此时双方处于囚徒困境里面, 它们做出的最好的行动就是诚实地执行审计流程. 对于双方具体的行为和利益分析如
囚徒合约博弈树示意图
在
接下来, 我们将证明在该博弈中, 双方最终都会诚实地执行完整性审计流程, 并发送正确审计证据
从审计者即
上述分析了审计者和云存储服务器在囚徒合约上最大收益的行动. 然而, 我们仔细观察
● 合谋合约由云存储服务器部署, 其需要在合谋合约上提交贿赂金
● 合谋合约由云存储服务器和审计者共同签署, 双方都需提交相同金额的押金
● 审计者和云存储服务器应该在
● 合谋合约在
● 若双方都返回了其他结果的审计证据, 那么合谋合约将
合谋合约的签署发生在云存储服务器回应审计者和囚徒合约之前, 这是因为合谋达成后, 云存储服务器可以删除用户的数据, 将得到的存储空间转租给其他用户, 以获得额外的收获
合谋合约博弈树示意图
在博弈2中, 仍然存在两个参与者
接下来, 我们将证明在该博弈中, 双方最终能到达利益最大的终端节点为
首先, 从审计者的角度来思考, 其会做出的最佳行动. 由于合谋能达到囚徒困境中最大的利益点, 所以审计者会选择参与合谋, 即在非终端节点
博弈2的出现打破了博弈1原本要实现的囚徒困境, 双方由于能获取更高的利益而发起恶意合谋行为. 因此, 我们可以从双方的最终能获取的利益出发, 设计方法打破它们之间的合谋. 具体地, 给审计者提供一种方式, 使其背叛云存储服务器可以获得更高的利益, 即背叛合约. 背叛合约允许审计者汇报云存储服务器发起的合谋, 然后根据云存储服务器提交的审计证据来判断合谋是否存在, 存在则用户会支付审计者额外奖励. 值得注意的是: 背叛合约是审计者和用户私下签署的, 因此云存储服务器无法得知审计者是否做出了背叛的行为, 审计者可以继续提交虚假的审计证据
● 背叛合约由审计者部署, 审计者和用户共同签署.
● 审计者需要在背叛合约上提交押金
● 用户提交用于支付给审计者的奖励
● 背叛合约需要审计者和用户在
● 背叛合约在
背叛合约充分利用审计者是理性的性质, 对云存储服务器产生威慑, 打破了审计者和云存储服务器由于合谋合约建立起来的信任. 云存储服务器害怕损失囚徒合约的押金, 而不敢部署合谋合约, 没有合谋合约的存在, 背叛合约也不会被审计者部署, 所以只会剩下囚徒合约被部署和签署. 至此, 在背叛合约的作用下, 审计者和云存储服务器无法打破囚徒困境, 最终双方只能回到博弈1的关系, 诚实地执行完整性审计, 以谋取最大利益.
背叛合约博弈树示意图
在博弈3中, 拥有两个参与者, 即审计者和云存储服务, 参与者集合为
接下来, 我们将证明在博弈3中, 双方最终会到达终端节点
● 审计者对应采取的策略为
● 云存储服务器对应采取的策略为
首先, 从审计者的视角来考虑其在博弈3中的行动. 如
从总体上来看, 在审计者和云存储服务器都是理性的情况下, 3个合约的相互制衡关系使得最终只有囚徒合约会被部署和签署. 因此, 博弈合约的设计保证了囚徒合约运行的安全性, 防止了审计者和云存储服务器的合谋攻击, 使双方一直处于囚徒困境下, 而囚徒合约本身就能抵御审计者的延迟审计攻击和恶意不审计行为, 即博弈合约确保了本文方案的安全性.
除此之外, 本文提出的方案对于参与审计流程的三方来说都具备接受和使用的动机.
● 首先, 对于用户来说, 其目的是保护存储在云存储服务器上的数据, 所以其通过雇佣审计者进行完整性审计以保护数据的安全. 然而, 审计者与云存储服务器会产生恶意的行为侵犯其利益, 因此, 用户更愿意选择具有更高计算开销但更为安全的审计方案. 而本文方案既能为原有高效审计方案提供额外的安全性能, 又能为用户节省大量的运行开销, 所以用户具有较强的动机选择使用本文方案.
● 其次, 对于审计者来说, 本文方案并没有为其增加额外的计算开销, 并且审计者还有可能会获得额外的经济收益. 具体来说, 审计者可以通过举报恶意的云存储服务器从而获得额外的收益. 因此, 理性的审计者也会愿意使用本文方案.
● 最后, 对于云存储服务器来说, 本文方案没有引入较为复杂的密码学工具, 因此其不需要在本地提供或部署特殊的环境; 同时, 本文方案的执行效率高, 能够进一步节省云存储服务器协助审计流程所需的花费. 因此, 理性的云存储服务器也会选择使用本文的方案.
在本节中, 我们将介绍本文提出的方案如何实现设计目标中定义的安全性. 分别从公平性与抵御威胁两个方面分析.
在方案的完整性审计部分, 审计者和云存储服务器的公平性威胁是它们可能收到对方故意设置的错误信息, 而导致它们无法正常地完成审计流程被扣除押金. 为此, 囚徒合约上专门设置了上诉函数解决这个威胁, 当任何一方因为对方发送了错误的信息而导致审计失败时, 其可以调用囚徒合约的上诉函数, 提交对方发送的信息以及签名. 囚徒合约会审核上诉方提交的签名, 确认是对方生成的后, 雇佣TTP按照上诉信息重新执行一遍完整性审计流程, 根据执行结果进行惩罚. 上诉函数的设置, 使得理性的审计者和云存储服务器不会恶意地干预对方执行审计流程. 至此, 方案完整性审计部分的公平性已经被实现.
在方案的博弈合约部分, 双方的公平威胁来源于提交审计证据时可能会被对方发现, 从而对方根据博弈分析寻找自己收益最大的行动. 然而, 本方案中双方提交的信息先经过加密, 然后再经由囚徒合约解密. 因此, 任何一方都无法获取对方发出的审计证据. 即使自己的选择被对方知道, 对方也没有能力发起恶意攻击侵犯自己的利益. 由每一个智能合约的博弈分析可得: 对于理性的审计者和云存储服务器, 它们只能做出固定的行动以获取最大利益. 综上所示, 此方案博弈合约部分的公平性也被实现.
综上, 本文提出的基于博弈合约的安全高效工业互联网外包数据公开审计方案的公平性可以得到保障.
审计者威胁模型主要是指审计者可能会发起偷懒执行审计攻击、延迟审计攻击以及合谋攻击. 本文的方案可以抵御以上各种威胁, 分析如下.
● 对于审计者发起的偷懒执行审计攻击, 囚徒合约可以避免. 在囚徒合约的作用下, 审计者和云存储服务器的关系变为竞争者, 因此, 审计者如果偷懒不执行审计, 而云存储服务器执行了审计, 那么审计者就会被惩罚失去押金. 由此可见, 理性的审计者为了自己的利益, 不会偷懒而是诚实地执行审计.
● 对于审计者发起的延迟审计攻击, 囚徒合约能够避免. 囚徒合约要求审计者在一定的时间内调用查询审计任务函数, 即审计者必须在一定的时间内进行审计, 不然, 审计者的押金也会被扣除. 因此, 理性的审计者不能发起延迟审计攻击.
● 对于审计者受到贿赂而参与的合谋攻击, 方案提出的3个博弈合约能够避免. 根据博弈合约的设计, 审计者和云存储服务器除了诚实地执行囚徒合约以外, 没有其他获取最大利益方法. 因此, 理性的审计者不会与云存储服务器发起合谋攻击.
云存储服务器威胁模型主要是指云存储服务器可能会发起偷懒执行审计攻击和恶意合谋攻击. 本文的方案可以抵御云存储服务器威胁, 分析如下.
● 对于云存储服务器发起的偷懒执行审计攻击, 本方案的抵御方法和抵御审计者的偷懒执行审计攻击一样. 由于云存储服务器和审计者在囚徒合约里是竞争者关系, 理性的云存储服务器为了自己的利益, 只能放弃偷懒诚实地执行审计.
● 对于云存储服务器发起的恶意合谋攻击, 本方案博弈合约部分可以抵御. 云存储服务器可以通过部署合谋合约来达成它和审计者合作的信任, 然而审计者可以在接收合谋后部署背叛合约获得更高的利益. 理性的云存储服务器知道背叛合约的存在后, 为了防止自己损失囚徒合约的押金, 它并不会发起合谋. 双方没有合谋合约建立的信任, 无法进行合谋. 最后, 双方能够诚实地执行囚徒合约以谋求最大的利益.
综上所述, 本文提出的基于博弈合约的安全高效工业互联网外包数据公开审计方案能够抵御上述定义的恶意威胁.
本节进行方案的性能测试与分析: 首先, 我们对方案博弈合约部分的合约运行效率进行测试, 以便体现我们方案的适应性; 接下来, 我们会将方案与其他抗参与者恶意行为的方案进行对比, 以证明本文方案在对原有审计方案运行效率产生可忽略不计影响的前提下, 为其提供额外的安全性.
Gas是智能合约运行所消耗的燃料, 因此, 其花费也作为智能合约运行效率的评判值. 我们首先使用Truffle Suite旗下的Ganache环境在本地搭建私有区块链[
方案智能合约运行开销表格
合谋名称 | 函数名称 | Gas花费(ether) | |
囚徒合约 | 部署合约 | 2 410 598 | 0.270 0 |
Init | 70 044 | 0.007 8 | |
Register | 52 116 | 0.005 8 | |
Task | 91 169 | 0.010 2 | |
Deliver | 62 686 | 0.007 0 | |
Pay | 38 203 | 0.004 3 | |
Check | 39 385 | 0.004 4 | |
Response | 58 632 | 0.006 6 | |
合谋合约 | 部署合约 | 1 330 689 | 0.149 0 |
Init | 51 649 | 0.005 8 | |
Join | 55 496 | 0.006 2 | |
Compare | 83 791 | 0.009 4 | |
背叛合约 | 部署合约 | 804 788 | 0.090 1 |
Init | 50 909 | 0.005 7 | |
Arouse | 55 518 | 0.006 2 | |
Conduct | 45 866 | 0.005 1 |
其中, 需要首先说明的是智能合约中每个函数的功能. 在囚徒合约中,
综上所示, 审计者和存储服务器每次审计调用的函数应该是囚徒服务器中的Register, Task, Deliver和Pay函数, 而Init函数用户一般只调用一次存储足够的资金, 其他函数在审计者和存储服务器是理性的情况下将不会被调用. 因此, 我们的方案一轮审计下来的消耗总Gas为244 174, 总Gas花费为0.027 3 ether. 本方案的智能合约Gas花费较少, 具有较高的实用性. 然而, 由于以太币的货币属性, 其价格极其不稳定. 例如2021年11月以来, 其单价已经突破2万人民币. 因此, 部署与执行合约的经济开销(Gas花费⋅以太币价格)也会随之增加. 为了解决这个问题, 可以将本方案在联盟链或私有链上实施.
智能合约代码应该具备高适应性, 即对矿工运行配置的要求低. 接下来, 我们对方案中智能合约函数的运行时间进行测试, 以进一步凸显本方案智能合约的高适应性.
智能合约时间开销示意图
方案对比示意图
需要注意的是, 本方案所使用的公开完整性审计方案可以被其他公开审计方案可替换. 方案的博弈合约部分通过将原有完整性审计方案的验证过程部署在博弈合约上, 以为其提供抵御参与者恶意行为的安全性.因此, 在此处, 我们主要对比了各方案的审计效率. 而其余阶段, 本文未对其进行额外的设计, 所以在此不作对比测试. 在
总体来说, DPOS方案以及CPVPA方案放弃了一定的效率性以提供了更高的安全性, 它们的效率都比PDP要低. 现有的依赖复杂密码工具实现抵御参与者恶意行为的完整性审计方案都有这个特性. 然而, 本文的方案使用了另一种解决思路, 利用基于博弈论的智能合约迫使参与者诚实地执行审计任务. 并且, 实验数据表明, 利用本文方案的完整性审计方案能够在保持原有效率的情况下增加额外的安全性.
在本文中, 我们提出了一个基于博弈合约的安全高效工业互联网外包数据公开审计方案. 该方案为满足一定条件的公开审计方案增加抵御延迟审计攻击和合谋攻击的能力. 方案利用博弈论分析在公开审计过程中审计者和云存储服务器的利益关系, 从而进一步设计能够使它们诚实地执行审计的3个智能合约. 特别地, 方案中使用的公开审计方案可以被其他公开审计方案替换, 能够抵御攻击的原理是精心设计的博弈合约, 其使审计者和云存储服务器位于囚徒困境中, 双方只能通过诚实执行审计才可以获得最大利益. 同时, 本文还通过一系列的测试表明, 所提出的方案具有高效性和可拓展性, 能够高效、安全地实现工业互联网数据公开审计.
Yu XH, Liu M, Jiang XH, Yin YP, Yang X, Liu DF, Zhang HS, Liu XM, Chi C. Industrial Internet architecture 2.0. Computer Integrated Manufacturing System, 2019, 25(12): 2983−2996 (in Chinese with English abstract).
余晓晖, 刘默, 蒋昕昊, 尹杨鹏, 杨希, 刘棣斐, 张恒升, 刘晓曼, 池程. 工业互联网体系架构2.0. 计算机集成制造系统, 2019, 25(12): 2983−2996.
Cai CW, Qi YD. The empowerment path of Industry Internet to China's manufacturing industry. Contemporary Economy Management, 2021, 43(12): 40−48 (in Chinese with English abstract). [doi: 10.13253/j.cnki.ddjjgl.2021.12.006]
蔡呈伟, 戚聿东. 工业互联网对中国制造业的赋能路径研究. 当代经济管理, 2021, 43(12): 40−48. [doi: 10.13253/j.cnki.ddjjgl.2021.12.006].
Khan WZ, Rehman MH, Zangoti HM, Afzal MK, Armi N, Salah K. Industrial Internet of things: Recent advances, enabling technologies and open challenges. Computers & Electrical Engineering, 2020, 81: 1−13.
Khan A, Din S, Jeon G, Piccialli F. Lucy with agents in the sky: Trustworthiness of cloud storage for Industrial Internet of things. IEEE Trans. on Industrial Informatics, 2021, 17(2): 953−960.
Xian HQ, Liu HY, Zhang SG, Hou RT. Verifiable secure data deduplication method in cloud storage. Ruan Jian Xue Bao/Journal of Software, 2020, 31(2): 455−470 (in Chinese with English abstract).
咸鹤群, 刘红燕, 张曙光, 侯瑞涛. 可验证的云存储安全数据删重方法. 软件学报, 2020, 31(2): 455−470.
Qiu T, Chi JC, Zhou XB, Ning ZL, Atiquzzaman M, Wu DO. Edge computing in Industrial Internet of things: Architecture, advances and challenges. IEEE Communications Surveys & Tutorials, 2020, 22(4): 2462−2488.
Juels A, Kaliski Jr BS. PORs: Proofs of retrievability for large files. In: Proc. of the 14th ACM Conf. on Computer and Communications Security. New York: Association for Computing Machinery, 2007. 584−597.
Ateniese G, Burns R, Curtmola R, Herring J, Kissner L, Peterson Z, Song D. Provable data possession at untrusted stores. In: Proc. of the 14th ACM Conf. on Computer and Communications Security. New York: Association for Computing Machinery, 2007. 598−609.
Yang AJ, Xu J, Weng J, Zhou H, Wong DS. Lightweight and privacy-preserving delegatable proofs of storage with data dynamics in cloud storage. IEEE Trans. on Cloud Computing, 2021, 9(1): 212−225.
Xu J, Yang AJ, Zhou JY, Wong DS. Lightweight delegatable proofs of storage. In: Proc. of the Computer Security (ESORICS 2016). Cham: Springer, 2016. 324−343.
Han S, Liu SL, Chen KF, Gu DW. Proofs of retrievability based on MRD codes. In: Huang X, ed. Proc. of the Information Security Practice and Experience. Cham: Springer, 2014. 340−345.
Ren ZW, Wang LN, Wang Q, Xu MD. Dynamic proofs of retrievability for coded cloud storage systems. IEEE Trans. on Services Computing, 2018, 11(4): 685−698.
Zhou L, Fu AM, Mu Y, Wang HQ, Yu S, Sun YX. Multicopy provable data possession scheme supporting data dynamics for cloud- based electronic medical record system. Information Sciences, 2021, 545: 254−276.
Fu AM, Li YH, Yu S, Yu Y, Zhang GX. DIPOR: An IDA-based dynamic proof of retrievability scheme for cloud storage systems. Journal of Network and Computer Applications, 2018, 104: 97−106.
Wang Q, Wang C, Li J, Ren K, Lou WJ. Enabling public verifiability and data dynamics for storage security in cloud computing. In: Backes M, ed. Proc. of the Computer Security (ESORICS 2009). Berlin: Springer Int'l Publishing, 2009. 355−370.
Wu T, Yang GM, Mu Y, Guo FC, Deng RH. Privacy-preserving proof of storage for the pay-as-you-go business model. IEEE Trans. on Dependable and Secure Computing, 2021, 18(2): 563−575.
He DB, Kumar N, Wang HQ, Wang LN, Coo KKR. Privacy-preserving certificateless provable data possession scheme for big data storage on cloud. Applied Mathematics and Computation, 2017, 314: 31−43.
Chen D, Yuan HB, Hu SS, Wang Q, Wang C. BOSSA: A decentralized system for proofs of data retrievability and replication. IEEE Trans. on Parallel and Distributed Systems, 2020, 32(4): 786−798.
Jiang T, Meng WJ, Yuan Xu, Wang LM, Ge JH, Ma JF. ReliableBox: Secure and verifiable cloud storage with location-aware backup. IEEE Trans. on Parallel and Distributed Systems, 2021, 32(12): 2996−3010.
Shen WT, Yu J, Yang GY, Chen XG, Hao R. Cloud storage integrity checking scheme with private key recovery capability. Ruan Jian Xue Bao/Journal of Software, 2016, 27(6): 1451−1462 (in Chinese with English abstract).
沈文婷, 于佳, 杨光洋, 程相国, 郝蓉. 具有私钥可恢复能力的云存储完整性检测方案. 软件学报, 2016, 27(6): 1451−1462.
He K, Chen J, Yuan Q, Ji SL, He DB, Du RY. Dynamic group-oriented provable data possession in the cloud. IEEE Trans. on Dependable and Secure Computing, 2019, 18(3): 1394−1408.
Xu J. Auditing the Auditor: Secure Delegation of Auditing Operation over Cloud Storage. IACR Cryptology ePrint Archive, 2011: 304, 2011.
Liu XF, Sun WH, Lou WJ, Pei QQ, Zhang YQ. One-tag checker: Message-locked integrity auditing on encrypted cloud deduplication storage. In: Proc. of the IEEE 2017 Conf. on Computer Communications. 2017. 1−9.
Fan YK, Lin XD, Tan G, Zhang YQ, Dong W, Lei J. One secure data integrity verification scheme for cloud storage. Future Generation Computer Systems, 2019, 96: 376−385.
Zhang Y, Xu CX, Yu S, Li HW, Zhang XJ. SCLPV: Secure certificateless public verification for cloud-based cyber-physical-social systems against malicious auditors. IEEE Trans. on Computational Social Systems, 2015, 2(4): 159−170.
Dong CY, Wang YL, Aldweesh A, McCorry P, Moorsel AV. Betrayal, distrust, and rationality: Smart counter-collusion contracts for verifiable cloud computing. In: Proc. of the ACM SIGSAC Conf. on Computer and Communications Security, Vol. 17. New York: Association for Computing Machinery, 2017. 211−227.
Wang C, Chow SSM, Wang Q, Ren K, Lou WJ. Privacy-preserving public auditing for secure cloud storage. IEEE Trans. on Computers, 2011, 62(2): 362−375.
Armknecht F, Bohli JM, Karame GO, Liu ZR, Reuter CA. Outsourced proofs of retrievability. In: Proc. of the ACM SIGSAC Conf. on Computer and Communications Security. New York: Association for Computing Machinery, 2014. 831−843.
Armknecht F, Bohli JM, Karame GO, Li WT. Outsourcing proofs of retrievability. IEEE Trans. on Cloud Computing, 2021, 9(1): 876−888.
Zhang Y, Xu CX, Lin XD, Shen XM. Blockchain-based public integrity verification for cloud storage against procrastinating auditors. IEEE Trans. on Cloud Computing, 2021, 9(3): 923−937.
Szabo N. Formalizing and securing relationships on public networks. First Monday, 1997, 2(9). [doi: 10.5210/fm.v2i9.548]
Nakamoto S. Bitcoin: A peer-to-peer electronic cash system. 2018.
Vitalik B. Ethereum White Paper. 2013.
Introduction to Binance Chain.
Wohrer M, Zdun U. Smart contracts: Security patterns in the ethereum ecosystem and solidity. In: Proc. of the Int'l Workshop on Blockchain Oriented Software Engineering (IWBOSE). 2018. 2−8.
Anilkumar V, Joji JA, Afzal A, Sheik RS. Blockchain simulation and development platforms: Survey, issues and challenges. In: Proc. of the Int'l Conf. on Intelligent Computing and Control Systems. 2019. 935−939.