CN107533614A - 使用语义关系修改数据元素 - Google Patents

使用语义关系修改数据元素 Download PDF

Info

Publication number
CN107533614A
CN107533614A CN201580079042.1A CN201580079042A CN107533614A CN 107533614 A CN107533614 A CN 107533614A CN 201580079042 A CN201580079042 A CN 201580079042A CN 107533614 A CN107533614 A CN 107533614A
Authority
CN
China
Prior art keywords
data
processor
amended
multiple data
data element
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.)
Granted
Application number
CN201580079042.1A
Other languages
English (en)
Other versions
CN107533614B (zh
Inventor
A·J·鲍德温
P·戈德萨克
B·Q·莫纳汉
P·赖内克
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hewlett Packard Development Co LP
Hewlett Packard Enterprise Development LP
Original Assignee
Hewlett Packard Enterprise Development LP
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hewlett Packard Enterprise Development LP filed Critical Hewlett Packard Enterprise Development LP
Publication of CN107533614A publication Critical patent/CN107533614A/zh
Application granted granted Critical
Publication of CN107533614B publication Critical patent/CN107533614B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F12/00Accessing, addressing or allocating within memory systems or architectures
    • G06F12/02Addressing or allocation; Relocation
    • G06F12/0223User address space allocation, e.g. contiguous or non contiguous base addressing
    • G06F12/023Free address space management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/64Protecting data integrity, e.g. using checksums, certificates or signatures
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic
    • H04L63/1491Countermeasures against malicious traffic using deception as countermeasure, e.g. honeypots, honeynets, decoys or entrapment

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • General Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Computing Systems (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Storage Device Security (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

一种装置,包括用于存储数据的存储器以及耦合到所述存储器的处理器。所述处理器可以使用多个数据元素之间的语义关系和预先选择的数据安全性策略来修改所述多个数据元素,以将表示修改后的多个数据元素的数据存储在所述存储器中。

Description

使用语义关系修改数据元素
背景技术
数据可以存储在存储器中,并且可以由用户或应用存取。存取数据可以涉及读取数据、存储额外数据或修改数据。一些装置可以使用处理器来存取存储器。一些存储器可以由多个用户、应用和/或处理器存取。
附图说明
图1是示例性装置的示意性框图。
图2是与图1的装置相比较时修改的另一示例性装置的示意性框图。
图3A是示出示例性数据类型的简化图示。
图3B是概述数据元素的分层级别的次序的示意图。
图4是根据示例的修改的多个数据元素的示意图。
图5是根据示例改变数据的示意图。
图6是根据示例的预先选择数据安全性策略的示意可视化图。
图7是根据示例的与标记有关的表的示意图;
图8是根据示例的存储器布局的示意图。
图9是用于检查标记的示例性装置的示意性框图。
图10是与图9的装置相比较时修改的用于检查标记的另一示例性装置的示意性框图。
图11是根据示例的系统的功能之间的关系的示意图;
图12是概述用于修改数据元素的示例性方法的示意性流程图。
图13是概述用于检查数据元素的示例性方法的示意性流程图。
图14是示例性数据类型的实现的示意图。
具体实施方式
下面的示例和描述通常涉及与存储在存储器中的数据和数据类型有关的装置、方法和机器可读指令。数据类型可以影响或定义由用户或应用使用的和/或存储在存储器中的信息的结构。
本文描述的示例提供一种装置,其包括用于存储数据的存储器和耦合到存储器的处理器。处理器可以部分地或完全地以硬件实现。根据示例,处理器可以包括或可以被实现为CPU(中央处理单元)、GPU(图形处理单元)和/或FPGA(现场可编程门阵列)。处理器可以使用多个数据元素之间的语义关系和预先选择的数据安全性策略来修改多个数据元素。处理器可以在存储器中存储表示修改后的多个数据元素的数据。预先选择的数据安全性可以涉及针对接收到的数据要实现的保护的种类或类别。例如,安全性可以涉及防止传输错误、存储错误、数据泄露、发布数据和/或滥用数据的安全性。使用数据元素的语义关系来修改多个数据元素可以例如通过防止冗余的计算工作并因此允许节省时间来允许以高效率保护和/或存储数据。
本文描述的其他示例提供一种装置,其包括用于接收表示修改后的多个数据元素的数据的输入端。当与未被修改的多个数据元素相比较时,可以修改数据元素的语义关系。该装置可以包括输出端和处理器。处理器可以耦合到输入端和输出端。处理器可以使用修改后的多个数据元素的语义关系来检查修改后的多个数据元素的修改,并向输出端提供信号,所述信号指示修改后的多个数据元素的安全性状态。这可以允许使用语义关系来检查标记。数据可以由包括存储数据的存储器和耦合到存储器的处理器的装置提供。处理器可以接收表示多个数据元素的数据,确定接收到的数据的多个数据元素之间的语义关系,使用所述语义关系和预先选择的数据安全性策略来修改多个数据元素,并在存储器中存储表示修改后的多个数据元素的数据。接收装置可以包括输出端和耦合到输入端和输出端的处理器。处理器可以确定修改后的多个数据元素的数据类型,使用确定出的数据类型来确定在存储修改后的多个数据元素之前修改多个数据元素所根据的原理,并向输出端提供信号,该信号表示所述原理等于或者根据接收到的数据的预先选择的数据安全性策略或者不等于或不相等于该预先选择的数据安全性策略。
本文描述的其他示例可以提供编码有能够由处理器执行的指令的非暂时性机器可读存储介质,所述机器可读存储介质包括用于接收表示多个数据元素的数据的指令,用于确定接收到的数据的多个数据元素之间的语义关系的指令,用于使用所述语义关系和预先选择的数据安全性策略来修改多个数据元素的指令,用于将表示修改后的多个数据元素的数据存储在存储器中的指令,用于确定修改后的多个数据元素的数据类型的指令,用于使用确定出的数据类型来确定在存储修改后的多个数据元素之前修改多个数据元素所采用的方式的指令,以及用于提供表示修改后的多个数据元素是否按照预先选择的数据安全性策略进行修改的指令。
本文所描述的其他示例可以提供编码有能够由处理器执行的指令的非暂态机器可读存储介质,所述机器可读存储介质包括用于确定修改后的多个数据元素的数据类型的指令,用于使用确定出的数据类型来确定在存储修改后的多个数据元素之前修改多个数据元素所采用的方式的指令,用于使用多个数据元素的确定出的数据类型和在存储修改后的多个数据元素之前修改多个数据元素的方式来确定用于检查修改后的多个数据元素的数据完整性的机制的指令,用于将用于检查数据完整性的机制应用于修改后的多个数据元素的指令,以及用于在输出端提供信号的指令,所述信号表示确定出的数据完整性或确定出的对数据完整性的违背。
本文描述的示例可以涉及数据元素之间的结构关系。数据元素可以是部件、子数据类型或另一数据类型的字段。数据类型将多个数据元素彼此相关以形成组合和/或分层结构。数据类型可能被所谓的类型构造器定义或影响,所述类型构造器表明数据元素的数量,数据元素的类型,次序,组合和/或分层级别。分层级别可以与组合结构中的层或级有关。因此,类型构造器可以通过类型构造器的语义来定义组合结构,以便获得数据元素之间的语义关系。示例性类型构造器可以是用于定义一组相等数据元素的“列表”或用于定义被组合或组成到记录的一组相等或不相等的数据元素的“记录”。所述一组相等或不相等的数据元素可以包括组合结构的变化。简化后,数据元素的语义关系可以与数据元素之间的组合和/或分层结构有关。组合结构可以被理解为由彼此之间的多个数据元素的存在和关系组成的结构。分层结构可以被理解为一种组合结构,其中多个数据元素被分组以形成数据类型或其部件。例如,分层级别可以由所谓的类型构造器(例如,“联合”、“记录”、“列表”等)部分地表示。使用组合结构的示例和使用分层结构的示例可以被组合和/或彼此互换而没有限制。
本文描述的示例可以涉及用于修改要保护的数据的预先选择的数据安全性策略。要保护的数据可以是通过类型构造器在语义上相关的多个数据元素。预先选择的数据安全性策略可以由用户和/或程序员选择。根据其他示例,可以自动地选择预先选择的数据安全性策略。根据其他示例,应用可以请求固定的预先选择的安全性策略。预先选择的安全性策略可以涉及诸如“保护数据免于何种危险”的任务。例如,预先选择的数据安全性策略可以期望保护数据免被泄露,确定数据已经被泄露,即,确定数据的来源或所有权。预先选择的数据安全性策略可以期望保持数据秘密和/或保护数据免于由于传输和/或存储导致的错误,即保持数据的完整性。例如,预先选择的数据安全性策略可以期望通过提供对包含在多个数据元素中的数据类型和/或信息的恶意修改的检测来确保完整性。
可以通过修改要保护的数据来满足或实现预先选择的数据安全性策略。因此,预先选择的数据安全性策略可以包括允许选择修改类型的信息。修改可以涉及向多个数据元素添加额外数据元素。额外数据元素可以例如是所谓的标记或更多数量的标记。因此,通过应用标记,额外数据元素或其更多数量可以与多个数据元素组合。根据其他示例,修改可以涉及部分地改变,即,改变多个数据元素或包含在数据元素中的信息。改变可以被理解为在数据元素中插入小的错误,这可能在较小的程度上被忽略或被感知。例如,当提及包含文本信息的数据元素时,该文本将由应用显示,处理器可以改变看起来类似的字符和/或数字。例如,数字“1”可以被改变为字母“l”,或者反之亦然。例如,数字“0”可以被改变为字符“O”和/或反之亦然,或者数字“5”可以被改变为字符“S”和/或反之亦然,或者大写字母I(例如在“Inversion”一词中使用)可以被改变为例如在letter中使用的字母l。两个字符可以看起来相似,但是例如在使用ASCII码时会被不同地编码。因此,虽然不可感知或仅在最小程度被感知,但是可以例如使用处理器清楚地确定改变。这可以被理解为插入水印。根据其他示例,修改可以涉及添加额外数据元素或多个额外数据元素,并且部分地改变多个数据元素。因此,预先选择的数据安全性策略可以是指示所选择的标记的信息。
通过非限制性示例,标记可以是完整性标记(例如,所谓的金丝雀(canary)),机密性标记(例如,所谓的蜜罐令牌),加密代码(例如,散列或密码强度数据散列),校验和和/或添加的修改(例如,水印)。例如,计算机系统中的故障和/或错误会导致存储器内容被覆写。这会导致破坏数据的内容和结构,例如,列表结构。在存储器中的数据项或数据元素之间插入的完整性标记可以允许检测和防止这种影响。完整性标记可以被理解为具有已知值的额外数据。如果发现已知值被更改,则数据本身可能已被改变。添加到多个标记的标记可以允许随着多个数据元素被改变而获得新的数据类型。表明语义关系的信息可以保持不变。例如,类型构造器可以保持不变。根据其他示例,修改后的多个数据元素可以包括表示新的(即修改后的)数据类型的信息。利用语义关系(即,数据类型)的知识来应用的标记可以被称为应用类型感知标记。
根据示例,可以例如使用处理器来检查通过本文描述的修改获得的修改后的多个数据元素,或者验证是否违反了数据安全性。根据示例,这样的处理器可以利用在修改数据元素时使用的语义关系的知识。当确定修改后的数据元素的类型构造器时,处理器可以获得语义关系的知识。根据其它示例,处理器可以接收与新数据类型相关的信息和/或表示修改的信息。处理器可以使用该信息查找在数据库中应用的修改类型。通过非限制性示例,对于应用标记,处理器可以使用包括接收到的记录字段的记录的信息,并且可以确定或计算整个记录上的加密代码。所述代码可以作为额外的数据元素被添加,以便获得修改后的多个数据元素。修改后的多个数据元素可以被存储和/或传输。根据另一非限制性示例,可以获得修改后的多个数据元素,即,通过传输接收或在存储器中存取。处理器可以确定额外数据元素。例如,这可以是不是由类型构造器等描述的数据元素。额外数据元素可以表示例如当包括预定义的数据长度或预定义的结构时其实现的修改类型。根据其他示例,修改后的类型构造器可以表示修改和/或未修改的数据类型。根据其他示例,处理器可以具有预先选择的数据安全性策略的知识和/或未修改的数据元素的类型的知识。处理器可以自己确定修改后的数据元素的参考,并对确定出的参考和额外数据元素进行比较。根据其他示例,处理器可以确定修改后的多个数据元素是否包括水印。处理器可以例如在存取包括水印的数据库时,针对一个或更多数量的水印来搜索修改后的多个数据元素。
图1是包括存储器12和处理器14的装置10的示意性框图。存储器12用于存储数据,并且可以被存取用于存储数据和/或用于传送数据。存储器12可以是易失性存储装置或非易失性存储装置,例如随机存取存储器、硬盘驱动、压缩盘随机存取存储器驱动、闪速存储器等。处理器14可以耦合到存储器12。处理器14可以使用在数据元素18a-b的多个数据元素19之间的语义关系24和预先选择的数据安全性策略26来修改数据元素18a-b的多个数据元素19。基于改修改,可以获得修改后的多个数据元素19'。处理器14可以使表示修改后的多个数据元素19'的数据存储在存储器12中。
语义关系24可以涉及数据元素18a-b之间的组合结构。例如可以通过描述多个数据元素19的数据类型的类型构造器来影响或指示组合结构。
图2是另一装置10'的示意性框图。装置10'可以包括处理器14和存储器12。处理器14可以耦合到存储器12。处理器14可以从数据源17接收数据16,数据16表示多个数据元素18a和18b。数据16可以作为数据信号的一部分被接收。数据元素18a和/或18b可以是由程序、装置和/或用户使用或生成的机器级数据。数据元素18a和/或18b可以控制诸如机器人的装置。处理器14可以在输入端22a处接收数据16。其它示例提供处理器以在输入端或输入/输出端口22b处从存储器12接收数据16。数据源17可以是用于提供或生成数据的任何远程或本地源,例如其上存储有数据16的存储器,用于生成数据16的应用或基于用户命令提供数据16的用户接口。输入端22a和/或输出端22b可以是部件或物理实体,例如引脚、用于提供或接收信号的端口,或端子。
处理器14可以确定接收到的数据16的数据元素18a、18b的多个数据元素19之间的语义关系24。处理器14可以计算语义关系24和/或可以接收语义关系24。例如,语义关系24可以经由输入端22a和/或从存储器12接收。根据示例,处理器14可以确定数据16的数据类型,并且可以基于数据类型来确定语义关系24。
处理器14可以使用语义关系24和预先选择的数据安全性策略26来修改多个数据元素18a,18b。为了修改多个数据元素19,处理器14可以生成或添加额外数据元素和/或改变多个数据元素18a、18b。简单来说,数据元素18a和18b可以是要被保护的数据。通过应用标记,可以获得额外数据元素,例如包括校验和或蜜罐令牌。可以使用预先选择的数据安全性策略来导出要应用于多个数据元素的修改。如稍后将更详细地描述的,预先选择的数据安全性策略可以涉及保护的属性,例如,局部性、保密性和/或内容依赖性。属性可以用于确定要应用的多个标记。语义关系24可以由处理器通过基于对哪些数据元素或数据元素集合实现的语义关系标记进行确定的方式来使用。通过非限制性示例,这包括如何相互组合地读取、存储或修改数据元素,从而可以将标记应用于彼此组合进行读取、存储或修改的数据元素集合。
数据元素的数量可以是单个数据元素。根据其他示例,数据元素的数量可以包括较高的值,例如2、3、5或更多。额外数据元素可以包括或者是多个标记。多个标记可以是一个标记或一组标记。更改数据可以包括信息和/或数据位的改变,如稍后将更详细描述的。
处理器14可以提供包括修改后的多个数据元素19'的信号83。数据元素的多个数据元素19可以是数据的大规模数据,即,大规模数据。数据元素数据的多个数据元素19的修改可以允许使用语义关系24根据预先选择的数据安全性策略来保护数据元素的多个数据元素19。这可以允许促进数据的完整性和/或机密性。使用语义关系24可以允许以要保护的数据的大小的低依赖性来保护数据,即,数据的大小可能对标记的大小和计算工作影响不大。如稍后将更详细地描述的,这可以允许有效地使用标记,例如使用少量的时间和/或低的或有效量的存储容量。数据类型可以定义数据元素的多个数据元素18之间的语义关系24。修改后的数据类型可以定义数据元素的修改后的多个数据元素19'之间的语义关系,其中数据元素的修改后的多个数据元素19'的语义关系可以涉及类型构造器的修改和/或类型构造器中的额外信息。数据元素的修改后的多个数据元素19'可以被表示为修改后的数据类型。例如,修改后的类型构造器可以表示修改和/或未修改的数据类型,以表示多个数据元素的类型和/或修改类型和/或表示预先选择的数据安全性策略的信息。处理器14可以生成指示表示数据元素的修改后的多个数据元素19'的数据的数据类型的信息。例如,处理器可以存储表示在存储之前修改数据元素18a-i的多个数据元素19的方式或方法的信息,例如,修改类型和/或修改的组合/分层级别。在下文中,还将修改数据元素18a-i的多个数据元素19的方式或方法称为原理。处理器14可以在输出端(例如,端口22b)处提供这样的信息和/或将该信息存储在存储器12中。处理器14可以从存储器12读取或取回数据元素的多个数据元素19'。处理器14可以检查应用的修改。例如,额外数据元素可以包括校验和。处理器14可以确定数据元素18a-i或其集合的校验和是否正确。处理器14可以使用修改后的多个数据元素19'的类型和/或预先确定的安全性策略26。因此,处理器14可以检查数据元素的多个数据元素19或修改后的多个数据元素19'的有效性。
处理器14可以导出与应用于数据元素的多个数据元素19的修改相关的信息。例如,处理器14可以生成修改的类型构造器或表示应用的修改类型的其他信息。处理器14可以将与应用于数据元素的多个数据元素19的修改相关的信息存储在存储器(例如,存储器12)中。当读取数据元素时或当关于违反数据安全性来检查标记时,处理器14可以使用与应用于数据元素的多个数据元素19的修改相关的信息。可以根据系统、装置、应用和/或用户的策略来检查标记。例如,当经由诸如互联网或外部存储设备的传输信道接收到修改后的多个数据元素时,可以检查标记。根据其他示例,当从其上存储有数据元素的修改后的多个数据元素19'的存储器读取数据时,可以检查标记。
简化地,装置10'可以保护数据或大规模数据的完整性和/或机密性。处理器10'可以系统地将标记应用于机器级数据16。装置10'可以改变数据,以便例如通过改变数据的小部分来实现类型感知标记。由装置10'实现的标记可以用于例如以独立的方式检查数据完整性和/或机密性属性,即,可以通过与应用标记的装置的不同装置来检查标记。根据其它示例,装置10'可以插入额外数据元素并改变数据元素。装置10'可以读取数据元素18a-b的修改后的多个数据元素19'。处理器14可以检查所应用的修改。这可以允许识别从系统或装置泄漏出的数据。
这里描述的示例涉及大规模数据的基于系统策略的类型感知完整性和机密性标记。该标记可以使用根据预先选择的数据安全性策略应用的标记。标记可以用于检查数据完整性(即,没有未授权的修改)和数据机密性(即,检查数据是否已经被传送到未授权的位置)。位置可以涉及未授权的应用或物理位置,例如装置。这种检查能够检测数据安全性的违反,而不管它们是通过安全机制执行还是通过规避这些机制(例如,通过直接存储器存取)执行。可以通过将各种类型的标记与数据元素一起存储并引入对这些标记的完整性和/或存在的检查,来支持对预先选择的数据安全性策略的这种违反的检测。
本文所描述的示例可以允许在机器级别系统地将类型感知完整性和机密性标记包含在存储器内的数据中。然后,可以使用这些标记来检查并确保数据的完整性和/或机密性,因为数据在诸如分布式和/或联合存储器的存储器内被操纵和/或复制,或者被跨越系统边界导出。其中描述的示例允许针对低计算工作和/或执行计算的低时间量方面的存储器和CPU效率,在语义级别(即,基于语义关系)检查数据的完整性和/或机密性,用于插入和检查标记,并且用于在检查语义级别完整性和/或机密性时独立的操作(例如,独立于创建或修改数据的程序)。
处理器14可以接收数据元素的修改后的多个数据元素19'。处理器14可以确定和/或判断数据元素的安全性是否已被违反或者满足(即不违反)。例如,处理器14可以使用修改多个数据元素19所根据的原理,或者表示以哪种方式执行修改的信息,用于检查数据元素的安全性是被违反还是被满足。例如,处理器14可以存储和/或从存储器12读取表示所述原理的信息。该信息可以是表示所应用的修改类型的信息。
如果违反了数据安全性,则可以通过装置10、10'或其他装置来检查标记以获得信息。例如,装置10和/或10'可以在原位(即,在应用标记的位置处)检查标记。将结合图9和图10描述的诸如装置90或90'的不同装置可以在例如使用有线或无线数据连接发送修改后的数据元素之后和/或在数据存储设备上传输之后来检查标记。标记可以允许以系统的方式,即利用来自另一系统的语义关系,结构化地内省(introspecting)存储器等。因此,标记使得能够从一些其它机器安全地执行完整性检查和分析/相关等。第二系统(即,不同的装置)可以是监视系统,用于实现检查或监视数据的视察方面的内省系统。
处理器14可以使用语义关系24和预先选择的数据安全性策略26来确定用于检查数据元素的修改后的多个数据元素19'的数据完整性的机制,并且基于该机制修改数据元素的多个数据元素19。处理器可以使用如何检查特定标记的信息。可以由处理器14通过确定额外数据元素的结构和/或使用表示所应用的修改类型的信息来识别特定标记。因此,处理器14可以确定修改多个数据元素19所根据的原理。这可以涉及确定修改类型,例如,多个标记,待应用标记的数据元素或其层,和/或待应用的改变类型。处理器14可以确定用于检查数据完整性的机制,即,检查标记、变更和/或数据元素本身的机制。
处理器14可以基于优化来确定用于检查数据完整性的机制。该优化涉及在数据元素的进一步使用期间修改和/或检查数据元素的多个数据元素19的计算工作。处理器14可以使用确定出的原理修改数据元素的多个数据元素19,并使用确定出的机制来检查修改后的多个数据元素。可以例如在更新诸如记录或数据库条目的数据时执行对数据元素的多个数据元素19的修改。
图3A是示例性数据类型32的简化图示。可以根据组合或分层结构对多个数据元素18a-i进行排序。语义关系可以涉及数据元素18a-i的组合结构或数据元素18a-i之间的关系。在接收数据16时,可以例如由装置10和/或10'接收多个数据元素18a-i。语义关系可以涉及数据元素18a-c彼此的组合和/或分层关系,数据元素18a-c形成记录28a。其他数据元素18d-f和/或18g-i可以形成其他记录28b和/或28c。记录可以由用于构造数据类型记录的类型构造器形成。根据其他示例,可以使用其他类型构造器。根据其他示例,语义关系可能受到诸如分层或彼此关系的组合形式的影响,但也可以由每个元素18a-i的数据类型表示。语义关系可以包括分层信息,即,数据元素可以按照块的方式进行分组,其中块可以包括进一步的语义关系。进一步的语义关系可以包括进一步的分层级别,其中例如通过用于多个数据元素18a-c的数据类型来定义分层级别的次序和/或结构。
例如,数据元素18a-c可以是诸如条目的字段的(例如,累积数据类型32的记录28a)的部件。累积数据类型可以是列表、数据对象或累积记录的一组记录。数据类型32可以允许使用语义关系来构造多个记录28a-c,每个记录使用语义关系分别构造多个数据元素18a-c、18d-e、18g-i。处理器可以确定第一分层级别,例如,数据元素18a-c、18d-f和/或18g-i之间的语义关系被相关为记录28a、28b和28c。处理器可以确定第二分层级别,例如,记录28a-c是数据类型32的一部分。第一和第二分层级别可以指示数据元素18a-i之间的关联级别。
其他示例可以提供处理器来确定语义关系,例如与程序或应用相关的不同文件、比特流中的不同位置等。
示例提供一种装置,例如装置10和/或10',包括诸如处理器14的处理器。处理器可以确定多个数据元素之间的语义关系。处理器可以使用与信息记录相关联的数据元素的分层结构和/或使用由提供多个数据元素的数据源提供的信息。数据源可以是装置或存储器。由数据源提供的信息可以表示分层结构,从而处理者可以在不检查数据元素的结构的情况下使用这样的信息。例如,可以将诸如数据元素18a-i到记录28a-c到数据类型32之间的关系的分层信息存储在存储器中。
处理器可以确定多个数据元素18a-c中的第一和第二分层级别。处理器可以使用优化来选择第一和/或第二分层级别,以修改所选择的分层级别中的多个数据元素。仅通过非限制性示例,分层级别可以参考数据元素18a-i的级别、记录28a-c的级别和/或数据类型32的级别。优化可以涉及在进一步使用数据元素期间修改多个数据元素的计算努力。根据其他示例,优化可以涉及存储器容量的使用。例如,通过使用语义关系,当与在字节级别或针对每个数据元素使用标记相比较时,标记可以用于保存存储器容量的合适的数据元素集合。
例如,处理器可以共同地修改数据元素18a-c,即,修改可以涉及多个数据元素18a-c。简化地,处理器14可以使用语义关系。通过非限制性示例,处理器14可以利用数据元素18a-c通过记录28a彼此相关或相关联的知识。例如,一个标记可以用于标记或保护记录28a,因为处理器14已知记录28a并且因此元素18a-c可以通过应用被共同地读取或修改。
图3B是概述分层级别21a-c的次序的示意图。处理器可以确定与数据元素18相关联的第一分层级别21a。处理器可以确定与记录28相关联的第二分层级别21b。处理器可以确定与数据类型32相关联的第三分层级别21c。因为记录28和数据类型32可以涉及数据元素的结构或语义关系,所以分层级别21a-c可以表示数据元素18之间的关联。
处理器可以选择分层级别21a-c中的一个作为应用于修改的分层级别。处理器可以在所选择的分层级别中使用优化并修改多个数据元素。优化可以涉及在进一步使用数据元素期间用于修改数据元素18的多个数据元素19的计算工作。该优化还可以涉及用于将数据元素18的多个数据元素19存储为修改后的多个数据元素19'的存储消耗。优化还可以涉及计算工作和存储消耗的组合。换句话说,可以应用优化以便允许所插入的标记在计算和/或存储方面是有效的。
图4是修改后的多个数据元素19'的示意图。例如,处理器14可以向数据元素18a-c的多个数据元素19添加额外信息34,以便获得修改后的多个数据元素19'。额外信息34可以是完整性标记,即,具有已知值的信息,加密代码,蜜罐令牌,即,具有值的信息或在泄露的数据集中存在的可以表示数据集的所有权的信息。处理器可以添加与数据元素18a、18b和/或18c有关的额外信息34。处理器可以针对第一和/或第二数据元素和/或针对每个数据元素分别或共同地添加额外信息34。根据其他示例,处理器可以添加与多个数据元素19有关的额外信息34,其可以是记录28a。根据其他示例,处理器可以添加与数据类型32相关的额外信息34。当参考图3A时,当添加额外信息34时,可以改变记录28a-c的结构。处理器可以导出与新的数据类型,即修改后的数据类型,相关的信息36。根据其他示例,信息36可以表示修改多个数据元素所根据的原理或机制。这种信息可以由修改后的数据类型或诸如标记类型和/或与数据元素的组合结构相关的信息的其他信息来表示。信息36可以由另一装置和/或应用使用。处理器14可以将信息36存储在诸如存储器12的存储器中,并且在提取数据元素18a-c时使用信息36。信息36可以涉及被实现的修改的种类或类型,实现修改所处的分层级别和/或修改量(例如,标记或水印的长度)。
图5是通过改变数据的数据的修改的示意图。当修改多个数据元素时,处理器可以改变诸如数据元素18的数据元素。这可以被理解为插入水印。可以将该改变理解为在数据元素18中插入小错误,该小错误可能不被感知或在最小程度上被感知。例如,数据元素18可以包含文本信息,该文本要由应用显示,处理器可以改变看起来类似的字符和/或数字。例如,处理器可以将数字“1”改变为字母“l”或反之亦然。例如,处理器可以将数字“0”改变为字符“O”和/或反之亦然,或将数字“5”改变为字符“S”和/或反之亦然。处理器14可以将字母改变为不同的字母和/或将数字改变为不同的数字。例如,处理器可以将大写字母I(例如,在Inversion中使用的)改变为字母l(例如,在letter中使用的)。根据其他示例,处理器可以根据预定模式改变图像数据。该模式可以由用于检查标记的装置来确定。例如,当数据元素18指代图像数据时,可以实现关于改变图像数据的小的修改,其中修改可以保持在观看图像时不被感知。
处理器可以确定用于改变信息的数据元素。例如,可以由处理器不同地评估包括指代名称的数据元素、指代街道的数据元素和/或指代电子邮件地址的数据元素的记录28。例如,处理器可以确定改变代表名称和街道的信息是适当的,其中电子邮件地址的改变可能是不适当的,因为电子邮件地址会包含字符和数字,从而修改可能导致通信中的失真。
额外信息34和信息的改变可以被称为标记。处理器可以使用标记来实现数据保护。标记可以是能够支持指定的数据安全性策略的任何标记。数据安全性策略可以例如由用户或应用来指定。当再次参考图3A时,完整性标记可以在数据元素18a-i的级别(即,每个数据元素的完整性标记)被插入,在记录28a-c的级别(即,每个记录的完整性标记)被插入,或在列表的级别(即,数据类型32的一个完整性标记)被插入。处理器可以评估选项并且确定列表或数据类型32包括记录28a-c,其又包括字段或数据元素18a-i。每个字段一个完整性标记的应用可以允许检测影响记录的错误和列表本身。
例如,诸如金丝雀的完整性标记可以包括较高的局部性、低保密性和/或低内容依赖性。诸如校验和的其他完整性标记可以包括低局部性、低保密性和/或高内容依赖性。诸如蜜罐令牌的其他完整性标记可以包括较高的局部性、中等保密性和/或中等内容依赖性。诸如加密代码的其他完整性标记可以包括低局部性、高保密性和/或高内容依赖性。处理器可以基于属性从标记库中确定或选择一个或多个标记。处理器可以进一步优化标记。例如,对于嵌套的数据类型,可以减少冗余标记以标记顶级数据,而不标记某些或所有其他级别。标记可以单独应用于可分离数据类型的不同部分,和/或标记可以被组合以保护彼此。
预先选择的数据安全性策略可以由用户和/或程序员选择。根据其他示例,可以自动选择预先选择的数据安全性策略。根据其他示例,应用可以请求固定的预先选择的安全性策略。例如,预先选择的数据安全性策略可以通过提供对包含在多个数据元素中的数据类型和/或信息的恶意修改的检测来表示确保完整性。例如,加密代码或散列可以由处理器实现以满足预先选择的数据安全性策略。处理器可以确定应用加密代码的位置,即,在哪种数据类型上或者在哪个分层级别上计算加密代码。处理器可以计算各个字段18a-i上的加密代码,这可能暗示着大量的代码或散列,并且可能对于计算工作和对于存储器使用而言是低效的。处理器可以在诸如列表级别的数据类型32的分层级别上计算加密代码。这可能暗示每当将新条目添加到数据类型时重新计算加密代码,并且导致相当大的计算工作。处理器可以利用记录28a-c包括记录字段18a-i的知识,确定数据类型32的分层级别并选择记录28a-c的分层级别。处理器可以在整个记录上确定或计算加密代码。处理器可以使用另外的存储器使用来确定例如关于图3B所描述的分层级别,以提供关于存储器使用的高效率和/或减少或最小化计算工作。这可以涉及使用系统在计算能力和/或存储器方面提供的资源量的加权函数。通过非限制性示例,可以预期计算能力可以用于较高的数量,从而处理器可以在分配更大量的计算工作的同时节省存储器和/或反之亦然。
根据示例,预先选择的数据安全性策略可以表示应该保护多个数据元素防止数据的意外泄露。处理器可以评估预先选择的数据安全性策略,并且基于预先选择的数据安全性策略插入蜜罐令牌。蜜罐令牌可以被理解为特殊值的条目,其在泄露的数据集中的存在表示数据集的所有权。例如,数据类型32中的语义信息可以允许优化这样的令牌的放置。处理器可以将特殊信息(例如,特殊记录28)插入到数据集32中。定义数据集32的结构的类型系统的语义信息可以在构造蜜罐令牌时由处理器使用。例如,信用卡号是客户记录的敏感信息。攻击者可能预期对这样的信息感兴趣。处理器可以构建包括特殊信用卡号的记录。这可以允许提高检测到对数据的危险存取的机会。
简化地,处理器可以基于预定义的数据安全性策略并使用多个数据元素的语义关系来确定待应用的修改种类和分层级别。
图6是预先选择的数据安全性策略的示意图。例如,预先选择的数据安全性策略可以指代不同的标准,例如保密性、局部性和/或内容依赖性。处理器可以将多个这些标准映射到待应用的标记。因此,处理器可以确定要修改数据元素所根据的原理。局部性可以指代相对于数据存储标记的位置。靠近数据存储的标记,例如与实际或未修改的数据交错,可以包括高局部性,而远距离存储的标记(例如在不同的节点或存储介质上)可能具有低的局部性。高局部性标记可以允许在低分层级别或数据的批量传输下检测低级修改。低局部性标记可能允许更好的保护,因为数据的损坏不会导致标记的破坏。
保密性可以指代标记值被保护不被未授权方知道的程度。具有恒定值的标记可能具有低的保密性,而加密签名的标记可能具有高的保密性。可以非常有效地实现低保密性标记。然而,攻击者也可能很容易伪造它们。此外,它们通过安全机制提供针对攻击的低保护或无保护。高保密性标记(尤其是那些涉及外部信息(例如加密密钥)的标记)可能效率较低,但是可以使用安全机制甚至保护免受由未授权方执行的攻击。
内容依赖性可能指代标记值依赖于其保护的数据的程度。当与具有高内容依赖性的标记(例如,数据的散列)相比较时,由于标记可能对其保护的数据是非特定的,所以具有低内容依赖性的标记(例如,恒定值)会提供针对修改或泄露的较少保护。另一方面,增加的内容依赖性可能涉及额外计算。
预先选择的数据安全性策略可以与修改属性有关。处理器可以使用修改属性来选择修改类型,即标记类型。局部性、保密性和/或内容依赖性可以被称为属性。
预先选择的数据安全性策略可以被映射到其标记或属性。处理器可以基于预先选择的数据安全性策略来选择诸如标记类型和/或水印类型的修改类型。根据示例,应用或其它数据源可以与安全性策略相关联。待使用的标记可以与其相关联,这可以导致根据一些示例的标记或修改的选择是不必要的。
图7是与标记38a-d和属性42a-c相关或关联的表的示意图。值,即属性42a-c的权重,可以从“--”增加到“-”,从“0”和“+”增加到“++”。属性42a-c可以分别涉及局部性、保密性和内容依赖性。基于预先选择的数据安全性策略,可以由处理器确定属性42a-c。例如,处理器可以确定最佳地适合所选择的数据安全性策略的多个标记。处理器可以基于预先选择的数据安全性策略和/或基于属性42a-c来确定待应用于多个数据元素的多个标记38a-d。标记的数量可以是单个标记。根据其他示例,可以应用更多数量的标记,例如2、5或更多。处理器可以确定可以例如由用户或应用接收的预先选择的数据安全性策略的属性值。处理器可以从不同的预先选择的数据安全性策略的列表中导出属性或一组属性。处理器可以基于确定出的标记来修改接收到的数据的类型。处理器可以生成用诸如标记的局部性、保密性和/或内容依赖性的属性注释的新的数据类型。
图8是概述了可以由处理器实现的例如存储器12的存储器布局的适配的示意图。例如,当分别参考标记为1、2和3和标记为4、5和6的数据元素的修改后的多个数据元素19'a和/或19'b,并且分别包括额外信息34a、34b时,存储器布局44可以存储多个数据元素的数据元素18a-f。处理器可以修改存储器布局44,从而可以将数据元素18a-f彼此相关或关联所根据的数据类型存储到一起,即包括相邻的存储器地址。处理器可以存储数据元素18a-f的修改后的多个数据元素19'a和/或19'b,并且额外信息34a和34b在使用修改后的存储器布局46的存储器中具有修改的数据类型。可以通过重新分配存储器地址来获得修改后的存储器布局。简化地,处理器可以为由处理器生成的额外信息34a和34b分配存储器的容量。处理器可以使用额外存储器地址a和b来修改存储器布局44,用于存储额外信息34a和34b,即,额外信息元素。例如,可以通过处理器的修改来修改数据字的长度或其次序。处理器可以使用改变的长度或次序来将布局改变为存储器布局46。
额外存储器地址a和b可以由用于存储未修改的信息元素18a-c和18d-f的存储器地址交错。存储器地址1-3以及额外的存储器地址a和/或存储器地址4-6以及额外的存储器地址b可以形成修改后的存储器布局。例如,存储器布局46的地址4可以是存储器布局44的存储器地址5。这可以允许将额外信息作为整体数据结构存储在存储器12上。
换句话说,可以修改布局44以适应标记,例如,与原始地址交错的额外地址可以被保留用于存储标记。处理器可以使用代码段用于计算、插入和/或检查要创建和/或存储的标记。可以以自动方式例如基于模板来创建这些代码段。代码段可以被例如存储为库中的预编译二进制例程或源代码,以供稍后编译。因为数据的类型信息可用,所以机制可以在语义级别而不是字节级别上操作。例如,可以在数据集合(包括数据结构)上计算和检查完整性。可以检查整个文档或部分文档(以较适合者为准)的保密性。
处理器可以使用数据元素之间的语义关系来确定应用标记更合适的数据级别。例如,处理器可以减少或最小化用于应用、更新、检查和/或移除标记的计算工作量。无论何时创建数据类型的数据,例如,处理器可以确定用于计算和/或插入标记的机制。这可以包括确定在输入端22a处接收数据时要使用哪一个标记。处理器可以执行用于计算和插入标记的代码段。这会导致与数据一起存储的适当标记。
图9是包括输入端82、输出端84和处理器86的装置90的示意性框图。输入端82可以接收表示数据元素的修改后的多个数据元素19'的数据83。修改后的多个数据元素19'可以在与多个数据元素19进行比较时被修改。处理器86可以耦合到输入端82和输出端84。处理器86可以确定修改多个数据元素19以获得的修改后的多个数据元素19'所根据的原理。简化地,处理器86可以获得与修改有关的信息。处理器86可以向输出端84提供信号88。信号88可以表示原理等于接收到的数据83的预先选择的数据安全性策略或不等于该预先选择的数据安全性策略。预先选择的数据安全性策略可以与修改多个数据元素所根据的原理相关。简单来说,处理器86可以如对装置10和/或10'所描述的来检查所应用的修改。处理器86可以向输出端84提供信号88,信号88表示原理等于接收到的数据83的预先选择的数据安全性策略或不等于该预先选择的数据安全性策略。因此,处理器86可以表示检查修改的结果。处理器86可以表示在修改后的多个数据元素19'中是否存在标记,标记是否被违反,和/或水印是否包含在修改后的多个数据元素中。例如,处理器86可以确定在修改后的多个数据元素19'中包含水印。水印可以表示安全性策略,并且信号88可以表示水印包含于修改后的多个数据元素19'中。输入端82和/或输出端84可以是部件或物理实体,例如引脚、用于提供或接收信号的端口、或端子。
图10是装置90'的示意性框图。当与装置90相比较时,可以修改装置90'。下文中提供的与装置90'有关的描述也可以指代装置90,并且反之亦然。输入端可以接收表示数据元素的修改后的多个数据元素19'的数据。表示数据元素的修改后的多个数据元素19'的数据可以由装置10作为信号83提供。
处理器86可以耦合到输入端82和输出端84。处理器86可以确定数据元素的修改后的多个数据元素19'的数据类型。处理器可以向输出端84提供信号88。信号88可以表示数据元素的修改后的多个数据元素19'的安全性状态。安全性状态可以指代对使用标记和/或水印的安全性策略的违反。因此,可以检查标记或修改,并且可以导出表示修改相关结果的信息。安全性状态可以表示传输错误、存储错误等。根据其他示例,安全性状态可以表示例如在检查水印时数据的属性。例如,信号88可以包括与表示安全性违反的信息不同的信息,或者信号88可以不包括与安全性有关的信息。这可以被解释为表示数据元素的修改后的多个数据元素19'的安全性未被违反,或者反之亦然。违反的安全性可以指代数据错误和/或检查水印。处理器可以使用确定出的数据类型来确定在存储数据元素的修改后的多个数据元素19'之前修改多个数据元素19所根据的原理。因此,安全性状态可以指代原理等于接收到的数据83的预先选择的数据安全性策略26或不等于该预先选择的数据安全性策略。
例如,信号88可以表示原理等于接收到的数据的预先选择的数据安全性策略或不等于该预先选择的数据安全性策略,即原理是不相等的。该原理可以涉及预先选择的数据安全性策略和/或数据16的类型,即多个数据元素19的语义关系。简化地,处理器86可以使用关于由装置10实现的修改的信息。处理器可以确定修改后的多个数据元素19'是否正确,即,根据应用的数据安全性策略,或者数据是否已被泄露、恶意修改或遭受技术故障。简化地,处理器可以检查标记。处理器86可以确定在修改后的多个数据元素19'上或其中是否找到预期的水印。信号88可以表示接收到的数据(即,修改后的多个数据元素19')是否正确,即,根据应用的数据安全性策略。信号88可以包括未修改的多个数据元素19。例如,处理器86可以反向修改修改后的多个数据元素19'以获得多个数据元素19,和/或可以检查数据安全性的违反。
处理器86可以使用确定出的数据类型并使用确定出的原理来确定用于检查多个数据元素19'的数据完整性的机制。例如,可以使用用于获得修改后的多个数据元素19'的标记的类型来确定用于检查数据完整性的机制。信号83可以包括表示数据类型的信息。根据其它示例,处理器86可以将多个数据元素19'的结构与数据类型的参考类型进行比较,并且基于多个数据元素19'与参考数据类型的匹配来确定数据类型。处理器86可以确定标记,例如,提取额外信息和/或识别水印,并且针对修改、违反或滥用来检查标记。处理器可以基于检查的结果来提供表示确定出的数据完整性的违反的信号88。信号88可以基于结果来表示确定出的数据完整性。
例如,处理器86可以更新数据元素的修改后的多个数据元素19'。考虑到未修改的数据元素的情况,这可以指代数据元素中包含的信息的改变。处理器可以确定多个数据元素19'中包含的额外信息,例如,在修改期间添加到数据元素18a-c的额外信息34。处理器可以更新多个信息元素并使用确定出的原理和更新后的信息元素来更新额外信息元素34。简化地,处理器可以更新额外信息34。例如,当额外信息元素34包括加密代码时,处理器86可以对更新后的信息元素进行编码。根据其他示例,处理器86可以去除修改,即去除水印,修改数据元素并重新修改更新后的信息元素。简单来说,额外数据元素或标记34可以与数据元素18a-c链接到一起。数据元素18a-c和额外数据元素34可以被生成修改后的多个数据元素的系统和/或不同的系统当作修改后的多个数据元素19'。
处理器可以使用确定出的原理来执行重新修改,例如,通过以先前修改信息元素的相同方式来修改更新后的信息元素。
换句话说,装置90和/或90'可以包括输入端82用于接收表示数据元素的修改后的多个数据元素19'的数据83,当与例如多个数据元素19的多个数据元素相比较时,其被修改。该装置可以包括输出端84,并且处理器86耦合到输入端82和输出端84。处理器86可以确定修改多个数据元素以获得修改后的多个数据元素所根据的原理,并向输出端84提供信号88。信号88可以表示原理等于接收到的数据83的预先选择的数据安全性策略26或不等于该预先选择的数据安全性策略。预先选择的数据安全性策略26可以与修改数据元素的多个数据元素19所根据的原理相关。处理器86可以向输出端提供信号88。信号88可以表示原理等于接收到的数据83的预先选择的数据安全性策略26或不等于该预先选择的数据安全性策略。
根据这里描述的示例,数据83可以由提供装置提供,该提供装置包括用于存储数据的存储器,和耦合到存储器的处理器。提供装置的处理器可以接收表示多个数据元素的数据,确定接收到的数据的多个数据元素之间的语义关系,并使用语义关系和预先选择的数据安全性策略修改多个数据元素。提供装置的处理器可以将表示修改后的多个数据元素的数据存储在存储器中。装置90和/或90'的处理器86可以耦合到输入端82和输出端84,并且可以确定修改后的多个数据元素的数据类型,使用确定出的数据类型来确定修改多个数据元素所根据的原理。
根据示例,装置90和/或90'的处理器86可以使用确定出的数据类型并使用确定出的原理来确定用于检查修改后的多个数据元素的数据完整性的机制,并且将用于检查数据完整性的机制应用于修改后的多个数据元素。输出端处的信号88可以表示确定出的数据完整性或确定出的数据完整性的违反。
根据示例,处理器86可以确定在修改期间被添加到多个数据元素的额外数据元素34,更新多个数据元素,并使用确定出的原理和更新后的数据元素来更新额外数据元素。
装置10和装置90'可以形成系统。这样的系统可以包括处理器14和/或处理器86,和/或可以包括实现两个功能的处理器。这样的系统可以包括诸如随机存取存储器(RAM)的存储器、显示器并且可选地包括网络连接。装置10、装置90'和/或组合系统可以包括诸如笔记本、台式计算机、服务器等的计算机或实现数据处理的其他类型的计算系统。
如关于图1所述,表示数据元素的修改后的多个数据元素19'的数据也可以被装置10使用或接收。因此,处理器14和/或处理器86可以检查标记。处理器14和/或处理器86可以接收数据元素的修改后的多个数据元素19',并且使用修改数据元素的多个数据元素19所根据的原理来确定数据元素的安全性是否被违反。处理器86和/或处理器14可以使用信息36来确定原理。简单来说,装置90或90'可以是解码系统、监视系统或内省系统,其不同于诸如装置10的用于标记或编码数据元素的装置。根据其他示例,装置10可以实现关于装置90和90'描述的功能。根据其他示例,处理器86可以在数据元素的多个数据元素19'中搜索诸如水印的标记或修改。
换句话说,当创建数据类型的数据时,可以由处理器查找用于计算和插入标记的机制。标记例如可以通过执行用于计算和插入标记的代码段来应用。这可能导致与数据一起存储适当的标记。当所述数据类型的数据被修改时,可以查找用于更新标记的机制。可以执行机制并且可以修改标记。另外,如果在修改之前要检查数据完整性,则可以从类型系统查找用于检查数据的机制,并且可以使用机制来检查数据完整性。这些机制可以由处理器查找。当读取数据类型的数据时,可以查找用于检查数据完整性的机制,并且可以执行机制来检查数据完整性。可以例如使用信号88来报告结果。可以使用适当的机制来检查数据机密性的整个生命周期。可以使用跨系统的周期性扫描来周期性地检查机密性和/或由事件触发(例如,每当数据被导出或修改时)来检查机密性。
其他示例提供了包括装置10和装置90'的装置。例如,这样的装置可以是本地或分布式计算机系统,其形成用于存储数据的存储器和提供或生成待存储的数据的应用或用户之间的接口。
图11是被命名为存储器分配和/或安全性实现的功能48a与被命名为数据管理的功能48b之间的简化关系的示意图。例如,存储器分配和/或安全性实现48a可以由装置10实现。功能48b可以提供或生成数据。例如,功能48b可以涉及程序员或用户和/或涉及数据管理或应用。例如使用装置10可以修改由功能48b生成的数据,可能包括存储器重新分配。这可以包括应用功能48c,包括应用基于类型的标记。当读取或修改所存储的修改后的数据时,装置90可以如关于装置90所描述的那样反转修改。接收被反转修改的数据的功能48b可以允许对用户、应用或程序的透明功能。因此,可以避免程序和/或应用的重新编程。也就是说,功能48c可以对功能48b保持是未知的,其中可以独立于功能48b提供功能48a。这可以包括将修改后的数据元素作为修改后的数据类型存储,其中修改后的数据类型对于提供数据元素的数据源是未知的。数据源可以是功能48b。
简化地,本文描述的示例可以被理解为数据存取层,通过该数据存取层可以调解一些或所有用户级别数据存取。用户级别数据可以是来自应用或用户的要被引入到装置和/或包括该装置的数据管理系统的数据。数据存取层可以包括数据类型的类型系统,其可以用于在结构方面定义数据的基本“形状”。该形状可以指代预先确定的数据安全性策略,即,通过如何保护数据的信息。
图12是概述用于修改数据元素的方法的示意性流程图。在1210处,接收数据,该数据表示多个数据元素,例如多个数据元素19。在1220处,确定接收到的数据的多个数据元素之间的语义关系。在1230处,使用语义关系和预先选择的数据安全性策略修改多个数据元素。
在1240处,将表示修改后的多个数据元素的数据存储在存储器中。在1250处,确定修改后的多个数据元素的数据类型,例如,修改后的多个数据元素19'的数据类型。
在1260处,使用确定出的数据类型确定在存储修改后的多个数据元素之前多个数据元素被修改的方式。在1270处,提供表示是否根据预先选择的数据安全性策略修改了多个数据元素的信号。
图13是概述用于检查数据元素的方法的示意性流程图。在1310处,确定修改后的多个数据元素的数据类型。在1320处,使用确定出的数据类型确定在存储修改后的多个数据元素之前修改多个数据元素所根据的原理。在1330处,使用确定出的多个数据元素的数据类型并使用确定出的原理来确定用于检查修改后的多个数据元素的数据完整性的机制。在1340处,将用于检查数据完整性的机制应用于修改后的多个数据元素。在1350处,在输出端处提供信号,该信号表示确定出的数据完整性或确定出的数据完整性的违反。
图12和/或13中概述的方法可以被编码为能够由处理器执行的指令。指令可以被存储在非暂时性机器可读存储介质上,从而机器可读存储介质包括用于执行所示方法的指令。
本文描述的示例可以允许根据预先确定的数据安全性策略的要求或规范来自动地、系统地插入类型感知完整性和机密性标记。可以在不修改应用的源代码的情况下执行本文描述的标记的实现以生成数据。可以在不涉及程序员的干预和/或程序员的意识的情况下实现标记的插入。数据可以由用户、程序员或应用生成,并根据本文所述的示例自动进行修改。可以按照自动方式优化标记,以降低其性能影响,其中性能可以涉及计算工作和/或所使用的存储器。
换句话说,因为可以基于预先选择的数据安全性策略来生成和添加标记,所以这另外可以实现可以在整个大规模存储器上操作的更系统的发现和管理工具,从而允许在系统上跟踪数据。因此,这可以允许在大规模系统和存储器的安全管理中进行应用。
本文描述的处理器可以在数据的语义级别上应用标记,这使得能够开发在该级别上而不仅是在字节级别上检测预先确定的数据安全性策略的违反的工具。例如,可以在语义级别上检测通过使用安全性机制而产生的违规。标记可以被构造为即使针对加密的数据也可以工作。例如,可以存在在加密之前在明文数据上计算的标记,并且可以在后续解密之后被保留用于检查。另外,可以存在在加密数据本身上计算的完整性标记,其可以例如被稍后检查以确保数据被正确地存储、传送等。示例提供用于使用标记来保护元数据(例如,创建时间)的装置。例如,类型系统可以包括包含元数据的数据类型。因此,数据类型可以包括包含元数据的数据元素。
可以通过以下非限制性示例总结对本文描述的示例和/或数据生命周期中的类型系统的使用:可以定义数据类型,并且可以将定义存储在类型系统中,例如“定义类型ListOf5”。可以在类型系统中创建和存储数据类型的存储器布局的描述,例如,ListOf5可以被存储在从第一元素开始的比特大小(例如,64比特)的五个连续字内。可以创建用于创建/存取使用存储器布局存储的数据的二进制片段。例如,getListOf5(index i):return[base_address+i]。应用程序员可以选择在他或她的程序中使用的数据类型,并且可以定义该数据类型的数据项。例如,可以根据“定义var testList类型ListOf5”来使用命令。在编译时,类型系统可以在存储器中提供类型的布局,并且可以将用于创建/存取数据的适当代码插入到二进制文件中。例如,这可以示出为“x=testList[3]可以被替换为x=testList.get(3)”。在运行时,数据可以被布置在存储器中并根据数据类型进行存取。
可以在基于策略的、类型感知的分布式数据结构存储器布局中描述针对数据的存储器布局对类型系统的使用。可以从类型系统中的数据类型的定义以系统的方式导出存储器中数据项的布局。
图14是数据类型32的可能实现的实现(例如定义联系人数据库)的示意图。多个数据元素19可以包括如下数据元素:包括按照记录28a的语义关系的数据元素18a-e。
应当理解,本文描述的示例可以以硬件、机器可读指令或硬件和机器可读指令的组合的形式实现。任何这样的机器可读指令可以存储于易失性或非易失性存储设备的形式中,例如,诸如ROM的存储设备,无论是可擦除的还是可重写的,或以存储器的形式,例如RAM,存储器芯片设备或集成电路或光学或磁性可读介质,例如CD,DVD,磁盘或磁带。应当理解,这些存储设备和存储介质是机器可读存储设备的示例,其适于存储当被执行时实现本文描述的示例的一个或多个程序。
说明书(包括任何所附权利要求、摘要和附图)中公开的所有特征和/或所公开的任何方法或过程的所有特征可以以任何组合方式进行组合,除了这些特征中的至少一些是互斥的组合。
除非另有明确说明,否则说明书(包括任何所附权利要求、摘要和附图)中公开的每个特征可以由服务于相同、等效或类似提议的替代特征来代替。因此,除非另有明确说明,否则所公开的每个特征仅仅是等效或类似特征的通用系列的一个示例。

Claims (15)

1.一种装置,包括:
用于存储数据的存储器;以及
耦合到所述存储器的处理器,所述处理器用于:
使用多个数据元素之间的语义关系和预先选择的数据安全性策略来修改所述多个数据元素;并且
将表示修改后的多个数据元素的数据存储在所述存储器中。
2.根据权利要求1所述的装置,其中,所述处理器用于:
接收表示所述多个数据元素的数据;并且
确定接收到的数据中的所述多个数据元素之间的语义关系。
3.根据权利要求1所述的装置,其中,所述处理器用于接收所述修改后的多个数据元素,确定所述多个数据元素被修改的方式,并且判断数据元素的安全性是否被违反。
4.根据权利要求1所述的装置,其中,所述处理器用于使用所述语义关系和所述预先选择的数据安全性策略来确定用于检查所述修改后的多个数据元素的数据完整性的机制,并且基于所述机制来修改所述多个数据元素。
5.根据权利要求1所述的装置,其中,数据类型定义所述多个数据元素之间的语义关系,并且其中,修改后的数据类型定义在所述修改后的多个数据元素之间的语义关系。
6.根据权利要求1所述的装置,其中,所述处理器用于生成指示修改所述多个数据元素所根据的机制的信息。
7.根据权利要求1所述的装置,其中,所述处理器用于使用与信息记录相关联的数据元素的组合结构和/或使用由提供所述多个数据元素的数据源提供的信息来确定所述多个数据元素之间的语义关系。
8.根据权利要求1所述的装置,其中,所述处理器用于使用所述预先选择的数据安全性策略从多个标记中选择标记,其中,所述处理器用于使用所选择的标记向所述多个数据元素添加额外信息和/或使用所选择的标记改变所述多个数据元素的数据元素。
9.根据权利要求8所述的装置,其中,所选择的标记是下列中的一个:金丝雀标记、加密代码、蜜罐令牌、校验和、用于支持由用户指定的数据安全性策略的标记、以及水印。
10.根据权利要求1所述的装置,其中,所述预先选择的数据安全性策略涉及所述多个数据元素的修改属性,其中,所述处理器用于使用所述修改属性来选择修改类型。
11.根据权利要求1所述的装置,其中,所述处理器用于修改所述多个数据元素的数据类型的存储器布局,并且使用修改后的存储器布局将所述修改后的多个数据元素作为修改后的数据类型存储在所述存储器中。
12.根据权利要求11所述的装置,其中,所述处理器用于使用额外存储器地址来修改所述存储器布局以存储额外数据元素,所述额外存储器地址由用于存储未修改的数据元素的存储器地址进行交错,其中,所述存储器地址和额外存储器地址形成所述修改后的存储器布局。
13.根据权利要求1所述的装置,其中,所述处理器用于存储所述修改后的多个数据元素作为修改后的数据类型,所述修改后的数据类型对于提供数据元素的数据源是未知的。
14.一种装置,包括:
用于接收表示修改后的多个数据元素的数据的输入端,其中,当与多个数据元素相比较时,所述修改后的多个数据元素的语义关系被修改;
输出端;
耦合到所述输入端和所述输出端的处理器,所述处理器用于:
使用所述修改后的多个数据元素的语义关系来检查所述修改后的多个数据元素的修改;以及
向所述输出端提供信号,所述信号指示所述修改后的多个数据元素的安全性状态。
15.一种编码有能够由处理器执行的指令的非暂时性机器可读存储介质,所述机器可读存储介质包括:
用于接收表示多个数据元素的数据的指令;
用于确定接收到的数据中的所述多个数据元素之间的语义关系的指令;
用于使用所述语义关系和预先选择的数据安全性策略来修改所述多个数据元素的指令;
用于将表示修改后的多个数据元素的数据存储在存储器中的指令;
用于确定所述修改后的多个数据元素的数据类型的指令;
用于使用确定出的数据类型确定在存储所述修改后的多个数据元素之前所述多个数据元素被修改的方式的指令;以及
用于提供指示所述修改后的多个数据元素是否根据所述预先选择的数据安全性策略而被修改的信号的指令。
CN201580079042.1A 2015-08-14 2015-08-14 用于存储数据的装置和存储介质 Active CN107533614B (zh)

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
PCT/EP2015/068765 WO2017028878A1 (en) 2015-08-14 2015-08-14 Modification of data elements using a semantic relationship

Publications (2)

Publication Number Publication Date
CN107533614A true CN107533614A (zh) 2018-01-02
CN107533614B CN107533614B (zh) 2020-10-16

Family

ID=53872054

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201580079042.1A Active CN107533614B (zh) 2015-08-14 2015-08-14 用于存储数据的装置和存储介质

Country Status (4)

Country Link
US (1) US10572672B2 (zh)
EP (1) EP3274902B1 (zh)
CN (1) CN107533614B (zh)
WO (1) WO2017028878A1 (zh)

Families Citing this family (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11550834B1 (en) * 2017-04-26 2023-01-10 EMC IP Holding Company LLC Automated assignment of data set value via semantic matching
US10977379B1 (en) * 2018-06-13 2021-04-13 Amazon Technologies, Inc. Utilizing canary data to identify improper data access
US20230262073A1 (en) * 2022-02-14 2023-08-17 The Mitre Corporation Systems and methods for generation and implementation of cyber deception strategies

Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000036513A2 (en) * 1998-12-18 2000-06-22 Unisys Corporation A memory address translation system and method for a memory having multiple storage units
US7308648B1 (en) * 2002-11-27 2007-12-11 Microsoft Corporation Method, system, and computer-readable medium for filtering harmful HTML in an electronic document
US20100030975A1 (en) * 2008-07-29 2010-02-04 Transitive Limited Apparatus and method for handling page protection faults in a computing system
US20120084866A1 (en) * 2007-06-12 2012-04-05 Stolfo Salvatore J Methods, systems, and media for measuring computer security
US20120233222A1 (en) * 2011-03-11 2012-09-13 Sourcefire, Inc. System and method for real time data awareness
WO2015024603A1 (en) * 2013-08-23 2015-02-26 Nec Europe Ltd. Method and system for authenticating a data stream

Family Cites Families (9)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
FR2729030B1 (fr) * 1994-12-30 1997-03-28 France Telecom Procede de reconfiguration dynamique d'un signal presentant un entrelacement temporel, recepteur et signal correspondants
US5892900A (en) 1996-08-30 1999-04-06 Intertrust Technologies Corp. Systems and methods for secure transaction management and electronic rights protection
US5826268A (en) 1996-04-12 1998-10-20 Ontos, Inc. Secure multilevel object oriented database management system
US6272538B1 (en) 1996-07-30 2001-08-07 Micron Technology, Inc. Method and system for establishing a security perimeter in computer networks
US7032158B2 (en) * 2001-04-23 2006-04-18 Quickshift, Inc. System and method for recognizing and configuring devices embedded on memory modules
CN100501635C (zh) 2004-11-10 2009-06-17 中国人民解放军国防科学技术大学 数据完整性保护方法
US8468244B2 (en) 2007-01-05 2013-06-18 Digital Doors, Inc. Digital information infrastructure and method for security designated data and with granular data stores
US8364984B2 (en) 2009-03-13 2013-01-29 Microsoft Corporation Portable secure data files
CN104166822B (zh) * 2013-05-20 2017-10-13 阿里巴巴集团控股有限公司 一种数据保护的方法和装置

Patent Citations (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2000036513A2 (en) * 1998-12-18 2000-06-22 Unisys Corporation A memory address translation system and method for a memory having multiple storage units
US7308648B1 (en) * 2002-11-27 2007-12-11 Microsoft Corporation Method, system, and computer-readable medium for filtering harmful HTML in an electronic document
US20120084866A1 (en) * 2007-06-12 2012-04-05 Stolfo Salvatore J Methods, systems, and media for measuring computer security
US20100030975A1 (en) * 2008-07-29 2010-02-04 Transitive Limited Apparatus and method for handling page protection faults in a computing system
US20120233222A1 (en) * 2011-03-11 2012-09-13 Sourcefire, Inc. System and method for real time data awareness
WO2015024603A1 (en) * 2013-08-23 2015-02-26 Nec Europe Ltd. Method and system for authenticating a data stream

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
马驰远: "《流体系结构存储系统的设计实现及性能优化研究》", 《中国博士学位论文全文数据库 信息科技辑》 *

Also Published As

Publication number Publication date
EP3274902A1 (en) 2018-01-31
US10572672B2 (en) 2020-02-25
US20180165459A1 (en) 2018-06-14
CN107533614B (zh) 2020-10-16
WO2017028878A1 (en) 2017-02-23
EP3274902B1 (en) 2021-03-24

Similar Documents

Publication Publication Date Title
US20230004841A1 (en) Managing information for model training using distributed blockchain ledger
CN108604264B (zh) 在匿名化数据集中没有较大信息丢失的数字加水印
Farfoura et al. A novel blind reversible method for watermarking relational databases
CN103646195B (zh) 一种面向版权保护的数据库水印方法
CN110096897B (zh) 一种基于数据脱敏处理的数据泄露源头定位方法及装置
CN113364753B (zh) 反爬虫方法、装置、电子设备及计算机可读存储介质
CN110688675A (zh) 基于隐私保护的数据泄露溯源装置、方法及可读存储介质
CN107409040A (zh) 用于推荐数据加密而不影响程序语义的代码分析工具
CN106059762A (zh) 数据安全处理方法及装置
CN113076554B (zh) 一种基于区块链的体检数据安全存储方法
Melkundi et al. A robust technique for relational database watermarking and verification
KR100602339B1 (ko) 워터마킹 컴퓨터 및 방법과, 워터마크의 존재 판단 컴퓨터 및 방법과, 데이터 저장부와, 컴퓨터 판독 가능 기록 매체
CN107533614A (zh) 使用语义关系修改数据元素
BR122022003477A2 (pt) Sistemas e métodos para criar documentos aprimorados para análise automatizada perfeita
Iftikhar et al. A reversible watermarking technique for social network data sets for enabling data trust in cyber, physical, and social computing
JP3843405B2 (ja) 個人情報の記録方法と個人情報記録システムおよび記録媒体
US20230315877A1 (en) Managing machine-learning models via non-fungible tokens on a digital ledger
CN106650504B (zh) 一种针对Web页面数据的摘要提取方法及检测方法
Zhang et al. ‘A robust and adaptive watermarking technique for relational database
Tiwari et al. A novel watermarking scheme for secure relational databases
CN116702103A (zh) 数据库水印处理方法、数据库水印溯源方法及装置
CN109558341A (zh) 计算机内存数据保护方法和计算机
CN115758443A (zh) 面向office文档出境数据的保护方法
CN115001700A (zh) 一种基于区块链的生态环境监管方法及系统
Iqbal et al. Self-constructing fragile watermark algorithm for. relational database integrity proof

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