CN108090369B - 一种基于Chebyshev多项式的GIS矢量数据脱密与恢复方法 - Google Patents

一种基于Chebyshev多项式的GIS矢量数据脱密与恢复方法 Download PDF

Info

Publication number
CN108090369B
CN108090369B CN201711469429.5A CN201711469429A CN108090369B CN 108090369 B CN108090369 B CN 108090369B CN 201711469429 A CN201711469429 A CN 201711469429A CN 108090369 B CN108090369 B CN 108090369B
Authority
CN
China
Prior art keywords
recovery
decryption
control point
decrypted
data
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
Application number
CN201711469429.5A
Other languages
English (en)
Other versions
CN108090369A (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 Normal University
Original Assignee
Nanjing Normal University
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 Normal University filed Critical Nanjing Normal University
Priority to CN201711469429.5A priority Critical patent/CN108090369B/zh
Publication of CN108090369A publication Critical patent/CN108090369A/zh
Application granted granted Critical
Publication of CN108090369B publication Critical patent/CN108090369B/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/602Providing cryptographic facilities or services
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Theoretical Computer Science (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Bioethics (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Complex Calculations (AREA)
  • Other Investigation Or Analysis Of Materials By Electrical Means (AREA)

Abstract

本发明公开了一种基于Chebyshev多项式的GIS矢量数据脱密与恢复方法,包括:(1)密钥生成过程,包括控制点及其扰动量的确定、样本点的生成及脱密中误差的计算、脱密模型参数的确定、密钥的加密保存;(2)脱密过程,包括密钥文件解密读取、打开原始矢量数据、遍历要素并获取原始坐标、归一化坐标并进行脱密处理、保存脱密后的数据;(3)恢复过程,包括,密钥文件解密读取、打开脱密后的数据、恢复模型建立、脱密后数据的恢复处理、恢复后数据保存等步骤。本发明方法抗攻击能力强、脱密后数据可以利用密钥进行恢复、拓扑关系保持良好,且数据的整体变形平滑、局部扰动随机,能为矢量GIS数据在共享、传输、存储等多方面的应用提供有力的安全保障。

Description

一种基于Chebyshev多项式的GIS矢量数据脱密与恢复方法
技术领域
本发明属于地理信息安全领域,具体涉及一种基于Chebyshev多项式的GIS矢量数据脱密与恢复方法。
背景技术
矢量数据是使用最为广泛的一种基础地理数据,往往包含着大量的敏感信息,其安全保护问题显得尤为重要。2017年7月1日起实施的新修订的《中华人民共和国测绘法》专门增设了监督管理一章,要求建立地理信息安全管理制度和技术防控体系。相关政策法规也对公开地图的保密内容和位置精度做出了明确规定。
脱密作为国内外普遍采用的地理信息安全保密技术手段,为地理信息的共享与应用提供了安全保障。但是,现有脱密模型与方法主要存在以下不足:①线性变换模型相对简单,缺乏局部的随机扰动,安全性较低。②部分非线性模型的脱密误差难以有效控制,导致脱密后数据不能满足脱密指标的要求,且拓扑关系可能受到破坏,影响脱密后数据的可用性。③一些模型不能在密钥的支持下进行逆向精确恢复,降低了脱密后数据的使用价值,不利于脱密后数据与原始数据的集成应用。
发明内容
本发明针对现有脱密模型与方法存在的不足,提出一种基于Chebyshev多项式的GIS矢量数据脱密与恢复方法,该方法既顾及了数据的整体变换又增加了局部的随机扰动,其抗攻击性与安全性强、误差可控、拓扑保持、算法可逆。
为解决上述技术问题,本发明采用以下技术方案。
本发明的一种基于Chebyshev多项式的GIS矢量数据脱密与恢复方法,包括如下过程
(一)密钥生成
步骤11、确定待脱密矢量数据范围
打开待脱密的矢量数据,获取其最小外接矩形R,R左下角的角点坐标为(xmin,ymin),R的右上角的角点坐标为(xmax,ymax);并按照公式(1)计算数据范围的长度Length和数据宽度Height;
Figure GDA0003030898560000011
步骤12、选取控制点并设置控制点的扰动量
从待脱密的矢量数据范围内选取num个原始控制点Cpoint(sXi,sYi)(num大于待求解的参数个数),并根据脱密指标给定每个控制点适当的扰动量ΔXi与ΔYi;则目标控制点Cpoint(tXi,tYi)的坐标为:
Figure GDA0003030898560000021
步骤13、控制点归一化
将步骤12中选取的控制点按照公式(2)归一化至[-1,1]区间内,得到归一化后的控制点Cpoint(sXig,sYig):
Figure GDA0003030898560000022
步骤14、样本点的生成:
以待脱密的数据范围作为全局样本,设定样本点的间隔为d,在全局样本中均匀的选取k=(Length/d)·(Height/d)个样本点Samplepoint(sXi,sYi)作为计算脱密误差的样本点;
步骤15、脱密误差迭代控制
a)建立脱密模型:将归一化后的控制点以及控制点的扰动量代入公式(3),求解模型参数Cx与Cy,建立Chebyshev多项式脱密模型(4),其中n1、n2为Chebyshev多项式的截止阶数。
Figure GDA0003030898560000023
Figure GDA0003030898560000024
其中,Tj是指以sXig为自变量的第j阶Chebyshev多项式;Tk是指以sYig为自变量的第k阶Chebyshev多项式;
b)计算脱密误差:将步骤14中生成的样本点代入脱密模型(4),计算出脱密后的样本点坐标Samplepoint(tXi,tYi),并按照公式(5)计算脱密误差RMSEdecrypt
Figure GDA0003030898560000025
c)调整控制点扰动量:将脱密误差RMSEdecrypt与脱密指标σ进行比较,若RMSEdecrypt与脱密指标σ之间的差值大于设定的阈值,则需要调整控制点的扰动量ΔXi与ΔYi来控制样本点的中误差,若RMSEdecrypt小于脱密指标σ,则需要增大ΔXi与ΔYi,反之则需要缩小ΔXi与ΔYi,按照公式(6)对控制点的偏移量进行控制:
Figure GDA0003030898560000031
迭代步骤a)到c),直至RMSEdecrypt与脱密指标σ之间的差值小于设定的阈值,然后执行步骤16;
步骤16:生成密钥:将最终的模型参数Cx与Cy和控制点Cpoint(sXi,sYi)及其偏移量ΔXi与ΔYi加密保存为密钥文件。
(二)脱密处理
步骤21、解密并读取密钥文件,提取模型参数Cx与Cy,打开待脱密矢量数据;
步骤22、遍历待脱密矢量数据要素,获取要素点的原始坐标p(sXi,sYi);
步骤23、根据公式(2)将p(sXi,sYi)归一化至[-1,1]区间内,得到归一化后的要素点的坐标p(sXig,sYig);
步骤24、将归一化后的坐标p(sXig,sYig)以及要素点的原始坐标p(sXi,sYi)代入脱密模型(7),得到脱密后要素点的坐标p(tXig,tYig);
Figure GDA0003030898560000032
步骤25、循环步骤22至24,直至所有的要素处理完毕;保存脱密后的矢量数据。
(三)脱密恢复
步骤31、解密并读取密钥文件:将脱密过程中的源控制点Cpoint(sXi,sYi)作为恢复的目标控制点Cpointrecovery(tXi,tYi),将脱密过程中目标控制点Cpoint(tXi,tYi)作为恢复的源控制点Cpointrecovery(sXi,sYi),则恢复过程中的源控制点Cpointrecovery(sXi,sYi)的变换量ΔXrecoveryi、ΔYrecoveryi与脱密过程中源控制点Cpoint(sXi,sYi)的变换量ΔXi、ΔYi互为相反数;
步骤32、将步骤31中的Cpointrecovery(sXi,sYi)及其变换量ΔXrecoveryi、ΔYrecoveryi代入公式(3)求解恢复模型参数Cxrecovery以及Cyrecovery
步骤33、将步骤14中的Samplepoint(sXi,sYi)结合密钥中的脱密模型参数Cx与Cy计算脱密后的样本点Samplepoint(tXi,tYi),并计算出脱密误差RMSEdecrypt,并将脱密后的样本点Samplepoint(tXi,tYi)作为恢复过程中的源样本点Samplepointrecovery(sXi,sYi);
步骤34、将Samplepointrecovery(sXi,sYi)以及恢复模型参数Cxrecovery与Cyrecovery代入公式(4)计算恢复后的样本点Samplepointrecovery(tXi,tYi),并根据中误差计算公式(5)计算恢复误差RMSErecovery
步骤35、将步骤34中计算出的恢复误差RMSErecovery与脱密误差RMSEdecrypt比较,若RMSErecovery与RMSEdecrypt之间的差值大于设定的阈值,则需要调整控制点Cpointrecovery(sXi,sYi)的偏移量ΔXrecoveryi和ΔYrecoveryi迭代控制样本点的中误差,若RMSErecovery<RMSEdecrypt,则需要增大ΔXrecoveryi和ΔYrecoveryi,反之则需要缩小ΔXrecoveryi和ΔYrecoveryi,按照公式(8)对控制点的偏移量进行控制:
Figure GDA0003030898560000041
重复步骤32到步骤35,直至RMSErecovery与RMSEdecrypt之间的差值小于设定的阈值,输出此时的恢复模型参数Cxrecovery与Cyrecovery
步骤36、打开脱密后的数据,遍历脱密后的数据的要素坐标,归一化后代入恢复模型(9)即得恢复后的数据的坐标:
Figure GDA0003030898560000042
步骤37、循环处理每个要素点的坐标,直至所有要素循环处理完毕,保存恢复后的数据。
与现有技术相比,本发明具有以下优点和有益效果:
1.通过迭代控制点扰动量来控制脱密误差,避免了人工调整控制点,能够精确地满足脱密指标。
2.在密钥支持下,可以较高精度地恢复到原始数据。
3.抗攻击能力强,能够保证脱密后数据的安全。
4.脱密后数据拓扑关系保持良好,保证了脱密后数据的可用性。
附图说明
图1是本发明的一种实施例的矢量数据脱密流程图。
图2是本发明的一种实施例的脱密后矢量数据的恢复流程图。
图3是本发明的一种实施例选用的待脱密矢量数据。
图4是本发明的一种实施例的待脱密矢量数据与脱密后矢量数据的叠加效果图。
具体实施方式
本发明的一种基于Chebyshev多项式的GIS矢量数据脱密与恢复方法,包括:(1)密钥生成过程,包括控制点及其扰动量的确定、样本点的生成及脱密中误差的计算、脱密模型参数的确定、密钥的加密保存;(2)脱密过程,包括密钥文件解密读取、打开原始矢量数据、遍历要素并获取原始坐标、归一化坐标并进行脱密处理、保存脱密后的数据;(3)恢复过程,包括,密钥文件解密读取、打开脱密后的数据、恢复模型建立、脱密后数据的恢复处理、恢复后数据保存等步骤。本发明方法抗攻击能力强、脱密后数据可以利用密钥进行恢复、拓扑关系保持良好,且数据的整体变形平滑、局部扰动随机,能为矢量GIS数据在共享、传输、存储等多方面的应用提供有力的安全保障。
本发明的技术方案,包括如下过程:
(一)密钥生成
步骤11、确定待脱密矢量数据范围
打开待脱密的矢量数据,获取其最小外接矩形R,R左下角的角点坐标为(xmin,ymin),R的右上角的角点坐标为(xmax,ymax);并按照公式(1)计算数据范围的长度Length和数据宽度Height;
Figure GDA0003030898560000051
步骤12、选取控制点并设置控制点的扰动量
从待脱密的矢量数据范围内选取num个原始控制点Cpoint(sXi,sYi)(num大于待求解的参数个数),并根据脱密指标给定每个控制点适当的扰动量ΔXi与ΔYi;则目标控制点Cpoint(tXi,tYi)的坐标为:
Figure GDA0003030898560000052
步骤13、控制点归一化
将步骤12中选取的控制点按照公式(2)归一化至[-1,1]区间内,得到归一化后的控制点Cpoint(sXig,sYig):
Figure GDA0003030898560000053
步骤14、样本点的生成:
以待脱密的数据范围作为全局样本,设定样本点的间隔为d,在全局样本中均匀的选取k=(Length/d)·(Height/d)个样本点Samplepoint(sXi,sYi)作为计算脱密误差的样本点;
步骤15、脱密误差迭代控制
a)建立脱密模型:将归一化后的控制点以及控制点的扰动量代入公式(3),求解模型参数Cx与Cy,建立Chebyshev多项式脱密模型(4),其中n1、n2为Chebyshev多项式的截止阶数。
Figure GDA0003030898560000061
Figure GDA0003030898560000062
其中,Tj是指以sXig为自变量的第j阶Chebyshev多项式;Tk是指以sYig为自变量的第k阶Chebyshev多项式;
b)计算脱密误差:将步骤14中生成的样本点代入脱密模型(4),计算出脱密后的样本点坐标Samplepoint(tXi,tYi),并按照公式(5)计算脱密误差RMSEdecrypt
Figure GDA0003030898560000063
c)调整控制点扰动量:将脱密误差RMSEdecrypt与脱密指标σ进行比较,若RMSEdecrypt与脱密指标σ之间的差值大于设定的阈值,则需要调整控制点的扰动量ΔXi与ΔYi来控制样本点的中误差,若RMSEdecrypt,则需要增大ΔXi与ΔYi,反之则需要缩小ΔXi与ΔYi,按照公式(6)对控制点的偏移量进行控制:
Figure GDA0003030898560000064
迭代步骤a)到c),直至RMSEdecrypt与脱密指标σ之间的差值小于设定的阈值,然后执行步骤16;
步骤16:生成密钥:将最终的模型参数Cx与Cy和控制点Cpoint(sXi,sYi)及其偏移量ΔXi与ΔYi加密保存为密钥文件。
(二)脱密处理
步骤21、解密并读取密钥文件,提取模型参数Cx与Cy,打开待脱密矢量数据;
步骤22、遍历待脱密矢量数据要素,获取要素点的原始坐标p(sXi,sYi);
步骤23、根据公式(2)将p(sXi,sYi)归一化至[-1,1]区间内,得到归一化后的要素点的坐标p(sXig,sYig);
步骤24、将归一化后的坐标p(sXig,sYig)以及要素点的原始坐标p(sXi,sYi)代入脱密模型(7),得到脱密后要素点的坐标p(tXig,tYig);
Figure GDA0003030898560000071
步骤25、循环步骤22至24,直至所有的要素处理完毕;保存脱密后的矢量数据。
(三)脱密恢复
步骤31、解密并读取密钥文件:将脱密过程中的源控制点Cpoint(sXi,sYi)作为恢复的目标控制点Cpointrecovery(tXi,tYi),将脱密过程中目标控制点Cpoint(tXi,tYi)作为恢复的源控制点Cpointrecovery(sXi,sYi),则恢复过程中的源控制点Cpointrecovery(sXi,sYi)的变换量ΔXrecoveryi、ΔYrecoveryi与脱密过程中源控制点Cpointrecovery(sXi,sYi)的变换量ΔXi、ΔYi互为相反数;
步骤32、将步骤31中的Cpointrecovery(sXi,sYi)及其变换量ΔXrecoveryi、ΔYrecoveryi代入公式(3)求解恢复模型参数Cxrecovery以及Cyrecovery
步骤33、将步骤14中的Samplepoint(sXi,sYi)结合密钥中的脱密模型参数Cx与Cy计算脱密后的样本点Samplepoint(tXi,tYi),并计算出脱密误差RMSEdecrypt,并将脱密后的样本点Samplepoint(tXi,tYi)作为恢复过程中的源样本点Samplepointrecovery(sXi,sYi);
步骤34、将Samplepointrecovery(sXi,sYi)以及恢复模型参数Cxrecovery与Cyrecovery代入公式(4)计算恢复后的样本点Samplepointrecovery(tXi,tYi),并根据中误差计算公式(5)计算恢复误差RMSErecovery
步骤35、将步骤34中计算出的恢复误差RMSErecovery与脱密误差RMSEdecrypt比较,若RMSErecovery与RMSEdecrypt之间的差值大于设定的阈值,则需要调整控制点Cpointrecovery(sXi,sYi)的偏移量ΔXrecoveryi和ΔYrecoveryi迭代控制样本点的中误差,若RMSErecovery<RMSEdecrypt,则需要增大ΔXrecoveryi和ΔYrecoveryi,反之则需要缩小ΔXrecoveryi和ΔYrecoveryi,按照公式(8)对控制点的偏移量进行控制:
Figure GDA0003030898560000081
重复步骤32到步骤35,直至RMSErecovery与RMSEdecrypt之间的差值小于设定的阈值,输出此时的恢复模型参数Cxrecovery与Cyrecovery
步骤36、打开脱密后的数据,遍历脱密后的数据的要素坐标,归一化后代入恢复模型(9)即得恢复后的数据的坐标:
Figure GDA0003030898560000082
步骤37、循环处理每个要素点的坐标,直至所有要素循环处理完毕,保存恢复后的数据。
下面结合附图和实施例,对本发明做进一步详细说明。
本实施例选择某校园Shapfile格式的矢量数据(如图3)作为待脱密的矢量数据,坐标系统为自定义投影坐标系。如图1和图2所示,该实施例包括以下步骤:
(一)密钥生成:
步骤11:确定待脱密矢量数据范围
打开待脱密的矢量数据,获取其最小外接矩形R,R左下角的角点坐标为(140414.000,142138.050),R的右上角的角点坐标为(152945.000,155012.940)。计算数据范围的长度Length和数据宽度Height:
Figure GDA0003030898560000083
步骤12:选取控制点并设置控制点的扰动量
从待脱密的矢量数据范围内选取16个原始控制点Cpoint(sXi,sYi)(num大于待求解的参数个数),并根据脱密指标给定每个控制点适当的扰动量ΔXi与ΔYi;则目标控制点Cpoint(tXi,tYi)的坐标为:
Figure GDA0003030898560000084
步骤13:控制点归一化
将步骤12中选取的控制点按照公式(10)归一化至[-1,1]区间内,得到归一化后的控制点Cpoint(sXig,sYig)。
Figure GDA0003030898560000091
步骤14:样本点的生成:
以待脱密的数据范围作为全局样本,在全局样本中均匀的选取400个样本点Samplepoint(sXi,sYi)作为计算脱密误差的样本点。
步骤15:脱密误差迭代控制
a)建立脱密模型。将归一化后的控制点以及控制点的扰动量代入公式(3),求解模型参数Cx与Cy,建立Chebyshev多项式脱密模型(4)
b)计算脱密误差。将步骤14中生成的样本点代入脱密模型(4),计算出脱密后的样本点坐标Samplepoint(tXi,tYi),并按照公式(5)计算脱密误差RMSEdecrypt=77.978m。
c)调整控制点扰动量:将脱密误差RMSEdecrypt与脱密指标σ进行比较,若RMSEdecrypt与脱密指标σ之间的差值大于设定的阈值,则需要调整控制点的扰动量ΔXi与ΔYi来控制样本点的中误差,若RMSEdecrypt,则需要增大ΔXi与ΔYi,反之则需要缩小ΔXi与ΔYi,按照公式(6)对控制点的偏移量进行控制:
迭代步骤a)到c),直至RMSEdecrypt与脱密指标σ之间的差值小于设定的阈值,然后执行步骤16;
最终得到的模型参数Cx与Cy为:
Cx=[-6.759 3.397 1.205 -8.452 1.850 4.422 16.096 26.388 1.256 10.122-2.396 10.243];
Cy=[-1.031 0.221 8.007 3.883 12.130 -22.429 1.837 5.603 0.349 -0.6225.851 5.689];
源控制点的扰动量为:
ΔX=[23.242 24.430 -13.572 -14.929 -23.073 -17.644 23.073 32.573-20.358 17.135 16.287 20.358 21.716 -16.287 -5.429 12.215];
ΔY=[-27.795 27.145 -25.787 20.358 14.929 -16.287 14.929 19.001 -29.859 -24.062 29.859 21.716 23.073 23.073 -36.057 -32.573];
步骤16:生成密钥:将最终的模型参数Cx与Cy和控制点Cpoint(sXi,sYi)及其偏移量ΔXi与ΔYi加密保存为密钥文件。
(二)脱密处理
步骤21:解密并读取密钥文件,提取模型参数Cx与Cy,打开待脱密矢量数据;
步骤22:遍历待脱密矢量数据要素,获取要素点的原始坐标p(sXi,sYi);
步骤23:根据公式(2)将p(sXi,sYi)归一化至[-1,1]区间内,得到归一化后的要素点的坐标p(sXig,sYig);
步骤24:将归一化后的坐标p(sXig,sYig)以及要素点的原始坐标p(sXi,sYi)代入脱密模型(7),得到脱密后要素点的坐标p(tXig,tYig);
步骤25:循环步骤22至24,直至所有的要素处理完毕。保存脱密后的矢量数据。
(三)脱密后数据恢复
步骤31、解密并读取密钥文件:将脱密过程中的源控制点Cpoint(sXi,sYi)作为恢复的目标控制点Cpointrecovery(tXi,tYi),将脱密过程中目标控制点Cpoint(tXi,tYi)作为恢复的源控制点Cpointrecovery(sXi,sYi),则恢复过程中的源控制点Cpointrecovery(sXi,sYi)的变换量ΔXrecoveryi、ΔYrecoveryi与脱密过程中源控制点Cpointrecovery(sXi,sYi)的变换量ΔXi、ΔYi互为相反数;
步骤32、将步骤31中的Cpointrecovery(sXi,sYi)及其变换量ΔXrecoveryi、ΔYrecoveryi代入公式(3)求解恢复模型参数Cxrecovery以及Cyrecovery
步骤33、将步骤14中的Samplepoint(sXi,sYi)结合密钥中的脱密模型参数Cx与Cy计算脱密后的样本点Samplepoint(tXi,tYi),并计算出脱密误差RMSEdecrypt,并将脱密后的样本点Samplepoint(tXi,tYi)作为恢复过程中的源样本点Samplepointrecovery(sXi,sYi);
步骤34:将Samplepointrecovery(sXi,sYi)以及恢复模型参数Cxrecovery与Cyrecovery代入公式(4)计算恢复后的样本点Samplepointrecovery(tXi,tYi),并根据中误差计算公式(5)计算恢复误差RMSErecovery=0.682m;
步骤35:将步骤34中计算出的恢复误差RMSErecovery与脱密误差RMSEdecrypt比较,若RMSErecovery与RMSEdecrypt之间的差值大于设定的阈值,则需要调整控制点Cpointrecovery(sXi,sYi)的偏移量ΔXrecoveryi和ΔYrecoveryi迭代控制样本点的中误差,若RMSErecovery<RMSEdecrypt,则需要增大ΔXrecoveryi和ΔYrecoveryi,反之则需要缩小ΔXrecoveryi和ΔYrecoveryi,按照公式(8)对控制点的偏移量进行控制:
重复步骤32到步骤35,直至RMSErecovery与RMSEdecrypt之间的差值小于设定的阈值,输出此时的恢复模型参数Cxrecovery与Cyrecovery
Cxrecovery=[7.187 -3.711 -0.254 7.856 -0.922 -4.072 -15.930 -25.856 -2.586 -12.192 0.846 -10.598]
Cyrecovery=[1.154 0.789 -7.718 -5.688 -13.147 21.129 -2.013 -5.678 -0.495 0.817-7.114 -5.598]
步骤36:打开脱密后的数据,遍历脱密后的数据的要素坐标,归一化后代入恢复模型(9)即得恢复后的数据的坐标。
步骤37:循环处理每个要素点的坐标,直至所有要素循环处理完毕,保存恢复后的数据。

Claims (2)

1.一种基于Chebyshev多项式的GIS矢量数据脱密与恢复方法,其特征在于,包括以下步骤:
(1)密钥生成过程,包括:确定待脱密矢量数据范围、选取控制点并设置控制点的扰动量、控制点归一化、样本点的生成、脱密误差迭代控制、生成密钥;
(2)脱密过程,包括:密钥文件解密读取、打开原始矢量数据、遍历要素并获取原始坐标、归一化坐标并进行脱密处理、保存脱密后的数据;
(3)恢复过程,包括:密钥文件解密读取、打开脱密后的数据、恢复模型建立、脱密后数据的恢复处理、恢复后数据保存;
所述步骤(1)密钥生成过程包括:
步骤11、确定待脱密矢量数据范围
打开待脱密的矢量数据,获取其最小外接矩形R,R左下角的角点坐标为(xmin,ymin),R的右上角的角点坐标为(xmax,ymax);并按照公式(1)计算数据范围的长度Length和数据宽度Height;
Figure FDA0003030898550000011
步骤12、选取控制点并设置控制点的扰动量
从待脱密的矢量数据范围内选取num个原始控制点Cpoint(sXi,sYi)(num大于待求解的参数个数),并根据脱密指标给定每个控制点适当的扰动量ΔXi与ΔYi;则目标控制点Cpoint(tXi,tYi)的坐标为:
Figure FDA0003030898550000012
步骤13、控制点归一化
将步骤12中选取的控制点按照公式(2)归一化至[-1,1]区间内,得到归一化后的控制点Cpoint(sXig,sYig):
Figure FDA0003030898550000013
步骤14、样本点的生成:
以待脱密的数据范围作为全局样本,设定样本点的间隔为d,在全局样本中均匀的选取k=(Length/d)·(Height/d)个样本点Samplepoint(sXi,sYi)作为计算脱密误差的样本点;
步骤15、脱密误差迭代控制
a)建立脱密模型:将归一化后的控制点以及控制点的扰动量代入公式(3),求解模型参数Cx与Cy,建立Chebyshev多项式脱密模型(4),其中n1、n2为Chebyshev多项式的截止阶数;
Figure FDA0003030898550000021
Figure FDA0003030898550000022
其中,Tj是指以sXig为自变量的第j阶Chebyshev多项式;Tk是指以sYig为自变量的第k阶Chebyshev多项式;
b)计算脱密误差:将步骤14中生成的样本点代入脱密模型(4),计算出脱密后的样本点坐标Samplepoint(tXi,tYi),并按照公式(5)计算脱密误差RMSEdecrypt
Figure FDA0003030898550000023
c)调整控制点扰动量:将脱密误差RMSEdecrypt与脱密指标σ进行比较,若RMSEdecrypt与脱密指标σ之间的差值大于设定的阈值,则需要调整控制点的扰动量ΔXi与ΔYi来控制样本点的中误差,若RMSEdecrypt小于脱密指标σ,则需要增大ΔXi与ΔYi,反之则需要缩小ΔXi与ΔYi,按照公式(6)对控制点的偏移量进行控制:
Figure FDA0003030898550000024
迭代步骤a)到c),直至RMSEdecrypt与脱密指标σ之间的差值小于设定的阈值,然后执行步骤16;
步骤16:生成密钥:将最终的模型参数Cx与Cy和控制点Cpoint(sXi,sYi)及其偏移量ΔXi与ΔYi加密保存为密钥文件;
所述步骤(2)脱密处理过程包括:
步骤21、解密并读取密钥文件,提取模型参数Cx与Cy,打开待脱密矢量数据;
步骤22、遍历待脱密矢量数据要素,获取要素点的原始坐标p(sXi,sYi);
步骤23、根据公式(2)将p(sXi,sYi)归一化至[-1,1]区间内,得到归一化后的要素点的坐标p(sXig,sYig);
步骤24、将归一化后的坐标p(sXig,sYig)以及要素点的原始坐标p(sXi,sYi)代入脱密模型(7),得到脱密后要素点的坐标p(tXi,tYi);
Figure FDA0003030898550000031
步骤25、循环步骤22至24,直至所有的要素处理完毕;保存脱密后的矢量数据。
2.根据权利要求1所述的一种基于Chebyshev多项式的GIS矢量数据脱密与恢复方法,其特征在于,步骤(3)脱密恢复过程包括:
步骤31、解密并读取密钥文件:将脱密过程中的源控制点Cpoint(sXi,sYi)作为恢复的目标控制点Cpointrecovery(tXi,tYi),将脱密过程中目标控制点Cpoint(tXi,tYi)作为恢复的源控制点Cpointrecovery(sXi,sYi),则恢复过程中的源控制点Cpointrecovery(sXi,sYi)的变换量ΔXrecoveryi、ΔYrecoveryi与脱密过程中源控制点Cpoint(sXi,sYi)的变换量ΔXi、ΔYi互为相反数;
步骤32、将步骤31中的Cpointrecovery(sXi,sYi)及其变换量ΔXrecoveryi、ΔYrecoveryi代入公式(3)求解恢复模型参数Cxrecovery以及Cyrecovery
步骤33、将步骤14中的Samplepoint(sXi,sYi)结合密钥中的脱密模型参数Cx与Cy计算脱密后的样本点Samplepoint(tXi,tYi),并计算出脱密误差RMSEdecrypt,并将脱密后的样本点Samplepoint(tXi,tYi)作为恢复过程中的源样本点Samplepointrecovery(sXi,sYi);
步骤34、将Samplepointrecovery(sXi,sYi)以及恢复模型参数Cxrecovery与Cyrecovery代入公式(4)计算恢复后的样本点Samplepointrecovery(tXi,tYi),并根据中误差计算公式(5)计算恢复误差RMSErecovery
步骤35、将步骤34中计算出的恢复误差RMSErecovery与脱密误差RMSEdecrypt比较,若RMSErecovery与RMSEdecrypt之间的差值大于设定的阈值,则需要调整控制点Cpointrecovery(sXi,sYi)的偏移量ΔXrecoveryi和ΔYrecoveryi迭代控制样本点的中误差,若RMSErecovery<RMSEdecrypt,则需要增大ΔXrecoveryi和ΔYrecoveryi,反之则需要缩小ΔXrecoveryi和ΔYrecoveryi,按照公式(8)对控制点的偏移量进行控制:
Figure FDA0003030898550000041
重复步骤32到步骤35,直至RMSErecovery与RMSEdecrypt之间的差值小于设定的阈值,输出此时的恢复模型参数Cxrecovery与Cyrecovery
步骤36、打开脱密后的数据,遍历脱密后的数据的要素坐标,归一化后代入恢复模型(9)即得恢复后的数据的坐标:
Figure FDA0003030898550000042
步骤37、循环处理每个要素点的坐标,直至所有要素循环处理完毕,保存恢复后的数据。
CN201711469429.5A 2017-12-29 2017-12-29 一种基于Chebyshev多项式的GIS矢量数据脱密与恢复方法 Active CN108090369B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711469429.5A CN108090369B (zh) 2017-12-29 2017-12-29 一种基于Chebyshev多项式的GIS矢量数据脱密与恢复方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711469429.5A CN108090369B (zh) 2017-12-29 2017-12-29 一种基于Chebyshev多项式的GIS矢量数据脱密与恢复方法

Publications (2)

Publication Number Publication Date
CN108090369A CN108090369A (zh) 2018-05-29
CN108090369B true CN108090369B (zh) 2021-06-08

Family

ID=62180489

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711469429.5A Active CN108090369B (zh) 2017-12-29 2017-12-29 一种基于Chebyshev多项式的GIS矢量数据脱密与恢复方法

Country Status (1)

Country Link
CN (1) CN108090369B (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109885775B (zh) * 2019-03-05 2020-03-17 重庆工商大学融智学院 一种实现生态环境空间大数据集成共享的方法
CN111192361B (zh) * 2019-12-17 2023-05-26 南京泛在地理信息产业研究院有限公司 一种基于几何代数的地理向量场数据脱密与恢复方法

Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1665186A (zh) * 2005-03-03 2005-09-07 北京交通大学 一种用于信息加密的公钥加密方法
CN103067159A (zh) * 2012-12-28 2013-04-24 南京师范大学 一种gis矢量数据可逆脱密方法
CN103473733A (zh) * 2013-09-12 2013-12-25 东北林业大学 基于dna编码和混沌映射的图像加密算法
CN103559452A (zh) * 2013-10-30 2014-02-05 南京师范大学 一种高程数据脱密与恢复方法
CN104077535A (zh) * 2014-06-19 2014-10-01 南京师范大学 一种gis矢量数据局部脱密与恢复方法
CN104077536A (zh) * 2014-06-19 2014-10-01 南京师范大学 基于径向基函数的gis矢量数据可逆脱密方法
CN106778347A (zh) * 2016-12-22 2017-05-31 南京师范大学 一种基于三角函数的矢栅地理数据可逆脱密方法

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
DE60322338D1 (de) * 2003-04-07 2008-09-04 St Microelectronics Srl Verschlüsselungsverfahren unter Verwendung von chaotischen Abbildungen und digitale Unterschriftsverfahren
US8917871B2 (en) * 2010-06-18 2014-12-23 Empire Technology Development Llc Asymmetrical chaotic encryption

Patent Citations (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1665186A (zh) * 2005-03-03 2005-09-07 北京交通大学 一种用于信息加密的公钥加密方法
CN103067159A (zh) * 2012-12-28 2013-04-24 南京师范大学 一种gis矢量数据可逆脱密方法
CN103473733A (zh) * 2013-09-12 2013-12-25 东北林业大学 基于dna编码和混沌映射的图像加密算法
CN103559452A (zh) * 2013-10-30 2014-02-05 南京师范大学 一种高程数据脱密与恢复方法
CN104077535A (zh) * 2014-06-19 2014-10-01 南京师范大学 一种gis矢量数据局部脱密与恢复方法
CN104077536A (zh) * 2014-06-19 2014-10-01 南京师范大学 基于径向基函数的gis矢量数据可逆脱密方法
CN106778347A (zh) * 2016-12-22 2017-05-31 南京师范大学 一种基于三角函数的矢栅地理数据可逆脱密方法

Also Published As

Publication number Publication date
CN108090369A (zh) 2018-05-29

Similar Documents

Publication Publication Date Title
CN108090369B (zh) 一种基于Chebyshev多项式的GIS矢量数据脱密与恢复方法
CN106156692B (zh) 一种用于人脸边缘特征点定位的方法及装置
US20170019653A1 (en) Non-feature extraction-based dense sfm three-dimensional reconstruction method
CN108520107A (zh) 基于最大似然准则鲁棒卡尔曼滤波的系统状态估计方法
US11644841B2 (en) Robot climbing control method and robot
TW201516969A (zh) 視訊物件追蹤方法
CN106778347B (zh) 一种基于三角函数的矢栅地理数据可逆脱密方法
CN111105452B (zh) 基于双目视觉的高低分辨率融合立体匹配方法
CN110942483B (zh) 函数快速收敛模型构建方法、装置和终端
CN105957097A (zh) 基于混合互信息和改进粒子群优化的图像配准方法
Luo et al. A fast algorithm of slam based on combinatorial interval filters
CN110827209A (zh) 一种联合颜色与深度信息的自适应深度图像修复方法
CN111684462B (zh) 一种图像匹配方法及视觉系统
CN104290102B (zh) 一种快速定位补偿方法
CN107730543B (zh) 一种半稠密立体匹配的快速迭代计算方法
CN109922227B (zh) 一种可逆元胞自动机图像加密的相似性度量方法
CN111192361B (zh) 一种基于几何代数的地理向量场数据脱密与恢复方法
Lin et al. Fast multidimensional ellipsoid-specific fitting by alternating direction method of multipliers
CN109308721B (zh) 图像关键点的定位方法、装置、存储介质及电子设备
TW202137146A (zh) 具誤差傳播之點雲套合技術
CN107152933A (zh) 一种基于机器视觉的移动机器人导航偏转角的计算方法
CN105321180A (zh) 一种基于云计算的目标跟踪定位方法及装置
CN104166957A (zh) 矢量图形版权图像的嵌入和提取方法
CN117315050B (zh) 一种摄像机标定方法
CN113781286B (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