一种应用于分布式系统的加密方法及系统技术方案

技术编号:15749929 阅读:84 留言:0更新日期:2017-07-03 15:56
本发明专利技术提供一种应用于分布式系统的加密方法及系统,通过根据用户标识、关键字以及安全等级标识获取加密因子,并根据加密因子对待加密数据进行加密,使得整个加密过程实现了将算法密钥融合到算法中的加密技术。充分利用用户的个人信息以及社交信息获取对应的加密因子,使得加密因子因用户的需求而动态变动,从而在终端产生出不同的加密算法,不仅使得用户能够有更为自主的选择加密方法,而且能够进一步提升加密的复杂度,提升了数据安全性。进一步地,加密因子通过提供混合表对终端获取的字符进行加密,进一步提升了数据安全性。

【技术实现步骤摘要】
一种应用于分布式系统的加密方法及系统
本专利技术涉及数据安全领域,尤其涉及一种应用于分布式系统的加密方法及系统。
技术介绍
随着科学技术的发展,人们对电脑技术的研究更加地全面,对机密信息的探测途径越来越多。对于密码算法而言,传统仅局限于通信信道中信息的截取与分析已经无法满足攻击者的需求,他们已经逐渐开始将目标定位于密码算法的运行平台(如个人电脑、服务器等),通过越来越先进的技术对算法运行时的内部状态进行观测、改动等操作,从而获取机密信息,破坏密码算法所要保护的机密性、完整性、不可否认性等。这样的攻击方式被称之为白盒攻击。传统的密码算法在这样的攻击环境的平台上运行毫无安全性可言,因此需要研究开发出一种新的密码技术,能够在不可信任平台上运行时保证所需的安全性,达到更高级别信息安全的目的。白盒密码即是这样一种密码技术,通过结合代数、概率、混淆、软件保护、信息隐藏等知识,研究如何设计安全的白盒密码算法和白盒攻击环境下密码算法的安全评估;用于保护密码算法及其相关软件在不可信任环境下的安全执行;白盒密码是对传统黑盒密码安全概念的一次颠覆,它将更加全面地保护机密信息。白盒密码可以应用到任何在不可信任的运行平台上执行的密码方案,因此其应用前景非常的广泛,可以应用于数字内容的安全发行,为内容创作者和提供者的数字资产提供防止盗窃或滥用的安全保护;可以应用于无线自组网络、云计算等的安全计算,为不可信任终端处理机密信息提供防观测、防篡改、防窃取等服务;可以应用于软件保护,破坏软件设计的原有的结构从而防止逆向工程等等。然而,在白盒密码的技术实现方面,到目前为止还未有公认的安全的且实现效率较高的白盒密码方案出现,因此,设计能够抵抗白盒攻击的安全有效的密码算法迫在眉睫,是目前保证网络安全的一个重要手段。
技术实现思路
为了解决上述技术问题,本专利技术提供一种应用于分布式系统的加密方法及系统。本专利技术是以如下技术方案实现的:一种加密方法,所述方法应用于服务器-客户端架构或者服务器-浏览器架构的分布式系统之中,所述方法包括:服务器获取用户的数据加密请求,所述数据加密请求包括关键字、安全等级标识、待加密数据的长度和用户标识;根据所述关键字和用户标识获取用户所在的一个或者多个群组标识;所述群组标识包括所述群组标识中的群组所具备的安全等级;若获取到的群组标识为多个,则从中按照约定算法选择一个目标群组标识;若获取到的群组标识只有一个,则获取到的群组标识即为目标群组标识;所述目标群组的安全等级不低于所述安全等级标识表征的安全等级;按照预设算法根据所述用户标识、目标群组标识和所述待加密数据的长度得到特征值;所述特征值算法为p=Mid1+Nid2+mod(L/1024),其中p表示特征值,Mid1为用户标识对应的特征值第一分量,Nid2为目标群组标识对应的特征值第二分量,L为待加密数据长度,以kb为单位;根据所述特征值在预设的加密算法集合中抽取加密因子并将所述加密因子传输至客户端,所述加密因子混合表、包括第一混合种子、第二混合种子、第一加密算法和第二加密算法;客户端按照所述混合表设置按键与输入的字符的对应关系,根据所述对应关系和输入的按键序列获取字符,并将所述字符存储至字符输入区;按照预设的第一混合算法将字符输入区的字符与所述第一混合种子混合以生成目标字符串;根据所述第一加密算法对所述目标字符串进行加密得到加密字符串;按照预设的第二混合算法将所述加密字符串和所述第二混合种子进行混合以得到混合加密字符串;获取自身硬件信息,根据所述硬件信息和所述混合加密字符串生成加密密钥;根据所述第二加密算法将所述混合加密字符串,结合所述加密密钥运算得到加密密文,将所述加密密文发送至服务器。进一步地,所述第一混合种子和第二混合种子可以包括一个或多个字符串的组合,所述字符串可以包括英文、数字、符号及其组合。进一步地,若所述第一加密算法为公钥加密算法,则所述加密因子还包括加密密钥,不同的第一加密算法所对应的公钥加密算法的保密级别和得到的加密密钥长度不同。进一步地,所述第一加密算法是异或运算或者对称算法等任意一种可逆运算方法;所述第二加密算法是SM3、MD5等杂凑算法进行运算得到的算法。进一步地,所述待加密数据可以为应用于某种加密算法的密钥。进一步地,所述特征值为正整数。一种加密系统,所述系统包括服务器和客户端,所述服务器包括:请求获取模块,用于服务器获取用户的数据加密请求,所述数据加密请求包括关键字、安全等级标识、待加密数据的长度和用户标识;目标群组标识获取模块,用于根据所述关键字和用户标识获取用户所在的一个或者多个群组标识;所述群组标识包括所述群组标识中的群组所具备的安全等级;若获取到的群组标识为多个,则从中按照约定算法选择一个目标群组标识;若获取到的群组标识只有一个,则获取到的群组标识即为目标群组标识;所述目标群组的安全等级不低于所述安全等级标识表征的安全等级;特征值获取模块,用于按照预设算法根据所述用户标识、目标群组标识和所述待加密数据的长度得到特征值;所述特征值算法为p=Mid1+Nid2+mod(L/1024),其中p表示特征值,Mid1为用户标识对应的特征值第一分量,Nid2为目标群组标识对应的特征值第二分量,L为待加密数据长度,以kb为单位;加密因子处理模块,用于根据所述特征值在预设的加密算法集合中抽取加密因子并将所述加密因子传输至客户端,所述加密因子包括混合表、第一混合种子、第二混合种子、第一加密算法和第二加密算法;所述客户端包括:字符输入模块,用于按照所述混合表设置按键与输入的字符的对应关系,根据所述对应关系和输入的按键序列获取字符,并将所述字符存储至字符输入区;目标字符串生成模块,用于按照预设的第一混合算法将字符输入区的字符与所述第一混合种子混合以生成目标字符串;混合加密字符串得到模块,用于根据所述第一加密算法对所述目标字符串进行加密得到加密字符串;按照预设的第二混合算法将所述加密字符串和所述第二混合种子进行混合以得到混合加密字符串;加密密钥生成模块,用于获取自身硬件信息,根据所述硬件信息和所述混合加密字符串生成加密密钥;加密密文处理模块,用于根据所述第二加密算法将所述混合加密字符串,结合所述加密密钥运算得到加密密文,将所述加密密文发送至服务器。本专利技术的有益效果是:本专利技术提供一种应用于分布式系统的加密方法及系统,通过根据用户标识、关键字以及安全等级标识获取加密因子,并根据加密因子对待加密数据进行加密,使得整个加密过程实现了将算法密钥融合到算法中的加密技术。充分利用用户的个人信息以及社交信息获取对应的加密因子,使得加密因子因用户的需求而动态变动,从而在终端产生出不同的加密算法,不仅使得用户能够有更为自主的选择加密方法,而且能够进一步提升加密的复杂度,提升了数据安全性。进一步地,加密因子通过提供混合表对终端获取的字符进行加密,进一步提升了数据安全性。附图说明图1是本专利技术实施例提供的应用于分布式系统的加密方法流程图;图2是本专利技术实施例提供的加密因子的获取方法流程图;图3是本专利技术实施例提供的群组的查找方式流程图;图4是本专利技术实施例提供的加密过程流程图。具体实施方式为使本专利技术的目的、技术方案和优点更加清楚,下面将结合附图对本专利技术作进一步地详细描述。实施例1:一种本文档来自技高网
...
一种应用于分布式系统的加密方法及系统

【技术保护点】
一种应用于分布式系统的加密方法,其特征在于,所述方法应用于服务器‑客户端架构或者服务器‑浏览器架构的分布式系统之中,所述方法包括:服务器获取用户的数据加密请求,所述数据加密请求包括关键字、安全等级标识、待加密数据的长度和用户标识;根据所述关键字和用户标识获取用户所在的一个或者多个群组标识;所述群组标识包括所述群组标识中的群组所具备的安全等级;若获取到的群组标识为多个,则从中按照约定算法选择一个目标群组标识;若获取到的群组标识只有一个,则获取到的群组标识即为目标群组标识;所述目标群组的安全等级不低于所述安全等级标识表征的安全等级;按照预设算法根据所述用户标识、目标群组标识和所述待加密数据的长度得到特征值;所述特征值算法为p=M

【技术特征摘要】
1.一种应用于分布式系统的加密方法,其特征在于,所述方法应用于服务器-客户端架构或者服务器-浏览器架构的分布式系统之中,所述方法包括:服务器获取用户的数据加密请求,所述数据加密请求包括关键字、安全等级标识、待加密数据的长度和用户标识;根据所述关键字和用户标识获取用户所在的一个或者多个群组标识;所述群组标识包括所述群组标识中的群组所具备的安全等级;若获取到的群组标识为多个,则从中按照约定算法选择一个目标群组标识;若获取到的群组标识只有一个,则获取到的群组标识即为目标群组标识;所述目标群组的安全等级不低于所述安全等级标识表征的安全等级;按照预设算法根据所述用户标识、目标群组标识和所述待加密数据的长度得到特征值;所述特征值算法为p=Mid1+Nid2+mod(L/1024),其中p表示特征值,Mid1为用户标识对应的特征值第一分量,Nid2为目标群组标识对应的特征值第二分量,L为待加密数据长度,以kb为单位;根据所述特征值在预设的加密算法集合中抽取加密因子并将所述加密因子传输至客户端,所述加密因子包括混合表、第一混合种子、第二混合种子、第一加密算法和第二加密算法;客户端按照所述混合表设置按键与输入的字符的对应关系,根据所述对应关系和输入的按键序列获取字符,并将所述字符存储至字符输入区;按照预设的第一混合算法将字符输入区的字符与所述第一混合种子混合以生成目标字符串;根据所述第一加密算法对所述目标字符串进行加密得到加密字符串;按照预设的第二混合算法将所述加密字符串和所述第二混合种子进行混合以得到混合加密字符串;获取自身硬件信息,根据所述硬件信息和所述混合加密字符串生成加密密钥;根据所述第二加密算法将所述混合加密字符串,结合所述加密密钥运算得到加密密文,将所述加密密文发送至服务器。2.根据权利要求1所述的一种应用于分布式系统的加密方法,其特征在于,所述第一混合种子和第二混合种子有可能是包括一个或多个字符串的组合,所述字符串可以包括英文、数字、符号及其组合。3.根据权利要求1所述的一种应用于分布式系统的加密方法,其特征在于,若所述第一加密算法为公钥加密算法,则所述加密因子还包括加密密钥,不同的第一加密算法所对应的公钥加密算法的保密级别和得到的加密密钥长度不同。4.根据权利要求1所述的一种应用于分布式系统的加密方法,其特征在于,所述第一加密算法是异或...

【专利技术属性】
技术研发人员:徐承迪
申请(专利权)人:杭州翼兔网络科技有限公司
类型:发明
国别省市:浙江,33

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

1