CN117997641A - 一种适合网络明文传输的多维密电码加密算法 - Google Patents
一种适合网络明文传输的多维密电码加密算法 Download PDFInfo
- Publication number
- CN117997641A CN117997641A CN202410280388.9A CN202410280388A CN117997641A CN 117997641 A CN117997641 A CN 117997641A CN 202410280388 A CN202410280388 A CN 202410280388A CN 117997641 A CN117997641 A CN 117997641A
- Authority
- CN
- China
- Prior art keywords
- character
- unicode
- characters
- character string
- random factor
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 230000005540 biological transmission Effects 0.000 title claims abstract description 18
- 238000000034 method Methods 0.000 claims abstract description 21
- 238000004364 calculation method Methods 0.000 abstract 1
- 238000005516 engineering process Methods 0.000 description 3
- 239000008186 active pharmaceutical agent Substances 0.000 description 2
- 230000001351 cycling effect Effects 0.000 description 2
- 239000000243 solution Substances 0.000 description 2
- 230000004075 alteration Effects 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000005336 cracking Methods 0.000 description 1
- 238000002347 injection Methods 0.000 description 1
- 239000007924 injection Substances 0.000 description 1
- 238000009434 installation Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
Landscapes
- Storage Device Security (AREA)
Abstract
本发明公开了一种适合网络明文传输的多维密电码加密算法,包括以下方法:S1、创建一个32位字符的随机因子,作为加密的密钥;S2、对原始数据进行Base64编码,将其转换为文本格式;S3、遍历Base64编码后的字符串,将每个字符的Unicode码位值与随机因子中对应位置的字符的Unicode码位值进行异或运算;S4、将异或运算的结果转换回字符,并将所有字符合并成一个字符串;S5、对合并后的字符串进行Base64编码,该方法实现加密前密文数据可以是任意二进制数据流,加密后的明文为纯ASCII字符,可以安全地附加入Json、SQL、Url等寄主中,无需担心被窜改或被注入攻击,可以用于安全地明文传输与存储,不需要进行庞大的数据字典查询操作,特别适合低算力低存储高安全环境要求下的设备实现。
Description
技术领域
本发明涉及机械计算机网络安全领域,具体为一种适合网络明文传输的多维密电码加密算法。
背景技术
随着信息技术的快速发展,越来越多的设备被连接到互联网上,这些设备通常具有不同的硬件和软件配置,处理能力和存储空间也各不相同。同时,数据的安全传输和存储变得尤为重要,因为信息泄露或损坏可能导致严重的后果。此外,随着云计算、大数据、物联网等技术的发展,数据被广泛应用于不同的场景中,这就要求加密方法不仅要安全,还要能够兼容不同的数据格式和传输协议,同时还要考虑到效率和资源使用,因此需要一种能够处理任意二进制数据流、将加密后的数据转换为纯ASCII字符、提供高安全性且无需复杂操作的加密方法。
发明内容
本发明的目的在于提供一种适合网络明文传输的多维密电码加密算法,以解决上述背景技术中提出的问题。
为实现上述目的,本发明提供如下技术方案:一种适合网络明文传输的多维密电码加密算法,包括以下方法:
S1、创建一个32位字符的随机因子,作为加密的密钥;
S2、对原始数据进行Base64编码,将其转换为文本格式;
S3、遍历Base64编码后的字符串,将每个字符的Unicode码位值与随机因子中对应位置的字符的Unicode码位值进行异或运算;
S4、将异或运算的结果转换回字符,并将所有字符合并成一个字符串;
S5、对合并后的字符串进行Base64编码,得到最终的加密文本。
作为优选,所述S3中若索引位已超出随机因子的长度,则需要对索引位取模随机因子的长度。
作为优选,所述S5中的加密文本为纯ASCII字符。
作为优选,还包括用于随机因子对加密后的明文解密方法,其步骤为;
a、对加密文本进行Base64解码,还原到加密过程中的S4所得到的字符串;
b、遍历解码后的字符串,将每个字符的Unicode码位值与随机因子中对应位置的字符的Unicode码位值进行异或运算;
c、将所有异或运算的结果转换回字符,合并成一个字符串,然后对这个字符串进行Base64解码,得到原始数据。
与现有技术相比,本发明的有益效果是:该方法实现加密前密文数据可以是任意二进制数据流,加密后的明文为纯ASCII字符,可以安全地附加入Json、SQL、Url等寄主中,无需担心被窜改或被注入攻击,可以用于安全地明文传输与存储,不需要进行庞大的数据字典查询操作,特别适合低算力低存储高安全环境要求下的设备实现。
附图说明
图1为本发明加密流程图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
请参阅图1,本发明提供一种技术方案:一种适合网络明文传输的多维密电码加密算法,包括以下步骤:
S1、生成一个32位字符的随机因子,其中,位数越多,安全系数越高,对需要加密的数据进行一次Base64编码,循环Base64编码后字符串取出单个字符,转化为Unicode码位值,当生成32位字符的随机因子时,每个字符通常由一个字节(8位)组成,因此,32位字符的随机因子实际上是由32个随机的字节组成的,由此,随机因子的总长度为32字节 * 8位/字节 = 256位,由于每个字节都是随机生成的,因此生成的随机因子具有高度的随机性,以此使得其安装性能较高。对随机因子进行Base64编码时,它将被转换成由Base64字符组成的字符串。Base64编码将原始数据(随机因子)转换成一种基于64个可打印字符的表示形式,它可以确保数据能够以文本形式进行安全传输,而不会因为包含了非可打印字符而导致传输错误,循环Base64编码后字符串并将每个字符转换为Unicode码位值的过程确保了将Base64编码后的数据转换成了Unicode码位值的形式。Unicode码位值是一种用于表示字符的数字值,它使得可以将任何字符以一种标准化的方式表示出来,不受特定编码的限制;
S2、同时从随机因子中取出对应索引位的一个字符,转化为Unicode码位值,如果索引位已超出随机因子的长度,则需要对索引位取模随机因子的长度;再将两个Unicode码位值进行异或位运算,得到一个新的Unicode码位值,索引位调整是为了确保能够在超出随机因子长度时仍能够正常操作,通过对索引位进行取模操作,将索引位限制在合法的范围内,使得即使加密的数据长度超过了随机因子的长度,仍然可以继续进行操作,而不会发生错误;异或位运算是这个过程的核心部分。通过对两个Unicode码位值进行异或操作,可以产生一个新的Unicode码位值。使得即使知道其中一个码位值,也很难推断出另一个码位值是什么,增加了加密的安全性;
S3、将上述处理后的Unicode码位值转化为Unicode字符,并合并为字符串,再次进行Base64编码,即得到加密后的文本,该文本为纯ASCII字符,可以安全地附加入任何数据寄主中进行明文传输与存储,合并为字符串的步骤是将所有Unicode字符连接在一起,形成一个完整的字符串,该字符串包含了经过处理的原始数据,以便后续的Base64编码,其中,Base64编码是将二进制数据转换为ASCII字符的一种方法,其可以将原始数据按照一定规则转换成一组字符,这组字符只包含可打印字符,且Base64编码后的结果是一个纯ASCII字符的字符串,可以安全地嵌入到各种数据寄存器中,如JSON、XML等,以便在网络上传输或者存储到数据库中。
需要说明的是,本发明使用了32字节的随机密钥,其密钥组合会非常庞大,以此通过位数提高破解的难度,在加密过程中,首先对原始数据进行Base64编码,因Base64编码可以将任意二进制数据转换为纯ASCII文本,这使得加密后的数据更容易在不同系统间传输和存储,其中,Base64编码本身并不提供任何安全性,它仅仅是一种编码方式,每个经过Base64编码的字符都会与密钥中对应位置的字节进行异或运算。如果密钥长度小于数据长度,那么密钥会循环使用。异或运算的特点是,同一个值异或两次会得到原始值,这使得加密过程可逆,经过异或运算后,得到的加密数据可能包含非打印字符或特殊字符,以此在某些环境下造成问题,因此,将加密后的数据再次进行Base64编码可以确保加密文本只包含ASCII字符,便于传输和存储。
用于随机因子对加密后的明文解密方法,其步骤为:
对接收到的明文进行一次Base64解码,循环Base64解码后的字符串取出单个字符,再转化为Unicode码位值再与随机因子对应索引位上单个字符的Unicode码位值进行异或位运算,得到一个新的Unicode字符b、遍历解码后的字符串,将每个字符的Unicode码位值与随机因子中对应位置的字符的Unicode码位值进行异或运算;
需要说明的是,本发明通过接收到的密文是经过Base64编码的,解码后可以得到原始的文本数据,在计算机中,每个字符都有对应的Unicode码位值,将每个字符转换为Unicode码位值的过程是为了将字符表示为计算机可处理的数字形式,其中,异或位运算是一种逻辑运算,它在每一位上进行操作,如果两个操作数的对应位不同,则结果为1,否则为0。在该加密算法中,将每个字符的Unicode码位值与随机因子中对应位置的字符的Unicode码位值进行异或运算,是为了混淆字符的数据,增加了加密的难度和安全性;异或位运算的结果是一个新的Unicode字符,该字符可能是原始字符经过混淆后的结果,对解码后的文本中的每个字符都执行相同的操作,即将其Unicode码位值与随机因子中对应位置的字符的Unicode码位值进行异或位运算,以生成一系列新的Unicode字符,以此可以对整个文本进行加密,确保信息的安全性。
将所有新产生的字符合并为一个字符串后,再次进行Base64解码,即可得到加密前的密文数据。
需要说明的是,本发明在前文步骤中,每个字符的Unicode码位值经过异或运算生成了新的Unicode字符,新的Unicode字符被存储为一个字符串,通过将所有新产生的字符合并为一个字符串,确保了数据的完整性和顺序性;将合并后的字符串再次进行Base64解码,相当于将其转换回二进制数据,以此将加密后的数据重新转换为原始的二进制数据,即加密前的密文数据。通过Base64解码,得到的数据就是加密前的原始明文,即消息的原始内容。
实施例
生成一个32位字符或更多位的随机因子(位数越多,安全系数越高)KEY;
对需要加密的S数据进行一次Base64编码后,得到字符串SC;
循环从字符串SC字符串取出单个字符,再转化为Unicode码位值A;
从随机因子中取出对应索引位的一个字符,转化为Unicode码位值B,如果索引位已超出随机因子的长度,则需要对索引位取模随机因子的字符长度;
将A与B进行异或位运算得到C,然后将C转为Unicode字符D;
将所有Unicode字符D合并为字符串DS后,再次对DS进行Base64编码,即得到加密后的文本,该文本为纯ASCII字符的TXT,可以安全的进行明文传输或存储;
对明文解密处理流程与加密流程基本一致,差异仅在于两处Base64编码操作替换为Base64解码操作即可得到加密前的密文。
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。
Claims (4)
1.一种适合网络明文传输的多维密电码加密算法,其特征在于:包括以下方法:
S1、创建一个32位字符的随机因子,作为加密的密钥;
S2、对原始数据进行Base64编码,将其转换为文本格式;
S3、遍历Base64编码后的字符串,将每个字符的Unicode码位值与随机因子中对应位置的字符的Unicode码位值进行异或运算;
S4、将异或运算的结果转换回字符,并将所有字符合并成一个字符串;
S5、对合并后的字符串进行Base64编码,得到最终的加密文本。
2.根据权利要求1所述的一种适合网络明文传输的多维密电码加密算法,其特征在于:所述S3中若索引位已超出随机因子的长度,则需要对索引位取模随机因子的长度。
3.根据权利要求1所述的一种适合网络明文传输的多维密电码加密算法,其特征在于:所述S5中的加密文本为纯ASCII字符。
4.根据权利要求1所述的一种适合网络明文传输的多维密电码加密算法,其特征在于:还包括用于随机因子对加密后的明文解密方法,其步骤为;
a、对加密文本进行Base64解码,还原到加密过程中的S4所得到的字符串;
b、遍历解码后的字符串,将每个字符的Unicode码位值与随机因子中对应位置的字符的Unicode码位值进行异或运算;
c、将所有异或运算的结果转换回字符,合并成一个字符串,然后对这个字符串进行Base64解码,得到原始数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410280388.9A CN117997641A (zh) | 2024-03-12 | 2024-03-12 | 一种适合网络明文传输的多维密电码加密算法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202410280388.9A CN117997641A (zh) | 2024-03-12 | 2024-03-12 | 一种适合网络明文传输的多维密电码加密算法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117997641A true CN117997641A (zh) | 2024-05-07 |
Family
ID=90888849
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202410280388.9A Pending CN117997641A (zh) | 2024-03-12 | 2024-03-12 | 一种适合网络明文传输的多维密电码加密算法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117997641A (zh) |
-
2024
- 2024-03-12 CN CN202410280388.9A patent/CN117997641A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Krawczyk | LFSR-based hashing and authentication | |
US7685415B2 (en) | Exclusive encryption | |
CN101610088B (zh) | 基于具有安全特性的压缩技术来编码数据的系统和方法 | |
CN109840425B (zh) | 一种文件加密的方法和装置 | |
CN102761418B (zh) | 一种字符压缩加密方法 | |
JP2004534333A (ja) | コンピュータネットワークにおける分散データ処理に関する統合された保護方法及びシステム | |
US20120284528A1 (en) | Multi-purpose multi-dimensional, variable and multi-key e-mail and data encryption method | |
CN102404111A (zh) | 一种采用不确定加密算法的分段加密方法 | |
CN101677399A (zh) | 基于流密码的安全编码方案的多媒体内容编码方法和系统 | |
CN108197484B (zh) | 一种分布式存储环境下实现节点数据安全的方法 | |
CN116032474A (zh) | 一种基于大数据计算机网络安全防护系统 | |
Wen et al. | Research on base64 encoding algorithm and PHP implementation | |
CN106341208A (zh) | 基于平衡索引和极化码的联合信道安全编码方法 | |
CN110543778A (zh) | 一种字符数据线性随机加密和解密算法 | |
CN113300840B (zh) | 一种联合汉明码的数据随机加密通信方法 | |
Mesran et al. | Combination Base64 and Hashing Variable Length for Securing Data | |
SubhamastanRao et al. | Simultaneous data compression and encryption | |
Ashila et al. | Hybrid AES-Huffman coding for secure lossless transmission | |
CN110086633B (zh) | 一种区块链技术中密文防篡改方法 | |
CN110932863B (zh) | 一种基于编码的广义签密方法 | |
CN114978711B (zh) | 一种动态密钥对称加密的数据传输方法及系统 | |
CN117997641A (zh) | 一种适合网络明文传输的多维密电码加密算法 | |
CN111130755B (zh) | 一种基于签名的矩阵双重加密方法 | |
Triana et al. | Blowfish algorithm and Huffman compression for data security application | |
Yong-Xia | The technology of database encryption |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination |