一种多维度AES对称加解密方法技术

技术编号:24333786 阅读:66 留言:0更新日期:2020-05-29 21:09
本发明专利技术涉及加解密算法领域,尤指一种多维度AES对称加解密方法。本发明专利技术多维度AES对称加解密方法通过时间戳对密钥和加密因子进行加盐处理,减少数据被暴力破解的可能性;能够彻底解决对称加密密钥相同的问题,客户端跟服务端每次都会重新生成密钥,保证数据的安全性;其中,加密因子不单单是加盐处理,加盐处理只是对原来的内容进行有规律的修改,一般来说加盐的因子都是固定的,这样做可以通过不断生成加盐后数据进行模拟比对找出加盐因子;但本发明专利技术的加密因子位数是通过随机数决定的,而加密因子字符也是通过随机数提取的,很难进行暴力破解;此外,传输内容需要进行多次不同密钥的递归加密,保证了传输内容的安全性。

A multi-dimensional AES symmetric encryption and decryption method

【技术实现步骤摘要】
一种多维度AES对称加解密方法
本专利技术涉及加解密算法领域,尤指一种多维度AES对称加解密方法。
技术介绍
高级加密标准(英文缩写:AES),在密码学中又称Rijndael加密法,是美国联邦政府采用的一种区块加密标准。这个标准用来替代原先的DES,已经被多方分析且广为全世界所使用。经过五年的甄选流程,高级加密标准由美国国家标准与技术研究院于2001年11月26日发布于FIPSPUB197,并在2002年5月26日成为有效的标准。2006年,高级加密标准已然成为对称密钥加密中最流行的算法之一。目前网上已经存在各种各样的基于Java的AES加密、解密的实现方案。基于Java的AES加密、解密的实现方案主要的差异在于三个参数的设定,它们分别是密钥的位数、加解密的模式和填充的模式。首先,AES算法密钥的位数可选128、192和256三种,密钥位数越大密钥长度越长,加密的轮数就越多。其中,AES的分组密码工作模式分为电码本模式、密码分组链接模式、计算器模式、密码反馈模式和输出反馈模式五种;五种不同的模式有各自对于大数据块的不同加密方式。此外,AES还提供了了三种不同的填充模式,PKCS5Padding、PKCS7Padding和NOPadding。最后,通过三个可选参数的不同组合可以生成多种不同的AES加解密信息。AES算法由于密钥建立时间短,灵敏性好,内存要求低等特性深受人们喜爱。但是也正因为此特征令到低位密钥暴力破解成为可能。AES算法诞生于2000年前后,它的前身是Rijndael加密法,从诞生之初到现在年已经有差不多20年的时间。这20年来科技飞速发展,现市面上的个人电脑或者服务器的运算能力已经不能跟20年前同日而语。通过高端CPU或者高端显卡中GPU强大的运算能力,能够在短时间内将普通的AES对称加密给暴力破解掉。
技术实现思路
本专利技术提供一种多维度AES对称加解密方法,解决B/S模式系统前后端对称加密过程中,由于加密过程过于简单,被网络截包后通过暴力破解方式得到明文数据的问题,并且通过时间戳对密钥和加密因子进行加盐处理,减少数据被暴力破解的可能性。为实现上述目的,本专利技术采用的技术方案是:一种多维度AES对称加解密方法,包括以下步骤:S1,客户端访问网页并发送请求到服务端获取数据时,请求被拦截器拦截;S2,拦截器对需要提交的数据主体进行多维度的AES加密处理,待加密处理完成后再将加密数据发送到服务端;S3,加密数据经过网络防火墙进行入站过滤;S4,过滤后的加密数据会被路由网关接收,路由网关转发加密数据到中台微服务前,服务端的拦截器会截取访问请求,对加密数据进行对称解密,将加密数据还原;S5,中台微服务接收数据后进行底层服务调用;其中,在S2中,加密处理步骤如下:1)将请求的数据主体转换成JSON格式的字符串,同时自主生成16位的加密密钥;2)获取1-5的随机数;3)同时生成当前的时间戳并且截取生成的时间戳长度;4)循环随机次数并且结合时间戳获取循环加密因子;5)将字符串的数据主体、加密密钥和加密因子结合对明文进行加密操作,得到新密钥;6)使用新密钥对明文进行对称的AES加密操作;其中,在S4中,对称解密步骤如下:1)获取加密数据,查看是否存在加密密钥和加密因子;2)若不存在加密密钥和加密因子则不需要解密;3)若存在加密密钥和加密因子,则采用倒序循环的方式对加密因子进行分解,并且结合加密因子字符对加密密钥进行修改,得到新密钥;4)最后使用新密钥对加密数据进行AES解密操作。进一步地,在S2的加密处理步骤5)中,或者在S4的对称解密步骤3)中,包括以下步骤:a,将加密因子拆解成字符数组进行遍历;b,通过下标获取加密因子的具体字符内容;c,根据字符内容信息找到加密密钥下标并将字符插入到该下标;d,字符传入后密钥超出16位,通过截取字符串得到新密钥。其中,所述加密因子字符数组的字符区间为0-9,而密钥的下标区间为0-16。其中,所述拦截器均为JavaScript拦截器,所述加密处理的数据主体为JSON数据主体。进一步地,在S2的加密处理步骤1),通过JSON.stringify方法把数据主体转换成JSON格式的字符串,并且通过自主封装的UUID生成方法生成16位的UUID密钥。进一步地,在S2的加密处理步骤2)中,通过Math.random()*5+1方法获取浮点型的随机数,并且通过Math.floor()方法将浮点型数值的随机数向下取整获取1-5的随机数。其中,在S2的加密处理步骤3)中,通过newDate().getTime().toString()方法生成精度为毫秒级的时间戳,并且采用length方法动态获取时间戳的长度适配日后的变化。进一步地,在S2的加密处理步骤4)中,根据随机数的值进行循环遍历,每次循环时都需要随机获取当前时间戳中一个字符,将字符传入数组,当循环结束时将数组内容连接成一个字符串作为加密因子。进一步地,在S2的加密处理步骤6)中,经过AES加密操作的信息通过POST请求发送到数据后台,同时加密密钥和加密因子作为http头信息中的其中一个参数一并传送,并且在S4的对称解密步骤1)中,通过获取http头信息查看是否存在加密密钥和加密因子。其中,所述客户端可以为笔记本电脑、智能手机或PC电脑。本专利技术的有益效果在于:1.彻底解决对称加密密钥相同的问题,客户端跟服务端每次都会重新生成密钥,保证数据的安全性;2.加密因子不单单是加盐处理,加盐处理只是对原来的内容进行有规律的修改,一般来说加盐的因子都是固定的,这样做可以通过不断生成加盐后数据进行模拟比对找出加盐因子;但本专利技术的加密因子位数是通过随机数决定的,而加密因子字符也是通过随机数提取的,很难进行暴力破解。3.传输内容需要进行多次不同密钥的递归加密,保证了传输内容的安全性。附图说明图1是本专利技术的请求访问过程结构示意图。图2是本专利技术的加密处理流程示意图。图3是本专利技术的解密处理流程示意图。图4是本专利技术获得新密钥的加密或解密流程示意图。具体实施方式下面通过具体实施方式结合附图对本专利技术作进一步详细说明。本申请可以以多种不同的形式来实现,并不限于本实施例所描述的实施方式。提供以下具体实施方式的目的是便于对本申请公开内容更清楚透彻的理解。请参阅图1所示,本专利技术关于一种多维度AES对称加解密方法,包括以下步骤:S1,客户端访问网页并发送请求到服务端获取数据时,请求被JavaScript拦截器拦截;S2,拦截器对需要提交的JSON数据主体进行多维度的AES加密处理,待加密处理完成后再将加密数据发送到服务端;S3,加密数据经过网络防火墙进行入站过滤;S4,过滤后的加密数据会被路由网关接收,本文档来自技高网
...

【技术保护点】
1.一种多维度AES对称加解密方法,其特征在于,包括以下步骤:/nS1,客户端访问网页并发送请求到服务端获取数据时,请求被拦截器拦截;/nS2,拦截器对需要提交的数据主体进行多维度的AES加密处理,待加密处理完成后再将加密数据发送到服务端;/nS3,加密数据经过网络防火墙进行入站过滤;/nS4,过滤后的加密数据会被路由网关接收,路由网关转发加密数据到中台微服务前,服务端的拦截器会截取访问请求,对加密数据进行对称解密,将加密数据还原;/nS5,中台微服务接收数据后进行底层服务调用;/n其中,在S2中,加密处理步骤如下:/n1)将请求的数据主体转换成JSON格式的字符串,同时自主生成16位的加密密钥;/n2)获取1-5的随机数;/n3)生成当前的时间戳并且截取生成的时间戳长度;/n4)循环随机次数并且结合时间戳获取循环加密因子;/n5)将字符串的数据主体、加密密钥和加密因子结合对明文进行加密操作,得到新密钥;/n6)使用新密钥对明文进行对称的AES加密操作;/n其中,在S4中,对称解密步骤如下:/n1)获取加密数据,查看是否存在加密密钥和加密因子;/n2)若不存在加密密钥和加密因子则不需要解密;/n3)若存在加密密钥和加密因子,则采用倒序循环的方式对加密因子进行分解,并且结合加密因子字符对加密密钥进行修改,得到新密钥;/n4)最后使用新密钥对加密数据进行AES解密操作。/n...

【技术特征摘要】
1.一种多维度AES对称加解密方法,其特征在于,包括以下步骤:
S1,客户端访问网页并发送请求到服务端获取数据时,请求被拦截器拦截;
S2,拦截器对需要提交的数据主体进行多维度的AES加密处理,待加密处理完成后再将加密数据发送到服务端;
S3,加密数据经过网络防火墙进行入站过滤;
S4,过滤后的加密数据会被路由网关接收,路由网关转发加密数据到中台微服务前,服务端的拦截器会截取访问请求,对加密数据进行对称解密,将加密数据还原;
S5,中台微服务接收数据后进行底层服务调用;
其中,在S2中,加密处理步骤如下:
1)将请求的数据主体转换成JSON格式的字符串,同时自主生成16位的加密密钥;
2)获取1-5的随机数;
3)生成当前的时间戳并且截取生成的时间戳长度;
4)循环随机次数并且结合时间戳获取循环加密因子;
5)将字符串的数据主体、加密密钥和加密因子结合对明文进行加密操作,得到新密钥;
6)使用新密钥对明文进行对称的AES加密操作;
其中,在S4中,对称解密步骤如下:
1)获取加密数据,查看是否存在加密密钥和加密因子;
2)若不存在加密密钥和加密因子则不需要解密;
3)若存在加密密钥和加密因子,则采用倒序循环的方式对加密因子进行分解,并且结合加密因子字符对加密密钥进行修改,得到新密钥;
4)最后使用新密钥对加密数据进行AES解密操作。


2.根据权利要求1所述的一种多维度AES对称加解密方法,其特征在于:在S2的加密处理步骤5)中,或者在S4的对称解密步骤3)中,包括以下步骤:
a,将加密因子拆解成字符数组进行遍历;
b,通过下标获取加密因子的具体字符内容;
c,根据字符内容信息找到加密密钥下标并将字符插入到该下标;
d,字符传入后密钥超出16位,通过截取字符串得到新密钥。


3.根据权利要求2所述的一种多维度AES对称加解密方法,其特征在于:所述加密因子字...

【专利技术属性】
技术研发人员:曹国钧袁振辉郭楚钦
申请(专利权)人:广东跑合中药材电子商务有限公司
类型:发明
国别省市:广东;44

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

1