CN112329033A - 一种数据加密方法、装置、设备及存储介质 - Google Patents

一种数据加密方法、装置、设备及存储介质 Download PDF

Info

Publication number
CN112329033A
CN112329033A CN202011193935.8A CN202011193935A CN112329033A CN 112329033 A CN112329033 A CN 112329033A CN 202011193935 A CN202011193935 A CN 202011193935A CN 112329033 A CN112329033 A CN 112329033A
Authority
CN
China
Prior art keywords
data
encrypted
encryption
ciphertext
algorithm
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
Application number
CN202011193935.8A
Other languages
English (en)
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.)
Shanghai Smk Network Technology Co ltd
Original Assignee
Shanghai Smk Network 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 Shanghai Smk Network Technology Co ltd filed Critical Shanghai Smk Network Technology Co ltd
Priority to CN202011193935.8A priority Critical patent/CN112329033A/zh
Publication of CN112329033A publication Critical patent/CN112329033A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/602Providing cryptographic facilities or services
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2107File encryption

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Computer Security & Cryptography (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)

Abstract

本发明公开了一种数据加密方法、装置、设备及存储介质。该方法包括:获取源数据和至少一种加密算法;根据所述源数据确定至少一个第一待加密数据,所述第一待加密数据为所述源数据中任意一个需要加密的数据;使用第一加密算法分别对所述至少一个第一待加密数据进行加密得到第一密文数据,其中,所述第一加密算法为所述至少一种加密算法中的任意一种加密算法。通过对源数据自动批量地加密得到加密后的可执行数据,从而提高开发人员的开发效率。

Description

一种数据加密方法、装置、设备及存储介质
技术领域
本发明属于数据加密技术领域,尤其涉及一种数据加密方法、装置、设备及存储介质。
背景技术
随着各种软、硬件技术的不断进步,数据生产量越来越庞大,在数据生产过程中,为了数据安全,通常对数据进行加密。
目前对数据加密的方法一般将数据的包名、类名、方法名等进行字典混淆处理,通过降低可读性加大破解难度。
现有的加密方法,在需要加密的数据较多时,降低了开发人员的开发效率。
发明内容
本发明实施例提供一种数据加密方法、装置、设备及存储介质,能够通过自动批量对数据加密,从而提高开发人员的开发效率。
第一方面,本发明实施例提供一种数据加密方法,该方法包括:
获取源数据和至少一种加密算法;
根据源数据确定至少一个第一待加密数据,第一待加密数据为源数据中任意一个需要加密的数据;
使用第一加密算法分别对至少一个第一待加密数据进行加密得到第一密文数据,其中,第一加密算法为至少一种加密算法中的任意一种加密算法。
在一种可能的实现方式中,该方法还包括:
获取至少一种加密算法和解密算法的对应关系数据,其中,解密算法是与至少一种加密算法对应的解密算法;
根据第一密文数据和对应关系数据,生成密文组合;
使用密文组合替换源数据中的第一待加密数据,得到第一可执行数据。
在一种可能的实现方式中,得到第一可执行数据后,该方法还包括:
根据第一可执行数据,确定第二待加密数据;
采用混淆加密方法对第二待加密数据进行混淆加密,生成第二密文数据;
根据第一可执行数据和第二密文数据,生成第二可执行数据。
在一种可能的实现方式中,在获取至少一种解密算法之前,该方法还包括:
获取目标文件,目标文件中包括至少一种加密算法、所述解密算法,加密算法和解密算法的对应关系数据;
将解密算法插入源数据所在文件夹。
在一种可能的实现方式中,根据源数据确定至少一个第一待加密数据,包括:
获取目标文件,目标文件中包括至少一种待加密数据;
将源数据中与至少一种待加密数据相同的数据确定为第一待加密数据。
在一种可能的实现方式中,根据第一可执行数据,确定第二待加密数据,包括:
获取目标文件,目标文件中包括待混淆加密数据;
将第一可执行数据中与待混淆加密数据相同的数据确定为第二待加密数据。
第二方面,本发明实施例提供了一种数据加密装置,该装置包括:
获取模块,用于获取源数据和至少一种加密算法;
第一确定模块,用于根据源数据确定至少一个第一待加密数据,第一待加密数据为源数据中任意一个需要加密的数据;
处理模块,用于使用第一加密算法分别对至少一个第一待加密数据进行加密得到第一密文数据,其中,第一加密算法为至少一种加密算法中的任意一种加密算法。
在一种可能的实现方式中,该装置还包括:
获取模块,还用于获取加密算法和解密算法的对应关系数据,其中,解密算法是与至少一种加密算法对应的解密算法;
生成模块,用于根据第一密文数据和对应关系数据,生成密文组合;还用于使用密文组合替换源数据中的第一待加密数据,得到第一可执行数据;
第二确定模块,用于根据第一可执行数据,确定第二待加密数据;
处理模块,还用于采用混淆加密方法对第二待加密数据进行混淆加密,生成第二密文数据;还用于根据第一可执行数据和第二密文数据,生成第二可执行数据。
第三方面,本发明实施例提供了一种数据加密设备,该设备包括:处理器以及存储有计算机程序指令的存储器;处理器执行计算机程序指令时,实现如第一方面或者第一方面的任一可能实现方式中的方法。
第四方面,本发明实施例提供了一种计算机存储介质,该计算机存储介质上存储有计算机程序指令,计算机程序指令被处理器执行时实现如第一方面或者第一方面的任一可能实现方式中的方法。
本发明的实施例提供的技术方案至少带来以下有益效果:
本发明通过使用至少一种第一加密算法对待加密的数据进行加密,得到第一密文数据,根据第一密文数据和至少一种加密算法和解密算法的对应关系数据,生成密文组合,使用密文组合替换源数据中的待加密数据,得到第一可执行数据。将第一可执行数据中的第二待加密数据使用混淆加密方法进行混淆加密,生成第二密文数据。根据第一可执行数据和第二密文数据,生成第二可执行数据。通过对源数据自动批量地进行加密,得到加密后的可执行数据,从而提高开发人员的开发效率和数据的安全性。
附图说明
为了更清楚地说明本发明实施例的技术方案,下面将对本发明实施例中所需要使用的附图作简单的介绍,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例提供的一种数据加密方法的流程图;
图2是本发明实施例提供的另一种数据加密方法的流程图;
图3是本发明实施例提供的另一种数据加密方法的流程图;
图4是本发明实施例提供的目标文件的一种示意图;
图5是本发明实施例提供的一种数据加密装置的示意图;
图6是本发明实施例提供的一种电子设备的硬件结构示意图。
具体实施方式
下面将详细描述本发明的各个方面的特征和示例性实施例,为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及具体实施例,对本发明进行进一步详细描述。应理解,此处所描述的具体实施例仅被配置为解释本发明,并不被配置为限定本发明。对于本领域技术人员来说,本发明可以在不需要这些具体细节中的一些细节的情况下实施。下面对实施例的描述仅仅是为了通过示出本发明的示例来提供对本发明更好的理解。
需要说明的是,在本文中,诸如第一和第二等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括……”限定的要素,并不排除在包括要素的过程、方法、物品或者设备中还存在另外的相同要素。
随着各种软、硬件技术的不断进步,数据生产量越来越庞大,在数据生产过程中,为了数据安全,通常对数据进行加密。
目前对数据加密的方法一般将数据的包名、类名、方法名等进行字典混淆处理,通过降低可读性加大破解难度。
现有的加密方法,在需要加密的数据较多时,降低了开发人员的开发效率。
基于上述问题,本发明实施例提供一种数据加密方法、装置、设备及存储介质,通过使用至少一种第一加密算法对待加密的数据进行加密,得到第一密文数据。根据第一密文数据和至少一种加密算法和解密算法的对应关系数据,生成密文组合,使用密文组合替换源数据中的待加密数据,得到第一可执行数据。将第一可执行数据中的第二待加密数据使用混淆加密方法进行混淆加密,生成第二密文数据。根据第一可执行数据和第二密文数据,生成第二可执行数据。对源码数据的需要加密的数据自动批量地进行加密,得到加密后的可执行数据,从而提高开发人员的开发效率。
为了使得本发明描述更容易理解,下面先对本发明实施例中的名词进行解释。
源数据可以是程序开发人员编写的源码,源数据所在的文件夹可以是对外程序包。
第一待加密数据可以是源数据中需要加密的常量字符串。
加密算法为依据一定加密规则,可以将第一待加密数据加密的算法。
下面将结合图1详细阐述本发明一个实施例提供的数据加密方法。
如图1所示,该方法可以包括以下步骤:
S110,获取源数据和至少一种加密算法。
源数据可以是包括包名、类名、方法名、常量字符串等数据,源数据所在的文件为源码文件。
加密算法可以对需要加密的数据进行加密。
服务器获取开发人员编写的源数据和至少一种加密算法,服务器获取源数据后,服务器获取的源数据与开发人员编写的源数据隔离。
S120,根据所述源数据确定至少一个第一待加密数据。
服务器获取源数据中需要加密的数据,也就是待加密数据。第一待加密数据为所述源数据中任意一个需要加密的数据。待加密数据可以是一种或多种常量字符串,每种常量字符串可以包括多个相同的常量字符串。
在本发明实施例提供的一个实施例中,服务器还获取目标文件,目标文件中包括至少一种第一待加密数据。开发人员可以根据需求在目标文件中自由添加一种或多种待加密数据。在确定待加密数据时时,使用多线程分别对单个源码文件进行处理,逐行提取源码文件中满足预设条件的数据(如:预设条件为数据属于常量字符串),并与目标文件中定义的需要加密的数据进行比对,将源数据中与目标文件中任意一种需要加密的数据相同的数据确定为第一待加密数据。
本发明实施例提供的方法可以通过多线程从源数据中查找待加密数据,批量地确定待加密数据,提高确定源数据中待加密数据的效率。
S130,使用第一加密算法分别对所述至少一个第一待加密数据进行加密得到第一密文数据。
其中,所述第一加密算法为所述至少一种加密算法中的任意一种加密算法。
在本发明提供的一个实施例中,对相同的待加密数据,可以使用相同的加密方法进行加密,也可以使用不同的加密方法进行加密。
本发明实施例提供的加密方法,可以对同一种待加密数据使用同一种或不同的加密算法进行加密,从而对同一种待加密数据生成的密文数据可能相同也可能不同,增加了第一密文数据被破解的难度,提高了加密后的数据的安全性。
本发明实施例提供的数据加密方法,服务器可以自动从源数据中确定待加密数据,并自动利用加密算法对每个待加密数据进行加密,得到第一密文数据。通过提高确定待加密数据的效率和对待加密数据加密的效率,提高了对源数据进行加密的效率和安全性。
上面阐述了一种数据加密方法,下面阐述如图2所示的另一种数据加密方法,
如图2所示,该方法可以包括以下步骤:
S210,获取所述至少一种加密算法和解密算法的对应关系数据。
其中,所述解密算法是与所述至少一种加密算法对应的解密算法;
服务器获取至少一种加密算法和解密算法的对应关系数据,对应关系数据的数量与加密算法数量相同。
在本发明提供的一个实施例中,解密算法是与至少一种加密算法对应的解密算法,也就是说,每种加密算法对应一种解密算法。如:加密算法A对应解密算法A,加密算法B对应解密算法B。
S220,根据所述第一密文数据和所述对应关系数据,生成密文组合。
在本发明实施例提供的一个实施例中,服务器还获取目标文件,目标文件中包括至少一种加密算法、解密算法,加密算法和解密算法的对应关系数据。在一个示例中,对应关系可以包括加密算法和解密算法的关系,还可以包括解密算法的调用链,调用链用于调用解密算法。
本发明实施例提供的数据加密方法,将第一密文数据、加密算法和解密算法的对应关系生成密文组合,对数据解密时便于开发人员调用解密算法。
在本发明提供的一个实施例中,将解密算法插入源数据所在的文件夹。在一个示例中,源数据保存在20个文件中,有5种解密算法,则将5中加密算法随机插入到20个文件中的5个文件中。
本发明实施例提供的数据加密方法,将解密算法随机插入到源数据所在的文件夹中,可以增大找到解密算法的难度,从而可以加大第一可执行数据被破解的难度,提高源数据的安全性。
在一个示例中,第一密文数据和对应关系数据生成密文组合的方式可以是“第一密文数据.解密算法名称”。
S230,使用所述密文组合替换所述源数据中的所述第一待加密数据,得到第一可执行数据。
在本发明提供的一个实施例中,依次使用多线程遍历完源数据所在的所有文件,自动批量地将源数据中需要加密的数据使用密文组合替换,即可得到第一可执行数据。第一可执行数据也就是使用加密算法加密后的源数据。
本发明实施例提供的方法可以自动批量地将源数据中需要加密的数据替换为密文组合,快速生成加密后的数据,提高了加密效率,同时提高源数据的安全性。
在本发明提供的一个实施例中,本发明实施例提供的数据加密方法生成第一可执行数据的过程在程序编译的过程中进行。也就是说,对源数据加密的过程与源数据隔离,数据加密过程不干扰开法人员的开发进程,实现高效加密的同时,极大提高灵活性和编码效率。
上面阐述了一种数据加密方法,下面阐述如图3所示的另一种数据加密方法。
如图3所示,该方法可以包括以下步骤:
S310,根据所述第一可执行数据,确定第二待加密数据。
第二待加密数据可以是源数据所在文件的包名、类名、方法名中的至少一种,将第一可执行数据中的与需要混淆加密的类名、包名、方法名中至少一种相同的数据作为第二待加密数据。
在本发明提供的一个实施例中,服务器在确定待第二加密数据时,获取目标文件,目标文件中包括待混淆加密数据。将第一可执行数据中与所述待混淆加密数据相同的数据确定为第二待加密数据。在一个示例中,服务器采用多线程分别对单个源数据所在文件进行处理,逐行提取源数据所在文件中满足预设条件的数据(如:预设条件为需要混淆加密的类名、包名、方法名),将源数据所在文件中与任意一种满足预设条件的数据相同的数据确定为第二待加密数据。
本发明实施例提供的方法,可以自动批量地确定源数据所在文件中需要加密混淆的数据,提高了确定待加密混淆数据效率。
S320,采用混淆加密算法对所述第二待加密数据进行混淆加密,生成第二密文数据。
在本发明提供的一个实施例中,混淆加密算法可以是混淆器(ProGuard)混淆技术,混淆加密算法可以包括:拆分字符串、拆分数组、增加废代码等。服务器通过ProGuard混淆技术对第二待加密数据进行混淆加密,生成第二密文数据。
本发明实施例提供的方法,对源数据所在文件的包名、类名、方法名中的至少一种,通过ProGuard混淆技术进行混淆加密,得到混淆加密后的数据,增强了源数据的安全性。
S330,根据所述第一可执行数据和所述第二密文数据,生成第二可执行数据。
服务器通过将第一可执行数据中的第二待加密数据自动批量替换为第二密文数据,得到第二可执行数据。加强了数据被破解的难度,增强了源数据的安全性。
在一个示例中,图1至图3阐述的方法中涉及到的目标文件可以是如图4所示的文件,包括命名为string_guard_rules.pro的文件和命名为GuardString.java的文件。命名为string_guard_rules.pro的文件的数据结构可以是包括需要加密的数据、不需要加密混淆的文件、需要加密混淆的文件以及加密算法和解密算法的对应关系。命名为GuardString.java的文件的数据结构可以是可以包括至少一种加密算法和解密算法。
本发明中涉及的目标文件不限于如图4所示的文件,图4所示文件为其中一种实现方式。
本发明实施例提供的目标文件为数据加密提供加密的数据、不需要加密混淆的文件、需要加密混淆的文件以及加密算法和解密算法的对应关系,和至少一种加密算法和解密算法。在进行确定第一待加密数据、对第一待加密数据进行加密、生成密文组合、确定第二待加密数据、对第二待加密数据进行加密等操作时,目标文件为提高数据加密效率提供数据源,使服务器可以批量地对数据进行处理,从而提高加密效率。
基于图1对应实施例提供的数据加密方法,本发明实施例还提供了一种数据加密装置,如图5所示。
图5是本发明实施例提供的一种数据加密装置的结构示意图,该数据加密装置可以包括获取模块510,第一确定模块520,处理模块530;其中:
获取模块510,用于获取源数据和至少一种加密算法;
第一确定模块520,用于根据所述源数据确定至少一个第一待加密数据,所述第一待加密数据为所述源数据中任意一个需要加密的数据;
处理模块530,用于使用第一加密算法分别对所述至少一个第一待加密数据进行加密得到第一密文数据,其中,所述第一加密算法为所述至少一种加密算法中的任意一种加密算法。
源数据可以是源数据可以是包括包名、类名、方法名、常量字符串等数据,源数据所在的文件为源码文件。
在本发明实施例提供的一个实施例中,获取模块510还用于获取目标文件,目标文件中包括至少一种待加密数据,第一待加密数据为待加密数据中任意一个数据。开发人员可以根据需求在目标文件中自由添加一种或多种待加密数据。在进行数据加密操作时,使用多线程分别对单个源码文件进行处理,逐行提取源码文件中满足预设条件的数据(如:预设条件为数据属于常量字符串),并与目标文件中定义的需要加密的数据进行比对,将源数据中与至少一个待加密数据相同的数据确定为第一待加密数据。
本发明实施例提供的装置可以自动批量的从源数据中确定出需要加密的数据,提高确定需要加密数据的效率。
在本发明提供的一个实施例中,第一加密算法为至少一种加密算法中的任意一种加密算法。
本发明实施例提供至少一个加密算法,加强第一密文数据被解密的难度,更好的保障需要加密的数据的安全性。
在本发明提供的一个实施例中,对相同的待加密数据,可以使用相同的加密方法进行加密,也可以使用不同的加密方法进行加密。
本发明实施例提供的加密装置,可以对同一种待加密数据使用同一种或不同的加密算法进行加密,加强第一密文数据被解密的难度,增强源数据的安全性。
本发明实施例提供的数据加密装置,通过从源数据中自动批量地确定至少一个第一待加密数据,使用至少一种加密算法自动批量地分别对至少一个第一待加密数据加密,得到第一密文数据。能够自动批量地对需要加密的数据进行加密,提高开发人员的开发效率,加强加密后的数据被解密的难度,增强源数据的安全性。
在本发明提供的一个实施例中,获取模块510,还可以用于获取所述加密算法和解密算法的对应关系数据,其中,所述解密算法是与所述至少一种加密算法对应的解密算法;
在本发明实施例提供的一个实施例中,获取模块510,还可以用于获取目标文件,目标文件中包括至少一种加密算法、解密算法,以及加密算法和解密算法的对应关系。在一个示例中,对应关系可以包括加密算法和解密算法的关系,还可以包括解密算法的调用链,调用链用于调用解密算法。
本发明实施例提供的数据加密装置,通过获取目标文件,得到目标文件中的加密算法、解密算法以及加密算法和解密算法的对应关系,为开发人员对源数据进行加密操作提供了数据基础,便于服务器批量对源数据进行加密,从而提高加密效率。
在本发明实施例提供的一个实施例中,数据加密装置还可以包括生成模块540,用于根据所述第一密文数据和所述对应关系数据,生成密文组合;还用于使用所述密文组合替换所述源数据中的所述待加密数据,得到第一可执行数据;
本发明实施例提供的数据加密装置,将第一密文数据、加密算法和解密算法的对应关系生成密文组合,对数据解密时便于开发人员调用解密算法。
在本发明提供的一个实施例中,生成模块540可以包括替换单元,用于依次使用多线程遍历完源数据所在的所有文件,自动批量地将源数据中需要加密的数据使用密文组合替换,即可得到第一可执行数据。第一可执行数据也就是使用加密算法加密后的源数据。
本发明实施例提供的装置可以自动批量地将源数据中需要加密的数据替换为密文组合,快速的生成加密后的数据,提高了加密效率,加强了数据被破解的难度,增强源数据的安全性。
在本发明提供的一个实施例中,替换单元依次使用多线程遍历完源数据所在的所有文件,自动批量地将源数据中需要加密的数据使用密文组合替换,即可得到第一可执行数据。
本发明实施例提供的装置可以自动批量地将源数据中需要加密的数据替换为密文组合,快速生成加密后的数据,提高了加密效率,同时提高源数据的安全性。
在本发明提供的一个实施例中,生成模块540可以包括插入单元,用于将解密算法插入到源数据所在的文件中,在一个示例中,源数据保存在20个文件中,有5种解密算法,则将5中加密算法随机插入到20个文件中的5个文件中。
本发明实施例提供的装置,将解密算法插入到源数据所在的文件夹,增加找到解密算法的难度,从而可以加大第一可执行数据被破解的难度,增强源数据的安全性。
在本发明的一个实施例中,该数据加密装置还可以包括第二确定模块550,其中:
第二确定模块550,用于根据所述第一可执行数据,确定第二待加密数据;
处理模块530,还用于采用混淆加密算法对所述第二待加密数据进行混淆加密,生成第二密文数据;还用于根据所述第一可执行数据和所述第二密文数据,生成第二可执行数据。
在本发明提供的一个实施例中,第二待加密数据可以是源数据所在文件的包名、类名或方法名中的至少一种。将第一可执行数据中的与需要混淆加密的类名、包名、方法名中至少一种相同的数据作为第二待加密数据。混淆加密算法可以是混淆器(ProGuard)混淆技术,混淆加密算法可以包括:拆分字符串、拆分数组、增加废代码等。通过ProGuard混淆技术对第二待加密数据进行混淆加密,生成第二密文数据。然后将第一可执行数据中的第二待加密数据自动批量替换为第二密文数据,得到第二可执行数据。
本发明实施例提供的装置,对源数据所在文件的包名、类名、方法名中的至少一种,通过ProGuard混淆技术进行混淆加密,得到混淆加密后的数据。将第一可执行数据中的包名、类名、方法名中的至少一种,替换为混淆加密后的数据。且进一步加强了数据被破解的难度,增强源数据的安全性。
在本发明提供的一个实施例中,本发明实施例提供的数据加密装置生成第一可执行数据的过程在程序编译的过程中进行。也就是说,对源数据加密的过程与源数据隔离,数据加密过程不干扰开法人员的开发进程,实现高效加密的同时,极大提高灵活性和编码效率。
本发明实施例提供的数据加密装置执行图1所示的方法中的各个步骤,并能够达到自动批量地对需要加密的数据进行加密,提高开发人员的开发效率,加强加密后的数据被解密的难度的的技术效果,为简洁描述,再此不在详细赘述。
图6示出了本发明实施例提供的一种电子设备的硬件结构示意图。
在电子设备可以包括处理器601以及存储有计算机程序指令的存储器602。
具体地,上述处理器601可以包括中央处理器(CPU),或者特定集成电路(Application Specific Integrated Circuit,ASIC),或者可以被配置成实施本发明实施例的一个或多个集成电路。
存储器602可以包括用于数据或指令的大容量存储器。举例来说而非限制,存储器602可包括硬盘驱动器(Hard Disk Drive,HDD)、软盘驱动器、闪存、光盘、磁光盘、磁带或通用串行总线(Universal Serial Bus,USB)驱动器或者两个或更多个以上这些的组合。在合适的情况下,存储器602可包括可移除或不可移除(或固定)的介质。在合适的情况下,存储器602可在综合网关容灾设备的内部或外部。在特定实施例中,存储器602是非易失性固态存储器。在特定实施例中,存储器602包括只读存储器(ROM)。在合适的情况下,该ROM可以是掩模编程的ROM、可编程ROM(PROM)、可擦除PROM(EPROM)、电可擦除PROM(EEPROM)、电可改写ROM(EAROM)或闪存或者两个或更多个以上这些的组合。
处理器601通过读取并执行存储器602中存储的计算机程序指令,以实现图1至图3所示实施例中的任意一种数据加密方法。
在一个示例中,电子设备还可包括通信接口603和总线610。其中,如图6所示,处理器601、存储器602、通信接口603通过总线610连接并完成相互间的通信。
通信接口603,主要用于实现本发明实施例中各模块、装置、单元和/或设备之间的通信。
总线610包括硬件、软件或两者,将电子设备的部件彼此耦接在一起。举例来说而非限制,总线可包括加速图形端口(AGP)或其他图形总线、增强工业标准架构(EISA)总线、前端总线(FSB)、超传输(HT)互连、工业标准架构(ISA)总线、无限带宽互连、低引脚数(LPC)总线、存储器总线、微信道架构(MCA)总线、外围组件互连(PCI)总线、PCI-Express(PCI-X)总线、串行高级技术附件(SATA)总线、视频电子标准协会局部(VLB)总线或其他合适的总线或者两个或更多个以上这些的组合。在合适的情况下,总线610可包括一个或多个总线。尽管本发明实施例描述和示出了特定的总线,但本发明考虑任何合适的总线或互连。
该电子设备可以执行本发明实施例中的数据加密方法,从而实现结合图1描述的数据加密方法。
另外,结合上述实施例中数据加密方法,本发明实施例可提供一种计算机存储介质来实现。该计算机存储介质上存储有计算机程序指令;该计算机程序指令被处理器执行时实现上述实施例中的任意一种数据加密方法。
需要明确的是,本发明并不局限于上文所描述并在图中示出的特定配置和处理。为了简明起见,这里省略了对已知方法的详细描述。在上述实施例中,描述和示出了若干具体的步骤作为示例。但是,本发明的方法过程并不限于所描述和示出的具体步骤,本领域的技术人员可以在领会本发明的精神后,作出各种改变、修改和添加,或者改变步骤之间的顺序。
以上所述的结构框图中所示的功能块可以实现为硬件、软件、固件或者它们的组合。当以硬件方式实现时,其可以例如是电子电路、专用集成电路(ASIC)、适当的固件、插件、功能卡等等。当以软件方式实现时,本发明的元素是被用于执行所需任务的程序或者代码段。程序或者代码段可以存储在机器可读介质中,或者通过载波中携带的数据信号在传输介质或者通信链路上传送。“机器可读介质”可以包括能够存储或传输信息的任何介质。机器可读介质的例子包括电子电路、半导体存储器设备、ROM、闪存、可擦除ROM(EROM)、软盘、CD-ROM、光盘、硬盘、光纤介质、射频(RF)链路,等等。代码段可以经由诸如因特网、内联网等的计算机网络被下载。
还需要说明的是,本发明中提及的示例性实施例,基于一系列的步骤或者装置描述一些方法或系统。但是,本发明不局限于上述步骤的顺序,也就是说,可以按照实施例中提及的顺序执行步骤,也可以不同于实施例中的顺序,或者若干步骤同时执行。
以上所述,仅为本发明的具体实施方式,所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,上述描述的系统、模块和单元的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。应理解,本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到各种等效的修改或替换,这些修改或替换都应涵盖在本发明的保护范围之内。

Claims (10)

1.一种数据加密方法,其特征在于,所述方法包括:
获取源数据和至少一种加密算法;
根据所述源数据确定至少一个第一待加密数据,所述第一待加密数据为所述源数据中任意一个需要加密的数据;
使用第一加密算法分别对所述至少一个第一待加密数据进行加密得到第一密文数据,其中,所述第一加密算法为所述至少一种加密算法中的任意一种加密算法。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括:
获取所述至少一种加密算法和解密算法的对应关系数据,其中,所述解密算法是与所述至少一种加密算法对应的解密算法;
根据所述第一密文数据和所述对应关系数据,生成密文组合;
使用所述密文组合替换所述源数据中的所述第一待加密数据,得到第一可执行数据。
3.根据权利要求2所述的方法,其特征在于,所述得到第一可执行数据后,所述方法还包括:
根据所述第一可执行数据,确定第二待加密数据;
采用混淆加密算法对所述第二待加密数据进行混淆加密,生成第二密文数据;
根据所述第一可执行数据和所述第二密文数据,生成第二可执行数据。
4.根据权利要求2所述的方法,其特征在于,在所述获取至少一种解密算法之前,所述方法还包括:
获取目标文件,所述目标文件中包括所述至少一种加密算法、所述解密算法,所述加密算法和所述解密算法的所述对应关系数据;
将所述解密算法插入所述源数据所在文件夹。
5.根据权利要求1所述的方法,其特征在于,所述根据所述源数据确定至少一个第一待加密数据,包括:
获取目标文件,所述目标文件中包括至少一种待加密数据;
将所述源数据中与所述至少一种待加密数据相同的数据确定为第一待加密数据。
6.根据权利要求3所述的方法,其特征在于,所述根据所述第一可执行数据,确定第二待加密数据,包括:
获取目标文件,所述目标文件中包括待混淆加密数据;
将所述第一可执行数据中与所述待混淆加密数据相同的数据确定为第二待加密数据。
7.一种数据加密装置,其特征在于,所述装置包括:
获取模块,用于获取源数据和至少一种加密算法;
第一确定模块,用于根据所述源数据确定至少一个第一待加密数据,所述第一待加密数据为所述源数据中任意一个需要加密的数据;
处理模块,用于使用第一加密算法分别对所述至少一个第一待加密数据进行加密得到第一密文数据,其中,所述第一加密算法为所述至少一种加密算法中的任意一种加密算法。
8.根据权利要求7所述的装置,其特征在于,所述装置还包括:
所述获取模块,还用于获取所述加密算法和解密算法的对应关系数据,其中,所述解密算法是与所述至少一种加密算法对应的解密算法;
生成模块,用于根据所述第一密文数据和所述对应关系数据,生成密文组合;还用于使用所述密文组合替换所述源数据中的所述第一待加密数据,得到第一可执行数据;
第二确定模块,用于根据所述第一可执行数据,确定第二待加密数据;
所述处理模块,还用于采用混淆加密算法对所述第二待加密数据进行混淆加密,生成第二密文数据;还用于根据所述第一可执行数据和所述第二密文数据,生成第二可执行数据。
9.一种电子设备,其特征在于,所述设备包括:处理器以及存储有计算机程序指令的存储器;所述处理器执行所述计算机程序指令时实现如权利要求1-6任意一项所述的数据加密方法。
10.一种计算机存储介质,其特征在于,所述计算机存储介质上存储有计算机程序指令,所述计算机程序指令被处理器执行时实现如权利要求1-6任意一项所述的数据加密方法。
CN202011193935.8A 2020-10-30 2020-10-30 一种数据加密方法、装置、设备及存储介质 Pending CN112329033A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011193935.8A CN112329033A (zh) 2020-10-30 2020-10-30 一种数据加密方法、装置、设备及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011193935.8A CN112329033A (zh) 2020-10-30 2020-10-30 一种数据加密方法、装置、设备及存储介质

Publications (1)

Publication Number Publication Date
CN112329033A true CN112329033A (zh) 2021-02-05

Family

ID=74297621

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011193935.8A Pending CN112329033A (zh) 2020-10-30 2020-10-30 一种数据加密方法、装置、设备及存储介质

Country Status (1)

Country Link
CN (1) CN112329033A (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113032806A (zh) * 2021-03-23 2021-06-25 中国邮政储蓄银行股份有限公司 一种文件处理方法、装置、存储介质及电子装置

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104462990A (zh) * 2013-09-13 2015-03-25 腾讯科技(深圳)有限公司 字符串加解密方法和装置
CN105227565A (zh) * 2015-10-13 2016-01-06 北京娜迦信息科技发展有限公司 用于安卓系统的防逆向破解共享对象文件的方法和装置
CN109246130A (zh) * 2018-10-17 2019-01-18 深圳壹账通智能科技有限公司 数据加密方法、装置、计算机设备及存储介质
CN111240654A (zh) * 2020-01-03 2020-06-05 福建天晴在线互动科技有限公司 一种Python代码加固保护的方法及其系统
CN111680307A (zh) * 2020-04-23 2020-09-18 平安科技(深圳)有限公司 分布式数据加密方法、装置、云存储服务器及存储介质

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN104462990A (zh) * 2013-09-13 2015-03-25 腾讯科技(深圳)有限公司 字符串加解密方法和装置
CN105227565A (zh) * 2015-10-13 2016-01-06 北京娜迦信息科技发展有限公司 用于安卓系统的防逆向破解共享对象文件的方法和装置
CN109246130A (zh) * 2018-10-17 2019-01-18 深圳壹账通智能科技有限公司 数据加密方法、装置、计算机设备及存储介质
CN111240654A (zh) * 2020-01-03 2020-06-05 福建天晴在线互动科技有限公司 一种Python代码加固保护的方法及其系统
CN111680307A (zh) * 2020-04-23 2020-09-18 平安科技(深圳)有限公司 分布式数据加密方法、装置、云存储服务器及存储介质

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113032806A (zh) * 2021-03-23 2021-06-25 中国邮政储蓄银行股份有限公司 一种文件处理方法、装置、存储介质及电子装置

Similar Documents

Publication Publication Date Title
JP2021513141A (ja) 2次元バーコードの生成及び識別
CN109617680A (zh) 加密方法、装置、设备及介质
CN106919811B (zh) 文件检测方法和装置
CN109992936B (zh) 基于数据水印的数据溯源方法、装置、设备及介质
CN110737908A (zh) 加密方法和装置、解密方法和装置、电子设备和介质
CN112001376B (zh) 基于开源组件的指纹识别方法、装置、设备及存储介质
CN112329033A (zh) 一种数据加密方法、装置、设备及存储介质
CN111753312B (zh) 数据处理方法、装置、设备和系统
CN113849859A (zh) Linux内核的修改方法、终端设备和存储介质
CN116028964B (zh) 一种信息安全风险管理系统
CN114090965B (zh) java代码混淆方法、系统、计算机设备及存储介质
CN110659490B (zh) 恶意样本的处理方法、装置、电子设备及存储介质
CN115001659A (zh) 网页数据加密方法、装置、设备及存储介质
CN114491421A (zh) 文件加密、文件处理方法、装置、可读介质和电子设备
CN113535067A (zh) 数据存储方法、装置、设备及存储介质
CN107800561B (zh) 资源更新方法和装置
CN118200049B (zh) 一种金融数据的加密方法、加密装置、设备及介质
CN113420310B (zh) Android应用中的国密算法检测方法
CN113283215B (zh) 一种基于utf-32编码的数据混淆方法及装置
CN109344574B (zh) 一种基于说明书的自适应安卓加固方法
CN116668144A (zh) 一种用于获取并加密绑定智能设备信息的方法
CN113553125B (zh) 可信应用程序的调用方法、装置、设备及计算机存储介质
CN109347639B (zh) 一种序列号的生成方法及装置
CN111325545B (zh) 基于区块链的密钥管理方法、装置及设备
RU2718217C1 (ru) Способ обеспечения передачи зашифрованных данных со сменой ключей шифрования и имитозащиты в цифровой системе передачи данных

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

Application publication date: 20210205

RJ01 Rejection of invention patent application after publication