CN111475524B - 基于***的数据处理方法、装置和计算机设备 - Google Patents

基于***的数据处理方法、装置和计算机设备 Download PDF

Info

Publication number
CN111475524B
CN111475524B CN202010148232.7A CN202010148232A CN111475524B CN 111475524 B CN111475524 B CN 111475524B CN 202010148232 A CN202010148232 A CN 202010148232A CN 111475524 B CN111475524 B CN 111475524B
Authority
CN
China
Prior art keywords
specified
interceptor
appointed
encrypted
sql request
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
CN202010148232.7A
Other languages
English (en)
Other versions
CN111475524A (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.)
Ping An Technology Shenzhen Co Ltd
Original Assignee
Ping An Technology Shenzhen 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 Ping An Technology Shenzhen Co Ltd filed Critical Ping An Technology Shenzhen Co Ltd
Priority to CN202010148232.7A priority Critical patent/CN111475524B/zh
Publication of CN111475524A publication Critical patent/CN111475524A/zh
Application granted granted Critical
Publication of CN111475524B publication Critical patent/CN111475524B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/242Query formulation
    • G06F16/2433Query languages
    • 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
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6227Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database where protection concerns the structure of data, e.g. records, types, queries

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Computer Security & Cryptography (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Databases & Information Systems (AREA)
  • Mathematical Physics (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • Storage Device Security (AREA)

Abstract

本申请揭示了一种基于***的数据处理方法、装置和计算机设备,其中方法包括:在应用***的第一指定目录下增加配置文件;接收输入的加密jar包,并将加密jar包中携带的配置信息添加于配置文件内;在应用***内配置指定***;通过所述指定***对待执行的SQL请求进行拦截,并在对SQL请求拦截成功后,对SQL请求中与配置信息对应的指定参数进行加密处理与解密处理。本申请实施例摒弃了现有的基于应用代码对应用***的数据进行安全改造的方式,创新性的在应用***中配置并使用指定***,来快捷方便的针对与配置信息对应的指定参数执行加密处理与解密处理,有效的降低了对于应用***的改造成本,提高了对于指定参数的改造效率。

Description

基于***的数据处理方法、装置和计算机设备
技术领域
本申请涉及信息安全技术领域,具体涉及一种基于***的数据处理方法、装置和计算机设备。
背景技术
随着科技的快速发展,应用***更新换代的速度越来越快,但同时也接连不断的暴露出应用***的一些数据安全问题,因而对于应用***的数据安全保护的需求越来越强烈。现有技术中,对应用***的数据实施安全改造的改造方式通常是依赖应用***本身的应用代码,来进行对于应用***中的重要数据的加解密处理。具体地,首先需要对应用***进行相应升级,即需要对应用***本身的应用代码进行与升级相关的改造。然后再对升级后的应用***进行加解密处理,例如通过将一些由开发人员编写的用于数据加解密的案例耦合到改造后的应用代码中,来完成对于应用***的数据的安全改造。但由于应用***的代码量通常比较大,使得在采用上述改造方式对应用***进行安全改造时容易耗时耗力,改造成本高,且改造效率较低。
发明内容
本申请的主要目的为提供一种基于***的数据处理方法、装置和计算机设备,旨在解决采用现有的改造方式对应用***进行安全改造时容易耗时耗力,改造成本高,且改造效率较低的技术问题。
本申请提出一种基于***的数据处理方法,所述方法包括步骤:
在应用***的第一指定目录下增加配置文件;
接收输入的加密jar包,并将所述加密jar包中携带的配置信息添加于所述配置文件内;
在所述应用***内配置指定***;
通过所述指定***对待执行的SQL请求进行拦截,并在对所述SQL请求拦截成功后,对所述SQL请求中与所述配置信息对应的指定参数进行加密处理与解密处理。
可选地,所述指定***包括第一***与第二***,所述在所述应用***内配置指定***的步骤,包括:
获取所述应用***的第二指定目录下的指定文件;
在所述指定文件下的指定标签中添加用于配置所述第一***的第一代码;以及,
在所述指定标签中添加用于配置所述第二***的第二代码。
可选地,所述通过所述指定***对待执行的SQL请求进行拦截,并在对所述SQL请求拦截成功后,对所述SQL请求中与所述配置信息对应的指定参数进行加密处理与解密处理的步骤,包括:
判断预设的加密开关是否开启;
若判断出预设的加密开关开启,通过所述第一***对所述SQL请求进行拦截;
在对所述SQL请求拦截成功后,按照第一预设规则对所述SQL请求中的指定参数进行加密处理,得到加密后的指定参数;
在执行完成所述指定参数的加密处理的预设时间段后,判断预设的解密开关是否开启;
若判断出预设的解密开关开启,通过所述第二***对所述SQL请求进行再拦截;
在对所述SQL请求再拦截成功后,从所述SQL请求中提取出所述加密后的指定参数;
对所述加密后的指定参数进行解密处理,得到对应的解密结果。
可选地,所述按照第一预设规则对所述SQL请求中的指定参数进行加密处理,得到加密后的指定参数的步骤,包括:
判断所述SQL请求中是否存在指定表,其中,所述指定表为待加密的表;
若判断出所述SQL请求中存在指定表,获取所述指定表的数据类型;
根据所述数据类型,将所述指定表的参数类型适配为与所述数据类型对应的指定参数类型,得到适配后的指定表;
判断所述适配后的指定表中是否存在指定字段,其中,所述指定字段为待加密的字段;
若判断出所述适配后的指定表中存在指定字段,按照第二预设规则对所述指定字段进行加密处理,得到加密后的指定字段。
可选地,所述按照第二预设规则对所述指定字段进行加密处理,得到加密后的指定字段的步骤,包括:
调用所述应用***的密钥管理服务的第一接口创建主密钥;
调用所述密钥管理服务的第二接口创建数据密钥,以通过所述密钥管理服务使用所述主密钥对所述数据密钥进行加密,并返回与所述数据密钥对应的明文数据密钥和密文数据密钥;
使用所述明文数据密钥对所述指定字段进行加密,得到加密后的指定字段。
可选地,所述使用所述明文数据密钥对所述指定字段进行加密,得到加密后的指定字段的步骤之后,包括:
删除应用***的本地明文数据密钥;
存储所述密文数据密钥与所述加密后的指定字段。
可选地,所述对所述加密后的指定参数进行解密处理,得到对应的解密结果的步骤,包括:
读取所述密文数据密钥;
调用所述密钥管理服务的第三接口,将所述密文数据密钥解密为对应的指定明文数据密钥;
使用所述指定明文数据密钥对所述加密后的指定字段进行解密,得到对应的解密结果。
本申请还提供一种基于***的数据处理装置,包括:
增加模块,用于在应用***的第一指定目录下增加配置文件;
添加模块,用于接收输入的加密jar包,并将所述加密jar包中携带的配置信息添加于所述配置文件内;
配置模块,用于在所述应用***内配置指定***;
处理模块,用于通过所述指定***对待执行的SQL请求进行拦截,并在对所述SQL请求拦截成功后,对所述SQL请求中与所述配置信息对应的指定参数进行加密处理与解密处理。
本申请还提供一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器执行所述计算机程序时实现上述方法的步骤。
本申请还提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述方法的步骤。
本申请中提供的基于***的数据处理方法、装置、计算机设备和存储介质,具有以下有益效果:
本申请中提供的基于***的数据处理方法、装置、计算机设备和存储介质,在应用***的第一指定目录下增加配置文件;接收输入的加密jar包,并将所述加密jar包中携带的配置信息添加于所述配置文件内;在所述应用***内配置指定***;通过所述指定***对待执行的SQL请求进行拦截,并在对所述SQL请求拦截成功后,对所述SQL请求中与所述配置信息对应的指定参数进行加密处理与解密处理。本申请摒弃了现有的基于应用代码对应用***的数据进行安全改造的方式,创新性的在应用***中配置并使用指定***,来快捷方便的针对与配置信息对应的指定参数执行加密处理与解密处理,且加密处理与解密处理都是在对应用透明的情况下进行的,使得对于指定参数的安全改造实施过程更加灵活简洁,有效的降低了对于应用***的改造成本,提高了对于指定参数的改造效率,减轻了加解密服务对应用***的结构和代码改造的复杂性,以及提高了对于应用***的改造成功率。
附图说明
图1是本申请一实施例的基于***的数据处理方法的流程示意图;
图2是本申请一实施例的基于***的数据处理装置的结构示意图;
图3是本申请一实施例的计算机设备的结构示意图。
本申请目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅仅用于解释本申请,并不用于限定本申请。
需要说明,本申请实施例中所有方向性指示(诸如上、下、左、右、前、后……)仅用于解释在某一特定姿态(如附图所示)下各部件之间的相对位置关系、运动情况等,如果该特定姿态发生改变时,则该方向性指示也相应地随之改变,所述的连接可以是直接连接,也可以是间接连接。
参照图1,本申请一实施例的基于***的数据处理方法,包括:
S1:在应用***的第一指定目录下增加配置文件;
S2:接收输入的加密jar包,并将所述加密jar包中携带的配置信息添加于所述配置文件内;
S3:在所述应用***内配置指定***;
S4:通过所述指定***对待执行的SQL请求进行拦截,并在对所述SQL请求拦截成功后,对所述SQL请求中与所述配置信息对应的指定参数进行加密处理与解密处理。
如上述步骤S1至S4所述,本方法实施例的执行主体为基于***的数据处理装置。在实际应用中,该基于***的数据处理装置可以通过虚拟装置,例如软件代码实现,也可以通过写入或集成有相关执行代码的实体装置实现。本实施例的基于***的数据处理装置能够快捷方便的实现对于应用***中相关数据的安全改造,上述相关数据具体为应用***服务器(即应用***的应用服务器)的SQL请求中所包含的指定参数。
具体地,首先在应用***的第一指定目录下增加配置文件,其中,上述第一指定目录可为modules/fintelligen-common/resource/,上述配置文件具体为encrypt.properties文件。在完成了对于配置文件的增加后,接收开发人员输入的加密jar包,并将上述加密jar包中携带的配置信息添加于上述配置文件内。其中,上述配置信息具体可包括加密表、加密字段、加密开关、DTO基类、分页对象、加密密钥、密钥管理服务的相关配置等信息。在完成对于上述配置信息的添加后,再在上述应用***内配置指定***,进而通过使用上述指定***对应用***服务器中待执行的SQL请求进行拦截。其中,对于上述指定***的数量不作具体限定,具体可包括第一***与第二***。并在上述指定***对上述SQL请求拦截成功后,对上述SQL请求中与上述配置信息对应的指定参数进行加密处理与解密处理,以完成对于应用***服务器中执行的SQL请求所包含的指定参数的安全改造。
本实施例摒弃了现有的基于应用代码对应用***的数据进行安全改造的方式,创新性的在应用***中配置并使用指定***,来快捷方便的针对与配置信息对应的指定参数执行加密处理与解密处理,且加密处理与解密处理都是在对应用透明的情况下进行的,使得对于指定参数的安全改造实施过程更加灵活简洁,有效的降低了对于应用***的改造成本,提高了对于指定参数的改造效率,减轻了加解密服务对应用***的结构和代码改造的复杂性,以及提高了对于应用***的改造成功率。
进一步地,本申请一实施例中,所述指定***包括第一***与第二***,上述步骤S3,包括:
S300:获取所述应用***的第二指定目录下的指定文件;
S301:在所述指定文件下的指定标签中添加用于配置所述第一***的第一代码;以及,
S302:在所述指定标签中添加用于配置所述第二***的第二代码。
如上述步骤S300至S302所述,上述指定***包括第一***与第二***,上述在应用***内置指定***的步骤,具体可包括:首先获取上述应用***的第二指定目录下的指定文件,其中,上述第二指定目录具体可为modules/fintelligen-report/core/mybatis/,上述指定文件具体可为mybatis-config-ensemble.xml文件。
然后在上述指定文件下的指定标签中添加用于配置上述第一***的第一代码,其中,上述指定标签为plugins标签,上述第一代码具体可为:<plugin interceptor="com.jryzt.apsi.base.dataEncrypt.interceptor.ParameterHandlerInterceptor"/>。另外,上述第一***可为命名为ParameterHandler***,用于在应用***运行时,对应用***服务器中执行的SQL请求所包含的指定参数进行拦截,以便后续对该指定参数进行加密处理。以及在上述指定文件下的指定标签中添加用于配置上述第二***的第二代码,其中,上述第二代码具体可为:<plugin interceptor="com.jryzt.apsi.base.dataEncrypt.interceptor.ExecutorInterceptor"/>。另外,上述第二***可为命名为Executor***,用于在应用***运行时,对应用***服务器中经过加密处理后的SQL请求内的指定参数进行拦截,以便后续对加密后的指定参数进行解密处理。
本实施例通过在指定文件的指定标签下配置上述第一代码与第二代码,以实现在应用***内成功配置用于快捷方便对需要进行安全改造处理的相关数据进行加密处理与解密处理的第一***与第二***,使得对于上述SQL请求中与配置信息对应的指定参数的安全改造实施过程更加灵活简洁,有效的减轻了加解密服务对应用***的结构和代码改造的复杂性。
进一步地,本申请一实施例中,上述步骤S4,包括:
S400:判断预设的加密开关是否开启;
S401:若判断出预设的加密开关开启,通过所述第一***对所述SQL请求进行拦截;
S402:在对所述SQL请求拦截成功后,按照第一预设规则对所述SQL请求中的指定参数进行加密处理,得到加密后的指定参数;
S403:在执行完成所述指定参数的加密处理的预设时间段后,判断预设的解密开关是否开启;
S404:若判断出预设的解密开关开启,通过所述第二***对所述SQL请求进行再拦截;
S405:在对所述SQL请求再拦截成功后,从所述SQL请求中提取出所述加密后的指定参数;
S406:对所述加密后的指定参数进行解密处理,得到对应的解密结果。
如上述步骤S400至S406所述,上述通过指定***对待执行的SQL请求进行拦截,并在对SQL请求拦截成功后,对SQL请求中与配置信息对应的指定参数进行加密处理与解密处理的步骤,具体可包括:首先判断预设的加密开关是否开启,其中,上述加密开关为配置信息中的一个控制字段,用于控制是否需要对参数进行加密处理。如果加密开关开启了,表明具有对上述指定参数进行加密的需求,则会通过上述第一***对上述SQL请求进行拦截。在对上述SQL请求拦截成功后,再按照第一预设规则对上述SQL请求中的指定参数进行加密处理,得到加密后的指定参数。
其中,可以结合使用密钥管理服务KMS(Key Management Service,密钥管理服务)来对该指定参数进行加密处理,也可以采用其他的加密技术对该指定参数进行加密处理。KMS是一款安全管理类服务,可以轻松创建和管理密钥,保护密钥的保密性、完整性和可用性,满足用户多应用多业务的密钥管理需求,符合监管和合规要求。在执行完成上述指定参数的加密处理的预设时间段后,再判断预设的解密开关是否开启。其中,对上述预设时间段不作具体限定,例如可设为2分钟。
另外,上述解密开关也为配置信息中的一个控制字段,用于控制是否需要对参数进行解密处理。如果解密开关开启了,表明具有对SQL请求中的上述加密后的指定参数进行解密的需求,则会通过上述第二***对上述SQL请求进行再拦截,并在对上述SQL请求再拦截成功后,从该SQL请求中提取出上述加密后的指定参数。最后对上述加密后的指定参数进行解密处理,得到对应的解密结果,并可进一步返回上述解密结果。
其中,对上述加密后的指定参数进行解密处理的解密方式与对上述指定参数进行加密处理的加密方式相对应,举例地,如果使用了密钥管理服务的加密方式对上述指定参数进行加密处理,则会使用对应的密钥管理服务的解密方式对上述加密后的指定参数进行解密处理,来得到对应的解密结果。
本实施例可通过预先配置的第一***与第二***来对SQL请求进行拦截,并根据预设的加密开关开启情况来对该SQL请求中的指定参数进行透明的加密处理,以及根据预设的解密开关的开启情况来对SQL请求中的已加密的指定参数进行解密处理来实现对于应用***中相关数据的安全改造,有效的减轻了加解密服务对应用***的结构和代码改造的复杂性。
进一步地,本申请一实施例中,上述步骤S402,包括:
S4020:判断所述SQL请求中是否存在指定表,其中,所述指定表为待加密的表;
S4021:若判断出所述SQL请求中存在指定表,获取所述指定表的数据类型;
S4022:根据所述数据类型,将所述指定表的参数类型适配为与所述数据类型对应的指定参数类型,得到适配后的指定表;
S4023:判断所述适配后的指定表中是否存在指定字段,其中,所述指定字段为待加密的字段;
S4024:若判断出所述适配后的指定表中存在指定字段,按照第二预设规则对所述指定字段进行加密处理,得到加密后的指定字段。
如上述步骤S4020至S4024所述,上述按照第一预设规则对上述SQL请求中的指定参数进行加密处理,得到加密后的指定参数的步骤,具体可包括:首先判断上述SQL请求是否存在指定表,其中,上述指定表为待加密的表,即需要进行加密的表,如果上述指定表对应的表信息存在于上述配置信息中,则判定该指定表为需要进行加密的表。如果上述SQL请求存在指定表,则获取上述指定表的数据类型,其中,上述数据类型具体可为map、string等。在得到了上述指定表的数据类型后,再将上述指定表的参数类型适配为与上述数据类型对应的指定参数类型,得到适配后的指定表。
举例地,如果上述数据类型为map,则上述指定参数类型也对应为map。之后,再判断上述适配后的指定表中是否存在指定字段,其中,上述指定字段为待加密的字段,即需要进行加密的字段,如果上述指定字段对应的字段信息存在于上述配置信息中,则判定该指定字段为需要进行加密的字段。如果适配后的指定表中存在上述指定字段,则按照第二预设规则对所述指定字段进行加密处理,得到加密后的指定字段。
其中,可以结合使用密钥管理服务KMS来对上述指定字段进行加密处理,也可以采用其他的加密技术对该指定字段进行加密处理。本实施例可通过预先配置的第一***来对SQL请求进行拦截,再通过密钥管理服务或其他加密技术对SQL请求中的指定参数进行加密,以快捷方便地实现了对于对该SQL请求中的指定参数的透明加密,有效的减轻了加密服务对应用***的结构和代码改造的复杂性。
进一步地,本申请一实施例中,上述步骤S4024,包括:
S40240:调用所述应用***的密钥管理服务的第一接口创建主密钥;
S40241:调用所述密钥管理服务的第二接口创建数据密钥,以通过所述密钥管理服务使用所述主密钥对所述数据密钥进行加密,并返回与所述数据密钥对应的明文数据密钥和密文数据密钥;
S40242:使用所述明文数据密钥对所述指定字段进行加密,得到加密后的指定字段。
如上述步骤S40240至S40242所述,本实施例具体可结合使用密钥管理服务KMS来对应用***中执行的SQL请求的相关参数数据进行加密处理与解密处理,以实现对于相关参数数据的安全保护,有效的保证了即使应用配置泄露或数据泄露的情况下,不法分子也无法获取破解应用***中经过加密处理的相关参数数据。
具体地,上述按照第二预设规则对上述指定字段进行加密处理,得到加密后的指定字段的步骤可包括:首先调用上述应用***的密钥管理服务的第一接口创建一个主密钥。其中,可预先将上述密钥管理服务安装于应用***的内部。上述第一接口具体可为CreateKey接口,该CreateKey接口为一个用于生成主密钥的特殊接口,在调用该CreateKey接口时会默认为用户创建一个主密钥,或者也可以通过KMS控制台来创建该主密钥。另外,在完成了对于主密钥的创建后,还可进一步为主密钥添加别名,对于别名的具体内容不作具体限定,可根据用户的个人实际需求设置。如果用户没有为主密钥添加别名,则直接使用主密钥的ID作为其别名。然后调用密钥管理服务的第二接口创建一个数据密钥,以通过上述密钥管理服务使用上述主密钥对上述数据密钥进行加密,并返回与上述数据密钥对应的一个明文数据密钥和一个密文数据密钥。其中,上述第二接口具体可为GenerateDataKey接口,该GenerateDataKey接口为一个用于生成数据密钥的特殊接口,在调用该GenerateDataKey接口时会默认在线为用户生成数据密钥,且生成的上述数据密钥所包含的具体数据是随机的。
另外,通过密钥管理服务使用上述主密钥对数据密钥进行加密后,便可生成并返回与上述数据密钥对应的密文和明文,即上述明文数据密钥与密文数据密钥。在得到了上述明文数据密钥后,再使用该明文数据密钥对上述指定字段进行加密,进而得到加密后的指定字段,从而有效的实现使用密钥管理服务对于应用***的SQL请求中的指定字段的安全加密保护。
本申请一实施例中,上述步骤S40242之后,包括:
S40243:删除应用***的本地明文数据密钥;
S40244:存储所述密文数据密钥与所述加密后的指定字段。
如上述步骤S40243至S40244所述,密钥管理服务使用上述主密钥对上述数据密钥进行加密后,除了会返回与数据密钥对应的一个明文数据密钥外,还会返回与数据密钥对应的一个密文数据密钥。在通过使用上述明文数据密钥对上述指定字段进行加密后,后续还需要进一步对本地的明文数据密钥、上述密文数据密钥以及上述加密后的指定字段进行相应的删除或存储处理,以便于后续能够顺利地进行对于上述加密后的指定字段的解密处理。
具体地,上述使用上述明文数据密钥对上述指定字段进行加密,得到加密后的指定字段的步骤之后,还包括:首先删除应用***的本地明文数据密钥,然后存储所述密文数据密钥与所述加密后的指定字段。
进一步地,本申请一实施例中,上述步骤S405,包括:
S4050:读取所述密文数据密钥;
S4051:调用所述密钥管理服务的第三接口,将所述密文数据密钥解密为对应的指定明文数据密钥;
S4052:使用所述指定明文数据密钥对所述加密后的指定字段进行解密,得到对应的解密结果。
如上述步骤S4050至S4052所述,在使用了密钥管理服务对上述指定字段进行加密处理得到加密后的指定字段后,本实施例还可根据预设的解密开关的开启情况,对应使用密钥管理服务来对上述加密后的指定字段进行解密处理,以输出所需的解密结果。
具体地,对上述加密后的指定参数进行解密处理,得到对应的解密结果的步骤包括:首先读取上述密文数据密钥。其中,在使用明文数据密钥对指定字段进行加密完成后,会将上述密文数据密钥与上述加密后的指定字段存储于本地,使得后续可以从本地读取出该密文数据密钥。在读取出该密文数据密钥后,再调用密钥管理服务的第三接口,将存储于本地的上述密文数据密钥解密为对应的指定明文数据密钥。其中,上述第三接口具体可为Decrypt接口,该Decrypt接口为一个用于解密的特殊接口,通过该Decrypt接口可以解密由密钥管理服务直接加密的数据,即可以解密由第二接口(GenerateDataKey接口)根据上述数据密钥产生的数据密钥的密文(即上述密文数据密钥)。
另外,上述指定明文数据密钥具有与上述被删除的本地的明文数据密钥相同的数据,因而指定明文数据密钥具有与上述明文数据密钥相同的功能。在得到了上述指定明文数据密钥后,再使用该指定明文数据密钥对上述加密后的指定字段进行解密,进而得到对应的解密结果。进一步在得到该解密结果后,删除存储于本地的上述指定明文数据密钥,以及还可以返回上述解密结果,以方便快捷的完成对于SQL请求中加密后的指定字段的透明解密过程,有效的减轻了加解密服务对应用***的结构和代码改造的复杂性。
参照图2,本申请一实施例中还提供了一种基于***的数据处理装置,包括:
增加模块1,用于在应用***的第一指定目录下增加配置文件;
添加模块2,用于接收输入的加密jar包,并将所述加密jar包中携带的配置信息添加于所述配置文件内;
配置模块3,用于在所述应用***内配置指定***;
处理模块4,用于通过所述指定***对待执行的SQL请求进行拦截,并在对所述SQL请求拦截成功后,对所述SQL请求中与所述配置信息对应的指定参数进行加密处理与解密处理。
本实施例中,上述基于***的数据处理装置中的增加模块、添加模块、配置模块与处理模块的功能和作用的实现过程具体详见上述基于***的数据处理方法中对应步骤S1至S4的实现过程,在此不再赘述。
进一步地,本申请一实施例中,上述配置模块,包括:
获取子模块,用于获取所述应用***的第二指定目录下的指定文件;
第一添加子模块,用于在所述指定文件下的指定标签中添加用于配置所述第一***的第一代码;以及,
第二添加子模块,用于在所述指定标签中添加用于配置所述第二***的第二代码。
本实施例中,上述基于***的数据处理装置中的获取子模块、第一添加子模块与第二添加子模块的功能和作用的实现过程具体详见上述基于***的数据处理方法中对应步骤S300至S302的实现过程,在此不再赘述。
进一步地,本申请一实施例中,上述处理模块,包括:
第一判断子模块,用于判断预设的加密开关是否开启;
第一拦截子模块,用于若判断出预设的加密开关开启,通过所述第一***对所述SQL请求进行拦截;
加密子模块,用于在对所述SQL请求拦截成功后,按照第一预设规则对所述SQL请求中的指定参数进行加密处理,得到加密后的指定参数;
第二判断子模块,用于在执行完成所述指定参数的加密处理的预设时间段后,判断预设的解密开关是否开启;
第二拦截子模块,用于若判断出预设的解密开关开启,通过所述第二***对所述SQL请求进行再拦截;
提取子模块,用于在对所述SQL请求再拦截成功后,从所述SQL请求中提取出所述加密后的指定参数;
解密子模块,用于对所述加密后的指定参数进行解密处理,得到对应的解密结果。
本实施例中,上述基于***的数据处理装置中的第一判断子模块、第一拦截子模块、加密子模块、第二判断子模块、第二拦截子模块、提取子模块与解密子模块的功能和作用的实现过程具体详见上述基于***的数据处理方法中对应步骤S400至S406的实现过程,在此不再赘述。
进一步地,本申请一实施例中,上述加密子模块,包括:
第一判断单元,用于判断所述SQL请求中是否存在指定表,其中,所述指定表为待加密的表;
获取单元,用于若判断出所述SQL请求中存在指定表,获取所述指定表的数据类型;
适配单元,用于根据所述数据类型,将所述指定表的参数类型适配为与所述数据类型对应的指定参数类型,得到适配后的指定表;
第二判断单元,用于判断所述适配后的指定表中是否存在指定字段,其中,所述指定字段为待加密的字段;
加密单元,用于若判断出所述适配后的指定表中存在指定字段,按照第二预设规则对所述指定字段进行加密处理,得到加密后的指定字段。
本实施例中,上述基于***的数据处理装置中的第一判断单元、获取单元、适配单元、第二判断单元与加密单元的功能和作用的实现过程具体详见上述基于***的数据处理方法中对应步骤S4020至S4024的实现过程,在此不再赘述。
进一步地,本申请一实施例中,上述加密单元,包括:
第一创建子单元,用于调用所述应用***的密钥管理服务的第一接口创建主密钥;
第二创建子单元,用于调用所述密钥管理服务的第二接口创建数据密钥,以通过所述密钥管理服务使用所述主密钥对所述数据密钥进行加密,并返回与所述数据密钥对应的明文数据密钥和密文数据密钥;
加密子单元,用于使用所述明文数据密钥对所述指定字段进行加密,得到加密后的指定字段。
本实施例中,上述基于***的数据处理装置中的第一创建子单元、第二创建子单元与加密子单元的功能和作用的实现过程具体详见上述基于***的数据处理方法中对应步骤S40240至S40242的实现过程,在此不再赘述。
进一步地,本申请一实施例中,上述加密单元,包括:
删除子单元,用于删除应用***的本地明文数据密钥;
存储子单元,用于存储所述密文数据密钥与所述加密后的指定字段。
本实施例中,上述基于***的数据处理装置中的删除子单元与存储子单元的功能和作用的实现过程具体详见上述基于***的数据处理方法中对应步骤S40243至S40244的实现过程,在此不再赘述。
进一步地,本申请一实施例中,上述解密子模块,包括:
读取单元,用于读取所述密文数据密钥;
第一解密单元,用于调用所述密钥管理服务的第三接口,将所述密文数据密钥解密为对应的指定明文数据密钥;
第二解密单元,用于使用所述指定明文数据密钥对所述加密后的指定字段进行解密,得到对应的解密结果。
本实施例中,上述基于***的数据处理装置中的读取单元、第一解密单元与第二解密单元的功能和作用的实现过程具体详见上述基于***的数据处理方法中对应步骤S4050至S4052的实现过程,在此不再赘述。
参照图3,本申请实施例中还提供一种计算机设备,该计算机设备可以是服务器,其内部结构可以如图3所示。该计算机设备包括通过***总线连接的处理器、存储器、网络接口和数据库。其中,该计算机设备设计的处理器用于提供计算和控制能力。该计算机设备的存储器包括非易失性存储介质、内存储器。该非易失性存储介质存储有操作***、计算机程序和数据库。该内存储器为非易失性存储介质中的操作***和计算机程序的运行提供环境。该计算机设备的数据库用于存储配置文件、加密jar包以及配置信息等数据。该计算机设备的网络接口用于与外部的终端通过网络连接通信。该计算机程序被处理器执行时以实现一种基于***的数据处理方法。
上述处理器执行上述基于***的数据处理方法的步骤:
在应用***的第一指定目录下增加配置文件;
接收输入的加密jar包,并将所述加密jar包中携带的配置信息添加于所述配置文件内;
在所述应用***内配置指定***;
通过所述指定***对待执行的SQL请求进行拦截,并在对所述SQL请求拦截成功后,对所述SQL请求中与所述配置信息对应的指定参数进行加密处理与解密处理。
本领域技术人员可以理解,图3中示出的结构,仅仅是与本申请方案相关的部分结构的框图,并不构成对本申请方案所应用于其上的装置、计算机设备的限定。
本申请一实施例还提供一种计算机可读存储介质,其上存储有计算机程序,计算机程序被处理器执行时实现一种基于***的数据处理方法,具体为:
在应用***的第一指定目录下增加配置文件;
接收输入的加密jar包,并将所述加密jar包中携带的配置信息添加于所述配置文件内;
在所述应用***内配置指定***;
通过所述指定***对待执行的SQL请求进行拦截,并在对所述SQL请求拦截成功后,对所述SQL请求中与所述配置信息对应的指定参数进行加密处理与解密处理。
综上所述,本申请实施例中提供的基于***的数据处理方法、装置、计算机设备和存储介质,在应用***的第一指定目录下增加配置文件;接收输入的加密jar包,并将所述加密jar包中携带的配置信息添加于所述配置文件内;在所述应用***内配置指定***;通过所述指定***对待执行的SQL请求进行拦截,并在对所述SQL请求拦截成功后,对所述SQL请求中与所述配置信息对应的指定参数进行加密处理与解密处理。本申请摒弃了现有的基于应用代码对应用***的数据进行安全改造的方式,创新性的在应用***中配置并使用指定***,来快捷方便的针对与配置信息对应的指定参数执行加密处理与解密处理,且加密处理与解密处理都是在对应用透明的情况下进行的,使得对于指定参数的安全改造实施过程更加灵活简洁,有效的降低了对于应用***的改造成本,提高了对于指定参数的改造效率,减轻了加解密服务对应用***的结构和代码改造的复杂性,以及提高了对于应用***的改造成功率。
本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储与一非易失性计算机可读取存储介质中,该计算机程序在执行时,可包括如上述各方法的实施例的流程。其中,本申请所提供的和实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可以包括只读存储器(ROM)、可编程ROM(PROM)、电可编程ROM(EPROM)、电可擦除可编程ROM(EEPROM)或闪存。易失性存储器可包括随机存取存储器(RAM)或者外部高速缓冲存储器。作为说明而非局限,RAM通过多种形式可得,诸如静态RAM(SRAM)、动态RAM(DRAM)、同步DRAM(SDRAM)、双速据率SDRAM(SSRSDRAM)、增强型SDRAM(ESDRAM)、同步链路(Synchlink)DRAM(SLDRAM)、存储器总线(Rambus)直接RAM(RDRAM)、直接存储器总线动态RAM(DRDRAM)、以及存储器总线动态RAM(RDRAM)等。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其它变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、装置、物品或者方法不仅包括那些要素,而且还包括没有明确列出的其它要素,或者是还包括为这种过程、装置、物品或者方法所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、装置、物品或者方法中还存在另外的相同要素。
以上所述仅为本申请的优选实施例,并非因此限制本申请的专利范围,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,均同理包括在本申请的专利保护范围内。

Claims (8)

1.一种基于***的数据处理方法,其特征在于,包括:
在应用***的第一指定目录下增加配置文件;
接收输入的加密jar包,并将所述加密jar包中携带的配置信息添加于所述配置文件内;
在所述应用***内配置指定***;
通过所述指定***对待执行的SQL请求进行拦截,并在对所述SQL请求拦截成功后,对所述SQL请求中与所述配置信息对应的指定参数进行加密处理与解密处理;其中,所述配置信息包括加密开关和解密开关;加密开关为配置信息中的一个控制字段,用于控制是否需要对参数进行加密处理;解密开关也为配置信息中的一个控制字段,用于控制是否需要对参数进行解密处理;
所述指定***包括第一***与第二***,所述在所述应用***内配置指定***的步骤,包括:
获取所述应用***的第二指定目录下的指定文件;
在所述指定文件下的指定标签中添加用于配置所述第一***的第一代码;以及,
在所述指定标签中添加用于配置所述第二***的第二代码;
所述通过所述指定***对待执行的SQL请求进行拦截,并在对所述SQL请求拦截成功后,对所述SQL请求中与所述配置信息对应的指定参数进行加密处理与解密处理的步骤,包括:
判断预设的加密开关是否开启;
若判断出预设的加密开关开启,通过所述第一***对所述SQL请求进行拦截;
在对所述SQL请求拦截成功后,按照第一预设规则对所述SQL请求中的指定参数进行加密处理,得到加密后的指定参数;
在执行完成所述指定参数的加密处理的预设时间段后,判断预设的解密开关是否开启;
若判断出预设的解密开关开启,通过所述第二***对所述SQL请求进行再拦截;
在对所述SQL请求再拦截成功后,从所述SQL请求中提取出所述加密后的指定参数;
对所述加密后的指定参数进行解密处理,得到对应的解密结果。
2.根据权利要求1所述的基于***的数据处理方法,其特征在于,所述按照第一预设规则对所述SQL请求中的指定参数进行加密处理,得到加密后的指定参数的步骤,包括:
判断所述SQL请求中是否存在指定表,其中,所述指定表为待加密的表;
若判断出所述SQL请求中存在指定表,获取所述指定表的数据类型;
根据所述数据类型,将所述指定表的参数类型适配为与所述数据类型对应的指定参数类型,得到适配后的指定表;
判断所述适配后的指定表中是否存在指定字段,其中,所述指定字段为待加密的字段;
若判断出所述适配后的指定表中存在指定字段,按照第二预设规则对所述指定字段进行加密处理,得到加密后的指定字段。
3.根据权利要求2所述的基于***的数据处理方法,其特征在于,所述按照第二预设规则对所述指定字段进行加密处理,得到加密后的指定字段的步骤,包括:
调用所述应用***的密钥管理服务的第一接口创建主密钥;
调用所述密钥管理服务的第二接口创建数据密钥,以通过所述密钥管理服务使用所述主密钥对所述数据密钥进行加密,并返回与所述数据密钥对应的明文数据密钥和密文数据密钥;
使用所述明文数据密钥对所述指定字段进行加密,得到加密后的指定字段。
4.根据权利要求3所述的基于***的数据处理方法,其特征在于,所述使用所述明文数据密钥对所述指定字段进行加密,得到加密后的指定字段的步骤之后,包括:
删除应用***的本地明文数据密钥;
存储所述密文数据密钥与所述加密后的指定字段。
5.根据权利要求4所述的基于***的数据处理方法,其特征在于,所述对所述加密后的指定参数进行解密处理,得到对应的解密结果的步骤,包括:
读取所述密文数据密钥;
调用所述密钥管理服务的第三接口,将所述密文数据密钥解密为对应的指定明文数据密钥;
使用所述指定明文数据密钥对所述加密后的指定字段进行解密,得到对应的解密结果。
6.一种基于***的数据处理装置,其特征在于,用于执行权利要求1-5任一项所述的基于***的数据处理方法,包括:
增加模块,用于在应用***的第一指定目录下增加配置文件;
添加模块,用于接收输入的加密jar包,并将所述加密jar包中携带的配置信息添加于所述配置文件内;
配置模块,用于在所述应用***内配置指定***;
处理模块,用于通过所述指定***对待执行的SQL请求进行拦截,并在对所述SQL请求拦截成功后,对所述SQL请求中与所述配置信息对应的指定参数进行加密处理与解密处理。
7.一种计算机设备,包括存储器和处理器,所述存储器中存储有计算机程序,其特征在于,所述处理器执行所述计算机程序时实现权利要求1至5中任一项所述方法的步骤。
8.一种存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1至5中任一项所述的方法的步骤。
CN202010148232.7A 2020-03-05 2020-03-05 基于***的数据处理方法、装置和计算机设备 Active CN111475524B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010148232.7A CN111475524B (zh) 2020-03-05 2020-03-05 基于***的数据处理方法、装置和计算机设备

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010148232.7A CN111475524B (zh) 2020-03-05 2020-03-05 基于***的数据处理方法、装置和计算机设备

Publications (2)

Publication Number Publication Date
CN111475524A CN111475524A (zh) 2020-07-31
CN111475524B true CN111475524B (zh) 2024-05-28

Family

ID=71748161

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010148232.7A Active CN111475524B (zh) 2020-03-05 2020-03-05 基于***的数据处理方法、装置和计算机设备

Country Status (1)

Country Link
CN (1) CN111475524B (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN113221152A (zh) * 2021-05-31 2021-08-06 中国农业银行股份有限公司 数据处理方法、装置、设备、存储介质及程序
CN115085903A (zh) * 2022-06-16 2022-09-20 平安普惠企业管理有限公司 基于加密算法的数据加密解密方法、装置、设备和介质
CN115134152A (zh) * 2022-06-29 2022-09-30 北京天融信网络安全技术有限公司 数据传输方法、数据传输装置、存储介质及电子设备
CN114915495B (zh) * 2022-07-05 2022-11-01 浙江华东工程数字技术有限公司 一种支持多种算法切换的报文加解密方法

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103577771A (zh) * 2013-11-08 2014-02-12 中科信息安全共性技术国家工程研究中心有限公司 一种基于磁盘加密的虚拟桌面数据防泄漏保护技术
CN108509805A (zh) * 2018-03-21 2018-09-07 深圳天源迪科信息技术股份有限公司 数据加解密与脱敏运行引擎及其工作方法
CN108804644A (zh) * 2018-06-05 2018-11-13 中国平安人寿保险股份有限公司 接口日志存储方法、装置、计算机设备和存储介质
CN109857479A (zh) * 2018-12-14 2019-06-07 平安科技(深圳)有限公司 接口数据处理方法、装置、计算机设备和存储介质
CN110598426A (zh) * 2019-08-14 2019-12-20 平安科技(深圳)有限公司 基于信息安全的数据通信方法、装置、设备和存储介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9208105B2 (en) * 2013-05-30 2015-12-08 Dell Products, Lp System and method for intercept of UEFI block I/O protocol services for BIOS based hard drive encryption support

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103577771A (zh) * 2013-11-08 2014-02-12 中科信息安全共性技术国家工程研究中心有限公司 一种基于磁盘加密的虚拟桌面数据防泄漏保护技术
CN108509805A (zh) * 2018-03-21 2018-09-07 深圳天源迪科信息技术股份有限公司 数据加解密与脱敏运行引擎及其工作方法
CN108804644A (zh) * 2018-06-05 2018-11-13 中国平安人寿保险股份有限公司 接口日志存储方法、装置、计算机设备和存储介质
CN109857479A (zh) * 2018-12-14 2019-06-07 平安科技(深圳)有限公司 接口数据处理方法、装置、计算机设备和存储介质
CN110598426A (zh) * 2019-08-14 2019-12-20 平安科技(深圳)有限公司 基于信息安全的数据通信方法、装置、设备和存储介质

Also Published As

Publication number Publication date
CN111475524A (zh) 2020-07-31

Similar Documents

Publication Publication Date Title
CN111475524B (zh) 基于***的数据处理方法、装置和计算机设备
CN111191286B (zh) Hyperledger Fabric区块链隐私数据存储与访问***及其方法
EP3387813B1 (en) Mobile device having trusted execution environment
TWI598814B (zh) 用於管理及診斷配備有統一可延伸韌體介面(uefi)相容韌體的計算裝置之系統與方法
CN106997439B (zh) 基于TrustZone的数据加解密方法、装置及终端设备
US10440111B2 (en) Application execution program, application execution method, and information processing terminal device that executes application
US9098715B1 (en) Method and system for exchanging content between applications
US10114932B2 (en) Adapting a mobile application to a partitioned environment
CN106992851B (zh) 基于TrustZone的数据库文件口令加解密方法、装置及终端设备
CN108418785B (zh) 密码调用方法、服务器及存储介质
CN111274611A (zh) 数据脱敏方法、装置及计算机可读存储介质
CN112800393B (zh) 授权认证、软件开发工具包生成方法、装置及电子设备
CN111917711B (zh) 数据访问方法、装置、计算机设备和存储介质
CN111431718A (zh) 基于tee扩展的计算机通用安全加密转换层方法及***
CN115758420B (zh) 文件访问控制方法、装置、设备及介质
CN114428784A (zh) 数据存取方法、装置、计算机设备及存储介质
CN112270002A (zh) 全盘加密方法、***运行方法和电子设备
KR101979320B1 (ko) 메타정보 및 엔터프라이즈 프레임웍을 이용한 암호화 sql문 자동 생성 시스템 및 방법
CN113420030A (zh) 数据存储方法、装置、设备及存储介质
CN111542050A (zh) 一种基于tee的保障虚拟sim卡远程初始化安全的方法
WO2010023683A2 (en) A method and system for client data security
CN112052464B (zh) 对资源文件进行虚拟化保护的方法、智能终端、存储介质
US20230013844A1 (en) System and method for securing keyboard input to a computing device
CN118118209A (zh) 一种基于wasm的通用数据加密方法和***
CN116244671A (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