CN115001852B - 一种网络操作系统中应用内生安全数据库存取方法和装置 - Google Patents
一种网络操作系统中应用内生安全数据库存取方法和装置 Download PDFInfo
- Publication number
- CN115001852B CN115001852B CN202210838413.1A CN202210838413A CN115001852B CN 115001852 B CN115001852 B CN 115001852B CN 202210838413 A CN202210838413 A CN 202210838413A CN 115001852 B CN115001852 B CN 115001852B
- Authority
- CN
- China
- Prior art keywords
- data
- heterogeneous
- operating system
- database
- storage
- 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
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/20—Network architectures or network communication protocols for network security for managing network security; network security policies in general
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/22—Indexing; Data structures therefor; Storage structures
- G06F16/2228—Indexing structures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/20—Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
- G06F16/25—Integrating or interfacing systems involving database management systems
-
- 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/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/78—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure storage of data
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/02—Network architectures or network communication protocols for network security for separating internal from external traffic, e.g. firewalls
- H04L63/0209—Architectural arrangements, e.g. perimeter networks or demilitarized zones
- H04L63/0218—Distributed architectures, e.g. distributed firewalls
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- Computing Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Data Mining & Analysis (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Storage Device Security (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种网络操作系统中应用内生安全数据库存取方法和装置,所述内生安全数据库基于异构数据体进行设计,具体如下步骤:步骤S1、网络操作系统与内生安全数据库之间通过安全通信机制进行交互,不被监听和攻击;步骤S2、将数据分发到字典数据结构的异构键值空间中;步骤S3、从异构编码后的数据中选择正确的数据;步骤S4、通过数据持久化模块对数据进行保存,所述数据持久化模块用于对普通数据体的持久化和对异构数据体的持久化。本发明实现各个数据体之间的相互隔离,攻击者无法通过任意数据体获得其他异构备份的信息,从而极大提高攻击成本。本发明是完全独立于硬件结构的轻量化软件设计,可以在绝对大多数平台上移植应用。
Description
技术领域
本发明涉及一种网络设备操作系统和数据库技术领域,尤其涉及一种网络操作系统中应用内生安全数据库存取方法和装置。
背景技术
当前基于redis数据库的SONiC白盒交换机网络操作系统正处于快速发展期,但当前redis数据库本身不具备内生安全机制,SONiC对redis数据库的应用也存在很多的漏洞和后门,容易造成安全隐患。
发明内容
本发明的目的在于提供一种网络操作系统中应用内生安全数据库存取方法和装置,解决了现有技术中redis数据库本身不具备内生安全机制,SONiC对redis数据库的应用也存在很多的漏洞和后门,容易造成安全隐患的问题。
本发明采用的技术方案如下:
一种网络操作系统中应用内生安全数据库存取方法,所述内生安全数据库基于异构数据体进行设计,具体如下步骤:
步骤S1、网络操作系统与内生安全数据库之间通过安全通信机制进行交互,所述安全通信机制用于保护网络操作系统与内生安全数据库之间的交互过程不被监听和攻击;
步骤S2、内生安全数据库获得网络操作系统存储数据的指令,通过分发模块对数据进行存储,所述分发模块用于将数据分发到字典数据结构的异构键值空间中;
步骤S3、内生安全数据库获得网络操作系统读取数据的指令,通过裁决模块回复指定数据,所述裁决模块用于从异构编码后的数据中选择正确的数据;
步骤S4、内生安全数据库获得网络操作系统保存数据的指令,通过数据持久化模块对数据进行保存,所述数据持久化模块用于对普通数据体的持久化和对异构数据体的持久化。
作为优选,所述步骤S1中所述安全通信机制包括网络消息加密和磁盘存储加密;所述网络消息加密用于对网络操作系统与内生安全数据库之间交互的网络消息进行加密处理;所述磁盘存储加密用于内生安全数据库持久化在磁盘上的数据进行加密处理。
作为优选,所述步骤S2中所述通过分发模块对数据进行存储具体包括以下子步骤:
步骤S21、分发模块通过命令流分流接口处理网络操作系统下发的存储数据的指令,所述命令流分流接口用于对存储数据的命令流进行分类并获得需要异构存储的数据;
步骤S22、分发模块对所述需要异构存储的数据进行异构编码;
步骤S23、分发模块对所述异构编码的数据进行分发存储。
作为优选,所述步骤S21中所述的命令流分流接口具体包括以下两种分流机制:
基于命令流内容分流,具体是根据命令流内容中所包含的信息判断数据进行普通存储还是异构存储;
基于命令流去向分流,具体是根据命令流所对应的内生安全数据库的键值空间判断数据进行普通存储还是异构存储。
作为优选,所述步骤S22具体包括以下子步骤:
步骤S221、分发模块对数据键进行异构编码,具体包括对数据键的内容信息和数据键所对应的索引信息进行异构编码;
步骤S222、分发模块对数据值进行异构编码,具体是针对数据值的内容信息进行异构编码。
作为优选,所述步骤S221中所述的对数据键的内容信息进行异构编码具体通过字典数据结构来组织键值空间,以数据对象对数据进行封装。
作为优选,所述步骤S221中所述的数据键所对应的索引信息进行异构编码具体包括以下两种方式:
对数据键的内容信息异构编码之后再进行哈希运算,从而得到数据键所对应的索引信息;
采用多种哈希算法,随机选取其中之一对数据键进行哈希运算,从而得到数据键所对应的索引信息。
作为优选,所述步骤S222中所述的数据值的异构编码的方式包括以下任意一种或两种的组合:数据组织形式的异构编码或数据内容格式的异构编码。
作为优选,所述数据组织形式的异构编码包括但不限于以下几种编码方式的组合:压缩列表编码,字典编码或有序链表编码。
作为优选,所述步骤S23中所述的分发存储包括以下两种方式:
集中式分发存储,所述集中式分发存储指的是异构编码后的数据放置在同一个键值空间当中;
分散式分发存储,所述分散式分发存储指的是异构编码后的数据放置在不同的键值空间当中。
作为优选,所述步骤S3中所述的裁决模块具体包含以下两种触发形式:
数据读取触发,内生安全数据库接收到数据读取指令后,获取对应的异构存储信息,裁决模块对所述异构存储信息进行裁决,获得正确的数据;
同步周期触发,以一定的时间周期,遍历所有的异构数据体,采用裁决策略将其中不一致的数据进行修正;若裁决失败,说明该数据被损坏严重,则需要通知网络设备操作系统,网络设备操作系统再针对该事件进行处理。
作为优选,所述异构数据体的时间周期性同步分为以下几种类型:阻塞型、单步型或时间窗型。
作为优选,所述步骤S4中所述的对异构数据体的持久化具体包含以下子步骤:
步骤S41、通过加密存储模块对异构数据体进行加密存储;
步骤S42、通过存储管理模块跟其他各个模块进行交互。
作为优选,所述步骤S41中具体包括两种实现方式:
在同一个文件当中,对特定区间的文件内容进行加密;
将数据库当中的普通数据体和异构数据体分别存储在两个文件当中,只对异构数据体的存储文件进行整体加密。
作为优选,所述步骤S42中具体包括两种实现方式:
RDB持久化,对内生安全数据库当中的数据进行保存,由网络操作系统主动发送命令时执行;
AOF持久化,对内生安全数据库服务器接收到的命令流进行保存,默认状态下不开启,开启后,会在服务器与客户端交互的过程当中自动保存命令流。
一种网络操作系统中应用内生安全数据库存取装置,包括存储器和一个或多个处理器,所述存储器中存储有可执行代码,所述一个或多个处理器执行所述可执行代码时,用于实现上述任一项所述的一种网络操作系统中应用内生安全数据库存取方法。
一种计算机可读存储介质,其上存储有程序,该程序被处理器执行时,实现上述任一项所述的一种网络操作系统中应用内生安全数据库存取方法。
本发明的有益效果是:通过在数据库服务器层面上对数据进行异构编码和分发存储,能够实现各个数据体之间的相互隔离。攻击者无法通过任意数据体获得其他异构备份的信息,从而极大提高攻击成本。本方案是完全独立于硬件结构的轻量化软件设计,不依赖硬件结构意味着可以在绝对大多数平台上移植应用,并且在众多内生安全改造方案当中成本最低。
附图说明
图1为本发明实施例提供的流程图;
图2为SONiC系统框架示意图;
图3为本发明实施例提供的一种网络操作系统中应用内生安全数据库存取装置的结构图。
具体实施方式
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
实施例:
见图1-图2,本发明实施例提供一种网络操作系统中应用内生安全数据库存取方法,所述内生安全数据库基于异构数据体进行设计。
本实施例基于SONiC系统和redis数据库的框架,SONiC与redis的组织结构图参考图2,redis处于SONiC的核心位置,SONiC当中各个组件都是通过redis来进行交互,因而redis本身的安全性以及SONiC与redis交互链路的安全性均至关重要。
具体的,包含以下步骤:
步骤S1,网络操作系统与内生安全数据库之间通过安全通信机制进行交互,所述安全通信机制用于保护网络操作系统与内生安全数据库之间的交互过程不被监听和攻击。
所述的安全通信机制,指的是网络设备操作系统与内生安全数据库进行交互的过程中,数据不会被恶意监听、截取甚至篡改。所述安全通信机制包括网络消息加密和磁盘存储加密;所述网络消息加密用于对网络操作系统与内生安全数据库之间交互的网络消息进行加密处理;所述磁盘存储加密用于内生安全数据库持久化在磁盘上的数据进行加密处理。
网络设备操作系统与内生安全数据库之间的通信有多种形式,这取决于内生安全数据库本身的性质以及内生安全数据库所提供的通信接口。例如,设计一个键值内生安全数据库,其中键保存在索引文件中,值保存在数据文件中,那么网络操作系统与内生安全数据库之间采用文件流或文件IO接口进行通信,此时,安全通信机制的设计就是对文件流或文件IO接口进行重新封装,采用认证、加密存储等技术,保证交互过程的安全性。
在本实施例当中,SONiC系统和redis数据库之间基于Unix域的socket套接字进行通信,利用IO多路复用技术使得redis进程(运行在容器当中)能够同时监听多个客户端(运行在其他容器当中)的存取请求。Unix域的socket套接字通信技术是一种不可靠的通信技术,类似于因特网域的socket套接字,通过抓包等常规的操作即可完成攻击动作;甚至redis本身的机制允许用户新建监视器,操作系统上任意一个进程也可以通过AOF文件获得所有客户端的交互命令流,这种交互设计使得攻击者很容易监听、截取甚至篡改SONiC系统和redis数据库之间的命令流。
针对SONiC与redis之间的交互特性,需要针对性设计网络消息加密和磁盘存储加密方案。
首先,网络消息加密可以参考已有成熟的加解密方案,比较适用于redis的是RSA算法。客户端跟redis建立连接时,redis服务器会创建一个redisClient结构体,将该结构体进行扩展,增加客户端公钥项;同时,redis服务器也将自己的公钥返回给客户端。由此,redis服务器和客户端之间可以通过RSA算法对交互消息进行加密。
针对磁盘存储加密方案同样也有多种成熟的方案可供选择,但也有一种简单的方法,即禁用其他进程访问redis服务器创建的RDB或者AOF文件。原本redis将RDB和AOF文件的读写权限进行开放,是为了支持自身的主从服务器等功能,但SONiC系统并不需要redis的主从服务器功能,因而上述方案也具备可行性。
步骤S2,内生安全数据库获得网络操作系统存储数据的指令,通过分发模块对数据进行存储,所述分发模块用于将数据分发到字典数据结构的异构键值空间中。
原生redis数据库当中没有数据分发模块,redis服务器在接收到用户发起的数据存储请求后,按照自身的服务器-数据库-数据对象-数据结构-存储数据的层次结构,将用户的数据存储在内存当中(或者持久化到磁盘上)。绝大多数的数据库也都是类似的过程,而数据分发模块则是内生安全数据库特有且必有的一个模块,其作用是将待存储的数据分发到异构的存储单元,在本实施例当中,数据分发模块用于将数据分发到字典数据结构(redis数据库的键值空间基于字典数据结构)的异构键值对当中。
具体的,包含以下子步骤:
S21,分发模块通过命令流分流接口处理网络操作系统下发的存储数据的指令,所述命令流分流接口用于对存储数据的命令流进行分类并获得需要异构存储的数据。
Redis数据库的服务器和客户端之间采用命令流的方式进行交互,绝大多数的数据库也都是采用服务器-客户端的命令流模式。Redis的命令流基于RESP协议进行编码,例如客户端存储一个键值对,输入“SET NAME XIAOWANG”的命令行,那么客户端会向服务器发送“*3\r\n$3\r\nSET\r\n$4\r\nNAME\r\n$8\r\nXIAOWANG\r\n”的命令流。
数据分发模块首先要解决的一个问题是什么数据需要异构保存、什么数据不需要异构保存,具体的,就是对存储数据的命令流进行分流。最简单的一种实现方式,是针对所有的数据都进行异构保存,即所有的数据都以异构键值对的形式保存在字典当中。但这种方式会极大增加内存的开销,占用硬件资源,并且不利于读写效率。实际应用当中,一般情况下用户会对保存的数据进行分类,重要的数据采用异构存储,普通的数据则采用普通存储。
具体的,所述命令流分流包括以下两种机制:
基于命令流内容分流,具体是根据命令流内容中所包含的信息判断数据进行普通存储还是异构存储。
基于命令流内容进行分流的设计方案,首先需要扩展redis的命令流体系,使得命令流本身包含异构存储的需求信息。例如,redis当中用SET命令来保存基本键值对,如果用户要求进行异构存储,那么可以新增一个SSET命令(Safe SET),当服务器接收到“*3\r\n$4\r\nSSET\r\n$4\r\nNAME\r\n$8\r\nXIAOWANG\r\n”的命令流,根据命令流当中的第一个字符串“SSET”即可完成分流。基于命令流内容分流的方式不仅限于新增命令类型,也可以在原命令当中增加参数的方式,如客户端当中的命令行“SET NAME XIAOWANG”=>“SET NAMEXIAOWANG SAFE”,这样服务器接收到命令流后,可以根据具体参数决定如何分流。
基于命令流去向分流,具体是根据命令流所对应的内生安全数据库的键值空间判断数据进行普通存储还是异构存储。
在redis当中,一个redis服务器默认状态下初始化16个数据库,编号分别为0-15,在SONiC当中,分别将这0-15的数据库编号重定义为APPL_DB、ASIC_DB等等,存储不同类型的信息。因而基于命令流的去向分流,在SONiC-redis的场景下就是基于命令流所对应的数据库编号来进行分流,例如用户认为APPL_DB和ASIC_DB当中的数据比较重要,那么所有针对这两个数据库的命令流都被分配到异构存储相关的逻辑模块。
具体的SONiC当中不同容器的事件管理器都是通过实例化DBConnetor类与redis建立连接,DBConnector的构造函数当中需要传入数据库编号,也就是APPL_DB、ASC_DB等。因而,redis数据库在跟SONiC的容器建立连接的时候即可感知到该容器所有的命令流去向,按照基于命令流去向分流的机制,便可以对不同SONiC容器的命令流进行分流。
基于命令流去向进行分流可以做到传输层面不感知,也就是攻击者无法根据服务器-客户端之间的传输信息了解到数据的具体存储情况,从而难以对服务器当中的数据进行攻击。加解密需要耗费一定的时间和空间资源,基于命令流去向分流便可以根据SONiC实际业务需求,决定是否对服务器和客户端之间的通信进行加密处理。
S22,分发模块对所述需要异构存储的数据进行异构编码。
经过命令流分流接口的筛选,可以获得需要异构存储的数据,接下来则是对数据进行异构编码。异构编码的目的,是让各个数据体之间实现隔离,无法通过任意其中一个数据体获取到其他数据体的信息。
网络设备操作系统对于数据库的应用绝大多数是以键值对的形式来保存和获取数据,以SONiC-redis为例,SONiC就是将用户配置的流表信息,保存在redis数据库当中。因而,对于数据异构编码机制,需要对键和值分别进行。
S221,分发模块对数据键进行异构编码,具体包括对数据键的内容信息和数据键所对应的索引信息进行异构编码。
对数据键的内容信息进行异构编码包括在网络设备操作系统当中采用内生安全数据库单机服务器子集,通过字典数据结构来组织键值空间,以数据对象对数据进行封装。
数据键所对应的索引信息获取方式包括以下两种方式:
对数据键的内容信息异构编码之后再进行哈希运算,从而得到数据键所对应的索引信息;
采用多种哈希算法,随机选取其中之一对数据键进行哈希运算,从而得到数据键所对应的索引信息。
假设网络操作系统当中需要保存数据[NAME, XIAOWANG],该数据的数据键为“NAME”,数据值为“XIAOWANG”。对该数据进行异构保存,意味着在数据库当中除了原生数据外,还要再备份两个以上(具体数量由裁决模块的设计决定)的数据,也就是在数据库当中有三个“NAME”键。如果不对数据键进行异构编码,那么攻击者首先从键的内容即可获知其所有数据体的存储状态,存在极大风险。
对数据键的内容信息进行异构编码要根据数据库键值空间的组织形式来设计,有多种设计方法。本实施例基于SONiC-redis架构,SONiC当中采用的是redis单机服务器子集(关闭了集群、主从服务器等功能),通过字典数据结构(哈希表)来组织键值空间,所有的数据键都是一个字符串对象(redis以数据对象对数据进行了一层封装,可以简单理解成所有的数据键都是一个字符串)。那么,一种简单的实现方式,就是对“NAME”键分别采用ASCII、EBCDIC等不同编码格式进行编码,甚至可以自行设计一套或多套编码方案,通过一个随机数选取其中之一。由上所述,redis是以数据对象来组织和管理具体数据,在数据对象当中可以记录下编码信息,该编码信息对外不可见,由此可以实现对数据键内容的异构编码。
但以上的编码方式可能仍然不够安全,那可以根据实际安全等级的需求,采用加密/解密机制,具体的有很多成熟的方案可以参考,不再赘述。
另一方面,需要对数据键所关联的索引信息进行保护。网络操作系统都是通过数据键来获取数据值,数据键也对应着数据值的保存位置。同样的,数据键索引信息的保护方案也要根据数据库键值空间的组织形式来进行设计。
以SONiC-redis架构为例,redis当中通过哈希算法,对数据键进行计算,从而获得数据在字典结构的键值空间当中的位置。需要注意的是,redis所计算出来的位置可能是相同的,假如“NAME”键和“AGE”键计算出来的都是2,那么在redis的字典结构(哈希表)的第二个位置上是一个链表,链表中有“NAME”和“AGE”两个键。
如上所述,当SONiC需要对数据[NAME, XIAOWANG]进行异构保存,首先会将该键值对复制成三个,此时相同的“NAME”键通过哈希计算后必然处于字典数据结构的同一个位置节点,那么攻击者只需要获得其中一个数据的位置信息,其他数据的位置信息便不攻自破,具有很大的风险。
因此,对数据键的异构编码需要保护数据键所对应的索引信息。本实施例的因为redis的特性,因而实施方案较为简单,具体的可以有两种:1)对数据键的内容信息异构编码之后的数据键进行哈希运算,从而获得数据键在哈希表上的位置得到数据键所对应的索引信息;2)设计多种哈希算法,随机选取其中之一对数据键进行哈希运算得到数据键所对应的索引信息。以上的方案一实现起来最为简单,但是会跟所述的数据键内容异构编码机制产生耦合;方案二稍微复杂一点,需要额外维护一个哈希算法的应用状态信息,从而让数据在读取的时候知道按照哪个哈希算法来计算获取数据索引。
S222,分发模块对数据值进行异构编码,具体是针对数据值的内容信息进行异构编码。
数据值的异构编码机制不需要考虑保护索引信息,只需要保护内容信息。
数据值的异构编码机制的方式包括以下任意一种或两种的组合:数据组织形式的编码或数据内容格式编码。所述数据组织形式的异构编码包括但不限于以下几种编码方式的组合:压缩列表编码,字典编码或有序链表编码。
针对数据值的异构编码机制要根据实际应用场景制定具体方案,不同数据库保存的数据值类型不同,不同网络设备操作系统所依赖的数据值类型也不一样。以SONiC-redis架构为例,redis本身支持五种数据类型,而SONiC主要是通过HSET等命令来操作哈希类型的数据,以k-f-v的形式存取数据。因而,针对SONiC-redis数据值的异构编码机制,主要是针对哈希类型的数据进行异构编码。
Redis本身也有异构编码的机制,但主要是基于节省资源的目的对同类型的数据采用不同的编码格式。例如,redis对哈希类型的数据就有“压缩列表”和“字典”两种编码。我们可以在这两种编码的基础上进行扩展,“压缩列表”和“字典”属于数据组织形式的编码,在此基础上可以增加“有序链表”作为第三种数据组织形式的编码,构成三种异构编码。对于我们设计的裁决策略而言,三种异构编码即足够。
如果上述的三种数据组织形式的编码数量太少,对于提高攻击成本的提升效果有限,那么一方面可以继续扩展多种组织形式的编码,还有一方面,可以参考所述数据键异构内容异构编码的机制。首先SONiC保存在redis当中的数据虽然是以k-f-v的形式,但无论是k(key)、f(field)还是v(value),最终都是字符串对象(redis以数据对象的形式在组织数据,可以理解成一个字符串),因而都可以对字符串内容进行ASCII、EBCDIC等不同编码格式进行编码,复用上述的异构编码模块即可实现。由此,针对数据值的异构编码机制就可以非常灵活,既可以采用数据组织形式的编码,也可以采用数据内容格式编码,甚至可以是二者的排列组合,由此大大提高数据值的异构特性,攻击者几乎无法对同一数据的不同异构体之间建立关联。
S23,分发模块对所述异构编码的数据进行分发存储。
经过所述的命令流分流和数据异构编码之后,数据库对网络操作系统发起的异构存储的数据需要进行分发存储,由此触发异构数据分发机制。具体的,所述数据分发机制指的是将异构编码后的数据分别放置到不同的数据存储单元当中的过程。所述数据分发机制可以分为两种类型:
集中式分发存储,所述集中式分发机制指的是异构编码后的数据放置在同一个键值空间当中;
分散式分发存储,所述分散式分发机制指的是异构编码后的数据放置在不同的键值空间当中。
不同数据库的键值空间的组织形式是不一样的,因而对应的集中式和分散式分发机制的具体实现方式也有所不同。本实施例基于SONiC-redis架构,redis数据库采用字典数据结构来组织键值空间,所述的字典即为一个哈希表。Redis是一个键值数据库,所有的数据都是以键值对的形式来进行存储,因而redis的每一个数据库可以理解成一个字典(哈希表)。在初始化完成后,一个redis服务器默认有16个数据库(编号从0到15),也就是有16个字典用来存储数据。因而,针对SONiC-redis而言,集中式分发机制,就是将数据进行异构编码后,仍然存放在同一个字典当中;分散式分发机制,就是将数据进行异构编码后,存放在不同的字典当中。以SONiC-redis而言,分散式分发机制更容易实现;而针对一些其他的网络设备操作系统-数据库场景,例如采用文件存储的磁盘数据库场景,集中式分发机制要有利一些,因为分散式分发意味着要管理多个文件,成本较高。
本实施例基于SONiC-redis架构,采用分散式分发机制,如果有其他需要采用集中式分发机制的场景,也可以参考本实施例来设计。所述redis服务器当中维护的16个数据库,在代码里是redisServer结构体当中的一个数据库数组,该数组中每一个项维护了一个数据库的入口指针。因而,分散式的分发机制,首先对这个数据库数组项进行扩展,备份两个以上(具体的数量按裁决模块的设计来确定)的数据库数组用于异构数据分发。
如果按照前述的命令流分流机制当中,采用基于命令流去向分流,这种情况下意味着16个数据库当中只有部分数据库需要备份,因而扩展的数据库数组长度可以小于原生数据库数组的长度。例如,在SONiC当中,我们设定只有APPL_DB(0号数据库)和ASIC_DB(1号数据库)这两个比较重要,只对这两个数据库中的数据进行异构存储,那么扩展的数据库数组长度仅仅需要两个即可。
如果按照前述的基于命令流内容分流,那么意味着每一个数据库当中都有可能对数据进行异构存储,因而扩展的数据库数组长度需要跟原生数据库数组长度保持一致。
步骤S3,内生安全数据库获得网络操作系统读取数据的指令,通过裁决模块回复指定数据,所述裁决模块用于从异构编码后的数据中选择正确的数据。
所述数据裁决机制从异构的数据体当中择取正确的数据,具体包含以下两种触发形式:
数据读取触发,内生安全数据库接收到数据读取指令后,获取对应的异构存储信息,裁决模块对所述异构存储信息进行裁决,获得正确的数据;
同步周期触发,以一定的时间周期,遍历所有的异构数据体,采用裁决策略将其中不一致的数据进行修正;若裁决失败,说明该数据被损坏严重,则需要通知网络设备操作系统,网络设备操作系统再针对该事件进行处理。
所述异构数据体的时间周期性同步分为以下集中类型:阻塞型、单步型或时间窗型。
内生安全技术领域的裁决策略有很多现有的技术方案,本实施例采用一种简单的“少数服从多数”的裁决策略。具体的,假设SONiC已经向APPL_DB(该数据库被设定为异构存储)当中保存了一个数据[NAME, XIAOWANG],该数据通过上述的分发机制,存储在三个异构的数据体当中;此时,SONiC需要读取键为NAME的数据值,那么,通过redis服务器当中数据对象保存的异构存储信息,从三个异构数据体当中解码得到三个键值对,分别为[NAME,XIAOWANG]、[NAME, XIAOLI]、[NAME, XIAOWANG],那么根据少数服从多数的原则,最终redis服务器返回给SONiC“XIAOWANG”这个数据值。如果读出来的三个键值对均不相同,则返回一个裁决错误的信息。且上述的裁决结果还会触发一个同步过程,即裁决模块发现第二个键值对数据错误,会通知所述的数据分发模块,修正上述的第二个键值对。
实际场景当中,根据用户针对安全性和读写效率等不同指标的要求,所述裁决策略也要进行相应调整,本实施例所述的仅仅是一种相对简单易维护的裁决策略。
且根据裁决策略当中对裁决池内数据最小量的需求,对应的数据库当中异构数据体的数量也要进行匹配。
以上所述的即为数据读取触发裁决机制的案例。另外,还有同步周期触发。所述的同步周期,就是对redis的时间周期事件管理器进行扩展,增加异构数据体的时间周期性同步。具体的,就是以一定的时间周期(一般设定为1s),遍历所有的异构数据体,采用裁决策略将其中不一致的数据进行修正;若裁决失败,说明该数据被损坏严重,则需要通知SONiC系统,SONiC再针对该事件进行处理。
需要注意的是,数据同步的过程不应该阻塞数据库的正常运行。具体的,在SONiC-redis架构当中,可以参考redis数据库的重哈希过程,该重哈希分为阻塞重哈希、单步重哈希和时间窗重哈希,简而言之就是只有在数据库允许阻塞的条件下才采用阻塞重哈希策略,否则其他情况下要么每次重哈希一个数据,要么设定重哈希阻塞时间上限。异构数据体的数据同步过程,也可以参考设计成阻塞型、单步型和时间窗型三种类型。
步骤S4,内生安全数据库获得网络操作系统保存数据的指令,通过数据持久化模块对数据进行保存,所述数据持久化模块用于对普通数据体的持久化和对异构数据体的持久化。
所述数据持久化机制,就是将数据保存到磁盘当中的过程,一般情况下网络设备操作系统在上电初始化的过程当中,会读取已保存的数据,从而保证业务运行的连贯性。
对于一些磁盘数据库的场景,不需要考虑额外设计数据持久化机制,但针对SONiC-redis这种内存数据库的场景,由于涉及到异构的数据体的管理,因而需要额外设计数据持久化机制。
所述的数据持久化机制包括对普通数据体的持久化和对异构数据体的持久化,普通数据体的持久化机制可以复用原生数据库的持久化方式,而针对异构数据体的持久化机制具体包含以下子步骤:
步骤S41,通过加密存储模块对异构数据体进行加密存储。
所述的加密存储模块,其功能在于对异构数据体进行加密存储。具体的有两种实现方式:1)在同一个文件当中,对特定区间的文件内容进行加密;2)将数据库当中的普通数据体和异构数据体分别存储在两个文件当中,只对异构数据体的存储文件进行整体加密。
步骤S42,设计存储管理模块,用于跟其他各个模块进行交互。
具体包括两种实现方式:
RDB持久化,对内生安全数据库当中的数据进行保存,由网络操作系统主动发送命令时执行;
AOF持久化,对内生安全数据库服务器接收到的命令流进行保存,默认状态下不开启,开启后,会在服务器与客户端交互的过程当中自动保存命令流。
以SONiC-redis架构为例,redis本身具备RDB持久化和AOF持久化两种。RDB持久化是对redis当中的数据进行保存,有redis客户端主动发送“SAVE”、“BGSAVE”、“FLUSHALL”等命令时执行;AOF持久化是对redis服务器接收到的命令流进行保存,默认状态下不开启,通过“appendonly yes”开启后,会在服务器与客户端交互的过程当中自动保存命令流。
首先,基于redis的RDB持久化方式进行设计相对简单,可以采用步骤S41当中描述的方案(2)。如果SONiC当中设置的是针对APPL_DB、ASC_DB等特定数据库当中所有数据进行异构存储,那么在redis的RDB持久化方式上可以进行扩展,将上述APPL_DB、ASC_DB等特殊数据库以外的数据仍然按照原生RDB持久化方式进行,将上述特殊数据库另外新建一个文件,该文件采用加密存储,具体的加密方法有很多,如对称加密或非对称加密等。需要注意的是,在加密文件中保存的异构数据,并不需要将所有异构编码的数据都保存,只需要通过裁决模块裁决后,择取一个普通编码的数据保存即可。当redis需要再读取这个加密RDB文件之后,会重新调用所述的数据分发机制,将加密RDB文件当中的数据以异构编码的形式保存在内存数据单元当中。
其次,基于redis的AOF持久化方式设计相对复杂。在SONiC-redis架构当中,最简单的一种处理方式是直接禁用AOF持久化功能,由于SONiC对于redis的AOF功能并不存在依赖,上述的处理方式是可行的。
如果用户要求不能禁用AOF功能,那么AOF模式的持久化机制需要根据前述的方案内容进行设计。如果在步骤S21所述的命令流分流接口当中,没有采用基于命令流内容分流,即SONiC-redis之间的命令流不包含数据分类信息,那么,可以直接复用redis原生的AOF持久化功能。如果前序的设计依赖了命令流内容分流,且命令流的交互过程是加密的,此时,针对这些命令流的AOF持久化也需要进行加密,防止被攻击者觉察。但由于磁盘加密的过程容易对数据库运行造成阻塞,因而需要设计内存缓存机制,先将待保存的AOF命令流缓存在内存当中,然后并发一个进程来专门进行AOF存储。总之,AOF持久化的设计比较复杂且开销较大,需要根据实际用户需求和硬件资源来进行调整。
以上所述的一种网络操作系统中应用内生安全数据库存取方法的具体实施例,通过在数据库服务器层面上对数据进行异构编码和分发存储,能够实现各个数据体之间的相互隔离。攻击者无法通过任意数据体获得其他异构备份的信息,从而极大提高攻击成本。本方案是完全独立于硬件结构的轻量化软件设计,不依赖硬件结构意味着可以在绝对大多数平台上移植应用,并且在众多拟态改造方案当中成本最低。
与前述一种网络操作系统中应用内生安全数据库存取方法的实施例相对应,本发明还提供了一种网络操作系统中应用内生安全数据库存取装置的实施例。
参见图3,本发明实施例提供的一种网络操作系统中应用内生安全数据库存取装置,包括存储器和一个或多个处理器,所述存储器中存储有可执行代码,所述一个或多个处理器执行所述可执行代码时,用于实现上述实施例中的一种网络操作系统中应用内生安全数据库存取方法。
本发明一种网络操作系统中应用内生安全数据库存取装置的实施例可以应用在任意具备数据处理能力的设备上,该任意具备数据处理能力的设备可以为诸如计算机等设备或装置。装置实施例可以通过软件实现,也可以通过硬件或者软硬件结合的方式实现。以软件实现为例,作为一个逻辑意义上的装置,是通过其所在任意具备数据处理能力的设备的处理器将非易失性存储器中对应的计算机程序指令读取到内存中运行形成的。从硬件层面而言,如图3所示,为本发明一种网络操作系统中应用内生安全数据库存取装置所在任意具备数据处理能力的设备的一种硬件结构图,除了图3所示的处理器、内存、网络接口、以及非易失性存储器之外,实施例中装置所在的任意具备数据处理能力的设备通常根据该任意具备数据处理能力的设备的实际功能,还可以包括其他硬件,对此不再赘述。
上述装置中各个单元的功能和作用的实现过程具体详见上述方法中对应步骤的实现过程,在此不再赘述。
对于装置实施例而言,由于其基本对应于方法实施例,所以相关之处参见方法实施例的部分说明即可。以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本发明方案的目的。本领域普通技术人员在不付出创造性劳动的情况下,即可以理解并实施。
本发明实施例还提供一种计算机可读存储介质,其上存储有程序,该程序被处理器执行时,实现上述实施例中的一种网络操作系统中应用内生安全数据库存取方法。
所述计算机可读存储介质可以是前述任一实施例所述的任意具备数据处理能力的设备的内部存储单元,例如硬盘或内存。所述计算机可读存储介质也可以是任意具备数据处理能力的设备的外部存储设备,例如所述设备上配备的插接式硬盘、智能存储卡(Smart Media Card,SMC)、SD卡、闪存卡(Flash Card)等。进一步的,所述计算机可读存储介质还可以既包括任意具备数据处理能力的设备的内部存储单元也包括外部存储设备。所述计算机可读存储介质用于存储所述计算机程序以及所述任意具备数据处理能力的设备所需的其他程序和数据,还可以用于暂时地存储已经输出或者将要输出的数据。
以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。
Claims (15)
1.一种网络操作系统中应用内生安全数据库存取方法,其特征在于,所述内生安全数据库基于异构数据体进行设计,具体如下步骤:
步骤S1、网络操作系统与内生安全数据库之间通过安全通信机制进行交互,所述安全通信机制用于保护网络操作系统与内生安全数据库之间的交互过程不被监听和攻击;
步骤S2、内生安全数据库获得网络操作系统存储数据的指令,通过分发模块对数据进行存储,所述分发模块用于将数据分发到字典数据结构的异构键值空间中;
步骤S21、分发模块通过命令流分流接口处理网络操作系统下发的存储数据的指令,所述命令流分流接口用于对存储数据的命令流进行分类并获得需要异构存储的数据;
步骤S22、分发模块对所述需要异构存储的数据进行异构编码;
步骤S221、分发模块对数据键进行异构编码,具体包括对数据键的内容信息和数据键所对应的索引信息进行异构编码;
步骤S222、分发模块对数据值进行异构编码,具体是针对数据值的内容信息进行异构编码;
步骤S23、分发模块对所述异构编码的数据进行分发存储;
步骤S3、内生安全数据库获得网络操作系统读取数据的指令,通过裁决模块回复指定数据,所述裁决模块用于从异构编码后的数据中选择正确的数据;
步骤S4、内生安全数据库获得网络操作系统保存数据的指令,通过数据持久化模块对数据进行保存,所述数据持久化模块用于对普通数据体的持久化和对异构数据体的持久化。
2.如权利要求1所述的一种网络操作系统中应用内生安全数据库存取方法,其特征在于,所述步骤S1中所述安全通信机制包括网络消息加密和磁盘存储加密;所述网络消息加密用于对网络操作系统与内生安全数据库之间交互的网络消息进行加密处理;所述磁盘存储加密用于内生安全数据库持久化在磁盘上的数据进行加密处理。
3.如权利要求1所述的一种网络操作系统中应用内生安全数据库存取方法,其特征在于,所述步骤S21中所述的命令流分流接口具体包括以下两种分流机制:
基于命令流内容分流,具体是根据命令流内容中所包含的信息判断数据进行普通存储还是异构存储;
基于命令流去向分流,具体是根据命令流所对应的内生安全数据库的键值空间判断数据进行普通存储还是异构存储。
4.如权利要求1所述的一种网络操作系统中应用内生安全数据库存取方法,其特征在于,所述步骤S221中所述的对数据键的内容信息进行异构编码具体通过字典数据结构来组织键值空间,以数据对象对数据进行封装。
5.如权利要求1所述的一种网络操作系统中应用内生安全数据库存取方法,其特征在于,所述步骤S221中所述的数据键所对应的索引信息进行异构编码具体包括以下两种方式:
对数据键的内容信息异构编码之后再进行哈希运算,从而得到数据键所对应的索引信息;
采用多种哈希算法,随机选取其中之一对数据键进行哈希运算,从而得到数据键所对应的索引信息。
6.如权利要求1所述的一种网络操作系统中应用内生安全数据库存取方法,其特征在于,所述步骤S222中所述的数据值的异构编码的方式包括以下任意一种或两种的组合:数据组织形式的异构编码或数据内容格式的异构编码。
7.如权利要求6所述的一种网络操作系统中应用内生安全数据库存取方法,其特征在于,所述数据组织形式的异构编码包括但不限于以下几种编码方式的组合:压缩列表编码,字典编码或有序链表编码。
8.如权利要求1所述的一种网络操作系统中应用内生安全数据库存取方法,其特征在于,所述步骤S23中所述的分发存储包括以下两种方式:
集中式分发存储,所述集中式分发存储指的是异构编码后的数据放置在同一个键值空间当中;
分散式分发存储,所述分散式分发存储指的是异构编码后的数据放置在不同的键值空间当中。
9.如权利要求1所述的一种网络操作系统中应用内生安全数据库存取方法,其特征在于,所述步骤S3中所述的裁决模块具体包含以下两种触发形式:
数据读取触发,内生安全数据库接收到数据读取指令后,获取对应的异构存储信息,裁决模块对所述异构存储信息进行裁决,获得正确的数据;
同步周期触发,以一定的时间周期,遍历所有的异构数据体,采用裁决策略将其中不一致的数据进行修正;若裁决失败,说明该数据被损坏严重,则需要通知网络设备操作系统,网络设备操作系统再针对该事件进行处理。
10.如权利要求9所述的一种网络操作系统中应用内生安全数据库存取方法,其特征在于,所述异构数据体的时间周期性同步分为以下几种类型:阻塞型、单步型或时间窗型。
11.如权利要求1所述的一种网络操作系统中应用内生安全数据库存取方法,其特征在于,所述步骤S4中所述的对异构数据体的持久化具体包含以下子步骤:
步骤S41、通过加密存储模块对异构数据体进行加密存储;
步骤S42、通过存储管理模块跟其他各个模块进行交互。
12.如权利要求11所述的一种网络操作系统中应用内生安全数据库存取方法,其特征在于,所述步骤S41中具体包括两种实现方式:
在同一个文件当中,对特定区间的文件内容进行加密;
将数据库当中的普通数据体和异构数据体分别存储在两个文件当中,只对异构数据体的存储文件进行整体加密。
13.如权利要求11所述的一种网络操作系统中应用内生安全数据库存取方法,其特征在于,所述步骤S42中具体包括两种实现方式:
RDB持久化,对内生安全数据库当中的数据进行保存,由网络操作系统主动发送命令时执行;
AOF持久化,对内生安全数据库服务器接收到的命令流进行保存,默认状态下不开启,开启后,会在服务器与客户端交互的过程当中自动保存命令流。
14.一种网络操作系统中应用内生安全数据库存取装置,其特征在于,包括存储器和一个或多个处理器,所述存储器中存储有可执行代码,所述一个或多个处理器执行所述可执行代码时,用于实现权利要求1-13中任一项所述的一种网络操作系统中应用内生安全数据库存取方法。
15.一种计算机可读存储介质,其特征在于,其上存储有程序,该程序被处理器执行时,实现权利要求1-13中任一项所述的一种网络操作系统中应用内生安全数据库存取方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210838413.1A CN115001852B (zh) | 2022-07-18 | 2022-07-18 | 一种网络操作系统中应用内生安全数据库存取方法和装置 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202210838413.1A CN115001852B (zh) | 2022-07-18 | 2022-07-18 | 一种网络操作系统中应用内生安全数据库存取方法和装置 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN115001852A CN115001852A (zh) | 2022-09-02 |
CN115001852B true CN115001852B (zh) | 2022-11-08 |
Family
ID=83022786
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202210838413.1A Active CN115001852B (zh) | 2022-07-18 | 2022-07-18 | 一种网络操作系统中应用内生安全数据库存取方法和装置 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115001852B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115495059B (zh) * | 2022-09-23 | 2023-10-31 | 北京曼恒数字技术有限公司 | 一种数据结构的创建方法 |
CN115833985A (zh) * | 2022-11-16 | 2023-03-21 | 中国联合网络通信集团有限公司 | 时间同步方法、装置、通信终端和存储介质 |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN112182018A (zh) * | 2020-10-16 | 2021-01-05 | 华东计算技术研究所(中国电子科技集团公司第三十二研究所) | 面向web应用的拟态构造数据库访问系统及方法 |
CN112383528A (zh) * | 2020-11-09 | 2021-02-19 | 浙江大学 | 一种拟态waf的执行体构建方法 |
US11188419B1 (en) * | 2020-05-28 | 2021-11-30 | International Business Machines Corporation | Namespace indices in dispersed storage networks |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9652344B2 (en) * | 2015-06-11 | 2017-05-16 | International Business Machines Corporation | In-memory data store replication through remote memory sharing |
CN105701200B (zh) * | 2016-01-12 | 2019-08-20 | 中国人民大学 | 一种内存云计算平台上的数据仓库安全olap方法 |
US10868674B2 (en) * | 2016-08-12 | 2020-12-15 | ALTR Solutions, Inc. | Decentralized database optimizations |
CN111460493A (zh) * | 2020-03-24 | 2020-07-28 | 上海红阵信息科技有限公司 | 一种基于拟态构造的sql数据库构建方法 |
CN113835685B (zh) * | 2021-11-26 | 2022-02-18 | 之江实验室 | 一种基于拟态数据库的网络操作系统设计方法 |
CN114398683B (zh) * | 2022-03-24 | 2022-06-10 | 之江实验室 | 一种基于异构子系统的内生安全数据库存储方法及装置 |
CN114500114B (zh) * | 2022-04-14 | 2022-07-12 | 之江实验室 | 一种网络操作系统中应用的拟态数据库交互方法和装置 |
-
2022
- 2022-07-18 CN CN202210838413.1A patent/CN115001852B/zh active Active
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11188419B1 (en) * | 2020-05-28 | 2021-11-30 | International Business Machines Corporation | Namespace indices in dispersed storage networks |
CN112182018A (zh) * | 2020-10-16 | 2021-01-05 | 华东计算技术研究所(中国电子科技集团公司第三十二研究所) | 面向web应用的拟态构造数据库访问系统及方法 |
CN112383528A (zh) * | 2020-11-09 | 2021-02-19 | 浙江大学 | 一种拟态waf的执行体构建方法 |
Also Published As
Publication number | Publication date |
---|---|
CN115001852A (zh) | 2022-09-02 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN115001852B (zh) | 一种网络操作系统中应用内生安全数据库存取方法和装置 | |
US11777646B2 (en) | Distributed storage system data management and security | |
RU2408070C2 (ru) | Механизмы обнаруживаемости и перечисления в иерархически защищенной системе хранения данных | |
US20210019063A1 (en) | Utilizing data views to optimize secure data access in a storage system | |
US8185614B2 (en) | Systems, methods, and apparatus for identifying accessible dispersed digital storage vaults utilizing a centralized registry | |
US9672274B1 (en) | Scalable message aggregation | |
US11636217B2 (en) | Systems and methods for breach-proof, resilient, compliant data in a multi-vendor cloud environment and automatically self heals in the event of a ransomware attack | |
US11080253B1 (en) | Dynamic splitting of contentious index data pages | |
CN108289098B (zh) | 分布式文件系统的权限管理方法和装置、服务器、介质 | |
US9753792B2 (en) | Method and system for byzantine fault tolerant data replication | |
JP7000422B2 (ja) | データストレージシステムおよびデータストレージを実行するための方法 | |
CN113835685B (zh) | 一种基于拟态数据库的网络操作系统设计方法 | |
CN113661490B (zh) | 用于安全地存储数据的方法和系统 | |
US20070162523A1 (en) | System and method for storing a data file backup | |
US11431488B1 (en) | Protecting local key generation using a remote key management service | |
CN104657672A (zh) | 用于对数据安全存档的方法和系统 | |
CN106776795B (zh) | 基于Hbase数据库的数据写入方法及装置 | |
CN112912870A (zh) | 租户标识符的转换 | |
CN100386737C (zh) | 基于包结构的数据恢复方法 | |
US11868500B2 (en) | Fine-grained access control of column-major relational database management systems | |
CN114036538A (zh) | 一种基于虚拟块设备的数据库透明加解密实现方法及系统 | |
US20220385596A1 (en) | Protecting integration between resources of different services using service-generated dependency tags | |
EP4231168A1 (en) | Mimic storage system and method for data security of industrial control system | |
CN114969722A (zh) | 一种支撑多数据类型的政务数据隐私计算系统 | |
CN112486941A (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 |