CN116980232B - 一种数据处理方法、装置、计算机设备和可读存储介质 - Google Patents

一种数据处理方法、装置、计算机设备和可读存储介质 Download PDF

Info

Publication number
CN116980232B
CN116980232B CN202311219186.5A CN202311219186A CN116980232B CN 116980232 B CN116980232 B CN 116980232B CN 202311219186 A CN202311219186 A CN 202311219186A CN 116980232 B CN116980232 B CN 116980232B
Authority
CN
China
Prior art keywords
encryption
code table
decryption
data
ciphertext
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.)
Active
Application number
CN202311219186.5A
Other languages
English (en)
Other versions
CN116980232A (zh
Inventor
张剑云
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shenzhen Nengshu Technology Co ltd
Original Assignee
Shenzhen Nengshu Technology Co ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Shenzhen Nengshu Technology Co ltd filed Critical Shenzhen Nengshu Technology Co ltd
Priority to CN202311219186.5A priority Critical patent/CN116980232B/zh
Publication of CN116980232A publication Critical patent/CN116980232A/zh
Application granted granted Critical
Publication of CN116980232B publication Critical patent/CN116980232B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network 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
    • H04L63/0442Network 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 wherein the sending and receiving network entities apply asymmetric encryption, i.e. different keys for encryption and decryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network 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
    • H04L63/0457Network 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 wherein the sending and receiving network entities apply dynamic encryption, e.g. stream encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/068Network architectures or network communication protocols for network security for supporting key management in a packet data network using time-dependent keys, e.g. periodically changing keys
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2209/00Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
    • H04L2209/04Masking or blinding
    • H04L2209/043Masking or blinding of tables, e.g. lookup, substitution or mapping

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

一种数据处理方法、装置、计算机设备和可读存储介质
技术领域
本申请涉及计算机领域,尤其是涉及到一种数据处理方法、装置、计算机设备和可读存储介质。
背景技术
目前网络传输中,考虑到传输信息的安全性,通常使用RAS(非对称加密算法)、AES(Advanced Encryption Standard,高级加密标准算法)等进行信息的加解密处理。但是,这些加解密方法的处理速度较慢,效率较低,并且这些加解密方法对原文加密,总是得到固定的密文,不利于信息安全的保护。
发明内容
有鉴于此,本申请提供了一种数据处理方法、装置、计算机设备和可读存储介质,保证了数据安全性以及提高了加密效率。
第一方面,本申请实施例提供了一种数据处理方法,应用于数据加密端,所述方法包括:
获取第一初始化码表,以及获取加解密因子;
基于所述加解密因子和所述第一初始化码表,生成加密码表;
根据所述加密码表对原文数据进行加密,生成所述原文数据的密文;
将目标数据和所述密文发送至数据解密端,以供所述数据解密端根据所述目标数据对所述密文解密,所述目标数据包括所述加解密因子中的部分数据。
根据本申请实施例的上述方法,还可以具有以下附加技术特征:
在上述技术方案中,可选地,所述获取第一初始化码表,包括:
生成m×n的二维字节数组,并用m×n个元素按照预设顺序初始化所述二维字节数组,得到所述第一初始化码表,m、n为正整数;
所述获取加解密因子,包括:
获取用户密钥、加密时间和随机因子,并根据所述用户密钥、所述加密时间和所述随机因子,生成所述加解密因子,其中所述目标数据至少包括所述加密时间和所述随机因子。
在上述任一技术方案中,可选地,所述基于所述加解密因子和所述第一初始化码表,生成加密码表,包括:
按照变换规则组合与加解密因子的预设映射关系,在预存的多组变换规则组合中,确定与所述加解密因子对应的目标变换规则组合,其中每组所述变换规则组合中包括至少一个变换规则集合,所述变换规则集合中包括多个变换规则;
根据所述目标变换规则组合中的多个变换规则,依次对所述第一初始化码表进行多轮变换,生成加密码表。
在上述任一技术方案中,可选地,所述根据所述加密码表对原文数据进行加密,生成所述原文数据的密文,包括:
在所述加密码表中,查找与所述原文数据中各个字符对应的密文值;其中,查找与所述原文数据中任一所述字符对应的密文值的过程包括:确定所述字符的数值,在所述加密码表中确定索引为所述数值的第一元素,将所述第一元素作为所述字符对应的密文值;
将各个字符对应的密文值作为所述原文数据的密文。
第二方面,本申请实施例提供了一种数据处理方法,应用于数据解密端,所述方法包括:
接收来自数据加密端的目标数据和密文,所述密文为数据加密端基于加密码表对原文数据进行加密所得,所述加密码表基于加解密因子和第一初始化码表所得,所述目标数据包括所述加解密因子中的部分数据;
基于用户密钥、所述目标数据和第二初始化码表,生成解密码表,所述第二初始化码表与所述第一初始化码表一致;
根据所述解密码表对所述密文进行解密,生成所述密文的原文数据。
根据本申请实施例的上述方法,还可以具有以下附加技术特征:
在上述技术方案中,可选地,所述目标数据包括所述加解密因子中的加密时间和随机因子;所述基于用户密钥、所述目标数据和第二初始化码表,生成解密码表,包括:
根据所述用户密钥、所述加密时间和所述随机因子,生成所述加解密因子;
按照变换规则组合与加解密因子的预设映射关系,在预存的多组变换规则组合中,确定与所述加解密因子对应的目标变换规则组合,其中每组所述变换规则组合中包括至少一个变换规则集合,所述变换规则集合中包括多个变换规则;
根据所述目标变换规则组合中的多个变换规则,依次对所述第二初始化码表进行多轮变换,生成解密码表。
在上述任一技术方案中,可选地,所述根据所述解密码表对所述密文进行解密,生成所述密文的原文数据,包括:
在所述解密码表中,查找与所述密文中各个密文值对应的字符;其中,查找与所述密文中任一所述密文值对应的字符的过程包括:在所述解密码表中确定所述密文值的索引,确定数值为所述索引的第二元素,将所述第二元素作为所述密文值对应的字符;
将各个密文值对应的字符作为所述密文的原文数据。
在上述任一技术方案中,可选地,所述目标数据还包括所述数据加密端对所述密文的发送时间;所述基于用户密钥、所述目标数据和第二初始化码表,生成解密码表,包括:
确定所述发送时间与所述密文的接收时间的时间差;
根据所述时间差与预设时间阈值的大小关系,判断所述密文是否有效;
在确定所述密文有效时,基于用户密钥、所述目标数据和第二初始化码表,生成解密码表。
第三方面,本申请实施例提供了一种数据处理装置,应用于数据加密端,所述装置包括:
获取模块,用于获取第一初始化码表,以及获取加解密因子;
码表生成模块,用于基于所述加解密因子和所述第一初始化码表,生成加密码表;
加密模块,用于根据所述加密码表对原文数据进行加密,生成所述原文数据的密文;
发送模块,用于将目标数据和所述密文发送至数据解密端,以供所述数据解密端根据所述目标数据对所述密文解密,所述目标数据包括所述加解密因子中的部分数据。
根据本申请实施例的上述装置,还可以具有以下附加技术特征:
在上述技术方案中,可选地,所述获取模块,具体用于:
生成m×n的二维字节数组,并用m×n个元素按照预设顺序初始化所述二维字节数组,得到所述第一初始化码表,m、n为正整数;
获取用户密钥、加密时间和随机因子,并根据用户密钥、所述加密时间和所述随机因子,生成所述加解密因子,其中所述目标数据至少包括所述加密时间和所述随机因子。
在上述任一技术方案中,可选地,所述码表生成模块,具体用于:
按照变换规则组合与加解密因子的预设映射关系,在预存的多组变换规则组合中,确定与所述加解密因子对应的目标变换规则组合,其中每组所述变换规则组合中包括至少一个变换规则集合,所述变换规则集合中包括多个变换规则;
根据所述目标变换规则组合中的多个变换规则,依次对所述第一初始化码表进行多轮变换,生成加密码表。
在上述任一技术方案中,可选地,所述加密模块,具体用于:
在所述加密码表中,查找与所述原文数据中各个字符对应的密文值;其中,查找与所述原文数据中任一所述字符对应的密文值的过程包括:确定所述字符的数值,在所述加密码表中确定索引为所述数值的第一元素,将所述第一元素作为所述字符对应的密文值;
将各个字符对应的密文值作为所述原文数据的密文。
第四方面,本申请实施例提供了一种数据处理装置,应用于数据解密端,所述装置包括:
接收模块,用于接收来自数据加密端的目标数据和密文,所述密文为数据加密端基于加密码表对原文数据进行加密所得,所述加密码表基于加解密因子和第一初始化码表所得,所述目标数据包括所述加解密因子中的部分数据;
码表生成模块,用于基于用户密钥、所述目标数据和第二初始化码表,生成解密码表,所述第二初始化码表与所述第一初始化码表一致;
解密模块,用于根据所述解密码表对所述密文进行解密,生成所述密文的原文数据。
根据本申请实施例的上述装置,还可以具有以下附加技术特征:
在上述技术方案中,可选地,所述目标数据包括所述加解密因子中的加密时间和随机因子;所述码表生成模块,具体用于:
根据所述用户密钥、所述加密时间和所述随机因子,生成所述加解密因子;
按照变换规则组合与加解密因子的预设映射关系,在预存的多组变换规则组合中,确定与所述加解密因子对应的目标变换规则组合,其中每组所述变换规则组合中包括至少一个变换规则集合,所述变换规则集合中包括多个变换规则;
根据所述目标变换规则组合中的多个变换规则,依次对所述第二初始化码表进行多轮变换,生成解密码表。
在上述任一技术方案中,可选地,所述解密模块,具体用于:
在所述解密码表中,查找与所述密文中各个密文值对应的字符;其中,查找与所述密文中任一所述密文值对应的字符的过程包括:在所述解密码表中确定所述密文值的索引,确定数值为所述索引的第二元素,将所述第二元素作为所述密文值对应的字符;
将各个密文值对应的字符作为所述密文的原文数据。
在上述任一技术方案中,可选地,所述目标数据还包括所述数据加密端对所述密文的发送时间;所述装置还包括:
校验模块,用于确定所述发送时间与所述密文的接收时间的时间差;以及根据所述时间差与预设时间阈值的大小关系,判断所述密文是否有效;
所述码表生成模块,具体用于在确定所述密文有效时,基于用户密钥、所述目标数据和第二初始化码表,生成解密码表。
第五方面,本申请实施例提供了一种计算机设备,该计算机设备包括处理器和存储器,存储器存储可在处理器上运行的程序或指令,程序或指令被处理器执行时实现如第一方面或第二方面的方法的步骤。
第六方面,本申请实施例提供了一种可读存储介质,该可读存储介质上存储程序或指令,程序或指令被处理器执行时实现如第一方面或第二方面的方法的步骤。
第七方面,本申请实施例提供了一种芯片,该芯片包括处理器和通信接口,通信接口和处理器耦合,处理器用于运行程序或指令,实现如第一方面或第二方面的方法。
第八方面,本申请实施例提供一种计算机程序产品,该程序产品被存储在存储介质中,该程序产品被至少一个处理器执行以实现如第一方面或第二方面的方法。
在本申请实施例中,获取第一初始化码表,以及获取加解密因子,根据加解密因子对第一初始化码表进行处理,生成加密码表,该加密码表用于对原文数据进行加密。以得到的加密码表为基础,对原文数据进行加密,生成原文数据的密文。将加解密因子中的部分数据(也即目标数据),以及密文发送至数据解密端,数据解密端在获取到目标数据和密文后,即可根据目标数据对密文解密,解密出原文数据。本申请实施例,通过加解密因子可以做到对原文数据进行动态变化,相同的原文数据每一次传输的密文均不一样,且不会影响解密结果,大大加强了防破解能力,提高了数据安全性。并且,本申请实施例的加密过程是一个查表过程,加密速度较快,保证了较好的通信实时性。
上述说明仅是本申请技术方案的概述,为了能够更清楚了解本申请的技术手段,而可依照说明书的内容予以实施,并且为了让本申请的上述和其它目的、特征和优点能够更明显易懂,以下特举本申请的具体实施方式。
附图说明
此处所说明的附图用来提供对本申请的进一步理解,构成本申请的一部分,本申请的示意性实施例及其说明用于解释本申请,并不构成对本申请的不当限定。在附图中:
图1示出了本申请实施例的数据加密方法的流程示意图;
图2示出了本申请实施例的数据解密方法的流程示意图之一;
图3示出了本申请实施例的数据解密方法的流程示意图之二;
图4示出了本申请实施例的数据处理装置的结构框图之一;
图5示出了本申请实施例的数据处理装置的结构框图之二;
图6示出了本申请实施例的计算机设备的结构框图。
具体实施方式
下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚地描述,显然,所描述的实施例是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员获得的所有其他实施例,都属于本申请保护的范围。
本申请的说明书和权利要求书中的术语“第一”、“第二”等是用于区别类似的对象,而不用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施,且“第一”、“第二”等所区分的对象通常为一类,并不限定对象的个数,例如第一对象可以是一个,也可以是多个。此外,说明书以及权利要求中“和/或”表示所连接对象的至少其中之一,字符“/”,一般表示前后关联对象是一种“或”的关系。
下面结合附图,通过具体的实施例及其应用场景对本申请实施例提供的数据处理方法、装置、计算机设备和可读存储介质进行详细地说明。
本申请实施例提供了一种数据处理方法,具体为一种数据加密方法,应用于数据加密端。如图1所示,该数据加密方法包括:
步骤101,获取第一初始化码表,以及获取加解密因子。
在该步骤中,获取一个m×n的第一初始化码表,该第一初始化码表中填充有0至m×n-1的数,以及获取用于原文数据加密的加解密因子。
在本申请的一个实施例中,所述获取第一初始化码表,包括:
生成m×n的二维字节数组,并用m×n个元素按照预设顺序初始化所述二维字节数组,得到所述第一初始化码表,m、n为正整数。
在该实施例中,生成一个m×n的二维字节数组,用0至m×n-1初始化这个二维字节数组,得到第一初始化码表,其中,m与n可以相等或不相等。优选地,m与n相等,即生成一个n×n的二维字节数组,再用0至n2-1初始化这个二维字节数组,得到第一初始化码表。例如,m、n均为16,则生成一个16×16的二维字节数组,用0至255初始化这个二维字节数组,也即,将0至255作为元素填充到二维字节数组,得到第一初始化码表,其中0至255在第一初始化码表中可以是任意排列的,且第一初始化码表的每一个元素都具有唯一的索引,能够基于索引访问对应元素。
需要说明的是,第一初始化码表是在数据加密端,是对原文数据进行加密的一个基础,在数据解密端存在第二初始化码表,是对密文进行解密的一个基础。数据加密端与数据解密端预先约定,第一初始化码表与第二初始化码表保持一致,从而实现密文精准解密。
在本申请的一个实施例中,所述获取加解密因子,包括:
获取用户密钥、加密时间和随机因子,并根据所述用户密钥、所述加密时间和所述随机因子,生成所述加解密因子。
在该实施例中,获取用户设置的用户密钥,用户钥密可以是字符串,也可以是一个文件。以及获取加密时间和一些随机因子,加密时间可以为当前时间,精确到毫秒级。将用户密钥、加密时间和随机因子进行拼接,得到加解密因子。
本申请实施例中,加解密因子由用户密钥、加密时间和随机因子构成,作为对原文数据进行加密的关键因素,加解密因子中的任何部分发生变化,都会对原文数据的加密产生变化。特别地,加解密因子中动态变化的部分至少包括加密时间,由于加密时间是不固定的,使得不同时间对原文数据的加密结果不同,实现动态加密。
步骤102,基于所述加解密因子和所述第一初始化码表,生成加密码表。
在该步骤中,根据加解密因子对第一初始化码表进行处理,生成加密码表,该加密码表用于对原文数据进行加密。
在本申请的一个实施例中,所述基于所述加解密因子和所述第一初始化码表,生成加密码表,包括:
按照变换规则组合与加解密因子的预设映射关系,在预存的多组变换规则组合中,确定与所述加解密因子对应的目标变换规则组合,其中每组所述变换规则组合中包括至少一个变换规则集合,所述变换规则集合中包括多个变换规则;
根据所述目标变换规则组合中的多个变换规则,依次对所述第一初始化码表进行多轮变换,生成加密码表。
在该实施例中,共设置有多种变换规则,将每p个变换规则划分为一个集合,p为正整数,也就是说,每个变换规则集合中包括多种变换规则,至少一个变换规则集合又形成一个变换规则组合,由此得到多组变换规则组合。例如,每3个变换规则划分为一个变换规则集合,共计有16个变换规则集合,再继续对这16个变换规则集合进行组合,生成多个变换规则组合。
每一种变换规则为一种轮变换算法,每一种变换规则可以改变(也即,打乱)当前原表中各个元素排列的位置,从而将原表转为另一个确定的对应结果表。
需要说明的是,不同变换规则之间在行位移变换、列位移变换、元素变换中存在至少一项变换规则的不同。
以及,预先存储变换规则组合与加解密因子的预设映射关系,也就是说,变换规则组合与加解密因子之间存在映射关系,不同加解密因子对应不同的变换规则组合。可基于映射关系,在多组变换规则组合中,确定出上述步骤中生成的加解密因子所对应的目标变换规则组合,进而根据目标变换规则组合中的多个变换规则对第一初始化码表进行变换,生成加密码表。例如,预存有36组变换规则组合,基于映射关系,确定生成的加解密因子对应的是第2组变换规则组合,若第2组变换规则组合中包括1个变换规则集合,该变换规则集合中包括3个变换规则,则先利用第1个变换规则对第一初始化码表进行变换,得到表1,再利用第2个变换规则对表1进行变换,得到表2,再利用第3个变换规则对表2进行变换,得到表3,表3即为最终得到的加密码表,加密码表为一个m×n的密文表,能够在后续对原文数据进行加密。
本申请实施例中,决定加密码表生成的因素至少有:初始化、用户密钥、加密时间和目标变换规则组合,每一个变化,都会影响最终加密码表的生成。初始化和加密时间由程序所在的数据加密端的系统环境确定,加密时间随系统实时变化;人为可控的是用户密钥,事先由数据加密端和数据解密端双方约定,做为参数传入系统,是相对固定的。
本申请实施例,加解密因子不同,对应的变换规则组合不同,最终得到不同的加密码表。也就是说,加解密因子中的任何部分发生变化,都会导致最终加密码表发生变化,从而使得原文数据的加密结果也随之变化,实现了在不同时间对原文数据的加密结果不同的动态加密,提高了加密效果,保证了原文数据的安全性。
并且,由于每个变换规则组合中包括的变换规则集合不同、每个变换规则集合中包括的变换规则也不同,实现对第一初始化码表的复杂变换,提高了加密码表的复杂程度,进一步地保证了后续对原文数据的加密效果。
步骤103,根据所述加密码表对原文数据进行加密,生成所述原文数据的密文。
在该步骤中,以上述步骤中得到的加密码表为基础,对原文数据进行加密,生成原文数据的密文。
在本申请的一个实施例中,所述根据所述加密码表对原文数据进行加密,生成所述原文数据的密文,包括:
在所述加密码表中,查找与所述原文数据中各个字符对应的密文值;其中,查找与所述原文数据中任一所述字符对应的密文值的过程包括:确定所述字符的数值,在所述加密码表中确定索引为所述数值的第一元素,将所述第一元素作为所述字符对应的密文值;
将各个字符对应的密文值作为所述原文数据的密文。
在该实施例中,在加密码表中,查找与原文数据中各个字符对应的密文值。具体地,原文数据的所有字符,按字符的数值做为序号,对于一个字符,在加密码表中查找索引为该字符数值的元素,作为该字符的密文值。例如,原文数据中的字符“A”,其值为65,在加密码表中索引为65的位置取得元素“a”,作为“A”对应的密文值。将原文数据的所有字符都对应得到密文值后,即得到了原文数据的密文。
相关技术中的加密方法,对原文数据加密总是得到固定的密文,例如原文数据为X,利用相关技术中的加密方法得到密文Y,假如某人截获到了密文Y并解密出了对应的原文数据X,那么下次发送原文数据X时仍然会被解密,导致数据不安全。而本申请实施例,由于加解密因子是动态变化的,对相同的原文数据可以得到不同的密文,更有利于数据安全的保护。
并且,同一字符(其值范围是0-255)在一张加密码表中只有唯一与之对应的一个密文值(其值范围也是0-255),所以加密速度很快,加密效率高。
步骤104,将目标数据和所述密文发送至数据解密端,以供所述数据解密端根据所述目标数据对所述密文解密,所述目标数据包括所述加解密因子中的部分数据。
在该步骤中,在对原文数据加密后,将加解密因子中的部分数据(也即目标数据),以及密文发送至数据解密端,目标数据的附加位置由数据加密端和数据解密端双方约定。在一个实施例中,目标数据可以作为密文数据头,与密文一起发送给数据解密端。密文数据头为128位(16个字节),至少包括按照预设规律进行压缩的加密时间和随机因子。
数据解密端在获取到目标数据和密文后,即可根据目标数据对密文解密,解密出原文数据。具体地,根据目标数据得到解密码表,解密码表与加密码表对应,从而根据解密码表解密出原文数据。
值得注意的是,密文数据头是解密的关键数据,因为用户密钥是不发送的,所以被截取也毫无用处,密文的内容只有加解密双方可以处理,因为数据加密端所用到的加密码表和数据解密端所用到的解密码表是在两端设备上的,能够保证不被截获,不会影响数据安全。
本申请实施例,通过加解密因子可以做到对原文数据进行毫秒级的动态变化,相同的原文数据每一次传输的密文均不一样,且不会影响解密结果,大大加强了防破解能力,提高了数据安全性。并且,本申请实施例的加密过程是一个查表过程,加密速度较快,保证了较好的通信实时性。
此外,本申请实施例的加密方法简单,对硬件的要求较低,有更多的适用场景。并且本申请实施例中,变换规则组合、变换规则组合与加解密因子之间的映射关系,在数据加密端和数据解密端进行了约定,可以与其他的设备区分开来,降低密文被截获破解的风险,进一步提高了数据的安全性。
本申请实施例还提供了一种数据处理方法,具体为一种数据解密方法,应用于数据解密端。如图2所示,所述数据解密方法包括:
步骤201,接收来自数据加密端的目标数据和密文,所述密文为数据加密端基于加密码表对原文数据进行加密所得,所述加密码表基于加解密因子和第一初始化码表所得,所述目标数据包括所述加解密因子中的部分数据。
在该步骤中,接收数据加密端发送来的目标数据和密文,其中,目标数据包括由数据加密端生成的加解密因子中的部分数据,数据加密端生成了加解密因子后,基于加解密因子对第一初始化码表进行处理,得到加密码表,再由加密码表对原文数据进行加密得到了密文。
步骤202,基于用户密钥、所述目标数据和第二初始化码表,生成解密码表,所述第二初始化码表与所述第一初始化码表一致。
在该步骤中,获取用户密钥,用户钥密可以是字符串,也可以是一个文件,用户密钥是人为可控的,事先由数据加密端和数据解密端双方约定,是相对固定的。以及获取第二初始化码表,第二初始化码表与数据加密端的第一初始化码表一致,是与数据加密端约定好,由m×n个元素按照预设顺序初始化m×n的二维字节数组所得,从而实现密文精准解密。
进一步地,根据目标数据、用户密钥和第二初始化码表生成解密码表,该解密码表用于对密文进行解密。
在本申请的一个实施例中,所述目标数据包括所述加解密因子中的加密时间和随机因子;所述基于用户密钥、所述目标数据和第二初始化码表,生成解密码表,包括:
根据所述用户密钥、所述加密时间和所述随机因子,生成所述加解密因子;
按照变换规则组合与加解密因子的预设映射关系,在预存的多组变换规则组合中,确定与所述加解密因子对应的目标变换规则组合,其中每组所述变换规则组合中包括至少一个变换规则集合,所述变换规则集合中包括多个变换规则;
根据所述目标变换规则组合中的多个变换规则,依次对所述第二初始化码表进行多轮变换,生成解密码表。
在该实施例中,加解密因子中的部分数据包括加密时间和随机因子,也即目标数据为加密时间和随机因子。将用户密钥、加密时间和随机因子进行拼接,生成加解密因子,数据解密端生成的该加解密因子与数据加密端用于进行原文数据加密的加解密因子相同。
进一步地,利用该加解密因子对第二初始化码表进行处理,生成解密码表。具体地,数据解密端预存有与数据加密端约定好的多组变换规则组合、变换规则组合与加解密因子的预设映射关系,基于映射关系,在多组变换规则组合中,确定出上述生成的加解密因子所对应的目标变换规则组合,进而根据目标变换规则组合中的多个变换规则对第二初始化码表进行变换,生成解密码表。
或者,在本申请的一个实施例中,数据解密端存储有加解密因子与解密码表的对应关系,可以直接利用对应关系,确定与加解密因子对应的解密码表,提高了获取解密码表的效率。
本申请实施例,通过上述方式,获取与加密码表一致的解密码表,保证后续对密文解密的准确性。
步骤203,根据所述解密码表对所述密文进行解密,生成所述密文的原文数据。
在该步骤中,根据上述步骤得到的解密码表对密文进行解密,得到密文的原文数据,完成一次加密传输和接收解码的过程。
在本申请的一个实施例中,所述根据所述解密码表对所述密文进行解密,生成所述密文的原文数据,包括:
在所述解密码表中,查找与所述密文中各个密文值对应的字符;其中,查找与所述密文中任一所述密文值对应的字符的过程包括:在所述解密码表中确定所述密文值的索引,确定数值为所述索引的第二元素,将所述第二元素作为所述密文值对应的字符;
将各个密文值对应的字符作为所述密文的原文数据。
在该实施例中,在解密码表中,查找与密文中各个密文值对应的字符。具体地,密文的所有密文值都具有对应的索引,对于一个密文值,在解密码表中查找数值为该密文值索引的元素,作为该密文值的字符。例如,密文中的密文值“a”,其索引为65,在解密码表中索引为65的位置取得元素“A”,作为“a”对应的字符。将密文的所有密文值都对应得到字符后,即得到了密文的原文数据。
上述解密过程即为数据加密端的加密过程的逆过程,整个解密过程安全性较高。并且本申请实施例中,同一密文值(其值范围是0-255)在一张解密码表中只有唯一与之对应的一个字符(其值范围也是0-255),所以解密速度很快,解密效率高。
本申请实施例,能够基于用户密钥、目标数据和与数据加密端一致的第二初始化码表得到解密码表,从而对密文进行解密,解密过程安全性较高,大大加强了防破解能力,提高了数据安全性。并且,本申请实施例的解密过程是一个查表过程,解密速度较快,保证了较好的通信实时性。
作为对上述实施例的细化和扩展,本发明实施例提供了另一种数据解密方法,如图3所示,该方法包括:
步骤301,接收来自数据加密端的目标数据和密文,所述密文为数据加密端基于加密码表对原文数据进行加密所得,所述加密码表基于加解密因子和第一初始化码表所得,所述目标数据包括所述加解密因子中的部分数据以及所述数据加密端对所述密文的发送时间。
步骤302,确定所述发送时间与所述密文的接收时间的时间差。
步骤303,根据所述时间差与预设时间阈值的大小关系,判断所述密文是否有效。在确定所述密文有效时,进入步骤304;否则进入步骤306。
步骤304,基于用户密钥、所述目标数据和第二初始化码表,生成解密码表,所述第二初始化码表与所述第一初始化码表一致。
步骤305,根据所述解密码表对所述密文进行解密,生成所述密文的原文数据。
步骤306,不进行密文解密。
在该实施例中,目标数据除了包括加解密因子中的部分数据,还包括数据加密端对密文的发送时间。
进一步地,可基于该发送时间验证密文的时效性。具体地,确定发送时间与密文的接收时间的时间差,当该时间差大于预设时间阈值时,确定该密文无效,则不对该密文进行解密。当该时间差小于或等于预设时间阈值时,确定该密文有效,则生成解密码表,通过解密码表对密文进行解密。
本申请实施例,能够对密文的时效性进行验证,进一步地提高了通信安全性。
作为上述数据处理方法的具体实现,本申请实施例还提供了一种数据处理装置,具体为一种数据加密装置,应用于数据加密端。如图4所示,该数据处理装置400包括:获取模块401、码表生成模块402、加密模块403以及发送模块404。
其中,获取模块401,用于获取第一初始化码表,以及获取加解密因子;
码表生成模块402,用于基于所述加解密因子和所述第一初始化码表,生成加密码表;
加密模块403,用于根据所述加密码表对原文数据进行加密,生成所述原文数据的密文;
发送模块404,用于将目标数据和所述密文发送至数据解密端,以供所述数据解密端根据所述目标数据对所述密文解密,所述目标数据包括所述加解密因子中的部分数据。
在该实施例中,获取第一初始化码表,以及获取加解密因子,根据加解密因子对第一初始化码表进行处理,生成加密码表,该加密码表用于对原文数据进行加密。以得到的加密码表为基础,对原文数据进行加密,生成原文数据的密文。将加解密因子中的部分数据(也即目标数据),以及密文发送至数据解密端,数据解密端在获取到目标数据和密文后,即可根据目标数据对密文解密,解密出原文数据。
本申请实施例,通过加解密因子可以做到对原文数据进行动态变化,相同的原文数据每一次传输的密文均不一样,且不会影响解密结果,大大加强了防破解能力,提高了数据安全性。并且,本申请实施例的加密过程是一个查表过程,加密速度较快,保证了较好的通信实时性。
进一步地,所述获取模块401,具体用于:
生成m×n的二维字节数组,并用m×n个元素按照预设顺序初始化所述二维字节数组,得到所述第一初始化码表,m、n为正整数;
获取用户密钥、加密时间和随机因子,并根据用户密钥、所述加密时间和所述随机因子,生成所述加解密因子,其中所述目标数据至少包括所述加密时间和所述随机因子。
进一步地,所述码表生成模块402,具体用于:
按照变换规则组合与加解密因子的预设映射关系,在预存的多组变换规则组合中,确定与所述加解密因子对应的目标变换规则组合,其中每组所述变换规则组合中包括至少一个变换规则集合,所述变换规则集合中包括多个变换规则;
根据所述目标变换规则组合中的多个变换规则,依次对所述第一初始化码表进行多轮变换,生成加密码表。
进一步地,所述加密模块403,具体用于:
在所述加密码表中,查找与所述原文数据中各个字符对应的密文值;其中,查找与所述原文数据中任一所述字符对应的密文值的过程包括:确定所述字符的数值,在所述加密码表中确定索引为所述数值的第一元素,将所述第一元素作为所述字符对应的密文值;
将各个字符对应的密文值作为所述原文数据的密文。
作为上述数据处理方法的具体实现,本申请实施例还提供了一种数据处理装置,具体为一种数据解密装置,应用于数据解密端。如图5所示,该数据处理装置500包括:接收模块501、码表生成模块502以及解密模块503。
其中,接收模块501,用于接收来自数据加密端的目标数据和密文,所述密文为数据加密端基于加密码表对原文数据进行加密所得,所述加密码表基于加解密因子和第一初始化码表所得,所述目标数据包括所述加解密因子中的部分数据;
码表生成模块502,用于基于用户密钥、所述目标数据和第二初始化码表,生成解密码表,所述第二初始化码表与所述第一初始化码表一致;
解密模块503,用于根据所述解密码表对所述密文进行解密,生成所述密文的原文数据。
在该实施例中,接收数据加密端发送来的目标数据和密文,其中,目标数据包括由数据加密端生成的加解密因子中的部分数据,数据加密端生成了加解密因子后,基于加解密因子对第一初始化码表进行处理,得到加密码表,再由加密码表对原文数据进行加密得到了密文。根据目标数据、用户密钥和第二初始化码表生成解密码表,该解密码表用于对密文进行解密。根据得到的解密码表对密文进行解密,得到密文的原文数据,完成一次加密传输和接收解码的过程。
本申请实施例,能够基于用户密钥、目标数据和与数据加密端一致的第二初始化码表得到解密码表,从而对密文进行解密,解密过程安全性较高,大大加强了防破解能力,提高了数据安全性。并且,本申请实施例的解密过程是一个查表过程,解密速度较快,保证了较好的通信实时性。
进一步地,所述目标数据包括所述加解密因子中的加密时间和随机因子;所述码表生成模块502,具体用于:
根据所述用户密钥、所述加密时间和所述随机因子,生成所述加解密因子;
按照变换规则组合与加解密因子的预设映射关系,在预存的多组变换规则组合中,确定与所述加解密因子对应的目标变换规则组合,其中每组所述变换规则组合中包括至少一个变换规则集合,所述变换规则集合中包括多个变换规则;
根据所述目标变换规则组合中的多个变换规则,依次对所述第二初始化码表进行多轮变换,生成解密码表。
进一步地,所述解密模块503,具体用于:
在所述解密码表中,查找与所述密文中各个密文值对应的字符;其中,查找与所述密文中任一所述密文值对应的字符的过程包括:在所述解密码表中确定所述密文值的索引,确定数值为所述索引的第二元素,将所述第二元素作为所述密文值对应的字符;
将各个密文值对应的字符作为所述密文的原文数据。
进一步地,所述目标数据还包括所述数据加密端对所述密文的发送时间;所述装置还包括:
校验模块,用于确定所述发送时间与所述密文的接收时间的时间差;以及根据所述时间差与预设时间阈值的大小关系,判断所述密文是否有效;
所述码表生成模块502,具体用于在确定所述密文有效时,基于用户密钥、所述目标数据和第二初始化码表,生成解密码表。
本申请实施例中的上述数据处理装置可以是计算机设备,也可以是计算机设备中的部件,例如集成电路或芯片。该计算机设备可以是终端,也可以为除终端之外的其他设备。示例性的,计算机设备可以为手机、平板电脑、笔记本电脑、掌上电脑、车载计算机设备、移动上网装置(Mobile Internet Device,MID)、增强现实(Augmented Reality,AR)/虚拟现实(Virtual Reality,VR)设备、机器人、可穿戴设备、超级移动个人计算机(Ultra-Mobile Personal Computer,UMPC)、上网本或者个人数字助理(Personal DigitalAssistant,PDA)等,还可以为服务器、网络附属存储器(Network Attached Storage,NAS)、个人计算机(Personal Computer,PC)、电视机(Television,TV)、柜员机或者自助机等,本申请实施例不作具体限定。
本申请实施例提供的数据处理装置能够实现图1至图3的数据处理方法实施例实现的各个过程,为避免重复,这里不再赘述。
本申请实施例还提供一种计算机设备,如图6所示,该计算机设备600包括处理器601和存储器602,存储器602上存储有可在处理器601上运行的程序或指令,该程序或指令被处理器601执行时实现上述数据处理方法实施例的各个步骤,且能达到相同的技术效果,为避免重复,这里不再赘述。
需要说明的是,本申请实施例中的计算机设备包括上述的移动计算机设备和非移动计算机设备。
存储器602可用于存储软件程序以及各种数据。存储器602可主要包括存储程序或指令的第一存储区和存储数据的第二存储区,其中,第一存储区可存储操作系统、至少一个功能所需的应用程序或指令(比如声音播放功能、图像播放功能等)等。此外,存储器602可以包括易失性存储器或非易失性存储器,或者,存储器602可以包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(Read-Only Memory,ROM)、可编程只读存储器(Programmable ROM,PROM)、可擦除可编程只读存储器(Erasable PROM,EPROM)、电可擦除可编程只读存储器(Electrically EPROM,EEPROM)或闪存。易失性存储器可以是随机存取存储器(Random Access Memory,RAM),静态随机存取存储器(Static RAM,SRAM)、动态随机存取存储器(Dynamic RAM,DRAM)、同步动态随机存取存储器(Synchronous DRAM,SDRAM)、双倍数据速率同步动态随机存取存储器(Double Data Rate SDRAM,DDRSDRAM)、增强型同步动态随机存取存储器(Enhanced SDRAM,ESDRAM)、同步连接动态随机存取存储器(Synch link DRAM,SLDRAM)和直接内存总线随机存取存储器(Direct Rambus RAM,DRRAM)。本申请实施例中的存储器602包括但不限于这些和任意其它适合类型的存储器。
处理器601可包括一个或多个处理单元;可选的,处理器601集成应用处理器和调制解调处理器,其中,应用处理器主要处理涉及操作系统、用户界面和应用程序等的操作,调制解调处理器主要处理无线通信信号,如基带处理器。可以理解的是,上述调制解调处理器也可以不集成到处理器601中。
本申请实施例还提供一种可读存储介质,可读存储介质上存储有程序或指令,该程序或指令被处理器执行时实现上述数据处理方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
本申请实施例还提供了一种芯片,芯片包括处理器和通信接口,通信接口和处理器耦合,处理器用于运行程序或指令,实现上述数据处理方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
应理解,本申请实施例提到的芯片还可以称为系统级芯片、系统芯片、芯片系统或片上系统芯片等。
本申请实施例还提供一种计算机程序产品,该程序产品被存储在存储介质中,该程序产品被至少一个处理器执行以实现如上述数据处理方法实施例的各个过程,且能达到相同的技术效果,为避免重复,这里不再赘述。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。此外,需要指出的是,本申请实施方式中的方法和装置的范围不限按示出或讨论的顺序来执行功能,还可包括根据所涉及的功能按基本同时的方式或按相反的顺序来执行功能,例如,可以按不同于所描述的次序来执行所描述的方法,并且还可以添加、省去、或组合各种步骤。另外,参照某些示例所描述的特征可在其他示例中被组合。
上面结合附图对本申请的实施例进行了描述,但是本申请并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本申请的启示下,在不脱离本申请宗旨和权利要求所保护的范围情况下,还可做出很多形式,均属于本申请的保护之内。

Claims (14)

1.一种数据处理方法,其特征在于,应用于数据加密端,所述方法包括:
获取第一初始化码表,以及获取加解密因子;
基于所述加解密因子和所述第一初始化码表,生成加密码表;
根据所述加密码表对原文数据进行加密,生成所述原文数据的密文;
将目标数据和所述密文发送至数据解密端,以供所述数据解密端根据所述目标数据对所述密文解密,所述目标数据包括所述加解密因子中的部分数据,所述部分数据包括当前加密时间和随机因子,所述目标数据用于在所述数据解密端预存的多组变换规则组合中确定对应的目标变换规则组合,以根据所述目标变换规则组合对第二初始化码表进行多轮变换,生成用于对所述密文解密的解密码表;
所述获取加解密因子,包括:获取用户密钥、当前加密时间和随机因子,并根据所述用户密钥、所述当前加密时间和所述随机因子,生成所述加解密因子;
所述基于所述加解密因子和所述第一初始化码表,生成加密码表,包括:
按照变换规则组合与加解密因子的预设映射关系,在预存的多组变换规则组合中,确定与所述用户密钥、所述当前加密时间和所述随机因子对应的目标变换规则组合,其中每组所述变换规则组合中包括至少一个变换规则集合,所述变换规则集合中包括多个变换规则;
根据所述目标变换规则组合中的多个变换规则,依次对所述第一初始化码表进行多轮变换,生成加密码表。
2.根据权利要求1所述的方法,其特征在于,所述获取第一初始化码表,包括:
生成m×n的二维字节数组,并用m×n个元素按照预设顺序初始化所述二维字节数组,得到所述第一初始化码表,m、n为正整数。
3.根据权利要求1或2所述的方法,其特征在于,所述根据所述加密码表对原文数据进行加密,生成所述原文数据的密文,包括:
在所述加密码表中,查找与所述原文数据中各个字符对应的密文值;其中,查找与所述原文数据中任一所述字符对应的密文值的过程包括:确定所述字符的数值,在所述加密码表中确定索引为所述数值的第一元素,将所述第一元素作为所述字符对应的密文值;
将各个字符对应的密文值作为所述原文数据的密文。
4.一种数据处理方法,其特征在于,应用于数据解密端,所述方法包括:
接收来自数据加密端的目标数据和密文,所述密文为数据加密端基于加密码表对原文数据进行加密所得,所述加密码表基于加解密因子和第一初始化码表所得,所述目标数据包括所述加解密因子中的部分数据;
基于用户密钥、所述目标数据和第二初始化码表,生成解密码表,所述第二初始化码表与所述第一初始化码表一致;
根据所述解密码表对所述密文进行解密,生成所述密文的原文数据;
其中,所述加解密因子包括用户密钥、当前加密时间和随机因子,所述加密码表在所述数据加密端按照以下方式生成:
按照变换规则组合与加解密因子的预设映射关系,在预存的多组变换规则组合中,确定与所述用户密钥、所述当前加密时间和所述随机因子对应的目标变换规则组合,其中每组所述变换规则组合中包括至少一个变换规则集合,所述变换规则集合中包括多个变换规则;
根据所述目标变换规则组合中的多个变换规则,依次对所述第一初始化码表进行多轮变换,生成加密码表;
所述部分数据包括所述当前加密时间和所述随机因子,所述基于用户密钥、所述目标数据和第二初始化码表,生成解密码表,包括:
根据所述用户密钥、所述当前加密时间和所述随机因子,生成所述加解密因子;
按照变换规则组合与加解密因子的预设映射关系,在预存的多组变换规则组合中,确定与所述加解密因子对应的目标变换规则组合,其中每组所述变换规则组合中包括至少一个变换规则集合,所述变换规则集合中包括多个变换规则;
根据所述目标变换规则组合中的多个变换规则,依次对所述第二初始化码表进行多轮变换,生成解密码表。
5.根据权利要求4所述的方法,其特征在于,所述根据所述解密码表对所述密文进行解密,生成所述密文的原文数据,包括:
在所述解密码表中,查找与所述密文中各个密文值对应的字符;其中,查找与所述密文中任一所述密文值对应的字符的过程包括:在所述解密码表中确定所述密文值的索引,确定数值为所述索引的第二元素,将所述第二元素作为所述密文值对应的字符;
将各个密文值对应的字符作为所述密文的原文数据。
6.根据权利要求4或5所述的方法,其特征在于,所述目标数据还包括所述数据加密端对所述密文的发送时间;所述基于用户密钥、所述目标数据和第二初始化码表,生成解密码表,包括:
确定所述发送时间与所述密文的接收时间的时间差;
根据所述时间差与预设时间阈值的大小关系,判断所述密文是否有效;
在确定所述密文有效时,基于用户密钥、所述目标数据和第二初始化码表,生成解密码表。
7.一种数据处理装置,其特征在于,应用于数据加密端,所述装置包括:
获取模块,用于获取第一初始化码表,以及获取加解密因子;
码表生成模块,用于基于所述加解密因子和所述第一初始化码表,生成加密码表;
加密模块,用于根据所述加密码表对原文数据进行加密,生成所述原文数据的密文;
发送模块,用于将目标数据和所述密文发送至数据解密端,以供所述数据解密端根据所述目标数据对所述密文解密,所述目标数据包括所述加解密因子中的当前加密时间和随机因子,所述目标数据用于在所述数据解密端预存的多组变换规则组合中确定对应的目标变换规则组合,以根据所述目标变换规则组合对第二初始化码表进行多轮变换,生成用于对所述密文解密的解密码表;
所述获取模块,具体用于:获取用户密钥、当前加密时间和随机因子,并根据所述用户密钥、所述当前加密时间和所述随机因子,生成所述加解密因子,其中所述目标数据至少包括所述当前加密时间和所述随机因子;
所述码表生成模块,具体用于:
按照变换规则组合与加解密因子的预设映射关系,在预存的多组变换规则组合中,确定与所述用户密钥、所述当前加密时间和所述随机因子对应的目标变换规则组,其中每组所述变换规则组合中包括至少一个变换规则集合,所述变换规则集合中包括多个变换规则;
根据所述目标变换规则组合中的多个变换规则,依次对所述第一初始化码表进行多轮变换,生成加密码表。
8.根据权利要求7所述的装置,其特征在于,所述获取模块,具体用于:
生成m×n的二维字节数组,并用m×n个元素按照预设顺序初始化所述二维字节数组,得到所述第一初始化码表,m、n为正整数。
9.根据权利要求7或8所述的装置,其特征在于,所述加密模块,具体用于:
在所述加密码表中,查找与所述原文数据中各个字符对应的密文值;其中,查找与所述原文数据中任一所述字符对应的密文值的过程包括:确定所述字符的数值,在所述加密码表中确定索引为所述数值的第一元素,将所述第一元素作为所述字符对应的密文值;
将各个字符对应的密文值作为所述原文数据的密文。
10.一种数据处理装置,其特征在于,应用于数据解密端,所述装置包括:
接收模块,用于接收来自数据加密端的目标数据和密文,所述密文为数据加密端基于加密码表对原文数据进行加密所得,所述加密码表基于加解密因子和第一初始化码表所得,所述目标数据包括所述加解密因子中的部分数据;
码表生成模块,用于基于用户密钥、所述目标数据和第二初始化码表,生成解密码表,所述第二初始化码表与所述第一初始化码表一致;
解密模块,用于根据所述解密码表对所述密文进行解密,生成所述密文的原文数据;
其中,所述加解密因子包括用户密钥、当前加密时间和随机因子,所述加密码表在所述数据加密端按照以下方式生成:
按照变换规则组合与加解密因子的预设映射关系,在预存的多组变换规则组合中,确定与所述用户密钥、所述当前加密时间和所述随机因子对应的目标变换规则组合,其中每组所述变换规则组合中包括至少一个变换规则集合,所述变换规则集合中包括多个变换规则;
根据所述目标变换规则组合中的多个变换规则,依次对所述第一初始化码表进行多轮变换,生成加密码表;
所述部分数据包括所述当前加密时间和所述随机因子,所述码表生成模块,具体用于:
根据所述用户密钥、所述当前加密时间和所述随机因子,生成所述加解密因子;
按照变换规则组合与加解密因子的预设映射关系,在预存的多组变换规则组合中,确定与所述加解密因子对应的目标变换规则组合,其中每组所述变换规则组合中包括至少一个变换规则集合,所述变换规则集合中包括多个变换规则;
根据所述目标变换规则组合中的多个变换规则,依次对所述第二初始化码表进行多轮变换,生成解密码表。
11.根据权利要求10所述的装置,其特征在于,所述解密模块,具体用于:
在所述解密码表中,查找与所述密文中各个密文值对应的字符;其中,查找与所述密文中任一所述密文值对应的字符的过程包括:在所述解密码表中确定所述密文值的索引,确定数值为所述索引的第二元素,将所述第二元素作为所述密文值对应的字符;
将各个密文值对应的字符作为所述密文的原文数据。
12.根据权利要求10或11所述的装置,其特征在于,所述目标数据还包括所述数据加密端对所述密文的发送时间;所述装置还包括:
校验模块,用于确定所述发送时间与所述密文的接收时间的时间差;以及根据所述时间差与预设时间阈值的大小关系,判断所述密文是否有效;
所述码表生成模块,具体用于在确定所述密文有效时,基于用户密钥、所述目标数据和第二初始化码表,生成解密码表。
13.一种计算机设备,其特征在于,包括处理器和存储器,所述存储器存储有在所述处理器上运行的程序或指令,所述程序或指令被所述处理器执行时实现如权利要求1至3中任一项所述的数据处理方法的步骤,或实现如权利要求4至6中任一项所述的数据处理方法的步骤。
14.一种可读存储介质,其上存储有程序或指令,其特征在于,所述程序或指令被处理器执行时实现如权利要求1至3中任一项所述的数据处理方法的步骤,或实现如权利要求4至6中任一项所述的数据处理方法的步骤。
CN202311219186.5A 2023-09-21 2023-09-21 一种数据处理方法、装置、计算机设备和可读存储介质 Active CN116980232B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202311219186.5A CN116980232B (zh) 2023-09-21 2023-09-21 一种数据处理方法、装置、计算机设备和可读存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202311219186.5A CN116980232B (zh) 2023-09-21 2023-09-21 一种数据处理方法、装置、计算机设备和可读存储介质

Publications (2)

Publication Number Publication Date
CN116980232A CN116980232A (zh) 2023-10-31
CN116980232B true CN116980232B (zh) 2024-01-12

Family

ID=88477040

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202311219186.5A Active CN116980232B (zh) 2023-09-21 2023-09-21 一种数据处理方法、装置、计算机设备和可读存储介质

Country Status (1)

Country Link
CN (1) CN116980232B (zh)

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010091565A1 (zh) * 2009-02-12 2010-08-19 Liu Haiyun 需要采用穷举法解密的随机加密方法
CN103684787A (zh) * 2013-12-13 2014-03-26 北京大学深圳研究生院 基于网络传输的数据包的加密解密方法及终端
KR101447554B1 (ko) * 2013-11-08 2014-10-08 한국전자통신연구원 암호화된 파일을 복호화하는 장치 및 그 방법
CN110516462A (zh) * 2019-08-30 2019-11-29 京东数字科技控股有限公司 用于加密数据的方法和装置
CN110704854A (zh) * 2019-09-27 2020-01-17 上海易点时空网络有限公司 针对文本数据保留格式的流式加密方法
WO2020168629A1 (zh) * 2019-02-18 2020-08-27 吉林大学珠海学院 基于位置换和位变换的加密解密方法和装置

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9058497B2 (en) * 2010-12-23 2015-06-16 Microsoft Technology Licensing, Llc Cryptographic key management

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2010091565A1 (zh) * 2009-02-12 2010-08-19 Liu Haiyun 需要采用穷举法解密的随机加密方法
KR101447554B1 (ko) * 2013-11-08 2014-10-08 한국전자통신연구원 암호화된 파일을 복호화하는 장치 및 그 방법
CN103684787A (zh) * 2013-12-13 2014-03-26 北京大学深圳研究生院 基于网络传输的数据包的加密解密方法及终端
WO2020168629A1 (zh) * 2019-02-18 2020-08-27 吉林大学珠海学院 基于位置换和位变换的加密解密方法和装置
CN110516462A (zh) * 2019-08-30 2019-11-29 京东数字科技控股有限公司 用于加密数据的方法和装置
CN110704854A (zh) * 2019-09-27 2020-01-17 上海易点时空网络有限公司 针对文本数据保留格式的流式加密方法

Also Published As

Publication number Publication date
CN116980232A (zh) 2023-10-31

Similar Documents

Publication Publication Date Title
CN110719158B (zh) 基于联合学习的边缘计算隐私保护系统及保护方法
CN112235289B (zh) 数据加解密方法、装置、计算设备及存储介质
US20140233727A1 (en) Method for secure substring search
CN111079128A (zh) 一种数据处理方法、装置、电子设备以及存储介质
KR101829267B1 (ko) 암호문의 크기가 감소되는 동형 암호화 방법
WO2000031917A1 (en) Data encrypting and decrypting apparatus and methods
US9325499B1 (en) Message encryption and decryption utilizing low-entropy keys
CN111010266B (zh) 消息的加解密、读写方法、装置、计算机设备和存储介质
CN110505054B (zh) 一种基于动态白盒的数据处理方法、装置及设备
CN108270944B (zh) 一种基于分数阶变换的数字图像加密的方法及装置
EP2698945A2 (en) Vectorial private equality testing
CN108667598B (zh) 用于实现安全密钥交换的设备和方法及安全密钥交换方法
US11968300B2 (en) Data extraction system, data extraction method, registration apparatus, and program
CN117220865A (zh) 经纬度加密方法、经纬度校验方法、装置及可读存储介质
CN112019323A (zh) 数据加密、解密方法及装置、存储介质及电子设备
US20170302444A1 (en) System and methods for keyed communications channel encryption and decryption
CN114362912A (zh) 基于分布式密钥中心的标识密码生成方法、电子设备及介质
CN116980232B (zh) 一种数据处理方法、装置、计算机设备和可读存储介质
CN115603907A (zh) 加密存储数据的方法、装置、设备和存储介质
CN111131270B (zh) 数据加密和解密方法、装置、电子设备及存储介质
CN114726580A (zh) 数据处理方法和装置
CN106533674B (zh) 加密数据的共享方法、装置及系统
CN114430549A (zh) 一种适用于无线通信的白盒加解密方法与装置
CN116303551B (zh) 隐匿查询方法及设备
CN116881950B (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
GR01 Patent grant
GR01 Patent grant