对称密钥更新方法、装置和对称加密方法与对称解密方法

文档序号:7917284阅读:335来源:国知局

专利名称::对称密钥更新方法、装置和对称加密方法与对称解密方法
技术领域
:本发明涉及加密技术,尤其涉及一种对称密钥更新方法和对称密钥更新装置,以及对称加密方法和对称解密方法。
背景技术
:网络传输安全是开放性互联网的一个热点问题。对数据进行加密和消息摘要运算是最常用的传输安全保障措施。数据存储和传输安全保障中的常用的算法包括对称加密算法和非对称加密算法,其中,对称加密算法加、解密时使用相同密钥。对称加密算法具有运算速度快、可支持较长的密钥长度等优点。目前常用的加密算法都是对外公开的,密钥是唯一不公开的信息,因此算法的安全性主要取决于密钥的安全性。防破解的主要措施包括选用长度尽量长和组成尽量复杂的密钥,以及定期更新密钥。对称加密算法要求加解密双方的密钥保持一致,因此,密钥管理是使用这类算法时的一个难题。目前大部分应用中,密钥需要人工更新,工作量大,因此更新周期一般都比较长,数月、数年甚至于根本就不更新。加密算法的破解主要是时间问题,在已知加密算法和密文的情况下,密钥更新周期越长,意味着风险越大。
发明内容本发明要解决的一个技术问题是提供一种具有较高安全性的对称密钥的更新方法。本发明提供一种对称密钥的更新方法,包括步骤生成三元密钥组,该三元密钥组包括加密密钥、用于选择加/解密算法的参数和用于选择消息摘要算法的参数;将三元密钥组发送给密钥使用者。5根据本发明的对称密钥的更新方法的一个实施例,该方法在密钥更新前还包括步骤在密钥使用者和密钥生成者之间协商加解密算法和/或消息摘要算法的集合。根据本发明的对称密钥的更新方法的一个实施例,该方法在密钥更新前还包括步骤在密钥使用者和密钥生成者之间建立安全的连接。其中,安全的连接可以是加密套接字协议层SSL,或者,该安全的连接发送的数据由预先配置的对称加密算法、消息摘要算法和密钥加密。根据本发明的的对称密钥的更新方法的一个实施例,该方法还包括步骤将该三元密钥组的生效时间发送给密钥使用者,并且在生效时间启用该三元密钥组。本发明要解决的另一个技术问题是提供一种具有较高安全性的对称密钥的更新装置。本发明提供的对称密钥的更新装置,包括生成模块,用于生成三元密钥组,该三元密钥组包括加密密钥、用于选择加/解密算法的参数和用于选择消息摘要算法的参数;发送模块用于将该三元密钥组发送给密钥使用者。根据本发明的对称密钥的更新装置的一个实施例,该更新装置还包括协商模块,用于接收加解密算法和/或消息摘要算法的集合,确定并返回自身支持的加解密算法和/或消息摘要算法的交集。发送模块还用于发送所述三元密钥组的生效时间到密钥使用者。本发明还提供一种对称加密方法,包括步骤根据三元密钥组确定加密密钥、加密算法和消息摘要算法;根据所述加密密钥和加密算法对数据进行加密,并通过所述消息摘要算法生成消息摘要。根据本发明的对称加密方法的一个实施例,该三元密钥组包括整数型的加密算法参数和摘要算法参数。根据三元密钥组确定密钥算法和消息摘要算法的步骤包括对加密算法参数对加密算法的个数取模,选择算法序号对应于余数的加密算法;对摘要算法参数对消息摘要算法的个数取模,选择算法序号对应于余数的消息摘要算法。本发明还提供一种对称解密方法,包括步骤根据三元密钥组确定解密密钥、解密算法和消息摘要算法;根据所述解密密钥和解密算法对数据进行解密,通过消息摘要算法验证数据的完整性。根据本发明的对称解密方法的一个实施例,三元密钥组包括整数型的加密算法参数和摘要算法参数。冲艮据三元密钥组确定密钥算法和消息摘要算法的步骤包括对加密算法参数对解密算法的个数取模,选择算法序号对应于余数的解密算法;对摘要算法参数对消息摘要算法的个数取模,选择算法序号对应于余数的消息摘要算法。根据本发明的对称解密方法的一个实施例,还包括步骤保存三元密钥组的历史记录;如果当前三元密钥组对数据解密和验证失败,则使用三元密钥组的历史记录进行数据解密和验证。本发明提供的对称密钥的更新方法和装置,更新的密钥信息包括加解密算法和消息摘要算法相关的参数,有效保障数据传输和存储的安全,具有较高的安全性。图1为根据本发明的对称密钥的更新方法的一个实施例的流程图;图2为根据本发明的对称密钥的更新方法的另一个实施例的流程图;图3为根据本发明的对称加密方法的一个实施例的流程图;图4为根据本发明的对称解密方法的一个实施例的流程图;图5为单点登录的应用例的流程图;图6为根据本发明的对称密钥的更新装置的一个实施例的结构示意图;图7为根据本发明的对称密钥的更新装置的另一个实施例的结构示意图。具体实施方式下面参照附图对本发明进行更全面的描述,其中说明本发明的示例性实施例。7在下文的描述中,通常需要由加解密双方中的一方负责算法和密钥管理,为描述方便起见,将管理算法和密钥的一方称为密钥管理者,另一方称为密钥使用者。同时需要指出的是,在一些应用中,加解密可由一方实现。图1为根据本发明的对称密钥的更新方法的一个实施例的流程图。如图1所示,在步骤101,密钥管理者生成三元密钥组,三元密钥组包括加密密钥、用于选择加/解密算法的参数和用于选择消息摘要算法的参数。其中,加密密钥可由任意可见字符组成,且长度较长,用于选择算法的参数可以用整数表示。在步骤103,密钥管理者将三元密钥组发送给密钥使用者。密钥使用者用获得的新的三元密钥组更新对称加解密算法的密钥、加解密算法和消息摘要算法。图2为根据本发明的对称密钥的更新方法的另一实施例的流程图。如图2所示,在步骤201,在密钥管理者和密钥使用者之间建立安全的连接。加、解密双方建立一个连接以协商、更新算法和密钥。该连接应采用可靠、安全的传输方式,确保算法和密钥数据传输的可靠性和安全性。连接的可靠性可以由传输协议保障,如TCP协议。连接的安全性保障可以由双方预先配置的对称加密算法、消息摘要算法和密钥对协商/更新消息进行加密、消息摘要运算保障,并在使用过程中以本方案描述的方法自动更新,也可以由其他安全措施保障,如SSL。需要注意的是,对一个服务器实现加解密的情形,不需要建立连接。在步骤203,密钥管理者和密钥使用者之间协商加解密算法和消息摘要算法。加解密双方建立连接后,密钥使用者将自己支持的加密和消息摘要算法的集合发送给密钥管理者,密钥管理者从该集合中找出与自己支持的算法的交集,并通知密钥使用者,双方确认后本阶段结束。需要指出的是,算法协商的步骤是可选的。如果预先配置了双方支持的算法集,则不需要进行协商;对一个服务器实现加解密的情形,也不需要协商。在步骤205,密钥管理者生成三元密钥组,将三元密钥组及生效起始时间发给密钥使用者。生效起始时间可以用特殊值表示立即生效。在步骤207,加解密双方在约定的生效起始时间启用新的三元密钥组,对传输数据进行加/解密和消息摘要运算。可以将原三元密钥组记录到历史记录中,双方维护若干个最近的历史三元密钥组及其生效起止时间,以便对算法更新前已经加密的数据进行解密。解密方在解密和验证时,如果用当前使用的三元密钥组解密和验证失败,可以逆序回溯若干个历史记录,尝试使用历史三元密钥组解密和验证。算法更新可以由管理者控制,按一定的周期更新,如每天更新一次,或者按照需要随时更新。根据本发明的对称密钥的更新方法的一个实施例,密钥管理者可独立地产生三个随机数,其中一个作为加密密钥,另两个分别用于选择加(解)密算法和消息摘要算法。其中,密钥可由字符组成,长度较长。根据随机数选择加密算法和消息摘要算法的方法可以采用但不限于以下方法产生整数型的随机数,或者将字符串型的随机数转化为整数,然后对算法个数取模,余数对应于算法的序号,从而选择出相应的算法。如有n个加密算法A。、A'……A",产生的随机数为i,则第(i。/。n)个算法即为本次选择的算法。图3为根据本发明的对称加密方法的一个实施例的流程图。如图3所示,在步骤301,根据三元密钥组确定加密密钥、加密算法和消息摘要算法。在步骤303,根据加密密钥和加密算法对数据进行加密,并通过消息摘要算法生成消息摘要。根据本发明的对称加密方法的一个实施例,三元密钥组包括整数型的加密算法参数和摘要算法参数,根据三元密钥组确定密钥算法和消息摘要算法的步骤包括对所述加密算法参数对加密算法的个数取模,选择算法序号对应于余数的加密算法;对所述摘要算法参数对消息摘要算法的个数取模,选择算法序号对应于余数的消息摘要算法。图4为根据本发明的对称解密方法的一个实施例的流程图。如图4所示,在步骤401,根据三元密钥组确定解密密钥、解密算法和消息摘要算法。在步骤403,根据解密密钥和解密算法对数据进行解密,通过消息摘要算法验证数据的完整性。在步骤405,判断解密/验证是否成功,如果验证成功,则解密过程结束,否则执行步骤407。在步骤407,查找三元密钥组的历史记录,判断是否存在历史记录(步骤409),如果存在,则继续执行步骤411,否则,验证失败。在步骤411,用历史记录中的三元密钥组解密/验证数据。需要指出的是,在另一个实施例中,可以不包含步骤405至步骤411。根据本发明的对称解密方法的一个实施例,三元密钥组包括整数型的加密算法参数和摘要算法参数。根据三元密钥组确定密钥算法和消息摘要算法的步骤包括对加密算法参数对解密算法的个数取模,选择算法序号对应于余数的解密算法;对摘要算法参数对消息摘要算法的个数取模,选择算法序号对应于余数的消息摘要算法。下面介绍本发明的可变三元密钥组生成及自动更新方法在单点登录中的一个应用例。单点登录是一种方便用户访问多个系统的技术,用户只需在登录时进行一次注册,就可以在多个系统间自由穿梭,不必重复输入用户名和口令来确定身份。图5示出该单点登录的流程图。如图5所示,用户通过客户端访问应用系统受限资源(步骤501)。如果尚未登录,应用系统将请求重定向到认证中心,并将客户端的cookie传递给认证中心(步骤503、505)。认证中心检查客户端cookie的合法性(步骤507),如果cookie有效,即cookie记录用户此前已登录,且尚在有效期,该用户通过验证;否则执行认证流程,要求用户输入用户名、口令进行验证(步骤509)。如果认证通过,为客户端设置或者更新cookie(步骤511、513),将认证结果重定向到应用系统(步骤515)。应用系统检查认证结果(步骤517),用户验证后,决定是否允许访问(步骤519)。如果认证通过,登录其它相关的应用系统时,只须-验证客户端cookie,就可验证通过,不需要再次输入用户名、口令。在上述流程中,该技术依赖于认证中心在客户端记录的cookie,因此必须对cookie采取加密和防墓改的安全保障措施,同时,认证结果从认证中心重定向到应用系统过程中,也须确保传输的安全性。因此,cookie必须在认证中心经加密、消息摘要运算后,发放、存储于客户端。验证时,cookie通过重定向传回给认证中心,由认证中心进行解密验证;用户身份认证结果则由认证中心经加密和消息摘要运算后,传输给应用系统,由应用系统解密认证结果。下表1示出了要加密数据以及加解密双方<table>tableseeoriginaldocumentpage11</column></row><table>表l上述应用例采用本发明的可变三元密钥组生成和自动更新技术,确保cookie和认证结果的安全性本实例需维护两组三元密钥组,一组由认证中心单独维护,用于cookie的加、解密;另一组由认证中心和应用系统共同维护,i人证中心加密i人证结果,应用系统解密该结果。图6为根据本发明的对称密钥的更新装置的一个实施例的结构示意图。如图6所示,该更新装置包括生成模块61和发送模块62。其中,生成模块61用于生成三元密钥组,该三元密钥组包括加密密钥、用于选择加/解密算法的参数和用于选择消息摘要算法的参数;发送模块62用于将所述三元密钥组发送给密钥使用者。图7为根据本发明的对称密钥的更新装置的另一个实施例的结构示意图。如图7所示,该更新装置包括协商模块70、生成模块71、发送模块72和可选的记录存储模块73。其中,协商模块70用于接收加解密算法和/或消息摘要算法的集合,确定并返回自身支持的加解密算法和/或消息摘要算法的交集。生成模块71和发送模块72的功能和图6中的对应模块相似。记录存储模块73用于存储三元密钥组的历史记录。根据本发明的更新装置的一个实施例,发送模块还用于发送三元密钥组的生效时间到密钥使用者。本发明的对称密钥的加解密方法及其更新方法和装置,三元密钥组中除了包括密钥,还包括用于选择加/解密算法和消息摘要算法的参数,采用可变的加密和消息摘要算法,算法和密钥都可独立变化,有效保障数据传输和存储的安全性。本发明的对称密钥的更新方法和装置,可以自动更新三元密钥组,可按需要灵活设置更新周期,且更新过程不需要人工干预,大大简化算法和密钥管理,提高加密保障的安全性。此外,本发明的方法和装置实现简单,加解密双方增加少量软件逻辑即可实现,且运算要求不高,不需要其它额外的投资。综上所述,本发明采用可变三元密钥组对数据进行加密和消息摘要运算,且三元密钥组定期更新,可以有效保障数据传输和存储的安全性。本发明的描述是为了示例和描述起见而给出的,而并不是无遗漏的或者将本发明限于所公开的形式。很多修改和变化对于本领域的普通技术人员而言是显然的。选择和描述实施例是为了更好说明本发明的原理和实际应用,并且使本领域的普通技术人员能够理解本发明从而设计适于特定用途的带有各种修改的各种实施例。1权利要求1.一种对称密钥的更新方法,其特征在于,包括步骤生成三元密钥组,所述三元密钥组包括加密密钥、用于选择加/解密算法的参数和用于选择消息摘要算法的参数;将所述三元密钥组发送给密钥使用者。2.根据权利要求1所述的对称密钥的更新方法,其特征在于,在密钥更新前,还包括步骤在密钥使用者和密钥生成者之间协商加解密算法和/或消息摘要算法的集合。3.根据权利要求1或2所述的对称密钥的更新方法,其特征在于,在密钥更新前,还包括步骤在密钥使用者和密钥生成者之间建立安全的连接。4.根据权利要求3所述的对称密钥的更新方法,其特征在于,所述安全的连接为加密套接字协议层SSL,或者,所述安全的连接发送的数据由预先配置的对称加密算法、消息摘要算法和密钥加密。5.根据权利要求1或2所述的对称密钥的更新方法,其特征在于,还包括步骤将所述三元密钥组的生效时间发送给密钥^f吏用者;在所述生效时间启用所述三元密钥组。6.根据权利要求1所述的对称密钥的更新方法,其特征在于,还包括步骤保存三元密钥组的历史记录。7.—种对称密钥的更新装置,其特征在于,包括生成模块,用于生成三元密钥组,所述三元密钥组包括加密密钥、用于选择加/解密算法的参数和用于选择消息摘要算法的参数;发送模块,用于将所述三元密钥组发送给密钥使用者。8.根据权利要求7所述的对称密钥的更新装置,其特征在于,还包括协商模块,用于接收加解密算法和/或消息摘要算法的集合,确定并返回自身支持的加解密算法和/或消息摘要算法的交集。9.根据权利要求7所述的对称密钥的更新装置,其特征在于,所述发送模块还用于发送所述三元密钥组的生效时间到密钥使用者。10.根据权利要求7至9中任意一项所述的对称密钥的更新装置,其特征在于,还包括记录存储模块,用于存储三元密钥组的历史记录。11.一种对称加密方法,其特征在于,包括步骤根据三元密钥组确定加密密钥、加密算法和消息摘要算法;根据所述加密密钥和加密算法对数据进行加密,并通过所述消息摘要算法生成消息摘要。12.根据权利要求11所述的对称加密方法,其特征在于,所述三元密钥组包括整数型的加密算法参数和摘要算法参数;所述根据三元密钥组确定密钥算法和消息摘要算法的步骤包括对所述加密算法参数对加密算法的个数取模,选择算法序号对应于余数的加密算法;对所述摘要算法参数对消息摘要算法的个数取模,选择算法序号对应于余数的消息摘要算法。13.—种对称解密方法,其特征在于,包括步骤根据三元密钥组确定解密密钥、解密算法和消息摘要算法;根据所述解密密钥和解密算法对数据进行解密,通过所述消息摘要算法验证数据的完整性。14.根据权利要求13所述的对称解密方法,其特征在于,所述三元密钥组包括整数型的加密算法参数和摘要算法参数;所述根据三元密钥组确定密钥算法和消息摘要算法的步骤包括对所述加密算法参数对解密算法的个数取模,选择算法序号对应于余数的解密算法;对所述摘要算法参数对消息摘要算法的个数取模,选择算法序号对应于余数的消息摘要算法。15.根据权利要求13或14所述的对称解密方法,其特征在于,还包括步骤保存三元密钥组的历史记录;如果当前三元密钥组对数据解密和验证失败,则使用三元密钥组的历史记录进行数据解密和验证。全文摘要本发明公开一种对称密钥更新方法和对称密钥更新装置,以及对称加密方法和对称解密方法。该对称密钥的更新方法包括步骤生成三元密钥组,该三元密钥组包括加密密钥、用于选择加/解密算法的参数和用于选择消息摘要算法的参数;将该三元密钥组发送给密钥使用者。密钥使用者通过三元密钥组确定加/解密算法和消息摘要算法,进行加/解密操作。本发明的方法和装置采用可变的加密和消息摘要算法,算法和密钥都可独立变化,有效保障数据传输和存储的安全性。文档编号H04L29/06GK101325483SQ200810134568公开日2008年12月17日申请日期2008年7月28日优先权日2008年7月28日发明者刘国荣,庄一嵘,金华敏申请人:中国电信股份有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1