CN114339632A - 一种基于sm4分组加密算法的北斗短报文加解密方法 - Google Patents
一种基于sm4分组加密算法的北斗短报文加解密方法 Download PDFInfo
- Publication number
- CN114339632A CN114339632A CN202111534988.6A CN202111534988A CN114339632A CN 114339632 A CN114339632 A CN 114339632A CN 202111534988 A CN202111534988 A CN 202111534988A CN 114339632 A CN114339632 A CN 114339632A
- Authority
- CN
- China
- Prior art keywords
- short message
- encryption
- message
- length
- ciphertext
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Classifications
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D30/00—Reducing energy consumption in communication networks
- Y02D30/70—Reducing energy consumption in communication networks in wireless communication networks
Landscapes
- Radio Relay Systems (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
本发明公开了一种基于SM4分组加密算法的北斗短报文加解密方法,该方法由发送设备和接收设备统一到可信密钥中心进行注册,并基于SM4分组加密算法生成加密密钥,使用加密密钥对北斗短报文消息明文进行加密生成密文,计算密文的消息验证码,将密文及消息验证码拼接后得到加密的北斗短报文消息,将加密的北斗短报文消息发送到接收设备;本方法基于SM4分组加密算法对北斗短报文进行加解密,可以保证明文和密文中的字符均为有效字符,符合北斗协议要求,确保加解密的正确性,且在通信双方进行短报文通信时,保证了北斗短报文消息的保密性和完整性,防止消息被窃取及篡改,有效提升了北斗短报文通信的安全性。
Description
技术领域
本发明涉及信息安全领域,尤其涉及一种基于SM4分组加密算法的北斗短报文加解密方法。
背景技术
北斗卫星导航系统是我国自主研发、独立运行的全球卫星导航系统,目前已全部完成北斗卫星组网,北斗三代服务区域覆盖了全球,为全球用户提供了全天候,全天时高精度,高可靠性定位,导航及授时等服务功能。已广泛用于交通运输、海洋渔业、气象预报、救灾减灾、应急搜救等领域,逐步渗透到军民应用的方方面面,不断推动北斗卫星导航系统在各行业广泛应用,具有非常广阔的前景。
短报文通信是北斗卫星导航系统所特有的服务,相比于现有国外的GPS、GLONASS、Galileo等卫星导航系统,北斗卫星导航系统提供的RDSS短报文通信服务可以支持双向通信,且无需基站参与,通信双方直接通过北斗卫星进行数据传输,有效克服了极端地理环境的限制。
目前,北斗短报文通信都是以明文进行传输,由于北斗卫星通信具有链路长,易受攻击等特点,因此明文在传输时将面临极大的安全隐患。而现有的北斗短报文加密方案存在极大的安全隐患,且无法更好的解决因加密后出现特殊字符导致超出北斗短报文通信协议对于传输字符的限制的问题。
发明内容
本发明旨在解决以上现有技术的问题,提供一种基于SM4分组加密算法的北斗短报文加解密方法,以解决现有的北斗短报文加密算法,存在极大的安全隐患,且无法更好的解决因加密后出现特殊字符导致超出北斗短报文通信协议对于传输字符的限制的问题。
本发明的技术方案是:
一种基于SM4分组加密算法的北斗短报文加解密方法,其特征在于:
步骤1,发送端和接收端需分别通过离线的方式向可信密钥管理中心进行身份注册,可信密钥管理中心分别向发送端和接收端发放共享密钥K和完整性密钥UID;
步骤2,初始化SM4分组加密算法,发送端获取短报文消息明文m,明文m长度为128bit的整数倍时,通过SM4分组加密算法,采用分组加密的方式,每个分组大小为128bit,使用共享密钥K对m每个分组进行加密EK{m1~n},得到每个分组的密文后,将每个分组的密文依次进行拼接,得到短报文消息密文EK{m}=EK{m1}||EK{m2}||…||EK{mn},密文长度与明文长度一致;当明文m长度不足128bit时,进行补位操作,在消息后填充0,得到短报文消息密文EK{m},长度为128bit;
步骤3,初始化SM3密码杂凑算法,通过SM3密码杂凑算法对短报文消息密文EK{m}与完整性密钥UID进行哈希运算,得到消息验证码MAC=h(EK{m}||UID),长度固定为256bit;
步骤4,将短报文消息密文EK{m}与消息验证码MAC进行拼接,得到加密的短报文消息M=(EK{m}||MAC);
步骤5,发送端将加密的短报文消息M填充到短报文消息通信内容中,并通过北斗卫星发送到接收端;
步骤6,接收端接收到加密的短报文消息M,依据短报文消息通信内容和格式,获取短报文消息密文EK{m}长度,根据长度对接收到的加密的短报文消息M进行截断,得到短报文消息密文EK{m}及消息验证码MAC。获取发送端ID,通过ID查询到对应的UID’,并通过SM3密码杂凑算法计算得到MAC’=h(EK{m}||UID’),与MAC进行比对,若不一致,则不对消息进行处理,若一致,则对短报文消息密文EK{m}进行解密,得到短报文消息明文m,完成北斗短报文加解密过程。
每次进行注册时,共享密钥K和完整性密钥UID都不相同,保证发送端和接收端都具有唯一的共享密钥K和完整性密钥UID;共享密钥K长度固定为128bit,完整性密钥UID长度也固定为128bit,并保证共享密钥K和完整性密钥UID一一对应,且各不相同。
步骤2初始化SM4分组加密算法时将密钥和初始向量的缓冲区初始化为空,将所述共享密钥K作为加密密钥存入密钥缓冲区;若所述的共享密钥K不存在,则需要发送端重新向可信密钥管理中心注册。
步骤5所述的加密的短报文消息M需转换成十六进制数,并将十六进制数一一映射成一个字符,且每个字符均为数字及字母;将字符型的十六进制数依次填充到需要发送的短报文消息内容中,且每个字符都必须满足北斗短报文通信协议的要求,避免加密出现特殊字符超出北斗短报文通信协议的要求,导致通信内容无法正确发送和接收。
步骤5所述短报文消息通信内容还包括:短报文加密标志位,短报文消息密文EK{m}长度;当所述加密的短报文消息M大于北斗短报文通信一次所传输内容的最大长度时,所述短报文消息通信内容还包括:长报文加密标志位、长报文消息密文EK{m’}长度、报文序列号、总条数和结束标志。
步骤6所述接收到的加密的短报文消息M需要先将每相邻的两个字符合并为一个十六进制数,再对加密的短报文消息M进行解密。
本发明有益效果是:
本发明基于SM4分组加密算法的北斗短报文加解密方法,对加密后传输字符进一步变换,符合北斗短报文通信协议的要求,设计短报文消息通信内容传输格式,提高对加密的短报文消息的处理效率,同时保证短报文消息传输的保密性和完整性;解决了现有的北斗短报文加密算法,存在极大的安全隐患,且无法更好的解决因加密后出现特殊字符导致超出北斗短报文通信协议对于传输字符的限制的问题。
附图说明
图1是本发明提供的一种基于SM4分组加密算法的北斗短报文加解密方法整体流程图;
图2是本发明提供的另一种基于SM4分组加密算法的北斗短报文加解密方法的流程示意图;
具体实施方式
下面对本发明具体的实施方式进行阐述,来进一步说明本发明的出发点以及相应的技术方案。
如图1所示为一种基于SM4分组加密算法的北斗短报文加解密方法流程图,其主要包括如下三个阶段:离线注册阶段、短报文消息加密阶段与短报文消息解密阶段。下面针对这三个阶段做详细的介绍。
一、离线注册阶段:发送端和接收端到可信密钥管理中心登记注册以获取相关注册信息。
二、加密阶段:初始化SM4分组加密算法,获取北斗短报文真实消息,判断真实消息长度,若不是128bit的整数倍,则对消息进行填充。通过SM4分组加密算法对短报文真实消息进行分组加密,得到密文EK{m}。初始化SM3密码杂凑算法,通过SM3密码杂凑算法计算密文的消息验证码。密文与消息验证码拼接后得到加密的短报文消息M,将加密的短报文消息M填充到短报文消息通信内容中,经北斗卫星发送给接收端,完成短报文加密过程。
三、解密阶段:接收端接收到短报文消息后,根据密文长度标识,解析出密文和消息验证码,首先比对消息验证码是否一致,若一致,则对密文进行解密,得到短报文真实消息,完成解密过程。
图2是本发明提供的另一种天地一体化空间信息网络匿名接入认证方法的流程示意图,所述方法包括以下步骤:
步骤201,发送端和接收端携带固有身份信息向可信密钥管理中心进行注册,可信密钥管理中心向所述的发送端和接收端发送注册响应,完成所述发送端及接收端的注册。具体为:固有身份信息包括7个字节的设备序列号,可信密钥管理中心获取所述发送端的固有身份信息后计算发送端完整性密钥UID=SM3(发送设备序列号||接收端设备序列号),长度为128bit;以SM3分组加密的方式生成对应的128bit密钥K,分发送给注册的发送端和接收端,且每次注册后的发送端和接收端拥有唯一的UID和K,发送端和接收端将UID和K存储起来,同时由可信密钥管理中心通知注册的发送端和接收端所采用的加密方式和验证方式。其中函数SM3()为国产密码杂凑算法的哈希函数,SM3(发送设备序列号||接收端设备序列号)运算表示,对发送设备序列号和接收端设备序列号拼接后进行单向哈希计算。
步骤202,发送端采集所要发送的短报文真实消息,发送端使用对称密钥K对短报文真实消息进行加密,得到密文EK{m},并生成消息验证码MAC=SM3(EK{m}||UID),得到加密的短报文消息M=EK{m}||MAC。对加密的短报文消息M转换成十六进制数,并对十六进制数每个数一一映射为一个字符,从低到高依次填充到短报文消息通信内容中,对通信内容计算校验位,附在消息体后。
步骤203,判断加密的短报文消息M的长度L是否超过一次短报文消息通信内容的最大长度。若未超过限制,则定义短报文消息格式,具体为短报文加密标志位+密文长度+有效信息内容,直接经北斗卫星发送到接收端。否则,定义长报文消息格式,具体为长报文加密标志位+密文长度+报文序列号+总条数+结束标志+有效信息内容,采用分段发送的方式经北斗卫星发送到接收端,完成短报文消息加密过程。其中有效信息内容为加密的短报文消息M。
步骤204,接收端接收到加密的短报文消息M,对消息的每相邻的两个字符进行映射为一个十六进制数,并将十六进制数转换成原始字符。根据密文长度,对短报文消息通信内容中有效信息内容进行解析,得到密文EK{m}和消息验证码MAC。
步骤205,根据发送端的ID信息,通过索引方式查到UID’及对称密钥K。首先,计算出MAC’=SM3(m||UID’),比对MAC和MAC’。若一致,则使用对称密钥K解密密文m,得到短报文真实消息,完成短报文消息解密过程。
以上这些实施例应理解为仅用于说明本发明而不用于限制本发明的保护范围。在阅读了本发明的记载的内容之后,技术人员可以对本发明作各种改动或修改,这些等效变化和修饰同样落入本发明权利要求所限定的范围。
Claims (6)
1.一种基于SM4分组加密算法的北斗短报文加解密方法,其特征在于:
步骤1,发送端和接收端需分别通过离线的方式向可信密钥管理中心进行身份注册,可信密钥管理中心分别向发送端和接收端发放共享密钥K和完整性密钥UID;
步骤2,初始化SM4分组加密算法,发送端获取短报文消息明文m,明文m长度为128bit的整数倍时,通过SM4分组加密算法,采用分组加密的方式,每个分组大小为128bit,使用共享密钥K对m每个分组进行加密EK{m1~n},得到每个分组的密文后,将每个分组的密文依次进行拼接,得到短报文消息密文EK{m}=EK{m1}||EK{m2}||…||EK{mn},密文长度与明文长度一致;当明文m长度不足128bit时,进行补位操作,在消息后填充0,得到短报文消息密文EK{m},长度为128bit;
步骤3,初始化SM3密码杂凑算法,通过SM3密码杂凑算法对短报文消息密文EK{m}与完整性密钥UID进行哈希运算,得到消息验证码MAC=h(EK{m}||UID),长度固定为256bit;
步骤4,将短报文消息密文EK{m}与消息验证码MAC进行拼接,得到加密的短报文消息M=(EK{m}||MAC);
步骤5,发送端将加密的短报文消息M填充到短报文消息通信内容中,并通过北斗卫星发送到接收端;
步骤6,接收端接收到加密的短报文消息M,依据短报文消息通信内容和格式,获取短报文消息密文EK{m}长度,根据长度对接收到的加密的短报文消息M进行截断,得到短报文消息密文EK{m}及消息验证码MAC。获取发送端ID,通过ID查询到对应的UID’,并通过SM3密码杂凑算法计算得到MAC’=h(EK{m}||UID’),与MAC进行比对,若不一致,则不对消息进行处理,若一致,则对短报文消息密文EK{m}进行解密,得到短报文消息明文m,完成北斗短报文加解密过程。
2.根据权利要求1所述的一种基于SM4分组加密算法的北斗短报文加解密方法,其特征在于:每次进行注册时,共享密钥K和完整性密钥UID都不相同,保证发送端和接收端都具有唯一的共享密钥K和完整性密钥UID;共享密钥K长度固定为128bit,完整性密钥UID长度也固定为128bit,并保证共享密钥K和完整性密钥UID一一对应,且各不相同。
3.根据权利要求1所述的一种基于SM4分组加密算法的北斗短报文加解密方法,其特征在于:步骤2初始化SM4分组加密算法时将密钥和初始向量的缓冲区初始化为空,将所述共享密钥K作为加密密钥存入密钥缓冲区;若所述的共享密钥K不存在,则需要发送端重新向可信密钥管理中心注册。
4.根据权利要求1所述的一种基于SM4分组加密算法的北斗短报文加解密方法,其特征在于:步骤5所述的加密的短报文消息M需转换成十六进制数,并将十六进制数一一映射成一个字符,且每个字符均为数字及字母;将字符型的十六进制数依次填充到需要发送的短报文消息内容中,且每个字符都必须满足北斗短报文通信协议的要求,避免加密出现特殊字符超出北斗短报文通信协议的要求,导致通信内容无法正确发送和接收。
5.根据权利要求1所述的一种基于SM4分组加密算法的北斗短报文加解密方法,其特征在于:步骤5所述短报文消息通信内容还包括:短报文加密标志位,短报文消息密文EK{m}长度;当所述加密的短报文消息M大于北斗短报文通信一次所传输内容的最大长度时,所述短报文消息通信内容还包括:长报文加密标志位、长报文消息密文EK{m’}长度、报文序列号、总条数和结束标志。
6.根据权利要求1所述的一种基于SM4分组加密算法的北斗短报文加解密方法,其特征在于:步骤6所述接收到的加密的短报文消息M需要先将每相邻的两个字符合并为一个十六进制数,再对加密的短报文消息M进行解密。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111534988.6A CN114339632B (zh) | 2021-12-15 | 2021-12-15 | 一种基于sm4分组加密算法的北斗短报文加解密方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111534988.6A CN114339632B (zh) | 2021-12-15 | 2021-12-15 | 一种基于sm4分组加密算法的北斗短报文加解密方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN114339632A true CN114339632A (zh) | 2022-04-12 |
CN114339632B CN114339632B (zh) | 2023-07-07 |
Family
ID=81053320
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111534988.6A Active CN114339632B (zh) | 2021-12-15 | 2021-12-15 | 一种基于sm4分组加密算法的北斗短报文加解密方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN114339632B (zh) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116192365A (zh) * | 2023-01-18 | 2023-05-30 | 无锡航天江南数据系统科技有限公司 | 基于电文服务系统的PPP-B2b信号传输方法及系统 |
CN117098123A (zh) * | 2023-10-17 | 2023-11-21 | 西北大学 | 一种基于量子密钥的北斗短报文加密通信系统 |
CN117098120A (zh) * | 2023-10-19 | 2023-11-21 | 国网山西省电力公司晋城供电公司 | 一种北斗短报文数据加解密方法、设备及存储介质 |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103428204A (zh) * | 2013-07-29 | 2013-12-04 | 杭州华三通信技术有限公司 | 一种可抵御计时攻击的数据安全实现方法及设备 |
CN110798309A (zh) * | 2019-11-04 | 2020-02-14 | 国网思极神往位置服务(北京)有限公司 | 基于北斗短报文通讯传输的智能表接入系统 |
CN110995414A (zh) * | 2019-12-23 | 2020-04-10 | 中金金融认证中心有限公司 | 基于国密算法在tls1_3协议中建立通道的方法 |
CN111465006A (zh) * | 2020-04-08 | 2020-07-28 | 无锡职业技术学院 | 基于祖冲之算法的北斗短报文加解密方法及通信系统 |
CN111586076A (zh) * | 2020-05-26 | 2020-08-25 | 清华大学 | 基于混合密码的遥控遥测信息防篡改加解密方法和系统 |
-
2021
- 2021-12-15 CN CN202111534988.6A patent/CN114339632B/zh active Active
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN103428204A (zh) * | 2013-07-29 | 2013-12-04 | 杭州华三通信技术有限公司 | 一种可抵御计时攻击的数据安全实现方法及设备 |
CN110798309A (zh) * | 2019-11-04 | 2020-02-14 | 国网思极神往位置服务(北京)有限公司 | 基于北斗短报文通讯传输的智能表接入系统 |
CN110995414A (zh) * | 2019-12-23 | 2020-04-10 | 中金金融认证中心有限公司 | 基于国密算法在tls1_3协议中建立通道的方法 |
CN111465006A (zh) * | 2020-04-08 | 2020-07-28 | 无锡职业技术学院 | 基于祖冲之算法的北斗短报文加解密方法及通信系统 |
CN111586076A (zh) * | 2020-05-26 | 2020-08-25 | 清华大学 | 基于混合密码的遥控遥测信息防篡改加解密方法和系统 |
Non-Patent Citations (1)
Title |
---|
张焕国,唐明编著: "《密码学引论》", 30 November 2015 * |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN116192365A (zh) * | 2023-01-18 | 2023-05-30 | 无锡航天江南数据系统科技有限公司 | 基于电文服务系统的PPP-B2b信号传输方法及系统 |
CN116192365B (zh) * | 2023-01-18 | 2024-03-22 | 无锡航天江南数据系统科技有限公司 | 基于电文服务系统的PPP-B2b信号传输方法及系统 |
CN117098123A (zh) * | 2023-10-17 | 2023-11-21 | 西北大学 | 一种基于量子密钥的北斗短报文加密通信系统 |
CN117098123B (zh) * | 2023-10-17 | 2024-02-02 | 西北大学 | 一种基于量子密钥的北斗短报文加密通信系统 |
CN117098120A (zh) * | 2023-10-19 | 2023-11-21 | 国网山西省电力公司晋城供电公司 | 一种北斗短报文数据加解密方法、设备及存储介质 |
CN117098120B (zh) * | 2023-10-19 | 2024-01-02 | 国网山西省电力公司晋城供电公司 | 一种北斗短报文数据加解密方法、设备及存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CN114339632B (zh) | 2023-07-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110971415B (zh) | 一种天地一体化空间信息网络匿名接入认证方法及系统 | |
CN114339632B (zh) | 一种基于sm4分组加密算法的北斗短报文加解密方法 | |
CN111314056B (zh) | 基于身份加密体制的天地一体化网络匿名接入认证方法 | |
CN107070652B (zh) | 一种基于cp-abe的密文防篡改的车联网隐私保护方法及系统 | |
CN101340443B (zh) | 一种通信网络中会话密钥协商方法、系统和服务器 | |
US7023995B2 (en) | Secure location-based services system and method | |
CN100493077C (zh) | 增强的消息传递安全 | |
CN110519041B (zh) | 一种基于sm9标识加密的属性基加密方法 | |
CN112332900B (zh) | 一种低轨卫星通信网络快速切换认证方法 | |
JPH1127253A (ja) | 鍵回復システム、鍵回復装置、鍵回復プログラムを記憶した記憶媒体、および鍵回復方法 | |
CN105025019A (zh) | 一种数据安全分享方法 | |
CN101247356A (zh) | Dhcp消息传送的方法及系统 | |
CN114531680B (zh) | 基于量子密钥的轻量化ibc双向身份认证系统及方法 | |
CN110535626A (zh) | 基于身份的量子通信服务站保密通信方法和系统 | |
CN111698263B (zh) | 一种北斗卫星导航数据的传输方法和系统 | |
CN117676562B (zh) | 一种数据安全通信方法 | |
CN112989376A (zh) | 保护定位数据隐私的在线司乘匹配方法、系统、存储介质 | |
CN106453300A (zh) | 一种数据加解密方法、设备和数据传输系统 | |
CN111541652A (zh) | 一种用于提高秘密信息保管及传递安全性的系统 | |
CN116506174A (zh) | 适用于车联网支持用户隐藏身份的多服务器数据传输方法 | |
CN114423000A (zh) | 一种基于北斗短报文的身份认证方法 | |
Kanchan et al. | Re-encrypting secure and efficient routing in VANET groups using sharable clouds | |
CN112671729B (zh) | 面向车联网的匿名的抗密钥泄露的认证方法、系统及介质 | |
CN101188497A (zh) | 针对广播和组播业务向cdma1x用户安全传送第三方内容的方法 | |
Kamel et al. | Secure model for SMS exchange over GSM |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |