一种基于BASE64的加密传输算法制造技术

技术编号:25920543 阅读:25 留言:0更新日期:2020-10-13 10:40
本发明专利技术提出了一种基于BASE64的加密传输算法,获取待加密信息中包括字符串在内的二进制信息;随机生成密钥随机数,通过密钥随机数对主密钥进行DES运算生成传输密钥;随机生成索引随机数作为上述二进制信息的密钥存储索引位置,在这个二进制信息的密钥存储索引位置处插入传输密钥;采用上述索引随机数对二进制信息使用DES算法进行加密,获得加密密文;使用BASE64编码对加密密文进行编码,生成传输密文;进行BASE64解、DES解密,按照索引随机数指定的密钥存储索引位置取得传输密钥,然后将传输密钥与主密钥进行DES解密运算取得密钥随机数,用密钥随机数对二进制信息采用DES算法进行解密,得到明文。本发明专利技术将传输密钥分散存放,增加了破解难度,使得保密程度增强。

【技术实现步骤摘要】
一种基于BASE64的加密传输算法
本专利技术涉及数据加密
,特别涉及一种基于BASE64的加密传输算法。
技术介绍
在要求加密传输的场合中,某些应用场合(如浏览器)中不能使用的二进制数据,因此,需要使用BASE64编码三个字节的二进制数据转换为4个字节的字符数据,即可以公共BASE64编码把二进制数据转换为字符数据。DES是常用的数据加密算法,为了实现一码一密的传输,就需要在传输的数据中包括传输密钥,传输密钥一般连续存放,这样在数据格式泄漏的情况下,有可能会提取出传输密钥,使得加密体系出现漏洞。
技术实现思路
本专利技术的目的旨在至少解决所述技术缺陷之一。为此,本专利技术的目的在于提出一种基于BASE64的加密传输算法,通过散列算法将传输密钥插入到传输的二进制信息中,由于传输密钥被分散存放,增加了破解难度,使得保密程度增强。为了实现上述目的,本专利技术的实施例提供一种基于BASE64的加密传输算法,包括以下步骤:步骤S1,获取待加密信息中包括字符串在内的二进制信息;步骤S2,随机生成密钥随机数,通过密钥随机数对主密钥进行DES运算生成传输密钥;步骤S3,随机生成索引随机数作为上述二进制信息的密钥存储索引位置,在这个二进制信息的密钥存储索引位置处分散插入传输密钥;步骤S4,采用上述索引随机数对二进制信息使用DES算法进行加密,获得加密密文;步骤S5,在传输时,使用BASE64编码对加密密文进行编码,生成传输密文,并发出给接收端;步骤S6,接收端对接收到的数据进行BASE64解码,得到加密密文;并通过DES解密获得索引随机数,按照索引随机数指定的密钥存储索引位置取得传输密钥,然后将传输密钥与主密钥进行DES解密运算取得密钥随机数,用密钥随机数对二进制信息采用DES算法进行解密,得到明文。在上述任一方案中优选的是,在步骤S3中,如果二进制信息的长度短于索引随机数所指代的密钥存储索引位置,则在二进制信息中用0填充后续的部分。在上述任一方案中优选的是,在步骤S2中,生成的密钥随机数的数量为多个,生成的索引随机数的数量也为多个,每个密钥随机数对主密钥进行DES运算生成相对应的传输密钥插入到其中一个索引随机数所指代的密钥存储索引位置处。在上述任一方案中优选的是,密钥随机数的数量与索引随机数的数量相同,并且一一对应,密钥随机数对主密钥进行DES运算生成相对应的传输密钥插入到与该密钥随机数对应的索引随机数所指代的密钥存储索引位置处。在上述任一方案中优选的是,在步骤S2中,生成的密钥随机数的数量为多个,生成的索引随机数的数量为1个,每个密钥随机数对主密钥进行DES运算生成相对应的传输密钥按顺序依次插入到同一索引随机数所指代的密钥存储索引位置处。在上述任一方案中优选的是,在步骤S2中,生成的密钥随机数的数量为1个,生成的索引随机数的数量为多个,将密钥随机数对主密钥进行DES运算生成相对应的传输密钥进行分割,然后按顺序依次插入到多个索引随机数所指代的密钥存储索引位置处。在上述任一方案中优选的是,在步骤S5中,使用BASE64编码对加密密文进行编码时,加密密文中3字节8位数据拆分为4字节6位数据,无法补足的以0填充。在上述任一方案中优选的是,在步骤S6中,接收端对接收到的数据进行BASE64解码时,把4字节6位数据转化为3字节8位二进制数据,得到加密密文。本专利技术提出了用DES加密结合BASE64编码的算法,编码中包括了传输密钥,并使得传输密钥散列于二进制数据中,最终在发送端进行BASE64编码得到传输字符串。接收端进行BASE64解码,并提取传输密钥,经过DES解密获得明文数据,由于传输密钥被分散存放,增加了破解难度,使得保密程度增强。本专利技术附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本专利技术的实践了解到。附图说明本专利技术的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:图1为本专利技术的结构图;图2为本专利技术的二进制信息和传输密钥的生成过程图;具体实施方式下面详细描述本专利技术的实施例,实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,旨在用于解释本专利技术,而不能理解为对本专利技术的限制。DES全称叫(DataEncryptionStandard),是1977年美国联邦信息处理标准(FIPS)中所采用的一种对称加密算法。在数据传输中为了保证数据不被意外泄漏,经常采用一些数据加密算法,如DES,3DES等数据加密技术。一些基于浏览器的程序中,只能处理字符类型的数据,不能处理二进制数据,BASE64编码解决了这个问题。本专利技术提供一种基于BASE64的加密传输算法,如图1-2所示,包括以下步骤:步骤S1,获取待加密信息中包括字符串在内的二进制信息;步骤S2,随机生成密钥随机数,通过密钥随机数对主密钥进行DES运算生成传输密钥;步骤S3,随机生成索引随机数作为上述二进制信息的密钥存储索引位置,在这个二进制信息的密钥存储索引位置处分散插入传输密钥;二进制信息和传输密钥的生成过程如图2所示.如果二进制信息的长度短于索引随机数所指代的密钥存储索引位置,则在二进制信息中用0填充后续的部分。插入传输密钥时可以有以下几种情况:1)生成的密钥随机数的数量为多个,生成的索引随机数的数量也为多个,每个密钥随机数对主密钥进行DES运算生成相对应的传输密钥插入到其中一个索引随机数所指代的密钥存储索引位置处。2)密钥随机数的数量与索引随机数的数量相同,并且一一对应,密钥随机数对主密钥进行DES运算生成相对应的传输密钥插入到与该密钥随机数对应的索引随机数所指代的密钥存储索引位置处。3)生成的密钥随机数的数量为多个,生成的索引随机数的数量为1个,每个密钥随机数对主密钥进行DES运算生成相对应的传输密钥按顺序依次插入到同一索引随机数所指代的密钥存储索引位置处。4)生成的密钥随机数的数量为1个,生成的索引随机数的数量为多个,将密钥随机数对主密钥进行DES运算生成相对应的传输密钥进行分割,然后按顺序依次插入到多个索引随机数所指代的密钥存储索引位置处。步骤S4,采用上述索引随机数对二进制信息使用DES算法进行加密,获得加密密文;步骤S5,在传输时,使用BASE64编码对加密密文进行编码(加密密文中3字节8位数据拆分为4字节6位数据,无法补足的以0填充),生成传输密文,并发出给接收端;步骤S6,接收端对接收到的数据进行BASE64解码(把4字节6位数据转化为3字节8位二进制数据),得到加密密文;并通过DES解密获得索引随机数,按照索引随机数指定的密钥存储索引位置取得传输密钥,然后将传输密钥与主密钥进行DES解密运算取得密钥随机数,用密钥随机数对二进制信息采用D本文档来自技高网...

【技术保护点】
1.一种基于BASE64的加密传输算法,其特征在于,包括以下步骤:/n步骤S1,获取待加密信息中包括字符串在内的二进制信息;/n步骤S2,随机生成密钥随机数,通过密钥随机数对主密钥进行DES运算生成传输密钥;/n步骤S3,随机生成索引随机数作为上述二进制信息的密钥存储索引位置,在这个二进制信息的密钥存储索引位置处分散插入传输密钥;/n步骤S4,采用上述索引随机数对二进制信息使用DES算法进行加密,获得加密密文;/n步骤S5,在传输时,使用BASE64编码对加密密文进行编码,生成传输密文,并发出给接收端;/n步骤S6,接收端对接收到的数据进行BASE64解码,得到加密密文;并通过DES解密获得索引随机数,按照索引随机数指定的密钥存储索引位置取得传输密钥,然后将传输密钥与主密钥进行DES解密运算取得密钥随机数,用密钥随机数对二进制信息采用DES算法进行解密,得到明文。/n

【技术特征摘要】
1.一种基于BASE64的加密传输算法,其特征在于,包括以下步骤:
步骤S1,获取待加密信息中包括字符串在内的二进制信息;
步骤S2,随机生成密钥随机数,通过密钥随机数对主密钥进行DES运算生成传输密钥;
步骤S3,随机生成索引随机数作为上述二进制信息的密钥存储索引位置,在这个二进制信息的密钥存储索引位置处分散插入传输密钥;
步骤S4,采用上述索引随机数对二进制信息使用DES算法进行加密,获得加密密文;
步骤S5,在传输时,使用BASE64编码对加密密文进行编码,生成传输密文,并发出给接收端;
步骤S6,接收端对接收到的数据进行BASE64解码,得到加密密文;并通过DES解密获得索引随机数,按照索引随机数指定的密钥存储索引位置取得传输密钥,然后将传输密钥与主密钥进行DES解密运算取得密钥随机数,用密钥随机数对二进制信息采用DES算法进行解密,得到明文。


2.如权利要求1所述的基于BASE64的加密传输算法,其特征在于,在步骤S3中,如果二进制信息的长度短于索引随机数所指代的密钥存储索引位置,则在二进制信息中用0填充后续的部分。


3.如权利要求1所述的基于BASE64的加密传输算法,其特征在于,在步骤S2中,生成的密钥随机数的数量为多个,生成的索引随机数的数量也为多个,每个密钥随机数对主密钥进行DES运算生成相对应的传输密钥插入到其中一个索引随机数所指代的密钥存...

【专利技术属性】
技术研发人员:吴国娟
申请(专利权)人:天津爱民网络科技有限公司
类型:发明
国别省市:天津;12

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

1
相关领域技术
  • 暂无相关专利