CN117118647A - 一种数据加密方法、装置、计算机设备和存储介质 - Google Patents
一种数据加密方法、装置、计算机设备和存储介质 Download PDFInfo
- Publication number
- CN117118647A CN117118647A CN202211709085.1A CN202211709085A CN117118647A CN 117118647 A CN117118647 A CN 117118647A CN 202211709085 A CN202211709085 A CN 202211709085A CN 117118647 A CN117118647 A CN 117118647A
- Authority
- CN
- China
- Prior art keywords
- data
- encrypted
- encryption
- information
- encryption key
- 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 44
- 238000013506 data mapping Methods 0.000 claims abstract description 93
- 230000005540 biological transmission Effects 0.000 claims abstract description 19
- 238000013507 mapping Methods 0.000 claims description 34
- 238000004364 calculation method Methods 0.000 claims description 12
- 238000012360 testing method Methods 0.000 claims description 9
- 238000004590 computer program Methods 0.000 claims description 7
- 230000006870 function Effects 0.000 description 14
- 238000004891 communication Methods 0.000 description 6
- 238000001514 detection method Methods 0.000 description 5
- 238000010586 diagram Methods 0.000 description 5
- 238000012545 processing Methods 0.000 description 5
- 238000005516 engineering process Methods 0.000 description 3
- 230000001133 acceleration Effects 0.000 description 2
- 230000005484 gravity Effects 0.000 description 2
- 239000004973 liquid crystal related substance Substances 0.000 description 2
- 230000007774 longterm Effects 0.000 description 2
- 238000007726 management method Methods 0.000 description 2
- 238000010295 mobile communication Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 230000005236 sound signal Effects 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000009286 beneficial effect Effects 0.000 description 1
- 238000004422 calculation algorithm Methods 0.000 description 1
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 238000010897 surface acoustic wave method Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- 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
- 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
-
- 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)
- Storage Device Security (AREA)
Abstract
本发明实施例公开了一种数据加密方法、装置、计算机设备和存储介质;可以获取随机数集合和数据映射信息,随机数集合中包括若干个随机数,数据映射信息根据进行数据加密的电子设备的设备信息确定,基于数据映射信息对随机数集合中的随机数进行映射,得到第一加密密钥,获取待加密数据的数据描述信息,根据第一加密密钥对数据描述信息进行运算,得到加密描述信息,根据数据映射信息对数据描述信息进行映射,得到第二加密密钥,通过第一加密密钥和第二加密密钥,对待加密数据进行运算,得到初始加密后数据,基于第一加密密钥、第二加密密钥、加密描述信息和初始加密后数据,生成待加密数据对应的加密后数据;可以增强数据传输过程中数据的安全性。
Description
技术领域
本发明涉及数据处理技术领域,具体涉及一种数据加密方法、装置、计算机设备和存储介质。
背景技术
随着当前科技的快速发展,不同设备之间进行数据传输的需求越来越高。而数据传输过程中的数据安全问题也越来越被人们重视。
目前,在对数据进行传输时如果不对数据进行加密,或者采用简单的加密方式,则数据的安全性无法得到保证。而如果采用复杂的加密算法对数据进行处理,则会占用大量的计算资源,且计算所需的时间较长,影响数据的传输效率。
发明内容
本发明实施例提供一种数据加密方法、装置、计算机设备和存储介质,可以增强数据传输过程中数据的安全性。
本发明实施例提供一种数据加密方法,包括:
获取随机数集合和数据映射信息,所述随机数集合中包括若干个随机数,所述数据映射信息根据预设的电子设备的设备信息确定;
基于所述数据映射信息对所述随机数集合中的所述随机数进行映射,得到第一加密密钥;
获取待加密数据的数据描述信息,根据所述第一加密密钥对所述数据描述信息进行运算,得到加密描述信息;
根据数据映射信息对所述数据描述信息进行映射,得到第二加密密钥;
通过所述第一加密密钥和所述第二加密密钥,对所述待加密数据进行运算,得到初始加密后数据;
基于所述随机数集合、所述加密描述信息和所述初始加密后数据,生成所述待加密数据对应的加密后数据。
相应的,本发明实施例还提供一种数据加密装置,包括:
信息获取单元,用于获取随机数集合和数据映射信息,所述随机数集合中包括若干个随机数,所述数据映射信息根据预设的电子设备的设备信息确定;
第一密钥生成单元,用于基于所述数据映射信息对所述随机数集合中的所述随机数进行映射,得到第一加密密钥;
第一加密单元,用于获取待加密数据的数据描述信息,根据所述第一加密密钥对所述数据描述信息进行运算,得到加密描述信息;
第二密钥生成单元,用于根据数据映射信息对所述数据描述信息进行映射,得到第二加密密钥;
第二加密单元,用于通过所述第一加密密钥和所述第二加密密钥,对所述待加密数据进行运算,得到初始加密后数据;
数据生成单元,用于基于所述随机数集合、所述加密描述信息和所述初始加密后数据,生成所述待加密数据对应的加密后数据。
可选的,所述信息获取单元,用于获取待加密数据的数据加密时间,基于所述数据加密时间生成随机数序列;
以预设的随机数选择规则,从所述随机数序列中选择目标随机数生成随机数集合。
可选的,所述待加密数据包括至少一个待加密数据包,所述数据描述信息包括所述待加密数据包的数据包标识;
所述第二密钥生成单元,用于从所述待加密数据中,确定当前进行加密的目标待加密数据包;
根据数据映射信息对所述目标待加密数据包的所述数据包标识进行映射,得到所述目标待加密数据包对应的第二加密密钥;
所述第二加密单元,用于通过所述第一加密密钥和所述第二加密密钥,对所述目标待加密数据包进行运算,得到初始加密后数据包;
返回执行所述从所述待加密数据中,确定当前进行加密的目标待加密数据包的步骤,直到所述待加密数据中的所述待加密数据包均对应有所述初始加密后数据包位置;
基于各所述初始加密后数据包,生成初始加密后数据。
可选的,本发明实施例还包括附加信息获取单元,用于统计所述待加密数据的数据长度,获取预设的传输情况测试信息;
所述数据生成单元,用于基于所述随机数集合、所述加密描述信息、所述初始加密后数据、所述数据长度和所述传输情况测试信息进行信息拼接,生成所述待加密数据对应的加密后数据。
可选的,本发明实施例还包括数据发送单元,用于向数据接收设备发送所述加密后数据,触发所述数据接收设备基于所述加密后数据中的所述随机数集合,对所述加密描述信息和所述初始加密后数据进行数据解密,得到所述待加密数据。
可选的,所述第一密钥生成单元,用于确定所述随机数集合中的所述随机数对应的位值序列;
根据所述数据映射信息的字节数量,对所述位值序列进行划分,得到至少一个位值子序列;
计算各所述位值子序列对应的映射数值,从所述数据映射信息中选择所述映射数值对应的字节下的所述数据映射子信息,生成第一加密密钥。
可选的,所述第一加密密钥包括至少一个字节的第一加密密钥数据,所述数据描述信息包括至少一个字节的描述信息数据;
所述第一加密单元,用于将所述第一加密密钥中各个字节的所述第一加密密钥数据分别与所述数据描述信息中各个字节的所述描述信息数据进行异或计算,得到异或运算结果;
基于各所述异或运算结果,生成加密描述信息。
相应的,本发明实施例还提供一种计算机设备,包括存储器和处理器;所述存储器存储有应用程序,所述处理器用于运行所述存储器内的应用程序,以执行本发明实施例所提供的任一种数据加密方法中的步骤。
相应的,本发明实施例还提供一种计算机可读存储介质,所述计算机可读存储介质存储有多条指令,所述指令适于处理器进行加载,以执行本发明实施例所提供的任一种数据加密方法中的步骤。
此外,本发明实施例还提供一种计算机程序产品,包括计算机程序或指令,所述计算机程序或指令被处理器执行时实现本发明实施例所提供的任一种数据加密方法中的步骤。
采用本发明实施例的方案,可以获取随机数集合和数据映射信息,所述随机数集合中包括若干个随机数,所述数据映射信息根据预设的电子设备的设备信息确定,基于所述数据映射信息对所述随机数集合中的所述随机数进行映射,得到第一加密密钥,获取待加密数据的数据描述信息,根据所述第一加密密钥对所述数据描述信息进行运算,得到加密描述信息,根据数据映射信息对所述数据描述信息进行映射,得到第二加密密钥,通过所述第一加密密钥和所述第二加密密钥,对所述待加密数据进行运算,得到初始加密后数据,基于所述随机数集合、所述加密描述信息和所述初始加密后数据,生成所述待加密数据对应的加密后数据;由于在本发明实施例中,可以基于与特定的计算机设备相关的数据映射信息计算加密密钥,通过加密密钥对待加密数据本身以及数据描述信息均进行了加密运算,因此,可以增强数据传输过程中数据的安全性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的数据加密方法的场景示意图;
图2是本发明实施例提供的数据加密方法的流程图;
图3是本发明实施例提供的加密后数据的数据组成示意图;
图4是本发明实施例提供的数据加密装置的结构示意图;
图5是本发明实施例提供的数据加密装置的另一结构示意图;
图6是本发明实施例提供的计算机设备的结构示意图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明实施例提供一种数据加密方法、装置、计算机设备和计算机可读存储介质。具体地,本发明实施例提供适用于数据加密装置的数据加密方法,该数据加密装置可以集成在计算机设备中。
该计算机设备可以为终端等设备,包括但不限于移动终端和固定终端,例如移动终端包括但不限于智能手机、智能手表、平板电脑、笔记本电脑、智能车载等,其中,固定终端包括但不限于台式电脑、智能电视等。
该计算机设备还可以为服务器等设备,该服务器可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN(ContentDelivery Network,内容分发网络)、以及大数据和人工智能平台等基础云计算服务的云服务器,但并不局限于此。
本发明实施例的数据加密方法,可以由服务器实现,也可以由终端和服务器共同实现。
下面以终端和服务器共同实现该数据加密方法为例,对该方法进行说明。
如图1所示,本发明实施例提供的数据加密系统包括终端10和服务器20等;终端10与服务器20之间通过网络连接,比如,通过有线或无线网络连接等,其中,终端10可以作为向服务器20发送数据的终端存在。
其中,终端10可以用于获取随机数集合和数据映射信息,所述随机数集合中包括若干个随机数,所述数据映射信息根据预设的电子设备的设备信息确定,基于所述数据映射信息对所述随机数集合中的所述随机数进行映射,得到第一加密密钥,获取待加密数据的数据描述信息,根据所述第一加密密钥对所述数据描述信息进行运算,得到加密描述信息,根据数据映射信息对所述数据描述信息进行映射,得到第二加密密钥,通过所述第一加密密钥和所述第二加密密钥,对所述待加密数据进行运算,得到初始加密后数据,基于所述随机数集合、所述加密描述信息和所述初始加密后数据,生成所述待加密数据对应的加密后数据。
服务器20可以接收终端10发送的加密后数据,基于所述加密后数据中的所述第一加密密钥和所述第二加密密钥,对所述加密描述信息和所述初始加密后数据进行数据解密,得到所述待加密数据。
可以理解的是,终端10执行的数据加密的步骤也可以由服务器20执行,本发明实施例对此不作限定。
以下分别进行详细说明。需要说明的是,以下实施例的描述顺序不作为对实施例优选顺序的限定。
本发明实施例将从数据加密装置的角度进行描述,该数据加密装置具体可以集成在服务器或终端中。
如图2所示,本实施例的数据加密方法的具体流程可以如下:
201、获取随机数集合和数据映射信息,所述随机数集合中包括若干个随机数,所述数据映射信息根据预设的电子设备的设备信息确定。
其中,随机数集合是由至少一个随机数构成的集合。本发明实施例对随机数的大小和数量不做限定。例如,随机数集合中可以只有一个随机数,该随机数需要占据4字节的存储空间;或者,随机数集合中也可以有多个随机数,这些随机数之和需要占据4字节的存储空间,等等。
其中,数据映射信息用于对特定的信息进行映射,得到特定的信息所对应的密钥。比如,数据映射信息可以对随机数集合进行映射,得到第一加密密钥等。
具体的,数据映射信息可以是与进行数据加密的电子设备的设备信息相关,或者,数据映射信息可以是与接收加密后数据的电子设备的设备信息相关。
例如,数据映射信息可以是电子设备的MAC地址和/或序列号等等。本发明实施例对数据映射信息的大小和形式不做限定。例如,数据映射信息可以是十六字节的数组,等等。
在一些可选的实施例中,随机数集合中的随机数可以是以时间等信息作为随机数种子生成的,也就是说,步骤“获取随机数集合”,具体可以包括:
获取待加密数据的数据加密时间,基于所述数据加密时间生成随机数序列;
以预设的随机数选择规则,从所述随机数序列中选择目标随机数生成随机数集合。
例如,可以使用srand((unsigned)time(NULL))函数生成随机数序列,再使用Rand()函数从随机数序列中选择出目标随机数。
在另一些可选的实施例中,随机数序列也可以是根据当前进程句柄、当前进程ID号等生成的。
202、基于所述数据映射信息对所述随机数集合中的所述随机数进行映射,得到第一加密密钥。
具体的,在进行映射时,可以是将随机数以数据映射信息重新进行表示。
在一些可选的实施例中,所述数据映射信息可以包括至少一个字节的数据映射子信息,步骤“基于所述数据映射信息对所述随机数集合中的所述随机数进行映射,得到第一加密密钥”,具体可以包括:
确定所述随机数集合中的所述随机数对应的位值序列;
根据所述数据映射信息的字节数量,对所述位值序列进行划分,得到至少一个位值子序列;
计算各所述位值子序列对应的映射数值,从所述数据映射信息中选择所述映射数值对应的字节下的所述数据映射子信息,生成第一加密密钥。
例如,随机数可以是4字节,即一个32比特的位值序列;数据映射信息可以是16字节(0-15)的数组。在划分时,可以将32比特的位值序列划分为8个4比特的位值子序列。
如果某个位值子序列对应的值为1111,计算该位值子序列的映射数值即为15,可以将数据映射信息中第16个字节的数据作为一个字节密钥。最终,可以生成8字节的第一加密密钥。
203、获取待加密数据的数据描述信息,根据所述第一加密密钥对所述数据描述信息进行运算,得到加密描述信息。
其中,数据描述信息可以是待加密数据的包头信息。例如,数据描述信息可以包括但不限于fec原始包和冗余包数量,fec流水包号和fec拆出的子包流水号,等等。
具体的,可以通过异或计算,得到加密描述信息。例如,所述第一加密密钥包括至少一个字节的第一加密密钥数据,所述数据描述信息包括至少一个字节的描述信息数据,步骤“根据所述第一加密密钥对所述数据描述信息进行运算,得到加密描述信息”,具体可以包括:
将所述第一加密密钥中各个字节的所述第一加密密钥数据分别与所述数据描述信息中各个字节的所述描述信息数据进行异或计算,得到异或运算结果;
基于各所述异或运算结果,生成加密描述信息。
以数据描述信息包括fec原始包数量、冗余包数量、fec流水包号和fec拆出的子包流水号四个字节为例,具体加密时,可以将这四个字节分别与第一加密密钥的前四个字节异或,得出加密描述信息。
204、根据数据映射信息对所述数据描述信息进行映射,得到第二加密密钥。
具体的,在进行映射时,可以将数据描述信息中的部分信息或者全部信息进行映射。
需要说明的是,映射第二加密密钥的方式可以与第一加密密钥相同,也可以与第一加密密钥不同。可选的,数据描述信息可以包括待加密数据的子包流水号,步骤204可以包括:
确定所述子包流水号的位值序列;
根据所述数据映射信息的字节数量,对所述位值序列进行划分,得到至少一个位值子序列;
计算各所述位值子序列对应的映射数值,从所述数据映射信息中选择所述映射数值对应的字节下的所述数据映射子信息,生成第二加密密钥。
例如,可以根据一个字节的子包流水号4bit*2和数据映射信息得到两个字节密匙,即第二加密密钥。
205、通过所述第一加密密钥和所述第二加密密钥,对所述待加密数据进行运算,得到初始加密后数据。
具体的,初始加密后数据的加密方式,也可以是将第一加密密钥和第二加密密钥与待加密数据进行异或计算。
也就是说,所述第一加密密钥包括至少一个字节的第一加密密钥数据,,所述第二加密密钥包括至少一个字节的第二加密密钥数据,步骤204具体可以包括:将所述第一加密密钥中各个字节的所述第一加密密钥数据以及所述第二加密密钥中各个字节的所述第二加密密钥数据,分别与所述待加密数据中各个字节的数据进行异或计算,得到异或运算结果;
基于各所述异或运算结果,生成加密描述信息。
具体的,在进行异或计算时,可以是依次针对待加密数据中一个字节的数据,分别将各个字节的第一加密密钥数据和第二加密密钥数据进行异或,将所有的异或结果记录为该字节的数据的初始异或运算结果,最终根据所有字节的初始异或运算结果,得到异或运算结果。
或者,在进行异或计算时,可以是将各个字节的第一加密密钥数据和第二加密密钥数据进行拼接,得到加密密钥,将待加密数据中各个字节的数据分别与加密密钥中对应字节的加密密钥数据进行异或。例如,待加密数据中第三个字节的数据,即与加密密钥中第三个字节的加密密钥数据进行异或,等等。
可选的,所述待加密数据可以包括至少一个待加密数据包,所述数据描述信息可以包括所述待加密数据包的数据包标识,步骤“根据数据映射信息对所述数据描述信息进行映射,得到第二加密密钥”,包括:
从所述待加密数据中,确定当前进行加密的目标待加密数据包;
根据数据映射信息对所述目标待加密数据包的所述数据包标识进行映射,得到所述目标待加密数据包对应的第二加密密钥;
相应的,步骤“通过所述第一加密密钥和所述第二加密密钥,对所述待加密数据进行运算,得到初始加密后数据”,包括:
通过所述第一加密密钥和所述第二加密密钥,对所述目标待加密数据包进行运算,得到初始加密后数据包;
返回执行所述从所述待加密数据中,确定当前进行加密的目标待加密数据包的步骤,直到所述待加密数据中的所述待加密数据包均对应有所述初始加密后数据包位置;
基于各所述初始加密后数据包,生成初始加密后数据。
也就是说,当待加密数据有多个子包时,需要对各个子包分别计算第二加密密钥,进而对各个子包中的数据进行加密处理。
206、基于所述随机数集合、所述加密描述信息和所述初始加密后数据,生成所述待加密数据对应的加密后数据。
例如,加密后数据可以是将随机数集合、加密描述信息和所述初始加密后数据直接按顺序拼接得到的。
可选的,加密后数据中还可以包括其他的信息,步骤“基于所述随机数集合、所述加密描述信息和所述初始加密后数据,生成所述待加密数据对应的加密后数据”之前,本发明实施例提供的数据加密方法还可以包括:
统计所述待加密数据的数据长度,获取预设的传输情况测试信息;
相应的,步骤“基于所述随机数集合、所述加密描述信息和所述初始加密后数据,生成所述待加密数据对应的加密后数据”,包括:
基于所述随机数集合、所述加密描述信息、所述初始加密后数据、所述数据长度和所述传输情况测试信息进行信息拼接,生成所述待加密数据对应的加密后数据。
例如,传输情况测试信息可以是0x55,0xAA。最终加密后数据可以包括表头(0x55,0xAA)+数据长度(两个字节)+随机数(四个字节)+加密数据(N字节)+CRC32(四个字节)。
如图3所示,加密后数据中还可以包括CRC32,等等。
可以理解的是,生成加密后数据可以将加密后数据发送给相应的设备,本发明实施例提供的数据加密方法还可以包括:
向数据接收设备发送所述加密后数据,触发所述数据接收设备基于所述加密后数据中的所述随机数集合,对所述加密描述信息和所述初始加密后数据进行数据解密,得到所述待加密数据。
由上可知,本发明实施例可以获取随机数集合和数据映射信息,所述随机数集合中包括若干个随机数,所述数据映射信息根据预设的电子设备的设备信息确定,基于所述数据映射信息对所述随机数集合中的所述随机数进行映射,得到第一加密密钥,获取待加密数据的数据描述信息,根据所述第一加密密钥对所述数据描述信息进行运算,得到加密描述信息,根据数据映射信息对所述数据描述信息进行映射,得到第二加密密钥,通过所述第一加密密钥和所述第二加密密钥,对所述待加密数据进行运算,得到初始加密后数据,基于所述随机数集合、所述加密描述信息和所述初始加密后数据,生成所述待加密数据对应的加密后数据;由于在本发明实施例中,可以基于与特定的计算机设备相关的数据映射信息计算加密密钥,通过加密密钥对待加密数据本身以及数据描述信息均进行了加密运算,因此,可以增强数据传输过程中数据的安全性。
为了更好地实施以上方法,相应的,本发明实施例还提供一种数据加密装置。
参考图4,该装置包括:
信息获取单元401,可以用于获取随机数集合和数据映射信息,所述随机数集合中可以包括若干个随机数,所述数据映射信息根据预设的电子设备的设备信息确定;
第一密钥生成单元402,可以用于基于所述数据映射信息对所述随机数集合中的所述随机数进行映射,得到第一加密密钥;
第一加密单元403,可以用于获取待加密数据的数据描述信息,根据所述第一加密密钥对所述数据描述信息进行运算,得到加密描述信息;
第二密钥生成单元404,可以用于根据数据映射信息对所述数据描述信息进行映射,得到第二加密密钥;
第二加密单元405,可以用于通过所述第一加密密钥和所述第二加密密钥,对所述待加密数据进行运算,得到初始加密后数据;
数据生成单元406,可以用于基于所述随机数集合、所述加密描述信息和所述初始加密后数据,生成所述待加密数据对应的加密后数据。
在一些可选的实施例中,所述信息获取单元401,可以用于获取待加密数据的数据加密时间,基于所述数据加密时间生成随机数序列;
以预设的随机数选择规则,从所述随机数序列中选择目标随机数生成随机数集合。
在一些可选的实施例中,所述待加密数据可以包括至少一个待加密数据包,所述数据描述信息可以包括所述待加密数据包的数据包标识;
所述第二密钥生成单元404,可以用于从所述待加密数据中,确定当前进行加密的目标待加密数据包;
根据数据映射信息对所述目标待加密数据包的所述数据包标识进行映射,得到所述目标待加密数据包对应的第二加密密钥;
所述第二加密单元,可以用于通过所述第一加密密钥和所述第二加密密钥,对所述目标待加密数据包进行运算,得到初始加密后数据包;
返回执行所述从所述待加密数据中,确定当前进行加密的目标待加密数据包的步骤,直到所述待加密数据中的所述待加密数据包均对应有所述初始加密后数据包位置;
基于各所述初始加密后数据包,生成初始加密后数据。
在一些可选的实施例中,如图5所示,本发明实施例还可以包括附加信息获取单元407,可以用于统计所述待加密数据的数据长度,获取预设的传输情况测试信息;
所述数据生成单元406,可以用于基于所述随机数集合、所述加密描述信息、所述初始加密后数据、所述数据长度和所述传输情况测试信息进行信息拼接,生成所述待加密数据对应的加密后数据。
在一些可选的实施例中,本发明实施例还可以包括数据发送单元408,可以用于向数据接收设备发送所述加密后数据,触发所述数据接收设备基于所述加密后数据中的所述随机数集合,对所述加密描述信息和所述初始加密后数据进行数据解密,得到所述待加密数据。
在一些可选的实施例中,所述第一密钥生成单元402,可以用于确定所述随机数集合中的所述随机数对应的位值序列;
根据所述数据映射信息的字节数量,对所述位值序列进行划分,得到至少一个位值子序列;
计算各所述位值子序列对应的映射数值,从所述数据映射信息中选择所述映射数值对应的字节下的所述数据映射子信息,生成第一加密密钥。
在一些可选的实施例中,所述第一加密密钥可以包括至少一个字节的第一加密密钥数据,所述数据描述信息可以包括至少一个字节的描述信息数据;
所述第一加密单元403,可以用于将所述第一加密密钥中各个字节的所述第一加密密钥数据分别与所述数据描述信息中各个字节的所述描述信息数据进行异或计算,得到异或运算结果;
基于各所述异或运算结果,生成加密描述信息。
由上可知,通过数据加密装置,可以获取随机数集合和数据映射信息,所述随机数集合中包括若干个随机数,所述数据映射信息根据预设的电子设备的设备信息确定,基于所述数据映射信息对所述随机数集合中的所述随机数进行映射,得到第一加密密钥,获取待加密数据的数据描述信息,根据所述第一加密密钥对所述数据描述信息进行运算,得到加密描述信息,根据数据映射信息对所述数据描述信息进行映射,得到第二加密密钥,通过所述第一加密密钥和所述第二加密密钥,对所述待加密数据进行运算,得到初始加密后数据,基于所述随机数集合、所述加密描述信息和所述初始加密后数据,生成所述待加密数据对应的加密后数据;由于在本发明实施例中,可以基于与特定的计算机设备相关的数据映射信息计算加密密钥,通过加密密钥对待加密数据本身以及数据描述信息均进行了加密运算,因此,可以增强数据传输过程中数据的安全性。
此外,本发明实施例还提供一种计算机设备,该计算机设备可以为终端或者服务器等等,如图6所示,其示出了本发明实施例所涉及的计算机设备的结构示意图,具体来讲:
该计算机设备可以包括射频(RF,Radio Frequency)电路601、包括有一个或一个以上计算机可读存储介质的存储器602、输入单元603、显示单元604、传感器605、音频电路606、无线保真(WiFi,Wireless Fidelity)模块607、包括有一个或者一个以上处理核心的处理器608、以及电源609等部件。本领域技术人员可以理解,图6中示出的计算机设备结构并不构成对计算机设备的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件布置。其中:
RF电路601可用于收发信息或通话过程中,信号的接收和发送,特别地,将基站的下行信息接收后,交由一个或者一个以上处理器608处理;另外,将涉及上行的数据发送给基站。通常,RF电路601包括但不限于天线、至少一个放大器、调谐器、一个或多个振荡器、用户身份模块(SIM,Subscriber Identity Module)卡、收发信机、耦合器、低噪声放大器(LNA,Low Noise Amplifier)、双工器等。此外,RF电路601还可以通过无线通信与网络和其他设备通信。无线通信可以使用任一通信标准或协议,包括但不限于全球移动通讯系统(GSM,Global System of Mobile communication)、通用分组无线服务(GPRS,GeneralPacket Radio Service)、码分多址(CDMA,Code Division Multiple Access)、宽带码分多址(WCDMA,Wideband Code Division Multiple Access)、长期演进(LTE,Long TermEvolution)、电子邮件、短消息服务(SMS,Short Messaging Service)等。
存储器602可用于存储软件程序以及模块,处理器608通过运行存储在存储器602的软件程序以及模块,从而执行各种功能应用以及数据处理。存储器602可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作系统、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据计算机设备的使用所创建的数据(比如音频数据、电话本等)等。此外,存储器602可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。相应地,存储器602还可以包括存储器控制器,以提供处理器608和输入单元603对存储器602的访问。
输入单元603可用于接收输入的数字或字符信息,以及产生与用户设置以及功能控制有关的键盘、鼠标、操作杆、光学或者轨迹球信号输入。具体地,在一个具体的实施例中,输入单元603可包括触敏表面以及其他输入设备。触敏表面,也称为触摸显示屏或者触控板,可收集用户在其上或附近的触摸操作(比如用户使用手指、触笔等任何适合的物体或附件在触敏表面上或在触敏表面附近的操作),并根据预先设定的程式驱动相应的连接装置。可选的,触敏表面可包括触摸检测装置和触摸控制器两个部分。其中,触摸检测装置检测用户的触摸方位,并检测触摸操作带来的信号,将信号传送给触摸控制器;触摸控制器从触摸检测装置上接收触摸信息,并将它转换成触点坐标,再送给处理器608,并能接收处理器608发来的命令并加以执行。此外,可以采用电阻式、电容式、红外线以及表面声波等多种类型实现触敏表面。除了触敏表面,输入单元603还可以包括其他输入设备。具体地,其他输入设备可以包括但不限于物理键盘、功能键(比如音量控制按键、开关按键等)、轨迹球、鼠标、操作杆等中的一种或多种。
显示单元604可用于显示由用户输入的信息或提供给用户的信息以及计算机设备的各种图形用户接口,这些图形用户接口可以由图形、文本、图标、视频和其任意组合来构成。显示单元604可包括显示面板,可选的,可以采用液晶显示器(LCD,Liquid CrystalDisplay)、有机发光二极管(OLED,Organic Light-Emitting Diode)等形式来配置显示面板。进一步的,触敏表面可覆盖显示面板,当触敏表面检测到在其上或附近的触摸操作后,传送给处理器608以确定触摸事件的类型,随后处理器608根据触摸事件的类型在显示面板上提供相应的视觉输出。虽然在图6中,触敏表面与显示面板是作为两个独立的部件来实现输入和输入功能,但是在某些实施例中,可以将触敏表面与显示面板集成而实现输入和输出功能。
计算机设备还可包括至少一种传感器605,比如光传感器、运动传感器以及其他传感器。具体地,光传感器可包括环境光传感器及接近传感器,其中,环境光传感器可根据环境光线的明暗来调节显示面板的亮度,接近传感器可在计算机设备移动到耳边时,关闭显示面板和/或背光。作为运动传感器的一种,重力加速度传感器可检测各个方向上(一般为三轴)加速度的大小,静止时可检测出重力的大小及方向,可用于识别手机姿态的应用(比如横竖屏切换、相关游戏、磁力计姿态校准)、振动识别相关功能(比如计步器、敲击)等;至于计算机设备还可配置的陀螺仪、气压计、湿度计、温度计、红外线传感器等其他传感器,在此不再赘述。
音频电路606、扬声器,传声器可提供用户与计算机设备之间的音频接口。音频电路606可将接收到的音频数据转换后的电信号,传输到扬声器,由扬声器转换为声音信号输出;另一方面,传声器将收集的声音信号转换为电信号,由音频电路606接收后转换为音频数据,再将音频数据输出处理器608处理后,经RF电路601以发送给比如另一计算机设备,或者将音频数据输出至存储器602以便进一步处理。音频电路606还可能包括耳塞插孔,以提供外设耳机与计算机设备的通信。
WiFi属于短距离无线传输技术,计算机设备通过WiFi模块607可以帮助用户收发电子邮件、浏览网页和访问流式媒体等,它为用户提供了无线的宽带互联网访问。虽然图6示出了WiFi模块607,但是可以理解的是,其并不属于计算机设备的必须构成,完全可以根据需要在不改变发明的本质的范围内而省略。
处理器608是计算机设备的控制中心,利用各种接口和线路连接整个手机的各个部分,通过运行或执行存储在存储器602内的软件程序和/或模块,以及调用存储在存储器602内的数据,执行计算机设备的各种功能和处理数据。可选的,处理器608可包括一个或多个处理核心;优选的,处理器608可集成应用处理器和调制解调处理器,其中,应用处理器主要处理操作系统、用户界面和应用程序等,调制解调处理器主要处理无线通信。可以理解的是,上述调制解调处理器也可以不集成到处理器608中。
计算机设备还包括给各个部件供电的电源609(比如电池),优选的,电源可以通过电源管理系统与处理器608逻辑相连,从而通过电源管理系统实现管理充电、放电、以及功耗管理等功能。电源609还可以包括一个或一个以上的直流或交流电源、再充电系统、电源故障检测电路、电源转换器或者逆变器、电源状态指示器等任意组件。
尽管未示出,计算机设备还可以包括摄像头、蓝牙模块等,在此不再赘述。具体在本实施例中,计算机设备中的处理器608会按照如下的指令,将一个或一个以上的应用程序的进程对应的可执行文件加载到存储器602中,并由处理器608来运行存储在存储器602中的应用程序,从而实现各种功能,如下:
获取随机数集合和数据映射信息,所述随机数集合中包括若干个随机数,所述数据映射信息根据预设的电子设备的设备信息确定;
基于所述数据映射信息对所述随机数集合中的所述随机数进行映射,得到第一加密密钥;
获取待加密数据的数据描述信息,根据所述第一加密密钥对所述数据描述信息进行运算,得到加密描述信息;
根据数据映射信息对所述数据描述信息进行映射,得到第二加密密钥;
通过所述第一加密密钥和所述第二加密密钥,对所述待加密数据进行运算,得到初始加密后数据;
基于所述随机数集合、所述加密描述信息和所述初始加密后数据,生成所述待加密数据对应的加密后数据。
本领域普通技术人员可以理解,上述实施例的各种方法中的全部或部分步骤可以通过指令来完成,或通过指令控制相关的硬件来完成,该指令可以存储于一计算机可读存储介质中,并由处理器进行加载和执行。
为此,本发明实施例提供一种计算机可读存储介质,其中存储有多条指令,该指令能够被处理器进行加载,以执行本发明实施例所提供的任一种数据加密方法中的步骤。例如,该指令可以执行如下步骤:
获取随机数集合和数据映射信息,所述随机数集合中包括若干个随机数,所述数据映射信息根据预设的电子设备的设备信息确定;
基于所述数据映射信息对所述随机数集合中的所述随机数进行映射,得到第一加密密钥;
获取待加密数据的数据描述信息,根据所述第一加密密钥对所述数据描述信息进行运算,得到加密描述信息;
根据数据映射信息对所述数据描述信息进行映射,得到第二加密密钥;
通过所述第一加密密钥和所述第二加密密钥,对所述待加密数据进行运算,得到初始加密后数据;
基于所述随机数集合、所述加密描述信息和所述初始加密后数据,生成所述待加密数据对应的加密后数据。
以上各个操作的具体实施可参见前面的实施例,在此不再赘述。
其中,该计算机可读存储介质可以包括:只读存储器(ROM,Read Only Memory)、随机存取记忆体(RAM,Random Access Memory)、磁盘或光盘等。
由于该计算机可读存储介质中所存储的指令,可以执行本发明实施例所提供的任一种数据加密方法中的步骤,因此,可以实现本发明实施例所提供的任一种数据加密方法所能实现的有益效果,详见前面的实施例,在此不再赘述。
根据本申请的一个方面,还提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述实施例中的各种可选实现方式中提供的方法。
以上对本发明实施例所提供的一种数据加密方法、装置、计算机设备和存储介质进行了详细介绍,本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处,综上所述,本说明书内容不应理解为对本发明的限制。
Claims (11)
1.一种数据加密方法,其特征在于,包括:
获取随机数集合和数据映射信息,所述随机数集合中包括若干个随机数,所述数据映射信息根据预设的电子设备的设备信息确定;
基于所述数据映射信息对所述随机数集合中的所述随机数进行映射,得到第一加密密钥;
获取待加密数据的数据描述信息,根据所述第一加密密钥对所述数据描述信息进行运算,得到加密描述信息;
根据数据映射信息对所述数据描述信息进行映射,得到第二加密密钥;
通过所述第一加密密钥和所述第二加密密钥,对所述待加密数据进行运算,得到初始加密后数据;
基于所述随机数集合、所述加密描述信息和所述初始加密后数据,生成所述待加密数据对应的加密后数据。
2.根据权利要求1所述的数据加密方法,其特征在于,所述获取随机数集合,包括:
获取待加密数据的数据加密时间,基于所述数据加密时间生成随机数序列;
以预设的随机数选择规则,从所述随机数序列中选择目标随机数生成随机数集合。
3.根据权利要求1所述的数据加密方法,其特征在于,所述待加密数据包括至少一个待加密数据包,所述数据描述信息包括所述待加密数据包的数据包标识;
所述根据数据映射信息对所述数据描述信息进行映射,得到第二加密密钥,包括:
从所述待加密数据中,确定当前进行加密的目标待加密数据包;
根据数据映射信息对所述目标待加密数据包的所述数据包标识进行映射,得到所述目标待加密数据包对应的第二加密密钥;
所述通过所述第一加密密钥和所述第二加密密钥,对所述待加密数据进行运算,得到初始加密后数据,包括:
通过所述第一加密密钥和所述第二加密密钥,对所述目标待加密数据包进行运算,得到初始加密后数据包;
返回执行所述从所述待加密数据中,确定当前进行加密的目标待加密数据包的步骤,直到所述待加密数据中的所述待加密数据包均对应有所述初始加密后数据包位置;
基于各所述初始加密后数据包,生成初始加密后数据。
4.根据权利要求1所述的数据加密方法,其特征在于,所述基于所述随机数集合、所述加密描述信息和所述初始加密后数据,生成所述待加密数据对应的加密后数据之前,所述方法还包括:
统计所述待加密数据的数据长度,获取预设的传输情况测试信息;
所述基于所述随机数集合、所述加密描述信息和所述初始加密后数据,生成所述待加密数据对应的加密后数据,包括:
基于所述随机数集合、所述加密描述信息、所述初始加密后数据、所述数据长度和所述传输情况测试信息进行信息拼接,生成所述待加密数据对应的加密后数据。
5.根据权利要求1所述的数据加密方法,其特征在于,所述方法还包括:
向数据接收设备发送所述加密后数据,触发所述数据接收设备基于所述加密后数据中的所述随机数集合,对所述加密描述信息和所述初始加密后数据进行数据解密,得到所述待加密数据。
6.根据权利要求1所述的数据加密方法,其特征在于,所述数据映射信息包括至少一个字节的数据映射子信息,所述基于所述数据映射信息对所述随机数集合中的所述随机数进行映射,得到第一加密密钥,包括:
确定所述随机数集合中的所述随机数对应的位值序列;
根据所述数据映射信息的字节数量,对所述位值序列进行划分,得到至少一个位值子序列;
计算各所述位值子序列对应的映射数值,从所述数据映射信息中选择所述映射数值对应的字节下的所述数据映射子信息,生成第一加密密钥。
7.根据权利要求1所述的数据加密方法,其特征在于,所述第一加密密钥包括至少一个字节的第一加密密钥数据,所述数据描述信息包括至少一个字节的描述信息数据;
所述根据所述第一加密密钥对所述数据描述信息进行运算,得到加密描述信息,包括:
将所述第一加密密钥中各个字节的所述第一加密密钥数据分别与所述数据描述信息中各个字节的所述描述信息数据进行异或计算,得到异或运算结果;
基于各所述异或运算结果,生成加密描述信息。
8.一种数据加密装置,其特征在于,包括:
信息获取单元,用于获取随机数集合和数据映射信息,所述随机数集合中包括若干个随机数,所述数据映射信息根据预设的电子设备的设备信息确定;
第一密钥生成单元,用于基于所述数据映射信息对所述随机数集合中的所述随机数进行映射,得到第一加密密钥;
第一加密单元,用于获取待加密数据的数据描述信息,根据所述第一加密密钥对所述数据描述信息进行运算,得到加密描述信息;
第二密钥生成单元,用于根据数据映射信息对所述数据描述信息进行映射,得到第二加密密钥;
第二加密单元,用于通过所述第一加密密钥和所述第二加密密钥,对所述待加密数据进行运算,得到初始加密后数据;
数据生成单元,用于基于所述随机数集合、所述加密描述信息和所述初始加密后数据,生成所述待加密数据对应的加密后数据。
9.一种计算机设备,其特征在于,包括存储器和处理器;所述存储器存储有应用程序,所述处理器用于运行所述存储器内的应用程序,以执行权利要求1至7任一项所述的数据加密方法中的步骤。
10.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质存储有多条指令,所述指令适于处理器进行加载,以执行权利要求1至7任一项所述的数据加密方法中的步骤。
11.一种计算机程序产品,包括计算机程序或指令,其特征在于,所述计算机程序或指令被处理器执行时实现如权利要求1至7中任一项所述的数据加密方法的步骤。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211709085.1A CN117118647A (zh) | 2022-12-29 | 2022-12-29 | 一种数据加密方法、装置、计算机设备和存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211709085.1A CN117118647A (zh) | 2022-12-29 | 2022-12-29 | 一种数据加密方法、装置、计算机设备和存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN117118647A true CN117118647A (zh) | 2023-11-24 |
Family
ID=88802673
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211709085.1A Pending CN117118647A (zh) | 2022-12-29 | 2022-12-29 | 一种数据加密方法、装置、计算机设备和存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN117118647A (zh) |
-
2022
- 2022-12-29 CN CN202211709085.1A patent/CN117118647A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10959124B2 (en) | Uplink data transmission method, terminal, network side device and system | |
US10304461B2 (en) | Remote electronic service requesting and processing method, server, and terminal | |
CN104852885B (zh) | 一种进行验证码验证的方法、装置和系统 | |
WO2015090248A1 (zh) | 服务器的过载保护方法及装置 | |
CN106126174B (zh) | 一种场景音效的控制方法、及电子设备 | |
CN105243638B (zh) | 一种上传图像的方法和装置 | |
EP3179693B1 (en) | Method, apparatus, storage medium and computer program product for establishing a data connection | |
CN111049980A (zh) | 一种应用分享方法、电子设备及计算机可读存储介质 | |
CN107995151B (zh) | 登录验证方法、装置及系统 | |
CN106682189B (zh) | 文件名显示方法及装置 | |
CN116541865A (zh) | 基于数据安全的密码输入方法、装置、设备及存储介质 | |
CN107317828B (zh) | 文件下载方法及装置 | |
CN111200648B (zh) | 一种业务调用方法、装置、终端设备及存储介质 | |
CN112888024B (zh) | 数据处理方法、装置、存储介质及电子设备 | |
CN109889568B (zh) | 一种数据导出方法、服务器及系统 | |
CN107786423A (zh) | 一种即时通讯的方法和系统 | |
CN112379905B (zh) | 一种内核升级方法、装置、终端及存储介质 | |
CN112118207B (zh) | 数据传输方法、服务器以及电子设备 | |
CN117118647A (zh) | 一种数据加密方法、装置、计算机设备和存储介质 | |
CN107315623B (zh) | 一种上报统计数据的方法和装置 | |
CN114428655A (zh) | 设备的远程控制方法、终端设备、系统和存储介质 | |
CN111581223A (zh) | 一种数据更新方法、装置、终端设备及存储介质 | |
CN111475141A (zh) | 榜单的生成方法、装置及电子设备 | |
WO2024138503A1 (zh) | 一种数据加密方法、装置、计算机设备和存储介质 | |
CN114189436B (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 |