主页 > imtoken苹果下载官网 > 一种基于区块链的云服务日志匿名系统及匿名方法技术方案

一种基于区块链的云服务日志匿名系统及匿名方法技术方案

imtoken苹果下载官网 2023-12-10 05:13:46

一种基于区块链的云服务日志匿名系统及匿名方法,该系统包括: 区块链日志模块,将匿名化的云服务日志存储在区块链中;一个Zokrates模块,用于生成零知识证明;智能合约模块自动对存储在区块链中的云服务日志进行验证,对已验证的日志进行标记,并将其存储在区块链上;云服务提供方,根据用户的操作指令提供云服务,云服务提供方将操作的执行结果和操作日志反馈给用户,并存储日志和与用户交互产生的附加数据。日志数据库中的用户;用户侧,与云服务提供商和区块链系统交互,负责生成、导入和导出密钥对,发出云服务请求。该系统解决了区块链上的日志完整性问题,保证了匿名性,降低了用户隐私泄露的风险。

下载所有详细的技术数据

【技术实现步骤总结】

一种基于区块链的云服务日志匿名系统及方法

该专利技术属于云服务安全领域。为了保证云服务器日志的私密性和安全性,设计并提出了一种基于区块链的云服务日志匿名系统和方法。

技术介绍

近年来,云计算因其在成本和管理上相对于传统计算模式的显着优势,吸引了大量企业将计算服务迁移到云端。然而,随着云计算的普及,其缺点也逐渐显现。用户无法直接控制物理设备,导致出现问题时责任定义不明确。此时,服务器的日志将成为故障分析的主要证据,但日志很容易被恶意篡改,尤其是如果日志控制是责任方,例如云服务提供商。因此,确保日志的完整性极为重要。现有方法将日志哈希记录在区块链上,从而利用区块链的不变性来保护日志的完整性。但是,由于区块链的伪匿名性,当日志哈希记录在区块链上时,可能会暴露用户的身份,导致用户隐私泄露。因此,如何保证云服务日志系统中的日志完整性和用户隐私安全,成为云服务安全领域密切关注的话题。

技术实现思路

专利技术克服了现有云服务日志系统中第三方审计机构篡改日志和用户隐私泄露的问题,提供了一种基于区块链的云服务日志匿名系统和匿名方法,保护用户隐私和安全安全 。该专利技术的基于区块链的云服务日志匿名系统包括: 区块链日志模块:将匿名的云服务日志存储在区块链中; Zokrates模块:生成零知识证明,构造密钥,生成零知识证明代码;智能合约模块:自动验证存储在区块链中的云服务日志,通过零知识证明验证匿名日志的正确性,对验证后的日志进行标记,并存储在区块链上;云服务提供方:根据用户的操作指令提供相应的云服务,云服务提供方在完成用户下达的指令后,将操作的执行结果和操作产生的日志反馈给用户,这日志连同与用户交互产生的附加数据一起存储在日志数据库中;客户端:与云服务提供商和区块链系统进行交互,负责密钥对的生成、导入和导出、用户注册、云服务下发请求动作。该专利技术还提供了一种基于区块链的云服务日志匿名方法,包括: S1:云服务提供商根据用户需求为用户提供云服务后,云服务提供商对日志哈希值进行哈希运算。处理得到log哈希值k,通过Zokrates模块生成零知识证明π、零知识证明的验证密钥vk和零知识证明码,存储k、π、vk在区块链上,构建验证合约。将零知识证明代码导出到验证合约,部署到区块链上进行后续验证; S2:调用验证合约,通过零知识证明对存储日志进行验证; S3:标记经过验证的云服务日志,并存储在区块链上。

例如,本专利技术实施例提供的一种基于区块链的云服务日志匿名化方法,其中步骤S1的具体步骤包括: S11:用户和云服务提供者分别设置密钥对,其中,密钥对方法为:选择一个秘密随机数作为私钥,使用带有初始向量的散列算法作为私钥,使用私钥的散列值作为公钥进行零知识证明; S12:用户在请求云服务之前,首先生成一个随机数作为本次云服务请求操作的标识,对操作码和随机数进行数字签名,并将签名、云服务操作码和随机数发送给云服务提供商以请求云服务,签名可作为用户操作的不可否认性证据; S13:云服务提供者完成用户下达的操作指令后,云服务提供者将返回操作执行结果并记录相应的日志给云服务器,并记录在云服务器中。同时发送给用户; S14:云服务商计算哈希值k,计算公式为:k=H(H(H(PKC,PKU),h),r),其中PKC为云公钥,PKU为用户公钥,h为对数哈希值,r为随机数,H(x)为哈希函数; S15:将生成零知识证明所需的参数PKC、PKU、h、r传递给Zokrates模块; S16:Zokrates模块使用参数PKC、PKU、h、r构造零知识证明π及其对应的零知识证明验证密钥vk,构造的零知识证明π如下:(1)知道云公钥PKC对应的云私钥SKC,(2)计算k时包含用户公钥PKC,vk是π对应的验证密钥,k,π,vk都存储在区块链; S17:将零知识证明代码导出到验证合约,在验证合约中添加构造函数和审计方法,在以太坊私链上部署最终形成的验证合约,最后将合约地址返回给用户,方便用户验证。

例如,本专利技术实施例提供的一种基于区块链的云服务日志匿名方法,其中步骤S2的具体步骤包括: S21:用户从本地数据库中取出该日志记录,计算当前日志记录。二级日志记录的哈希值hU,取出之前得到的云服务商的公钥区块链哈希值查询,以及用户自己的公钥和生成的随机数r重新计算哈希值,记为k_1; S22:从云服务提供商返回的合约地址中,提取根据这条日志记录生成的哈希值,记为k_2,比较双方的哈希值。如果k_1=k_2,则认证成功,否则拒绝认证; S23:通过获取的合约地址调用合约,输入随机数r、日志哈希hU、云服务商哈希公钥PKC和用户哈希公钥PKU作为验证合约验证函数的参数,验证:用户是PKU的所有者,云服务商将当前待审计的记录发送到区块链(证明PKU和PKC的服务关系),函数返回布尔结果,如果结果为真,则日志记录用户与云服务提供商之间的云服务进程,且用户日志未被篡改,否则日志被篡改。例如,本专利技术实施例提供的一种基于区块链的云服务日志匿名方法,其中步骤S3的具体步骤包括: S31:验证通过后,用户使用自己的RSA公钥生成一个k 的签名,作为对该记录的认可,并将其发送给云服务提供商。云服务提供商收到签名后,将其存储在数据库中作为证据,以确保用户不能被拒绝; S32:对验证后的日志进行编号,并记录在区块链日志模块中,将编号反馈给用户。验证通过的区块不需要再验证两次,通过查询区块中的号码记录确认验证。

例如,该专利技术的一个实施例提供的一种基于区块链的云服务日志匿名方法还包括:审计阶段,当用户不同意云服务提供商给出的异常服务原因时,云可以要求服务提供者提供原始日志,用户发起日志完整性审计,第三方机构可以通过调用合约的审计函数比对校验日志认证哈希值等参数向第三方证明方日志是否被篡改。与现有技术相比,本专利技术的基于区块链的云服务日志匿名方法及系统具有以下优点: 1.采用非交互简洁的零知识证明,证明了日志的完整性同时区块链。 ,保证匿名性,降低用户隐私泄露风险; 2.在不破坏匿名性的情况下,还实现了审计功能,当恶意篡改发生时,用户可以向第三方证明日志已被篡改; 3.使用智能合约启用日志记录和审计,提高自动化程度。云服务日志匿名方式主要解决两个问题:1.通过零知识证明,解决了区块链上的日志完整性问题,保证匿名性,降低用户隐私泄露的风险;2.通过设计智能合约,自动实现云服务日志的验证和审计。附图说明为了更清楚地说明本专利技术实施例的技术方案,下面对实施例的附图进行简单介绍。显然,以下描述中的附图仅涉及本专利技术的部分实施例,并非对本专利技术的限制。图1为本专利技术实施例提供的一种基于区块链的云服务日志匿名方法流程示意图;图2为本专利技术实施例提供的基于区块链的云服务日志匿名系统结构示意图。专利技术实例提供

【技术保护点】

1.一个基于区块链的云服务日志匿名系统,包括:/nBlockchain log 模块:将匿名的云服务日志存储在区块链中;/nZokrates 模块:用于生成零知识证明,构造密钥,以及生成零知识证明代码; /n 智能合约模块:自动验证存储在区块链中的云服务日志,并通过零知识证明验证匿名日志的正确性。标记经过验证的日志并将其存储在区块链上; /n 云服务提供者:根据用户的操作说明提供相应的云服务。完成用户发出的指令后,云服务提供商会将操作反馈给用户,将操作的执行结果和产生的日志发送给用户,日志和与用户交互产生的附加数据存储在日志数据库; /n Client:与云服务提供商和区块链系统交互,负责密钥的生成、导入、导出、注册用户、发出云服务请求。 /n

【技术特点总结】

1.一个基于区块链的云服务日志匿名系统,包括:

区块链日志模块:将匿名的云服务日志存储在区块链中;

Zokrates模块:用于生成零知识证明,构造密钥,生成零知识证明代码;

智能合约模块:自动验证存储在区块链中的云服务日志,通过零知识证明验证匿名日志的正确性,对验证后的日志进行标记,并存储在区块链上;

云服务提供商:根据用户的操作说明提供相应的云服务。云服务提供者在完成用户下达的指令后,将操作的执行结果和操作产生的日志反馈给用户,并将日志和日志发送给用户。用户交互产生的附加数据存储在日志数据库中;

Client:与云服务商和区块链系统交互,负责密钥对生成、导入导出、用户注册、云服务请求等操作。

2.一种基于区块链的云服务日志匿名方法,包括:

S1:云服务提供商根据用户需求为用户提供云服务后,云服务提供商对日志哈希值进行哈希运算,得到日志哈希值k,并生成零知识证明π通过Zokrates模块,零知识证明验证密钥vk和零知识证明代码,将k,π,vk存储在区块链上,构建验证合约,将零知识证明代码导出到验证合约,并部署在区块链上用于后续验证;

S2:调用验证合约,通过零知识证明对存储日志进行验证;

S3:经过身份验证的云服务日志被标记化并存储在区块链上。

3.根据权利要求2所述的一种基于区块链的云服务日志匿名方法,其特征在于,步骤S1具体包括:

S11:用户和云服务提供商分别设置密钥对,设置密钥对的方法是:选择一个秘密随机数作为私钥,使用带有初始向量的哈希算法作为私钥,并将私钥转换为私钥。密钥的哈希值作为零知识证明的公钥;

S12:在用户请求云服务之前,首先生成一个随机数作为本次云服务请求操作的标识区块链哈希值查询,对操作码和随机数进行数字签名,并将签名、云服务操作码和随机数发送给云服务提供者可以请求云服务,签名可以作为用户操作的不可否认性证明;

S13:云服务提供者完成用户下达的操作指令后,云服务提供者将操作执行结果和对应的日志记录返回给云服务器,同时发送给用户;

S14:云服务商计算哈希值k,计算公式为:k=H(H(H(PKC, PKU), h), r),其中PKC为云公钥,PKU为用户的公钥密钥,h为日志哈希值,r为随机数,H(x)为哈希函数;

S15:参数PKC、PKU、h、r...

【专利技术属性】

技术研发人员:何云华、耿子野、肖可、李晨、

申请人(专利权):华北理工大学,

类型:发明

国家省市:北京;11

下载所有详细的技术数据我是该专利的所有者