基于消息依赖于密钥的隐私数据加密方法技术

技术编号:14881110 阅读:273 留言:0更新日期:2017-03-24 03:44
本发明专利技术公开了一种基于消息依赖于密钥的隐私数据加密方法,主要解决现有技术中未考虑明文和密钥的相关性和用电子邮件分发群组公钥带来的密钥相关攻击和密钥泄露问题。其实现步骤为:1.授权中心初始化系统参数;2.用户向授权中心进行身份验证;3.授权中心为通过身份验证的用户分发密钥;4.用户根据获得的密钥处理明文文件得到密文;5.用户将密文上传至云服务器;6.用户使用时,再向云服务器请求下载密文,请求通过后获得密文进行解密。本发明专利技术采用单用户模式下基于消息依赖于密钥的加密方法实现了对区块链钱包文件的安全加密,能够避免密钥泄漏,减轻密钥相关攻击,提高钱包文件的安全性。

【技术实现步骤摘要】

本专利技术属于数据处理
,特别涉及一种隐私数据加密方法,可以用于区块链中对钱包文件的加密、备份以及将其上传至云服务器的过程。
技术介绍
区块链是在网络上的一个去中心化的分布式共享账簿或者数据库,通过高冗余的方式来构建极高的安全性。有人将其称为“信任的机器”,也即在没有中央权威的情况下,对彼此的协作创造信任。区块链技术适用于一切缺乏信任的领域,因而其应用范围会越来越广。在未来的区块链中,随着用户交易量的增加,大量的公私钥对需要用户产生和存储。而这些密钥通常是由用户生成并存储在一个文件或简单的数据库中,可将其称为钱包。钱包是多个地址和解密密钥的简单集合。拥有私钥是使用比特币的唯一条件,因此私钥必须保密且必须进行备份,将备份上传至云服务器,以防意外丢失。因此,对钱包的加密安全问题就显得格外重要。在用户向授权中心注册成功后,授权中心向用户分发加密时的对称密钥。由于密钥管理漏洞或者安全性意识不强,用户有可能会将用于加密钱包的对称密钥直接作为生成交易所用公私钥对的初始私钥。若此时加密钱包,钱包里的明文和密钥有依赖作用,传统的安全定义不足以维护该方案的安全性。随后,在将密文备份上传至云服务器后,若用户因本地文件丢失等问题,需要从云服务器上对某文件进行下载时,为了不泄漏个人隐私信息以及明文信息,用户可能需要从云服务器上下载所有的密文,在本地解密之后才能得到自己想要的文件。这种情况下用户需要进行大量的解密操作,降低用户工作效率,并且损耗大量计算资源和存储资源。武汉科技大学在其申请的专利“一种有权限时间控制的云存储数据安全共享方法”(公开号:105072180A,申请号:201510475566.4,申请日:2015年08月06日)中公开了一种有权限时间控制的云存储数据安全共享方法。在该方法中,数据拥有者创建群组后,自动用公钥加密算法生成一对密钥,数据拥有者共享文件时,采用对称密码机制对文件加密,再用待分享群组的私钥对对称密钥加密,并将文件密文及密钥密文发送到云端,把该群组的公钥用电子邮箱发给待分享群组的所有用户,用户若有访问权限,则可以获得公钥,解密文件。该方法存在的不足之处是:首先该专利在用分享群组的私钥加密对称密钥时没有考虑“明文和密钥可能相关”的安全问题,可能会产生密钥相关攻击;其次,该专利中数据拥有者将群组公钥用电子邮件发给群组用户时,没有考虑电子邮件的安全问题,电子邮件一旦被恶意截取,就会泄漏密钥。
技术实现思路
本专利技术的目的在于针对上述现有的不足,提出一种基于消息依赖于密钥的隐私数据加密方法,以避免密钥泄漏,提高钱包文件的安全性。本专利技术的技术方案是,首先由授权中心完成对用户的身份认证过程,然后用户获得对称加密的密钥,采用消息依赖于密钥KDM对称加密方案对明文进行加密生成密文,以抵抗密钥相关攻击,与此同时,采用可搜索加密对明文生成索引,以进行对密文的可搜索,其实现步骤包括如下:(1)初始化:(1a)授权中心确定第一安全参数λ、第二安全参数k、第三安全参数γ、关键字个数的参量τ和伯努利分布的参量θ=2-λ,定义明文矩阵的消息长度l、维数N、分组长度m,分别为l=l(λ)、N=N(λ)、m=m(λ);(1b)授权中心定义纠错码的生成矩阵为G=Gm×l,设置解纠错码的个数为d=(θ+σ)·m,根据生成矩阵G和解纠错码个数d选取一组二进制线性纠错码D,其中,Gm×l表示生成矩阵为m×l阶,σ是(0,1)区间上选取的固定值;(1c)对于任意比特串K∈{0,1本文档来自技高网
...
基于消息依赖于密钥的隐私数据加密方法

【技术保护点】
基于消息依赖于密钥的隐私数据加密方法,包括如下步骤:(1)初始化:(1a)授权中心确定第一安全参数λ、第二安全参数k、第三安全参数γ、关键字个数的参量τ和伯努利分布的参量θ=2‑λ,定义明文矩阵的消息长度l、维数N、分组长度m,分别为l=l(λ)、N=N(λ)、m=m(λ);(1b)授权中心定义纠错码的生成矩阵为G=Gm×l,设置解纠错码的个数为d=(θ+σ)·m,根据生成矩阵G和解纠错码个数d选取一组二进制线性纠错码D,其中,Gm×l表示生成矩阵为m×l阶,σ是(0,1)区间上选取的固定值;(1c)对于任意比特串K∈{0,1}γ,授权中心定义PK(x)是{0,1}τ区间上的伪随机置换函数族,定义FK(x)是定义域为{0,1}τ、值域为{0,1}γ的第一伪随机函数族,定义GK(x)是定义域为[1,n]、值域为{0,1}的第二伪随机函数族;(1d)授权中心公开纠错码D、生成矩阵G、伪随机置换函数族PK(x)、第一伪随机函数族FK(x)、第二伪随机函数族GK(x)和公共参数{l,m,N,θ};(2)身份注册:(2a)用户将个人身份信息提交给授权中心;(2b)授权中心审核该用户提交的身份信息是否真实,若真实,则执行步骤(3),否则,拒绝注册;(3)密钥分发:(3a)授权中心定义有限域选取矩阵作为用户加密明文的对称密钥,其中,是整数环,2是素数;(3b)授权中心为用户生成消息认证码HMAC操作所需的密钥kmac;(3c)授权中心通过安全信道将消息{S||kmac||γ||τ}发送给用户;其中,S是用户加密明文的对称密钥,γ是第三安全参数,τ是关键字个数的参量,||表示级联符号;(3d)用户将对称密钥S、消息认证码HMAC密钥kmac、第三安全参数γ和关键字个数的参量τ秘密保存;(4)处理明文文件:(4a)用户加密明文文件εj时,对其明文矩阵进行分块,定义每个明文矩阵块为其中,1≤j≤n,n为明文文件总数;(4b)用户根据对称密钥S加密每个明文矩阵块M,获得对应的密文矩阵块W:W=(A,C),其中,A是从中随机选取的系数矩阵,C=A·S+E+G·M,S是对称密钥,G是纠错码D的生成矩阵,E是从Berθm×N中随机选取的噪声矩阵,Berθ表示{0,1}上的伯努利分布,1的概率为θ,0的概率为1‑θ;(4c)将该明文文件εj所有的密文矩阵块W级联起来,得到该明文文件εj对应的密文文件ψj;(4d)用户根据消息认证码HMAC密钥kmac和密文文件ψj计算密文文件ψj的消息认证标签Tj:Tj=HMAC(kmac,ψj),其中,HMAC()表示消息认证标签生成算法;(4e)用户随机均匀选取第一秘密值s∈{0,1}γ、第二秘密值r∈{0,1}γ,生成一个可记录2τ个关键字(i,wi)的索引字典,将索引字典和两个秘密值s、r秘密保存;其中,i为标号,i∈[1,2τ],wi为关键字,wi∈{0,1}*,*表示任意长度;(4f)用户生成明文文件εj的索引比特串Ij;(5)数据上传:(5a)用户通过安全的信道,将消息认证码密钥kmac发送给云服务器,并将消息{Ij||ψj||Tj}上传至云服务器,其中,1≤j≤n,n为明文文件总数,||表示级联符号;(5b)云服务器按照下式对每个密文文件进行完整性验证,验证结果用vj表示:vj=Verify(kmac,ψj,Tj),其中,1≤j≤n,n为明文文件总数,Verify()表示消息认证码HMAC的验证算法;若vj=1,表明ψj在上传过程中未被篡改,则云服务器接收该消息,并将索引字符串Ij保存到索引字符串集合I中,同时向用户返回“ψj上传成功”的通知;若vj=0,表明ψj在上传过程中被篡改,则云服务器拒绝接收该消息,并向用户返回“ψj上传错误”的通知;(5c)用户根据收到的通知内容确定是否上传成功:若用户接收到“ψj上传成功”的通知,表明ψj已经成功上传至云服务器;若用户接收到“ψj上传错误”的通知,则返回步骤(5a);(6)下载密文并解密:(6a)用户生成需下载文件中的关键字wμ的陷门并上传至云服务器;(6b)云服务器根据陷门对已存储的文件索引比特串集合I进行匹配检索,若匹配成功,云服务器给用户返回相应的密文ψ,继续步骤(6c);若匹配失败,则云服务器给用户返回“检索失败”的通知;(6c)用户解密密文ψ获得对应的明文文件ε。...

【技术特征摘要】
1.基于消息依赖于密钥的隐私数据加密方法,包括如下步骤:(1)初始化:(1a)授权中心确定第一安全参数λ、第二安全参数k、第三安全参数γ、关键字个数的参量τ和伯努利分布的参量θ=2-λ,定义明文矩阵的消息长度l、维数N、分组长度m,分别为l=l(λ)、N=N(λ)、m...

【专利技术属性】
技术研发人员:高军涛王笠燕李雪莲王丹妮王誉晓
申请(专利权)人:西安电子科技大学
类型:发明
国别省市:陕西;61

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1