一种电文认证方法、设备、系统及介质技术方案

技术编号:20874966 阅读:33 留言:0更新日期:2019-04-17 11:14
本发明专利技术提供了一种电文认证方法,包括第一终端、第二终端及第三终端,该方法利用民用导航电文格式的可扩展性,第二终端将加密第m‑i导航数据的密钥Km‑i编写于后生成的第m认证导航信号中,将加密结果编写于第m‑i认证导航信号中并将其发送至第三终端,第三终端提取接收的第m认证导航信号中的密钥Km‑i并将该密钥Km‑i重新加密接收到的第m‑i导航数据,若加密结果与第m‑i认证导航信号中的加密结果相同则第m‑i导航数据通过验证,若加密结果不相同则第m‑i导航数据通不过验证,实现在不增加设备复杂程度的情况下完成对导航数据的验证。另一方面,本发明专利技术还提供了一种执行或存储上述认证方法的电子设备、系统及计算机可读介质。

【技术实现步骤摘要】
一种电文认证方法、设备、系统及介质
本专利技术涉及卫星导航
,尤其涉及一种电文认证方法、设备、系统及介质。
技术介绍
北斗导航卫星广泛应用于位置定位、气象预报、交通运输和应急求援等众多领域,但是近年来频发导航信号事故引起了人们对北斗导航卫星系统(GlobalNavigationSatelliteSystem,简称GNSS)服务安全可信性的担忧。目前的GNSS广播信号设计完全公开,极易受到欺骗攻击,即通过伪装为真实的北斗导航卫星,播发与真实导航信号高度相似的欺骗导航信号,进而对特定目标发布欺骗信息。现有的GNSS欺骗防护手段主要采用阵列天线方式检测与识别欺骗导航信号,后续需要对大量终端设备进行升级,大大增加了终端的复杂度和成本。
技术实现思路
(一)要解决的技术问题本专利技术提供了一种电文认证方法、设备、系统及介质,可使得在不增加终端硬件复杂度的情况下,至少解决以上技术问题。(二)技术方案本专利技术提供了一种电文认证方法,方法包括:在第一终端生成密钥链和导航数据,其中,密钥链包括多个密钥K0,K1,……KN,且K0为根密钥;第一终端通过密钥Km对第m导航数据执行消息认证码运算生成MACm,将MACm、第m导航数据及密钥Km-i发送至第二终端,其中,m为大于零且小于等于N的整数,i为大于零且小于等于m的整数;第二终端将MACm和密钥Km-i编排于预设导航电文格式中生成第m认证导航数据,将第m认证导航数据调制生成第m认证导航信号,在t时刻,将第m认证导航信号发送至第三终端;在t-i*T时刻,第二终端将包含MACm-i、第m-i导航数据及密钥Km-i-i的第m-i认证导航信号发送至第三终端,其中,T为第三终端完成连续两次导航信号认证的时间间隔;在t+δt时刻,第三终端接收第m认证导航信号,在t-i*T+δt时刻接收第m-i认证导航信号,提取第m认证导航信号中的Km-i对第m-i认证导航信号中的第m-i导航数据执行消息认证码运算,生成MACm-i’,比对MACm-i’与MACm-i,若两者相同,则第m-i导航数据通过认证。可选地,在第一终端还包括对根密钥K0进行加密生成数字签名,将根密钥数字签名信息发送至第二终端,第二终端将根密钥数字签名信息编排于预设导航电文格式中,其中,根密钥数字签名信息至少包括根密钥数字签名、根密钥K0及根密钥K0所属密钥链标识CID信息。可选地,预设导航电文格式采用B-CNAV1电文格式,B-CNAV1电文格式中每帧电文包括子帧1、子帧2及子帧3,在子帧3中定义新页面,将MACm及密钥Km-i设于子帧3的新页面中。可选地,第二终端将所述根密钥数字签名信息编排于预设导航电文格式中,具体为将根密钥数字签名信息设于每帧电文的预留字节中。可选地,第三终端根据第m认证导航信号中的密钥Km-i对第m-i导航数据执行消息认证码运算之前还包括验证密钥Km-i,若密钥Km-i通过验证,则执行消息认证码运算,若没有通过验证,则不对第m-i导航数据进行认证。可选地,验证所述密钥Km-i包括:根据密钥链标识CID判断第三终端是否存储有相同的密钥链标识CID,若存在,则对密钥Km-i采用单向散列函数计算生成新密钥Knew,迭代计算密钥Knew的散列值作为新密钥Knew,判断每次生成的新密钥Knew与第三终端事先存储的密钥是否相同,若相同,则密钥Km-i通过验证;若不存在,则采用第三终端预存的公钥解密根密钥数字签名得到新的根密钥,对密钥Km-i采用单向散列函数计算生成新密钥Knew,迭代计算密钥Knew的散列值作为新密钥Knew,判断每次生成的新密钥Knew与第三终端解密得到的新根密钥是否相同,若相同,则密钥Km-i通过验证。可选地,由种子密钥通过单向散列函数依次生成密钥KN,……,K1,K0,且使用方向为K0,K1,……KN。另一方面本专利技术还提供了一种电子设备,包括:处理器;存储器,其存储有计算机可执行程序,该程序在被处理器执行时,使得处理器执行上述的电文认证方法。再一方面,本专利技术还提供了一种电文认证系统,包括:密钥链及导航数据生成模块,用于在第一终端生成密钥链和导航数据,其中,密钥链包括多个密钥K0,K1,……KN,且K0为根密钥;认证数据生成及发送模块,用于第一终端通过密钥Km对第m导航数据执行消息认证码运算生成MACm,将MACm、第m导航数据及密钥Km-i发送至第二终端,其中,m为大于零且小于等于N的整数,i为大于零且小于等于m的整数;认证导航信号生成模块,第二终端将MACm和密钥Km-i编排于预设导航电文格式中生成第m认证导航数据,将第m认证导航数据调制生成第m认证导航信号,在t时刻,将第m认证导航信号发送至第三终端;在t-i*T时刻,第二终端将包含MACm-i、第m-i导航数据及密钥Km-i-i的第m-i认证导航信号发送至第三终端,其中,T为第三终端完成连续两次导航信号认证的时间间隔;认证导航信号认证模块,在t+δt时刻,第三终端接收第m认证导航信号,在t-i*T+△t时刻接收第m-i认证导航信号,提取第m认证导航信号中的Km-i对第m-i认证导航信号中的第m-i导航数据执行消息认证码运算,生成MACm-i’,比对MACm-i’与MACm-i,若两者相同,则第m-i导航数据通过认证。再一方面,本专利技术还提供了一种计算机可读介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现上述的电文认证方法。(三)有益效果本专利技术提供了一种电文认证方法、设备、系统及介质,利用民用导航电文格式的可扩展性,将电文认证信息及其密钥编写于电文认证信号中,使的当终端接收到电文认证信号后可根据该密钥判断之前接收的电文认证信号的真实性。附图说明图1示意性示出了本公开实施例的电文认证方法的流程图;图2示意性示出了本公开实施例的北斗导航认证系统中各装置部署图;图3示意性示出了本公开实施例中密钥链的生成与使用流程图;图4示意性示出了本公开实施例中认证数据生成示意图;图5示意性示出了本公开实施例中电文数据结构示意图;图6示意性示出了本公开实施例中新定义的页面类型5的编排结构示意图;图7示意性示出了本公开实施例中MAC及密钥编排结构示意图;图8示意性示出了本公开实施例中根密钥数字签名信息编排结构示意图;图9示意性示出了本公开实施例中根密钥及其数字签名编排结构示意图;图10示意性示出了本公开实施例中认证导航信号生成示意图;图11示意性示出了本公开实施例中发送端工作流程图;图12示意性示出了本公开实施例中接收端工作流程图;图13示意性示出了本公开实施例中电子设备框图;图14示意性示出了本公开实施例中电文认证系统框图。具体实施方式为使本专利技术的目的、技术方案和优点更加清楚明白,以下结合具体实施例,并参照附图,对本专利技术进一步详细说明。本专利技术提供了一种电文认证方法,该方法包括:在第一终端生成密钥链和导航数据,其中,密钥链包括多个密钥K0,K1,……KN,且K0为根密钥;第一终端通过密钥Km对第m导航数据执行消息认证码运算生成MACm,将MACm、第m导航数据及密钥Km-i发送至第二终端,其中,m为大于零且小于等于N的整数,i为大于零且小于等于m的整数;第二终端将MACm和密钥Km-i编排于预设导航电文格式中生成第m认证导航数据,将第m认证导本文档来自技高网...

【技术保护点】
1.一种电文认证方法,其特征在于,所述方法包括:在第一终端生成密钥链和导航数据,其中,所述密钥链包括多个密钥K0,K1,……KN,且K0为根密钥;第一终端通过密钥Km对第m导航数据执行消息认证码运算生成MACm,将所述MACm、第m导航数据及密钥Km‑i发送至第二终端,其中,m为大于零且小于等于N的整数,i为大于零且小于等于m的整数;第二终端将所述MACm和密钥Km‑i编排于预设导航电文格式中生成第m认证导航数据,将所述第m认证导航数据调制生成第m认证导航信号,在t时刻,将所述第m认证导航信号发送至第三终端;在t‑i*T时刻,第二终端将包含MACm‑i、第m‑i导航数据及密钥Km‑i‑i的第m‑i认证导航信号发送至第三终端,其中,T为第三终端完成连续两次导航信号认证的时间间隔;在t+δt时刻,第三终端接收第m认证导航信号,在t‑i*T+△t时刻接收第m‑i认证导航信号,提取第m认证导航信号中的Km‑i对所述第m‑i认证导航信号中的第m‑i导航数据执行消息认证码运算,生成MACm‑i’,比对所述MACm‑i’与所述MACm‑i,若两者相同,则第m‑i导航数据通过认证。

【技术特征摘要】
1.一种电文认证方法,其特征在于,所述方法包括:在第一终端生成密钥链和导航数据,其中,所述密钥链包括多个密钥K0,K1,……KN,且K0为根密钥;第一终端通过密钥Km对第m导航数据执行消息认证码运算生成MACm,将所述MACm、第m导航数据及密钥Km-i发送至第二终端,其中,m为大于零且小于等于N的整数,i为大于零且小于等于m的整数;第二终端将所述MACm和密钥Km-i编排于预设导航电文格式中生成第m认证导航数据,将所述第m认证导航数据调制生成第m认证导航信号,在t时刻,将所述第m认证导航信号发送至第三终端;在t-i*T时刻,第二终端将包含MACm-i、第m-i导航数据及密钥Km-i-i的第m-i认证导航信号发送至第三终端,其中,T为第三终端完成连续两次导航信号认证的时间间隔;在t+δt时刻,第三终端接收第m认证导航信号,在t-i*T+△t时刻接收第m-i认证导航信号,提取第m认证导航信号中的Km-i对所述第m-i认证导航信号中的第m-i导航数据执行消息认证码运算,生成MACm-i’,比对所述MACm-i’与所述MACm-i,若两者相同,则第m-i导航数据通过认证。2.根据权利要求1所述的电文认证方法,在所述第一终端还包括对所述根密钥K0进行加密生成数字签名,将根密钥数字签名信息发送至第二终端,所述第二终端将所述根密钥数字签名信息编排于所述预设导航电文格式中,其中,所述根密钥数字签名信息至少包括根密钥数字签名、根密钥K0及根密钥K0所属密钥链标识CID信息。3.根据权利要求1或2所述的电文认证方法,所述预设导航电文格式采用B-CNAV1电文格式,所述B-CNAV1电文格式中每帧电文包括子帧1、子帧2及子帧3,在所述子帧3中定义新页面,将所述MACm及密钥Km-i设于所述子帧3的新页面中。4.根据权利要求3所述的电文认证方法,所述第二终端将所述根密钥数字签名信息编排于所述预设导航电文格式中,具体为将所述根密钥数字签名信息设于所述每帧电文的预留字节中。5.根据权利要求2所述的电文认证方法,所述第三终端根据所述第m认证导航信号中的密钥Km-i对所述第m-i导航数据执行消息认证码运算之前还包括验证所述密钥Km-i的真实性,若密钥Km-i通过验证,则执行所述消息认证码运算,若没有通过验证,则不对所述第m-i导航数据进行认证。6.根据权利要求5所述的电文认证方法,所述验证所述密钥Km-i包括:根据所述密钥链标识CID...

【专利技术属性】
技术研发人员:刘婷陈潇赵博昊郭旭强赵越吴海涛
申请(专利权)人:中国科学院光电研究院
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1