CN112016113B - 数据加解密方法、装置及*** - Google Patents
数据加解密方法、装置及*** Download PDFInfo
- Publication number
- CN112016113B CN112016113B CN202011040190.1A CN202011040190A CN112016113B CN 112016113 B CN112016113 B CN 112016113B CN 202011040190 A CN202011040190 A CN 202011040190A CN 112016113 B CN112016113 B CN 112016113B
- Authority
- CN
- China
- Prior art keywords
- field
- data
- decryption
- encrypted
- decrypted
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 80
- 238000005192 partition Methods 0.000 claims description 62
- 238000012795 verification Methods 0.000 claims description 18
- 230000002427 irreversible effect Effects 0.000 claims description 9
- 238000004891 communication Methods 0.000 claims description 6
- 238000012545 processing Methods 0.000 abstract description 34
- 230000002829 reductive effect Effects 0.000 abstract description 8
- 238000007726 management method Methods 0.000 description 76
- 238000003860 storage Methods 0.000 description 30
- 238000010586 diagram Methods 0.000 description 16
- 230000006870 function Effects 0.000 description 11
- 230000008569 process Effects 0.000 description 10
- 238000012544 monitoring process Methods 0.000 description 9
- 230000005540 biological transmission Effects 0.000 description 8
- 238000004590 computer program Methods 0.000 description 8
- 238000004422 calculation algorithm Methods 0.000 description 6
- 238000013507 mapping Methods 0.000 description 6
- 238000004519 manufacturing process Methods 0.000 description 5
- 230000002441 reversible effect Effects 0.000 description 5
- 101100276036 Arabidopsis thaliana CTL1 gene Proteins 0.000 description 4
- 101100408822 Schizosaccharomyces pombe (strain 972 / ATCC 24843) pom1 gene Proteins 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 4
- 238000012986 modification Methods 0.000 description 4
- 230000004048 modification Effects 0.000 description 4
- 230000003287 optical effect Effects 0.000 description 4
- 230000002159 abnormal effect Effects 0.000 description 3
- 230000002776 aggregation Effects 0.000 description 3
- 238000004220 aggregation Methods 0.000 description 3
- 238000004364 calculation method Methods 0.000 description 2
- 230000003247 decreasing effect Effects 0.000 description 2
- 238000013461 design Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 230000000694 effects Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 238000002955 isolation Methods 0.000 description 2
- 230000002265 prevention Effects 0.000 description 2
- 230000000644 propagated effect Effects 0.000 description 2
- 238000010223 real-time analysis Methods 0.000 description 2
- 238000005070 sampling Methods 0.000 description 2
- 239000004065 semiconductor Substances 0.000 description 2
- 230000005856 abnormality Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 230000001010 compromised effect Effects 0.000 description 1
- 238000005336 cracking Methods 0.000 description 1
- 239000000284 extract Substances 0.000 description 1
- 238000000855 fermentation Methods 0.000 description 1
- 230000004151 fermentation Effects 0.000 description 1
- 239000000835 fiber Substances 0.000 description 1
- 238000001914 filtration Methods 0.000 description 1
- 238000007689 inspection Methods 0.000 description 1
- 238000002372 labelling Methods 0.000 description 1
- 239000004973 liquid crystal related substance Substances 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000003252 repetitive effect Effects 0.000 description 1
- 238000012958 reprocessing Methods 0.000 description 1
- 238000000926 separation method Methods 0.000 description 1
- 230000004083 survival effect Effects 0.000 description 1
- 230000009897 systematic effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (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示出的是本发明实施例中的数据结构管理的方法的流程图;
图7示出的是本发明实施例中的解密权限管理的方法的流程图;
图8是根据一示例性实施例示出的一种数据加解密装置的结构示意图;
图9是根据一示例性实施例示出的一种数据加解密***的结构示意图;
图10是根据一示例性实施例示出的一种电子设备的结构示意图。
具体实施方式
现在将参考附图更全面地描述示例实施例。然而,示例实施例能够以多种形式实施,且不应被理解为限于在此阐述的实施例;相反,提供这些实施例使得本发明将全面和完整,并将示例实施例的构思全面地传达给本领域的技术人员。在图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。
此外,所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施例中。在下面的描述中,提供许多具体细节从而给出对本发明的实施例的充分理解。然而,本领域技术人员将意识到,可以实践本发明的技术方案而没有特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知方法、装置、实现或者操作以避免模糊本发明的各方面。
附图中所示的方框图仅仅是功能实体,不一定必须与物理上独立的实体相对应。即,可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
附图中所示的流程图仅是示例性说明,不是必须包括所有的内容和操作/步骤,也不是必须按所描述的顺序执行。例如,有的操作/步骤还可以分解,而有的操作/步骤可以合并或部分合并,因此实际执行的顺序有可能根据实际情况改变。
应理解,虽然本文中可能使用术语第一、第二、第三等来描述各种组件,但这些组件不应受这些术语限制。这些术语乃用以区分一组件与另一组件。因此,下文论述的第一组件可称为第二组件而不偏离本公开概念的教示。如本文中所使用,术语“及/或”包括相关联的列出项目中的任一个及一或多者的所有组合。
本领域技术人员可以理解,附图只是示例实施例的示意图,附图中的模块或流程并不一定是实施本公开所必须的,因此不能用于限制本公开的保护范围。
下面首先对相关技术中的数据保护方法进行说明。
相关技术中,通常通过对数据加密实现数据保护。数据加密可分为不可逆加密和可逆加密。
1、不可逆加密,是指一旦加密就不能反向解密得到密码原文,不可逆加密优点是计算量很小,执行效率高,速度非常快。因为不可逆,破解难度非常大,也因此导致解密困难。一般用来用户密码加密存储等。
2、可逆加密可分为对称加密和非对称加密。对称加密是指加密时,将明文和加密密钥一起经过特殊的加密算法处理后,使其变成复杂的加密密文。解密时,需要使用加密时用的密钥以及相同加密算法的逆算法对密文进行解密,恢复成明文。对称加密的优点是计算量小、加密速度快、加密效率高,但由于单一密钥也会导致安全隐患。一般用于保存用户手机号、身份证等敏感但能解密的信息。非对称加密需要两个密钥:公开密钥(public key)和私有密钥(private key)。公开密钥与私有密钥是一对,如果用公开密钥对数据进行加密,只有用对应的私有密钥才能解密;如果用私有密钥对数据进行加密,那么只有用对应的公开密钥才能解密。非对称加密与对称加密相比,其安全性更好;非对称加密的缺点是加密和解密花费时间长、速度慢,只适合对少量数据进行加密。一般用于网络传输的签名、认证。
基于以上加密方式,为了保障业务处理对明文的需求,大多数企业采取可逆加密方案。再通过统一的密钥管理,加强密钥保护,防止数据泄漏。
在互联网企业的业务中,需要高效处理的海量的数据。因此,对于数据保护的要求,除了要关注安全,必须还要关注加、解密性能。而上述加密方案,在实际生产使用时,难以覆盖安全、性能等各方面的要求。
针对不可逆加密,虽然算法执行效率高,而且安全可靠,非常适合对敏感信息进行加密。但是,在实际的业务处理中,需要使用明文信息时,无法对密文直接解密。
针对可逆加密,对称加密可以对数据加密后,再进行解密,相对不可逆加密,执行效率稍差。而且,企业内的应用***种类繁多,如果在应用端使用对称加密,执行加密时,密钥需要下发到每个应用服务,这样会很容易导致密钥泄漏。如果采取集中加解密,所有应用都要把数据上传给加解密服务处理,很容易因为集中处理而导致性能和吞吐量问题,如果因为硬件故障或其他原因,出现密钥丢失,将导致数据无法解密,造成严重生产故障。
而非对称加密,可以对数据加密后,再进行解密。相对对称加密,公私钥的方式,有很高的安全性。但是,使用此方案,一般由应用服务持有私钥,解密服务持有公钥,即使应用的私钥泄漏,也无法对数据解密,但是执行性能很差,无法满足业务处理需求。
综上所述,在有多个业务***企业,企业的数据在这些***中进行复杂的流转、处理、存储,任何一个环节,如果出现数据泄漏,都会产生严重的影响。解决企业的数据泄漏问题,需要在不会影响各业务***中正常运行的前提下,对数据做安全加固和管理。相关技术中的上述加密方案,无法同时满足安全、高性能及可解密的要求。本发明实施例中,结合上述加密方案的特点,根据实际生产需要,结合具体的应用场景,提出了一种加解密方法、装置及存储介质,不仅能够防止数据的泄露,保证数据的安全性,还能满足性能要求,降低数据加解密对业务处理的影响,同时实现数据的可解密的需求,即使出现密钥丢失,也不会造成无法解密的故障问题。
图1示出的是本发明实施例中的数据加解密***的示意图。如图1所示,数据加解密***中可以包括服务器端以及与所述服务器端通信连接的客户端。其中,客户端上配置有数据加解密装置以及实现各种服务的应用,这些应用之间具有不同的解密权限,例如,A应用可以解密电话号码,B应用无法解密电话号码。
其中,数据加解密装置可以设置于客户端上的各个应用的数据输入/输出端口,可以用于拦截客户端上应用的输入数据以及输出的数据。例如,数据加解密装置嵌入在应用程序中,负责托管应用程序的输入数据和输出数据。
本发明实施例中,数据加解密装置可以为设置于应用上的SDK(SoftwareDevelopment Kit,软件开发工具包),该数据加解密装置可以获取到数据结构信息、敏感字段标识、解密权限信息以及服务器端地址,根据这些信息实现对应用的输出数据进行加密,对应用的输入数据进行解密。
服务器端与所述客户端通信连接,服务器端可以包括多个服务器,多个服务器使服务器端有横向扩展能力,可以提升处理能力。当需要对输入数据进行解密时,通过数据加解密装置将包括需解密字段的解密请求发送至服务器端的任一服务器,在该任一服务器验证通过后,从键值对中读取对应该需解密字段对应的明文。
需要指出的是,本发明实施例中的数据加解密***并不仅限于此,例如,数据加解密***中还可以包括加密管理***以及安全保障***。
加密管理***不仅可以存储数据结构信息、敏感字段标识、解密权限信息以及服务器地址,还可以实现数据结构管理、加密密钥管理、解密权限管理等,以及服务信息配置管理、日志管理等辅助功能。例如,数据结构管理提供对应用的输入和输出数据进行结构定义和敏感字段标记。加密密钥管理提供加密密钥的创建和管理。解密权限管理提供应用的解密权限申请和管理。服务信息配置管理提供消息中心、服务器端的地址配置。日志管理可查询各种操作日志。
需要说明的是,数据加解密装置以及服务端可以分别记录其对应的日志。
安全保障***可以收集数据加解密装置、服务器端以及加密管理***的执行日志,进行实时、定时聚合和分析。进而根据分析结果,进行风险预警及追踪。同时,还可以对数据加解密装置的加密结果进行抽样校验,防止处理错误。
本发明实施例中,加解密***在进行数据加解密时,可以分为以下阶段:
1、初始化阶段
在加密管理***生成加解密的密钥,并配置服务器端及消息中心地址等。在加密管理***注册应用的数据结构,并对敏感字段进行标记。在加密管理***申请应用的解密权限,并生成对应的解密权限的密钥。
2、加密阶段
数据加解密装置从加密管理***获取最新版的加解密的密钥及对应的版本信息、应用的数据结构信息及敏感字段标识、消息中心地址。当数据加解密装置拦截到应用的输出数据,根据数据结构定义与敏感字段标识,从数据中提取明文进行加密,并将加密结果替换到输出数据中。并将密钥版本信息嵌入至密文,生成密文以及明文对应的键值对,数据加解密装置在异步线程中,通过每一线程计算其对应的键值对中的密文或明文的哈希值后取模,得到模值,通过每一线程将其对应的键值对发送至所述模值映射的消息中间件的分区。服务器端从消息中心拉取键值对,对其中的密文进行解析,将该键值对写入与密钥版本信息对应的明文数据库。数据加解密装置、服务器端将处理日志通过异步线程发送至消息中心。
3、解密阶段
数据加解密装置从加密管理***获取应用的解密权限的密钥、服务器端地址、消息中心地址。数据加解密装置拦截应用的输入数据,根据数据结构定义与敏感字段标识,从数据中提取密文。数据加解密装置将密文拆分到多个分桶中,将每个分桶分发至不同的线程,每一线程将其对应的需解密字段的密文以及所述应用的解密权限信息发送至服务器端,从而实现多线程并发访问多个服务器。服务器基于所述解密权限信息对所述应用的解密权限进行校验,以及在校验通过后,解析密文,获取密钥版本信息,并发访问与密钥版本对应的明文数据库,从存储的键值对中确定所述需解密字段的密文对应的明文。数据加解密装置接收到服务器***返回的解密字段的密文对应的明文,将明文信息替换到输入数据中。数据加解密装置、服务器端将处理日志通过异步线程发送至消息中心。
4、监控阶段
安全保障***从消息中心获取密文和对应明文信息,执行抽样校验。安全保障***从消息中心获取加密及解密执行日志,通过实时、定时等方式聚合分析,进行监控。安全保障***通过多种渠道对异常情况进行报警。
图2示出的是本发明实施例中的数据加解密方法的流程示意图。需要说明的是,该方法可以应用于客户端,由客户端(具体是客户端上的数据加解密装置)执行。如图2所示,该方法可以包括但不限于以下步骤:
在S210中,若获取到客户端上应用的输出数据,确定所述输出数据中的需加密字段。
本发明实施例中,客户端上设置有数据加解密装置以及实现各种功能的应用,数据加解密装置可以设置于应用的数据输入/输出端口,可以拦截应用的输入数据以及输出数据,对于应用而言,其输出数据需要进行加密,其输入数据需要进行解密,从而该应用的输入数据都是解密后的数据,其输出数据都是加密的数据,保证了该应用的数据安全性,防止该应用的数据的泄露。当拦截到应用的输出数据时,可以从该输出数据中确定需加密字段。
本发明实施例中,输出数据以及输入数据可以包括但不限于JSON(JavaScriptObject Notation)数据、XML(eXtensible Markup Language)数据以及其他各种可结构化数据。
本发明实施例中,数据加解密装置可以从加密管理***获取所述应用的数据结构信息以及敏感字段标识,将所述输出数据按照所述数据结构信息解析,基于所述敏感字段标识从结构信息中确定需加密字段。
其中,数据结构信息可以解析包括但不局限于json、xml、对象等可结构化的数据。数据结构信息可以包括字段路径、字段名、值集合类型、值数据类型等,敏感字段可以通过预设的方式确定,在数据结构信息中对需要加密的敏感字段进行标注,实现敏感字段打标。从而将输出数据按照数据结构信息解析后,从中查找到已标注(打标)的敏感字段,该敏感字段对应的字段为需加密字段。
例如,数据结构信息为(姓名:---、性别:--、手机号:----------),按照该数据结构信息,其中,姓名以及手机号已经被标注为敏感字段,将输出数据如“用户A,姓名为张三,男,手机号为123456”按照该结构信息进行解析,得到需加密字段为“张三”以及“123456”。
需要指出的是,在实际生产中,防止数据泄漏主要是针对敏感数据信息,此部分信息在数据中占比较少。如果对整条数据加密,数据加解密装置每次均需要全量的加密或解密,对应用的性能影响很大。而本发明实施例中,只对数据中的预设字段(敏感字段)进行加密保护,大大减少处理的数据量。
在S220中,对所述输出数据中的需加密字段进行加密得到需加密字段的密文,并根据需加密字段的密文生成所述输出数据的加密数据。
本发明实施例中,对敏感字段进行不可逆加密。例如,将需加密字段为“张三”加密后,得到其对应的密文“POM1LX”,将需加密字段为“123456”加密后,得到其对应的密文“Q3WER1”。
需要指出的是,在对需加密字段进行加密时,将密钥版本信息嵌入至密文中,形成整体,因此,密文中携带有密钥版本信息。以便后续服务器端对密文进行解析,获取到秘钥版本信息,从而将该密文以及该密文对应的明文生成的键值对存储至该密钥版本信息对应的明文数据库。
例如,输出数据为“用户A,姓名为张三,男,手机号为123456”,其中,需加密字段“张三”加密后对应的密文“POM1LX”,需加密字段“123456”加密后对应的密文“Q3WER1”,则将“POM1LX”代替输出数据中的“张三”,将“Q3WER1”代替输出数据中的“123456”,生成输出数据的加密数据“用户A,姓名为POM1LX,男,手机号为Q3WER1”。
本发明实施例,在生成所述输出数据的加密数据后,将该输出数据的加密数据传输至目的端。例如,应用A向应用B发送数据,在数据加解密装置生成应用A的输出数据的加密数据后,将其发送至应用B,此时,由于已经对应用A的输出数据中的敏感字段进行加密,因此,不会造成应用A的数据的泄露。
需要说明的是,数据加解密装置在进行加密得到需加密字段的密文后,可以将所述需加密字段的密文以及明文生成的键值对发送至服务器进行存储,从而后续服务器端可以根据解密请求中的需解密字段查询键值对得到需解密字段的明文。
本发明实施例中,在将所述需加密字段的密文以及明文生成的键值对发送至服务器进行存储之前,可以基于客户端的内存记录确定是否已经发送过所述需加密字段的密文以及明文生成的键值对,若未发送过所述需加密字段的密文以及明文生成的键值对,将所述需加密字段的密文以及明文生成的键值对发送至服务器进行存储,若已经发送过所述需加密字段的密文以及明文生成的键值对,将所述需加密字段的密文以及明文生成的键值对舍弃。
需要指出的是,数据加解密装置在每次将所述需加密字段的密文以及明文生成的键值对发送至服务器进行存储后,在客户端的内存记录中简单记录该信息,例如,内存记录中存在“POM1LX对应的键值对已经发送至服务器进行存储”的记录,当数据加解密装置需要将当前的需加密字段的密文以及明文生成的键值对发送至服务器进行存储时,确定该键值对是否已经发送服务器进行存储,若否,将该键值对发送服务器进行存储,若是,则将该键值对舍弃。
本发明实施例中,考虑到采用数据加解密装置进行加密的方式,必然会导致其对应的应用的大量信息重复加密,为了降低后续服务器端重复存储信息,而造成数据库压力,在数据加解密装置和服务器端同时利用本地内存记录拦截热点数据,实现信息去重。
本发明实施例中,对输出数据进行不可逆加密,无法直接对加密的字段进行解密得到其对应的明文,因此,将需加密字段的密文以及明文发送至服务器进行存储,以便于后续基于密文查找到对应的明文,实现对密文的解密。
本发明实施例中,在将需加密字段的密文以及明文发送至服务器进行存储时,可以以所述需加密字段的密文为键,以所述密文对应的明文为值,生成所述需加密字段的密文以及明文的键值对,通过异步多线程将所述键值对发送至消息中间件的分区,以使订阅所述消息中间件的分区的服务器将所述键值对存储至明文数据库。
需要指出的是,本发明实施例中,每一密文以及其对应的明文生成键值对,可以实现该密文以及该明文的关联映射存储方式。例如,在对需加密字段“张三”加密得到其密文“POM1LX”后,以密文“POM1LX”为键,以明文“张三”为值,得到Key:POM1LX—Value:张三的键值对。
本发明实施例中,通过异步多线程将所述键值对发送至消息中间件的分区,例如,数据加解密装置在每一需加密字段完成加密,且得到键值对后,通过一异步线程将所述键值对发送至消息中间件的分区,以使订阅所述消息中间件的分区的服务器存储键值对。
例如,在对需加密字段“张三”加密得到其密文“POM1LX”后,通过加密线程1将Key:POM1LX—Value:张三的键值对发送至消息中间件的某个分区,并在对需加密字段“123456”加密得到其密文“Q3WER1”后,通过加密线程2将Key:Q3WER1—Value:123456的键值对发送至消息中间件的某个分区。
需要指出的是,为了保障应用端发送消息的效率,消息发送的线程可自动增减的机制。即根据消息产生速度,自动增加或减少消息发送线程。
本发明实施例中,在通过异步线程将所述键值对发送至消息中间件的分区时,可以通过每一线程计算其对应的键值对中的密文或明文的哈希值后取模,得到模值,通过每一线程将其对应的键值对发送至所述模值映射的消息中间件的分区。
本发明实施例中,消息中间件可以包括多个分区,每个分区内与模值存在映射关系,每一线程可以在计算出其需发送的键值对中的密文或明文对应的哈希值后取模,得到模值,从而基于消息中间件中的分区与模值的映射关系确定该键值对需要存储的消息中间件的分区。
例如,消息中间件包括3个分区,其中,分区1对应的密文的哈希值取模后的模值范围为1-20,分区2对应的哈希值取模后的模值范围为21-40,分区3对应的哈希值取模后的模值范围为41-60,通过加密线程1计算密文“POM1LX”对应的哈希值取模后的模值为16,则加密线程1需要将Key:POM1LX—Value:张三的键值对发送至消息中间件的分区1内,通过加密线程2计算密文“Q3WER1”对应的哈希值取模后的模值为34,则加密线程2需要将Key:Q3WER1—Value:123456的键值对发送至消息中间件的分区2内。
需要说明的是,服务器端可以包括多个服务器,多个服务器使服务器端有横向扩展能力,提升服务器端的处理能力。在本发明的一实施例中,每个服务器订阅至少一个消息中间件的分区,每一服务器负责存储其订阅的分区中数据加解密装置发送的密文与明文信息的键值对。每个服务器订阅至少一个消息中间件的分区,从而保障相同模值由同一个服务器进行从存储。
例如,服务器端包括服务器A、B、C,其中,服务器A订阅消息中间件的分区1,服务器B订阅消息中间件的分区2,服务器C订阅消息中间件的分区3,在加密线程1将Key:POM1LX—Value:张三的键值对发送至消息中间件的分区1后,服务器A存储该键值对。在加密线程2将Key:Q3WER1—Value:123456的键值对发送至消息中间件的分区2内后,服务器B存储该键值对。
每一服务器在从其对应的分区内拉取到键值对后,基于所述服务器的内存记录确定是否已经存储过所述需加密字段的密文以及明文生成的键值对,若确定未存储过所述需加密字段的密文以及明文生成的键值对,将所述键值对存储到所述明文数据库,若确定已经存储过所述需加密字段的密文以及明文生成的键值对,将所述键值舍弃将该键值对存储到明文数据库。
需要指出的是,数据加解密装置还可以从加密管理***获取最新版的加解密的密钥以及消息中间件(消息中心)地址。
需要说明的是,本发明实施例中可以设置每一密钥版本信息对应一明文数据库,在对需加密字段进行加密时,在加密得到的密文中嵌入了密钥版本信息,使得数据加解密装置发送至消息中间件的分区的密文中可以携带密钥版本信息,从而后续服务器可以将该密文解析,得到密钥版本信息,将该键值对存储至该密钥版本对应的明文数据库。
需要说明的是,执行以上S210-S220,实现对输出数据的加密过程。
在S230中,若获取到所述客户端上应用的输入数据,确定所述输入数据中的需解密字段。
本发明实施例中,可以从所述加密管理***中获取所述应用的数据结构信息以及敏感字段标识,将所述输入数据按照所述数据结构信息解析,基于所述敏感字段标识从结构信息中确定需解密字段。
需要指出的是,进行加密以及进行解密的可以是同一个应用,也可以是不同的应用。例如,对客户端上的A应用的输出数据进行加密,对该客户端上的B应用的输入数据进行解密。
需要指出的是,在对输入数据进行解密时,数据加解密装置可以从加密管理***获取所述应用的数据结构信息以及敏感字段标识,将所述输入数据按照所述数据结构信息解析,基于所述敏感字段标识从结构信息中确定需加密字段。
例如,数据结构信息为(姓名:---、性别:--、手机号:----------),按照该数据结构信息,其中,姓名以及手机号已经被标注为敏感字段,将输入数据如“用户A,姓名为POM1LX,男,手机号为Q3WER1”按照该结构信息进行解析,得到需解密字段为“POM1LX”以及“Q3WER1”。
在S240中,向服务器端发送解密请求,所述解密请求包括所述需解密字段。
本发明实施例中,解密请求还可以包括:所述应用的解密权限信息。可以将所述需解密字段进行分桶,将每个分桶分发至不同的线程,每一线程将包括其对应的需解密字段的密文以及所述应用的解密权限信息的解密请求发送至任一服务器,以使该服务器基于所述解密权限信息对所述应用的解密权限进行校验,以及在校验通过后从键值对中确定其所接收到的需解密字段的密文对应的明文。
本发明实施例中,数据加解密装置在对需解密字段进行解密时,对需解密字段进行分桶,将每个分桶分发至不同的解密线程中。每一解密线程可以获取到任意一个服务器的地址(从加密管理***获取的),多解密线程异步将包括其对应的需解密字段的密文以及所述应用的解密权限信息(从加密管理***获取的)的解密请求发送至该服务器的地址对应的服务器,每一服务器在接收到该密文以及解密权限信息后,基于所述解密权限信息对所述应用的解密权限进行校验,以及在校验通过后从存储的键值对中确定其所接收到的需解密字段的密文对应的明文。
本发明实施例中,为了提高解密性能,将提取的密文信息进行分桶处理。然后将每个桶分发给不同的解密线程,不同解密线程请求不同的服务器,实现对大批量密文并行解密处理,提高解密处理效率。
本发明实施例中,为了防止数据泄漏,进行解密时,需要申请解密权限,获取解密权限密钥。解密权限密钥属于每个应用独有,即不同的应用会拥有不同的解密权限。解密时,将密文与解密权限同时发送至服务器端,服务器端验证通过后,从明文数据库获取明文。
需要指出的是,服务器端可以从加密管理***获取到每一应用的解密权限密钥,每一服务器在接收到该密文以及解密权限信息后,基于从加密管理***中获取的解密权限密钥与接收到的解密权限信息进行比较,若相同,则校验通过,从存储的键值对中确定所述需解密字段的密文对应的明文。否则,校验失败,返回提示信息。
本发明实施例中,数据加解密装置发送的解密权限信息以及发送对象—服务器的地址可以在数据加解密装置初始化时获取。
需要指出的是,本发明实施例中可以设置每一密钥版本信息对应一明文数据库,因此,数据加解密装置在对需加密字段进行加密时,在加密得到的密文中嵌入了密钥版本信息,使得数据加解密装置发送至消息中间件的分区的密文中可以携带密钥版本信息,后续服务器可以将该密文解析,可以得到密钥版本信息,从而将该键值对存储至该密钥版本对应的明文数据库。在后续进行解密时,在通过多解密线程并发将其对应的需解密字段的密文以及所述应用的解密权限信息发送至其对应的服务器之后,服务器可以将该密文解析,得到密钥版本信息,并从该密钥版本信息对应的明文数据中确定所述需解密字段的密文对应的明文。
在S250中,接收来自于所述服务器端针对所述解密请求返回的所述需解密字段的明文,并根据所述明文生成所述需解密字段的解密数据。
本发明实施例中,接收到来自于服务器端针对所述解密请求返回的所述需解密字段的明文后,将所述明文替换所述输入数据中的需解密字段,生成所述输入数据的解密数据。
例如,上述示例中,数据加解密装置在接收到“POM1LX”对应的明文“张三”以及“Q3WER1”对应的明文“123456”后,将“张三”替换“POM1LX”,将“123456”替换“Q3WER1”,生成输入数据的解密数据为“用户A,姓名为张三,男,手机号为123456”。
本发明实施例中,在进行需加密数据的加密后,由服务器对该密文以及明文的键值对进行存储,在后续进行解密时,服务器端根据所述解密请求中的所述需解密字段查询键值对得到该需解密字段的明文。
需要说明的是,执行以上S230-S250,实现对输入数据的解密过程。
需要指出的是,针对应用而言,其可以先获取到输出数据,后获取到输入数据,或者,先获取到输入数据,后获取到输出数据,甚至可以同时获取到输出数据以及输入数据,本发明实施例中,并不仅限于先获取到输出数据,然后获取到输入数据的顺序,无论获取到输入数据以及输出数据的顺序如何,本发明实施例针对输入数据进行S230-S250的解密处理,针对输出数据进行S210-S220的加密处理。
本发明实施例中,若获取到客户端上应用的输出数据,确定所述输出数据中的需加密字段;对所述输出数据中的需加密字段进行加密得到需加密字段的密文,并根据需加密字段的密文生成所述输出数据的加密数据;若获取到所述客户端上应用的输入数据,确定所述输入数据中的需解密字段;向服务器端发送解密请求,所述解密请求包括所述需解密字段;接收来自于所述服务器端针对所述解密请求返回的所述需解密字段的明文,并根据所述明文生成所述需解密字段的解密数据;其中,所述需解密字段的明文为所述服务器端根据所述解密请求中的所述需解密字段查询键值对得到的。通过对应用的输入数据以及输出数据进行局部加解密的方式,实现了对数据的精细化的安全管理,在源数据结构不改变的情况下,能够防止数据的敏感信息泄露,保证数据的安全性,提升数据加解密的效率,降低数据加解密对业务处理的影响,保障业务对数据使用和处理的要求。
下面结合具体的实施例,对本发明实施例中提出的数据加解密装置进行详细的说明。数据加解密装置可以包括以下四个功能:
1、信息获取
在一个实施例中,数据加解密装置可以在初始化或运行时监听获取到加密管理***中的信息。
a.初始化:获取应用的标识信息提供给加密管理***,与加密管理***建立链接,并从加密管理***获取最新版密钥版本信息、服务器端地址、应用对应的解密权限信息、消息中间件地址等。
b.监听:实时监听加密管理***推送的数据结构信息和敏感字段标识,并更新本地对应的缓存信息。
2、日志上报
在一个实施例中,数据加解密装置可以记录加解密执行情况的日志,并通过异步方式,发送到消息中间件。
3、数据加密以及解密
下面对服务器端侧的数据加解密方法进行详细的说明。
图3示出的是本发明实施例中的另一数据加解密方法的流程示意图。需要说明的是,该方法可以应用于服务器端,服务器端可以包括多个多个服务器,每个服务器订阅至少一个消息中间件的分区,该方法由任一服务器执行。
如图3所示,该方法可以包括但不限于以下步骤:
在S310中,从消息中间件的分区中拉取数据加解密装置发送的针对应用的输出数据中的需加密字段的密文以及明文生成的键值对。
在S320中,对所述键值对进行存储。
本发明实施例中,服务器端通过网络隔离策略设置,仅允许服务器端和明文数据库之间可以无障碍访问,外界任何机器及服务都无法直接访问明文数据库,但可以访问服务器端。
在服务器端中,服务器端负责接收、校验外界请求,进行明文数据落库及读取管理。为了保障读写性能,明文数据库采用高性能的K-V数据库。以密文作为键,明文作为值进行存储。
本发明实施例中,每一服务器可以从订阅的消息中间件的分区中拉取所述客户端发送的需加密字段的密文以及明文生成的键值对,并对所述键值对进行存储。
本发明实施例中,在对键值对进行存储时,可以基于所述服务器端的内存记录确定是否已经存储过所述键值对,若确定未存储过所述键值对,对所述键值对进行存储,若确定已经存储过所述键值对,将所述键值舍弃。
需要指出的是,每一服务器在每次存储过所述需加密字段的密文以及明文生成的键值对后,在内存记录中简单记录该信息,例如,内存记录中存在“POM1LX对应的键值对已经存储至明文数据库”的记录,当服务器在将当前的键值进行存储时,确定该键值对是否已经存储过,若否,将该键值存储至明文数据库,若是,则将该键值对舍弃。
本发明实施例中,为了保障高效的去重性能,使用本地内存记录拦截热点数据。但是这需要让不同数据加解密装置产生的相同的数据发送至同一台服务器,才能保证使本地内存记录中拦截热点数据时的高命中率以及准确率。因此,采取了在数据加解密装置计算hash值后取模,将键值对发送至模值映射的消息中间件的分区,每个解密服务订阅一个分区来获取键值对的方式。由于每个服务器订阅至少一个消息中间件的分区,保障相同模值由同一个服务器进行存储,因此,每一消息中间件的分区内的键值对仅需要确定订阅该分区的服务器的内存记录中是否已经存储过该键值对,即可实现该键值对在所有的服务器的内存记录的去重存储的效果。
需要说明的是,本发明实施例中可以设置每一密钥版本信息对应一明文数据库,数据加解密装置在对需加密字段进行加密时,在加密得到的密文中嵌入了密钥版本信息,使得数据加解密装置发送至消息中间件的分区的密文中可以携带密钥版本信息,后续服务器在对键值对进行存储时,可以将该密文解析,得到密钥版本信息,从而将该键值对存储至该密钥版本对应的明文数据库。在后续进行解密时,在通过多解密线程异步将其对应的需解密字段的密文发送至服务器之后,服务器可以将该密文解析,得到密钥版本信息,并从该密钥版本信息对应的明文数据中确定所述需解密字段的密文对应的明文。
本发明实施例中,为了防止加解密的密钥长久不更新,可能存在泄漏风险,提供了密钥版本管理的功能。通过对密文再做加工,使密文嵌入了版本信息。相同的明文,通过不同密钥版本加密,会生成不同密文。在服务器端,通过对密文解析,提取密钥版本信息,将密文和明文存储在对应密钥版本的明文库中,方便按版本解密,提升数据加解密的安全性。
本发明实施例中,在进行密文以及其对应的明文的存储时,在信息保存到明文数据库前,通过本地内存实现热点数据缓存,过滤已经存储的数据,避免了数据重复落库,同时保障快速的处理能力。
需要说明的是,服务器可以为每一键值对设置截止时间TTL,当超过该截止时间,销毁键值对。
本发明实施例中,当服务器接收到包括所述应用的输入数据中的需解密字段的密文以及解密权限信息的解密请求时,可以基于所述解密权限信息对所述应用的解密权限进行校验,在校验通过后,从键值对中查找到所述需解密字段的密文对应的明文。
需要指出的是,服务器端可以在初始化时从加密管理***获取到各应用的解密权限密钥,从而在接收到所述数据加解密装置发送的所述应用的输入数据中的需解密字段的密文以及解密权限信息时,基于从加密管理***中获取的解密权限密钥与接收到的解密权限信息进行比较,若相同,则校验通过,从存储的密文以及明文中确定所述需解密字段的密文对应的明文。否则,校验失败,返回提示信息。
需要说明的是,不同的应用对应的解密权限可能不同。
在S330中,将所述明文返回至所述客户端。
本发明实施例中,接收来自于客户端的解密请求,所述解密请求包括需解密字段;查询键值对得到所述需解密字段的明文;将所述明文返回至所述客户端。实现了对数据的精细化的安全管理,能够防止数据的泄露,保证数据的安全性,提升数据加解密的效率,降低数据加解密对业务处理的影响,同时实现数据的可解密的需求。
图4示出的是本发明实施例中的再一数据加解密方法的流程示意图。需要说明的是,该方法可以应用于包括客户端以及服务器端的加解密***,其中,客户端上设置有数据加解密装置以及若干的应用,数据加解装置可以拦截各应用的输入数据以及输出数据,所述服务器端可以包括多个服务器,每个服务器订阅至少一个消息中间件的分区。图5示出的是本发明实施例中的加解密***中的数据调用关系图,如图4所示,该方法可以包括但不限于以下步骤:
在S401中,数据加解密装置获取应用的输出数据,确定所述输出数据中的需加密字段。
如图5所示,数据加解密装置可以从加密管理***获取所述应用的数据结构信息以及敏感字段标识,将所述输出数据按照所述数据结构信息解析,基于所述敏感字段标识从结构信息中确定需加密字段。
在S402中,所述数据加解密装置对所述需加密字段进行加密,获取所述需加密字段的密文。
需要说明的是,数据加解密装置还可以从加密管理***获取加密密钥,从而对需加密字段进行加密,获取所述需加密字段的密文。
在S403中,所述数据加解密装置将所述密文替换所述输出数据中的需加密字段,生成所述输出数据的加密数据。
在S404中,所述数据加解密装置将所述需加密字段的密文以及明文生成的键值对发送至消息中间件的分区。
如图5所示,数据加解密装置将密文以及其对应的明文发送至消息中间件(消息中心)存储。
需要指出的是,数据加解密装置还可以将其执行日志发送至消息中间件,以使安全保障***获取到该日志。
在S405中,订阅所述消息中间件的分区的服务器拉取所述键值对。
如图5所示,订阅消息中间件的分区的服务器从消息中间件(消息中心)拉取所述需加密字段的密文以及明文。
需要指出的是,服务器还可以将其执行日志发送至消息中间件,以使安全保障***获取到该日志。
在S406中,所述服务器对所述键值对进行存储。
如图5所示,服务器将该密文以及明文存储至网络隔离保护的明文数据库中。
在S407中,当所述数据加解密装置获取到所述应用的输入数据时,确定所述输入数据中的需解密字段。
如图5所示,数据加解密装置可以基于从加密管理***获取的所述应用的数据结构信息以及敏感字段标识,将所述输入数据按照所述数据结构信息解析,基于所述敏感字段标识从结构信息中确定需解密字段。
在S408中,所述数据加解密装置将所述需解密字段的密文以及所述应用的解密权限信息发送至任一服务器。
在S409中,所述任一服务器基于所述解密权限信息对所述应用的解密权限进行校验。
如图5所示,服务器端可以从加密管理***中获取到应用的解密权限密钥,基于从加密管理***中获取的解密权限密钥与接收到的解密权限信息进行比较,实现应用的解密权限校验。
在S410中,所述任一服务器在校验通过后,从存储的键值对中查找到所述需解密字段的密文对应的明文。
若从加密管理***中获取的解密权限密钥与接收到的解密权限信息相同,则校验通过,从存储密文以及明文的明文数据库中确定所述需解密字段的密文对应的明文。
在S411中,所述数据加解密装置将所述明文替换所述输入数据中的需解密字段,生成所述输入数据的解密数据。
本发明实施例中,通过集中解密权限管理和不可逆加密的方式,实现数据的加密,在加强密钥管理的同时,又能保障即使密钥泄漏也无法对加密后数据进行解密,提升了加密的可靠性。
本发明实施例中,由于采取不可逆加密,为了保障数据的解密需求,需要对密文和明文做映射存储。因此,本发明通过***化设计,从存储、管理、监控多个角度强化安全管理。主要有:1)通过网络隔离加强对服务器端的保护,限制对密文和明文映射存储的访问。2)通过引入数据加解密装置,使加密、解密处理过程对应用完全不可见。3)通过实时、定时分析各***及数据加解密装置的日志,实现监控和巡检,保障异常情况及时预警。
本发明实施例中,考虑到相关技术中在对数据进行保护后,通常对业务处理流程存在以下两个方面的影响:一方面会导致应用程序的执行效率变差;另一方面会导致应用程序重构或大幅度修改。为此,本发明在这两个方面实现以下处理:
1.保障应用程序的执行效率
在实际生产中,防止数据泄漏主要是针对敏感数据信息,此部分信息在数据中占比较少。如果对整条数据加密,应用处理数据时,每次全量解密,对性能影响很大。因此本发明实施例中仅对数据中的敏感信息(预设字段)进行加密保护,大大减少处理的数据量。
此外,通过对数据加解密装置和服务器端的优化设计,对加密和解密处理进行了加速,如,通过数据加解密装置,在应用端处理数据加密。通过数据加解密装置,将密文和对应明文异步发送至服务器端。通过数据加解密装置,将解密请求拆分,使用多线程并发访问多个解密服务。在服务器端中,利用本地内存做热点数据缓存,过滤落库请求。在服务器端中,使用高性能的K-V数据库,存储密文与明文映射。
2.避免应用程序重构或大幅度修改
本发明实施例中,在加密管理***中提供应用的输入数据和输出数据的数据结构信息和敏感字段标识;然后,在数据加解密装置拦截到应用的输入数据和输出数据时,根据数据结构信息和敏感字段标识自动提取敏感数据,进行加、解密后再替换回数据中。该过程对于应用完全无感知,从而大大减少对应用的影响。而且,这种方式没有改变数据结构,只对敏感数据处理,在一些不需要关注明文信息的业务场景,甚至可以直接使用经过加密处理后数据,而不用解密。
如图5所示,本发明实施例中加密管理***可以看成是控制及配置管理中心,为数据加解密装置及服务器端提供所需的配置和权限信息。其核心功能有数据结构管理、加密密钥管理、解密权限管理。辅助功能有服务信息配置管理、操作日志管理。
1、数据结构管理
负责应用的输入数据和输出数据结构注册、定义及打标。并通过监听池对结构变化进行监听,及时推送给数据加解密装置。
数据结构定义内容包括字段路径、字段名、值集合类型、值数据类型等,在此数据结构基础上,对需要加密的敏感字段进行标注,实现敏感字段打标。
图6示出的是本发明实施例中的数据结构管理的方法的流程图。该方法可以由数据加密管理***执行。如图6所示,该方法可以包括但不限于以下步骤:
在S610中,注册与各应用标识关联的数据结构信息。
在S620中,定义数据结构信息中的字段路径、字段名、值信息。
在S630中,将敏感字段打标。
在S640中,将数据结构信息注入监听池,监听数据结构信息的修改。
在S650中,按各应用标识向数据加解密装置推送对应的数据结构信息以及敏感字段标识。
2、加密密钥管理
通过内置的算法,生成加解密的密钥,并实现密钥升级及版本管理等,保障密钥的可追溯、可替换,从而保障数据加密方式替换和升级需求。
3、解密权限管理
应用在处理业务是需要获取加密数据的明文信息,必须预先在加密管理***申请解密权限。通过申请后,加密管理***会通过算法生成与应用标识对应的权限密钥,应用调用解密服务时,必须提供其对应的解密权限密钥。
图7示出的是本发明实施例中的解密权限管理的方法的流程图。该方法可以由加密管理***执行。如图7所示,该方法可以包括但不限于以下步骤:
在S710中,生成与应用标识关联的解密申请。
在S720中,发送至各级主管审批。
在S730中,生成与应用标识关联的解密权限密钥。
在S740中,与数据加解密装置建立连接时根据应用标识推送解密权限密钥。
4、服务信息配置管理
提供消息中心地址、服务器端地址等配置信息。
5、操作日志管理
加密管理***的各种操作日志记录和查看。
如图5所示,安全保障***主要的职责是监控、校验。及时发现数据处理过程存在的问题,并进行报警。
1、监控
从消息中心拉取数据加解密装置及服务器端的日志信息,通过流计算引擎,抽取指标信息,以应用名、应用集群、应用IP等作为维度,按时间窗口进行聚合分析,及时发现异常操作。同时,将日志信息落入实时分析数据库,通过定时和实时方式从实时分析数据库查询并聚合分析,展示为多种样式的报表,从更多的维度观察加解密处理情况。
2、校验
安全保障***会从消息中心拉取密文和对应密文信息,然后进行抽样,检查根据明文生成的密文是否正确。
3、报警
当监控和校验发现异常时,安全保障***会自动生成报警信息,通过电话、邮件等方式及时通知。
如图5所示,消息中心担负着数据加解密装置与服务器端的密文和对应明文信息的传递,以及数据加解密装置、服务器端与安全保障***的日志信息传递。
引入消息中心的原因主要有两个:1、高效的数据传输能力,可提供大规模的数据量快速传递;2、可靠的数据传输保障,防止数据在传输过程中丢失。
应清楚地理解,本发明描述了如何形成和使用特定示例,但本发明的原理不限于这些示例的任何细节。相反,基于本发明公开的内容的教导,这些原理能够应用于许多其它实施例。
下述为本发明装置实施例,可以用于执行本发明方法实施例。在下文对***的描述中,与前述方法相同的部分,将不再赘述。
图8是根据一示例性实施例示出的一种数据加解密装置的结构示意图,该数据加解密装置可以应用于客户端,所述数据加解密装置800包括:第一获取模块810,数据加密模块820,第二获取模块830、请求发送模块840以及数据解密模块850。
第一获取模块810,配置为若获取到客户端上应用的输出数据,确定所述输出数据中的需加密字段。
数据加密模块820,配置为对所述输出数据中的需加密字段进行加密得到需加密字段的密文,并根据需加密字段的密文生成所述输出数据的加密数据。
第二获取模块830,配置为若获取到所述客户端上应用的输入数据,确定所述输入数据中的需解密字段。
请求发送模块840,配置为向服务器端发送解密请求,所述解密请求包括所述需解密字段。
数据解密模块850,配置为接收来自于所述服务器端针对所述解密请求返回的所述需解密字段的明文,并根据所述明文生成所述需解密字段的解密数据;
其中,所述需解密字段的明文为所述服务器端根据所述解密请求中的所述需解密字段查询键值对得到的。
本发明实施例中,若获取到客户端上应用的输出数据,确定所述输出数据中的需加密字段;对所述输出数据中的需加密字段进行加密得到需加密字段的密文,并根据需加密字段的密文生成所述输出数据的加密数据;若获取到所述客户端上应用的输入数据,确定所述输入数据中的需解密字段;向服务器端发送解密请求,所述解密请求包括所述需解密字段;接收来自于所述服务器端针对所述解密请求返回的所述需解密字段的明文,并根据所述明文生成所述需解密字段的解密数据;其中,所述需解密字段的明文为所述服务器端根据所述解密请求中的所述需解密字段查询键值对得到的。通过对应用的输入数据以及输出数据进行局部加解密的方式,实现了对数据的精细化的安全管理,在源数据结构不改变的情况下,能够防止数据的敏感信息泄露,保证数据的安全性,提升数据加解密的效率,降低数据加解密对业务处理的影响,保障业务对数据使用和处理的要求。
图9是根据一示例性实施例示出的一种数据加解密***的结构示意图,如图9所示,该数据加解密***900可以包括服务器端以及与所述服务器端通信连接的客户端,该客户端可以配置有如图8所述的数据加解密装置800,服务器端配置为接收来自于请求发送模块发送的解密请求,所述解密请求包括需解密字段;查询键值对得到所述需解密字段的明文;并将所述明文返回至数据解密模块。
本发明实施例中,若获取到客户端上应用的输出数据,确定所述输出数据中的需加密字段;对所述输出数据中的需加密字段进行加密得到需加密字段的密文,并根据需加密字段的密文生成所述输出数据的加密数据;若获取到所述客户端上应用的输入数据,确定所述输入数据中的需解密字段;向服务器端发送解密请求,所述解密请求包括所述需解密字段;接收来自于所述服务器端针对所述解密请求返回的所述需解密字段的明文,并根据所述明文生成所述需解密字段的解密数据;其中,所述需解密字段的明文为所述服务器端根据所述解密请求中的所述需解密字段查询键值对得到的。通过对应用的输入数据以及输出数据进行局部加解密的方式,实现了对数据的精细化的安全管理,在源数据结构不改变的情况下,能够防止数据的敏感信息泄露,保证数据的安全性,提升数据加解密的效率,降低数据加解密对业务处理的影响,保障业务对数据使用和处理的要求。
图10是根据一示例性实施例示出的一种电子设备的结构示意图。需要说明的是,图10示出的电子设备仅仅是一个示例,不应对本申请实施例的功能和使用范围带来任何限制。
如图10所示,计算机***1000包括中央处理单元(CPU)1001,其可以根据存储在只读存储器(ROM)1002中的程序或者从存储部分608加载到随机访问存储器(RAM)1003中的程序而执行各种适当的动作和处理。在RAM 1003中,还存储有***1000操作所需的各种程序和数据。CPU 1001、ROM 1002以及RAM 1003通过总线1004彼此相连。输入/输出(I/O)接口1005也连接至总线1004。
以下部件连接至I/O接口1005:包括键盘、鼠标等的输入部分1006;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分1007;包括硬盘等的存储部分1008;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分1009。通信部分1009经由诸如因特网的网络执行通信处理。驱动器1010也根据需要连接至I/O接口1005。可拆卸介质1011,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1010上,以便于从其上读出的计算机程序根据需要被安装入存储部分1008。
特别地,根据本公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分1009从网络上被下载和安装,和/或从可拆卸介质1011被安装。在该计算机程序被中央处理单元(CPU)1001执行时,执行本申请的终端中限定的上述功能。
需要说明的是,本申请所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的***、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本申请中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行***、装置或者器件使用或者与其结合使用。而在本申请中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行***、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本申请各种实施例的***、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的***来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本申请实施例中所涉及到的单元可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的单元也可以设置在处理器中,其中,这些模块的名称在某种情况下并不构成对该模块本身的限定。
以上具体示出和描述了本发明的示例性实施例。应可理解的是,本发明不限于这里描述的详细结构、设置方式或实现方法;相反,本发明意图涵盖包含在所附权利要求的精神和范围内的各种修改和等效设置。
Claims (13)
1.一种数据加解密方法,应用于客户端,其特征在于,所述方法包括:
若获取到客户端上应用的输出数据,确定所述输出数据中的需加密字段;
对所述输出数据中的需加密字段进行加密得到需加密字段的密文,并根据需加密字段的密文生成所述输出数据的加密数据,对所述需加密字段进行加密的方式为不可逆加密;
若获取到所述客户端上应用的输入数据,确定所述输入数据中的需解密字段;
向服务器端发送解密请求,所述解密请求包括所述需解密字段;
接收来自于所述服务器端针对所述解密请求返回的所述需解密字段的明文,并根据所述明文生成所述需解密字段的解密数据;
其中,所述需解密字段的明文为所述服务器端根据所述解密请求中的所述需解密字段查询键值对得到的;
所述根据需加密字段的密文生成所述输出数据的加密数据包括:利用所述需加密字段的密文替换所述需加密字段,得到所述加密数据。
2.如权利要求1所述的方法,其特征在于,所述方法还包括:
以所述需加密字段的密文为键,以所述密文对应的明文为值,生成所述需加密字段的密文以及明文的键值对;
通过异步多线程将所述键值对发送至消息中间件的分区,以使订阅所述消息中间件的分区的服务器端存储所述键值对。
3.如权利要求2所述的方法,其特征在于,通过异步多线程将所述键值对发送至消息中间件的分区之前,所述方法还包括:
基于内存记录确定是否已经发送过所述键值对;
若未发送过所述键值对,通过异步多线程将所述键值对发送至消息中间件的分区,以使订阅所述消息中间件的分区的服务器端存储所述键值对;
若已经发送过所述键值对,将所述键值对舍弃。
4.如权利要求2所述的方法,其特征在于,通过异步线程将所述键值对发送至消息中间件的分区,包括:
通过每一线程计算其对应的键值对中的密文或明文的哈希值后取模,得到模值;
通过每一线程将其对应的键值对发送至所述模值映射的消息中间件的分区,以使订阅所述分区的服务器端存储所述键值对。
5.如权利要求1所述的方法,其特征在于,所述解密请求还包括:所述应用的解密权限信息;向服务器端发送解密请求,包括:
将所述需解密字段进行分桶,将每个分桶分发至不同的线程,每一线程将包括其对应的需解密字段的密文以及所述应用的解密权限信息的解密请求发送至服务器端,以使所述服务器端基于所述解密权限信息对所述应用的解密权限进行校验,以及在校验通过后从键值对中确定其所接收到的需解密字段的密文对应的明文。
6.如权利要求1所述的方法,其特征在于,若获取到客户端上应用的输出数据,确定所述输出数据中的需加密字段,包括:
获取所述应用的数据结构信息以及敏感字段标识;
将所述输出数据按照所述数据结构信息解析,获取解析的数据结构信息;
基于所述敏感字段标识从所述数据结构信息中确定需加密字段;
若获取到所述客户端上应用的输入数据,确定所述输入数据中的需解密字段,包括:
获取所述应用的数据结构信息以及敏感字段标识;
将所述输入数据按照所述数据结构信息解析,获取解析的数据结构信息;
基于所述敏感字段标识从所述数据结构信息中确定需解密字段。
7.一种数据加解密方法,应用于服务器端,其特征在于,所述方法包括:
接收来自于客户端的解密请求,所述解密请求包括需解密字段,所述客户端应用诸如权利要求1-6中任意一项所述的数据加解密方法;
查询键值对得到所述需解密字段的明文;
将所述明文返回至所述客户端。
8.如权利要求7所述的方法,其特征在于,所述方法还包括:
从订阅的消息中间件的分区中拉取所述客户端发送的需加密字段的密文以及明文生成的键值对,并对所述键值对进行存储。
9.如权利要求8所述的方法,其特征在于,对所述键值对进行存储之前,所述方法还包括:
基于内存记录确定是否已经存储过所述键值对;
若确定未存储过所述键值对,对所述键值对进行存储;
若确定已经存储过所述键值对,将所述键值舍弃。
10.如权利要求9所述的方法,其特征在于,所述解密字段中嵌入有密钥版本信息;
若确定未存储过所述键值对,对所述键值对进行存储,包括:
对所述需加密字段的密文进行解析,获取所述需加密字段的密文的密钥版本信息;
将所述键值对存储在所述密钥版本信息对应的明文数据库中;
查询键值对得到所述需解密字段的明文,包括:
对所述需解密字段进行解析,获取所述需解密字段的密钥版本信息;
从所述密钥版本信息对应的明文数据中存储的键值对中查找到所述需解密字段的密文对应的明文。
11.如权利要求7所述的方法,其特征在于,所述解密请求还包括:应用的解密权限信息;
查询键值对得到所述需解密字段的明文之前,所述方法还包括:
基于所述解密权限信息对所述应用的解密权限进行校验;
在校验通过后,查询键值对得到所述需解密字段的明文。
12.一种数据加解密装置,应用于客户端,其特征在于,所述装置包括:
第一获取模块,配置为若获取到客户端上应用的输出数据,确定所述输出数据中的需加密字段;
数据加密模块,配置为对所述输出数据中的需加密字段进行加密得到需加密字段的密文,并根据需加密字段的密文生成所述输出数据的加密数据,对所述需加密字段进行加密的方式为不可逆加密;
第二获取模块,配置为若获取到所述客户端上应用的输入数据,确定所述输入数据中的需解密字段;
请求发送模块,配置为向服务器端发送解密请求,所述解密请求包括所述需解密字段;
数据解密模块,配置为接收来自于所述服务器端针对所述解密请求返回的所述需解密字段的明文,并根据所述明文生成所述需解密字段的解密数据;
其中,所述需解密字段的明文为所述服务器端根据所述解密请求中的所述需解密字段查询键值对得到的;
所述根据需加密字段的密文生成所述输出数据的加密数据包括:利用所述需加密字段的密文替换所述需加密字段,得到所述加密数据。
13.一种数据加解密***,其特征在于,包括服务器端以及与所述服务器端通信连接的客户端,所述客户端配置有如权利要求12所述的数据加解密装置,所述服务器端配置为接收来自于请求发送模块发送的解密请求,所述解密请求包括需解密字段;查询键值对得到所述需解密字段的明文;并将所述明文返回至数据解密模块。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011040190.1A CN112016113B (zh) | 2020-09-28 | 2020-09-28 | 数据加解密方法、装置及*** |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202011040190.1A CN112016113B (zh) | 2020-09-28 | 2020-09-28 | 数据加解密方法、装置及*** |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112016113A CN112016113A (zh) | 2020-12-01 |
CN112016113B true CN112016113B (zh) | 2024-04-16 |
Family
ID=73527953
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202011040190.1A Active CN112016113B (zh) | 2020-09-28 | 2020-09-28 | 数据加解密方法、装置及*** |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112016113B (zh) |
Families Citing this family (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN113010293B (zh) * | 2021-03-19 | 2023-08-22 | 广州万协通信息技术有限公司 | 一种多线程并发数据加解密处理方法、装置及存储介质 |
CN113206838B (zh) * | 2021-04-13 | 2022-07-05 | 武汉理工大学 | 一种面向Web***的数据加密解密方法及*** |
CN114286131A (zh) * | 2021-12-27 | 2022-04-05 | 上海哔哩哔哩科技有限公司 | 直播连麦中主播形象模型文件的传输方法及装置 |
CN116095685B (zh) * | 2022-06-01 | 2023-11-14 | 荣耀终端有限公司 | 关键信息的保护方法和终端设备 |
CN117707831B (zh) * | 2024-02-05 | 2024-04-09 | 云账户技术(天津)有限公司 | 一种前端接口错误的报警方法和装置 |
Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106790250A (zh) * | 2017-01-24 | 2017-05-31 | 郝孟 | 数据处理、加密、完整性校验方法及身份鉴别方法及*** |
CN107659397A (zh) * | 2017-08-11 | 2018-02-02 | 深圳市钱海网络技术有限公司 | 一种敏感信息传输方法及*** |
CN107770153A (zh) * | 2017-09-14 | 2018-03-06 | 北京科东电力控制***有限责任公司 | 一种基于协同安全防护模型的电力信息通用采集*** |
CN108092937A (zh) * | 2016-11-23 | 2018-05-29 | 厦门雅迅网络股份有限公司 | 防止Web***越权访问的方法及*** |
CN109359472A (zh) * | 2018-09-19 | 2019-02-19 | 腾讯科技(深圳)有限公司 | 一种数据加解密处理方法、装置以及相关设备 |
CN110138772A (zh) * | 2019-05-13 | 2019-08-16 | 上海英恒电子有限公司 | 一种通信方法、装置、***、设备和存储介质 |
CN110297822A (zh) * | 2019-05-22 | 2019-10-01 | 平安科技(深圳)有限公司 | 面向区块链的密钥管理方法、装置、设备及存储介质 |
CN111131282A (zh) * | 2019-12-27 | 2020-05-08 | 武汉极意网络科技有限公司 | 请求加密方法、装置、电子设备及存储介质 |
CN111400728A (zh) * | 2020-03-05 | 2020-07-10 | 北京金山云网络技术有限公司 | 应用于区块链的数据加密解密方法及装置 |
CN111475828A (zh) * | 2020-05-14 | 2020-07-31 | 杭州烽顺科技信息服务有限公司 | 区块链账本数据的加密方法及装置、解密方法及装置 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US10230701B2 (en) * | 2015-10-30 | 2019-03-12 | Intuit Inc. | Selective encryption of profile fields for multiple consumers |
-
2020
- 2020-09-28 CN CN202011040190.1A patent/CN112016113B/zh active Active
Patent Citations (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN108092937A (zh) * | 2016-11-23 | 2018-05-29 | 厦门雅迅网络股份有限公司 | 防止Web***越权访问的方法及*** |
CN106790250A (zh) * | 2017-01-24 | 2017-05-31 | 郝孟 | 数据处理、加密、完整性校验方法及身份鉴别方法及*** |
CN107659397A (zh) * | 2017-08-11 | 2018-02-02 | 深圳市钱海网络技术有限公司 | 一种敏感信息传输方法及*** |
CN107770153A (zh) * | 2017-09-14 | 2018-03-06 | 北京科东电力控制***有限责任公司 | 一种基于协同安全防护模型的电力信息通用采集*** |
CN109359472A (zh) * | 2018-09-19 | 2019-02-19 | 腾讯科技(深圳)有限公司 | 一种数据加解密处理方法、装置以及相关设备 |
CN110138772A (zh) * | 2019-05-13 | 2019-08-16 | 上海英恒电子有限公司 | 一种通信方法、装置、***、设备和存储介质 |
CN110297822A (zh) * | 2019-05-22 | 2019-10-01 | 平安科技(深圳)有限公司 | 面向区块链的密钥管理方法、装置、设备及存储介质 |
CN111131282A (zh) * | 2019-12-27 | 2020-05-08 | 武汉极意网络科技有限公司 | 请求加密方法、装置、电子设备及存储介质 |
CN111400728A (zh) * | 2020-03-05 | 2020-07-10 | 北京金山云网络技术有限公司 | 应用于区块链的数据加密解密方法及装置 |
CN111475828A (zh) * | 2020-05-14 | 2020-07-31 | 杭州烽顺科技信息服务有限公司 | 区块链账本数据的加密方法及装置、解密方法及装置 |
Non-Patent Citations (1)
Title |
---|
数据库加密模型设计探讨;钱月;《煤炭技术》;20120610;第31卷(第06期);258-259+264 * |
Also Published As
Publication number | Publication date |
---|---|
CN112016113A (zh) | 2020-12-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN112016113B (zh) | 数据加解密方法、装置及*** | |
US10977269B1 (en) | Selective structure preserving obfuscation | |
US11222130B2 (en) | System and method for providing data security in a hosted service system | |
US20200382478A1 (en) | Systems and methods for providing data privacy in a private distributed ledger | |
CN108780485B (zh) | 基于模式匹配的数据集提取 | |
US11640474B2 (en) | Method and apparatus for operating database | |
Khan et al. | Cloud log forensics: Foundations, state of the art, and future directions | |
US10891552B1 (en) | Automatic parser selection and usage | |
US9646088B1 (en) | Data collection and transmission | |
Bates et al. | Towards secure provenance-based access control in cloud environments | |
Aublin et al. | LibSEAL: Revealing service integrity violations using trusted execution | |
CN112217835B (zh) | 报文数据的处理方法、装置、服务器和终端设备 | |
CN109657492B (zh) | 数据库管理方法、介质及电子设备 | |
CN111741036A (zh) | 一种可信数据传输方法、装置及设备 | |
US8930380B1 (en) | Automatic parser generation | |
US20210312017A1 (en) | Method, apparatus and electronic device for processing user request and storage medium | |
CN113225351B (zh) | 一种请求处理方法、装置、存储介质及电子设备 | |
CN114207615A (zh) | 用于维护具有隐私的不可变数据访问日志的***和方法 | |
CN111783140A (zh) | 请求响应方法及装置、电子设备及计算机可读存储介质 | |
CN117459327B (zh) | 一种云数据透明加密保护方法、***及装置 | |
CN113906405A (zh) | 修改数据项 | |
CN113778709B (zh) | 接口调用方法、装置、服务器及存储介质 | |
Ritter et al. | Toward a collection of cloud integration patterns | |
US11323425B2 (en) | Systems and methods for selecting cryptographic settings based on computing device location | |
CN116346486A (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 |