一种通用的异构加密云间的数据共享方法技术

技术编号:11642015 阅读:172 留言:0更新日期:2015-06-24 19:15
本发明专利技术公开了一种通用的异构加密云间的数据共享方法,属于计算机安全技术领域。本发明专利技术包括:加密云存储系统内数据共享及异构加密云存储系统间数据共享。系统内数据共享,用会话密钥对数据加密,再用发送方的私钥加密会话密钥,云端使用用户授权的重加密密钥重加密会话密钥,最后将数据密文和重加密密文发送给接收方。系统间数据共享,首先为非发送端系统内的用户绑定临时身份,并生成对应的临时公私钥对,然后按照系统内共享步骤生成相应的重加密密文,再用接收方的公钥加密临时私钥,然后将已加密的临时私钥、重加密密文和数据密文发送给接收方,接收方用己方私钥解密得到临时私钥,再用临时私钥解密得到会话密钥,最后用会话密钥解密。

【技术实现步骤摘要】

本专利技术属于计算机安全
,更具体地,涉及一种通用的异构加密云间的数 据共享方法。
技术介绍
在现有的云存储技术中,数据存储在用户不可控的云端,为了保护敏感数据的安 全性与隐私性,通常会采用数据加密的方法来保护数据的安全。常用的对称加密方案存在 安全性问题,其中,加密数据的密钥只有一个,收发双方都使用同样的密钥对数据进行加密 和解密,这就要求解密方事先必须知道加密密钥,这样密钥的安全性就得不到保证,因此对 称加密体制不适于分布式文件存储系统。因此,为了保证云端数据的保密性与隐私性,加 密云存储系统通常需要使用公钥密码体制(非对称加密体制)来加密用户的数据。目前, 公钥密码体制类型繁多,主流的有基于证书加密体制(Certificate-BasedEncryption, 简称CBE)、基于身份加密体制(Identity-BasedEncryption,简称IBE)、基于属性加密 体制(Attribute-BasedEncryption,简称ABE)和无证书加密体制(Certificateless Encryption,简称CLE) 〇 代理重加密(proxyre-encryption,以下简称PRE)是一种密文间的转换机制,是 由Blaze等人在1998年的欧洲密码学年会上提出的,并由Ateniese等人在2005年的网络 和分布式系统安全研讨会议和2007年的美国计算机学会计算机与通信安全会议上给出了 规范的形式化定义。在PRE中,一个半可信代理方通过代理授权人A产生的转换密钥RK把 用授权人A的公钥PKA加密的密文转化为用被授权人(Delegate)B的公钥PKB加密的密文, 在这个过程中,代理方得不到数据的明文信息,从而降低了数据泄露风险。而这两个密文所 对应的明文是一样的,使授权人A和被授权人B之间实现了数据共享。PRE应用在云存储系 统中,可以在保证用户数据安全性和隐私性的前提下,提高用户共享数据的灵活性。PRE是 对公钥加密体制的扩展,因此相应的PRE也有多种类型,CB-PRE、IB-PRE、AB-PRE和CL-PRE。 不同的云存储系统很可能会采用不同的PRE方案,那么系统内部的用户之间共享 数据会非常方便,而不同的PRE加密云存储系统之间的数据共享会存在问题。由于不同的PRE方案之间的密文一般是不能相互转化的,因此存在异构体制的数据共享问题。针对不 同公钥加密体制之间的密文转换,目前存在一些技术尝试解决这样的问题。2007年Matsuo 在"Proxyre-encryptionsystemsforidentity-basedEncryption"一文中提出了混合 代理重加密的概念,在其文章中提出的方案则解决了ElGamal类型的CBE到BB-IBE的密文 转换。接着Matsuo的方案,又有IBE至CBE、ABE至IBE、CLE至CBE的混合代理重加密方 案。此类的混合代理重加密方案能够使得使用不同公钥加密体制或者相同体制不同方案的 系统之间的密文共享变得更加方便。但是,目前已有的方法或技术都是针对具体特别的密 码方案进行转换,而且都需要对原加密云存储系统做或多或少的改变,并不能够完全解决 目前存在的异构加密云存储系统间的密文共享问题,并且在实际应用中不能很好的部署。
技术实现思路
针对现有技术的以上缺陷或改进需求,本专利技术提供一种通用的异构加密云间的数 据共享方法,来实现各种类型加密云之间的密文共享。本专利技术采用临时公私钥的方法实现 了通用的异构加密云存储之间的密文数据的代理重加密方案,异构的加密云存储可以是应 用了不同类型的加密体制或者是相同加密体制但不同的密码方案,而且最大程度的降低了 对原有加密云系统的改动,从而提高了实用性。 本专利技术提供,包括以下步骤: 步骤1两个异构加密云系统a、0各自运行其系统初始化算法,分别生成相应的 公开参数、秘密参数对(MPa,MSa)和(MPp,MSp),其中,MP表示主公开参数;MS表示主秘密 参数;并选取对称加密算法(K,SE,SD)作为用户数据加密算法,其中,K表示对称密钥空间; SE和SD分别表示对称加密和解密算法; 步骤2所述a、0系统各自的密钥生成中心为其系统内部的用户分发公私钥对 (PK,SK),其中,PK表示用户的公钥;SK表示用户的私钥; 步骤3所述0系统内第一用户为明文数据M生成会话对称密钥k,运行对称加密 算法加密所述明文数据M得到密文数据CA>1,运行加密算法生成所述会话对称密钥k对应的 密钥密文CA,2,然后将所述密文数据CA>1和所述密钥密文CA,2上传至云端存储; 步骤4判断所述密文数据CA>1是自取或是共享,若所述0系统内第一用户自己取 用所述密文数据CA>1则执行步骤5,否则执行步骤6 ; 步骤5所述0系统内第一用户从所述云端下载所述密文数据CA>1和所述密钥密 文CA,2,运行解密算法得到所述会话对称密钥k,再运行对称解密算法解密所述密文数据CA, i得到所述明文数据M; 步骤6判断接收方与所述0系统内第一用户是否在同一系统中,若是则执行步骤 7,否则执行步骤8; 步骤7所述0系统内第一用户首先运行重加密密钥生成算法生成重加密密钥 RKP.并将其发送至所述云端;再由所述云端运行重加密算法生成重加密密钥密文C' A; 所述接收方从所述云端取回所述0系统内第一用户的共享数据,运行重加密密 文解密算法得到所述会话对称密钥k,再运行对称解密算法解密所述密文数据CA>1得到所 述明文数据M; 步骤8若接收方为所述a系统内第一用户,为所述a系统内第一用户生成临时 公私钥(PKt,SKt)并生成系统间重加密密钥Hy,其中,PKt表示临时公钥;SKt表示临时私 钥; 步骤9所述云端解析所述系统间重加密密钥RKw得到临时重加密密钥 RKp.A+PKt,运行重加密算法得到重加密密钥密文C',将系统间重加密密文{c',ca}发送给 所述a系统内第一用户; 步骤10所述a系统内第一用户获取到所述重加密密文{c',Ca},先解析得到临 时密钥密文ca,运行所述a系统的解密算法得到所述临时私钥SKt,再运行所述0系统的 重加密密文解密算法得到所述会话对称密钥k,最后运行对称解密算法解密所述密文数据 CA>1得到所述明文数据M。 总体而言,通过本专利技术所构思的以上技术方案与现有技术相比,具有以下有益效 果: (1)异构加密云数据共享的通用性。将此方案应用在现有系统中时,该系统采用的 无论是何种代理重加密方案,用户需要安全共享其数据给系统外部用户时,只要该接收用 户所在系统是采用的公钥密码体制,均可实现这一数据共享操作; (2)方案部署的便捷性。由于本技术方案在扩展原有PRE加密存储系统时不需要 对原有正在运行的系统中的参数或者数据做修改,最大限度的保持了原有代理加密云存储 系统的优势,因此在部署此技术方案时具有很强的便捷性。【附图说明】 图1为本专利技术通用的异构加密云间的数据共享方法的流程图; 图2为本专利技术系统间重加密密钥生成的交互流程图。【具体实施方式】 为了使本专利技术的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对 本专利技术进行进一步详细说明。应当理解,此处所描述的具体本文档来自技高网
...
一种通用的异构加密云间的数据共享方法

【技术保护点】
一种通用的异构加密云间的数据共享方法,其特征在于,包括:步骤1两个异构加密云系统α、β各自运行其系统初始化算法,分别生成相应的公开参数、秘密参数对(MPα,MSα)和(MPβ,MSβ),其中,MP表示主公开参数;MS表示主秘密参数;并选取对称加密算法(K,SE,SD)作为用户数据加密算法,其中,K表示对称密钥空间;SE和SD分别表示对称加密和解密算法;步骤2所述α、β系统各自的密钥生成中心为其系统内部的用户分发公私钥对(PK,SK),其中,PK表示用户的公钥;SK表示用户的私钥;步骤3所述β系统内第一用户为明文数据M生成会话对称密钥k,运行对称加密算法加密所述明文数据M得到密文数据CA,1,运行加密算法生成所述会话对称密钥k对应的密钥密文CA,2,然后将所述密文数据CA,1和所述密钥密文CA,2上传至云端存储;步骤4判断所述密文数据CA,1是自取或是共享,若所述β系统内第一用户自己取用所述密文数据CA,1则执行步骤5,否则执行步骤6;步骤5所述β系统内第一用户从所述云端下载所述密文数据CA,1和所述密钥密文CA,2,运行解密算法得到所述会话对称密钥k,再运行对称解密算法解密所述密文数据CA,1得到所述明文数据M;步骤6判断接收方与所述β系统内第一用户是否在同一系统中,若是则执行步骤7,否则执行步骤8;步骤7所述β系统内第一用户首先运行重加密密钥生成算法生成重加密密钥RKβ,A→B,并将其发送至所述云端;再由所述云端运行重加密算法生成重加密密钥密文C’A;所述接收方从所述云端取回所述β系统内第一用户的共享数据(CA,1,C’A),运行重加密密文解密算法得到所述会话对称密钥k,再运行对称解密算法解密所述密文数据CA,1得到所述明文数据M;步骤8若接收方为所述α系统内第一用户,为所述α系统内第一用户生成临时公私钥(PKt,SKt)并生成系统间重加密密钥RKA→C,其中,PKt表示临时公钥;SKt表示临时私钥;步骤9所述云端解析所述系统间重加密密钥RKA→C得到临时重加密密钥RKβ,A→PKt,运行重加密算法得到重加密密钥密文C’,将系统间重加密密文{C’,Cα}发送给所述α系统内第一用户;步骤10所述α系统内第一用户获取到所述重加密密文{C’,Cα},先解析得到临时密钥密文Cα,运行所述α系统的解密算法得到所述临时私钥SKt,再运行所述β系统的重加密密文解密算法得到所述会话对称密钥k,最后运行对称解密算法解密所述密文数据CA,1得到所述明文数据M。...

【技术特征摘要】

【专利技术属性】
技术研发人员:金海徐君徐鹏邹德清
申请(专利权)人:华中科技大学
类型:发明
国别省市:湖北;42

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

1