CN116663043A - 数据处理方法、装置、设备、存储介质及程序产品 - Google Patents
数据处理方法、装置、设备、存储介质及程序产品 Download PDFInfo
- Publication number
- CN116663043A CN116663043A CN202210145338.0A CN202210145338A CN116663043A CN 116663043 A CN116663043 A CN 116663043A CN 202210145338 A CN202210145338 A CN 202210145338A CN 116663043 A CN116663043 A CN 116663043A
- Authority
- CN
- China
- Prior art keywords
- data
- confusion
- data block
- target
- original
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
- 238000003672 processing method Methods 0.000 title claims abstract description 25
- 238000011161 development Methods 0.000 claims abstract description 165
- 238000000034 method Methods 0.000 claims abstract description 64
- 238000004590 computer program Methods 0.000 claims abstract description 13
- 238000003780 insertion Methods 0.000 claims description 100
- 230000037431 insertion Effects 0.000 claims description 100
- 238000012545 processing Methods 0.000 claims description 63
- 230000015654 memory Effects 0.000 claims description 23
- 238000012216 screening Methods 0.000 claims 1
- 230000008569 process Effects 0.000 abstract description 46
- 238000010586 diagram Methods 0.000 description 31
- 230000006870 function Effects 0.000 description 20
- 238000006243 chemical reaction Methods 0.000 description 8
- 238000004364 calculation method Methods 0.000 description 6
- 230000002441 reversible effect Effects 0.000 description 6
- 238000004422 calculation algorithm Methods 0.000 description 5
- 238000004891 communication Methods 0.000 description 5
- 230000006835 compression Effects 0.000 description 3
- 238000007906 compression Methods 0.000 description 3
- 230000004044 response Effects 0.000 description 3
- 101100328886 Caenorhabditis elegans col-2 gene Proteins 0.000 description 2
- 101100328884 Caenorhabditis elegans sqt-3 gene Proteins 0.000 description 2
- 238000013459 approach Methods 0.000 description 2
- 230000009286 beneficial effect Effects 0.000 description 2
- 230000008878 coupling Effects 0.000 description 2
- 238000010168 coupling process Methods 0.000 description 2
- 238000005859 coupling reaction Methods 0.000 description 2
- 238000001914 filtration Methods 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 238000004519 manufacturing process Methods 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000013515 script Methods 0.000 description 2
- 238000013473 artificial intelligence Methods 0.000 description 1
- 230000000694 effects Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 239000012634 fragment Substances 0.000 description 1
- RVRCFVVLDHTFFA-UHFFFAOYSA-N heptasodium;tungsten;nonatriacontahydrate Chemical compound O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.O.[Na+].[Na+].[Na+].[Na+].[Na+].[Na+].[Na+].[W].[W].[W].[W].[W].[W].[W].[W].[W].[W].[W] RVRCFVVLDHTFFA-UHFFFAOYSA-N 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 238000012946 outsourcing Methods 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000035945 sensitivity Effects 0.000 description 1
- 239000007787 solid Substances 0.000 description 1
- 230000009466 transformation Effects 0.000 description 1
- 230000000007 visual 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/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting 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/6227—Protecting 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
-
- 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/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
-
- 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
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- Databases & Information Systems (AREA)
- Stored Programmes (AREA)
- Storage Device Security (AREA)
Abstract
本申请提供了一种数据处理方法、装置、设备、计算机可读存储介质及计算机程序产品;包括:响应于开发对象针对原始数据的数据获取请求,获取开发对象的关联信息及原始数据;基于关联信息,生成对应原始数据的混淆因子,并对原始数据进行数据块划分,得到至少两个数据块;针对至少两个数据块中至少之一,基于混淆因子,生成对应数据块的混淆数据;将混淆数据插入至原始数据中相应数据块内,得到对应原始数据的目标数据,并返回目标数据至开发对象对应的终端。通过本申请,能够提高开发过程中数据的安全性。
Description
技术领域
本申请涉及互联网技术,尤其涉及一种数据处理方法、装置、设备、计算机可读存储介质及计算机程序产品。
背景技术
相关技术中数据开发通常有以下两种方式,第一种是直接在正式日志服务器上进行逻辑算法结构化查询语言(SQL,Structured Query Language)开发,这里直接连接的是正式日志服务器进行开发及调试,如此数据真实可靠,第二种是从正式日志服务器原样拉取部分数据到开发日志服务器,然后在开发日志服务器进行开发调试,如此开发执行性能高。然而,对于上述第一种方式,存在数据风险高,开发调试执行性能低的问题,而对于上述第二种方式,虽然解决了开发执行性能低以及部分数据风险高的问题,但是数据不够齐全,同时仍然存在数据安全风险。
发明内容
本申请实施例提供一种数据处理方法、装置、设备、计算机可读存储介质及计算机程序产品,能够提高开发过程中数据的安全性。
本申请实施例的技术方案是这样实现的:
本申请实施例提供一种数据处理方法,包括:
响应于开发对象针对原始数据的数据获取请求,获取所述开发对象的关联信息及所述原始数据;
基于所述关联信息,生成对应所述原始数据的混淆因子,并对所述原始数据进行数据块划分,得到至少两个数据块;
针对所述至少两个数据块中至少之一,基于所述混淆因子,生成对应所述数据块的混淆数据;
将所述混淆数据插入至所述原始数据中相应数据块内,得到对应所述原始数据的目标数据,并返回所述目标数据至所述开发对象对应的终端。
本申请实施例提供一种数据处理装置,包括:。
获取模块,用于响应于开发对象针对原始数据的数据获取请求,获取所述开发对象的关联信息及所述原始数据;
第一生成模块,用于基于所述关联信息,生成对应所述原始数据的混淆因子,并对所述原始数据进行数据块划分,得到至少两个数据块;
第二生成模块,用于针对所述至少两个数据块中至少之一,基于所述混淆因子,生成对应所述数据块的混淆数据;
混淆模块,用于将所述混淆数据插入至所述原始数据中相应数据块内,得到对应所述原始数据的目标数据,并返回所述目标数据至所述开发对象对应的终端。
在上述方案中,所述获取模块,还用于解析所述数据获取请求,得到所述数据获取请求携带的所述开发对象的关联信息,所述关联信息包括所述开发对象的身份信息、所述数据获取请求的生成时间、所述开发对象对应的权限等级中至少之一;或者,获取所述开发对象对应的对象标识,基于所述对象标识,进行关联信息索引,得到所述开发对象的关联信息。
在上述方案中,所述第一生成模块,还用于获取混淆因子密钥及相应的加密方式;基于所述混淆因子密钥,采用所述加密方式对所述关联信息进行加密,生成对应所述原始数据的混淆因子。
在上述方案中,所述第一生成模块,还用于当所述原始数据包括至少一行数据时,针对所述原始数据中的每一行数据,执行以下操作:获取所述行数据对应的数据块数量;其中,所述数据块数量不小于两个;基于所述数据块数量,对行数据进行相应数量的数据块划分,得到至少两个数据块。
在上述方案中,所述至少两个数据块构成数据块序列,所述第二生成模块,还用于获取所述数据块序列中各所述数据块对应的数据块编号;基于所述混淆因子以及所述数据块编号,生成对应所述数据块的混淆数据。
在上述方案中,所述第二生成模块,还用于获取各所述数据块对应的数据块摘要;针对各所述数据块,对所述混淆因子、所述数据块摘要以及所述数据块编号进行求积处理,得到各所述数据块对应的混淆子数据;对各所述数据块对应的所述混淆子数据进行求和处理,得到对应所述数据块的混淆数据。
在上述方案中,所述装置还包括插入模块,所述插入模块,用于对所述混淆数据与各所述数据块的数据块编号进行目标数据处理,得到对应各所述数据块的目标处理结果;针对各所述数据块,对所述目标处理结果进行取模处理,得到对应各所述数据块的取模结果;基于各所述数据块对应的所述取模结果,确定插入标识,所述插入标识用于指示所述混淆数据插入的数据块;所述混淆模块,还用于基于所述插入标识,将所述混淆数据插入至对应的所述数据块内,得到对应所述原始数据的目标数据。
在上述方案中,所述插入模块,还用于当对应各所述数据块的所述取模结果中,存在至少两个相同的取模结果时,筛掉重复的取模结果,并将剩余的所述取模结果作为目标取模结果;基于所述目标取模结果,确定所述插入标识。
在上述方案中,所述插入模块,还用于获取预先设定的插入规则,所述插入规则用于指示所述混淆数据在所述数据块序列中的插入位置;基于所述插入规则,确定插入标识,所述插入标识用于指示所述混淆数据插入的数据块;所述混淆模块,还用于基于所述插入标识,将所述混淆数据插入至对应的所述数据块内,得到对应所述原始数据的目标数据。
在上述方案中,所述装置还包括呈现模块,所述呈现模块,用于基于所述开发对象的关联信息,确定所述开发对象对应的查看权限等级;基于所述查看权限等级,将所述目标数据以目标展示形式在所述终端上进行呈现;其中,不同的所述查看权限等级对应所述目标数据的不同的展示形式。
本申请实施例提供一种电子设备,包括:
存储器,用于存储可执行指令;
处理器,用于执行所述存储器中存储的可执行指令时,实现本申请实施例提供的数据处理方法。
本申请实施例提供一种计算机可读存储介质,存储有可执行指令,用于引起处理器执行时,实现本申请实施例提供的数据处理方法。
本申请实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。电子设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该电子设备执行本申请实施例提供的数据处理方法。
本申请实施例具有以下有益效果:
通过对数据进行数据块划分,以基于划分后得到的数据块以及依据开发对象的关联信息生成的混淆因子,确定对应数据块的混淆数据,从而将确定的混淆数据插入至相应数据块,实现对数据的混淆操作,如此,不仅使得数据的安全级别得到有效提高,同时也让数据的开发过程更加开放且可控。
附图说明
图1是本申请实施例提供的数据处理系统100的一个可选的架构示意图;
图2是本申请实施例提供的电子设备的结构示意图;
图3是本申请实施例提供的数据处理方法的流程示意图;
图4是本申请实施例提供的混淆因子生成的可选示意图;
图5是本申请实施例提供的混淆数据的生成过程的流程示意图;
图6是本申请实施例提供的混淆数据的生成过程的流程示意图;
图7是本申请实施例提供的对混淆因子进行目标转换的示意图;
图8是本申请实施例提供的各数据块对应的混淆数据的示意图;
图9是本申请实施例提供的确定用于指示混淆数据插入的数据块的插入标识的流程示意图;
图10是本申请实施例提供的确定用于指示混淆数据插入的数据块的插入标识的流程示意图;
图11是本申请实施例提供的得到对应原始数据的目标数据的示意图;
图12是本申请实施例提供的得到对应原始数据的目标数据的示意图;
图13是本申请实施例提供的目标数据呈现过程的流程示意图;
图14是本申请实施例提供的报表数据展示的示意图;
图15是本申请实施例提供的报表数据展示的示意图;
图16是本申请实施例提供的对目标混淆因子进行目标转换逆过程的示意图;
图17是本申请实施例提供的对混淆因子进行解密过程的示意图;
图18是本申请实施例提供的泄露数据片段的示意图;
图19是本申请实施例提供的在正式日志服务器上进行开发的可选示意图;
图20是本申请实施例提供的在开发日志服务器上进行开发的可选示意图;
图21是本申请实施例提供的数据处理系统的数据拉取操作的示意图。
具体实施方式
为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述,所描述的实施例不应视为对本申请的限制,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解,“一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突的情况下相互结合。
在以下的描述中,所涉及的术语“第一\第二\第三”仅仅是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二\第三”在允许的情况下可以互换特定的顺序或先后次序,以使这里描述的本申请实施例能够以除了在这里图示或描述的以外的顺序实施。在以下的描述中,所涉及的术语“多个”是指至少两个。
除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本申请实施例的目的,不是旨在限制本申请。
对本申请实施例进行进一步详细说明之前,对本申请实施例中涉及的名词和术语进行说明,本申请实施例中涉及的名词和术语适用于如下的解释。
1)敏感数据:各游戏留存数据、活跃数据、在线数据和支付数据等敏感统计数据。
2)权限等级:根据不同的用户角色进行用户权限分级,如外包人员、普通正职、领导、总监等。
3)混淆数据:经过技术手段把敏感数据进行混淆后得到的数据。
申请人发现,传统的数据开发阶段和生产环境的统计报表输出阶段,都有不同程度的风险存在,而其中主要的风险是没有进行敏感数据的过滤和混淆处理,从而造成正式敏感数据及结果报表数据的暴露风险。
基于此本申请实施例提供一种数据处理方法、装置、电子设备、计算机可读存储介质及计算机程序产品,不仅在开发阶段对于敏感数据中的关键字段、关键信息进行混淆,从而在开发源头即进行敏感数据的保护,同时对于生产环境的正式报表数据,对涉及的敏感字段进行相应的混淆,使得低权限角色截取到的结果附带相关混淆信息印迹,从而让不同的权限等级的使用者看到的结果略有差异。
参见图1,图1是本申请实施例提供的数据处理系统100的一个可选的架构示意图,为实现数据处理的应用场景(例如,可以在正式开发数据库的基础上创建了一个独立的混淆数据库,该混淆数据库权限独立,跟正式开发数据库无任何耦合。混淆数据库的数据来源来自数据处理系统的数据拉取操作,拉取过程中进行了数据过滤及混淆处理,然后通过接口写入到混淆数据库中,以使开发对象基于混淆数据库进行开发),终端(示例性示出了终端400)通过网络300连接服务器200,网络300可以是广域网或者局域网,又或者是二者的组合。
终端400用于供用户使用客户端401,在显示界面401-1(示例性示出了开发界面401-1)显示。终端400和服务器200通过有线或者无线网络相互连接。
服务器200用于响应于开发对象针对原始数据的数据获取请求,获取开发对象的关联信息及原始数据;基于关联信息,生成对应原始数据的混淆因子,并对原始数据进行数据块划分,得到至少两个数据块;针对至少两个数据块中至少之一,基于混淆因子,生成对应数据块的混淆数据;将混淆数据插入至原始数据中相应数据块内,得到对应原始数据的目标数据,并返回目标数据至开发对象对应的终端400;
终端400还用于,在开发界面401-1中展示接收的目标数据。
在一些实施例中,服务器200可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存储、网络服务、云通信、中间件服务、域名服务、安全服务、内容分发网络(CDN,ContentDeliver Network)、以及大数据和人工智能平台等基础云计算服务的云服务器。终端400可以是智能手机、平板电脑、笔记本电脑、台式计算机、机顶盒,以及移动设备(例如,移动电话,便携式音乐播放器,个人数字助理,专用消息设备,车载终端,车机设备,车载数据中心,便携式游戏设备,智能音箱及智能手表)等,但并不局限于此。终端设备以及服务器可以通过有线或无线通信方式进行直接或间接地连接,本申请实施例中不做限制。
参见图2,图2是本申请实施例提供的电子设备的结构示意图,在实际应用中,电子设备可以为图1示出的服务器200或终端400,参见图2,图2所示的电子设备包括:至少一个处理器410、存储器450、至少一个网络接口420和用户接口430。终端400中的各个组件通过总线系统440耦合在一起。可理解,总线系统440用于实现这些组件之间的连接通信。总线系统440除包括数据总线之外,还包括电源总线、控制总线和状态信号总线。但是为了清楚说明起见,在图2中将各种总线都标为总线系统440。
处理器410可以是一种集成电路芯片,具有信号的处理能力,例如通用处理器、数字信号处理器(DSP,Digital Signal Processor),或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其中,通用处理器可以是微处理器或者任何常规的处理器等。
用户接口430包括使得能够呈现媒体内容的一个或多个输出装置431,包括一个或多个扬声器和/或一个或多个视觉显示屏。用户接口430还包括一个或多个输入装置432,包括有助于用户输入的用户接口部件,比如键盘、鼠标、麦克风、触屏显示屏、摄像头、其他输入按钮和控件。
存储器450可以是可移除的,不可移除的或其组合。示例性的硬件设备包括固态存储器,硬盘驱动器,光盘驱动器等。存储器450可选地包括在物理位置上远离处理器410的一个或多个存储设备。
存储器450包括易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。非易失性存储器可以是只读存储器(ROM,Read Only Me mory),易失性存储器可以是随机存取存储器(RAM,Random Access Memor y)。本申请实施例描述的存储器450旨在包括任意适合类型的存储器。
在一些实施例中,存储器450能够存储数据以支持各种操作,这些数据的示例包括程序、模块和数据结构或者其子集或超集,下面示例性说明。
操作系统451,包括用于处理各种基本系统服务和执行硬件相关任务的系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务;
网络通信模块452,用于经由一个或多个(有线或无线)网络接口420到达其他计算设备,示例性的网络接口420包括:蓝牙、无线相容性认证(WiFi)、和通用串行总线(USB,Universal Serial Bus)等;
呈现模块453,用于经由一个或多个与用户接口430相关联的输出装置431(例如,显示屏、扬声器等)使得能够呈现信息(例如,用于操作外围设备和显示内容和信息的用户接口);
输入处理模块454,用于对一个或多个来自一个或多个输入装置432之一的一个或多个用户输入或互动进行检测以及翻译所检测的输入或互动。
在一些实施例中,本申请实施例提供的数据处理装置可以采用软件方式实现,图2示出了存储在存储器450中的数据处理装置455,其可以是程序和插件等形式的软件,包括以下软件模块:获取模块4551、第一生成模块4552、第二生成模块4553以及混淆模块4554,这些模块是逻辑上的,因此根据所实现的功能可以进行任意的组合或进一步拆分。
在另一些实施例中,本申请实施例提供的数据处理装置可以采用硬件方式实现,作为示例,本申请实施例提供的数据处理装置可以是采用硬件译码处理器形式的处理器,其被编程以执行本申请实施例提供的数据处理方法,例如,硬件译码处理器形式的处理器可以采用一个或多个应用专用集成电路(ASIC,Application Specific IntegratedCircuit)、DSP、可编程逻辑器件(PLD,Progra mmable Logic Device)、复杂可编程逻辑器件(CPLD,Complex Programmabl e Logic Device)、现场可编程门阵列(FPGA,Field-Programmable Gate Array)或其他电子元件。
在一些实施例中,终端或服务器可以通过运行计算机程序来实现本申请实施例提供的数据处理方法。举例来说,计算机程序可以是操作系统中的原生程序或软件模块;可以是本地(Native)应用程序(APP,Application),即需要在操作系统中安装才能运行的程序,如即时通信APP、网页浏览器APP;也可以是小程序,即只需要下载到浏览器环境中就可以运行的程序;还可以是能够嵌入至任意APP中的小程序。总而言之,上述计算机程序可以是任意形式的应用程序、模块或插件。
基于上述对本申请实施例提供的数据处理系统及电子设备的说明,下面说明本申请实施例提供的数据处理方法。在实际实施时,本申请实施例提供的数据处理方法可以由终端或服务器单独实现,或者由终端及服务器协同实现,以由图1中的服务器200单独执行本申请实施例提供的数据处理方法为例进行说明。参见图3,图3是本申请实施例提供的数据处理方法的流程示意图,将结合图3示出的步骤进行说明。
步骤101,服务器响应于开发对象针对原始数据的数据获取请求,获取开发对象的关联信息及原始数据。
在实际实施时,服务器首先接收开发对象针对原始数据的数据获取请求,这里针对原始数据的数据获取请求可以是针对待开发功能对应的原始数据的数据获取请求;然后在接收到开发对象针对原始数据的数据获取请求后,基于数据获取请求即可获取开发对象的关联信息及原始数据。
需要说明的是,在接收到开发对象针对原始数据的数据获取请求时,在一些实施例中,该数据获取请求携带开发对象的关联信息,如此,即可直接基于该数据获取请求获取开发对象的关联信息;在另一些实施例中,该数据获取请求不携带开发对象的关联信息,开发对象的关联信息已在本地进行存储,因此只需要获取开发对象对应的对象标识,基于对象标识从本地存储的关联信息中获取开发对象对应的关联信息。基于此,对于开发对象的关联信息的获取方式可以存在两种,接下来,对两个获取开发对象的关联信息的方式进行说明。
在一些实施例中,接收到开发对象针对原始数据的数据获取请求后,解析数据获取请求,得到数据获取请求携带的开发对象的关联信息,这里,关联信息包括开发对象的身份信息、数据获取请求的生成时间、开发对象对应的权限等级中至少之一。
在另一些实施例中,接收到开发对象针对原始数据的数据获取请求后,还可以直接获取开发对象对应的对象标识,基于对象标识,进行关联信息索引,得到开发对象的关联信息。
步骤102,基于关联信息,生成对应原始数据的混淆因子,并对原始数据进行数据块划分,得到至少两个数据块。
在实际实施时,首先获取混淆因子密钥及相应的加密方式,然后基于混淆因子密钥,采用加密方式对关联信息进行加密,生成对应原始数据的混淆因子factor。这里,混淆因子密钥为预先定义好的与开发对象对应的密钥,该密钥有内部系统保存且并不公开,而相应的加密方式可以是单向压缩函数如高级加密标准(AES,Advanced EncryptionStandard)加密器等,参见图4,图4是本申请实施例提供的混淆因子生成的可选示意图,基于图4,在获取关联信息、混淆因子密钥及相应的加密方式后,基于混淆因子密钥,采用相应的加密方式对关联信息进行加密,生成对应的混淆因子。
需要说明的是,这里生成的混淆因子可逆,即可以通过对应的混淆因子密钥对混淆因子进行解密,从而得到与混淆因子对应的关联信息。
在实际实施时,响应于开发对象针对原始数据的数据获取请求而获取的原始数据存在多种存储形式,比如以列表的形式进行存储;依据原始数据的存储形式,当原始数据包括至少一行数据时,针对原始数据中的每一行数据,获取行数据对应的数据块数量;其中,所述数据块数量不小于两个;基于所述数据块数量,对行数据进行相应数量的数据块划分,得到至少两个数据块。
需要说明的是,这里获取的行数据对应的数据块数量可以是开发对象预先设定的,还可以是直接由服务器确定的,如服务器可以根据行数据的数据量的大小,来确定行数据对应的数据块数量。
步骤103,针对至少两个数据块中至少之一,基于混淆因子,生成对应数据块的混淆数据。
在实际实施时,在得到至少两个数据块后,至少两个数据块可以构成数据块序列,在构成数据块序列后,参见图5,图5是本申请实施例提供的混淆数据的生成过程的流程示意图,基于图3,步骤103,还可以通过如下方式执行:
步骤1031,获取数据块序列中各数据块对应的数据块编号。
在实际实施时,在构成数据块序列后依据数据块序列中各数据块的顺序,获取数据块序列中各数据块对应的数据块编号。
步骤1032,基于混淆因子以及数据块编号,生成对应数据块的混淆数据。
在实际实施时,在确定混淆因子和数据块编号后,基于混淆因子以及数据块编号,生成对应数据块的混淆数据,参见图6,图6是本申请实施例提供的混淆数据的生成过程的流程示意图,基于图5,步骤1032,还可以通过如下方式执行:
步骤10321,获取各数据块对应的数据块摘要。
在实际实施时,在得到至少两个数据块后,通过对数据块进行摘要处理,得到各数据块对应的数据块摘要,这里对数据块进行的摘要处理可以是对数据块进行哈希处理,得到各数据块对应的数据块摘要如MD5(Message-Digest Al gorithm)值、SHA(Secure HashAlgorithm)值等。
作为示例,假设原始数据对应的行数据由n个字段,如Col1、Col2、Col3、……、Coln,该行数据对应的数据块为data_1-1、data_1-2、data_1-3、data_1-4、……、data_1-n,这里,data_1-1为第一行的第一个数据块,data_1-2为第一行的第二个数据块等,然后定义一个字符串处理哈希函数RSHash,这里可以采用MD5信息摘要算法或者SHA信息摘要算法,接着通过该字符串处理哈希函数对各数据块进行哈希处理,将字符串内容哈希为数字,如M1-1=RSHash(d ata_1-1),这里M1-1为第一行的第一个数据块哈希后的数字,即第一行的第一个数据块对应的数据块摘要。
步骤10322,针对各数据块,对混淆因子、数据块摘要以及数据块编号进行求积处理,得到各数据块对应的混淆子数据。
在实际实施时,针对各数据块,对混淆因子、数据块摘要以及数据块编号进行求积处理,得到各数据块对应的混淆子数据的过程具体为,首先对混淆因子进行目标转换,得到目标混淆因子,参见图7,图7是本申请实施例提供的对混淆因子进行目标转换的示意图,基于图7,对混淆因子进行ASCII码转换得到目标混淆因子,即TN=ASCII(factor),然后针对各数据块,对目标混淆因子、数据块摘要以及数据块编号进行求积处理,得到各数据块对应的混淆子数据,示例性地,针对第一行的第一个数据块,目标混淆因子为TN,数据块摘要为M1-1,数据块编号为1,则该数据块对应的混淆子数据MN1-1为TN*M1-1*1;针对第一行的第N个数据块,目标混淆因子为TN,数据块摘要为M1-N,数据块编号为N,则该数据块对应的混淆子数据MN1-N为TN*M1-N*N。
步骤10323,对各数据块对应的混淆子数据进行求和处理,得到对应数据块的混淆数据。
在实际实施时,在得到各数据块对应的混淆子数据后,对各数据块对应的混淆子数据进行求和处理,得到对应数据块的混淆数据,接上述示例,在得到各数据块对应的混淆子数据MN1-1、MN1-2、……、MN1-N后,对各数据块对应的混淆子数据进行求和处理,得到对应数据块的混淆数据MN1,即MN1=MN1-1+MN1-2+……+MN1-N。
需要说明的是,同一行中各数据块的混淆数据都是相同的,即第一行的第一个数据块的混淆数据为MN1,第一行的第N个数据块的混淆数据还是为MN1,而第N行的各数据块的混淆数据都是MNN,参见图8,图8是本申请实施例提供的各数据块对应的混淆数据的示意图,基于图8,同一行中各数据块的混淆数据都是相同的,不同行的数据块的混淆数据都是不同的,如第1行的各数据块的混淆数据都是MN1,第2行的各数据块的混淆数据都是MN2,第3行的各数据块的混淆数据都是MN3,第4行的各数据块的混淆数据都是MN4。
在实际实施时,在确定了各数据块对应的混淆数据后,还会确定需要进行混淆的数据块,这里确定需要进行混淆的数据块的过程具体包括确定用于指示混淆数据插入的数据块的插入标识,这里的插入标识与数据块序列中数据块编号对应。接下来,对两种确定用于指示混淆数据插入的数据块的插入标识的过程进行说明。
在一些实施例中,参见图9,图9是本申请实施例提供的确定用于指示混淆数据插入的数据块的插入标识的流程示意图,基于图3,在步骤103之后,还可以执行:
步骤201,服务器对混淆数据与各数据块的数据块编号进行目标数据处理,得到对应各数据块的目标处理结果。
在实际实施时,服务器对混淆数据与各数据块的数据块编号进行目标数据处理,得到对应各数据块的目标处理结果的过程具体包括,服务器对混淆数据与各数据块的数据块编号进行除法运算,得到对应各数据块的运算结果。
步骤202,针对各数据块,对目标处理结果进行取模处理,得到对应各数据块的取模结果。
在实际实施时,针对各数据块,对目标处理结果进行取模处理,得到对应各数据块的取模结果的过程具体包括,在得到对应各数据块的运算结果后,针对各数据块,对运算结果进行取模处理,得到对应各数据块的取模结果,示例性地,这里混淆数据为MNN,数据块编号为N,则对应各数据块的取模结果P os=MNN mod(N)。
步骤203,基于各数据块对应的取模结果,确定插入标识,插入标识用于指示所述混淆数据插入的数据块。
在实际实施时,在得到各数据块对应的取模结果后,基于各数据块对应的取模结果,确定插入标识的过程具体包括,判断对应各数据块的取模结果中是否存在至少两个相同的取模结果,基于判断结果,确定插入标识。接下来,对判断对应各数据块的取模结果中是否存在至少两个相同的取模结果,基于判断结果,确定插入标识两个过程进行说明。
在一些实施例中,当对应各数据块的取模结果中,存在至少两个相同的取模结果时,筛掉重复的取模结果,并将剩余的取模结果作为目标取模结果;基于目标取模结果,确定插入标识。
作为示例,存在6个取模结果,且6个取模结果分别为1、1、1、3、4、3,这里,存在相同的取模结果,因此,筛掉重复的取模结果,得到剩余的取模结果1、3、4,并将剩余的取模结果作为目标取模结果,然后基于目标取模结果1、3、4,确定插入标识为1、3、4。
在另一些实施例中,当对应各数据块的取模结果中,不存在至少两个相同的取模结果时,基于取模结果,确定插入标识。
作为示例,存在6个取模结果,且6个取模结果分别为1、2、3、4、5、6,由于不存在至少两个相同的取模结果,因此直接基于取模结果,确定插入标识为1、2、3、4、5、6。
在一些实施例中,参见图10,图10是本申请实施例提供的确定用于指示混淆数据插入的数据块的插入标识的流程示意图,基于图3,在步骤103之后,还可以执行:
步骤301,服务器获取预先设定的插入规则,插入规则用于指示混淆数据在数据块序列中的插入位置。
在实际实施时,服务器首先获取预先设定的插入规则,这里的插入规则用于指示混淆数据在数据块序列中的插入位置,示例性地,插入规则可以是混淆数据需要插入数据块序列中数据块编号为单数的数据块中,或者可以是混淆数据需要插入数据块序列中数据块编号为双数的数据块中。
步骤302,基于插入规则,确定插入标识,插入标识用于指示混淆数据插入的数据块。
在实际实施时,在获取预先设定的插入规则后,基于插入规则,确定插入标识,接上述示例,当插入规则是混淆数据需要插入数据块序列中数据块编号为单数的数据块中时,假设这里存在6个数据块,则对应的数据块编号为1、2、3、4、5、6,基于插入规则,确定混淆数据需要插入数据块序列中数据块编号为单数的数据块中,即插入标识为1、3、5;当插入规则是混淆数据需要插入数据块序列中数据块编号为双数的数据块中时,假设这里存在6个数据块,则对应的数据块编号为1、2、3、4、5、6,基于插入规则,确定混淆数据需要插入数据块序列中数据块编号为双数的数据块中,即插入标识为2、4、6。
步骤104,将混淆数据插入至原始数据中相应数据块内,得到对应原始数据的目标数据,并返回目标数据至开发对象对应的终端。
在实际实施时,将混淆数据插入至原始数据中相应数据块内,得到对应原始数据的目标数据的过程具体包括,在确定插入标识后,基于插入标识,将混淆数据插入至对应的数据块内,得到对应原始数据的目标数据。
在一些实施例中,针对每一行行数据可以仅确定一个插入标识,从而基于插入标识,将混淆数据插入至对应的数据块内,得到对应原始数据的目标数据,这里针对每一行的行数据确定的插入标识可以不同。示例性地,参见图11,图11是本申请实施例提供的得到对应原始数据的目标数据的示意图,基于图11,这里得到的针对第一行行数据的插入标识为1,针对第二行行数据的插入标识为2,针对第三行行数据的插入标识为3,针对第四行行数据的插入标识为4,在确定插入标识后,基于插入标识,将对应第一行行数据的混淆数据MN1插入至对应的数据块即第一行的第一个数据块内,将对应第二行行数据的混淆数据MN2插入至对应的数据块即第二行的第二个数据块内,将对应第三行行数据的混淆数据MN3插入至对应的数据块即第三行的第三个数据块内,将对应第四行行数据的混淆数据MN4插入至对应的数据块即第四行的第四个数据块内,如此,得到对应原始数据的目标数据。
在另一些实施例中,针对每一行行数据可以确定多个插入标识,从而基于插入标识,将混淆数据插入至对应的数据块内,得到对应原始数据的目标数据,示例性地,参见图12,图12是本申请实施例提供的得到对应原始数据的目标数据的示意图,基于图12,这里得到的针对每一行行数据的插入标识为1、2、3、4,基于插入标识,将对应第一行行数据的混淆数据MN1插入至对应的数据块即第一行的每一个数据块内,将对应第二行行数据的混淆数据MN2插入至对应的数据块即第二行的每一个数据块内,将对应第三行行数据的混淆数据MN3插入至对应的数据块即第三行的每一个数据块内,将对应第四行行数据的混淆数据MN4插入至对应的数据块即第四行的每一个数据块内,如此,得到对应原始数据的目标数据。
需要说明的是,将插入标识还会携带指示混淆数据在数据块的插入位置的插入位置信息,这里的插入位置信息可以是开发对象预先设置的,以得到对应原始数据的目标数据,具体地,在确定插入标识后,基于插入标识,将混淆数据插入至对应数据块的对应位置上,从而得到对应原始数据的目标数据,示例性地,开发对象可以预先设置混淆数据需要插入数据块最后位置,基于此,当得到插入标识后,基于插入标识,将混淆数据插入至对应数据块的最后位置上,从而得到对应原始数据的目标数据。这里,开发对象还可以将插入位置信息数据块的最前位置,对此,本申请实施例不做限制。
在实际实施时,在得到对应原始数据的目标数据后,返回目标数据至开发对象对应的终端,以供开发对象基于接收到的目标数据进行相应的数据开发。
在一些实施例中,参见图13,图13是本申请实施例提供的目标数据呈现过程的流程示意图,基于图3,在步骤104之后,还可以执行:
步骤401,服务器基于开发对象的关联信息,确定开发对象对应的查看权限等级。
在实际实施时,基于获取的开发对象的关联信息,确定开发对象对应的查看权限等级,示例性地,基于开发对象的身份信息,确定开发对象对应的查看权限等级的过程可以例如是,当开发对象为领导时,确定开发对象对应的查看权限等级为高权限,当开发对象为外包人员时,确定开发对象对应的查看权限等级为低权限;又或者基于数据获取请求的生成时间,确定开发对象对应的查看权限等级的过程可以例如是,当数据获取请求的生成时间为凌晨时,确定开发对象对应的查看权限等级为低权限,当数据获取请求的生成时间为工作时间时,确定开发对象对应的查看权限等级为高权限;又或者基于开发对象对应的权限等级,确定开发对象对应的查看权限等级的过程可以例如是,当开发对象对应的权限等级为高权限等级时,确定开发对象对应的查看权限等级为高权限,当开发对象对应的权限等级为低权限等级时,确定开发对象对应的查看权限等级为低权限。
需要说明的是,当对于关联信息存在多个的情况,对于其中一种关联信息,开发对象对应的查看权限等级为低权限,而对于其他关联信息,开发对象对应的查看权限等级为高权限时,则该开发对象对应的查看权限等级仍然为低权限。
步骤402,基于查看权限等级,将目标数据以目标展示形式在终端上进行呈现,其中,不同的查看权限等级对应目标数据的不同的展示形式。
在实际实施时,在确定开发对象对应的查看权限等级后,基于查看权限等级,将目标数据以目标展示形式在终端上进行呈现,这里不同的查看权限等级对应目标数据的不同的展示形式指的是,对于不同的查看权限等级目标数据的展示内容不同,即基于不同的查看权限等级,将目标数据进行相应的混淆输出。
作为示例,当开发对象对应的查看权限等级为低权限时,直接对经过混淆处理得到的目标数据进行呈现,参见图14,图14是本申请实施例提供的报表数据展示的示意图,基于图14,开发对象对应的查看权限等级为低权限,因此,统计指标和3日用户数量这两列数据为混淆加密数据,则开发对象无法查看。
作为示例,当开发对象对应的查看权限等级为高权限时,则获取目标数据对应的原始数据,从而对原始数据进行展示,参见图15,图15是本申请实施例提供的报表数据展示的示意图,基于图15,开发对象对应的查看权限等级为高权限,直接对目标数据对应的原始数据进行展示,以使开发对象可以查看所有数据。
如此,通过对呈现的结果进行混淆,使得不同的开发对象看到的混淆级别不一样,有效保证了数据的安全性,降低了敏感数据泄漏的风险。
需要说明的是,对于目标数据的呈现除了列表结果数据的情况,还可以是图形化报表,当目标数据的呈现形式为图形化报表时,可以以打水印的方式嵌入混淆数据,以展示经过混淆处理得到的目标数据。
在一些实施例中,在得到目标数据之后,还可以根据目标数据,进行数据特征逆向计算,从而确定开发对象的关联信息。具体地,首先获取目标数据中各目标数据块,这里的目标数据块为经过混淆处理的数据块,然后获取插入位置信息,基于插入位置信息,确定每个数据块的混淆数据MNN,再通过设定的字符串处理哈希函数,确定每个数据块的摘要,即将字符串内容哈希为数字,如M1-1=RSHash(data_1-1),这里M1-1为第一行的第一个数据块哈希后的数字,即第一行的第一个数据块对应的数据块摘要;然后通过除法运算获取目标混淆因子TN,如TN=MN1/(M1-1*1+M1-2*2+M1-3*3+……+M1-N*N),这里,每一行行数据的目标混淆因子TN均相同;在确定目标混淆因子后,对目标混淆因子进行相应的目标转换逆过程,得到混淆因子,参见图16,图16是本申请实施例提供的对目标混淆因子进行目标转换逆过程的示意图,基于图16,对目标混淆因子进行ASCII码解码,得到混淆因子;最后参见图17,图17是本申请实施例提供的对混淆因子进行解密过程的示意图,基于图17,获取预先设定的混淆因子密钥及相应的加密方式,从而基于加密方式确定相应的解密方式,以基于混淆因子密钥对混淆因子进行解密,得到开发对象对应的关联信息。
在一些实施例中,除了基于开发对象对应的关联信息生成混淆因子以进行相应数据的混淆,得到对应目标数据外,还可以基于原始数据自身的关联信息生成混淆因子以进行相应数据的混淆,得到对应目标数据,相应地,基于原始数据自身的关联信息生成混淆因子以进行相应数据的混淆,得到对应目标数据后,同样可以根据目标数据,进行数据特征逆向计算,从而确定原始数据自身关联信息。这里,原始数据自身的关联信息可以包括原始数据中对应数据片段的生成时间、敏感程度、以及与该数据片段相应用户的身份信息等信息。这样,当数据片段存在泄漏时,首先确定泄露数据片段对应的数据块,然后获取插入位置信息,基于插入位置信息,确定该数据块的混淆数据,参见图18,图18是本申请实施例提供的泄露数据片段的示意图,基于图18,这里泄露的数据片段为data_2-2+MN2,插入位置信息为数据块的最后位置,因此,可以确定该数据块的混淆数据为MN2,再通过设定的字符串处理哈希函数,确定该数据块的摘要M2-2,即M2-2=RSHash(data_2-2),;然后通过除法运算获取目标混淆因子T N,如TN=MN2/(M2-1*1+M2-2*2+M2-3*3+……+M2-N*N);在确定目标混淆因子后,对目标混淆因子进行相应的目标转换逆过程,得到混淆因子,从而对混淆因子进行解密,得与混淆因子对应的关联信息,即该泄露数据片段的关联信息。
如此,当混淆规则或者混淆位置存在泄漏时,通过数据特征逆向计算,确定泄露内容的相关信息,从而针对相关信息进行及时有效的调整,使得数据的安全性得到更好的加强。
需要说明的是,在一些实施例中,在将每一行数据进行数据块划分之外,还可以直接对数据片段进行混淆操作,这样,避免了数据块数量或者原始数据行数过多,造成混淆操作过于冗余的情况,提高了混淆过程的效率。
在一些实施例中,开发对象针对原始数据的数据获取请求中,原始数据还可以是,针对游戏应用中相应待开发功能对应的原始数据,示例性地,如针对游戏场景中地图的更新、或者针对游戏显示界面中操作功能项的更新等,在接收到的开发对象针对原始数据的数据获取请求后,基于数据获取请求获取开发对象的关联信息及原始数据,从而基于关联信息,生成对应原始数据的混淆因子,并对原始数据进行数据块划分,以基于划分后得到的数据块以及依据开发对象的关联信息生成的混淆因子,确定对应数据块的混淆数据,从而将确定的混淆数据插入至相应数据块,得到对应目标数据后,以使得开发对象基于经过混淆得到的目标数据进行相应功能的开发。需要说明的是,开发对象基于经过混淆得到的目标数据进行相应功能的开发的过程中,服务器后台会根据目标数据,进行数据特征逆向计算,从而确定经过混淆处理前的原始数据,进而基于解混淆后的原始数据进行相应功能开发。如此,通过混淆过程和解混淆过程实现目标应用中相应待开发功能的开发,提高了开发过程中数据的安全性。
应用本申请上述实施例,通过对数据进行数据块划分,以基于划分后得到的数据块以及依据开发对象的关联信息生成的混淆因子,确定对应数据块的混淆数据,从而将确定的混淆数据插入至相应数据块,实现对数据的混淆操作,如此,不仅使得数据的安全级别得到有效提高,同时也让数据的开发过程更加开放且可控。
下面,将说明本申请实施例在一个实际的应用场景中的示例性应用。
相关技术中,传统的报表数据开发通常有以下两种方式,方案一是在正式日志服务器上进行逻辑算法sql开发,参见图19,图19是本申请实施例提供的在正式日志服务器上进行开发的可选示意图,基于图19,这里直接连接正式日志服务器,从而使得开发对象在该正式开发服务器的界面上,基于界面上代码输入面板进行开发及调试,如此数据真实可靠,但性能低,数据安全风险高;方案二是从正式日志服务器原样拉取部分数据到开发日志服务器,然后在开发日志服务器进行开发调试,如此性能高,但数据不够齐全,仍存在数据安全风险,参见图20,图20是本申请实施例提供的在开发日志服务器上进行开发的可选示意图,基于图20,开发对象通过界面中的“重新拉取”的控件,从正式日志服务器上拉取10条数据得到相应的拉取数据,然后将拉取得到的10条数据发送到开发日志服务器,然后在开发日志服务器上基于该拉取数据进行开发调试。基于此,本申请提供了一种数据处理方法,在正式开发数据库的基础上创建了一个独立的混淆数据库,该混淆数据库权限独立,跟正式开发数据库无任何耦合。混淆数据库的数据来源来自数据处理系统的数据拉取操作,参见图21,图21是本申请实施例提供的数据处理系统的数据拉取操作的示意图,基于图21,开发对象通过界面中“请选择敏感标签”的控件,确定敏感标签即对应的敏感数据,从而在拉取过程中进行了敏感字段的过滤及敏感数据的混淆处理,然后通过接口写入到混淆数据库中,以使开发对象基于混淆数据库进行开发,如此,通过本申请提供的实施例,对开发环境的部署隔离,密钥的维护管理,人员权限级别的维护都进行有效的系统支持,不仅在开发阶段对于敏感数据中的关键字段、关键信息进行混淆,并对数据量进行抽取限制,从而在开发源头即进行敏感数据的保护,既使得数据的安全级别得到有效提高,同时也让数据的开发过程更加开放且可控。
本申请实施例提供的数据处理方法主要包括混淆因子生成、数据混淆、混淆数据展示以及数据混淆的逆过程的四个主要过程。
对于本申请上述实施例中混淆因子生成的过程,具体为首先获取开发者账号、发生时间、开发者的权限等级、预先定义的私有密钥(即混淆因子密钥)以及相应的单向压缩函数(如对称加密函数AES),然后通过将单向压缩函数,将字符串开发者账号、发生时间、开发者的权限等级等生成一个混淆因子fact or。需要说明的是,这里的私有密钥有内部系统保存不公开,同时混淆因子可逆,可以用私有密钥进行解密。
对于本申请上述实施例中数据混淆的过程,具体为首先将生成的混淆因子进行ASCII码,得到对应混淆因子的ASCII码即TN=ASCII(factor),同时针对待混淆数据的每一行数据,根据预先设置数值N(数据块编号),将每行数据划分为N个数据块,然后定义一个字符串处理哈希函数RSHash,将每一个数据块对应的字符串内容哈希为数字,示例性地,假设一个报表有n个字段,Col1、Col2、Col3、……、Coln,该行数据对应的数据块为data_1-1、data_1-2、data_1-3、data_1-4、……、data_1-n,这里,data_1-1为第一行的第一个数据块,dat a_1-2为第一行的第二个数据块等,然后定义一个字符串处理哈希函数RSHash,通过该字符串处理哈希函数对各数据块进行哈希处理,将字符串内容哈希为数字,如M1-1=RSHash(data_1-1),这里M1-1为第一行的第一个数据块哈希后的数字。然后对TN、数据块对应的哈希值以及预先设定的数值N进行求积处理,得到各数据块对应的混淆子数据,如针对第一行的第一个数据块,该数据块对应的混淆子数据MN1-1为TN*M1-1*1;针对第一行的第N个数据块,该数据块对应的混淆子数据MN1-N为TN*M1-N*N。接着对各数据块对应的混淆子数据进行求和处理,得到对应数据块的混淆数据,如在得到各数据块对应的混淆子数据MN1-1、MN1-2、……、MN1-N后,对各数据块对应的混淆子数据进行求和处理,得到对应数据块的混淆数据MN1,即MN1=MN1-1+MN1-2+……+MN1-N。需要说明的是,同一行中各数据块的混淆数据都是相同的,不同行的数据块的混淆数据都是不同的,即第1行的第一个数据块的混淆数据为MN1,第1行的第N个数据块的混淆数据还是为MN1,而第2行的各数据块的混淆数据都是MN2,第3行的各数据块的混淆数据都是MN3,第4行的各数据块的混淆数据都是M N4,,第N行的各数据块的混淆数据都是MNN。
在实际实施时,在确定各数据块对应的混淆数据后,还会确定需要进行混淆的数据块,这里确定需要进行混淆的数据块的过程具体包括确定用于指示混淆数据插入的数据块的余数编码(即插入标识),这里的余数编码与预先设定数值N对应。具体的,对混淆数据与各数据块的预先设定数值N进行取模处理,得到对应各数据块的取模结果,示例性地,这里混淆数据为MNN,数据块编号为N,则对应各数据块的取模结果Pos=MNN mod(N),再基于取模结果,确定用于指示所述混淆数据插入的数据块的余数编码,然后基于余数编码,将混淆数据插入至对应的数据块内,得到对应的目标数据。
对于本申请上述实施例中混淆数据展示的过程,具体为在对拉取的数据进行混淆操作后,对得到的目标数据进行正式报表数据的呈现,即使得不同的使用者看到的结果略有差异,低权限角色截取到的结果附带相关混淆信息印迹。这里,对于正式报表数据的呈现除了列表结果数据的情况,还可以是图形化报表,当目标数据的呈现形式为列表结果数据时,可以以星号的方式嵌入混淆数据,以展示经过混淆处理得到的目标数据,当目标数据的呈现形式为图形化报表时,可以以打水印的方式嵌入混淆数据,以展示经过混淆处理得到的目标数据。如此,通过对呈现的结果进行混淆,使得不同的开发对象看到的混淆级别不一样,有效保证了数据的安全性,降低了敏感数据泄漏的风险。
对于本申请上述实施例中数据混淆的逆过程,具体为在进行混淆数据展示即得到的混淆后数据表后,当数据片段存在泄漏时,首先确定泄露数据片段对应的数据块,然后获取插入位置信息,基于插入位置信息,确定该数据块的混淆数据,参见图18,这里泄露的数据片段为data_2-2+MN2,插入位置信息为数据块的最后位置,因此,可以确定该数据块的混淆数据为MN2,再通过设定的字符串处理哈希函数,确定该数据块的摘要M2-2,即M2-2=RSHash(data_2-2),;然后通过除法运算获取目标混淆因子TN,如TN=MN2/(M2-1*1+M2-2*2+M2-3*3+……+M2-N*N);在确定目标混淆因子后,对目标混淆因子进行相应的目标转换逆过程,得到混淆因子,从而对混淆因子进行解密,得与混淆因子对应的关联信息,即该泄露数据片段的关联信息,如该数据片段的用户账户,时间,权限等级等信息。如此,当混淆规则或者混淆位置存在泄漏时,通过数据特征逆向计算,确定泄露内容的相关信息,从而针对相关信息进行及时有效的调整,使得数据的安全性得到更好的加强。
需要说明的是,在一些实施例中,在将每一行数据进行数据块划分之外,还可以直接对数据片段进行混淆操作,这样,避免了数据块数量或者原始数据行数过多,造成混淆操作过于冗余的情况,提高了混淆过程的效率。
应用本申请上述实施例,通过对数据进行数据块划分,以基于划分后得到的数据块以及依据开发对象的关联信息生成的混淆因子,确定对应数据块的混淆数据,从而将确定的混淆数据插入至相应数据块,实现对数据的混淆操作,如此,不仅使得数据的安全级别得到有效提高,同时也让数据的开发过程更加开放且可控。
下面继续说明本申请实施例提供的数据处理装置455的实施为软件模块的示例性结构,在一些实施例中,如图2所示,存储在存储器440的数据处理装置455中的软件模块可以包括:
获取模块4551,用于响应于开发对象针对原始数据的数据获取请求,获取所述开发对象的关联信息及所述原始数据;
第一生成模块4552,用于基于所述关联信息,生成对应所述原始数据的混淆因子,并对所述原始数据进行数据块划分,得到至少两个数据块;
第二生成模块4553,用于针对所述至少两个数据块中至少之一,基于所述混淆因子,生成对应所述数据块的混淆数据;
混淆模块4554,用于将所述混淆数据插入至所述原始数据中相应数据块内,得到对应所述原始数据的目标数据,并返回所述目标数据至所述开发对象对应的终端。
在一些实施例中,所述获取模块4551,还用于解析所述数据获取请求,得到所述数据获取请求携带的所述开发对象的关联信息,所述关联信息包括所述开发对象的身份信息、所述数据获取请求的生成时间、所述开发对象对应的权限等级中至少之一;或者,获取所述开发对象对应的对象标识,基于所述对象标识,进行关联信息索引,得到所述开发对象的关联信息。
在一些实施例中,所述第一生成模块4552,还用于获取混淆因子密钥及相应的加密方式;基于所述混淆因子密钥,采用所述加密方式对所述关联信息进行加密,生成对应所述原始数据的混淆因子。
在一些实施例中,所述第一生成模块4552,还用于当所述原始数据包括至少一行数据时,针对所述原始数据中的每一行数据,执行以下操作:获取所述行数据对应的数据块数量;其中,所述数据块数量不小于两个;基于所述数据块数量,对行数据进行相应数量的数据块划分,得到至少两个数据块。
在一些实施例中,所述至少两个数据块构成数据块序列,所述第二生成模块4553,还用于获取所述数据块序列中各所述数据块对应的数据块编号;基于所述混淆因子以及所述数据块编号,生成对应所述数据块的混淆数据。
在一些实施例中,所述第二生成模块4553,还用于获取各所述数据块对应的数据块摘要;针对各所述数据块,对所述混淆因子、所述数据块摘要以及所述数据块编号进行求积处理,得到各所述数据块对应的混淆子数据;对各所述数据块对应的所述混淆子数据进行求和处理,得到对应所述数据块的混淆数据。
在一些实施例中,所述装置还包括插入模块,所述插入模块,用于对所述混淆数据与各所述数据块的数据块编号进行目标数据处理,得到对应各所述数据块的目标处理结果;针对各所述数据块,对所述目标处理结果进行取模处理,得到对应各所述数据块的取模结果;基于各所述数据块对应的所述取模结果,确定插入标识,所述插入标识用于指示所述混淆数据插入的数据块;所述混淆模块4554,还用于基于所述插入标识,将所述混淆数据插入至对应的所述数据块内,得到对应所述原始数据的目标数据。
在一些实施例中,所述插入模块,还用于当对应各所述数据块的所述取模结果中,存在至少两个相同的取模结果时,筛掉重复的取模结果,并将剩余的所述取模结果作为目标取模结果;基于所述目标取模结果,确定所述插入标识。
在一些实施例中,所述插入模块,还用于获取预先设定的插入规则,所述插入规则用于指示所述混淆数据在所述数据块序列中的插入位置;基于所述插入规则,确定插入标识,所述插入标识用于指示所述混淆数据插入的数据块;所述混淆模块4554,还用于基于所述插入标识,将所述混淆数据插入至对应的所述数据块内,得到对应所述原始数据的目标数据。
在一些实施例中,所述装置还包括呈现模块,所述呈现模块,用于基于所述开发对象的关联信息,确定所述开发对象对应的查看权限等级;基于所述查看权限等级,将所述目标数据以目标展示形式在所述终端上进行呈现;其中,不同的所述查看权限等级对应所述目标数据的不同的展示形式。
本申请实施例提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行本申请实施例上述的数据处理方法。
本申请实施例提供一种存储有可执行指令的计算机可读存储介质,其中存储有可执行指令,当可执行指令被处理器执行时,将引起处理器执行本申请实施例提供的基于云平台的漏洞告警方法,例如,如图3示出的数据处理方法。
在一些实施例中,计算机可读存储介质可以是FRAM、ROM、PROM、EP ROM、EEPROM、闪存、磁表面存储器、光盘、或CD-ROM等存储器;也可以是包括上述存储器之一或任意组合的各种设备。
在一些实施例中,可执行指令可以采用程序、软件、软件模块、脚本或代码的形式,按任意形式的编程语言(包括编译或解释语言,或者声明性或过程性语言)来编写,并且其可按任意形式部署,包括被部署为独立的程序或者被部署为模块、组件、子例程或者适合在计算环境中使用的其它单元。
作为示例,可执行指令可以但不一定对应于文件系统中的文件,可以可被存储在保存其它程序或数据的文件的一部分,例如,存储在超文本标记语言(H TML,Hyper TextMarkup Language)文档中的一个或多个脚本中,存储在专用于所讨论的程序的单个文件中,或者,存储在多个协同文件(例如,存储一个或多个模块、子程序或代码部分的文件)中。
作为示例,可执行指令可被部署为在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备上执行。
综上所述,通过本申请实施例具有以下有益效果:
(1)通过对数据进行数据块划分,以基于划分后得到的数据块以及依据开发对象的关联信息生成的混淆因子,确定对应数据块的混淆数据,从而将确定的混淆数据插入至相应数据块,实现对数据的混淆操作,如此,不仅使得数据的安全级别得到有效提高,同时也让数据的开发过程更加开放且可控。
(2)通过对呈现的结果进行混淆,使得不同的开发对象看到的混淆级别不一样,有效保证了数据的安全性,降低了敏感数据泄漏的风险。
(3)当混淆规则或者混淆位置存在泄漏时,通过数据特征逆向计算,确定泄露内容的相关信息,从而针对相关信息进行及时有效的调整,使得数据的安全性得到更好的加强。
(4)通过直接对数据片段进行混淆操作,这样,避免了数据块数量或者原始数据行数过多,造成混淆操作过于冗余的情况,提高了混淆过程的效率。
以上所述,仅为本申请的实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和范围之内所作的任何修改、等同替换和改进等,均包含在本申请的保护范围之内。
Claims (14)
1.一种数据处理方法,其特征在于,所述方法包括:
响应于开发对象针对原始数据的数据获取请求,获取所述开发对象的关联信息及所述原始数据;
基于所述关联信息,生成对应所述原始数据的混淆因子,并对所述原始数据进行数据块划分,得到至少两个数据块;
针对所述至少两个数据块中至少之一,基于所述混淆因子,生成对应所述数据块的混淆数据;
将所述混淆数据插入至所述原始数据中相应数据块内,得到对应所述原始数据的目标数据,并返回所述目标数据至所述开发对象对应的终端。
2.如权利要求1所述的方法,其特征在于,所述获取所述开发对象的关联信息,包括:
解析所述数据获取请求,得到所述数据获取请求携带的所述开发对象的关联信息,所述关联信息包括所述开发对象的身份信息、所述数据获取请求的生成时间、所述开发对象对应的权限等级中至少之一;
或者,获取所述开发对象对应的对象标识,基于所述对象标识,进行关联信息索引,得到所述开发对象的关联信息。
3.如权利要求1所述的方法,其特征在于,所述基于所述关联信息,生成对应所述原始数据的混淆因子,包括:
获取混淆因子密钥及相应的加密方式;
基于所述混淆因子密钥,采用所述加密方式对所述关联信息进行加密,生成对应所述原始数据的混淆因子。
4.如权利要求1所述的方法,其特征在于,所述对所述原始数据进行数据块划分,得到至少两个数据块,包括:
当所述原始数据包括至少一行数据时,针对所述原始数据中的每一行数据,执行以下操作:
获取所述行数据对应的数据块数量;其中,所述数据块数量不小于两个;
基于所述数据块数量,对行数据进行相应数量的数据块划分,得到至少两个数据块。
5.如权利要求1所述的方法,其特征在于,所述至少两个数据块构成数据块序列,所述基于所述混淆因子,生成对应所述数据块的混淆数据,包括:
获取所述数据块序列中各所述数据块对应的数据块编号;
基于所述混淆因子以及所述数据块编号,生成对应所述数据块的混淆数据。
6.如权利要求5所述的方法,其特征在于,所述基于所述混淆因子以及所述数据块编号,生成对应所述数据块的混淆数据,包括:
获取各所述数据块对应的数据块摘要;
针对各所述数据块,对所述混淆因子、所述数据块摘要以及所述数据块编号进行求积处理,得到各所述数据块对应的混淆子数据;
对各所述数据块对应的所述混淆子数据进行求和处理,得到对应所述数据块的混淆数据。
7.如权利要求5所述的方法,其特征在于,所述基于所述混淆因子,生成对应所述数据块的混淆数据之后,还包括:
对所述混淆数据与各所述数据块的数据块编号进行目标数据处理,得到对应各所述数据块的目标处理结果;
针对各所述数据块,对所述目标处理结果进行取模处理,得到对应各所述数据块的取模结果;
基于各所述数据块对应的所述取模结果,确定插入标识,所述插入标识用于指示所述混淆数据插入的数据块;
所述将所述混淆数据插入至所述原始数据中相应数据块内,得到对应所述原始数据的目标数据,包括:
基于所述插入标识,将所述混淆数据插入至对应的所述数据块内,得到对应所述原始数据的目标数据。
8.如权利要求7所述的方法,其特征在于,所述基于各所述数据块对应的所述取模结果,确定插入标识,包括:
当对应各所述数据块的所述取模结果中,存在至少两个相同的取模结果时,筛掉重复的取模结果,并将剩余的所述取模结果作为目标取模结果;
基于所述目标取模结果,确定所述插入标识。
9.如权利要求5所述的方法,其特征在于,所述基于所述混淆因子,生成对应所述数据块的混淆数据之后,还包括:
获取预先设定的插入规则,所述插入规则用于指示所述混淆数据在所述数据块序列中的插入位置;
基于所述插入规则,确定插入标识,所述插入标识用于指示所述混淆数据插入的数据块;
所述将所述混淆数据插入至所述原始数据中相应数据块内,得到对应所述原始数据的目标数据,包括:
基于所述插入标识,将所述混淆数据插入至对应的所述数据块内,得到对应所述原始数据的目标数据。
10.如权利要求1所述的方法,其特征在于,所述返回所述目标数据至所述开发对象对应的终端之后,所述方法还包括:
基于所述开发对象的关联信息,确定所述开发对象对应的查看权限等级;
基于所述查看权限等级,将所述目标数据以目标展示形式在所述终端上进行呈现;
其中,不同的所述查看权限等级对应所述目标数据的不同的展示形式。
11.一种数据处理装置,其特征在于,所述装置包括:
获取模块,用于响应于开发对象针对原始数据的数据获取请求,获取所述开发对象的关联信息及所述原始数据;
第一生成模块,用于基于所述关联信息,生成对应所述原始数据的混淆因子,并对所述原始数据进行数据块划分,得到至少两个数据块;
第二生成模块,用于针对所述至少两个数据块中至少之一,基于所述混淆因子,生成对应所述数据块的混淆数据;
混淆模块,用于将所述混淆数据插入至所述原始数据中相应数据块内,得到对应所述原始数据的目标数据,并返回所述目标数据至所述开发对象对应的终端。
12.一种电子设备,其特征在于,包括:
存储器,用于存储可执行指令;
处理器,用于执行所述存储器中存储的可执行指令时,实现权利要求1至10任一项所述的数据处理方法。
13.一种计算机可读存储介质,其特征在于,存储有可执行指令,用于引起处理器执行时,实现权利要求1-10任一项所述的数据处理方法。
14.一种计算机程序产品,包括计算机程序或指令,其特征在于,所述计算机程序或指令被处理器执行时实现权利要求1至10任一项所述的数据处理方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210145338.0A CN116663043A (zh) | 2022-02-17 | 2022-02-17 | 数据处理方法、装置、设备、存储介质及程序产品 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210145338.0A CN116663043A (zh) | 2022-02-17 | 2022-02-17 | 数据处理方法、装置、设备、存储介质及程序产品 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116663043A true CN116663043A (zh) | 2023-08-29 |
Family
ID=87719373
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210145338.0A Pending CN116663043A (zh) | 2022-02-17 | 2022-02-17 | 数据处理方法、装置、设备、存储介质及程序产品 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116663043A (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117112632A (zh) * | 2023-10-23 | 2023-11-24 | 北京纷扬科技有限责任公司 | 一种防止数据冲击的隔离方法、装置及存储介质 |
CN117834109A (zh) * | 2024-03-05 | 2024-04-05 | 北京隐算科技有限公司 | 一种基于混淆模分量的密文数据库系统及其应用方法 |
-
2022
- 2022-02-17 CN CN202210145338.0A patent/CN116663043A/zh active Pending
Cited By (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117112632A (zh) * | 2023-10-23 | 2023-11-24 | 北京纷扬科技有限责任公司 | 一种防止数据冲击的隔离方法、装置及存储介质 |
CN117112632B (zh) * | 2023-10-23 | 2024-01-12 | 北京纷扬科技有限责任公司 | 一种防止数据冲击的隔离方法、装置及存储介质 |
CN117834109A (zh) * | 2024-03-05 | 2024-04-05 | 北京隐算科技有限公司 | 一种基于混淆模分量的密文数据库系统及其应用方法 |
CN117834109B (zh) * | 2024-03-05 | 2024-05-28 | 北京隐算科技有限公司 | 一种基于混淆模分量的密文数据库系统及其应用方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11831782B2 (en) | Method and system for verification of identity attribute information | |
US11736288B2 (en) | Traceable key block-chain ledger | |
CN109417483B (zh) | 用于分区区块链和增强被许可的区块链的隐私的方法和系统 | |
WO2021228149A1 (zh) | 一种隐私数据保护方法、系统及装置 | |
CN111177252B (zh) | 一种业务数据的处理方法及装置 | |
US20160283728A1 (en) | Database server and client for query processing on encrypted data | |
CN116663043A (zh) | 数据处理方法、装置、设备、存储介质及程序产品 | |
CN106843978B (zh) | 一种sdk接入方法及系统 | |
CN111753320A (zh) | 基于拦截器的数据加密方法、装置及计算机设备 | |
CN104636444A (zh) | 一种数据库的加解密方法及装置 | |
CN111061798A (zh) | 可配置化数据传输及监控方法、设备及介质 | |
CN113127915A (zh) | 数据加密脱敏方法、装置、电子设备及存储介质 | |
CN112163214A (zh) | 数据访问的方法和装置 | |
CN117459327A (zh) | 一种云数据透明加密保护方法、系统及装置 | |
WO2019178981A1 (zh) | 自定义规则密码管理方法、装置、终端设备及存储介质 | |
CN109729076B (zh) | 数据脱敏、逆脱敏方法及装置、存储介质、终端 | |
CN103679045A (zh) | 文件安全性控制系统及方法 | |
US11936792B2 (en) | Method and system for providing privacy-preserving data analysis | |
EP4328781A1 (en) | Method and system for improving quality and accuracy of data of plurality of digital twins interacting in a computer simulated collaborative environment over a distributed network | |
CN117493335A (zh) | 报表处理方法、装置、设备、存储介质和计算机程序产品 | |
Delafontaine et al. | Secure boot concept on the Zynq Ultrascale+ MPSoC | |
JP5895093B1 (ja) | ナンバー復元システム並びに支援装置及び復元支援方法 | |
WO2023052077A1 (en) | Data access control | |
Cabianca | Ensuring Data Protection | |
CN115442090A (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 |