[发明专利]一种DEM置乱加密与还原方法有效

专利信息
申请号: 201610911208.8 申请日: 2016-10-19
公开(公告)号: CN106650343B 公开(公告)日: 2019-02-01
发明(设计)人: 王中元;王凯亮;王顺利;李安波 申请(专利权)人: 南京师范大学
主分类号: G06F21/16 分类号: G06F21/16;G06T1/00
代理公司: 江苏圣典律师事务所 32237 代理人: 程化铭
地址: 210023 江*** 国省代码: 江苏;32
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 dem 加密 还原 方法
【权利要求书】:

1.一种DEM的置乱加密方法,其步骤如下:

步骤1:基于ArcMap软件,通过ArcToolbox->转换工具->由栅格转出->栅格转ASCII操作,将Esri Grid格式的DEM数据转化为ASCII编码的txt文件;

步骤2:将txt文件以行为主序存入一M×N矩阵A中,其中M为DEM的行数,N为DEM的列数,并从DEM的头文件中读取出DEM的像元大小cellsize,左上角x起始坐标xllcorner和左上角y起始坐标yllcorner;

步骤3:输入x1、y1、z1作为混沌系统的初值,且x1∈(0,1),y1∈(0,1),z1∈(0,1);输入置乱因子ρ的值,且ρ∈[1,1000];定义参数σ的值,且σ∈(0,1);

步骤4:根据公式(1),生成混沌序列X、Y和Z;其中X={xk|k=1,2,3,...,max{M+N+13,10000}},Y={yk|k=1,2,3,... ,max{M+N+13,10000}},Z={zk|k=1,2,3,...,max{M+N+13,10000}};

步骤5:获取序列S、J、Q、J′、Q′、I和T;其中S为混沌序列Z进行非线性离散化而生成的序列,J、Q为对行号进行位置置乱操作的序列,J′、Q′为对列号进行位置置乱操作的序列,I和T为对Z值进行位置置乱操作的序列;

步骤5.1,根据公式(2)和(3),对混沌序列Z进行非线性离散化,生成序列S,S={sk|k=1,2,3,...,M+N+13};

步骤5.2,设混沌序列X的子集X′={x1,x2,x3,...,x10000}的索引号序列{1,2,3,…,10000}为序列J;将组元(xn,jn)以xn为主要关键字进行升序排序,将排序后的序列J记为序列Q;

步骤5.3,设混沌序列Y的子集Y′={y1,y2,y3,...,y10000}的索引号序列{1,2,3,…,10000}为序列J′;将组元(yn,jn′)以yn为主要关键字进行升序排序,将排序后的序列J′记为序列Q′;

步骤5.4,设混沌序列Z的子集Z′={z1,z2,z3,...,z10000}索引号序列{1,2,3,…,10000}为序列I;将组元(zn,in)以zn为主要关键字进行升序排序,将排序后的序列I记为序列T;

步骤6:对DEM数据的头文件进行置乱

根据公式(4)对cellsize、xllcorner和yllcorner进行加密操作,得到加密数据scellsize、sxllcorner和syllcorner

步骤7:根据序列S、T对矩阵A进行高程置乱

步骤7.1,将矩阵A的一点的高程值Cmn转为14位的二进制数表示,其中m和n为对应的行号与列号;m∈[1,M],n∈[1,N];

步骤7.2,若m+n为奇数,则先将Cmn的低7位与高7位进行交换;若m+n为偶数则不变;选取S的一14位子序列{sm+n,sm+n+1,sm+n+2,…,sm+n+13}按位与Cmn异或;

步骤7.3,将异或后的结果转化为十进制数表示,得到变化后的高程值C′mn

步骤7.4,基于C′mn,根据公式(5)生成临时变量b;

b=C′mn mod ρ (5);

步骤7.5,在序列T中遍历寻找值为b的元素,将其序列号记为serialID,则根据公式(6)计算出C″mn

C″mn=C′mn-b+serialID (6);

循环执行步骤7.1-步骤7.5,对矩阵A中的每一点都进行如上操作,得到新矩阵A′,其中m和n为对应的行号与列号;

步骤8:根据序列Q、Q′对矩阵A′进行位置置乱:

从矩阵A′的首行首列开始,循环执行步骤8.1-步骤8.4,逐个将矩阵A′中元素C″mn与C″m′n′位置互换,得到矩阵A″;矩阵A″即为对DEM置乱后的最终结果;

步骤8.1,根据公式(7),利用矩阵A′中的每一元素C″mn的行号m,生成临时变量p;

p=m mod ρ (7);

步骤8.2,在序列Q中遍历寻找与p值相等的元素,记其下标为serialID′,则根据公式(8),生成m′;

m′=m-p+serialID′ (8);

步骤8.3,根据公式(9),利用矩阵A′中的元素C″mn的列号n,生成p′;

p′=n mod ρ (9);

步骤8.4,在序列Q′中遍历寻找与p′值相等的元素,记其下标为serialID″,则根据公式(10),生成n′;

n′=n-p′+serialID″ (10);

步骤9:基于置乱加密后的数据,生成置乱加密后的txt文件;

步骤10:基于ArcMap软件,通过“ArcToolbox->转换工具->转为栅格->ASCII转栅格”操作,将txt文件转换为Esri Grid格式的DEM数据。

2.一种用权利要求1所述的DEM的置乱加密方法置乱加密后的DEM置乱的还原方法,包括如下步骤:

步骤A:基于ArcMap软件,通过“ArcToolbox->转换工具->由栅格转出->栅格转ASCII”操作,将DEM数据转化为ASCII编码的txt文件;从txt中读取数据至矩阵A″;

步骤B:将置乱后的DEM以行为主序存入行数为M,列数为N的矩阵A″中,其中M为置乱后的DEM的行数,N为置乱后的DEM的列数,并从DEM的头文件中读取出置乱后的DEM数据的像元大小scellsize、左上角x起始坐标sxllcorner和左上角y起始坐标syllcorner

步骤C:输入x1、y1、z1作为混沌系统的初值,且x1∈(0,1),y1∈(0,1),z1∈(0,1);输入置乱因子ρ的值,且ρ∈[1,10000];定义参数σ的值,且σ∈(0,1);

步骤D:根据公式(1),生成混沌序列X、Y和Z;其中X={xk|k=1,2,3,...,max{M+N+13,10000}},Y={yk|k=1,2,3,...,max{M+N+13,10000}},Z={zk|k=1,2,3,...,max{M+N+13,10000}};

步骤E:获取序列S、J、Q、J′、Q′、I和T

步骤E.1,根据公式(2)和(3),对混沌序列Z进行非线性离散化,生成序列S,S={sk|k=1,2,3,...,M+N+13};

步骤E.2,设混沌序列X的子集X′={x1,x2,x3,...,x10000}的索引号序列{1,2,3,…,10000}为序列J;将组元(xn,jn)以xn为主要关键字进行升序排序,将排序后的序列J记为序列Q;

步骤E.3,设混沌序列Y的子集Y′={y1,y2,y3,...,y10000}的索引号序列{1,2,3,…,10000} 为序列J′;将组元(yn,jn′)以yn为主要关键字进行升序排序,将排序后的序列J′记为序列Q′;

步骤E.4,设混沌序列Z的子集Z′={z1,z2,z3,...,z10000}索引号序列{1,2,3,…,10000}为序列I;将组元(zn,in)以zn为主要关键字进行升序排序,将排序后的序列I记为序列T;

步骤F:对DEM的头文件进行还原

根据公式(11)对scellsize、sxllcorner和syllcorner进行还原操作,得到还原数据cellsize、xllcorner和yllcorner;

步骤G:根据序列Q和Q′对矩阵A″中的置乱后的位置进行还原

从矩阵A″末行末列开始,循环执行步骤G.1-步骤G.1,逐个往前将矩阵A′中元素C″m′n′与C″mn互换,得到矩阵A′,其中m和n为矩阵A′中对应的行号与列号:

步骤G.1,根据公式(12),利用矩阵A″中的元素C″m′n′的行号m′,生成serialID′:其中m′和n′为对应的行号与列号

serialID′=m′mod ρ (12):步骤G.2,寻找序列Q中索引号为serialID′的元素,记其值为p,根据公式(13),生成m;

m=m′+p-serialID′ (13);

步骤G.3,根据公式(14),利用矩阵A″中的元素C″m′n′的列号n′,生成serialID″;

serialID″=n′mod ρ (14);

步骤G.4,寻找序列Q′中索引号为serialID″的元素,记其值为p′,根据公式(15),生成n;

n=n′+p′-serialID″ (15);

步骤H:根据序列S、T对矩阵A′中的数据进行高程还原

循环执行步骤H.2-步骤H.5,对矩阵A′中的每个点循环执行上述操作,得到矩阵A,矩阵A即为还原后的最终结果:

步骤H.1,根据公式(16),利用矩阵A′中的元素C″mn,生成serialID;

serialID=C″mn mod ρ (16);

步骤H.2,寻找矩阵A′中索引号为serialID的元素,记其值为b,则根据公式(17),得到

C″mn=C″mn+b-serialID (17);

步骤H.3,将C′mn用14位的二进制数表示,其中m∈[1,M],n∈[1,N];

步骤H.4,选取s的一14位子序列{Sm+n,Sm+n+1,Sm+n+2,…,Sm+n+13}与C′mn的14位二进制数,进行按位异或操作;若m+n为奇数,则将异或结果的低7位与高7位进行交换,若m+n为偶数,则不变;

步骤H.5,将变换后的高程值转化为十进制得到Cmn

步骤I:基于ArcMap软件,通过“ArcToolbox->转换工具->转为栅格->ASCII转栅格”操作,将txt文件转换为Esri Grid格式的DEM数据,完成DEM的还原处理。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于南京师范大学,未经南京师范大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/201610911208.8/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top