一种改进的加密/解密内容和分发加密内容的方法和装置制造方法及图纸

技术编号:11534938 阅读:88 留言:0更新日期:2015-06-03 09:44
本发明专利技术公开了一种改进的加密/解密内容和分发加密内容的方法和装置。在一个实施例中,第一设备使用双向哈希链技术对内容进行加密,其中第一设备维护前向哈希链,第二设备维护反向哈希链,用于加密内容的内容密钥是使用前向和反向哈希链值而导出的。第二设备不知道用于产生前向哈希链的种子,因此不能产生内容密钥,这减少了加密内容被泄漏的可能性。另外,本发明专利技术提供了一种使用代理重加密(PRE)技术对内容进行再加密的技术,这使得加密内容可以提供给请求设备解密,而无需知道前向和反向哈希链。另外,本发明专利技术提供了一种具有细粒度访问控制的分发加密内容给请求设备的技术。

【技术实现步骤摘要】
一种改进的加密/解密内容和分发加密内容的方法和装置
本专利技术涉及内容加密技术。更具体地,本专利技术涉及使用双向哈希链(dualhashchains)和代理重加密(proxyre-encryption)的加密技术,用于共享加密内容的技术。
技术介绍
内容加密技术已广泛用于内容创建者和内容消费者之间的内容安全存储和分发或共享。随着加密的应用不断增长,各种加密技术的复杂性也增加了,因此加密和/或解密内容所需的计算资源也增加了,加密和/或解密内容的计算成本也增加了。此外,当由内容创建者加密的内容被分发给内容消费者或与内容消费者共享时,必须提供内容密钥给内容消费者,其中该内容密钥允许内容消费者对内容进行解密。但是,与内容消费者分享内容密钥会增加该内容消费者能够解密由内容创作者已加密的其他内容的可能性,或者会允许该内容消费者能访问内容创建者不想该内容消费者看到的内容。此外,当加密的内容存储在网络环境中,如在网络服务器或云服务器上,在提供该内容给内容消费者之前,内容提供者需要取回该内容并重新加密。
技术实现思路
本专利技术公开了一种改进的加密/解密内容和分发加密内容的系统、方法、装置和计算机可读存储介质。在一个实施例中,该系统、方法、装置和计算机可读存储介质使用双向哈希链技术生成内容密钥用于加密内容,其中第一设备(如与内容创建者相关联的设备)维护第一哈希链(如前向哈希链),第二设备(如存储加密内容的设备)维护第二哈希链(如反向哈希链)。双向哈希链是根据由第一设备生成的哈希链种子(如前向哈希链种子和反向哈希链种子)而产生,内容密钥是根据成对的哈希链值产生,其中每一对哈希链值包括通过散列(hashing)所述前向哈希链而得到的前向哈希链值和通过散列所述反向哈希链而得到的反向哈希链值。因此,实施例的双向哈希链技术可提供一种密钥演进技术,其中用于加密内容的内容密钥随时间演变或变化。另外,因为第二设备仅有权得到反向哈希链种子,所述第二设备无法生成内容密钥用于加密/解密已被第一设备加密的内容。因此,如果第二设备被损害,存储在第二设备上的由第一设备加密的内容可以保持安全。此外,该系统、方法、装置和计算机可读存储介质可以使用一个代理重加密(PRE)技术来授权给内容消费者访问加密内容。例如,当第三设备(如与内容消费者相关联的设备)请求访问已被第一设备加密的内容,第一设备可以使用PRE生成重加密密钥,用于重新加密所请求的内容,使得第三设备可以解密该内容,而不需要提供一个与第一设备有关的私钥给第二设备和/或第三设备。此外,该系统、方法、装置和计算机可读存储介质提供一种产生凭证以用于提供细粒度访问加密内容的技术,使得第一设备可授权访问特定的加密内容,而不授权访问所有加密内容。在一个实施例中,PRE技术的使用可以独立于双向哈希链技术。在其他实施例中,可以结合使用PRE技术和双向哈希链技术。前面已经概述了本专利技术的特征和技术优点,以下将详细描述本专利技术以便更好的理解。本专利技术的其他特征和优点会在以下描述,并构成本专利技术权利要求主题。本领域技术人员应该理解,在此披露的概念和具体实施例可以用作为改变或设计实现与本专利技术同一目的的其他结构的基础。本领域技术人员应该认识到这些等同结构并不偏离由所附权利要求确定的本专利技术精神和范围。那些相信是本专利技术特征的新颖性特征,作为其结构和运行方法,以及其他目的和优点,将会通过以下描述及其附图而得到更好的理解。但是,应当知道,每个附图都仅仅是为了描述的目的,并不意在限制本专利技术。【附图说明】为了更完整地理解本专利技术,请参考以下描述及其附图。图1是一个实施例的对内容进行加密并存储该加密内容的系统的梯形图。图2是产生双向哈希链并用于产生内容密钥以加密和解密内容的一个说明性实施例。图3是一个实施例的初始化设备用于加密内容的方法的流程图。图4是一个实施例的产生内容密钥用于第一设备加密内容的方法的流程图。图5是一个实施例的对使用从前向哈希链和反向哈希链产生的内容密钥进行加密的内容进行解密的方法的流程图。图6是一个实施例的初始化哈希链以生成内容密钥进行加密内容的方法的流程图。图7是一个实施例的更新反向哈希链值的方法的流程图。图8是一个实施例的使用预先计算的反向哈希链值来更新反向哈希链值的方法的流程图。图9是一个说明性实施例的更新一个更新周期以产生反向哈希链值的方法的流程图。图10显示一个实施例的用于共享已加密内容的系统的梯形图。图11是一个实施例的根据加密技术以生成加密的医疗记录的方法的流程图。图12是一个实施例的产生授权凭证以访问加密内容的方法的流程图。图13是一个实施例的验证凭证并提供加密内容的访问授权的方法的流程图。【具体实施方式】图1是一个实施例的对内容进行加密并存储该加密内容的系统100的梯形图。如图1所示,系统100包括第一设备110和第二设备120。在一个实施例中,第一设备110和第二设备120可以通过一个或多个有线和/或无线网络提供的有线或无线链路进行通信连接。第一设备110可以使用代理重加密(PRE)和双哈希链技术以产生并加密内容,并且将加密内容存储在第二设备120中,这会在下面有更详细的描述。此外,第一设备110还可以验证来自其它设备(图1中未示出)的要求访问存储在第二设备120上的加密内容的请求,并产生授权证书,允许另一设备细粒度访问(finegrainedaccess)存储在第二设备120中的特定的加密内容,请参考图10-13的说明。在一个实施例中,第一设备110可以是个人计算设备、便携式计算设备、平板计算设备、智能电话、个人数字助理(PDA)设备、智能手表设备、服务器、或其他能实现实施例中第一设备110功能的设备。另外,第一设备110可以包括一个或多个处理器和一个存储器。所述一个或多个处理器可以包括一个或多个数字信号处理器(DSP)、一个或多个中央处理单元(CPU)、具有多个处理核的单个CPU、一个或多个专用集成电路(ASIC)、或其他形式的能够处理数据以实现实施例中第一设备110功能的电路和/或逻辑。存储器可以包括只读存储器(ROM)、随机存取存储器(RAM)、硬盘驱动器器(HDD)、固态驱动器(SSD)、可编程存储器设备(如可擦除可编程ROM(EPROM)和电可擦除可编程ROM(EEPROM)等)、和/或能以持久或非持久方式存储数据的其他存储设备。在一个实施例中,存储器可以存储指令,当第一设备110的处理器执行该指令时,会使第一设备110运行如图1-13所描述的与第一设备110相关的程序。在一个实施例中,第二设备120可以是个人计算设备、便携式计算设备、平板计算设备、智能电话、个人数字助理(PDA)设备、智能手表设备、服务器、或其他能实现实施例中第二设备120功能的设备。另外,第二设备120可以包括一个或多个处理器和一个存储器。所述一个或多个处理器可以包括一个或多个数字信号处理器(DSP)、一个或多个中央处理单元(CPU)、具有多个处理核的单个CPU、一个或多个专用集成电路(ASIC)、或其他形式的能够处理数据以实现实施例中第二设备120功能的电路和/或逻辑。存储器可以包括只读存储器(ROM)、随机存取存储器(RAM)、硬盘驱动器器(HDD)、固态驱动器(SSD)、可编程存储器设备(如可擦除可编程RO本文档来自技高网...
一种改进的加密/解密内容和分发加密内容的方法和装置

【技术保护点】
一种改进的加密/解密内容和分发加密内容的方法,其特征在于,包括:由第一设备产生前向种子和反向种子,其中所述前向种子和所述反向种子用于产生前向哈希链和反向哈希链,其中从所述前向哈希链和所述反向哈希链导出的哈希链值,用来产生用于加密和解密内容的内容密钥;由所述第一设备使用代理重加密技术对所述前向种子和所述反向种子进行加密,以产生加密的种子信息;由所述第一设备将所述加密的种子信息和所述反向种子传输到第二设备,其中所述第二设备存储所述反向种子和所述加密的种子信息;由所述第一设备使用第一内容密钥对第一内容进行加密,以产生第一加密内容,其中所述第一内容密钥是根据与所述前向哈希链相关的前向哈希链值和与所述反向哈希链相关的反向哈希链值而产生的,其中所述反向哈希链值是从所述第二设备接收到的。

【技术特征摘要】
2015.02.03 US 14/613,0621.一种改进的加密/解密内容和分发加密内容的方法,其特征在于,包括:由第一设备产生前向种子和反向种子,其中所述前向种子和所述反向种子用于产生前向哈希链和反向哈希链,其中从所述前向哈希链和所述反向哈希链导出的哈希链值,用来产生用于加密和解密内容的内容密钥;由所述第一设备使用代理重加密技术对所述前向种子和所述反向种子进行加密,以产生加密的种子信息;由所述第一设备将所述加密的种子信息和所述反向种子传输到第二设备,其中所述第二设备存储所述反向种子和所述加密的种子信息;由所述第一设备使用第一内容密钥对第一内容进行加密,以产生第一加密内容,其中所述第一内容密钥是根据与所述前向哈希链相关的前向哈希链值和与所述反向哈希链相关的反向哈希链值而产生的,其中所述反向哈希链值是从所述第二设备接收到的。2.如权利要求1所述的方法,其特征在于,所述方法还包括:通过使用单向函数对所述前向哈希链进行散列,产生第二前向哈希链值。3.如权利要求2所述的方法,其特征在于,所述方法还包括:根据所述第二前向哈希链值和来自所述第二设备的当前反向哈希链值,产生第二内容密钥。4.如权利要求3所述的方法,其特征在于,所述第二设备通过使用所述单向函数对所述反向哈希链进行散列以产生所述当前反向哈希链值。5.如权利要求4所述的方法,其特征在于,对所述反向哈希链进行散列以产生所述当前反向哈希链值的频率,和对所述前向哈希链进行散列以产生当前前向哈希链值的频率,是不同的。6.如权利要求2所述的方法,其特征在于,所述方法还包括:存储第一散列计数,所述第一散列计数是使用所述单向函数对所述前向哈希链进行散列的次数,其中每次使用所述单向函数对所述前向哈希链进行散列,所述第一散列计数的值就更新一次;存储第二散列计数,所述第二散列计数是从所述第二设备接收到所述反向哈希链值的次数,其中每次从所述第二设备接收到新的反向哈希链值,所述第二散列计数的值就更新一次。7.如权利要求6所述的方法,其特征在于,所述方法还包括:提供所述第一加密内容、所述第一散列计数的当前值、所述第二散列计数的当前值到所述第二设备。8.如权利要求6所述的方法,其特征在于,所述方法还包括:一旦从所述第二设备接收到所述反向哈希链值,就确定所述反向哈希链值是否是新的反向哈希链值;一旦确定所述反向哈希链值是新的反向哈希链值,就更新所述第二散列计数。9.如权利要求6所述的方法,其特征在于,所述方法还包括:每次使用所述单向函数对所述前向哈希链进行散列,就更新所述第一散列计数。10.如权利要求1所述的方法,其特征在于,所述第一内容密钥是根据对所述前向哈希链值和所述反向哈希链值进行按位异或运算而产生的。11.如权利要求1所述的方法,其特征在于,所述方法还包括:从第三设备接收访问所述第一加密内容的请求,其中所述请求包括与所述第三设备的身份有关的身份信息;确定所述身份信息是否有效;一旦确定所述身份信息有效,就:产生重加密密钥和机制;使用数字签名签署所述机制;发送授权消息到所述第三设备,其中所述授权消息包括所述重加密密钥、所述机制和所述数字签名,其中所述授权消息可以由所述第三设备提供给所述第二设备,以使得所述第三设备可以访问所述第一加密内容。12.如权利要求11所述的方法,其特征在于,所述方法还包括:一旦确定所述身份信息有效,就确定是否授权所述第三设备访问所述第一加密内容,其中一旦确定授权所述第三设备访问所述第一加密内容,就产生所述重加密密钥、所述机制和所述数字签名。13.如权利要求11所述的方法,其特征在于,所述授权消息授权所述第三设备访问至少所述第一加密内容,并拒绝所述第三设备访问其他加密内容。14.如权利要求1所述的方法,其特征在于,使用代理重加密技术加密所述种子信息包括:根据与所述第一设备有关的公钥,加密所述种子信息。15.一种改进的加密/解密内容和分发加密内容的装置,其特征在于,包括:至少一个处理器,其被设置以:产生前向种子和和反向种子,其中所述前向种子和所述反向种子用于产生前向哈希链和反向哈希链,其中从所述前向哈希链和所述反向哈希链导出的哈希链值,用来产生用于加密和解密内容的内容密钥;使用代理重加密技术对所述前向种子和所述反向种子进行加密,以产生加密的种子信息;将所述加密的种子信息和所述反向种子传输到远程设备,其中所述远程设备存储所述反向种子和所述加密的种子信息;使用第一内容密钥对第一内容进行加密,以产生第一加密内容,其中所述第一内容密钥是根据与所述前向哈希链相关的前向哈希链值和与所述反向哈希链相关的反向哈希链值而产生的,其中所述反向哈希链值是从所述远程设备接收到的;和连接到所述处理器的存储器。16.如权利要求15所述的装置,其特征在于,所述至少一个处理器被设置以使用单向函数对所述前向哈希链进行散列,产生第二前向哈希链值。17.如权利要求16所述的装置,其特征在于,所述至少一个处理器被设置以根据所述第二前向哈希链值和来自所述远程设备的当前反向哈希链值,产生第二内容密钥。18.如权利要求17所述的装置,其特征在于,所述远程设备通过使用所述单向函数对所述反向哈希链进行散列以产生所述当前反向哈希链值。19.如权利要求18所述的装置,其特征在于,对所述反向哈希链进行散列以产生所述当前反向哈希链值的频率,和对所述前向哈希链进行散列以产生当前前向哈希链值的频率,是不同的。20.如权利要求16所述的装置,其特征在于,所述至少一个处理器被设置以:存储第一散列计数,所述第一散列计数是使用所述单向函数对所述前向哈希链进行散列的次数,其中每次使用所述单向函数对所述前向哈希链进行散列,所述第一散列计数的值就更新一次;存储第二散列计数,所述第二散列计数是从所述远程设备接收到所述反向哈希链值的次数,其中每次从所述远程设备接收到新的反向哈希链值,所述第二散列计数的值就更新一次;提供所述第一加密内容、所述第一散列计数的当前值、所述第二散列计数的当前值到所述远程设备;每次使用所述单向函数对...

【专利技术属性】
技术研发人员:陈镇辉韩文明
申请(专利权)人:香港应用科技研究院有限公司
类型:发明
国别省市:中国香港;81

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

1