本發明涉及數據安全傳輸技術領域,尤其涉及一種北斗芯片數據的安全傳輸方法、裝置及終端。
背景技術:
北斗芯片用來接收北斗衛星發射的信號,產生定位數據,并將定位數據發送至其他相關的處理芯片,處理芯片用于接收北斗芯片發送的定位數據,進行定位數據的處理和應用,實現定位導航或定位的應用。
北斗芯片與處理芯片通過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,包括北斗芯片數據的安全傳輸裝置,所述北斗芯片數據的安全傳輸裝置為發明上述實施例提供的北斗芯片數據的安全傳輸裝置。
需要說明的是,在本文中,諸如“第一”和“第二”等之類的關系術語僅僅用來將一個實體或者操作與另一個實體或操作區分開來,而不一定要求或者暗示這些實體或操作之間存在任何這種實際的關系或者順序。而且,術語“包括”、“包含”或者其任何其他變體意在涵蓋非排他性的包含,從而使得包括一系列要素的過程、方法、物品或者設備不僅包括那些要素,而且還包括沒有明確列出的其他要素,或者是還包括為這種過程、方法、物品或者設備所固有的要素。在沒有更多限制的情況下,由語句“包括一個……”限定的要素,并不排除在包括所述要素的過程、方法、物品或者設備中還存在另外的相同要素。
本領域技術人員在考慮說明書及實踐這里發明的公開后,將容易想到本發明的其它實施方案。本申請旨在涵蓋本發明的任何變型、用途或者適應性變化,這些變型、用途或者適應性變化遵循本發明的一般性原理并包括本發明未公開的本技術領域中的公知常識或慣用技術手段。說明書和實施例僅被視為示例性的,本發明的真正范圍和精神由下面的權利要求指出。
應當理解的是,本發明并不局限于上面已經描述并在附圖中示出的精確結構,并且可以在不脫離其范圍進行各種修改和改變。本發明的范圍僅由所附的權利要求來限制,以上所述的本申請實施方式并不構成對本申請保護范圍的限定。