基于位置数据加密的环形穿梭车调度方法及调度系统
技术领域
本发明涉及信息安全传输技术领域,是一种基于位置数据加密的环形穿梭车调度方法及调度系统。
背景技术
近年来,随着物流业与计算机信息技术的进一步结合、升级,物流业取得了飞速地发展,现代企业规模的不断扩大,同时也使得物流行业竞争日益加剧,市场对企业物流系统提出新的要求。自动化立体仓库作为一种集仓储、信息、管理等功能于一体的高度人性化的物流系统,在大中型生产型企业的日常经营中占据着非常关键的地位。其中,环形穿梭车作为转运货物的重要的一环已广泛应用于自动化立体仓库项目,并以其快速、准确的特点逐步获得广大用户的认可。
作为调度系统运行的纽带和桥梁,环形穿梭车的良好运行对于保障自动化仓库的正常运行起着至关重要的作用。环形穿梭车通常为单轨形式,由往复式穿梭车发展而来,轨道在平面内呈闭环布置,穿梭车沿轨道单向运行即顺时针或逆时针方向运行,其行车轨道上可以同时运行多台穿梭车,从而改善了往复式穿梭车输送能力有限的缺点。
目前,实现环形穿梭车准确到达待执行调度任务的取货或卸货位置的方式是通过在穿梭车行走轮上安装条形码阅读器,环形轨道上安装条码带。环形穿梭车行走轮按照轨道既定的方向运行并不断阅读、识别、判断轨道上的条形码与环形穿梭车接收到的调度任务的位置条形码信号是否一致来实现定位。环形穿梭车在接收的调度任务位置信号的过程中,存在的一个问题就是如果有网络攻击者对环形穿梭车调度的位置信息进行有意篡改和伪造,使环形穿梭车在阅读、识别、判断条形码的过程中不能及时判断调度任务待执行的位置信息是否是完整、有效的。一旦环形穿梭车的待执行调度任务位置信息失真,环形穿梭车就不能够将需要传送或卸载的货物送到其实际应该到的位置,从而使传送货物的信息发生错误,影响下一轮新的调度任务的分配和执行,混乱调度系统的运行机制,降低调度系统的运行效率。
发明内容
本发明提供了基于位置数据加密的环形穿梭车调度方法及调度系统,克服上述现有技术之不足,其能有效解决环形穿梭车执行调度任务的位置定位过程中,存在定位计算时间复杂度高、环形穿梭车对待执行调度任务的位置信息易出错,判断精度低的问题。
本发明的技术方案之一是通过以下措施来实现的:一种基于位置数据加密的环形穿梭车调度方法,包括以下步骤:
S1:使用两种不同的采集方式采集穿梭车位置数据,对位置数据预处理:
采集穿梭车的加速度、速度、运动轨迹数据,分析出环形穿梭车的位置数据,包括相对位置m1、一次实际位置m2;
利用指纹定位系统采集环形穿梭车的二次实际位置数据m3;
分别对环形穿梭车的相对位置m1、一次实际位置m2以及二次实际位置数据m3进行优化处理;
S2:位置数据加密处理:对穿梭车的位置数据明文进行加密保护;
S3:位置数据验证:使用消息认证方法对环形穿梭车接收到的待执行调度任务的位置信息进行验证消息认证;
S4:环形穿梭车的调度执行及数据的有效反馈:利用环形穿梭车调度系统进行调度任务的分配和执行操作。
下面是对上述发明技术方案的进一步优化或/和改进:
上述S1中,采集穿梭车的位置数据信息,包括:
Step 1:利用速度传感器、加速度传感器检测穿梭车的运行轨迹信息;
Step 2:通过重力传感器和陀螺仪计算出穿梭车与行车轨道之间的航向角;
Step 3:获取环形穿梭车的一次实际位置数据m2;
Step 4:计算得到穿梭车与道口的相对位置m1,为调度任务的分配提供数值依据。
上述S1中,对环形穿梭车的相对位置m1、一次实际位置m2以及二次实际位置数据m3进行优化处理,具体步骤如下:
Step 1:采集穿梭车行车轨道上所有点的位置坐标,包括道口相对行车轨道的位置坐标和穿梭车在行车轨道上的相对位置坐标;
Step 2:定义实际位置数据的绝对误差限定为ε1,相对位置数据的绝对误差限定为ε2;
Step 3:选取满足限制条件的一次实际位置数据m2和二次实际位置数据m3,即通过定位出来的一次实际位置数据m2、二次实际位置数据m3之间的绝对误差限在设定的ε1范围之内,限制条件:
|m2-m3|<ε1 (1)
Step 4:对满足误差范围的一次实际位置数据m2、二次实际位置数据m3进行加权操作,优化实际位置数据M1,
M1=a2m2+a3m3 (2)
其中,a2、a3分别表示一次实际位置数据m2、二次实际位置数据m3的对应系数,且 a2=a3=1/2;
Step 5:利用优化后的实际位置数据M1以及根据相对误差限定ε2,确定出与调度任务分配相关的相对位置m1':
(m1′/|M1|)<ε2 (3)
Step 6:调度任务的预估分配,结合调度任务分配结果进行环形穿梭车待执行调度任务位置数据打包处理,将该相对位置位置m1'通过与随机生成的随机数进行异或运算后,使之变成具有随机性的{0,1}*二进制字符串作为预处理得到的位置明文消息M。
上述在S2中,穿梭车位置信息加密处理过程,包括加密阶段和解密阶段,加密阶段包括:
Step 1:定义一个三元组(G,E,D),G代表密钥生成,E代表加密,D代表解密;
Step 2:计算密钥生成函数,生成公钥-私钥对:G(1k)=S1(1k)=(i,ti),其中i 代表公钥,ti代表私钥;
Step 3:加密过程的实现:设定义域
陷门置换函数F={f
i:D
i→D
i},一个硬核比特集B={B
i:D
i→{0,1}},位置明文M,加密函数E(i,M)其中,l=|M|;
Step 4:随机选择一个r∈Di;
Step 5:计算出相关的数据:
fi(r),fi 2(r),···,fi 1(r) (4)
以及
P=Bi(r)Bi(fi(r))Bi(fi 2(r))···Bi(fi l-1(r)) (5)
通过硬核比特集生成的P是一个有l位长度的{0,1}l二进制串;
Step 6:输出密文
解密阶段包括:已知位置密文c=(M,a)(M,a)D=(ti,c),其中,|c|=|M|+k|M|+kl=|M′|;
Step 1:计算随机r,使得满足
fi l(r)=a (7)
通过陷门函数计算fi的逆函数:r=fi -1(a) (8)
Step 2:通过计算得到r,按照加密过程中相同的方法计算,
fi(r),fi 2(r),···fi l-1(r) (9)
Step 3:结合式9计算得到:
P=Bi(r)Bi(fi(r))Bi(fi 2(r))···Bi(fi l-1(r)) (10)
Step 4:输出得到解密后的位置明文:
上述S3中,位置信息验证阶段,利用消息认证方法对环形穿梭车接收到的待执行调度任务的位置信息进行验证,包括:
Step 1:定义一个三元组(K,MAC,VF),其中K代表密钥,MAC代表消息认证码的生成函数,VF代表消息验证函数,公钥、密钥是随机生成的,M是位置信息{0,1}*二进制字符串,Tag是消息验证码;
Step 2:生成(M′,Tag′)对,包括:
(1)位置数据明文M和消息认证码Tag利用进行公钥加密得到加密位置数据M',将M'通过信道传输给接收方,即待执行调度任务的环形穿梭车;
(2)接收方接收到加密位置数据M',通过私钥解密得到位置数据明文M和消息认证码Tag,
(3)利用解密得到的位置数据明文M和在密钥集中随机产生的密钥K,通过消息认证码生成函数MAC,生成消息认证码Tag′;
Step 3:结合(M′,Tag′)对和位置数据明文M,判断是否通过验证函数VF的验证,若是,输出1,通过验证,即M等于M';若输出0,则未通过验证,M不等于M'。
本发明的技术方案之二是通过以下措施来实现的:一种基于位置数据加密的环形穿梭车调度系统,用于调度任务的分配和执行操作,具体包括:包括第一层表现层、第二层功能层、第三层接口层和第四层数据层,
处于第四层的数据层,利用数据层响应的轨道数据、道口数据以及穿梭车位置数据以及调度任务分配数据,调度系统进行调度任务的分配并输出调度任务的分配结果;
处于第三层的接口层,接收到调度系统分配的调度任务,结合应用的操作系统、网络系统以及软件接口对相关需求的数据进行请求处理;
处于第二层的功能层,将接收到请求的穿梭车运行状态、穿梭车与轨道的相对位置数据以及穿梭车与道口的相对位置数据进行位置数据初始化处理;
处于第一层的表现层,用于调度任务执行及位置数据验证:位置数据通过验证函数的验证,若返回数字1,即验证成功,环形穿梭车执行相应的调度任务,并将此时的位置数据和任务项的数据进行实时更新,以确保调度任务的顺利进行;若返回数字0,即验证失败,存在发生位置信息失真或被篡改的痕迹,终止此次调度任务,请求新一轮的调度任务的分配。
本发明通过加密、解密、验证3个过程能够有效地传输环形穿梭车待执行调度任务位置信息,以及环形穿梭车可靠地执行的相关调度任务执行操作,并对新一轮的调度提供安全、有效的位置数据,对篡改或伪造过的位置信息或者错误传输的位置信息进行及时反馈和阻拦,保证调度系统的运行机制。本发明采用明文加密方法确定环形穿梭车待执行调度任务位置,计算环形穿梭车待执行调度任务位置密文;对环形穿梭车待执行调度任务位置密文利用消息认证方案进行身份验证;利用身份验证结果实现对环形穿梭车待执行调度任务的可靠执行或者请求新一轮调度任务的重新分配操作,保证环形穿梭车待执行调度任务位置数据的安全性,完整性及真实性。
附图说明
附图1为本发明实施例一的方法流程图。
附图2为本发明实施例一的位置数据优化处理流程图。
附图3为本发明实施例一的位置数据加密处理流程图。
附图4为本发明实施例一的位置数据验证流程图。
附图5为本发明实施例二的系统结构框图。
具体实施方式
本发明不受下述实施例的限制,可根据本发明的技术方案与实际情况来确定具体的实施方式。
下面结合实施例及附图对本发明作进一步描述:
实施例一:如附图1所示,一种基于位置数据加密的环形穿梭车调度方法,包括以下步骤:
S1:使用两种不同的采集方式采集穿梭车位置数据,对位置数据预处理:
采集穿梭车的加速度、速度、运动轨迹数据,分析出环形穿梭车的位置数据,包括相对位置m1、一次实际位置m2;
利用指纹定位系统采集环形穿梭车的二次实际位置数据m3;
分别对环形穿梭车的相对位置m1、一次实际位置m2以及二次实际位置数据m3进行优化处理;
S2:位置数据加密处理:对穿梭车的位置数据明文进行加密保护;
S3:位置数据验证:使用消息认证方法对环形穿梭车接收到的待执行调度任务的位置信息进行验证消息认证;
S4:环形穿梭车的调度执行及数据的有效反馈:利用环形穿梭车调度系统进行调度任务的分配和执行操作。
上述的指纹定位系统指的是在环形穿梭车工作的空间中,采集将其可能工作的地点的位置数据相关的光线、Wi-Fi信号等参数并保存在其数据库中,当环形穿梭车通过相应位置时,结合传感器采集的光线、Wi-Fi信号等相关参数的数据,通过比对数据库中的对应参数数据就可以得到环形穿梭车的实际位置数据,并且每一个位置信息都有其独特的参数特征,因此类似指纹具有唯一性,因此称之为指纹定位系统。
可根据实际需要,对上述基于位置数据加密的环形穿梭车调度方法作进一步优化或/ 和改进:
如附图1所示,S1中,采集穿梭车的位置数据信息,包括:
Step 1:利用速度传感器、加速度传感器检测穿梭车的运行轨迹信息;
Step 2:通过重力传感器和陀螺仪计算出穿梭车与行车轨道之间的航向角;
Step 3:获取环形穿梭车的一次实际位置数据m2;
Step 4:计算得到穿梭车与道口的相对位置m1,为调度任务的分配提供数值依据。
如附图1、2所示,S1中,对环形穿梭车的相对位置m1、一次实际位置m2以及二次实际位置数据m3进行优化处理,具体步骤如下:
Step 1:采集穿梭车行车轨道上所有点的位置坐标,包括道口相对行车轨道的位置坐标和穿梭车在行车轨道上的相对位置坐标;
Step 2:定义实际位置数据的绝对误差限定为ε1,相对位置数据的绝对误差限定为ε2;
Step 3:选取满足限制条件的一次实际位置数据m2和二次实际位置数据m3,即通过定位出来的一次实际位置数据m2、二次实际位置数据m3之间的绝对误差限在设定的ε1范围之内,限制条件:
|m2-m3|<ε1 (1)
Step 4:对满足误差范围的一次实际位置数据m2、二次实际位置数据m3进行加权操作,优化实际位置数据M1,
M1=a2m2+a3m3 (2)
其中,a2、a3分别表示一次实际位置数据m2、二次实际位置数据m3的对应系数,且 a2=a3=1/2;
Step 5:利用优化后的实际位置数据M1以及根据相对误差限定ε2,确定出与调度任务分配相关的相对位置m1':
(m1′/|M1|)<ε2 (3)
Step 6:调度任务的预估分配,结合调度任务分配结果进行环形穿梭车待执行调度任务位置数据打包处理,将该相对位置位置m1'通过与随机生成的随机数进行异或运算后,使之变成具有随机性的{0,1}*二进制字符串作为预处理得到的位置明文消息M。
在该优化过程中,分别采集加速度、速度、运动轨迹的参数数据,大致分析出环形穿梭车的初始位置数据包括相对位置m1、一次实际位置m2,并结合利用指纹定位系统采集环形穿梭车的二次实际位置m3,对环形穿梭车的一次实际位置数据、相对位置数据和二次实际位置数据进行优化处理。通过一次实际位置m2和二次实际位置m3的优化处理,从而确定优化后的实际位置数据M1。
如附图1、3所示,在S2中,穿梭车位置信息加密处理过程,包括加密阶段和解密阶段,加密阶段包括:
Step 1:定义一个三元组(G,E,D),G代表密钥生成,E代表加密,D代表解密;
Step 2:计算密钥生成函数,生成公钥-私钥对:G(1k)=S1(1k)=(i,ti),其中i 代表公钥,ti代表私钥;
Step 3:加密过程的实现:设定义域
陷门置换函数F={f
i:D
i→D
i},一个硬核比特集B={B
i:D
i→{0,1}},位置明文M,加密函数E(i,M),其中,l=|M|;
Step 4:随机选择一个r∈Di;
Step 5:计算出相关的数据:
fi(r),fi 2(r),···,fi 1(r) (4)
以及
P=Bi(r)Bi(fi(r))Bi(fi 2(r))···Bi(fi l-1(r)) (5)
通过硬核比特集生成的P是一个有l位长度的{0,1}l二进制串;
Step 6:输出密文
解密阶段包括:已知位置密文c=(M,a)(M,a)D=(ti,c),其中,|c|=|M|+kM|+kl=|M′|;
Step 1:计算随机r,使得满足
fi l(r)=a (7)
通过陷门函数计算fi的逆函数:r=fi -1(a) (8)
Step 2:通过计算得到r,按照加密过程中相同的方法计算,
fi(r),fi 2(r),···fi l-1(r) (9)
Step 3:计算得到:
P=Bi(r)Bi(fi(r))Bi(fi 2(r))···Bi(fi l-1(r)) (10)
Step 4:输出得到解密后的位置明文:
本发明采用公钥加密方案对位置明文信息进行加密处理,利用的是陷门函数与单向函数等价性来保证其加密位置数据明文的安全性。其中,利用非对称概率加密算法,对穿梭车的实际位置信息M进行加密保护,这种方法在对位置明文进行分组后,使相同的位置明文的密码通过概率选择密钥加密后,可以得到不同的密文这一特点,使得位置明文加密后得到的位置密文,具有不可区分性和随机性。
如图4所示,S3中,位置信息验证阶段,利用消息认证方法对环形穿梭车接收到的待执行调度任务的位置信息进行验证,消息认证方法的实现过程:
Step 1:定义一个三元组(K,MAC,VF),其中K代表密钥,MAC代表消息认证码的生成函数,VF代表消息验证函数,公钥密钥K是随机生成的,M是位置信息{0,1}*二进制字符串,Tag是消息验证码;
Step 2:对于任意的K和任意的M∈{0,1}*,有
Pr(Tag←MACk(M)) (12);
Step 3:对于一个代表Tag的数τ≥1,如果K∈Key(Ⅱ)),对任意的M∈{0,1}*,有
Pr(Tag←MACk(M):Tag=⊥OR|Tag|=τ)=1 (13)。
以下是加密、解密、验证函数在消息认证过程中取代的角色位置:
(1)加密函数Sk(M)的基本构成:
Tag←MACK(M)
M′←(M,Tag)
得到位置明文M′;
上述的Tag←MACK(M)指位置数据明文M和在密钥集中随机产生的密钥K(K指的均为同一个),通过消息认证码生成函数MAC(也就是一个hash函数)产生一个与位置数据明文M对应的一个消息认证码Tag;
上述的M′←(M,Tag)是指:将上一步得到的(M,Tag),通过公钥加密操作得到M′并将其通过信道发送给接收方(待执行调度任务的环形穿梭车);
(2)结合返回的M′,解密函数Rk(M′)的基本构成:
(M,Tag)←M′;
if VFk(M,Tag)=1;
返回1,否则返回0;
上述的(M,Tag)←M′接收方(待执行调度任务的环形穿梭车)接收到M'后,通过其私钥进行解密操作,得到(M,Tag);
上述的VFk(M,Tag)=1是结合在密钥集中随机产生的密钥K(K指的均为同一个),通过VF验证函数对(M,Tag)进行验证,判断解密后的位置明文与发送的位置明文M是否一致;若验证通过,输出1,否则输出0;
(3)解密操作中进行的验证函数VFk(M,Tag)的构成可如下:
Tag′←MACk(M);
if(Tag=Tag′and Tag′=⊥);
返回1,否则返回0。
上述的VF验证函数基本原理:接收方(待执行调度任务的环形穿梭车)利用私钥解密得到的位置明文M,结合在密钥集中随机产生的密钥K(K指的均为同一个),通过消息认证码的生成函数MAC,产生消息证码Tag';
如果产生的消息认证码Tag'与其利用私钥解密得到的Tag值一致且产生的消息认证码 Tag'不为空,此时,通过验证,输出结果为1;否则,未通过验证,输出结果0。
上述经过解密操作得到的输出结果是:如果输出得到的结果是1,代表消息通过验证,即为传输的完整的位置信息,环形穿梭车可进行执行下一步的操作;否则输出为0,地址信息被篡改或者其他原因出错,就可以通过输出结果及时报错,不执行相关的操作,这样能够快速地判断位置信息的可靠性,避免环形穿梭车的调度系统出现混乱。
上述在经过信道传输时,如果直接传输初始的位置数据明文M和消息认证码Tag,存在位置明文消息M和消息验证码Tag被攻击者恶意伪造、篡改操作等风险,因此,需要对位置数据密文采用消息认证码进行验证。
实施例二:如图5所示,一种基于位置数据加密的环形穿梭车调度系统,用于调度任务的分配和执行操作,具体包括:包括第一层表现层、第二层功能层、第三层接口层和第四层数据层,
处于第四层的数据层,利用数据层响应的轨道数据、道口数据以及穿梭车位置数据以及调度任务分配数据,调度系统进行调度任务的分配并输出调度任务的分配结果;
处于第三层的接口层,接收到调度系统分配的调度任务,结合应用的操作系统、网络系统以及软件接口对相关需求的数据进行请求处理;
处于第二层的功能层,将接收到请求的穿梭车运行状态、穿梭车与轨道的相对位置数据以及穿梭车与道口的相对位置数据进行位置数据初始化处理;
处于第一层的表现层,用于调度任务执行及位置数据验证:位置数据通过验证函数的验证,若返回数字1,即验证成功,环形穿梭车执行相应的调度任务,并将此时的位置数据和任务项的数据进行实时更新,以确保调度任务的顺利进行;若返回数字0,即验证失败,存在发生位置信息失真或被篡改的痕迹,终止此次调度任务,请求新一轮的调度任务的分配。
通过上述位置信息的加密、解密、验证3个过程,能够有效地传输环形穿梭车待执行调度任务位置信息以及可靠地执行环形穿梭车相关调度任务操作,对进行新一轮的调度提供安全、有效的位置数据,并对篡改或伪造过的位置信息或者错误传输的位置信息进行及时反馈和阻拦,保证调度系统的运行机制。
以上技术特征构成了本发明的实施例,其具有较强的适应性和实施效果,可根据实际需要增减非必要的技术特征,来满足不同情况的需求。