CN112560099A - 一种强鲁棒性的电力数据库指纹生成方法 - Google Patents

一种强鲁棒性的电力数据库指纹生成方法 Download PDF

Info

Publication number
CN112560099A
CN112560099A CN202011532368.4A CN202011532368A CN112560099A CN 112560099 A CN112560099 A CN 112560099A CN 202011532368 A CN202011532368 A CN 202011532368A CN 112560099 A CN112560099 A CN 112560099A
Authority
CN
China
Prior art keywords
database
constraint
polyhedron
program
power
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
CN202011532368.4A
Other languages
English (en)
Other versions
CN112560099B (zh
Inventor
葛崇慧
汪天琦
张迎周
谢林枫
邸云龙
朱林林
李鼎文
曾望志
王江辉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Nanjing University of Posts and Telecommunications
Jiangsu Fangtian Power Technology Co Ltd
Original Assignee
Nanjing University of Posts and Telecommunications
Jiangsu Fangtian Power Technology Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Nanjing University of Posts and Telecommunications, Jiangsu Fangtian Power Technology Co Ltd filed Critical Nanjing University of Posts and Telecommunications
Priority to CN202011532368.4A priority Critical patent/CN112560099B/zh
Publication of CN112560099A publication Critical patent/CN112560099A/zh
Application granted granted Critical
Publication of CN112560099B publication Critical patent/CN112560099B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

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
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6227Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database where protection concerns the structure of data, e.g. records, types, queries
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • YGENERAL 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
    • Y02TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
    • Y02DCLIMATE 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/00Energy 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)
  • Bioethics (AREA)
  • General Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Databases & Information Systems (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本专利提供了一种强鲁棒性的电力数据库指纹生成方法。为了解决复杂的电力数据在发布后数据库指纹易被破坏的问题,本发明针对查询(插入、删除、更新、查找)场景下的电力数据,结合多面体域的相关知识设计生成一种抵御多种外界攻击的强鲁棒性电力数据库指纹。首先利用浮点多面体域对进行查询操作的电力数据库程序语句分析得到相应的数值不变域,即多面体约束集。然后用多面体约束集表示电力数据库的不稳定属性生成稳定单元,提取基于语义的数据属性。最后哈希算法对稳定单元进行编码,将虚拟主键、属性最高位与指纹关联矩阵的异或值及稳定单元的编码值作为参数,构造出强鲁棒的电力数据库指纹,使其在查询场景下有更好的抵御攻击的能力。

Description

一种强鲁棒性的电力数据库指纹生成方法
技术领域
本发明属于信息安全技术领域,具体涉及一种强鲁棒性的电力数据库指纹生成方法。主要针对电力数据库间复杂浮点数据的强鲁棒数据库指纹的构造,解决复杂数据在查询场景下 (如增加、删除、改动和查找数据等)数据库指纹容易遭到破坏的问题,提升了数据库指纹的鲁棒性,增强了指纹抵御外界攻击的能力。
背景技术
电力作为国民经济的重要基础产业,发电量和用电量指标历来被认为是经济运行态势的重要反映,其与GDP变化的一致性和相对同步性已成为世界各国及各大投资咨询机构判断经济发展状况的共识。随着信息技术在电力行业的广泛应用,电力业务间的数据共享需求越来越大,直接共享出去的数据面临着违规转发的情况,一旦数据泄露出去,往往难以追查数据泄露源头。这些电力行业的核心数据按照国家电网的相关需求,将数据通过多种途径分发到其它应用系统,其它应用系统同时也可能存在数据分发的情况,这样就产生了数据的二次分发问题。由于数据管理制度的不完善,增加了数据泄密的可能,一旦出现数据泄密情况,数据的泄露源头往往很难追踪。而电力数据库作为储存和统计分析电力不可或缺的工具,其安全性值得我们重视。
对于数据库水印来说通过比较其是否引起底层数据失真,将其分为基于失真和基于无失真两种类型。基于失真的数据库水印方案的水印信息种类较多,包括字符串、图像等,但所针对的数据库信息的数据类型一般是数值型或者分类数据等特定的数据类型;基于无失真的数据库水印方案则一般是利用原始数据库本身生成水印信息或者添加伪行伪列等方法,一般针对的数据类型可以是数值型,也可以是非数值型,使用范围较为广泛。但是基于无失真的水印比较脆弱、目前可用方法较少且实现难度较大。因此在保证数据失真最小的情况下提高水印的鲁棒性和抗攻击能力、降低水印算法的成本和时间具有重要的意义。而数字指纹作为数据水印的一个重要分支,通过给不同的用户分发唯一的信息来标识用户的身份能够对数据信息的整个拷贝、分发、传播和存储过程进行实时有效的控制和监督。
发明内容
一.发明目的:
本发明的目的是设计一种强鲁棒性的电力数据库指纹生成方法,选取适当的多面体域,利用浮点多面体域生成的不变式表示数据库的稳定单元,根据稳定单元和属性特定的不变性构造出强鲁棒性的数据库指纹。使数据库指纹在受到特定攻击时不发生改变,提高了数据库指纹抵御外界攻击的能力。
二.技术方案:
一种强鲁棒性的电力数据库指纹生成方法,包括以下步骤:
步骤1,选取浮点多面体域弱接合步骤;首先计算出多面体的界约束和包络约束,它是包围盒所能确定的最小多面体,然后为了确定新的关系型约束,根据参与凸闭包计算的每个输入多面体的包络约束数和非包络约束数,启发式的确定其上的近似。
步骤2,根据浮点多面体域生成不变式步骤;由于抽象域和具体域的计算符号和计算方法不同,我们引入的浮点符号进行四舍五入的浮点运算。首先利用线性规划动态确定弱接合来提高接合计算的效率,然后对各种域操作(包括交、接合、投影、加宽等)得到的线性不等式集利用浮点傅立叶-莫茨金消除进行凸闭包的计算,通过线性规划消除冗余约束,最终得到不变量。
步骤3,选取电力数据库稳定单元和属性步骤;电力数据库遭受外界攻击(如查询数据、添加数据、更新数据、删除数据等)后,数据库的状态会发生改变。当某个单元格的数值在被攻击后未发生改变,则选取该单元格为稳定单元。我们把上述稳定的单元格进行累并操作就得到了基于语义的不变属性。
步骤4,构造强鲁棒性数据库指纹步骤;首先找出数据库初始状态下的稳定单元,提取基于语义的属性。然后用哈希函数对稳定单元进行编码。接着对密钥和虚拟主键进行哈希得出要标记的属性,找出要进行异或计算的指纹位。最后通过具体的计算得到格式为<虚拟主键、元组属性异或值和稳定单元编码值>的强鲁棒数据库指纹。
所述步骤1选取浮点多面体域弱接合的具体步骤为:
步骤1.1定义多面体包络及其闭包之包围盒(界盒)所能确定的最小多面体。精确的保留了多面体的包络和界信息。
步骤1.2设i∈{1,2},定义Pi中的包络约束和Pi的包围盒所确定的最小多面体,记作 EB(Pi);定义Pi中的非包络约束和Pi的包围盒所确定的最小多面体,记作NEB(Pi)。
步骤1.3根据参与凸闭包计算的每个输入多面体的包络约束数和非包络约束数,启发式的确定其上的近似。对于P中任意一个不等式约束
Figure BSA0000228016800000021
通过求解线性规划问题μ=max∑i aiii≤bsubject to P,来检查
Figure BSA0000228016800000022
是否是包络约束。如果μ≤b则
Figure BSA0000228016800000023
是包络约束,记作count1;如果μ>b则
Figure BSA0000228016800000024
是非包络约束,记作count2。判断count1和count2的大小,若count1<count2则选择包络界信息弱接合,反之选择非包络界信息弱接合。该弱接合操作定义为:
Figure BSA0000228016800000025
所述步骤2根据浮点多面体域生成不变式的具体步骤为:
步骤2.1首先利用偏序结构的完全格
Figure BSA00002280168000000310
来表示抽象域中的精确度、上下界和最大最小元。设程序中有n个数值型程序变量Vars={v1,v2,...vn},I为数值的集合(如自然数N、整数Z、有理数Q、实数R、浮点数F)。一个程序环境ρ:Vars→I把每个程序变量vi映射成其实际值ρ(vi)。设程序中程序点的集合为L,程序状态通过程序点和程序环境所构成的序偶来描述,即
Figure BSA0000228016800000031
程序状态的幂集构成一个完全格
Figure BSA0000228016800000032
步骤2.2迁移系统(S,Λ,τ,I)表示数据迁移的过程。S是程序状态的(非空)集合;Λ是程序语义动作的(非空)集合;若一个程序状态s经过某个域操作a其状态发生了改变,我们将这个迁移关系τ记作
Figure BSA0000228016800000033
是初始程序状态的(非空)集合。
步骤2.3把语义函数f分解成一系列子函数fi,每个程序点Li对应一个子函数fi。我们关心每个程序点Li处变量vi的取值情况。因此在每个程序点把该处已经计算出来的可能环境“聚集”起来,把P(L×(Vars→I))提升到集合L→P(Vars→I),从而得到程序的聚集语义。进一步我们就可以在数值抽象域上通过混沌迭代来计算抽象不动点。
步骤2.4抽象域与具体域计算方式不同,因此引入相应的浮点计算
Figure BSA0000228016800000034
来表示具体域的{+,-,×,/}。采用四舍五入模式r∈{+∞,-∞}标记(+∞:向上取值,-∞:向下取值)。分析对应的各域操作(包含冗余约束消除、空多面体测试、交、接合、投影、迁移、加宽和变窄等)得到相应的不等式集。
步骤2.5设
Figure BSA0000228016800000035
是区间线性不等式,
Figure BSA0000228016800000036
是x的包围框。则线性化算子
Figure BSA0000228016800000037
理论上dk为ak,bk的中点
Figure BSA0000228016800000038
步骤2.6使用上述的线性化算子ζ,将区间运算结果中的区间线性不等式线性化为标量系数的线性不等式。对于消除含有变量xi的不等式组,
Figure BSA0000228016800000039
使用向外舍入的区间算术把不等式约束分别除以各自所对应的xi系数的绝对值得到xi系数相加等于0的区间线性不等式组
Figure BSA0000228016800000041
,然后将不等式相加消除变量xi得到
Figure BSA0000228016800000043
最后对不等式应用线性化算子ζ抽象得到线性(非区间)不等式。
步骤2.7经过上述浮点傅立叶-莫茨金消除后会产生大量冗余约束,通过严格的线性规划来消除冗余约束。同步骤1.3的判断方法。
所述步骤3选取电力数据库稳定单元和属性具体步骤为:
步骤3.1电力数据主要分为档案数据、管理数据、量测数据和计算数据等。其中档案数据主要包含项目招投标、工程名称、设施编号等属性;管理数据主要包含发电、输电、变电、配电、用电、调节等属性;量测数据主要包含电量底码、功率、电流、电压、功率因数等属性。计算数据主要包含电量、线损、统计等属性。在存储电力数据时根据上述划分可能会产生多个关联表。
步骤3.2对于不同的电力数据库找出具有特殊属性的单元格SCIC。在有效状态a<val <b下,属性可由[a,b]表示。即在查询处理下即使值发生改变,区域内的属性依然没变。
步骤3.3根据同一个元组中两个或多个属性之间的相互关系提取的属性SCIT。假设一个元组有两个数值属性值a、b且存在关系P1={a+b≤10,3a+2b≥16},P2={a-3b≤6,5a-b≤8},则可用多面体域
Figure BSA0000228016800000045
表示内部元组属性的不变值。
步骤3.4元组间的属性很难从关系中的独立元组中获取。SCIA往往是整个数据库产生的约束而不止是属性间的约束。获取方式类似于SCIT
步骤3.5不同数据库属性之间关联产生的约束,与外键有关。把数据库1产生的约束记作P1,关联数据库约束记作P2...Pi,以此类推,最终得到数据库间的稳定单元
Figure BSA0000228016800000044
所述步骤4构造强鲁棒数据库指纹具体步骤为:
步骤4.1给定数据库DB和与DB交互的应用程序集B。设Q是B中应用程序发出的查询集。Q:SELECT、UPDATE、DELETE、INSERT等操作集合。用步骤3.2的迁移系统来表示数据库的状态变化。其中S0:数据库的初始状态;Si:数据库在i时的状态;Λi:查询Q的非空集合;τ:状态迁移关系
Figure BSA0000228016800000051
W:嵌入在初始状态中的水印。(S0,Λ0,τ,W), (Si,Λi,τ,W)分别表示数据库初始和在i时的状态。
步骤4.2识别状态S0中不受查询影响的稳定单元格
Figure BSA0000228016800000052
步骤4.3提取一组基于语义的属性
Figure BSA0000228016800000053
该属性由单元内(SCIC)、元组内(SCIT)、元组属性之间(SCIA)和数据库之间(SCIDB)的属性组成状态S0中的数据库信息。
步骤4.4用合适的最小完美哈希函数
Figure BSA0000228016800000054
对稳定部分
Figure BSA0000228016800000055
和属性集
Figure BSA0000228016800000056
进行编码。
步骤4.5将私钥key和虚拟主键Vpk数作为隐藏参数。我们将属性集{A1,A2......,Aγ} 分为两部分:属于稳定部分的属性集合
Figure BSA0000228016800000057
和属于不稳定部分的属性集合
Figure BSA0000228016800000058
其中p+q=γ。考虑虚拟主键Vpk的值和属于DB数据库的稳定部分属性的值,若
Figure BSA0000228016800000059
将其作为标记元组,标记元组的数量ω=η×(1/γ),η为全体数据库元组的数量,γ为数据库属性的个数。根据哈希函数找出指纹的第v位,
Figure BSA00002280168000000510
步骤4.6对于标记元组ω中的每个元组r,在W中生成一个元组t,t的虚拟主键等于r 的虚拟主键,仅仅是为了唯一地标识W中的元组。然后,在t中为属性P1、P2、P3、P4添加四个值,它们对应于SCIC、SCIT、SCIA、SCIDB的编码值,分别用k1,k2,k3,k4表示,其中
Figure BSA00002280168000000511
Figure BSA00002280168000000512
如果缺少这些属性中的任何一个,把相应的单元格置0。将r中的稳定属性累并得到稳定属性集
Figure BSA0000228016800000061
从伪随机序列发生器Gi中获得的第i个值val=Gi(key1,r.Vpk,Vstable),该值由稳定属性,元组r和私钥key作为参数计算。j表示随机选取r中的一个属性,j=val%(r[0])+1,若r中第j个属性是稳定的将r的第j个属性的重要部分与指纹相关矩阵的第v行异或嵌入到t的第i位,t.bi=r[0]XOR (a[v][]);不稳定则置0。最后删除r中的第j个属性。最后得到强鲁棒性的数据库指纹 W<Vpk,b1,b2...bγ,k1,k2,k3,k4>。
三.有益效果:
本发明对比已有技术具有以下显著创新点及优点:
1、利用浮点抽象域生成的不变式抽象成电力数据库的稳定单元,得到基于语义的不变属性。相比于普通的区间表示只能解决单个数据的约束,多面体域可以解决两个及以上变量之间的而约束。对于复杂的电力数据利用浮点多面体域能够得到更精确的不变式,利用这些不变式关系,帮助生成数据库指纹,提高了指纹的鲁棒性。
2、针对电力数据库间存在的约束增加了约束属性,在稳定单元中引入数据库之间的约束属性。多面体域不仅可以处理数据库内部复杂的数据关系还可以处理多个数据库之间复杂的约束关系。对于数据库之间关系紧密的电力数据库来说,能够计算数据库之间约束关系,使得强鲁棒数据库指纹的应用功能更加强大,应用场景更加广泛。
3、利用电力数据特征构造指纹信息,而不是修改数据特征。利用虚拟主键、不同状态的数据库属性与指纹的异或值、稳定单元的编码值组成当前时刻的电力数据库指纹。不对原始数据库进行修改,确保电力数据不会失真。
四.附图说明:
图1指纹相关矩阵C
图2.1档案数据表
图2.2管理数据表
图2.3量测数据表
图2.4计算数据表
图3浮点多面体域不变式生成流程图
图4强鲁棒性数据库指纹构造流程图
五.具体实施方式
下面结合附图以及具体实例对本发明做更进一步的解释。
一种强鲁棒性的电力数据库指纹的生成方法,包括选取浮点多面体域弱接合步骤;根据浮点多面体域生成不变式步骤;选取电力数据库稳定单元和属性步骤;构造强鲁棒数据库指纹步骤。
具体步骤如下:
步骤1)选取浮点多面体域弱接合步骤
步骤1.1)根据电力数据在用户用电过程中数据的改变及其阈值确定多面体包络及其闭包之包围盒(界盒)所能确定的最小多面体。
步骤1.2)分别定义多面体包络约束界约束所确定的最小多面体和非包络约束界约束所确定的最小多面体。
步骤1.3)根据参与凸闭包计算的每个输入多面体的包络约束数和非包络约束数,启发式的确定其上的近似。记count1为包络约束数;记count2为非包络约束数。若count1<count2 则选择包络界信息弱接合,反之选择非包络界信息弱接合。
步骤2)根据浮点多面体域生成不变式步骤
步骤2.1)首先利用偏序结构的完全格
Figure BSA0000228016800000071
来表示抽象域中的精确度、上下界和最大最小元。设程序中有n个数值型程序变量Vars={v1,v2,...vn},I为数值的集合 (如自然数N、整数Z、有理数Q、实数R、浮点数F)。一个程序环境ρ:Vars→I把每个程序变量vi映射成其实际值ρ(vi)。设程序中程序点的集合为L,程序状态通过程序点和程序环境所构成的序偶来描述,即
Figure BSA0000228016800000072
程序状态的幂集构成一个完全格
Figure BSA0000228016800000073
步骤2.2)迁移系统(S,Λ,τ,I)表示数据迁移的过程。S是程序状态的(非空)集合;Λ是程序语义动作的(非空)集合;若一个程序状态s经过某个域操作a其状态发生了改变,我们将这个迁移关系τ记作
Figure BSA0000228016800000074
是初始程序状态的(非空)集合。
步骤2.3)把语义函数f分解成一系列子函数fi,每个程序点Li对应一个子函数fi。我们关心每个程序点Li处变量vi的取值情况。因此在每个程序点把该处已经计算出来的可能环境“聚集”起来,把P(L×(Vars→I))提升到集合L→P(Vars→I),从而得到程序的聚集语义。进一步我们就可以在数值抽象域上通过混沌迭代来计算抽象不动点。
步骤2.4)引入相应的浮点计算
Figure BSA0000228016800000075
来表示具体域的{+,-,×,/}。采用四舍五入模式r∈{+∞,-∞}标记(+∞:向上取值,-∞:向下取值)。分析对应的各域操作(包含冗余约束消除、空多面体测试、交、接合、投影、迁移、加宽和变窄等)得到相应的不等式集。
步骤2.5)利用线性化算子
Figure BSA0000228016800000081
线性化区间线性不等式。
步骤2.6)使用上述的线性化算子ζ,将区间运算结果中的区间线性不等式线性化为标量系数的线性不等式。对于消除含有变量xi的不等式组,首先使用向外舍入的区间算术把不等式约束分别除以各自所对应的xi系数的绝对值得到xi系数相加等于0的区间线性不等式组,然后将不等式相加消除变量xi,最后对不等式应用线性化算子ζ抽象得到一个线性(非区间)不等式。
步骤2.7)经过上述浮点傅立叶-莫茨金消除后会产生大量冗余约束,通过严格的线性规划来消除冗余约束。
步骤3)选取电力数据库稳定单元和属性步骤
步骤3.1)以图2.1、图2.2、图2.3、图2.4所示的表为例,为了方便观察和计算本文将量测数据表的电量底码全部设为0。
步骤3.2)因为一般家庭和工业标准电压为220V/380V,所以单元格间的稳定单元SCIC为 [0,380]。
步骤3.3)同一个元组中两个或多个属性之间的相互关系提取的属性的稳定单元SCIT存在下列不等式约束关系 {-4x-y≤34,-2x+3y≤24,x+3y≤6,x+y≤0,2x-3y≤-5,x-4y≤0}。
步骤3.4)元组间的属性的稳定单元SCIA存在下列不等式约束关系 {-x-2y≤2,-2x-y≤-5,-4x+y≤-7,-3x+4y≤11,-x+6y≤41,2x+ 3y≤53,2x+y≤39,2x-y≤33,3x-4y≤52,x-4y≤28}。
步骤3.5)不同数据库属性之间的稳定单元SCIDB存在下列不等式约束关系 {7c+d≤100,3a+2d>7,2a-3b>15,5c+2a<29,6b-4c<28,5d-6c≤ 65,7d-b≤13,8b+5c≥72,y≤15}。
步骤4)构造强鲁棒性数据库指纹步骤
步骤4.1)给定如图2.1、图2.2、图2.3、图2.4的数据库和与数据库交互的应用程序集B。设Q是B中应用程序发出的查询集。Q:SELECT、UPDATE、DELETE、INSERT等操作集合。(S0,Λ0,τ,W),(Si,Λi,τ,W)分别表示数据库初始和在i时的状态。
步骤4.2)图2.1不受查询影响的稳定单元为项目招投标、工程名称和设施编号;图2.2 不受查询影响的稳定单元为配电和用电;图2.3不受查询影响的稳定单元为电量底码和电压。
步骤4.3)提取基于语义的属性
Figure BSA0000228016800000091
Figure BSA0000228016800000092
步骤4.4)用合适的最小完美哈希函数
Figure BSA0000228016800000093
对稳定部分
Figure BSA0000228016800000094
和属性集
Figure BSA0000228016800000095
进行编码。
步骤4.5)稳定属性集合Astable={项目招投标、工程名称、设施编号、配电、用电、
电量底码、电压}和不稳定属性集合Avar={发电、输电、变电、功率、电流、功率因数、电量、电损、统计}。考虑虚拟主键Vpk的值和属于数据库的稳定部分属性的值,由算式
Figure BSA0000228016800000096
标记2,3元组,标记元组的数量2,根据哈希函数
Figure BSA0000228016800000097
确定指纹矩阵的第5行。
步骤4.6)以量测数据表的元组2<0,3.95,45.40,220.00,0.80>为例,对于这个元组r,在水印表W中用t.Vpk=3.95创建一个元组t。基于伪随机序列发生器产生的随机值对r中属性的随机选择顺序如下:<45.40,220.00,0.80,0>。由于45.40,0.80属于Avar,因此t中相应的位值将为0,对于其他稳定属性值(即‘0’、和‘220.000’)将其最高位与指纹的第v行进行异或,分别为
Figure BSA0000228016800000098
Figure BSA0000228016800000099
因此, W<3.95,0,0100011,0,1011100,k1,k2,k3,k4>就是我们最终得到强鲁棒性的数据库指纹。
以上所述仅是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (5)

1.一种强鲁棒性的电力数据库指纹生成方法,包括以下步骤:
步骤1,选取浮点多面体域弱接合步骤;首先计算出多面体的界约束和包络约束,它是包围盒所能确定的最小多面体,然后为了确定新的关系型约束,根据参与凸闭包计算的每个输入多面体的包络约束数和非包络约束数,启发式的确定其上的近似。
步骤2,根据浮点多面体域生成不变式步骤;由于抽象域和具体域的计算符号和计算方法不同,我们引入的浮点符号进行四舍五入的浮点运算。首先利用线性规划动态确定弱接合来提高接合计算的效率,然后对经过各种域操作(包括交、接合、投影、加宽等)得到的线性不等式集利用浮点傅立叶-莫茨金消除进行凸闭包的计算,通过线性规划消除冗余约束,最终得到不变式。
步骤3,选取电力数据库稳定单元和属性步骤;电力数据库遭受外界攻击(如查询数据、添加数据、更新数据、删除数据等)后,数据库的状态会发生改变。当某个单元格的数值在被攻击后未发生改变,则选取该单元格为稳定单元。我们把上述稳定的单元格进行累并操作就得到了基于语义的不变属性。
步骤4,构造强鲁棒数据库指纹步骤;首先找出数据库初始状态下的稳定单元,提取基于语义的属性。然后用哈希函数对稳定单元进行编码。接着对密钥和虚拟主键进行哈希得出要标记的属性,找出相应的的计算指纹位。最后通过指纹构造算法得到格式为<虚拟主键,元组属性和指纹的异或值,稳定单元编码值>的强鲁棒数据库指纹。
2.根据权利要求1所述的一种强鲁棒性的电力数据库指纹生成方法,所述步骤1选取浮点多面体域弱接合的具体步骤为:
步骤2.1定义多面体包络及其闭包之包围盒(界盒)所能确定的最小多面体。精确的保留了多面体的包络和界信息。
步骤2.2设i∈{1,2},定义Pi中的包络约束和Pi的包围盒所确定的最小多面体,记作EB(Pi);定义Pi中的非包络约束和Pi的包围盒所确定的最小多面体,记作NEB(Pi)。
步骤2.3根据参与凸闭包计算的每个输入多面体的包络约束数和非包络约束数,启发式的确定其上的近似。如果该多面体中的包络约束小于非包络约束,则使用包络约束界约束作为该多面体上的近似,否则使用非包络约束界约束作为该多面体上的近似。该弱接合操作定义为:
Figure FSA0000228016790000011
3.根据权利要求1所述的一种强鲁棒性的电力数据库指纹生成方法,所述步骤2根据浮点多面体域生成不变式的具体生成步骤为:
步骤3.1首先利用偏序结构的完全格
Figure FSA0000228016790000012
来表示抽象域中的精确度、上下界和最大最小元。设程序中有n个数值型程序变量Vars={v1,v2,...vn},I为数值的集合(如自然数N、整数Z、有理数Q、实数R、浮点数F)。一个程序环境ρ:Vars→I把每个程序变量vi映射成其实际值ρ(vi)。设程序中程序点的集合为L,程序状态通过程序点和程序环境所构成的序偶来描述,即
Figure FSA0000228016790000013
程序状态的幂集构成一个完全格
Figure FSA0000228016790000021
步骤3.2迁移系统(S,Λ,τ,I)表示数据迁移的过程。S是程序状态的(非空)集合;Λ是程序语义动作的(非空)集合;若一个程序状态s经过某个域操作a其状态发生了改变,我们将这个迁移关系τ记作
Figure FSA0000228016790000022
是初始程序状态的(非空)集合。
步骤3.3把语义函数f分解成一系列子函数fi,每个程序点Li对应一个子函数fi。我们关心每个程序点Li处变量vi的取值情况。因此在每个程序点把该处已经计算出来的可能环境“聚集”起来,把P(L×(Vars→I))提升到集合L→P(Vars→I),从而得到程序的聚集语义。进一步我们就可以在数值抽象域上通过混沌迭代来计算抽象不动点。
步骤3.4抽象域与具体域计算方式不同,因此引入相应的浮点计算
Figure FSA0000228016790000023
来表示具体域的{+,-,×,/}。采用四舍五入模式r∈{+∞,-∞}标记(+∞:向上取值,-∞:向下取值)。分析对应的各域操作(包含冗余约束消除、空多面体测试、交、接合、投影、迁移、加宽和变窄等)得到相应的不等式集。
步骤3.5设
Figure FSA0000228016790000024
是区间线性不等式,
Figure FSA0000228016790000025
是x的包围框。则线性化算子ζ计算公式如下:
Figure FSA0000228016790000026
理论上dk为ak,bk的中点
Figure FSA0000228016790000027
步骤3.6使用上述的线性化算子ζ,将区间运算结果中的区间线性不等式线性化为标量系数的线性不等式。对于消除含有变量xi的不等式组,首先使用向外舍入的区间算术把不等式约束分别除以各自所对应的xi系数的绝对值得到xi系数相加等于0的区间线性不等式组,然后将不等式相加消除变量xi,最后对不等式应用线性化算子ζ抽象得到一个线性(非区间)不等式。
步骤3.7经过上述浮点傅立叶-莫茨金消除后会产生大量冗余约束,通过严格的线性规划来消除冗余约束。
4.根据权利要求1所述的一种强鲁棒性的电力数据库指纹生成方法,所述步骤3选取电力数据库稳定单元和属性的具体步骤为:
步骤4.1典型的电力业务数据包括档案数据、管理数据、量测数据(如电量底码、功率、电流、电压、功率因数)、计算数据(如电量、线损、统计)等,针对这些特点建立模拟电力数据库。
步骤4.2对于不同的电力数据库找出具有特殊属性的单元格SCIC。在有效状态a<val<b下,属性可由[a,b]表示。即在查询处理下即使值发生改变,区域内的属性依然没变。
步骤4.3根据同一个元组中两个或多个属性之间的相互关系提取的属性SCIT。假设一个元组有两个数值属性值a、b且存在关系P1={a+b≤10,3a+2b≥16},P2={a-3b≤6,5a-b≤8},则可用多面体域
Figure FSA0000228016790000028
表示内部元组属性的不变值。
步骤4.4元组间的属性很难从关系中的独立元组中获取。SCIA往往是整个数据库产生的约束而不止是属性间的约束。获取方式类似于SCIT
步骤4.5不同数据库属性之间关联产生的约束,与外键有关。把数据库1产生的约束记作P1,关联数据库约束记作P2...Pi,以此类推,最终得到数据库间的稳定单元
Figure FSA0000228016790000031
5.根据权利要求1所述的一种强鲁棒性的电力数据库指纹生成方法,所述步骤4构造持久数据库水印的具体步骤为:
步骤5.1给定数据库DB和与DB交互的应用程序集B。设Q是B中应用程序发出的查询集。Q:SELECT、UPDATE、DELETE、INSERT等操作集合。用步骤3.2的迁移系统来表示数据库的状态变化。其中S0:数据库的初始状态;Si:数据库在i时的状态;Λi:查询Q的非空集合;τ:状态迁移关系
Figure FSA0000228016790000032
W:嵌入在初始状态中的水印。(S0,Λ0,τ,W),(Si,Λi,τ,W)分别表示数据库初始和在i时的状态。
步骤5.2识别状态S0中不受查询影响的稳定单元格
Figure FSA0000228016790000033
步骤5.3提取一组基于语义的属性
Figure FSA0000228016790000034
该属性由单元内(SCIC)、元组内(SCIT)、元组属性之间(SCIA)和数据库之间(SCIDB)的属性组成状态S0中的数据库信息。
步骤5.4用合适的最小完美哈希函数
Figure FSA0000228016790000035
对稳定部分
Figure FSA0000228016790000036
和属性集
Figure FSA0000228016790000037
进行编码。
步骤5.5将私钥key和虚拟主键Vpk数作为隐藏参数。考虑虚拟主键Vpk的值和属于DB数据库的稳定部分属性的值,将其作为标记元组,标记元组的数量ω=η×(1/γ),η为全体数据库元组的数量,γ为数据库属性的个数,根据哈希函数找出指纹的第v位。
步骤5.6对于标记元组ω中的每个元组r,在W中生成一个元组t,t的虚拟主键等于r的虚拟主键,仅仅是为了唯一地标识W中的元组。然后,在t中为属性P1、P2、P3、P4添加四个值,它们对应于SCIC、SCIT、SCIA、SCIDB的编码值,分别用k1,k2,k3,k4如果缺少这些属性中的任何一个,把相应的单元格置0。Vstable表示r中的稳定属性。Gi表示从伪随机序列发生器中获得的第i个值,该值由稳定属性,元组r和私钥key作为参数计算。j表示随机选取r中的一个属性。若r中第j个属性是稳定的,将r的第j个属性的重要部分与指纹关联矩阵的第v行异或嵌入到t的第i位,否则置0。最后删除r中的第j个属性。最后得到强鲁棒性的数据库指纹W<Vpk,b1,b2...bγ,k1,k2,k3,k4>。
CN202011532368.4A 2020-12-22 2020-12-22 一种强鲁棒性的电力数据库指纹生成方法 Active CN112560099B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202011532368.4A CN112560099B (zh) 2020-12-22 2020-12-22 一种强鲁棒性的电力数据库指纹生成方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202011532368.4A CN112560099B (zh) 2020-12-22 2020-12-22 一种强鲁棒性的电力数据库指纹生成方法

Publications (2)

Publication Number Publication Date
CN112560099A true CN112560099A (zh) 2021-03-26
CN112560099B CN112560099B (zh) 2022-11-11

Family

ID=75031423

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202011532368.4A Active CN112560099B (zh) 2020-12-22 2020-12-22 一种强鲁棒性的电力数据库指纹生成方法

Country Status (1)

Country Link
CN (1) CN112560099B (zh)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108614961A (zh) * 2017-12-21 2018-10-02 神龙汽车有限公司 一种数据库数字水印嵌入和保护方法
CN109872267A (zh) * 2019-02-19 2019-06-11 哈尔滨工业大学(深圳) 一种鲁棒性的基于分组的数字水印方法
CN112016061A (zh) * 2019-12-16 2020-12-01 江苏水印科技有限公司 一种基于鲁棒水印技术的Excel文档数据保护方法

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN108614961A (zh) * 2017-12-21 2018-10-02 神龙汽车有限公司 一种数据库数字水印嵌入和保护方法
CN109872267A (zh) * 2019-02-19 2019-06-11 哈尔滨工业大学(深圳) 一种鲁棒性的基于分组的数字水印方法
CN112016061A (zh) * 2019-12-16 2020-12-01 江苏水印科技有限公司 一种基于鲁棒水印技术的Excel文档数据保护方法

Also Published As

Publication number Publication date
CN112560099B (zh) 2022-11-11

Similar Documents

Publication Publication Date Title
Raju et al. Fuzzy functional dependencies and lossless join decomposition of fuzzy relational database systems
Devanbu et al. Authentic data publication over the internet
Papamanthou et al. Time and space efficient algorithms for two-party authenticated data structures
Goodrich et al. Indexing information for data forensics
Caseau Efficient handling of multiple inheritance hierarchies
CN109359172B (zh) 一种基于图划分的实体对齐优化方法
Lafaye et al. Watermill: An optimized fingerprinting system for databases under constraints
CN111241576B (zh) 一种用于数据库分发保护的零水印方法
CN112800394A (zh) 一种基于聚类加权多维桶分组的安全数据库水印构造方法
CN116561264A (zh) 一种基于知识图谱的智能问答系统的构建方法
CN111144133A (zh) 基于区块链的翻译文稿关键词修改溯源系统与方法
Zhang et al. ‘A robust and adaptive watermarking technique for relational database
CN112560099B (zh) 一种强鲁棒性的电力数据库指纹生成方法
Halder et al. Persistent watermarking of relational databases
Cui et al. Research on copyright protection method of material genome engineering data based on zero-watermarking
CN111917861A (zh) 基于区块链和知识图谱的知识存储方法、系统及其应用
Gui et al. Mining with rarity for web intelligence
CN114911863A (zh) 一种海洋空间资源监测平台的数据处理方法
Xu Deep mining method for high-dimensional big data based on association rule
CN110990869A (zh) 一种应用于隐私保护的电力大数据脱敏方法
CN111091283A (zh) 基于贝叶斯网络的电力数据指纹评估方法
Lin et al. Mining high-utility sequential patterns in uncertain databases
Kundu et al. On hashing graphs
Welsh Percolation and the random cluster model: combinatorial and algorithmic problems
Cui et al. The approach for optimization in watermark signal of relational databases by using genetic algorithms

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