CN112989394B - 一种矢量地理数据加密、解密方法及系统 - Google Patents
一种矢量地理数据加密、解密方法及系统 Download PDFInfo
- Publication number
- CN112989394B CN112989394B CN202110465491.7A CN202110465491A CN112989394B CN 112989394 B CN112989394 B CN 112989394B CN 202110465491 A CN202110465491 A CN 202110465491A CN 112989394 B CN112989394 B CN 112989394B
- Authority
- CN
- China
- Prior art keywords
- sequence
- data
- point
- encrypted
- encryption
- 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
- 238000000034 method Methods 0.000 title claims abstract description 74
- 238000004422 calculation algorithm Methods 0.000 claims abstract description 30
- 238000004364 calculation method Methods 0.000 claims abstract description 13
- 239000011159 matrix material Substances 0.000 claims description 83
- 239000002344 surface layer Substances 0.000 claims description 56
- 239000010410 layer Substances 0.000 claims description 37
- 230000000739 chaotic effect Effects 0.000 claims description 33
- 238000013507 mapping Methods 0.000 claims description 26
- 230000008569 process Effects 0.000 claims description 16
- 230000009467 reduction Effects 0.000 claims description 16
- 125000004122 cyclic group Chemical group 0.000 claims description 14
- 238000012545 processing Methods 0.000 claims description 14
- 238000007621 cluster analysis Methods 0.000 claims description 12
- 238000004458 analytical method Methods 0.000 claims description 9
- 230000001174 ascending effect Effects 0.000 claims description 8
- 208000037265 diseases, disorders, signs and symptoms Diseases 0.000 claims description 8
- 208000035475 disorder Diseases 0.000 claims description 8
- 238000000605 extraction Methods 0.000 claims description 6
- 208000037920 primary disease Diseases 0.000 claims description 3
- 101150064138 MAP1 gene Proteins 0.000 claims 1
- 101150077939 mapA gene Proteins 0.000 claims 1
- 238000000354 decomposition reaction Methods 0.000 abstract description 3
- 238000003064 k means clustering Methods 0.000 abstract description 3
- 238000011160 research Methods 0.000 abstract description 2
- 238000012216 screening Methods 0.000 abstract description 2
- 230000000875 corresponding effect Effects 0.000 description 106
- 230000000694 effects Effects 0.000 description 10
- 230000005540 biological transmission Effects 0.000 description 8
- 238000010586 diagram Methods 0.000 description 4
- 238000002474 experimental method Methods 0.000 description 4
- 230000008901 benefit Effects 0.000 description 3
- 230000001276 controlling effect Effects 0.000 description 3
- 238000005065 mining Methods 0.000 description 3
- 230000005855 radiation Effects 0.000 description 3
- 238000005516 engineering process Methods 0.000 description 2
- 230000035772 mutation Effects 0.000 description 2
- 230000035945 sensitivity Effects 0.000 description 2
- 238000010206 sensitivity analysis Methods 0.000 description 2
- NAWXUBYGYWOOIX-SFHVURJKSA-N (2s)-2-[[4-[2-(2,4-diaminoquinazolin-6-yl)ethyl]benzoyl]amino]-4-methylidenepentanedioic acid Chemical compound C1=CC2=NC(N)=NC(N)=C2C=C1CCC1=CC=C(C(=O)N[C@@H](CC(=C)C(O)=O)C(O)=O)C=C1 NAWXUBYGYWOOIX-SFHVURJKSA-N 0.000 description 1
- 108010014172 Factor V Proteins 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 230000002596 correlated effect Effects 0.000 description 1
- 238000011161 development Methods 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 230000007246 mechanism Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 230000000750 progressive effect Effects 0.000 description 1
- 230000001737 promoting effect Effects 0.000 description 1
- 238000013139 quantization Methods 0.000 description 1
- 238000006467 substitution reaction Methods 0.000 description 1
- 238000012360 testing method Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/602—Providing cryptographic facilities or services
-
- 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/27—Replication, distribution or synchronisation of data between databases or within a distributed database system; Distributed database system architectures therefor
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/23—Clustering techniques
- G06F18/232—Non-hierarchical techniques
- G06F18/2321—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions
- G06F18/23213—Non-hierarchical techniques using statistics or function optimisation, e.g. modelling of probability density functions with fixed number of clusters, e.g. K-means clustering
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Databases & Information Systems (AREA)
- Software Systems (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Evolutionary Computation (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Bioinformatics & Computational Biology (AREA)
- Artificial Intelligence (AREA)
- Computing Systems (AREA)
- Evolutionary Biology (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computer Hardware Design (AREA)
- Computer Security & Cryptography (AREA)
- Probability & Statistics with Applications (AREA)
- Storage Device Security (AREA)
- Facsimile Transmission Control (AREA)
Abstract
本发明涉及一种矢量地理数据加密、解密方法及系统。基于空间信息量的分解组合和可加性原则,得到矢量地理数据加密特征组合策略;接着,通过构建基于特征计算的空间信息量计算模型,对矢量地理数据加密特征进行计算;然后,基于K‑means聚类算法将加密特征研究层次从要素级扩展到全局,筛选出复杂而重要的地物,得到需要加密的重要数据部分;最后,对选择出的部分地理要素采用图像加密中的扩散‑置乱思想进行加密。本发明能够有效对矢量地理数据进行加密特征选择,减少加密的数据量,同时通过将地理坐标在有限范围内进行偏移和置乱,将加密后数据与未加密数据进行重叠,保证数据具备足够的安全性。
Description
技术领域
本发明涉及信息安全技术领域,特别是涉及一种矢量地理数据加密、解密方法及系统。
背景技术
随着网络技术的发展、数据共享及传输日益便捷,矢量地理数据网络在线服务和传输已势在必行。但由于矢量地理数据具有定位准、精度高、涉密广等特性,一旦在网络中被第三方截获将会损失巨大利益,且目前网络仅提供端到端信息传送通道,而不提供任何加密机制,在传送过程中第三方可通过嗅探网络中的传送数据进而获取矢量地理数据,如何化解矢量地理数据安全需求与网络共享的矛盾已成为亟待解决的问题。
选择性加密技术主要通过选取数据中的敏感部分和对安全性影响较大的数据部分进行加密,由于选取的加密数据量小,使得加密效率得到极大提升;与此同时,由于敏感度高、对安全性影响较大的重要数据部分被加密,使得加密的安全性也得到了保证。因此,选择性加密能够以较小的加密时间成本换取较好的数据加密效果,从而满足数据网络实时传输和共享要求的安全性高、效率高的需求。
现有技术中都是随机选取矢量地理数据的部分数据进行加密,却忽略了矢量地理数据重要的空间特征、精度特征等独有的数据特征,存在着一定的安全漏洞。
发明内容
本发明的目的是提供一种矢量地理数据加密、解密方法及系统,以提高矢量地理数据的安全性能。
为实现上述目的,本发明提供了如下方案:
一种矢量地理数据加密方法,包括:
获取待加密矢量地理数据的线面图层;
根据所述线面图层,生成所述线面图层对应的要素集合;所述要素集合中包括所述线面图层包括的所有线面要素;
对所述要素集合中的每个要素进行特征提取,得到每个要素对应的要素空间信息;
基于每个要素的Part数和要素空间信息,采用K-Means算法对所述要素集合中的要素进行聚类分析,得到多组要素聚类;每组要素聚类包括多个要素;
基于所述要素聚类,计算每组要素聚类对应的数据加密程度;
根据所述要素集合中每个要素的总点数和每个要素所属要素聚类对应的数据加密程度,确定每个要素对应的加密点数;
按照每个要素对应的加密点数对对应的要素进行取点,得到待加密数据集;所述待加密数据集包括所有要素取的点;
采用扩散-置乱的图像加密方法对所述待加密数据集进行加密,得到加密后的线面图层;
依次对所有的线面图层进行加密,得到加密后的矢量地理数据。
可选的,所述基于所述要素聚类,计算每组要素聚类对应的数据加密程度,具体包括:
基于每个要素聚类的聚类中心和控制因子,计算每组要素聚类对应的数据加密程度,公式为:
式中,Pi为第i组要素聚类对应的数据加密程度,为第i组要素聚类的平均要素空间信息,/>为第i组要素聚类的平均Part数,r为控制因子。
所述根据所述要素集合中每个要素的总点数和每个要素所属要素聚类对应的数据加密程度,确定每个要素对应的加密点数,具体包括:
对于第j个要素,将所述第j个要素的总点数与所述第j个要素所属要素聚类对应的数据加密程度相乘,得到所述第j个要素对应的加密点数。
可选的,所述按照每个要素对应的加密点数对对应的要素进行取点,得到待加密数据集,具体包括:
利用一维logistic混沌映射生成实数序列;实数序列为{xi|i=0,1,…,T},其中,T=m+maxPoint-1,maxPoint为所述要素集合中每个要素总点数的最大值,m为所述要素集合中的要素个数;
对于第j个要素,通过偏移量nj截取所述实数序列,得到第j个要素对应的截取序列;nj为第j个要素的总点数;
对所述第j个要素对应的截取序列中的元素按照升序排序,得到数值序列Xj;
基于所述数值序列和所述实数序列,生成所述第j个要素对应的索引序列;所述索引序列中的第k个元素为所述第j个要素的数值序列中第k个元素在所述示数序列中的位置;
基于所述第j个要素对应的索引序列的前cntj个元素,对所述第j个要素进行取点,得到所述第j个要素所取的点集合;其中,cntj表示第j个要素对应的加密点数,所述第j个要素对应的索引序列的前cntj个元素的具体数值为所述第j个要素取点的位置;
依次得到每个要素所取的点集合,得到待加密数据集。
可选的,所述采用扩散-置乱的图像加密方法对所述待加密数据集进行加密,得到加密后的线面图层,具体包括:
将所述待加密数据集中每个点的单坐标分解为整数部分序列和小数部分序列;所述单坐标为横坐标或纵坐标;所述整数部分序列包括所述待加密数据集中每个点的单坐标的整数部分,所述小数部分序列包括所述待加密数据集中每个点的单坐标的小数部分;
提取所述小数部分序列的十分位和百分位,得到待加密数据;所述待加密数据为ZX,ZX=A×10+B,A为所述小数部分序列的十分位组成的序列,B为所述小数部分序列的百分位组成的序列;
提取所述小数部分序列的千分位,得到千分位序列;
将所述千分位序列与混沌序列结合,生成密钥;所述密钥SC=S×10+C,C为千分位序列;S为一维logistic改进映射的混沌序列;
将所述待加密数据与所述密钥按位异或运算,得到加密后数据;
使用所述加密后数据替换所述小数部分序列的十分位和百分位,得到加密后的小数部分序列;
将所述整数部分序列与所述加密后的小数部分序列相加,得到异或加密后单坐标序列;
将所述异或加密后单坐标序列构造为c×d的矩阵M;所述异或加密后单坐标序列按照行优先的顺序依次放入矩阵M的相应位置;其中, 为向下取整函数,N为所述异或加密后单坐标序列中的元素数量,N≥c×d;
利用二维Henon混沌映射,生成置乱加密序列S′=(si|1≤i≤c}和T′={ti|1≤i≤d};
置乱加密序列S′对矩阵M按照行优先循环右移置乱规则依次从第1行处理到第c行,再对处理后的矩阵M进行行列倒置,得到初步置乱矩阵;
利用置乱加密序列T′对所述初步置乱矩阵按矩阵行优先循环右移置乱规则依次从第1行处理到第d行,再进行行列倒置,得到置乱加密后的矩阵;
利用所述置乱加密后的矩阵按照行优先的顺序依次替换所述异或加密后单坐标序列中的元素,得到选择性加密后的单坐标序列;
用所述选择性加密后的单坐标序列替换线面图层对应位置的单坐标,得到加密后的线面图层。
本发明还提供一种矢量地理数据加密系统,包括:
线面图层获取模块,用于获取待加密矢量地理数据的线面图层;
要素集合生成模块,用于根据所述线面图层,生成所述线面图层对应的要素集合;所述要素集合中包括所述线面图层包括的所有线面要素;
特征提取模块,用于对所述要素集合中的每个要素进行特征提取,得到每个要素对应的要素空间信息;
聚类分析模块,用于基于每个要素的Part数和要素空间信息,采用K-Means算法对所述要素集合中的要素进行聚类分析,得到多组要素聚类;每组要素聚类包括多个要素;
数据加密程度计算模块,用于基于所述要素聚类,计算每组要素聚类对应的数据加密程度;
加密点数确定模块,用于根据所述要素集合中每个要素的总点数和每个要素所属要素聚类对应的数据加密程度,确定每个要素对应的加密点数;
取点模块,用于按照每个要素对应的加密点数对对应的要素进行取点,得到待加密数据集;所述待加密数据集包括所有要素取的点;
加密模块,用于采用扩散-置乱的图像加密方法对所述待加密数据集进行加密,得到加密后的线面图层;
迭代模块,用于依次对所有的线面图层进行加密,得到加密后的矢量地理数据。
本发明还提供一种矢量地理数据解密方法,所述解密方法应用于上述的加密方法,所述解密方法包括:
获取待解密矢量地理数据的线面图层,生成所述线面图层对应的要素集合;所述要素集合中包括所述线面图层包括的所有线面要素;
基于所述要素集合中每个要素的Part数和要素空间信息,采用K-Means算法对所述要素集合中的要素进行聚类分析,得到多组要素聚类;每组要素聚类包括多个要素;
基于所述要素聚类,计算每组要素聚类对应的数据解密程度;
根据所述要素集合中每个要素的总点数和每个要素所属要素聚类对应的数据解密程度,确定每个要素对应的解密点数;
按照每个要素对应的解密点数对对应的要素进行取点,得到待解密数据集;所述待解密数据集包括所有要素取的点;
采用扩散-置乱的图像解密方法对所述待解密数据集进行解密,得到解密后的线面图层;
依次对所有的线面图层进行解密,得到解密后的矢量地理数据。
可选的,所述基于所述要素聚类,计算每组要素聚类对应的数据解密程度,具体包括:
基于每个要素聚类的聚类中心和控制因子,计算每组要素聚类对应的数据解密程度,公式为:
式中,Pi为第i组要素聚类对应的数据解密程度,为第i组要素聚类的平均要素空间信息,/>为第i组要素聚类的平均Part数,r为控制因子。
所述根据所述要素集合中每个要素的总点数和每个要素所属要素聚类对应的数据解密程度,确定每个要素对应的解密点数,具体包括:
对于第j个要素,将所述第j个要素的总点数与所述第j个要素所属要素聚类对应的数据解密程度相乘,得到所述第j个要素对应的解密点数。
可选的,所按照每个要素对应的解密点数对对应的要素进行取点,得到待解密数据集,具体包括:
利用一维logistic混沌映射生成实数序列;实数序列为{xi|i=0,1,…,T},其中,T=m+maxPoint-1,maxPoint为所述要素集合中每个要素总点数的最大值,m为所述要素集合中的要素个数;
对于第j个要素,通过偏移量nj截取所述实数序列,得到第j个要素对应的截取序列;nj为第j个要素的总点数;
对所述第j个要素对应的截取序列中的元素按照升序排序,得到数值序列Xj;
基于所述数值序列和所述实数序列,生成所述第j个要素对应的索引序列;所述索引序列中的第k个元素为所述第j个要素的数值序列中第k个元素在所述示数序列中的位置;
基于所述第j个要素对应的索引序列的前cntj个元素,对所述第j个要素进行取点,得到所述第j个要素所取的点集合;其中,cntj表示第j个要素对应的解密点数,所述第j个要素对应的索引序列的前cntj个元素的具体数值为所述第j个要素取点的位置;
依次得到每个要素所取的点集合,得到待解密数据集。
可选的,所述采用扩散-置乱的图像解密方法对所述待解密数据集进行解密,得到解密后的线面图层,具体包括:
提取所述待解密数据集中每个点的单坐标,生成单坐标点集;所述单坐标为横坐标或纵坐标,所述单坐标点集为横坐标点集或纵坐标点集;
将所述单坐标点集构造为c×d的矩阵M;所述单坐标点集按照行优先的顺序依次放入矩阵M的相应位置;其中, 为向下取整函数,N为所述单坐标点集中的元素数量,N≥c×d;
利用二维Henon混沌映射,生成置乱解密序列S'={si|1≤i≤c}和T'={ti|1≤i≤d};
对矩阵M进行行列倒置,再利用置乱解密序列T'按矩阵行优先循环左移置乱规则依次从第1行处理到第c行,得到初步置乱还原矩阵;
对所述初步置乱还原矩阵进行行列倒置,再利用置乱解密序列S'按矩阵行优先循环左移置乱规则依次从第1行处理到第d行,得到置乱还原后的矩阵;
利用所述置乱还原后的矩阵按照行优先的顺序依次替换所述单坐标点集中的元素,得到选择性解密后的单坐标序列;
将所述选择性解密后的单坐标序列中每个点的单坐标分解为整数部分序列和小数部分序列;所述整数部分序列包括所述选择性解密后的单坐标序列中每个点的单坐标的整数部分,所述小数部分序列包括所述选择性解密后的单坐标序列中每个点的单坐标的小数部分;
提取所述小数部分序列的十分位和百分位,得到待解密数据;所述待解密数据为ZX,ZX=A×10+B,A为所述小数部分序列的十分位组成的序列,B为所述小数部分序列的百分位组成的序列;
提取所述小数部分序列的千分位,得到千分位序列;
将所述千分位序列与混沌序列结合,生成解密密钥;所述解密密钥SC=S×10+C,C为千分位序列;S为一维logistic改进映射的混沌序列;
将所述待解密数据与所述解密密钥按位异或运算,得到异或解密后数据;
使用所述解密后数据替换所述小数部分序列的十分位和百分位,得到异或解密后的小数部分序列;
将所述整数部分序列与所述异或解密后的小数部分序列相加,得到解密后单坐标序列;
利用所述解密后单坐标序列替换线面图层对应位置的单坐标,得到解密后的线面图层。
本发明还提供一种矢量地理数据解密系统,包括:
线面图层获取模块,用于获取待解密矢量地理数据的线面图层,生成所述线面图层对应的要素集合;所述要素集合中包括所述线面图层包括的所有线面要素;
聚类分析模块,用于基于所述要素集合中每个要素的Part数和要素空间信息,采用K-Means算法对所述要素集合中的要素进行聚类分析,得到多组要素聚类;每组要素聚类包括多个要素;
数据解密程度计算模块,用于基于所述要素聚类,计算每组要素聚类对应的数据解密程度;
解密点数确定模块,用于根据所述要素集合中每个要素的总点数和每个要素所属要素聚类对应的数据解密程度,确定每个要素对应的解密点数;
取点模块,用于按照每个要素对应的解密点数对对应的要素进行取点,得到待解密数据集;所述待解密数据集包括所有要素取的点;
解密模块,用于采用扩散-置乱的图像解密方法对所述待解密数据集进行解密,得到解密后的线面图层;
迭代模块,用于依次对所有的线面图层进行解密,得到解密后的矢量地理数据。
根据本发明提供的具体实施例,本发明公开了以下技术效果:
针对现有矢量地理数据选择性加密方法未充分挖掘数据特征、安全性低等问题,本发明基于矢量地理数据空间信息量计算方法,充分挖掘矢量地理数据加密特征,通过量化并找到待加密数据中能够显著影响数据安全性、对加密操作敏感度高的部分,从而通过仅选择部分地理要素进行加密,但可改变待加密数据的整体映射和拓扑关系,以实现数据加解密效率与安全性之间的平衡。首先,基于空间信息量的分解组合和可加性原则,得到矢量地理数据加密特征组合策略;接着,通过构建基于特征计算的空间信息量计算模型,对矢量地理数据加密特征进行计算;然后,为动态控制加密程度引入控制因子r,并基于K-means聚类算法将加密特征研究层次从要素级扩展到全局,筛选出复杂而重要的地物,得到需要加密的重要数据部分;最后,对选择出的部分地理要素采用图像加密中的扩散-置乱思想进行加密,进而提高矢量地理数据的安全性能。本发明主要面向实时网络、高清传送、以及低计算能力的移动通信应用场景,能够有效对矢量地理数据进行加密特征选择,减少加密的数据量,同时通过将地理坐标在有限范围内进行偏移和置乱,将加密后数据与未加密数据进行重叠保证数据具备足够的安全性,从而为解决当前矢量地理数据加密效率与安全性之间的矛盾提供一条可行的思路,为促进矢量地理数据数据网络在线服务和传输提供有效技术支持。
附图说明
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明矢量地理数据加密方法的流程示意图;
图2为本发明矢量地理数据解密方法的流程示意图;
图3为本发明具体实施案例的流程示意图;
图4为本发明具体实施案例的加密及解密效果对比图;
图5为本发明具体实施案例的密钥敏感度分析效果图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
本发明将在充分挖掘矢量地理数据特征的基础上,基于空间信息量计算方法和K-Means聚类思想,通过选择部分地理要素进行加密,以实现矢量地理数据加密算法高效性和安全性之间的平衡。
为使本发明的上述目的、特征和优点能够更加明显易懂,下面结合附图和具体实施方式对本发明作进一步详细的说明。
图1为本发明矢量地理数据加密方法的流程示意图。如图1所示,本发明矢量地理数据加密方法包括以下步骤:
步骤101:获取待加密矢量地理数据的线面图层。
步骤102:根据线面图层,生成线面图层对应的要素集合。要素集合中包括线面图层包括的所有线面要素。要素集合PL={li|i∈[1,m]},其中m表示待加密数据线面图层所含线面要素的数量,即要素集合中元素的数量。
步骤103:对要素集合中的每个要素进行特征提取,得到每个要素对应的要素空间信息。本发明要素空间信息包括:衡量要素延展度的长度系数Vl、衡量弯曲度的角度系数Va、衡量突变情况的点数Vp和衡量密集程度的要素辐射面积Vs。具体的,提取每个特征的过程如下:
Step1:通过计算要素li的角度系数Va量化其空间弯曲度。式中,Pij表示要素li上的第j个节点,,αj表示要素上相邻三个点顺序连接所构成的夹角大小,SumAnglei表示要素li上夹角总和。
Step2:通过计算要素li的最小邻接矩形面积Vs量化其辐射范围。式中,PXi和PYi分别表示当前要素的横纵坐标。
Vs=(max(PXi)-min(PXi))×(max(PYi)-min(PYi)) (2)
Step3:通过计算要素li的长度系数Vl量化其延展度。式中,Lengthi表示要素li首尾点连线的长度,SumLengthi表示要素li上夹角总和。
Step4:通过计算要素的点数Vp量化其精度特征。式中,ni表示构成要素li的点数,表示集合PL中要素所含平均点数,nElement表示集合PL中要素的数量。
Step5:将能够衡量要素延展度、弯曲度、突变情况和密集程度的长度系数Vl、角度系数Va、点数Vp和要素辐射面积Vs作为矢量地理数据空间特征描述构成,得到要素li的空间信息量Ii。
重复Step1至Step5,直至要素集合PL内所有要素的特征全部提取完毕,得到线面要素空间信息量集合{I1,I2...,Im}。
步骤104:基于每个要素的Part数和要素空间信息,采用K-Means算法对要素集合中的要素进行聚类分析,得到多组要素聚类。每组要素聚类包括多个要素。将每个要素的Part数和要素空间信息作为K-Means算法的输入,将其分为k组聚类{C1,C2...,Ck},并得到与之对应的聚类中心{μ1,μ2,...,μk}={(I1,G1),(I2,G2)...,(Ik,Gk)}。
步骤105:基于要素聚类,计算每组要素聚类对应的数据加密程度。计算公式为:
式中,Pi为第i组要素聚类对应的数据加密程度,为第i组要素聚类的平均要素空间信息,/>为第i组要素聚类的平均Part数,r为引入的控制因子用以动态控制矢量地理数据的加密程度。
步骤106:根据要素集合中每个要素的总点数和每个要素所属要素聚类对应的数据加密程度,确定每个要素对应的加密点数。具体的,对于第j个要素,将所述第j个要素的总点数nj与所述第j个要素所属要素聚类对应的数据加密程度Pj相乘,得到所述第j个要素对应的加密点数。公式如下
Pi×nj=cntj (7)
式中,Pi为地理要素lj所属聚类分组的数据加密程度,nj为要素lj所含点数,cntj为要素lj对应的加密点数。
依次得到PL中所有要素对应的加密点数{cnt1,cnt2,...,cntm}。
步骤107:按照每个要素对应的加密点数对对应的要素进行取点,得到待加密数据集。待加密数据集包括所有要素取的点。具体过程如下:
首先,利用一维logistic混沌映射生成实数序列{xi|i=0,1,…,T},其中,T=m+maxPoint-1,maxPoint为所述要素集合中每个要素总点数的最大值,m为所述要素集合中的要素个数。
然后,对于第j个要素,通过初始值pos、偏移量nj截取所述实数序列,得到第j个要素对应的截取序列。nj为第j个要素的总点数。
进而,对所述第j个要素对应的截取序列中的元素按照升序排序,得到数值序列Xj;基于所述数值序列和所述实数序列,生成所述第j个要素对应的索引序列IXj;所述索引序列IXj中的第k个元素为所述第j个要素的数值序列中第k个元素在所述示数序列中的位置。
最后,基于所述第j个要素对应的索引序列的前cntj个元素,对所述第j个要素进行取点,得到所述第j个要素所取的点集合,依次得到每个要素所取的点集合,构成待加密数据集P′。其中,cntj表示第j个要素对应的加密点数,所述第j个要素对应的索引序列的前cntj个元素的具体数值为所述第j个要素取点的位置。
步骤108:采用扩散-置乱的图像加密方法对待加密数据集进行加密,得到加密后的线面图层。本步骤是先对单坐标进行加密,然后将两个单坐标整合,得到加密后的线面图层,下面以单坐标为横坐标为例,具体过程如下:
Step1:将待加密数据集P′中的所有点的横坐标x分别放进序列PX中,并将其分解得到整数部分序列G和小数部分序列D;然后提取序列D的十分位和百分位,分别记为A和B,得到待加密数据ZX=A×10+B。
Step2:利用数据自身的小数位进行密钥构造,提取序列D的千分位记为C,并与由式(9)生成的一维logistic改进映射混沌序列S得到用于坐标值加密的密钥SC=S×10+C。
式中,sk表示混沌序列S中第k个元素,sk+1表示混沌序列S中第k+1个元素,μ∈(0,4],Sk∈(0,1),sk随机生成。
Step3:对ZX和SC进行按位异或运算,得到加密后数据ZX′=mod(mod(ZX,SC),100);然后使用ZX′替换小数部分序列D的十分位和百分位,得到加密后的小数部分序列D′;将G与D′相加,得到序列PX异或加密后的结果X′=G+D′。
Step4:将点集X′按式(10)构造成大小为c×d的矩阵M,将集合X′中的点按照行优先的顺序依次放入矩阵M中;若N>c×d,则舍弃尾部N-c×d个点,不对其进行处理。式中,N为点集X′所含点数,为向下取整函数。
Step5:利用式(11)生成二维Henon混沌映射,得到用于置乱加密的序列S′={si|1≤i≤c}和T′={ti|1≤i≤d}。式中,sk,tk为映射变量,a,b为系统参数。
Step6:利用序列S′,对点集矩阵M按照行优先循环右移置乱规则依次从第1行处理到第c行,然后对矩阵M进行行列倒置,利用序列T′依次对其从第1行处理到第d行,最后再行列倒置,得到置乱加密后的矩阵M′。
Step7:将矩阵M′按照行优先的顺序依次替换数据集X′中相应位置的横坐标得到加密结果;对于未参与置乱加密的点,即数据集X′中未在矩阵矩阵M′中对应的点,不对其做替换处理。
Step8:利用经Step7加密后的数据替换原数据中的相应坐标值,完成数据选择性加密过程。
利用上述步骤对Y坐标进行加密的步骤与X坐标相同,在此不做赘述。
步骤109:依次对所有的线面图层进行加密,得到加密后的矢量地理数据。
基于上述方案,本发明还提供一种矢量地理数据加密系统,包括:
线面图层获取模块,用于获取待加密矢量地理数据的线面图层。
要素集合生成模块,用于根据所述线面图层,生成所述线面图层对应的要素集合;所述要素集合中包括所述线面图层包括的所有线面要素。
特征提取模块,用于对所述要素集合中的每个要素进行特征提取,得到每个要素对应的要素空间信息。
聚类分析模块,用于基于每个要素的Part数和要素空间信息,采用K-Means算法对所述要素集合中的要素进行聚类分析,得到多组要素聚类;每组要素聚类包括多个要素。
数据加密程度计算模块,用于基于所述要素聚类,计算每组要素聚类对应的数据加密程度。
加密点数确定模块,用于根据所述要素集合中每个要素的总点数和每个要素所属要素聚类对应的数据加密程度,确定每个要素对应的加密点数。
取点模块,用于按照每个要素对应的加密点数对对应的要素进行取点,得到待加密数据集;所述待加密数据集包括所有要素取的点。
加密模块,用于采用扩散-置乱的图像加密方法对所述待加密数据集进行加密,得到加密后的线面图层。
迭代模块,用于依次对所有的线面图层进行加密,得到加密后的矢量地理数据。
基于上述加密方法,本发明还提供一种解密方法,图2为本发明矢量地理数据解密方法的流程示意图。如图2所示,本发明的解密方法包括:
步骤201:获取待解密矢量地理数据的线面图层,生成线面图层对应的要素集合。读取待解密数据的线面图层,得到要素集合PL={li|i∈[1,m]},其中m表示待解密数据线面图层所含线面要素的数量。要素集合中包括线面图层包括的所有线面要素。
步骤202:基于要素集合中每个要素的Part数和要素空间信息,采用K-Means算法对要素集合中的要素进行聚类分析,得到多组要素聚类。每组要素聚类包括多个要素。对要素集合中的每个要素进行特征提取,得到每个要素对应的要素空间信息的过程,以及聚类分析过程与步骤103-步骤104过程相同,此处不再赘述。
步骤203:基于要素聚类,计算每组要素聚类对应的数据解密程度。利用不同分组的聚类中心{(I1,G1),(I2,G2)...,(Ik,Gk)}信息和控制因子r,代入式(6)得到该分组对应的数据解密程度(P1,P2,...,Pk}
步骤204:根据要素集合中每个要素的总点数和每个要素所属要素聚类对应的数据解密程度,确定每个要素对应的解密点数。根据式(7)得到所有要素需解密点数{cnt1,cnt2,...,cntm}。
步骤205:按照每个要素对应的解密点数对对应的要素进行取点,得到待解密数据集。待解密数据集包括所有要素取的点。利用一维logistic混沌映射得到实数混沌序列{xi|i=0,1,…,T},其中T=m+maxPoint-1,maxPoint为要素所含最大点数;并计算要素集合PL中所有要素对应的待解密数据{Pi},即取的点,得到待解密数据集{P′}。
步骤206:采用扩散-置乱的图像解密方法对待解密数据集进行解密,得到解密后的线面图层。具体过程如下:
Step1:按式(10)将点集P′={pi|1≤i≤N}构造成大小为c×d的矩阵M,将待解密数据集P′中的点按照行优先的顺序依次放入矩阵M中;若N>c×d,则舍弃尾部N-c×d个点,不对其进行处理。
Step2:利用二维Henon混沌映射生成用于置乱加密的序列S和T;并对点集矩阵M进行行列倒置,利用序列T依次对其从第1行到第c行进行循环左移处理,然后对其进行行列倒置,并利用序列S依次对其从第1行到第d行进行循环左移处理,得到置乱还原后的矩阵M′;再将矩阵M′按照行优先的顺序依次替换待解密数据集P′中相应位置的横坐标;对于未参与置乱加密的点,不对其做替换处理。
Step3:以横坐标为例,将P′中的横坐标x分别放进序列X中,并将其分解得到整数部分序列G和小数部分序列D;并提取序列D的十分位和百分位,分别记为A和B,得到待解密数据ZX=ZX=A×10+B;提取序列D的千分位记为C,并与序列S得到用于坐标值解密的密钥SC=S×10+C。
Step4:对ZX和SC进行按位异或运算,得到解密后数据ZX′=mod(mod(ZX,SC),100);然后使用ZX′替换小数部分序列D的十分位和百分位,得到解密后的小数部分序列D′。
Step5:将整数部分I与解密后的小数部分D′相加,得到序列X解密后的最终结果X′=G+D′,依次替换数据集P′中相应位置的横坐标,得到解密后的数据。对Y坐标进行加密的步骤与X坐标相同,在此不做赘述。
步骤207:依次对所有的线面图层进行解密,得到解密后的矢量地理数据。
基于上述方案,本发明还提供一种矢量地理数据解密系统,包括:
线面图层获取模块,用于获取待解密矢量地理数据的线面图层,生成所述线面图层对应的要素集合;所述要素集合中包括所述线面图层包括的所有线面要素。
聚类分析模块,用于基于所述要素集合中每个要素的Part数和要素空间信息,采用K-Means算法对所述要素集合中的要素进行聚类分析,得到多组要素聚类;每组要素聚类包括多个要素。
数据解密程度计算模块,用于基于所述要素聚类,计算每组要素聚类对应的数据解密程度。
解密点数确定模块,用于根据所述要素集合中每个要素的总点数和每个要素所属要素聚类对应的数据解密程度,确定每个要素对应的解密点数。
取点模块,用于按照每个要素对应的解密点数对对应的要素进行取点,得到待解密数据集;所述待解密数据集包括所有要素取的点。
解密模块,用于采用扩散-置乱的图像解密方法对所述待解密数据集进行解密,得到解密后的线面图层。
迭代模块,用于依次对所有的线面图层进行解密,得到解密后的矢量地理数据。
下面提供一个具体实施案例,进一步说明本发明的效果。
图3为本发明具体实施案例的流程示意图,图4为本发明具体实施案例的加密及解密效果对比图。结合图3-图4所示,本实施例的矢量地理数据选择Shapefile格式的南京道路数据,其大小为1380KB,如图4中(a)部分所示。针对数据特征提取、加密数据选择和数据加密等整个过程,具体过程如下:
1.加密特征提取过程
步骤11:读取待加密数据的线面图层,得到要素集合PL;通过计算所有要素的角度系数Va、最小邻接矩形面积Vs、长度系数Vl、点数Vp量化其延展度、弯曲度、突变情况和密集程度。步骤12:计算要素的空间信息量Ii;并重复步骤12,直至步骤11中所有线面图层要素特征全部提取完毕,得到线面要素空间信息量集合{I1,I2...,Im},其中,m表示构成待加密数据线面图层的要素数量,此处m=2638。
2.加密数据选择过程
步骤21:分别取出要素集合PL的Part数,构成{G1,G2...,Gn};将Part序列与步骤12得到的空间信息量集合{I1,I2...,Im}作为K-Means算法的输入,将其分为4组{C1,C2,C3,C4},并得到与之对应的聚类中心{μ1,μ2,μ3,μ4}。
步骤22:利用不同分组的聚类中心{(I1,G1),(I2,G2),(I3,G3),(I4,G4)}和控制因子r得到对应的数据加密程度{P1,P2,P3,P4},并计算所有要素需加密的点数{cnt1,cnt2,...,cntm}。
步骤23:输入初始参数μ0=4,x0=0.5,利用一维logistic混沌映射生成实数序列{xi}。
步骤24:以初始值1、偏移量1截取序列{xi},通过对其进行升序排序得到序列X和索引序列IX,其中,序列IX为序列X在对应实数序列xi中的索引形成的索引序列;取索引序列IX中的前cnti个数值对要素li进行取点,构成待加密数据集{P′i}。
对所有线面要素依次重复步骤24,直至完成全部数据选取。
3.数据加密过程(以横坐标为例)
步骤31:将步骤24选择的所有点的横纵坐标x分别放进序列PX中,并将其分解得到整数部分序列I和小数部分序列D;然后提取序列D的十分位和百分位,分别记为A和B,得到待加密数据ZX=A×10+B。
步骤32:利用数据自身的小数位进行密钥构造,提取序列D的千分位记为C,并与一维logistic改进映射混沌序列S得到用于坐标值加密的密钥SC=S×10+C。
步骤33:对ZX和SC进行按位异或运算,得到加密后数据ZX′=mod(mod(ZX,SC),100);然后使用ZX′替换小数部分序列D的十分位和百分位,得到加密后的小数部分序列D′;将I与D′相加,得到序列PX异或加密后的结果X′=I+D′。
步骤34:将点集X′={xi|1≤i≤N}构造成大小为156×157的矩阵M,将待加密数据集X'中的点按照行优先的顺序依次放入矩阵M中,同时舍弃尾部126个点,不对其进行处理。
步骤35:利用二维Henon混沌映射得到用于置乱加密的序列S'和T'。利用序列S',对点集矩阵M按照行优先循环右移置乱规则依次从第1行处理到第156行,然后对矩阵M进行行列倒置,利用序列T依次对其从第1行处理到第157行,最后再行列倒置,得到置乱加密后的矩阵M'。
步骤36:将矩阵M'按照行优先的顺序依次替换数据集X'中相应位置的横坐标得到加密结果;对于未参与置乱加密的点,不对其做替换处理。对Y坐标进行加密的步骤与X坐标相同,在此不做赘述。
4.本方法的特点与技术优势
本方法中最为关键的有:加密数据选择,基于空间信息量分解和组合原则,通过充分挖掘矢量地理数据特征,选取需要加密的重要数据部分;数据加密过程,通过高效且安全的加密算法为选择出的重要数据部分提供较高的安全保护。因此,该方法可以在减少加密数据量的同时,为数据提供较高的安全等级。
5.测试与分析
本发明所提出的方法是针对矢量地理数据的选择性加密算法,采用该方法可以充分挖掘数据特征,通过减少加密的数据量并选择合适的加密算法,在提升加密效率的同时,保证算法的安全性。
(1)加解密效果实验
图4中(b)部分为加密效果图,由图4中(b)部分可以看出,加密前后数据在视觉效果上与原数据相差较大,数据的可用性遭到破坏,难以从加密后的数据中获取到有用信息。图4中(c)部分为解密效果图,解密后数据与原始数据在视觉上并无差别。
(2)密钥空间分析
本发明所提算法共有九个密钥,分别为用于选择待加密数据的密钥μ,x0;用于坐标值加密的四个密钥μx,xx,μy,xy;用于置乱加密的两个密钥ax,ay,用于控制加密程度的控制因子r。若要破解本文加密算法,需准确得到以上九个密钥,缺一不可,经计算,算法的密钥空间
(3)密钥敏感度分析
首先,使用密钥组对其进行加密,得到密文数据;然后,依次修改九个密钥中的一个密钥,其他密钥保持不变,解密效果如图5所示,图5中(a)部分为μ+0.000001,图5中(b)部分为x0+0.000001,图5中(c)部分为μx+0.000001,图5中(d)部分为xx+0.000001,图5中(e)部分为μy+0.000001,图5中(f)部分为xy+0.000001,图5中(g)部分为ax+0.000001,图5中(h)部分为ay+0.000001,图5中(i)部分为r+0.01。由图5可知,即使仅对九个密钥中的一个密钥进行轻微修改,也无法解密得到原始数据,故本发明所提算法具备较高的安全性,能够满足数据的保密要求。
(4)效率评估
为验证算法的高效性,在使用相同密钥组的前提下,令控制因子r=2,选取不同大小的Shapefile数据进行选择性加解密效率实验,算法效率如表1所示。
表1算法效率实验
由表1可知,随着数据大小、坐标点数的增加,数据进行加解密所需时间也随之增加,二者基本呈线性正相关。且在相同实验环境下,通过与夏一天所提顾及权限空间范围的矢量地理数据选择性加密算法进行效率对比实验,本发明所提算法效率平均提高32.9%。
本说明书中各个实施例采用递进的方式描述,每个实施例重点说明的都是与其他实施例的不同之处,各个实施例之间相同相似部分互相参见即可。对于实施例公开的系统而言,由于其与实施例公开的方法相对应,所以描述的比较简单,相关之处参见方法部分说明即可。
本文中应用了具体个例对本发明的原理及实施方式进行了阐述,以上实施例的说明只是用于帮助理解本发明的方法及其核心思想;同时,对于本领域的一般技术人员,依据本发明的思想,在具体实施方式及应用范围上均会有改变之处。综上所述,本说明书内容不应理解为对本发明的限制。
Claims (4)
1.一种矢量地理数据加密方法,其特征在于,包括:
获取待加密矢量地理数据的线面图层;
根据所述线面图层,生成所述线面图层对应的要素集合;所述要素集合中包括所述线面图层包括的所有线面要素;
对所述要素集合中的每个要素进行特征提取,得到每个要素对应的要素空间信息;
基于每个要素的Part数和要素空间信息,采用K-Means算法对所述要素集合中的要素进行聚类分析,得到多组要素聚类;每组要素聚类包括多个要素;
基于所述要素聚类,计算每组要素聚类对应的数据加密程度,具体包括:
基于每个要素聚类的聚类中心和控制因子,计算每组要素聚类对应的数据加密程度,公式为:
式中,Pi为第i组要素聚类对应的数据加密程度,为第i组要素聚类的平均要素空间信息,/>为第i组要素聚类的平均Part数,r为控制因子;
根据所述要素集合中每个要素的总点数和每个要素所属要素聚类对应的数据加密程度,确定每个要素对应的加密点数,具体包括:
对于第j个要素,将所述第j个要素的总点数与所述第j个要素所属要素聚类对应的数据加密程度相乘,得到所述第j个要素对应的加密点数;
按照每个要素对应的加密点数对对应的要素进行取点,得到待加密数据集,具体包括:
利用一维logistic混沌映射生成实数序列;实数序列为{xi|i=0,1,…,T},其中,T=m+maxPoint-1,maxPoint为所述要素集合中每个要素总点数的最大值,m为所述要素集合中的要素个数;
对于第j个要素,通过偏移量nj截取所述实数序列,得到第j个要素对应的截取序列;nj为第j个要素的总点数;
对所述第j个要素对应的截取序列中的元素按照升序排序,得到数值序列Xj;
基于所述数值序列和所述实数序列,生成所述第j个要素对应的索引序列;所述索引序列中的第k个元素为所述第j个要素的数值序列中第k个元素在所述实数序列中的位置;
基于所述第j个要素对应的索引序列的前cntj个元素,对所述第j个要素进行取点,得到所述第j个要素所取的点集合;其中,cntj表示第j个要素对应的加密点数,所述第j个要素对应的索引序列的前cntj个元素的具体数值为所述第j个要素取点的位置;
依次得到每个要素所取的点集合,得到待加密数据集;
所述待加密数据集包括所有要素取的点;
采用扩散-置乱的图像加密方法对所述待加密数据集进行加密,得到加密后的线面图层,具体包括:
将所述待加密数据集中每个点的单坐标分解为整数部分序列和小数部分序列;所述单坐标为横坐标或纵坐标;所述整数部分序列包括所述待加密数据集中每个点的单坐标的整数部分,所述小数部分序列包括所述待加密数据集中每个点的单坐标的小数部分;
提取所述小数部分序列的十分位和百分位,得到待加密数据;所述待加密数据为ZX,ZX=A×10+B,A为所述小数部分序列的十分位组成的序列,B为所述小数部分序列的百分位组成的序列;
提取所述小数部分序列的千分位,得到千分位序列;
将所述千分位序列与混沌序列结合,生成密钥;所述密钥SC=S×10+C,C为千分位序列;S为一维logistic改进映射的混沌序列;
将所述待加密数据与所述密钥按位异或运算,得到加密后数据;
使用所述加密后数据替换所述小数部分序列的十分位和百分位,得到加密后的小数部分序列;
将所述整数部分序列与所述加密后的小数部分序列相加,得到异或加密后单坐标序列;
将所述异或加密后单坐标序列构造为c×d的矩阵M;所述异或加密后单坐标序列按照行优先的顺序依次放入矩阵M的相应位置;其中,为向下取整函数,N为所述异或加密后单坐标序列中的元素数量,N≥c×d;
利用二维Henon混沌映射,生成置乱加密序列S'={si|1≤i≤c}和T'={ti|1≤i≤d};
置乱加密序列S'对矩阵M按照行优先循环右移置乱规则依次从第1行处理到第c行,再对处理后的矩阵M进行行列倒置,得到初步置乱矩阵;
利用置乱加密序列T'对所述初步置乱矩阵按矩阵行优先循环右移置乱规则依次从第1行处理到第d行,再进行行列倒置,得到置乱加密后的矩阵;
利用所述置乱加密后的矩阵按照行优先的顺序依次替换所述异或加密后单坐标序列中的元素,得到选择性加密后的单坐标序列;
用所述选择性加密后的单坐标序列替换线面图层对应位置的单坐标,得到加密后的线面图层;
依次对所有的线面图层进行加密,得到加密后的矢量地理数据。
2.一种矢量地理数据加密系统,其特征在于,包括:
线面图层获取模块,用于获取待加密矢量地理数据的线面图层;
要素集合生成模块,用于根据所述线面图层,生成所述线面图层对应的要素集合;所述要素集合中包括所述线面图层包括的所有线面要素;
特征提取模块,用于对所述要素集合中的每个要素进行特征提取,得到每个要素对应的要素空间信息;
聚类分析模块,用于基于每个要素的Part数和要素空间信息,采用K-Means算法对所述要素集合中的要素进行聚类分析,得到多组要素聚类;每组要素聚类包括多个要素;
数据加密程度计算模块,用于基于所述要素聚类,计算每组要素聚类对应的数据加密程度,具体包括:
基于每个要素聚类的聚类中心和控制因子,计算每组要素聚类对应的数据加密程度,公式为:
式中,Pi为第i组要素聚类对应的数据加密程度,为第i组要素聚类的平均要素空间信息,/>为第i组要素聚类的平均Part数,r为控制因子;
加密点数确定模块,用于根据所述要素集合中每个要素的总点数和每个要素所属要素聚类对应的数据加密程度,确定每个要素对应的加密点数,具体包括:
对于第j个要素,将所述第j个要素的总点数与所述第j个要素所属要素聚类对应的数据加密程度相乘,得到所述第j个要素对应的加密点数;
取点模块,用于按照每个要素对应的加密点数对对应的要素进行取点,得到待加密数据集,具体包括:
利用一维logistic混沌映射生成实数序列;实数序列为{xi|i=0,1,…,T},其中,T=m+maxPoint-1,maxPoint为所述要素集合中每个要素总点数的最大值,m为所述要素集合中的要素个数;
对于第j个要素,通过偏移量nj截取所述实数序列,得到第j个要素对应的截取序列;nj为第j个要素的总点数;
对所述第j个要素对应的截取序列中的元素按照升序排序,得到数值序列Xj;
基于所述数值序列和所述实数序列,生成所述第j个要素对应的索引序列;所述索引序列中的第k个元素为所述第j个要素的数值序列中第k个元素在所述实数序列中的位置;
基于所述第j个要素对应的索引序列的前cntj个元素,对所述第j个要素进行取点,得到所述第j个要素所取的点集合;其中,cntj表示第j个要素对应的加密点数,所述第j个要素对应的索引序列的前cntj个元素的具体数值为所述第j个要素取点的位置;
依次得到每个要素所取的点集合,得到待加密数据集;
所述待加密数据集包括所有要素取的点;
加密模块,用于采用扩散-置乱的图像加密方法对所述待加密数据集进行加密,得到加密后的线面图层,具体包括:
将所述待加密数据集中每个点的单坐标分解为整数部分序列和小数部分序列;所述单坐标为横坐标或纵坐标;所述整数部分序列包括所述待加密数据集中每个点的单坐标的整数部分,所述小数部分序列包括所述待加密数据集中每个点的单坐标的小数部分;
提取所述小数部分序列的十分位和百分位,得到待加密数据;所述待加密数据为ZX,ZX=A×10+B,A为所述小数部分序列的十分位组成的序列,B为所述小数部分序列的百分位组成的序列;
提取所述小数部分序列的千分位,得到千分位序列;
将所述千分位序列与混沌序列结合,生成密钥;所述密钥SC=S×10+C,C为千分位序列;S为一维logistic改进映射的混沌序列;
将所述待加密数据与所述密钥按位异或运算,得到加密后数据;
使用所述加密后数据替换所述小数部分序列的十分位和百分位,得到加密后的小数部分序列;
将所述整数部分序列与所述加密后的小数部分序列相加,得到异或加密后单坐标序列;
将所述异或加密后单坐标序列构造为c×d的矩阵M;所述异或加密后单坐标序列按照行优先的顺序依次放入矩阵M的相应位置;其中,为向下取整函数,N为所述异或加密后单坐标序列中的元素数量,N≥c×d;
利用二维Henon混沌映射,生成置乱加密序列S'={si|1≤i≤c和T'={ti|1≤i≤d};
置乱加密序列S'对矩阵M按照行优先循环右移置乱规则依次从第1行处理到第c行,再对处理后的矩阵M进行行列倒置,得到初步置乱矩阵;
利用置乱加密序列T'对所述初步置乱矩阵按矩阵行优先循环右移置乱规则依次从第1行处理到第d行,再进行行列倒置,得到置乱加密后的矩阵;
利用所述置乱加密后的矩阵按照行优先的顺序依次替换所述异或加密后单坐标序列中的元素,得到选择性加密后的单坐标序列;
用所述选择性加密后的单坐标序列替换线面图层对应位置的单坐标,得到加密后的线面图层;
迭代模块,用于依次对所有的线面图层进行加密,得到加密后的矢量地理数据。
3.一种矢量地理数据解密方法,其特征在于,所述解密方法应用于权利要求1所述的加密方法,所述解密方法包括:
获取待解密矢量地理数据的线面图层,生成所述线面图层对应的要素集合;所述要素集合中包括所述线面图层包括的所有线面要素;
基于所述要素集合中每个要素的Part数和要素空间信息,采用K-Means算法对所述要素集合中的要素进行聚类分析,得到多组要素聚类;每组要素聚类包括多个要素;
基于所述要素聚类,计算每组要素聚类对应的数据解密程度,具体包括:
基于每个要素聚类的聚类中心和控制因子,计算每组要素聚类对应的数据解密程度,公式为:
式中,Pi为第i组要素聚类对应的数据解密程度,为第i组要素聚类的平均要素空间信息,/>为第i组要素聚类的平均Part数,r为控制因子;
根据所述要素集合中每个要素的总点数和每个要素所属要素聚类对应的数据解密程度,确定每个要素对应的解密点数,具体包括:
对于第j个要素,将所述第j个要素的总点数与所述第j个要素所属要素聚类对应的数据解密程度相乘,得到所述第j个要素对应的解密点数;
按照每个要素对应的解密点数对对应的要素进行取点,得到待解密数据集,具体包括:
利用一维logistic混沌映射生成实数序列;实数序列为{xi|i=0,1,…,T},其中,T=m+maxPoint-1,maxPoint为所述要素集合中每个要素总点数的最大值,m为所述要素集合中的要素个数;
对于第j个要素,通过偏移量nj截取所述实数序列,得到第j个要素对应的截取序列;nj为第j个要素的总点数;
对所述第j个要素对应的截取序列中的元素按照升序排序,得到数值序列Xj;
基于所述数值序列和所述实数序列,生成所述第j个要素对应的索引序列;所述索引序列中的第k个元素为所述第j个要素的数值序列中第k个元素在所述实数序列中的位置;
基于所述第j个要素对应的索引序列的前cntj个元素,对所述第j个要素进行取点,得到所述第j个要素所取的点集合;其中,cntj表示第j个要素对应的解密点数,所述第j个要素对应的索引序列的前cntj个元素的具体数值为所述第j个要素取点的位置;
依次得到每个要素所取的点集合,得到待解密数据集;
所述待解密数据集包括所有要素取的点;
采用扩散-置乱的图像解密方法对所述待解密数据集进行解密,得到解密后的线面图层,具体包括:
提取所述待解密数据集中每个点的单坐标,生成单坐标点集;所述单坐标为横坐标或纵坐标,所述单坐标点集为横坐标点集或纵坐标点集;
将所述单坐标点集构造为c×d的矩阵M;所述单坐标点集按照行优先的顺序依次放入矩阵M的相应位置;其中, 为向下取整函数,N为所述单坐标点集中的元素数量,N≥c×d;
利用二维Henon混沌映射,生成置乱解密序列S'={si|1≤i≤c}和T'={ti|1≤i≤d};
对矩阵M进行行列倒置,再利用置乱解密序列T'按矩阵行优先循环左移置乱规则依次从第1行处理到第c行,得到初步置乱还原矩阵;
对所述初步置乱还原矩阵进行行列倒置,再利用置乱解密序列S'按矩阵行优先循环左移置乱规则依次从第1行处理到第d行,得到置乱还原后的矩阵;
利用所述置乱还原后的矩阵按照行优先的顺序依次替换所述单坐标点集中的元素,得到选择性解密后的单坐标序列;
将所述选择性解密后的单坐标序列中每个点的单坐标分解为整数部分序列和小数部分序列;所述整数部分序列包括所述选择性解密后的单坐标序列中每个点的单坐标的整数部分,所述小数部分序列包括所述选择性解密后的单坐标序列中每个点的单坐标的小数部分;
提取所述小数部分序列的十分位和百分位,得到待解密数据;所述待解密数据为ZX,ZX=A×10+B,A为所述小数部分序列的十分位组成的序列,B为所述小数部分序列的百分位组成的序列;
提取所述小数部分序列的千分位,得到千分位序列;
将所述千分位序列与混沌序列结合,生成解密密钥;所述解密密钥SC=S×10+C,C为千分位序列;S为一维logistic改进映射的混沌序列;
将所述待解密数据与所述解密密钥按位异或运算,得到异或解密后数据;
使用所述解密后数据替换所述小数部分序列的十分位和百分位,得到异或解密后的小数部分序列;
将所述整数部分序列与所述异或解密后的小数部分序列相加,得到解密后单坐标序列;
利用所述解密后单坐标序列替换线面图层对应位置的单坐标,得到解密后的线面图层;
依次对所有的线面图层进行解密,得到解密后的矢量地理数据。
4.一种矢量地理数据解密系统,其特征在于,包括:
线面图层获取模块,用于获取待解密矢量地理数据的线面图层,生成所述线面图层对应的要素集合;所述要素集合中包括所述线面图层包括的所有线面要素;
聚类分析模块,用于基于所述要素集合中每个要素的Part数和要素空间信息,采用K-Means算法对所述要素集合中的要素进行聚类分析,得到多组要素聚类;每组要素聚类包括多个要素;
数据解密程度计算模块,用于基于所述要素聚类,计算每组要素聚类对应的数据解密程度,具体包括:
基于每个要素聚类的聚类中心和控制因子,计算每组要素聚类对应的数据解密程度,公式为:
式中,Pi为第i组要素聚类对应的数据解密程度,为第i组要素聚类的平均要素空间信息,/>为第i组要素聚类的平均Part数,r为控制因子;
解密点数确定模块,用于根据所述要素集合中每个要素的总点数和每个要素所属要素聚类对应的数据解密程度,确定每个要素对应的解密点数,具体包括:
对于第j个要素,将所述第j个要素的总点数与所述第j个要素所属要素聚类对应的数据解密程度相乘,得到所述第j个要素对应的解密点数;
取点模块,用于按照每个要素对应的解密点数对对应的要素进行取点,得到待解密数据集,具体包括:
利用一维logistic混沌映射生成实数序列;实数序列为{xi|i=0,1,…,T},其中,T=m+maxPoint-1,maxPoint为所述要素集合中每个要素总点数的最大值,m为所述要素集合中的要素个数;
对于第j个要素,通过偏移量nj截取所述实数序列,得到第j个要素对应的截取序列;nj为第j个要素的总点数;
对所述第j个要素对应的截取序列中的元素按照升序排序,得到数值序列Xj;
基于所述数值序列和所述实数序列,生成所述第j个要素对应的索引序列;所述索引序列中的第k个元素为所述第j个要素的数值序列中第k个元素在所述实数序列中的位置;
基于所述第j个要素对应的索引序列的前cntj个元素,对所述第j个要素进行取点,得到所述第j个要素所取的点集合;其中,cntj表示第j个要素对应的解密点数,所述第j个要素对应的索引序列的前cntj个元素的具体数值为所述第j个要素取点的位置;
依次得到每个要素所取的点集合,得到待解密数据集;
所述待解密数据集包括所有要素取的点;
解密模块,用于采用扩散-置乱的图像解密方法对所述待解密数据集进行解密,得到解密后的线面图层,具体包括:
提取所述待解密数据集中每个点的单坐标,生成单坐标点集;所述单坐标为横坐标或纵坐标,所述单坐标点集为横坐标点集或纵坐标点集;
将所述单坐标点集构造为c×d的矩阵M;所述单坐标点集按照行优先的顺序依次放入矩阵M的相应位置;其中, 为向下取整函数,N为所述单坐标点集中的元素数量,N≥c×d;
利用二维Henon混沌映射,生成置乱解密序列S'={si|1≤i≤c}和T'={ti|1≤i≤d};
对矩阵M进行行列倒置,再利用置乱解密序列T'按矩阵行优先循环左移置乱规则依次从第1行处理到第c行,得到初步置乱还原矩阵;
对所述初步置乱还原矩阵进行行列倒置,再利用置乱解密序列S'按矩阵行优先循环左移置乱规则依次从第1行处理到第d行,得到置乱还原后的矩阵;
利用所述置乱还原后的矩阵按照行优先的顺序依次替换所述单坐标点集中的元素,得到选择性解密后的单坐标序列;
将所述选择性解密后的单坐标序列中每个点的单坐标分解为整数部分序列和小数部分序列;所述整数部分序列包括所述选择性解密后的单坐标序列中每个点的单坐标的整数部分,所述小数部分序列包括所述选择性解密后的单坐标序列中每个点的单坐标的小数部分;
提取所述小数部分序列的十分位和百分位,得到待解密数据;所述待解密数据为ZX,ZX=A×10+B,A为所述小数部分序列的十分位组成的序列,B为所述小数部分序列的百分位组成的序列;
提取所述小数部分序列的千分位,得到千分位序列;
将所述千分位序列与混沌序列结合,生成解密密钥;所述解密密钥SC=S×10+C,C为千分位序列;S为一维logistic改进映射的混沌序列;
将所述待解密数据与所述解密密钥按位异或运算,得到异或解密后数据;
使用所述解密后数据替换所述小数部分序列的十分位和百分位,得到异或解密后的小数部分序列;
将所述整数部分序列与所述异或解密后的小数部分序列相加,得到解密后单坐标序列;
利用所述解密后单坐标序列替换线面图层对应位置的单坐标,得到解密后的线面图层;
迭代模块,用于依次对所有的线面图层进行解密,得到解密后的矢量地理数据。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110465491.7A CN112989394B (zh) | 2021-04-28 | 2021-04-28 | 一种矢量地理数据加密、解密方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110465491.7A CN112989394B (zh) | 2021-04-28 | 2021-04-28 | 一种矢量地理数据加密、解密方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN112989394A CN112989394A (zh) | 2021-06-18 |
CN112989394B true CN112989394B (zh) | 2024-03-01 |
Family
ID=76340495
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110465491.7A Active CN112989394B (zh) | 2021-04-28 | 2021-04-28 | 一种矢量地理数据加密、解密方法及系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN112989394B (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN115190118A (zh) * | 2022-07-25 | 2022-10-14 | 中国测绘科学研究院 | 一种基于sm4算法的地理数据传输方法及系统 |
CN115189962B (zh) * | 2022-07-25 | 2024-02-13 | 中国测绘科学研究院 | 一种基于sm4算法的地理数据逐点传输方法及系统 |
Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101458810A (zh) * | 2008-12-08 | 2009-06-17 | 哈尔滨工程大学 | 一种基于对象属性特征的矢量地图水印方法 |
CN102243700A (zh) * | 2011-06-30 | 2011-11-16 | 南京师范大学 | 一种基于混沌变换的shp线面图层数据伪装与还原方法 |
CN103020544A (zh) * | 2013-01-04 | 2013-04-03 | 南京师范大学 | 一种shp线面图层数据层次加解密方法 |
CN103077211A (zh) * | 2012-12-28 | 2013-05-01 | 南京师范大学 | 一种gis矢量线面图层数据的置乱与还原方法 |
CN103559678A (zh) * | 2013-10-30 | 2014-02-05 | 南京师范大学 | 一种shp线面图层数据的置乱与还原方法 |
CN103853946A (zh) * | 2014-03-19 | 2014-06-11 | 南京师范大学 | 一种基于fcm聚类特征的gis矢量数据版权认证方法 |
EP3002904A1 (en) * | 2014-10-01 | 2016-04-06 | Thomson Licensing | Method for ciphering/deciphering and processing vectors of dimension n, where n is an integer greater or equal to 1 |
CN106558015A (zh) * | 2016-10-08 | 2017-04-05 | 广东工业大学 | 一种新的交叉复合混沌彩色图像加密算法 |
CN108234813A (zh) * | 2018-01-11 | 2018-06-29 | 重庆邮电大学 | 基于超混沌Chen系统的明文关联图像加密算法 |
CN109712204A (zh) * | 2018-11-30 | 2019-05-03 | 大连理工大学 | 一种基于fcm聚类的图像加密方法 |
CN110351279A (zh) * | 2019-07-12 | 2019-10-18 | 南京吉印信息科技有限公司 | 一种矢量数据的传输方法及系统 |
CN111988144A (zh) * | 2020-08-18 | 2020-11-24 | 大连大学 | 一种基于多重密钥的dna一次一密图像加密方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20180268015A1 (en) * | 2015-09-02 | 2018-09-20 | Sasha Sugaberry | Method and apparatus for locating errors in documents via database queries, similarity-based information retrieval and modeling the errors for error resolution |
-
2021
- 2021-04-28 CN CN202110465491.7A patent/CN112989394B/zh active Active
Patent Citations (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101458810A (zh) * | 2008-12-08 | 2009-06-17 | 哈尔滨工程大学 | 一种基于对象属性特征的矢量地图水印方法 |
CN102243700A (zh) * | 2011-06-30 | 2011-11-16 | 南京师范大学 | 一种基于混沌变换的shp线面图层数据伪装与还原方法 |
CN103077211A (zh) * | 2012-12-28 | 2013-05-01 | 南京师范大学 | 一种gis矢量线面图层数据的置乱与还原方法 |
CN103020544A (zh) * | 2013-01-04 | 2013-04-03 | 南京师范大学 | 一种shp线面图层数据层次加解密方法 |
CN103559678A (zh) * | 2013-10-30 | 2014-02-05 | 南京师范大学 | 一种shp线面图层数据的置乱与还原方法 |
CN103853946A (zh) * | 2014-03-19 | 2014-06-11 | 南京师范大学 | 一种基于fcm聚类特征的gis矢量数据版权认证方法 |
EP3002904A1 (en) * | 2014-10-01 | 2016-04-06 | Thomson Licensing | Method for ciphering/deciphering and processing vectors of dimension n, where n is an integer greater or equal to 1 |
CN106558015A (zh) * | 2016-10-08 | 2017-04-05 | 广东工业大学 | 一种新的交叉复合混沌彩色图像加密算法 |
CN108234813A (zh) * | 2018-01-11 | 2018-06-29 | 重庆邮电大学 | 基于超混沌Chen系统的明文关联图像加密算法 |
CN109712204A (zh) * | 2018-11-30 | 2019-05-03 | 大连理工大学 | 一种基于fcm聚类的图像加密方法 |
CN110351279A (zh) * | 2019-07-12 | 2019-10-18 | 南京吉印信息科技有限公司 | 一种矢量数据的传输方法及系统 |
CN111988144A (zh) * | 2020-08-18 | 2020-11-24 | 大连大学 | 一种基于多重密钥的dna一次一密图像加密方法 |
Non-Patent Citations (2)
Title |
---|
三种基于高维混沌的图像加密算法的研究;王贺;《中国优秀硕士学位论文全文数据库 信息科技辑》(第02期);I138-276 * |
地理大数据安全技术研究现状与展望;朱长青 等;《现代测绘》;第43卷(第06期);9-13 * |
Also Published As
Publication number | Publication date |
---|---|
CN112989394A (zh) | 2021-06-18 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Chai et al. | An image encryption scheme based on multi-objective optimization and block compressed sensing | |
Qayyum et al. | Chaos-based confusion and diffusion of image pixels using dynamic substitution | |
CN112084517B (zh) | 一种基于混沌映射和比特级置换的图像加密方法 | |
Hanis et al. | Double image compression and encryption scheme using logistic mapped convolution and cellular automata | |
Kang et al. | Color image encryption using pixel scrambling operator and reality-preserving MPFRHT | |
CN112989394B (zh) | 一种矢量地理数据加密、解密方法及系统 | |
Mandal et al. | Symmetric key image encryption using chaotic Rossler system | |
Kumar et al. | IEHC: An efficient image encryption technique using hybrid chaotic map | |
CN108898539B (zh) | 一种兼容jpeg压缩标准的彩色图像加密方法 | |
CN109102452B (zh) | 一种基于拉丁方阵置乱和双向扩散的图像加密方法 | |
CN103530571A (zh) | 基于正弦映射和Logistic混沌序列的图像加密方法 | |
CN113362048B (zh) | 数据标签分布确定方法、装置、计算机设备和存储介质 | |
CN108133446A (zh) | 一种复合混沌二级置乱图像加密算法 | |
Zhang et al. | RGB color image encryption method based on Lorenz chaotic system and DNA computation | |
CN105701755A (zh) | 一种基于分形和dna序列操作的图像加密方法 | |
Man et al. | A novel image encryption algorithm based on least squares generative adversarial network random number generator | |
CN113688408B (zh) | 一种基于安全多方计算的最大信息系数方法 | |
CN104851071A (zh) | 一种基于三维混沌系统的数字图像加密方法 | |
Brahim et al. | A new image encryption scheme based on a hyperchaotic system & multi specific S-boxes | |
Som et al. | Confusion and diffusion of color images with multiple chaotic maps and chaos-based pseudorandom binary number generator | |
CN111861851A (zh) | 一种矢量地理数据交换密码水印的方法 | |
CN114153808B (zh) | 一种基于秘密分享的排序方法和系统 | |
Liu et al. | Image encryption via complementary embedding algorithm and new spatiotemporal chaotic system | |
Wang et al. | A new two-dimensional sine-coupled-logistic map and its application in image encryption | |
Shakir et al. | A new four-dimensional hyper-chaotic system for image encryption |
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 |