CN116827821B - 基于区块链云应用程序性能监控方法 - Google Patents
基于区块链云应用程序性能监控方法 Download PDFInfo
- Publication number
- CN116827821B CN116827821B CN202310801908.1A CN202310801908A CN116827821B CN 116827821 B CN116827821 B CN 116827821B CN 202310801908 A CN202310801908 A CN 202310801908A CN 116827821 B CN116827821 B CN 116827821B
- Authority
- CN
- China
- Prior art keywords
- data
- result
- blockchain
- service
- performance
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000012544 monitoring process Methods 0.000 title claims abstract description 68
- 238000000034 method Methods 0.000 title claims abstract description 34
- 230000002776 aggregation Effects 0.000 claims abstract description 59
- 238000004220 aggregation Methods 0.000 claims abstract description 59
- 238000004458 analytical method Methods 0.000 claims abstract description 12
- 238000012795 verification Methods 0.000 claims description 22
- 230000008569 process Effects 0.000 claims description 14
- 238000005516 engineering process Methods 0.000 claims description 9
- 238000013461 design Methods 0.000 claims description 8
- 238000004364 calculation method Methods 0.000 claims description 6
- 230000007246 mechanism Effects 0.000 claims description 6
- 239000000284 extract Substances 0.000 claims description 4
- 230000001960 triggered effect Effects 0.000 claims description 3
- 230000004931 aggregating effect Effects 0.000 claims 1
- 238000012806 monitoring device Methods 0.000 claims 1
- 238000012545 processing Methods 0.000 claims 1
- 230000007774 longterm Effects 0.000 abstract description 3
- 238000002474 experimental method Methods 0.000 description 7
- 239000008186 active pharmaceutical agent Substances 0.000 description 4
- 238000013459 approach Methods 0.000 description 4
- 238000012550 audit Methods 0.000 description 4
- 238000004891 communication Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 238000010200 validation analysis Methods 0.000 description 3
- 238000001514 detection method Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 238000013496 data integrity verification Methods 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 230000001419 dependent effect Effects 0.000 description 1
- 230000009977 dual effect Effects 0.000 description 1
- 230000014509 gene expression Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000002085 persistent effect Effects 0.000 description 1
- 238000013468 resource allocation Methods 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 238000012216 screening Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/083—Network architectures or network communication protocols for network security for authentication of entities using passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/12—Applying verification of the received information
- H04L63/123—Applying verification of the received information received data contents, e.g. message integrity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1097—Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/008—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/50—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols using hash chains, e.g. blockchains or hash trees
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Environmental & Geological Engineering (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开了基于区块链云应用程序性能监控模型及方法,基于区块链云应用程序性能监控模型,包括用户、微服务、资源层、区块和分析师;用户连接微服务,微服务分别连接资源层和区块,区块连接分析师,微服务包括监控服务、微服务1、微服务2、微服务3和API接口,所述API接口分别连接微服务1、微服务2和微服务3;本发明保障了数据的安全性和长期存储的需求,并且具有可验证性,实现了对多个微服务性能的安全聚合分析,同时引入了一种自定义的数据格式使该方案具有可扩展性,通过实验对比选取了一组合适的安全参数集合,并用该参数集合计算了具体的微服务性能监控数据各阶段所需要的时间开销。
Description
技术领域
本发明涉及云服务水平协议领域,特别是基于区块链云应用程序性能监控模型及方法。
背景技术
现有的工作主要关注云服务水平协议(SLA)审查。中心化的SLA审查架构,难以解决监控信任问题以及数据安全问题等。Shengli Zhou,Lifa Wu,and Canghong Jin.2017.Aprivacy-based SLA violation detection model for the security ofcloudcomputing.China Communications.155–165.利用第三方审计员来监控微服务并提出一种基于马尔可夫决策过程理论的模型,可以通过监控事件防止隐私泄露,但此方案需要云服务提供商的合作,对云服务商的依赖性较强。Chunyi Zhou,Anmin Fu,Shui Yu,Wei Yang,HuaqunWang,andYuqing Zhang.2020.Privacy-Preserving Federated Learning in FogComputing.IEEE Internet ofThings Journal 7,11(2020).10782–10793.采用Paillier同态加密,提出的框架实现了数据的隐私保护,但在用户掉线时会产生错误的聚合结果,同时存在结果无法验证的问题,当云服务器篡改数据对数据需求者进行欺骗时,此方案无法预防并检测。而区块链技术因为其去中心化、安全性、不可篡改性、可追溯性等特点被视为解决云计算问题的一种较好的解决方案。Amir Wonjiga,Sean Peisert,Louis Rilling,and Christine Morin.2019.Blockchain as a Trusted Component in CloudSLAVerification.93–100.提出的方案用区块链作为分布式账,保证了存储数据完整性,但缺乏对于隐私的保护。采用智能合约自动执行云服务水平协议,但主要的关注点在于将客户和云服务提供商提供的性能数据进行对比,不能对多种微服务进行可靠的聚合分析。目前,区块链技术尚未应用到云应用程序的性能监控当中,当前的性能监控技术和性能数据的存储仍然面临监控信任问题、安全问题、隐私问题等。
现有技术一
Amir Wonjiga,Sean Peisert,Louis Rilling,and ChristineMorin.2019.Blockchain as a Trusted Component in Cloud SLAVerification.93–100.提出的方案用区块链作为分布式账本,可以用于云应用程序性能监控,保证存储性能数据完整性。
在云中,根据服务模型,租户和云服务提供商(CSP)拥有***的不同部分。例如,在存储即服务云中,提供者拥有物理基础设施和虚拟化层,而租户则拥有存储在基础设施中的数据。当迁移到云上时,租户就失去了对物理基础设施的完全控制。CSP负责管理基础设施,监控从资源分配和性能到安全的各个方面。这在csp和租户之间产生了信任问题。因此,AmirWonjiga,Sean Peisert,Louis Rilling,and Christine Morin.2019.Blockchain asa Trusted Component in Cloud SLAVerification.93–100.提出的方案用区块链作为分布式账,保证了存储数据的完整性。在他们的工作中,SLA验证过程使用区块链以减少租户和提供者之间的依赖关系,并允许双方进行独立验证。
图1对该技术方案进行了描述。使用这种方法,租户可以检查存储在云中的数据的完整性,提供者可以不依赖对方而检查SLO违规索赔的正确性。此方法保证了将签名者与数据完整性的同一项证据联系起来。使用区块链来删除受信任的第三方,这个安全的分类帐用于存储一块证据,以证明外包数据的正确性。供应商和租户组成了区块链网络。使用这种技术有两个优点。首先,它为现有的完整性监控技术增加了信任、透明度和安全性,第二个用户直接参与了保护其外包信息***的过程。给定一个保证用户数据完整性的SLA,有两个主要过程,即设置和验证阶段。图1描述了具体的流程,图中的后缀“p”表示提供者所执行的任务。
在将文件上载到云之前,将执行安装阶段。在此阶段中,租户将为验证阶段稍后使用的数据准备标记。标签是包含数据哈希值的证明。租户将使用这些标记来执行验证,而不需要信任包括提供方在内的任何各方。在此过程之后,租户会将数据及其哈希值发送给提供程序。服务提供商会使用该哈希值来检查初始数据上传的正确性。成功上传数据后,租户和提供商都会将数据的哈希值发布到分类帐中。
阶段是数据被正确上传并在分类帐中公布哈希值之后的过程。租户向提供者发出请求,以进行完整性检查,并收到根据当前存储数据状态计算的哈希值。使用前一阶段生成的标签,租户可以确认存储数据的正确性。如果数据不正确,租户可以使用存储在分类账中的证明,声称违反了SLO,并按照SLA的规定进行下一步程序。
现有技术一的缺点
现有技术一是在基于一种安全通信的假设下提出的,在没有这种安全通信***的情况下,中间人攻击可能会影响验证过程,并在租户和供应商之间造成冲突。该方案假设租户会对生成的证明的一部分保密。如果租户丢失了这些值,则将无法继续执行验证任务。因此,该方案未能提供一种高度可用性、安全的和私有的数据存储机制。同时,未能实现对多个微服务的数据进行聚合分析。
现有技术二
Ke Xiao,Ziye Geng,Yunhua He,Gang Xu,Chao Wang,and Wei Cheng.2020.ABlockchain Based Privacy-Preserving Cloud Service Level Agreement AuditingScheme.In Proceedings of Wireless Algorithms,Systems,and Applications:15thInternational Conference.(WASA 2020).Springer,542–554.提出了一个基于区块链的云SLA违规监控和审计模型。在该模型中,采用双重监控方法,通过比较客户和服务提供商收集的服务参数,来确保数据的真实性。所有监控数据将记录在区块链上,以确保数据不会被篡改。
该方案基于区块链实现,提出了SLA审计智能合约,旨在记录客户与服务提供商协商后的服务质量要求。该智能合约还可以自动执行审计任务,如比较监控参数和分配补偿等。另外,由于区块链上记录的数据是公开和透明的,因此采用TORE算法对监控数据进行加密,确保涉及数据的查询和比较操作能够在密文空间中有效地进行,保护客户的隐私和数据安全。最后,设计了一些惩罚策略来惩罚违规方,以减少违规行为。该方案设计框架图如图2。
首先,客户和云服务提供商进行协商,确定服务水平标准,根据协商结果生成云服务水平协议及审计智能合约。云服务提供商根据协议提供服务,并对服务过程进行监控,客户得到服务的同时也对云服务进行监控。一段时间后,双方将各自监控的数据,根据活板门顺序显示加密算法(TORE)进行加密,并将密文上传至区块链。智能合约将提取密文进行审计,比较双方上传的密文,如果双方的监测数据相等,则证明记录了真实的监测数据。然后,区块链中证人将实际监控数据与服务参数的标准值进行比较,以确定服务是否符合SLA标准。在此过程中,智能合同将判断过错方,并实施一些惩罚。
现有技术二的缺点
现有技术二采用智能合约自动执行云服务水平协议,但主要的关注点在于将客户和云服务提供商提供的性能数据在密文空间进行对比,并不考虑微服务之间的相互影响,不能对多种微服务的监控性能进行可靠的聚合分析。
本发明引入区块链技术,将数据的散列值和密文的聚合结果存储到区块链,保障了数据的安全性和长期存储的需求,并且具有可验证性。
采用基于CKKS的安全聚合方案,利用智能合约对密文数据进行安全聚合,保证了聚合结果的可靠性,实现了对多个微服务性能的安全聚合分析,同时引入了一种自定义的数据格式使该方案具有可扩展性。
基于我们提出的方案在区块链***上进行实验,结果证明***具有较小的开销。我们设置了不同的安全参数集合,通过实验对比选取了一组合适的安全参数集合,并用该参数集合计算了具体的微服务性能监控数据各阶段所需要的时间开销。
发明内容
为解决现有技术中存在的问题,本发明提供了基于区块链云应用程序性能监控模型及方法。
具体技术方案如下
基于区块链云应用程序性能监控模型,包括用户、微服务、资源层、区块和分析师;
用户连接微服务,微服务分别连接资源层和区块,区块连接分析师,微服务包括监控服务、微服务1、微服务2、微服务3和API接口,所述API接口分别连接微服务1、微服务2和微服务3。
优选地,基于区块链的云应用程序性能监控方法,包括以下步骤:
步骤S1:建立基于区块链的云应用程序性能监控模型;
步骤S2:根据监控模型,建立云应用程序性能数据的可验证安全聚合方法;
步骤S3:监控模型采用同态加密算法对数据加密并进行线性同态散列运算,保证了数据的安全性和完整性。
优选地,步骤S1包括以下子步骤:
子步骤S11:基于微服务的云应用程序会产生大量数据,用户通过API接口访问各种微服务,在资源层找到实例并返回给用户;
子步骤S12:监控服务将监控整个过程,并收集性能数据;
子步骤S13:设置了名为PerfData的自定义的数据类型,保存数据;
子步骤S14:影响性能的关键数据将会被记录,这些数据会被加密上传至云服务器,数据的散列值也将被存储至区块链,并用于记录和验证;
子步骤S15:智能合约被触发会对云服务器的密文数据进行提取,从而进行安全聚合的操作;
子步骤S16:将大量的密文数据的聚合结果存储至区块链,以此保证数据的安全性和完整性。
优选地,步骤S2包括以下子步骤:
子步骤S21:为了保证性能数据的完整性和安全性,采用了基于可验证聚合方案的数据保护机制;
子步骤S22:采用了智能合约技术设计了VSA智能合约,该智能合约对密文进行安全聚合并进行解密与验证,以此实现对微服务的性能监控数据的可信计算和隐私保护。
优选地,步骤S3包括以下子步骤:
子步骤S31:利用实验数据计算智能合约的开销;
子步骤S32:利用实验数据计算加密和聚合的开销;
子步骤S33:根据实验对比选取了一组合适的安全参数集合,并用该参数集合计算了具体的微服务性能监控数据各阶段所需要的时间开销。
本发明基于区块链云应用程序性能监控模型及方法的有益效果如下:
1.本发明引入区块链技术,将数据的散列值和密文的聚合结果存储到区块链,保障了数据的安全性和长期存储的需求,并且具有可验证性。
2.本发明采用基于CKKS的安全聚合方案,利用智能合约对密文数据进行安全聚合,保证了聚合结果的可靠性,实现了对多个微服务性能的安全聚合分析,同时引入了一种自定义的数据格式使该方案具有可扩展性。
3.本发明提出的方案在区块链***上进行实验,结果证明***具有较小的开销。我们设置了不同的安全参数集合,通过实验对比选取了一组合适的安全参数集合,并用该参数集合计算了具体的微服务性能监控数据各阶段所需要的时间开销。
附图说明
图1为本发明的云服务水平协议的数据完整性验证流程图。
图2为本发明的基于区块链的云SLA违规监控和审计模型图。
图3为本发明的云应用程序性能监控的***架构图。
图4为本发明的基于安全聚合方案的主要流程图。
图5为本发明的VSA智能合约的主要gas消耗图。
图6为本发明的不同参数集和性能数据大小对加密时间的影响图。
图7为本发明的性能属性不同阶段的时间开销图。
具体实施方式
下面对本发明的具体实施方式进行描述,以便于本技术领域的技术人员理解本发明,但应该清楚,本发明不限于具体实施方式的范围,对本技术领域的普通技术人员来讲,只要各种变化在所附的权利要求限定和确定的本发明的精神和范围内,这些变化是显而易见的,一切利用本发明构思的发明创造均在保护之列。
基于区块链的云应用程序性能监控模型
基于区块链云应用程序性能监控模型。图1说明了用于云应用程序性能监控的整体区块链***架构。
基于微服务的云应用程序会产生大量数据,用户通过API接口访问各种微服务,然后在资源层找到实例并返回给用户。
其中有一种特殊的微服务被称为监控服务,它将监控整个过程,并收集我们所关心的性能数据。大量的微服务和云固有的特性,会产生海量的数据,这对云应用程序的性能监控带来困难,我们的***针对大量微服务产生的性能监控数据设置了一个名为PerfData的自定义的数据类型。
影响性能的关键数据将会被记录,这些数据首先会被加密上传至云服务器,数据的散列值也将被存储至区块链,并用于记录和验证。
智能合约被触发会对云服务器的密文数据进行提取,从而进行安全聚合的操作。
最后,将大量的密文数据的聚合结果存储至区块链,以此保证数据的安全性和完整性。
1)基于智能合约的性能数据监控
我们的模型是基于区块链设计的,区块链中的一致性算法和共识机制保证了性能监控的安全性和完整性。关键的数据和交易可以记录到区块链中进行永久的存储,防止被篡改。智能合约是部署在区块链上的一段代码,为区块链提供了一种内置的图灵完备的编程语言,使得区块链具有了真正的可编程性。
在***中,加密的数据会被智能合约提取并自动执行聚合操作,完成之后聚合结果会存储到区块链中,此过程利用智能合约自动执行避免了对第三方人员的过度依赖,提高了性能监控的可信度。当数据分析师想要提取监控数据时,智能合约将存储在区块链上的聚合的结果和数据的散列值进行提取,执行解密操作和验证操作,从而将结果反馈给需求者。
2)威胁模型
我们所提的方案是一个考虑了两种攻击情况的半诚实的模型。其中,提供性能数据的服务或数据拥有者是诚实的,而云服务器是不安全或不可信的。该模型考虑了以下攻击情况:①数据被存储在资源层时,云服务器因为不够安全,容易受到恶意攻击者的攻击,导致信息泄露或数据被更改;②存储的数据被聚合之后,云服务器的管理员出于好奇心理或恶意目的将数据聚合的结果篡改,最终将错误的结果或伪造的结果交给性能数据分析师。
云应用程序性能数据的可验证安全聚合方案
基于可验证的安全聚合的云性能监控方案,并介绍该方案中的智能合约,简记为VSA智能合约。该智能合约基于CKKS安全聚合,实现了对性能监控中关键数据的安全性保障,将聚合结果上传至区块链永久存储,并在性能分析时可以解密并进行验证。
在***设计中,引入一个自定义的格式化的性能监控数据PerfData,微服务中的监控服务将会提取性能分析师所关心的性能数据,将这些数据包含在PerfData的明文空间中。假设所关心的性能数据共有k个属性,那么PerfData的明文空间可以表示为[Q1],[Q2],...,[Qt],...,[Qk],其中t∈[0,k]。而对于任意一个明文空间[Qk],每种属性的元素数量可以用n来表示,这样针对每个属性可以存储多个数据,即Qt_x1,Qt_x2,...,Qt_xi,...,Qt_xn,其中i∈[1,n]。此方案满足了对多个性能数据进行监控的需求,同时对于每个属性的空间大小,也可以根据数量需要进行调整,具有可扩展性。本文中的一些常见表示和符号说明见表格1。
表1:一些表示和符号的含义
1)可验证安全聚合方案流程
为了保证性能数据的完整性和安全性,采用了基于可验证聚合方案的数据保护机制。
云应用程序的微服务中存在一个特殊的服务称作监控服务,该服务将收集的性能数据进行加密处理和哈希操作。
密文结果将被传输至云服务器进行存储,哈希值则由区块链进行保存。
由VSA智能合约提取加密数据进行聚合,并将聚合数据存储到区块链上。
最后,智能分析师对利用智能合约对聚合的密文进行解密和验证,得到多个微服务的聚合结果,实现了对多个微服务的安全聚合分析,同时保证了云应用程序性能数据的安全性和可靠性。整体的设计流程见图2。该流程主要包括四个步骤:初始设置、数据加密、密文聚合、解密分析和验证。
初始设置:首先需要为***输入一个安全参数λ,设置相应的安全参数集合,然后VSA智能合约将会为云服务器和数据分析师分配各自的公私密钥对,即云服务器的密钥对(pc,sc)和数据分析师的密钥对(pa,sa)。密钥对将用于数据的加密、聚合、解密和验证。
数据加密:.对于每个被监控的性能属性Qt,都有n个数据,Qt_x1,Qt_x2,...,Qt_xi,...,Qt_xn,其中i∈[1,n]。为每一个数据xi选择一个d维随机向量ri。然后,使用性能数据分析师的公钥pa对每个ri进行CKKS同态加密,生成的结果记作Qt_Ci_right,并使用云服务器的公钥pc对每个(ri+xi)进行CKKS同态加密,生成的结果记作Qt_Ci_left,二者组合的结果记作Qt_Ci。
生成密文的结果Qt_Ci将发送到云服务器进行存储。
最后,计算每个xi的散列值Qt_Hxi,并将散列结果存储至区块链。
密文聚合:VSA智能合约将密文数据进行提取,进行加法同态聚合数据,云服务器利用自己的私钥对C_left进行解密,并将结果用数据分析师的公钥加密,得到Ca。智能合约将Ca与C_right的加法同态结果记为C,并将其存储至区块链。
解密和分析验证:数据分析师在分析性能数据时,由VSA智能合约利用数据分析师的私钥将区块链上的聚合密文C进行解密得到数据的和。通过对比所得结果的哈希值和原来的数据的哈希乘积,来验证所得结果的正确性。
2)安全聚合和验证合约设计
我们采用了智能合约技术设计了VSA智能合约。该智能合约对密文进行安全聚合并进行解密与验证,以此实现对微服务的性能监控数据的可信计算和隐私保护。此节将分别介绍安全聚合以及解密与验证的算法。
在密文聚合时,智能合约首先需要获取到存储至云服务器的密文Qt_Ci,利用加法同态计算并记作Qt_C_right,计算/>并记作Qt_C_left。利用云服务器的私钥对Qt_C_left解密可得到/>然后利用数据分析师的公钥进行加密,将得到的结果记作Qt_Ca,并将Qt_Ca和Qt_C_right进行同态加法得到Qt_C。Qt_C也将会被存储至区块链。具体步骤如下:
首先需要获取到存储至云服务器的密文Qt_Ci,即(Qt_Ci_left,Qt_Ci_right)。
对于任意一个性能属性Qt,由智能合约根据Qt_Ci_left进行同态加法,计算Qt_C_left;根据Qt_Ci_right进行同态加法,计算Qt_C_right。
利用云服务器的私钥,解密第②步的Qt_C_left,将解密得到的结果利用性能数据分析师的公钥加密得到Qt_Ca。
将第②步得到的Qt_C_right和第③步得到的Qt_Ca进行同态加法,得到的结果记为Qt_C。该值被存储到区块链中永久记录。
重复以上步骤②到④,直至t的值大于k,即所有的性能属性完成密文聚合。
对于解密和验证,首先利用自己性能数据分析师私钥,通过VSA智能合约将Qt_C解密,从而得到每个属性所有数据的和,被记为xsum。为了验证数据是否有损失或者遭受到恶意篡改,VSA智能合约将会对xsum进行散列运算,得到的哈希值记作Qt_Hxsum。同时,智能合约会获取区块链上存储的一系列Qt_Hxi的值,将同一个属性的所有数据的哈希值相乘,并将结果记作Qt_Hxsu。若每个属性的Qt_Hxsum与Qt_Hxsu均是相等的,那么最后验证成功,分析师获得的数据是正确的;否则,数据遭到更改或破坏,返回错误。具体步骤如下:
通过VSA智能合约得到区块链上记录的Qt_Hxi和Qt_C。
对于任意一个性能属性Qt,利用性能数据分析师的私钥解密Qt_C,得到结果记为xsum;计算gj x sum [j]的乘积,满足j∈[1,d],gj∈Group G,乘积的结果记作Qt_Hxsum。
计算Qt_Hxi的乘积,满足i∈[1,n],乘积的结果记作Qt_Hxsu。
对比Qt_Hxsum与Qt_Hxsu的值,如果相等则将解密结果反馈给性能数据分析师;不相等则返回错误,执行步骤⑥。
重复以上步骤②到④,直至t的值大于k,即所有的性能属性完成解密和验证。
解密和验证结束。
该模型采用同态加密算法对数据加密并进行线性同态散列运算,保证了数据的安全性和完整性;采用智能合约技术对密文进行安全聚合,以及对聚合数据进行解密与验证,可对多个微服务的性能进行安全的聚合分析,实现了对微服务的性能监控数据的可信计算和隐私保护。我们进行对比实验选择了合适的安全参数集,其加密所需时间为用时最长的安全参数集的0.28。通过实验,证明了我们所提出的模型的可行性并检测了基于区块链的***的开销。
将我们的方案和其他方案进行了对比,比较的结果见表2。Amir Wonjiga,SeanPeisert,Louis Rilling,and Christine Morin.2019.Blockchain as a TrustedComponent in Cloud SLAVerification.93–100.中提出的方案用区块链作为分布式账保证了存储数据完整性,但缺乏对于隐私的保护。我们引入基于CKKS的同态加密算法来保证隐私安全。Chunyi Zhou,Anmin Fu,Shui Yu,Wei Yang,Huaqun Wang,and YuqingZhang.2020.Privacy-Preserving Federated Learning in Fog Computing.IEEEInternet ofThings Journal 7,11(2020).10782–10793.提出的框架实现了数据的隐私保护,但用户掉线会导致聚合结果出现错误,并且不能验证结果的正确性。Shengli Zhou,Lifa Wu,and Canghong Jin.2017.Aprivacy-based SLA violation detection modelfor the security of cloud computing.China Communications.155–165.引入了第三方审计员,可以通过监控微服务的事件防止隐私泄露。但由于需要云服务提供商的合作,此方案对云服务商的依赖性较强。因此,我们的方案基于区块链***实现,并通过可自动执行的智能合约,解决了信任问题,保证了数据的安全性和可靠性。同时,我们的方案,设计了自定义的数据格式,提供了可伸缩性。最后,基于我们的模型进行了实验,对VSA智能合约以及基于CKKS的安全聚合算法的成本进行了评估。
表2:性能数据监控方案对比
其中,参考文献[1]为AmirWonjiga,Sean Peisert,Louis Rilling,andChristine Morin.2019.Blockchain as a Trusted Component in Cloud SLAVerification.93–100.
参考文件[2]为Chunyi Zhou,Anmin Fu,ShuiYu,Wei Yang,HuaqunWang,andYuqing Zhang.2020.Privacy-Preserving Federated Learning in Fog Computing.IEEEInternet ofThings Journal 7,11(2020).10782–10793.
参考文献[3]为Shengli Zhou,Lifa Wu,and Canghong Jin.2017.Aprivacy-based SLA violation detection model for the security of cloud computing.ChinaCommunications.155–165。
参考文献[4]为Ke Xiao,Ziye Geng,Yunhua He,Gang Xu,Chao Wang,andWeiCheng.2020.A Blockchain Based Privacy-Preserving Cloud Service LevelAgreement Auditing Scheme.In Proceedings of Wireless Algorithms,Systems,andApplications:15th International Conference.(WASA2020).Springer,542–554.
智能合约的开销
根据我们的***设计,我们基于以太坊智能合约进行了实验,并选择Solidity的0.4.25版本作为编程语言。计算机的配置如下:Ubuntu 20.04,64位操作***,Intel Corei7-10510处理器,1.80GHz CPU,8GB内存。区块链环境选择fisco bcos 2.9.0。执行智能合约需要一定的消耗。按照智能合约的规定执行命令,每执行一个命令都会产生一定的消耗,比如电力或其他资源。不同命令产生的消耗也不相同,但这些消耗均以gas作为单位。图3反映了VSA智能合约的主要gas消耗。总体来看,产生的gas消耗是可以接受的,同时未来可以进行优化,将gas消耗进一步减低。
加密和聚合的开销
由于该模型基于CKKS算法,安全参数的选择会影响模型的性能。所以,我们基于TenSEAL库进行实验,计算不同安全参数对加密时间的影响。我们设置了四组安全参数集,如表3所示。对每组参数进行测试,改变性能数据n的大小,计算参数对加密时间的影响,结果如图4所示。根据测试结果,我们选择加密时间开销相对较小的参数3作为我们的参数。
表3:四组参数集合
我们设置了7个性能指标,分别是并发用户数、错误数量、响应时间、请求数、每秒点击次数、网络丢包数、网络吞吐量。由于不同的被监控的性能指标可能需要不同的数据量,因此上述性能指标的数据量n分别设置为16,8,32,32,16,8,32。基于我们的***进行实验,计算每个指标的加密、聚合和解密验证的时间,结果如图5所示。
Claims (3)
1.一种基于区块链的云应用程序性能监控装置的执行方法,包括以下步骤:
步骤S1:建立基于区块链的云应用程序性能监控模型;
步骤S2:根据监控模型,建立云应用程序性能数据的可验证安全聚合方法;
步骤S3:监控模型采用同态加密算法对数据加密并进行线性同态散列运算;
采用基于可验证聚合方案的数据保护机制;
云应用程序的微服务中存在一个特殊的服务称作监控服务,该服务将收集的性能数据进行加密处理和哈希操作;
密文结果将被传输至云服务器进行存储,哈希值则由区块链进行保存;
由VSA智能合约提取加密数据进行聚合,并将聚合数据存储到区块链上;
最后,分析师利用智能合约对聚合的密文进行解密和验证,得到多个微服务的聚合结果;
该流程主要包括四个步骤:初始设置、数据加密、密文聚合以及解密分析和验证;
初始设置:首先为***输入一个安全参数λ,设置相应的安全参数集合,然后VSA智能合约为云服务器和分析师分配各自的公私密钥对,即云服务器的密钥对(pc,sc)和分析师的密钥对(pa,sa),密钥对将用于数据的加密、聚合、解密和验证;
数据加密:对于每个被监控的性能属性Qt,都有n个数据,Qt_x1,Qt_x2,...,Qt_xi,...,Qt_xn,其中i∈[1,n],为每一个数据xi选择一个d维随机向量ri,然后,使用分析师的公钥pa对每个ri进行CKKS同态加密,生成的结果记作Qt_Ci_right,并使用云服务器的公钥pc对每个(ri+xi)进行CKKS同态加密,生成的结果记作Qt_Ci_left,二者组合的结果记作Qt_Ci;生成密文的结果Qt_Ci并发送到云服务器进行存储;
最后,计算每个xi的散列值Qt_Hxi,并将散列结果存储至区块链;
密文聚合:VSA智能合约将密文数据进行提取,进行加法同态聚合数据,云服务器利用自己的私钥对Qt_C_left进行解密,并将结果用分析师的公钥加密,得到Qt_Ca,智能合约将Qt_Ca与Qt_C_right的加法同态结果记为Qt_C,并将其存储至区块链;
解密和分析验证:分析师在分析性能数据时,由VSA智能合约利用分析师的私钥将区块链上的聚合密文C进行解密得到数据的和,通过对比所得结果的哈希值和原来的数据的哈希乘积,来验证所得结果的正确性;对于安全聚合和验证合约设计,在密文聚合时,智能合约获取存储至云服务器的密文Qt_Ci,利用加法同态计算并记作Qt_C_right;计算/>并记作Qt_C_left;利用云服务器的私钥对Qt_C_left解密得到/>然后利用分析师的公钥进行加密,将得到的结果记作Qt_Ca,并将Qt_Ca和Qt_C_right进行同态加法得到Qt_C,Qt_C也被存储至区块链;
具体步骤如下:
第1步:获取存储至云服务器的密文Qt_Ci,即Qt_Ci_left,Qt_Ci_right;
第2步:对于任意一个性能属性Qt,由智能合约根据Qt_Ci_left进行同态加法,计算Qt_C_left;根据Qt_Ci_right进行同态加法,计算Qt_C_right;
第3步:利用云服务器的私钥,解密第2步的Qt_C_left,将解密得到的结果利用分析师的公钥加密得到Qt_Ca;
第4步:将第2步得到的Qt_C_right和第3步得到的Qt_Ca进行同态加法,得到的结果记为Qt_C,该值被存储到区块链中永久记录;
重复以上第2步到第4步,直至t的值大于k,即所有的性能属性完成密文聚合;
对于解密和验证:
利用分析师私钥,通过VSA智能合约将Qt_C解密,从而得到每个属性所有数据的和,被记为xsum;
VSA智能合约对xsum进行散列运算,得到的哈希值记作Qt_Hxsum,同时,智能合约获取区块链上存储的一系列Qt_Hxi的值;
将同一个属性的所有数据的哈希值相乘,并将结果记作Qt_Hxsu;
若每个属性的Qt_Hxsum与Qt_Hxsu均是相等的,那么最后验证成功,分析师获得的数据是正确的;否则,数据遭到更改或破坏,返回错误;
具体步骤如下:
第一步:通过VSA智能合约得到区块链上记录的Qt_Hxi和Qt_C;
第二步:对于任意一个性能属性Qt,利用分析师的私钥解密Qt_C,得到结果记为xsum;计算的乘积,满足j∈[1,d],gj∈Group G,乘积的结果记作Qt_Hxsum;
第三步:计算Qt_Hxi的乘积,满足i∈[1,n],乘积的结果记作Qt_Hxsu;
第四步:对比Qt_Hxsum与Qt_Hxsu的值,如果相等则将解密结果反馈给分析师;不相等则返回错误,执行步骤六;
第五步:重复以上第二步到第四步,直至t的值大于k,即所有的性能属性完成解密和验证,其中,性能数据共有k个属性,那么PerfData的明文空间可以表示为[Q1],[Q2],...,[Qt],...,[Qk],其中t∈[0,k];
第六步:解密和验证结束;
所述步骤S1还包括以下子步骤:
子步骤S11:用户通过API接口访问各种微服务,在资源层找到实例并返回给用户;
子步骤S12:监控服务将监控整个过程,并收集性能数据;
子步骤S13:设置名为PerfData的自定义的数据类型,保存数据;
子步骤S14:影响性能的关键数据被记录,这些数据被加密上传至云服务器,数据的散列值也被存储至区块链,并用于记录和验证;
子步骤S15:智能合约被触发对云服务器的密文数据进行提取,从而进行安全聚合的操作;
子步骤S16:将大量的密文数据的聚合结果存储至区块链,以此保证数据的安全性和完整性。
2.根据权利要求1所述的一种基于区块链的云应用程序性能监控方法,其特征在于,所述步骤S2还包括以下子步骤:
子步骤S21:采用基于可验证聚合方案的数据保护机制;
子步骤S22:采用智能合约技术设计VSA智能合约,该智能合约对密文进行安全聚合并进行解密与验证。
3.根据权利要求1所述的一种基于区块链的云应用程序性能监控方法,其特征在于,所述步骤S3还包括以下子步骤:
子步骤S31:利用实验数据计算智能合约的开销;
子步骤S32:利用实验数据计算加密和聚合的开销;
子步骤S33:根据实验对比选取一组合适的安全参数集合,并用该参数集合计算具体的微服务性能数据各阶段所需要的时间开销。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310801908.1A CN116827821B (zh) | 2023-07-03 | 2023-07-03 | 基于区块链云应用程序性能监控方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310801908.1A CN116827821B (zh) | 2023-07-03 | 2023-07-03 | 基于区块链云应用程序性能监控方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116827821A CN116827821A (zh) | 2023-09-29 |
CN116827821B true CN116827821B (zh) | 2024-04-30 |
Family
ID=88128969
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310801908.1A Active CN116827821B (zh) | 2023-07-03 | 2023-07-03 | 基于区块链云应用程序性能监控方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116827821B (zh) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117668887B (zh) * | 2024-01-31 | 2024-05-31 | 南湖实验室 | 一种基于机密计算的同态加密安全与性能自定义平衡方法 |
Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109829326A (zh) * | 2018-11-20 | 2019-05-31 | 西安电子科技大学 | 基于区块链的跨域认证与公平审计去重云存储*** |
CN111355705A (zh) * | 2020-02-08 | 2020-06-30 | 西安电子科技大学 | 一种基于区块链的数据审计与安全去重云存储***、方法 |
CN112118253A (zh) * | 2020-09-16 | 2020-12-22 | 北方工业大学 | 一种基于区块链的云服务日志匿名***及匿名方法 |
CN112347495A (zh) * | 2020-11-15 | 2021-02-09 | 北京物资学院 | 一种基于区块链的可信隐私智能服务计算***及方法 |
CN112818388A (zh) * | 2021-01-25 | 2021-05-18 | 北方工业大学 | 一种基于区块链的云服务隐私保护信誉*** |
CN113556322A (zh) * | 2021-06-23 | 2021-10-26 | 北京航空航天大学 | 一个基于区块链的云数据完整性验证方案 |
CN113886856A (zh) * | 2021-10-20 | 2022-01-04 | 兰州理工大学 | 基于区块链的双重可验证云存储方法 |
CN115396219A (zh) * | 2022-08-30 | 2022-11-25 | 云南财经大学 | 一种隐私计算的可信云计算模型***及操作流程 |
CN116318901A (zh) * | 2023-02-24 | 2023-06-23 | 北京工业大学 | 一种融合区块链的隐私和可验证物联网数据聚合方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113411384B (zh) * | 2021-06-10 | 2022-09-27 | 华中科技大学 | 针对物联网数据安全共享过程中隐私保护的***及方法 |
-
2023
- 2023-07-03 CN CN202310801908.1A patent/CN116827821B/zh active Active
Patent Citations (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN109829326A (zh) * | 2018-11-20 | 2019-05-31 | 西安电子科技大学 | 基于区块链的跨域认证与公平审计去重云存储*** |
CN111355705A (zh) * | 2020-02-08 | 2020-06-30 | 西安电子科技大学 | 一种基于区块链的数据审计与安全去重云存储***、方法 |
CN112118253A (zh) * | 2020-09-16 | 2020-12-22 | 北方工业大学 | 一种基于区块链的云服务日志匿名***及匿名方法 |
CN112347495A (zh) * | 2020-11-15 | 2021-02-09 | 北京物资学院 | 一种基于区块链的可信隐私智能服务计算***及方法 |
CN112818388A (zh) * | 2021-01-25 | 2021-05-18 | 北方工业大学 | 一种基于区块链的云服务隐私保护信誉*** |
CN113556322A (zh) * | 2021-06-23 | 2021-10-26 | 北京航空航天大学 | 一个基于区块链的云数据完整性验证方案 |
CN113886856A (zh) * | 2021-10-20 | 2022-01-04 | 兰州理工大学 | 基于区块链的双重可验证云存储方法 |
CN115396219A (zh) * | 2022-08-30 | 2022-11-25 | 云南财经大学 | 一种隐私计算的可信云计算模型***及操作流程 |
CN116318901A (zh) * | 2023-02-24 | 2023-06-23 | 北京工业大学 | 一种融合区块链的隐私和可验证物联网数据聚合方法 |
Also Published As
Publication number | Publication date |
---|---|
CN116827821A (zh) | 2023-09-29 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Liang et al. | PDPChain: A consortium blockchain-based privacy protection scheme for personal data | |
Dubey et al. | Cloud-user security based on RSA and MD5 algorithm for resource attestation and sharing in java environment | |
Ali et al. | DaSCE: Data security for cloud environment with semi-trusted third party | |
CN114499895B (zh) | 一种融合可信计算与区块链的数据可信处理方法及*** | |
Ahmad et al. | Secure and transparent audit logs with BlockAudit | |
Li et al. | Study on the third-party audit in cloud storage service | |
Obert et al. | Recommendations for trust and encryption in DER interoperability standards | |
Yan et al. | Integrity audit of shared cloud data with identity tracking | |
Aung et al. | Ethereum-based emergency service for smart home system: Smart contract implementation | |
CN116827821B (zh) | 基于区块链云应用程序性能监控方法 | |
Kumar et al. | TPA auditing to enhance the privacy and security in cloud systems | |
Marian et al. | Experimenting with digital signatures over a DNP3 protocol in a multitenant cloud-based SCADA architecture | |
CN111212026A (zh) | 基于区块链的数据处理方法、装置及计算机设备 | |
Liu et al. | Data integrity audit scheme based on quad Merkle tree and blockchain | |
CN116562874B (zh) | 一种基于零知识证明的隐私保护跨链交易验证方法 | |
Xu et al. | FileDES: A Secure Scalable and Succinct Decentralized Encrypted Storage Network | |
Vemulapalli et al. | Security frameworks in mobile cloud computing | |
Tan et al. | A universal decentralized authentication and authorization protocol based on blockchain | |
Kumar et al. | Hash based approach for providing privacy and integrity in cloud data storage using digital signatures | |
Magnanini et al. | Scalable, confidential and survivable software updates | |
Shanmukesh et al. | Secure DLMS/COSEM communication for Next Generation Advanced Metering Infrastructure | |
Keerthana et al. | Slicing, Tokenization, and Encryption Based Combinational Approach to Protect Data-at-Rest in Cloud Using TF-Sec Model | |
Moon et al. | Cooperative remote attestation for IoT swarms | |
Gagged et al. | Improved secure dynamic bit standard technique for a private cloud platform to address security challenges | |
Sai et al. | The application of cloud data integrity verification scheme in Internet of Things security |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |