首页> 中国专利> 一种基于线性秘密共享的可验证外包属性基加密方法

一种基于线性秘密共享的可验证外包属性基加密方法

摘要

本发明公开了一种基于线性秘密共享的可验证外包属性基加密方法:本发明采用线性秘密共享(LSSS)的访问结构,支持用户的直接撤销,将代理重加密技术和外包解密技术相结合,当用户被撤销后,在保证云服务器得不到关于明文任何消息的前提下,实现了用户离线更新解密密钥、代理服务器自动更新密文、外包解密的可验证性等功能。此外,本发明涉及通信开销较低,便于带宽、资源受限的移动设备的使用。

著录项

  • 公开/公告号CN105933345A

    专利类型发明专利

  • 公开/公告日2016-09-07

    原文格式PDF

  • 申请/专利权人 电子科技大学;

    申请/专利号CN201610498415.5

  • 申请日2016-06-28

  • 分类号H04L29/06(20060101);H04L9/08(20060101);

  • 代理机构

  • 代理人

  • 地址 611731 四川省成都市高新区(西区)西源大道2006号

  • 入库时间 2023-06-19 00:26:11

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2019-10-18

    授权

    授权

  • 2016-10-05

    实质审查的生效 IPC(主分类):H04L29/06 申请日:20160628

    实质审查的生效

  • 2016-09-07

    公开

    公开

说明书

技术领域

本发明涉及云计算及网络安全中数据加密技术领域,本发明主要涉及到用户被撤销后,其他未被撤销的用户通过数据使用者离线更新解密密钥、云存储服务器更新密文来实现数据的访问共享,此外,采用可验证外包来降低数据使用者的计算开销,同时也保证解密服务器提供部分解密密文的正确性。本发明不仅能够实现云环境下群组成员数据的安全共享,还能够抵抗被撤销的用户和合法群组成员的属性合谋攻击。

背景技术

近年来广泛应用于云计算的属性基加密技术成为当前的研究热点之一。属性基加密能够提供给用户丰富灵活的访问结构,以访问存储在云端的密文数据。然而,在云环境下,不得不考虑的问题是:用户解密的计算开销也会随着访问结构复杂性的增加而增加,而对于带宽、资源受限的移动设备来说,这样就会导致用户的体验变得糟糕。目前,主要是采用外包解密技术来实现用计算和通信开销的降低。然而外包通常会涉及到两个关键性问题:如何保证外包解密的是原始明文,以及外包解密后密文的正确性。恶意的解密外包服务器可能替换原有的密文,即返还给不是数据使用者所想要解密的密文,同时保证数据使用者没有察觉其恶意行为。普通的外包解密方案只能够保证数据拥有者不察觉解密外包服务器不了解数据使用者的任何有用信息,并不能保证外包解密服务器正确执行了部分解密计算,为了解决这个问题,Lai等人提出了可验证的外包计算的属性基加密,该方案使用双倍的加密开销来保证可验证性,这较大的造成了数据拥有者的计算开销,最近,Ma等人采用密钥获取技术(KDF1技术)来实现可验证的外包计算,很大程度减少了数据拥有者和使用者的加解密开销。

属性基加密系统中用户撤销也是属性基研究的热点话题,用户撤销意味着权限的丧失。目前,用户撤销通常采用直接撤销的方法,即数据拥有者维护着一个撤销列表,使得在撤销列表中的用户则不能访问数据,这样就会出现一个问题:数据拥有者要始终保持在线以维持撤销列表。

在现有的属性基加密系统中,尚没有发明出一一种基于线性秘密共享的可验证外包属性基加密方法,本发明采用线性秘密共享LSSS的访问结构,在考虑安全高效的前提下,实现了一种可验证的属性基用户撤销的方法,本发明不仅能够有效的降低云共享系统中用户的加解密计算开销和通信开销,而且能够提供给用户更高的隐私保护需求。

发明内容

为了解决用户被撤销后如何实现云数据安全共享的问题,本发明提供了一种基于线性秘密共享的可验证外包属性基加密方法,首先采用代理重加密技术实现上传密文的自动更新,然后结合密钥盲化技术、外包计算技术,保证用户被撤销后云数据共享过程中能够抵抗属性合谋攻击,实现可验证的外包解密服务。

本发明所采用的技术方案是数据拥有者采用KDF1技术生成会话密钥和封装密钥,并将加密共享的数据上传至云存储服务器,当用户被撤销后,云存储服务器扮演代理的角色,利用重加密密钥对原始密文进行重加密操作,将原始密文转换为数据使用者能够用私钥解密的新密文,同时数据使用者能够实现离线更新解密密钥。数据拥有者为了减少计算开销,将解密密钥进行盲化,将盲化后的部分私钥作为转换密钥发送给外包解密服务器,而保留部分私钥作为恢复密钥。外包解密服务器具有强大的计算能力,将云存储服务器传送的密文转化成形式更加简单的密文。数据使用者验证解密密文的正确性,恢复明文。因此,本发明能够提供安全的可验证外包的属性基用户撤销方法。

本发明中的云数据安全共享系统涉及四个实体:云存储服务器(CSS)、外包解密服务器(D-CSP)、数据拥有者、数据使用者。.

本方法提出一种基于线性秘密共享的可验证外包属性基加密方法,包括如下10个步骤:

(1)、系统参数/群组参数的建立(SystemSetup/GroupSetup):由可信的权威机构(TA)设定系统的公开参数PK、系统主密钥MK以及根据系统的公开参数,由可信的群管理员(GM)设定群组的公开参数GPK、群组的主密钥GMK。

(2)、生成群组成员证书(GertGen):根据系统的公开参数PK、群组成员的身份UID、当前群组主密钥GMKver,为群组成员生成证书δver

(3)、密钥生成(KeyGen):首先由TA来验证证书δver是否合法;若验证通过,TA根据系统的公开参数PK、系统主密钥MK、群组成员的属性集S、群组成员的身份UID、当前群组的公开参数GPKver,为群组成员生成解密密钥DSKver=(t1,t2,DSKS,DSKGID)以及元组UPver

(4)、数据加密(Encrypt):数据拥有者根据系统的公开参数PK、当前群组的公开参数GPKver、访问结构生成密文CTver

(5)、群组参数更新及重加密密钥的生成(GroupUpdate):当群组中的任何一个成员离开,GM根据系统的公开参数PK、当前群组主密钥GMKver,更新生成新的群组主密钥GMKver+1、新的群组的公开参数GPKver+1,重加密密钥Re-Keyver→ver+1,新的元组UPver+1以及记录状态的字典Dicver+1

(6)、用户密钥更新(UserUpdate):当前的群组成员根据各自的解密密钥DSKver、元组UPver+1,更新各自的解密密钥DSKver+1

(7)、数据重加密(ReEncrypt):数据拥有者将加密后的数据上传至云存储服务器CSS,当群组成员发生变化时,CSS根据重加密密钥Re-Keyver→ver+1,对密文进行更新操作,产生新的密文CTver+1

(8)、转换密钥和恢复密钥的生成(GenTKout):数据使用者根据各自的解密密钥DSKver+1,将其进行盲化为DSK′ver+1,生成转换密钥TKver+1和恢复密钥PKver+1

(9)、外包解密(Transformout):外包解密服务器D-CSP根据云存储服务器CSS提供的密文CTver+1,以及数据拥有者发送的转换密钥TKver+1,生成转换密文CT′。

(10)、解密密文(Decrypt):数据使用者根据D-CSP传递的密文CT′,使用恢复密钥进行解密,并验证是否是初始密文CTver对应的明文消息M。

与传统方法相比,本发明显著的效果:能够抵抗撤销用户通过属性合谋以访问共享数据,能够极大降低数据拥有者加密以及数据使用者解密的计算开销,同时能够保证解密外包服务器提供的部分解密密文的正确性。

附图说明

图1本发明所述的一种基于线性秘密共享的可验证外包属性基加密方法的系统流程图。

具体实施步骤

如权利要求1所述的一种基于线性秘密共享的可验证外包属性基加密方法,其特征在于,具体步骤实施如下:

SystemSetup(λ)/GroupSetup(PK):系统参数生成算法输入安全参数λ,选取素数阶为p的乘法群以及双线性映射其中g是的生成元;TA随机选取计算ga,gα,gβ,g1/β,e(g,g)α;选取两个抗碰撞的哈希函数以及一个密钥获取函数KDF1,其长度生成系统的公开参数系统的主密钥MK=(gα,β),且将g1/β发送给GM执行用户撤销操作。群组参数生成算法输入系统的公开参数PK,GM随机选取计算生成群组的主密钥GMK0=γ0,群组的公开参数以及一个记录当前状态ver的字典Dic0,初始化为0状态。

CertGen(PK,UID,GMKver):GM根据其UID,为群组中成员生成证书

KeyGen(PK,MK,S,GPKver,UID,δver):TA通过验证其证书是否合法;若验证通过,则随机选取计算以及设定用户解密密钥DSKver=(t1,t2,DSKS,DSKGID),将UPver=(UID,d1=H(UID),d2=g1/β)发送给GM;若证书验证不通过,生成错误信息⊥。

数据拥有者根据所选的访问结构随机选取生成会话密钥SSK以及封装密钥计算输出

GroupUpdate(PK,,GMKver,Dicver):当群组的任何成员离开了该小组(认为于被撤销),GM随机选取更新群组的公开参数群组的主密钥GMKver+1=γver+1、元组生成重加密密钥将UPver+1发送每一个群组成员,将Re-Keyver→ver+1发送给云存储服务器CSS。

UserUpdate(DSKver,UPver+1):群组成员可以离线更新各自的私钥,计算更新以及解密密钥为DSKver+1=(t1,t2DSKS,DSKGID)。

ReEncrypt(CTver,Re-Keyver→ver+1):云存储服务器CSS计算更新密文

GenTKout(PK,DSKver+1):数据使用者随机选取对其解密密钥进行盲化t′1=t1/z,t′2=t2/z,其中自己保存恢复密钥RKver+1=(t′1,t′2),将转换密钥TKver+1=(DSK′S,DSK′GID)发送给外包解密服务器D-CSP。

Transformout(CTver,TKver+1):D-CSP计算将部分解密的密文发送给数据使用者。

Decrypt(CT′,RKver+1):数据使用者使用自己的恢复密钥,计算,然后计算封装密钥如果成立,则输出key;最后通过计算M=CTver+1·(key·E′2)-1恢复消息M,否则验证不通过,输出⊥。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号