本发明涉及数据安全传输技术领域,尤其涉及一种北斗芯片数据的安全传输方法、装置及终端。
背景技术:
北斗芯片用来接收北斗卫星发射的信号,产生定位数据,并将定位数据发送至其他相关的处理芯片,处理芯片用于接收北斗芯片发送的定位数据,进行定位数据的处理和应用,实现定位导航或定位的应用。
北斗芯片与处理芯片通过PCB(Printed Circuit Board,印制电路板)或者SIP(System in Package,系统级封装)相连,一般通过UART(Universal Asynchronous Receiver/Transmitter,通用异步收发传输器)、SPI(Serial Peripheral Interface,串行外设接口)或I2C(Inter-Integrated Circuit,两线式串行总线)协议进行通信。
UART、SPI和I2C信号接口数量较少,接口协议较为简单,且通讯速度较慢,其传输线上的数据可以被一些仪器设备测量获取。且现有的技术中,北斗芯片与处理芯片的定位数据传输采用明文传输,传输的定位数据容易被获取和破解。然而定位数据是比较敏感的数据,如果被破解或者篡改,将破获北斗芯片使用装置或设备的使用安全。如此。怎样提高北斗芯片的定位数据传输的安全性是本领域人员亟待解决的技术难题。
技术实现要素:
为克服相关技术中存在的问题,本发明提供一种关于北斗芯片的数据安全传输方法、装置及终端。
根据本发明实施例的第一方面,提供的一种北斗芯片数据的安全传输方法,用于北斗芯片与处理芯片之间的数据传输,包括:
获取所述北斗芯片生成的定位数据,计算生成所述定位数据的签名;
将所述定位数据和所述签名进行加密,获得传输密文;
将所述传输密文传输至所述处理芯片;
将处理芯片接收到的传输密文进行解密,获得传输明文,分别提取得到定位数据明文和签名A;
计算所述定位数据明文,生成所述定位数据明文的签名B;
判断所述签名A和签名B是否一致;
若一致,则所述处理芯片进行所述定位数据明文的进一步处理;或者,
若不一致,则丢弃所述定位数据明文。
优选的,上述北斗芯片数据的安全传输方法中,所述计算生成所述定位数据的签名,包括:
计算所述定位数据的摘要;
计算所述摘要的签名,将所述摘要的签名生成为所述定位数据的签名。
优选的,上述北斗芯片数据的安全传输方法中,所述计算生成所述定位数据的签名,包括:
通过SM3计算所述定位数据的摘要;
通过SM2计算所述摘要的签名,将所述摘要的签名生成为所述定位数据的签名。
优选的,上述北斗芯片数据的安全传输方法中,所述定位数据采用SM1或SM4进行加密,所述传输密文采用所述SM1或SM4进行解密。
根据本发明实施例的第二方面,本发明提供一种北斗芯片数据的安全传输装置,包括:
北斗芯片签名生成模块,用于获取所述北斗芯片生成的定位数据,计算生成所述定位数据的签名;
北斗芯片加密模块,所述定位数据和所述签名进行加密,获得传输密文;
北斗芯片密文发送模块,所述传输密文传输至所述处理芯片;
处理芯片密文解密模块,用于将处理芯片接收到的传输密文进行解密,获得传输明文,分别提取得到定位数据明文和签名A;
定位数据明文计算模块,用于计算所述定位数据明文,生成所述定位数据明文的签名B;
签名校验模块,用于比较签名A和签名B,当签名A和签名B一致时,所述处理芯片进行所述定位数据明文的进一步处理,当签名A和签名B不一致时,丢弃所述定位数据明文。
优选的,上述北斗芯片数据的安全传输装置中,所述北斗芯片签名生成模块包括:
北斗芯片摘要计算单元,用于计算所述定位数据的摘要;
北斗芯片摘要的签名生成单元,计算所述摘要的签名,将所述摘要的签名生成为所述定位数据的签名。
优选的,上述北斗芯片数据的安全传输装置中,所述北斗芯片签名生成模块包括:
北斗芯片摘要SM3计算单元,用于通过SM3算法计算所述定位数据的摘要;
北斗芯片摘要的签名SM2生成单元,通过SM2算法计算所述摘要的签名,将所述摘要的签名生成为所述定位数据的签名。
优选的,上述北斗芯片数据的安全传输装置中,还包括:
第一密钥模块,用于存储SM1或SM4密钥,加密所述定位数据和签名进行,生成传输密文;
第二密钥模块,用于存储SM1或SM4密钥,进行所述处理芯片内传输密文的解密。
根据本发明实施例的第三方面,本发明提供一种终端设备,包括北斗芯片数据的安全传输装置,其特征在于,所述北斗芯片数据的安全传输装置为上述的北斗芯片数据的安全传输装置。
由上述方案可见,本发明提供的一种北斗芯片数据的安全传输方法、装置及终端,生成定位数据的签名,并将北斗芯片中明文传输的定位数据进行加密处理,通过加密和签名校验,提高定位数据获取和破译难度,有效提高北斗芯片数据传输的安全性,避免被某些电子测量仪器抓取分析或其他技术手段干扰篡改。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本发明。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本发明的实施例,并与说明书一起用于解释本发明的原理。
为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为本发明一实施例提供的北斗芯片数据的安全传输方法的流程示意图;
图2为本发明又一实施例提供的北斗芯片数据的安全传输方法的流程示意图;
图3为本发明一实施例提供的北斗芯片数据的安全传输装置的结构示意图;
图4为本发明又一实施例提供的北斗芯片数据的安全传输装置的结构示意图;
图5为本发明再一实施例提供的北斗芯片数据的安全传输装置的结构示意图;
图6为本发明实施例提供的终端设备的结构示意图。
具体实施方式
这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本发明相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本发明的一些方面相一致的装置和方法的例子。
图1本发明实施例提供的北斗芯片数据的安全传输方法的流程示意图。北斗芯片数据的安全传输方法,用于北斗芯片与处理芯片之间的数据传输如图1所示,所述方法包括:
步骤S101:获取所述北斗芯片生成的定位数据,计算生成所述定位数据的签名。
在北斗芯片接收北斗卫星发送的信号,生成定位数据,通过计算生成所述定位数据的签名。采用DSA(Digital Signature Algorithm)、RSA(Ron Rivest,Adi Shamir和Leonard Adleman提出)等算法生成所述定位数据的签名。
步骤S102:将所述定位数据和所述签名进行加密,获得传输密文。
将定位数据和定位数据的签名进行加密,获取传输密文,用于北斗芯片和处理芯片间的传输。定位数据和签名加密的密钥可为国密SM1(SM1 cryptographic algorithm)、国密SM4(SM4 cryptographic algorithm)、AES(Advanced Encryption Standard,高级加密标准)或DES(Data Encryption Standard,数据加密标准)等算法。
步骤S103:将所述传输密文传输至所述处理芯片。
在获得传输密文后,北斗芯片将传输密文传输至处理芯片,完成北斗芯片定位数据与处理芯片之间的数据传输。本发明实施例中,通过UART、SPI或I2C协议进行数据的传输。
步骤S104:将处理芯片接收到的传输密文进行解密,获得传输明文,分别提取得到定位数据明文和签名A。
处理芯片接收到传输密文后,进行传输密文的解密,获得传输明文,提取传输明文中的定位数据和签名A。传输密文的解密采用与加密相对应的密钥算法。
步骤S105:计算所述定位数据明文,生成所述定位数据明文的签名B。
计算定位数据明文,生成定位数据明文的签名B。采用与定位数据计算签名的方法计算处理芯片获得的定位数据明文的签名B。
步骤S106:判断所述签名A和签名B是否一致。
判断签名A和签名B是否一致,当签名A和签名B一致时,执行步骤S107;当签名A和签名B不一致时,执行步骤S108。出现签名A和签名B不一致,说明数据在传输的时候可能被篡改,数据存在不安全,将不适合被继续使用。
步骤S107:所述处理芯片进行所述定位数据明文的进一步处理。
在签名A和签名B一致时,北斗芯片与处理芯片间的数据传输判定为是安全的,数据可以被应用,处理芯片进行定位数据明文的进一步处理。
步骤S108:丢弃所述定位数据明文。
在签名A和签名B不一致时,获得的定位数据明文可能是被篡改了的数据,数据真实性不能够保证,不适合被继续使用,丢弃定位数据明文。
本发明实施例中提供的北斗芯片数据的安全传输方法,将传输的定位数据进行签名和加密处理,增加定位数据破译的难度,从而提高北斗芯片数据的安全传输,有效保护定位数据,且通过签名验证数据在传输的过程中,是否可能被篡改,保证数据的真实性。
在本发明一种可选的实施例中,本发明提供的北斗芯片数据的安全传输方法中,计算生成所述定位数据的签名中包括:计算所述定位数据的摘要,计算所述摘要的签名,将所述摘要的签名生成为所述定位数据的签名。通过SHA(Secure Hash Algorithm)或SM3等算法计算定位数据的摘要,获得定位数据的摘要后,再计算所述摘要的签名。如此在定位数据的签名生成过程中,经过双重计算,增加签名的破译难度,保证签名在数据传输过程中的真实性。
进一步的,在本发明一种可选的实施例中,本发明提供的北斗芯片数据的安全传输方法中,计算生成所述定位数据的签名中包括以下步骤,详见附图2。
步骤S201:通过SM3计算所述定位数据的摘要。
运用国密SM3(SM3 cryptographic algorithm)的算法计算定位数据的摘要。
步骤S202:通过SM2计算所述摘要的签名,将所述摘要的签名生成为所述定位数据的签名。
运用国密SM3计算定位数据的摘要后,通过国密SM2(SM2 cryptographic algorithm)算法计算摘要的签名,将摘要的签名生成为定位数据的签名。
国密SM3和国密SM2组合使用,提高签名的安全性,更加有助于提高北斗芯片数据传输的安全性,且便于实现。
为便于上述实施例提供的北斗芯片数据的安全传输方法的实现,本发明可选的实施例中,定位数据采用SM1或SM4进行加密,定位数据密文采用所述SM1或SM4进行解密。即可满足加密的需要,计算速度快且又便于实现。
基于本发明提供的北斗芯片数据的安全传输方法,本发明还提供了一种北斗芯片数据的安全传输装置,主要包括北斗芯片和处理芯片,处理芯片用于接收北斗芯片传输的定位数据,更具体的结构参照附图3,包括:
北斗芯片签名生成模块301,用于获取所述北斗芯片生成的定位数据,计算生成所述定位数据的签名。
北斗芯片加密模块302,所述定位数据和所述签名进行加密,获得传输密文。
北斗芯片密文发送模块303,所述传输密文传输至所述处理芯片。
处理芯片密文解密模块304,用于将处理芯片接收到的传输密文进行解密,获得传输明文,分别提取得到定位数据明文和签名A。
定位数据明文计算模块305,用于计算所述定位数据明文,生成所述定位数据明文的签名B。
签名校验模块306,用于比较签名A和签名B,当签名A和签名B一致时,所述处理芯片进行所述定位数据明文的进一步处理,当签名A和签名B不一致时,丢弃所述定位数据明文。
本发明还提供的北斗芯片数据的安全传输装置,实现了北斗芯片与处理芯片间数据传输的安全性。北斗芯片加密模块302和处理芯片密文解密模块304按照加密和解密要求,内置的算法要保持匹配关系。
在本发明提供的北斗芯片数据的安全传输装置一种可选的实施例中,参见附图4,北斗芯片签名生成模块301包括:
北斗芯片摘要计算单元401,用于计算所述定位数据的摘要;
北斗芯片摘要的签名生成单元402,计算所述摘要的签名,将所述摘要的签名生成为所述定位数据的签名。
在本发明提供的北斗芯片数据的安全传输装置一种可选的实施例中,参见附图5,北斗芯片签名生成模块301包括:
北斗芯片摘要SM3计算单元501,用于通过SM3算法计算所述定位数据的摘要;
北斗芯片摘要的签名SM2生成单元502,通过SM2算法计算所述摘要的签名,将所述摘要的签名生成为所述定位数据的签名。
进一步优化技术方案,本发明提供的北斗芯片数据的安全传输装置一种可选的实施例中,第一密钥模块,用于存储SM1或SM4密钥,加密所述定位数据和签名进行,生成传输密文;第二密钥模块,用于存储SM1或SM4密钥,进行所述处理芯片内传输密文的解密。
本发明还提供了一种终端设备,可以是移动电话,计算机,数字广播终端,消息收发设备,游戏控制台,平板设备,医疗设备,健身设备,个人数字助理等需要定位数据的设备,其结构详见附图6,包括北斗芯片数据的安全传输装置,所述北斗芯片数据的安全传输装置为发明上述实施例提供的北斗芯片数据的安全传输装置。
需要说明的是,在本文中,诸如“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
本领域技术人员在考虑说明书及实践这里发明的公开后,将容易想到本发明的其它实施方案。本申请旨在涵盖本发明的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本发明的一般性原理并包括本发明未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本发明的真正范围和精神由下面的权利要求指出。
应当理解的是,本发明并不局限于上面已经描述并在附图中示出的精确结构,并且可以在不脱离其范围进行各种修改和改变。本发明的范围仅由所附的权利要求来限制,以上所述的本申请实施方式并不构成对本申请保护范围的限定。