The invention provides a key generating method and device for dynamic, the method using preset key generation algorithm, M algorithm and symmetric encryption hash N includes: a randomly generated salt value stored in the object file to the storage space; repeat fill in the plaintext password and salt value several times; calculating the current storage the space of all bytes of M and take the remainder; according to the hash algorithm first select corresponding remainder current storage space; hash value; Hash byte and the N mod; according to the Eryushu symmetric encryption algorithm to select the corresponding storage space; fill in the plaintext password hash value and repeat several times; the storage space of the encryption algorithm; cycle to execute the steps three and nine times, get the final ciphertext; hash of the final data storage space Calculates the final authentication key; saves the final authentication key to the target file. The key generation method provided by the invention effectively improves the difficulty of password cracking.
【技术实现步骤摘要】
动态的密钥生成方法和装置
本专利技术涉及信息安全领域,特别地,涉及一种动态密钥生成方法和装置。
技术介绍
目前,越来越多的软件增加了数据加密功能,以保证数据的安全性以及对数据访问的限制,用户只有输入正确的密码才能访问加密的数据。例如,操作系统、网站、数据库等场合的登录验证,均是采用密码验证实现对数据的访问控制。现有技术实现数据访问控制的密码设置流程即加密流程为:输入密码,通过一定的加密算法生成相应的密钥,并保存到目标文件中。当用户访问数据时,需要首先通过密码验证。密码验证流程为:用户输入相应的密码,系统通过与设置密码时采用相同的加密算法,计算输入密码的密钥,并与上述目标文件中保存的密钥相比对,相同则说明密码正确,对加密的数据进行解密,供用户访问。对应的,密码恢复技术随着加密技术的产生也应运而生,字典破解、暴力破解等方式被广泛应用于密码恢复领域。密码破解速度直接决定了加密数据的安全性,破解速度越快,在更短的时间内密码就有可能被破解。为了提高安全性,目前,所有软件都是通过采用更安全的加密算法或者增加密码验证算法的计算量来达到降低破解速度的目的,例如增加某些算法的循环次数等。特别是近年来,随着并行计算设备,尤其是GPU的高速发展,此类设备被大量应用于密码恢复领域,致使密码破解速度与过去采用CPU计算的方式相比有了两个数量级以上的提升,以致过去安全性很高的算法在并行计算设备面前也大打折扣。在对现有技术的研究和实践过程中,本专利技术的专利技术人发现现有技术存在以下问题: 为了提高信息安全性,降低密码破解风险,现有软件基本都是通过增加哈希算法的循环轮数来降低 ...
【技术保护点】
一种动态的密钥生成方法,其特征在于,首先预设采用M种哈希算法和N中对称加密算法生成密钥,具体包括:步骤一、随机生成一个salt值,保存在目标文件中;步骤二、往一个空白存储空间里重复填写明文密码和所述salt值若干遍;步骤三、计算当前存储空间所有字节之和,对M取余数,标记为第一余数;步骤四、根据所述第一余数从所述M种哈希算法中选取对应的哈希算法;步骤五、利用选取的哈希算法计算当前存储空间的哈希值;步骤六、计算所述步骤五所得所述哈希值的字节之和,对N取余数,标记为第二余数;步骤七、根据所述第二余数从所述N种对称加密算法中选取对应的对称加密算法;步骤八、继续往存储空间里重复填写明文密码和所述步骤五所得所述哈希值若干遍;步骤九、利用选取的对称加密算法对当前存储空间进行加密计算,得到中间密文;步骤十、返回步骤三,循环执行所述步骤三至步骤九数遍,得到最终密文;步骤十一、对最后得到的最终密文进行哈希计算,得到最终验证密钥;步骤十二、将所述最终验证密钥保存到所述目标文件中。
【技术特征摘要】
1.一种动态的密钥生成方法,其特征在于,首先预设采用M种哈希算法和N中对称加密算法生成密钥,具体包括: 步骤一、随机生成一个salt值,保存在目标文件中; 步骤二、往一个空白存储空间里重复填写明文密码和所述salt值若 干遍; 步骤三、计算当前存储空间所有字节之和,对M取余数,标记为第一余数; 步骤四、根据所述第一余数从所述M种哈希算法中选取对应的哈希算法; 步骤五、利用选取的哈希算法计算当前存储空间的哈希值; 步骤六、计算所述步骤五所得所述哈希值的字节之和,对N取余数,标记为第二余数; 步骤七、根据所述第二余数从所述N种对称加密算法中选取对应的对称加密算法; 步骤八、继续往存储空间里重复填写明文密码和所述步骤五所得所述哈希值若干遍; 步骤九、利用选取的对称加密算法对当前存储空间进行加密计算,得到中间密文; 步骤十、返回步骤三,循环执行所述步骤三至步骤九数遍,得到最终密文; 步骤十一、对最后得到的最终密文进行哈希计算,得到最终验证密钥; 步骤十二、将所述最终验证密钥保存到所述目标文件中。2.根据权利要求1所述的动态的密钥生成方法,其特征在于,所述步骤一具体为:随机生成一个16飞4字节的salt值,保存在目标文件中。3.根据权利要求1所述的动态的密钥生成方法,其特征在于,所述步骤二具体为:往一个空白存储空间里重复填写 第一明文密码和所述salt值8~20遍。4.根据权利要求1所述的动态的密钥生成方法,其特征在于,所述步骤八具体为:往所述存储空间里重复填写第二明文密码和所述步骤五计算的所述哈希值64~256遍。5.根据权利要求1所述的动态的密钥生成方法,其特征在于,所述步骤十具体为:返回步骤三,循环执行所述步骤三至步骤九(16飞4) *y遍,得到最终密文;其中,密码长度因子y根据应用场合对性能和安全性的要求而调整。6.一种动态的密钥生成装置,其特征在于,包括算法预设单元,用于预设采用M种哈希算法和N中对称加密算法生成密钥,还包括: 随机值生成单元,用于生成一个salt值,保存在目标文件中; 第一写...
【专利技术属性】
技术研发人员:张光斌,张永光,王海滨,汤伟宾,
申请(专利权)人:厦门市美亚柏科信息股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。