CN111030803A - 一种加密方法、装置及设备 - Google Patents
一种加密方法、装置及设备 Download PDFInfo
- Publication number
- CN111030803A CN111030803A CN201911318507.0A CN201911318507A CN111030803A CN 111030803 A CN111030803 A CN 111030803A CN 201911318507 A CN201911318507 A CN 201911318507A CN 111030803 A CN111030803 A CN 111030803A
- Authority
- CN
- China
- Prior art keywords
- character string
- encryption
- ciphertext
- original
- string
- 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
- 238000000034 method Methods 0.000 title claims abstract description 51
- 238000012545 processing Methods 0.000 claims abstract description 14
- 238000006243 chemical reaction Methods 0.000 claims description 12
- 238000004590 computer program Methods 0.000 claims description 6
- 230000006870 function Effects 0.000 claims description 5
- 230000007306 turnover Effects 0.000 claims description 5
- 230000009286 beneficial effect Effects 0.000 abstract description 2
- 230000008569 process Effects 0.000 description 10
- 230000009466 transformation Effects 0.000 description 7
- 230000009471 action Effects 0.000 description 3
- 238000005336 cracking Methods 0.000 description 3
- 230000007246 mechanism Effects 0.000 description 3
- 238000010586 diagram Methods 0.000 description 2
- 238000013507 mapping Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000012935 Averaging Methods 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/06—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols the encryption apparatus using shift registers or memories for block-wise or stream coding, e.g. DES systems or RC4; Hash functions; Pseudorandom sequence generators
- H04L9/0643—Hash functions, e.g. MD5, SHA, HMAC or f9 MAC
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/083—Network architectures or network communication protocols for network security for authentication of entities using passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0863—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving passwords or one-time passwords
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0869—Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Hardware Design (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Power Engineering (AREA)
- Storage Device Security (AREA)
Abstract
本发明公开了一种加密方法、装置及设备。该方法的步骤包括:获取明文字符串;通过MD5加密算法对明文字符串执行加密处理得到原始密文字符串;对原始密文字符串执行预设加密逻辑的加密操作得到结果密文字符串,以供解密设备根据与预设加密逻辑对应的预设解密逻辑对结果密文字符串执行解密操作得到原始密文字符串。由于本方法是在对明文字符串进行MD5加密算法加密得到原始密文字符串后,根据预设加密逻辑进一步对原始密文字符串再次进行加密操作,因此能够进一步确保基于MD5加密算法加密后的密文字符串的数据安全性。此外,本发明还提供一种加密装置及设备,有益效果同上所述。
Description
技术领域
本发明涉及数据安全领域,特别是涉及一种加密方法、装置及设备。
背景技术
对于用户的相关数据进行加密存储是当前网络应用确保用户数据安全所普遍采用的策略。
以网络应用中用户的账号密码登录机制为例,网络应用的后台往往存储有经过MD5加密算法加密后的用户账号以及用户密码,进而用户在网络应用中进行登录操作时,网络应用的前端利用该MD5加密算法对用户输入的账号以及密码进行加密,并与后台已存储的加密后的合法用户账号以及用户密码进行比对,以此判断用户是否为合法登录,虽然MD5加密算法具有不可破解性,但是其同样存在局限性,对相同明文字符串采用同一MD5加密算法进行加密得到的密文字符串始终相同,导致明文字符串与密文字符串之间具有可穷举的对应关系,因此当前存在对MD5加密算法加密得到的密文字符串进行破解的机制,其核心原理便是收集各种明文字符串经过MD5加密算法加密后的值保存起来,形成庞大的字典,进而通过字典获取与密文字符串存在对应关系的明文字符串,以此实现对于密文字符串的破解,导致难以确保基于MD5加密算法加密后得到的密文字符串的数据安全性。
由此可见,提供一种加密方法,以相对确保基于MD5加密算法加密后的密文字符串的数据安全性,是本领域技术人员需要解决的问题。
发明内容
本发明的目的是提供一种加密方法、装置及设备,以相对确保基于MD5加密算法加密后的密文字符串的数据安全性。
为解决上述技术问题,本发明提供一种加密方法,包括:
获取明文字符串;
通过MD5加密算法对明文字符串执行加密处理得到原始密文字符串;
对原始密文字符串执行预设加密逻辑的加密操作得到结果密文字符串,以供解密设备根据与预设加密逻辑对应的预设解密逻辑对结果密文字符串执行解密操作得到原始密文字符串。
优选的,对原始密文字符串执行预设加密逻辑的加密操作得到结果密文字符串,包括:
将原始密文字符串中的每一个数位的值变换为相应数位进制的余数,并将变换后的原始密文字符串设置为结果密文字符串。
优选的,对原始密文字符串执行预设加密逻辑的加密操作得到结果密文字符串,包括:
将原始密文字符串中的每一个数位的值增加预设值,并将变换后的原始密文字符串设置为结果密文字符串。
优选的,在对原始密文字符串执行预设加密逻辑的加密操作得到结果密文字符串之前,方法还包括:
生成中间字符串;
对原始密文字符串执行预设加密逻辑的加密操作得到结果密文字符串,包括:
在原始密文字符串中插入中间字符串的字符,并将变换后的原始密文字符串设置为结果密文字符串。
优选的,生成中间字符串,包括:
获取解密设备的服务器IP地址,并基于哈希函数对服务器IP地址执行哈希运算得到中间字符串。
优选的,对原始密文字符串执行预设加密逻辑的加密操作得到结果密文字符串,包括:
对原始密文字符串执行字符翻转操作,并将变换后的原始密文字符串设置为结果密文字符串。
优选的,对原始密文字符串执行预设加密逻辑的加密操作得到结果密文字符串,包括:
将原始密文字符串中的每一个数位的值变换为相应数位进制的余数,并对变换后的原始字符串中每一个数位的值增加预设值;
生成中间字符串,在变换后的原始密文字符串中插入中间字符串的字符;
对变换后的原始密文字符串执行字符翻转操作,并将变换后的原始密文字符串设置为结果密文字符串。
此外,本发明还提供一种加密装置,包括:
获取模块,用于获取明文字符串;
摘要加密模块,用于通过MD5加密算法对明文字符串执行加密处理得到原始密文字符串;
密文加密模块,用于对原始密文字符串执行预设加密逻辑的加密操作得到结果密文字符串,以供解密设备根据与预设加密逻辑对应的预设解密逻辑对结果密文字符串执行解密操作得到原始密文字符串。
此外,本发明还提供一种加密设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行计算机程序时实现如上述的加密方法的步骤。
本发明所提供的加密方法,首先获取明文字符串,进而通过MD5加密算法对明文字符串执行加密处理,得到原始密文字符串,进而对原始密文字符串执行预设加密逻辑的加密操作,得到结果密文字符串,以供解密设备根据与加密逻辑对应的预设解密逻辑对结果密文字符串执行解密操作,得到原始密文字符串。由于本方法是在对明文字符串进行MD5加密算法加密得到原始密文字符串后,根据预设加密逻辑进一步对原始密文字符串再次进行加密操作,因此能够进一步确保基于MD5加密算法加密后的密文字符串的数据安全性。此外,本发明还提供一种加密装置及设备,有益效果同上所述。
附图说明
为了更清楚地说明本发明实施例,下面将对实施例中所需要使用的附图做简单的介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本发明实施例提供的一种加密方法的流程图;
图2为本发明实施例提供的另一种加密方法的流程图;
图3为本发明实施例提供的一种加密装置的结构图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下,所获得的所有其他实施例,都属于本发明保护范围。
网络应用的后台往往存储有经过MD5加密算法加密后的用户账号以及用户密码,进而用户在网络应用中进行登录操作时,网络应用的前端利用该MD5加密算法对用户输入的账号以及密码进行加密,并与后台已存储的加密后的合法用户账号以及用户密码进行比对,以此判断用户是否为合法登录,虽然MD5加密算法具有不可破解性,但是其同样存在局限性,对相同明文字符串采用同一MD5加密算法进行加密得到的密文字符串始终相同,导致明文字符串与密文字符串之间具有可穷举的对应关系,因此当前存在对MD5加密算法加密得到的密文字符串进行破解的机制,其核心原理便是收集各种明文字符串经过MD5加密算法加密后的值保存起来,形成庞大的字典,进而通过字典获取与密文字符串存在对应关系的明文字符串,以此实现对于密文字符串的破解,导致难以确保基于MD5加密算法加密后得到的密文字符串的数据安全性。
本发明的核心是提供一种加密方法,以相对确保基于MD5加密算法加密后的密文字符串的数据安全性。本发明的另一核心是提供一种加密装置及设备。
为了使本技术领域的人员更好地理解本发明方案,下面结合附图和具体实施方式对本发明作进一步的详细说明。
图1为本发明实施例提供的一种加密方法的流程图。请参考图1,加密方法的具体步骤包括:
步骤S10:获取明文字符串。
本步骤中的明文字符串指的是在实际业务场景下的业务字符串。
步骤S11:通过MD5加密算法对明文字符串执行加密处理得到原始密文字符串。
需要说明的是,本步骤中的MD5加密算法的主要特征是加密过程不需要密钥,并且经过加密的数据无法被解密,只有输入相同的明文数据经过相同的MD5加密算法才能得到相同的密文。
本步骤在获取到明文字符串后,进一步利用MD5加密算法对明文字符串执行加密处理,以此得到原始密文字符串,原始密文字符串是本方法中对明文字符串进行初步加密得到的结果,并且是在实际业务场景下需要使用的字符串,例如,在用户通过账号密码登录网络应用的场景中,网络应用的前端需要通过MD5加密算法对用户实际使用的账号密码进行加密,而后台需要基于前端加密后的密文字符串,判定用户此次登录的合法性。
步骤S12:对原始密文字符串执行预设加密逻辑的加密操作得到结果密文字符串,以供解密设备根据与预设加密逻辑对应的预设解密逻辑对结果密文字符串执行解密操作得到原始密文字符串。
本步骤的重点是在获取到原始密文字符串的基础上,进一步对原始密文字符串执行预设加密逻辑的加密操作,得到结果密文。需要强调的是,本步骤中的预设加密逻辑应存在对应的预设解密逻辑,也就是说,预设加密逻辑的加密过程是可逆的,在通过预设加密逻辑对原始密文字符串进行加密操作得到结果密文字符串后,仍能够基于预设解密逻辑对结果密文字符串执行解密操作得到原始密文字符串,例如可以通过对称密钥再次对原始密文字符串进行加密操作得到结果密文字符串,在得到结果密文字符串后,仍能够通过该对称密钥将结果密文字符串解密为原始密文字符串,目的是确保解密设备能够根据与预设加密逻辑对应的预设解密逻辑对结果密文字符串执行解密操作得到并正常使用原始密文字符串。
本发明所提供的加密方法,首先获取明文字符串,进而通过MD5加密算法对明文字符串执行加密处理,得到原始密文字符串,进而对原始密文字符串执行预设加密逻辑的加密操作,得到结果密文字符串,以供解密设备根据与加密逻辑对应的预设解密逻辑对结果密文字符串执行解密操作,得到原始密文字符串。由于本方法是在对明文字符串进行MD5加密算法加密得到原始密文字符串后,根据预设加密逻辑进一步对原始密文字符串再次进行加密操作,因此能够进一步确保基于MD5加密算法加密后的密文字符串的数据安全性。
在上述实施例的基础上,本发明还提供如下一系列优选的实施方式。
作为一种优选的实施方式,对原始密文字符串执行预设加密逻辑的加密操作得到结果密文字符串,包括:
将原始密文字符串中的每一个数位的值变换为相应数位进制的余数,并将变换后的原始密文字符串设置为结果密文字符串。
需要说明的是,本实施方式的重点是在对原始密文字符串执行预设加密逻辑的加密操作时,将原始密文字符串中的每一个数位的值变换为相应数位进制的余数,以此通过对原始密文字符串中各数位的值进行变化达到进一步对原始密文字符串进行进一步加密的目的,并将变换后的原始密文字符串设置为结果密文字符串,进一步保证了结果密文字符串的保密性,进而确保了基于MD5加密算法加密后的密文字符串的数据安全性。需要强调的是,本实施方式中原始密文字符串中的每一个数位指的是原始密文字符串在相应进制下的每一个进制位。
作为一种优选的实施方式,对原始密文字符串执行预设加密逻辑的加密操作得到结果密文字符串,包括:
将原始密文字符串中的每一个数位的值增加预设值,并将变换后的原始密文字符串设置为结果密文字符串。
需要说明的是,本实施方式的重点是在对原始密文字符串执行预设加密逻辑的加密操作时,将原始密文字符串中的每一个数位的值均增加预设值,以此通过对原始密文字符串中各数位的值进行变化达到进一步对原始密文字符串进行进一步加密的目的,并将变换后的原始密文字符串设置为结果密文字符串,进一步保证了结果密文字符串的保密性,进而确保了基于MD5加密算法加密后的密文字符串的数据安全性。需要强调的是,本实施方式中原始密文字符串中的每一个数位指的是原始密文字符串在相应进制下的每一个进制位。
作为一种优选的实施方式,在对原始密文字符串执行预设加密逻辑的加密操作得到结果密文字符串之前,方法还包括:
生成中间字符串;
对原始密文字符串执行预设加密逻辑的加密操作得到结果密文字符串,包括:
在原始密文字符串中插入中间字符串的字符,并将变换后的原始密文字符串设置为结果密文字符串。
需要说明的是,本实施方式的重点是预先生成中间字符串,并在对原始密文字符串执行预设加密逻辑的加密操作时,在原始密文字符串中插入中间字符串的字符,以此达到进一步对原始密文字符串进行进一步加密的目的,并将变换后的原始密文字符串设置为结果密文字符串,进一步保证了结果密文字符串的保密性,进而确保了基于MD5加密算法加密后的密文字符串的数据安全性。另外,需要说明的是,实施方式中在原始密文字符串中插入中间字符串的字符,可以具体是将中间字符串的字符插入至原始密文字符串的首部或尾部,也可以是将中间字符串中的字符分别插入至原始密文字符串中的多个字符位置,因此在原始密文字符串中插入中间字符串的字符所采用的具体方式,在此不做具体限定。
在上述实施方式的基础上,生成中间字符串,包括:
获取解密设备的服务器IP地址,并基于哈希函数对服务器IP地址执行哈希运算得到中间字符串。
本实施方式进一步将对于原始密文字符串的加密与解密设备之间建立关系,即获取解密设备的服务器IP地址,并基于哈希函数对服务器IP地址执行哈希运算得到对原始字符串进行加密所需的中间字符串,增加了产生中间字符串的复杂性,降低了中间字符串的可破解概率,以此能够进一步保证了结果密文字符串的保密性,进而确保了基于MD5加密算法加密后的密文字符串的数据安全性。
作为一种优选的实施方式,对原始密文字符串执行预设加密逻辑的加密操作得到结果密文字符串,包括:
对原始密文字符串执行字符翻转操作,并将变换后的原始密文字符串设置为结果密文字符串。
需要说明的是,本实施方式的重点是在对原始密文字符串执行预设加密逻辑的加密操作时,对原始密文字符串执行字符翻转操作,并将变换后的原始密文字符串设置为结果密文字符串,此处所指的字符翻转操作指的是对字符的顺序进行调换,例如原始密文字符串为‘0123’,则对原始密文字符串进行字符翻转后的结果密文字符串可以为‘3210’,也可以为‘1032’,应根据进行字符翻转操作时所基于的字符间隔而定,在此不做具体限定。本实施方式进一步保证了结果密文字符串的保密性,进而确保了基于MD5加密算法加密后的密文字符串的数据安全性。
图2为本发明实施例提供的另一种加密方法的流程图。请参考图2,加密方法的具体步骤包括:
步骤S20:获取明文字符串。
步骤S21:通过MD5加密算法对明文字符串执行加密处理得到原始密文字符串。
步骤S22:将原始密文字符串中的每一个数位的值变换为相应数位进制的余数,并对变换后的原始字符串中每一个数位的值增加预设值。
步骤S23:生成中间字符串,在变换后的原始密文字符串中插入中间字符串的字符。
步骤S24:对变换后的原始密文字符串执行字符翻转操作,并将变换后的原始密文字符串设置为结果密文字符串,以供解密设备根据与预设加密逻辑对应的预设解密逻辑对结果密文字符串执行解密操作得到原始密文字符串。
本实施例的重点在于,在通过MD5加密算法对明文字符串执行加密处理得到原始密文字符串后,分别对原始密文字符串顺序执行数位值的变换、数位值的增加、插入中间字符串的字符以及对字符串中字符的翻转,最终将完成上述一系列变换操作后的原始密文字符串设置为结果密文字符串。本实施例通过对原始密文字符串执行多种手段的综合加密,进一步保证了结果密文字符串的保密性,进而确保了基于MD5加密算法加密后的密文字符串的数据安全性。
为了进一步加深对于本发明技术方案的理解,下面提供一种具体场景下的场景实施例进行说明。
加密过程如下:
服务端和客户端设计多种将MD5密钥加密的算法,客户端在与服务端传输时,随机选取其中一种处理算法,将算法的序号k记录下,比如说k=2,则选取第2个处理算法处理即将加密的原始MD5字符串,以下以第2种处理算法为例讲解具体过程;
将原始的用户名密码使用MD5加密成32位的密文p,p为接收的传统密文,设如下所示:
P=2510c39011c5be704182423e3a695e91;
将用户要访问的服务端IP地址使用字符串哈希函数处理,得到哈希值x,将x中的所有数字取平均数,得到值y,根据y*4的数值判断与8、16、32中的哪一个值最接近,来决定随机生成一串8或者16或者32位的字符串,字符串中字符的取值范围为[0,f](16进制),比如平均数y=5则5*4=20最接近16,则生成16位的字符串为r,字符串的长度定为r.lenth,比如r=2db95e8e1a9267b7,则r.lenth=16;
取间隔i=32/r.lenth,此处i=2;
p按照原始字符取余数并增加i值的操作进行变换,设原始字符x,变换后为y,则y=x的余数+i,生成变换表如下:
原始x | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | a | b | c | d | e | f |
取余 | f | e | d | c | b | a | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
终值y | 1 | 0 | f | e | d | c | b | a | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 |
p按照变换表变换,则p变换后变为p=fc015e81005c63a1d09fdfe3e7b8c380
在上述变换基础上,在p字符串中,每隔i位均匀添加一个r中的字符,此处i=2因此相当于每隔2位插入一个字符,总计插入16位,得到的结果p如下;
p=fc(2)01(d)5e(b)81(9)00(5)5ce63(8)a1(e)d0(1)9f(a)df(9)e3(2)e7(6)b8(7)c3(b)80(7);
其中括号中的字符即为r中的各字符;
在上述变换基础上,生成一个随机数j,取值范围为[2,15],比如说j=7。
根据j=7变换上述p字符串,每隔7位翻转一次,最后不够7位的也全部翻转,处理后的p字符串如下:
p=5d102cf-00918be-836ec55-910de1a-3e9fdaf-78b67e2-708b3c;
在上述变换基础上,根据j生成一个随机串s,长度为j,内容取值范围为[0,f],例如s=f46a91c;
将字符串s追加至字符串p尾部,得到:
p=5d102cf-00918be-836ec55-910de1a-3e9fdaf-78b67e2-708b3c-f46a91c;
将参数j和i加到字符串p首部,得到:
p=725d102cf-00918be-836ec55-910de1a-3e9fdaf-78b67e2-708b3c-f46a91c;
将解析规则的序号k=2加到字符串p尾部,得到:
p=725d102cf-00918be-836ec55-910de1a-3e9fdaf-78b67e2-708b3c-f46a91c2,以此完成对于字符串p的进一步加密,得到结果密文字符串。
相应的,与加密过程对应的解密过程如下:
拿到加密后的字符串
p=725d102cf-00918be-836ec55-910de1a-3e9fdaf-78b67e2-708b3c-f46a91c2;
进一步取首位数字为干扰字符串的长度j=7,第二位数字为间隔i=2,则可以拿到j=7,i=2,取末尾的解析规则序号为k=2,表示服务器要采用第二种解析规则对加密串进行解析,从而得到:
p=5d102cf-00918be-836ec55-910de1a-3e9fdaf-78b67e2-708b3c-f46a91c;
在上述变换基础上,从末尾开始去掉长度为j=7的字符串,则得到:
p=5d102cf-00918be-836ec55-910de1a-3e9fdaf-78b67e2-708b3c;
在上述变换基础上,根据j=7对p进行翻转操作,则得到:
p=fc201d5-eb81900-55ce638-a1ed019-fadf9e3-2e76b87-c3b807;
在上述变换基础上,根据i=2每隔i位剔除一个字符,则得到:
p=fc015-e8100-5c63-a1d09-fdfe3-e7b8-c380
根据i=2获取到相应的变换映射表:
终值y | 1 | 0 | f | e | d | c | b | a | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 |
取余 | f | e | d | c | b | a | 9 | 8 | 7 | 6 | 5 | 4 | 3 | 2 | 1 | 0 |
原始x | 0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | a | b | c | d | e | f |
进而根据映射表即可得使用MD5对原始的用户名密码加密成的32位的密文p:
p=2510c39011c5be704182423e3a695e91。
图3为本发明实施例提供的一种加密装置的结构图。本发明实施例提供的加密装置,包括:
获取模块10,用于获取明文字符串。
摘要加密模块11,用于通过MD5加密算法对明文字符串执行加密处理得到原始密文字符串。
密文加密模块12,用于对原始密文字符串执行预设加密逻辑的加密操作得到结果密文字符串,以供解密设备根据与预设加密逻辑对应的预设解密逻辑对结果密文字符串执行解密操作得到原始密文字符串。
本发明所提供的加密装置,首先获取明文字符串,进而通过MD5加密算法对明文字符串执行加密处理,得到原始密文字符串,进而对原始密文字符串执行预设加密逻辑的加密操作,得到结果密文字符串,以供解密设备根据与加密逻辑对应的预设解密逻辑对结果密文字符串执行解密操作,得到原始密文字符串。由于本装置是在对明文字符串进行MD5加密算法加密得到原始密文字符串后,根据预设加密逻辑进一步对原始密文字符串再次进行加密操作,因此能够进一步确保基于MD5加密算法加密后的密文字符串的数据安全性。
此外,本发明还提供一种加密设备,包括:
存储器,用于存储计算机程序;
处理器,用于执行计算机程序时实现如上述的加密方法的步骤。
本发明所提供的加密设备,首先获取明文字符串,进而通过MD5加密算法对明文字符串执行加密处理,得到原始密文字符串,进而对原始密文字符串执行预设加密逻辑的加密操作,得到结果密文字符串,以供解密设备根据与加密逻辑对应的预设解密逻辑对结果密文字符串执行解密操作,得到原始密文字符串。由于本设备是在对明文字符串进行MD5加密算法加密得到原始密文字符串后,根据预设加密逻辑进一步对原始密文字符串再次进行加密操作,因此能够进一步确保基于MD5加密算法加密后的密文字符串的数据安全性。
以上对本发明所提供的一种加密方法、装置及设备进行了详细介绍。说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的装置而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以对本发明进行若干改进和修饰,这些改进和修饰也落入本发明权利要求的保护范围内。
还需要说明的是,在本说明书中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
Claims (9)
1.一种加密方法,其特征在于,包括:
获取明文字符串;
通过MD5加密算法对所述明文字符串执行加密处理得到原始密文字符串;
对所述原始密文字符串执行预设加密逻辑的加密操作得到结果密文字符串,以供解密设备根据与所述预设加密逻辑对应的预设解密逻辑对所述结果密文字符串执行解密操作得到所述原始密文字符串。
2.根据权利要求1所述的加密方法,其特征在于,所述对所述原始密文字符串执行预设加密逻辑的加密操作得到结果密文字符串,包括:
将所述原始密文字符串中的每一个数位的值变换为相应数位进制的余数,并将变换后的所述原始密文字符串设置为所述结果密文字符串。
3.根据权利要求1所述的加密方法,其特征在于,所述对所述原始密文字符串执行预设加密逻辑的加密操作得到结果密文字符串,包括:
将所述原始密文字符串中的每一个数位的值增加预设值,并将变换后的所述原始密文字符串设置为所述结果密文字符串。
4.根据权利要求1所述的加密方法,其特征在于,在所述对所述原始密文字符串执行预设加密逻辑的加密操作得到结果密文字符串之前,所述方法还包括:
生成中间字符串;
所述对所述原始密文字符串执行预设加密逻辑的加密操作得到结果密文字符串,包括:
在所述原始密文字符串中插入所述中间字符串的字符,并将变换后的所述原始密文字符串设置为所述结果密文字符串。
5.根据权利要求4所述的加密方法,其特征在于,所述生成中间字符串,包括:
获取所述解密设备的服务器IP地址,并基于哈希函数对所述服务器IP地址执行哈希运算得到所述中间字符串。
6.根据权利要求1所述的加密方法,其特征在于,所述对所述原始密文字符串执行预设加密逻辑的加密操作得到结果密文字符串,包括:
对所述原始密文字符串执行字符翻转操作,并将变换后的所述原始密文字符串设置为所述结果密文字符串。
7.根据权利要求1至6任意一项所述的加密方法,其特征在于,所述对所述原始密文字符串执行预设加密逻辑的加密操作得到结果密文字符串,包括:
将所述原始密文字符串中的每一个数位的值变换为相应数位进制的余数,并对变换后的所述原始字符串中每一个数位的值增加预设值;
生成中间字符串,在变换后的所述原始密文字符串中插入所述中间字符串的字符;
对变换后的所述原始密文字符串执行字符翻转操作,并将变换后的所述原始密文字符串设置为所述结果密文字符串。
8.一种加密装置,其特征在于,包括:
获取模块,用于获取明文字符串;
摘要加密模块,用于通过MD5加密算法对所述明文字符串执行加密处理得到原始密文字符串;
密文加密模块,用于对所述原始密文字符串执行预设加密逻辑的加密操作得到结果密文字符串,以供解密设备根据与所述预设加密逻辑对应的预设解密逻辑对所述结果密文字符串执行解密操作得到所述原始密文字符串。
9.一种加密设备,其特征在于,包括:
存储器,用于存储计算机程序;
处理器,用于执行所述计算机程序时实现如权利要求1至7任一项所述的加密方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911318507.0A CN111030803A (zh) | 2019-12-19 | 2019-12-19 | 一种加密方法、装置及设备 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201911318507.0A CN111030803A (zh) | 2019-12-19 | 2019-12-19 | 一种加密方法、装置及设备 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN111030803A true CN111030803A (zh) | 2020-04-17 |
Family
ID=70210602
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201911318507.0A Pending CN111030803A (zh) | 2019-12-19 | 2019-12-19 | 一种加密方法、装置及设备 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN111030803A (zh) |
Cited By (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111984989A (zh) * | 2020-09-01 | 2020-11-24 | 上海梅斯医药科技有限公司 | 一种自身校验发布和访问url的方法、装置、系统和介质 |
CN112364015A (zh) * | 2020-10-27 | 2021-02-12 | 北京新数科技有限公司 | 一种SQL语句唯一性hashID的计算方法和装置 |
CN112422494A (zh) * | 2020-08-06 | 2021-02-26 | 上海幻电信息科技有限公司 | 数据传输方法、数据安全验证方法及数据传输系统 |
CN114124465A (zh) * | 2021-10-28 | 2022-03-01 | 济南浪潮数据技术有限公司 | 一种数据传输方法、系统、设备及计算机可读存储介质 |
CN116132159A (zh) * | 2023-02-02 | 2023-05-16 | 马上消费金融股份有限公司 | 数据加密方法、装置、电子设备及存储介质 |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104125055A (zh) * | 2014-06-25 | 2014-10-29 | 小米科技有限责任公司 | 加密、解密方法及电子设备 |
CN105005731A (zh) * | 2015-06-30 | 2015-10-28 | 广东欧珀移动通信有限公司 | 一种数据加密、解密的方法及移动终端 |
CN106790288A (zh) * | 2017-03-03 | 2017-05-31 | 北京恒华伟业科技股份有限公司 | 一种数据加密、解密方法和装置 |
CN108155985A (zh) * | 2017-06-29 | 2018-06-12 | 广东网金云计算有限公司 | 一种加解密方法、装置及用户终端 |
-
2019
- 2019-12-19 CN CN201911318507.0A patent/CN111030803A/zh active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104125055A (zh) * | 2014-06-25 | 2014-10-29 | 小米科技有限责任公司 | 加密、解密方法及电子设备 |
CN105005731A (zh) * | 2015-06-30 | 2015-10-28 | 广东欧珀移动通信有限公司 | 一种数据加密、解密的方法及移动终端 |
CN106790288A (zh) * | 2017-03-03 | 2017-05-31 | 北京恒华伟业科技股份有限公司 | 一种数据加密、解密方法和装置 |
CN108155985A (zh) * | 2017-06-29 | 2018-06-12 | 广东网金云计算有限公司 | 一种加解密方法、装置及用户终端 |
Cited By (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112422494A (zh) * | 2020-08-06 | 2021-02-26 | 上海幻电信息科技有限公司 | 数据传输方法、数据安全验证方法及数据传输系统 |
CN111984989A (zh) * | 2020-09-01 | 2020-11-24 | 上海梅斯医药科技有限公司 | 一种自身校验发布和访问url的方法、装置、系统和介质 |
CN111984989B (zh) * | 2020-09-01 | 2024-04-12 | 上海梅斯医药科技有限公司 | 一种自身校验发布和访问url的方法、装置、系统和介质 |
CN112364015A (zh) * | 2020-10-27 | 2021-02-12 | 北京新数科技有限公司 | 一种SQL语句唯一性hashID的计算方法和装置 |
CN112364015B (zh) * | 2020-10-27 | 2024-02-23 | 北京新数科技有限公司 | 一种SQL语句唯一性hashID的计算方法和装置 |
CN114124465A (zh) * | 2021-10-28 | 2022-03-01 | 济南浪潮数据技术有限公司 | 一种数据传输方法、系统、设备及计算机可读存储介质 |
CN116132159A (zh) * | 2023-02-02 | 2023-05-16 | 马上消费金融股份有限公司 | 数据加密方法、装置、电子设备及存储介质 |
CN116132159B (zh) * | 2023-02-02 | 2024-04-09 | 马上消费金融股份有限公司 | 数据加密方法、装置、电子设备及存储介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN111030803A (zh) | 一种加密方法、装置及设备 | |
CN110493202B (zh) | 登录令牌的生成及验证方法、装置和服务器 | |
CN106571925B (zh) | 对区块链系统中的区块进行工作量证明的方法及装置 | |
EP3200385A1 (en) | Encryption method and encryption device | |
CN107612683B (zh) | 一种加解密方法、装置、系统、设备和存储介质 | |
CN101383703B (zh) | 基于广义信息域的动态加解密方法 | |
CN112437060B (zh) | 一种数据传输方法、装置、计算机设备及存储介质 | |
CN114443718B (zh) | 一种数据查询方法及系统 | |
CN106789058B (zh) | 一种代理重加密算法描述及解析方法 | |
CN111414635A (zh) | 文件加密、解密方法、装置、设备和存储介质 | |
Cortez et al. | Cryptographic randomness test of the modified hashing function of SHA256 to address length extension attack | |
CN111447059B (zh) | 密文等值测试方法、装置、电子设备、存储介质及系统 | |
CN104639528A (zh) | 一种dba移动客户端反攻击方法及装置 | |
Huang et al. | A secure communication over wireless environments by using a data connection core | |
US8862893B2 (en) | Techniques for performing symmetric cryptography | |
Cortez et al. | Cryptanalysis of the Modified SHA256 | |
CN106357662B (zh) | 一种基于mac地址的数据加密方法 | |
CN111259445A (zh) | 一种数据库平台访问方法、装置、设备、介质 | |
CN107493164B (zh) | 一种基于混沌系统的des加密方法和系统 | |
Algazy et al. | Evaluation of the strength and performance of a new hashing algorithm based on a block cipher | |
CN115632765A (zh) | 加密方法、解密方法、装置、电子设备及存储介质 | |
CN114978711A (zh) | 一种动态秘钥对称加密的数据传输方法及系统 | |
CN112422278A (zh) | 面向字节的随机多表替换加密与解密方法 | |
CN111611595B (zh) | 一种数据加密方法及装置 | |
CN115174152B (zh) | 一种群组测试认证加密方法、验证解密方法及通信方法 |
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 | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20200417 |