(19)国家知识产权局
(12)发明 专利申请
(10)申请公布号
(43)申请公布日
(21)申请 号 202210373959.4
(22)申请日 2022.04.11
(71)申请人 中国人民解 放军海军工程大 学
地址 430033 湖北省武汉市硚口区解 放大
道717号
(72)发明人 谢振杰 付伟 李良 何涛
张志红 周九星 刘金龙 涂航
(74)专利代理 机构 西安方诺专利代理事务所
(普通合伙) 61285
专利代理师 李思琼
(51)Int.Cl.
H04L 9/00(2022.01)
H04L 9/08(2006.01)
H04L 9/20(2006.01)
H04L 9/30(2006.01)H04L 9/32(2006.01)
H04L 9/40(2022.01)
(54)发明名称
一种基于国密算法的跳变密钥数字通信加
密系统和方法
(57)摘要
本发明公开了基于国密算法的跳变密钥数
字通信加密系统和方法, 针对传统密钥协商协议
计算效率偏低、 安全性不足, 通信全程使用单一
会话密钥的安全隐患, 提供任务授权、 身份认证、
会话密钥协商、 信息传输加密和时间戳保护等一
整套安全通信机制, 可有效防御未授权接入、 身
份冒充、 信道窃听、 数据篡改、 指令重放和内部攻
击等安全威胁。 本发明基于椭圆曲线密码, 安全
性和计算效率明显高于DH密钥协商协议和RSA公
钥密码算法; 引入数字签名和基于任务授权的轻
量级证书机制, 可抵御中间人攻击, 并减少对公
钥基础设施的依赖; 使用跳变密钥代 替单一会话
密钥, 显著提高攻击者破译密钥或分析密文统计
特征的难度; 全面采用国密算法, 提升安全自主
能力。
权利要求书3页 说明书9页 附图2页
CN 114915396 A
2022.08.16
CN 114915396 A
1.一种基于国密算法的跳变密钥数字通信加密系统, 其特征在于, 包括任务授权模块、
身份认证模块和数据传输模块, 所述任务授权模块以任务为基本单位, 为具备同一任务权
限的终端任务进 行授权, 其采用基于国密算法S M2数字签名实现授权, 授权成功后 将授权数
据与相应终端 进行绑定;
所述身份认证模块用于对任务执行过程需要通信的多个终端之间进行身份认证, 身份
认证成功后在终端之间建立可信任的连接;
所述数据传输模块用于已建立连接的终端之间进行消息加密 传输。
2.如权利要求1所述的一种基于国密算法的跳变密钥数字通信加密系统, 其特征在于,
所述任务授权模块包括任务对象创建单元、 公钥验证单元、 数字签名单元以及授权单元, 其
中任务对象创建单元用于任务中心检查 终端是否存在任务对象, 若没有任务对象则生成接
入密钥将任务对象和密钥存至任务列 表; 公钥验证单元用于任务中心检查终端的公钥合法
性; 数字签名单元用于任务中心使用签名私钥进行数字签名; 授权单元用于任务中心将授
权数据发给终端;
所述身份认证模块包括国密算法SM4加密 单元、 国密算法SM4解密单元、 协商响应单元、
其中国密算法S M4加密单元用于对发起方的信息进 行加密; 国密算法S M4解密单元用于接收
方对接收到的密文进行解密; 协商响应单元通过运行SM2密钥交换协议的响应协商算法用
于发送方和接收方交换密钥、 签名数据完成双方身份认证;
所述数据传输模块包括伪随机跳变密钥生成单元、 会话加密单元和会话解密单元, 其
中伪随机跳变密钥生成单元根据发送方和接收方中的种子密钥生成密钥列表和密钥 索引;
所述会话加密单元用于发送方通过密钥索引在密钥列表中查找相 应密钥作为当前消息的
会话密钥, 对当前消息进 行加密; 所述会话解密单元用于接收方循环读取密钥 索引, 并以密
钥列表中相应索引对应的密钥作为当前消息的会话密钥, 解密收到的密文。
3.一种基于国密算法的数据通信方法, 其特 征在于, 包括以下步骤:
步骤1: 任务中心对参与任务的终端A进行授权, 若授权成功则在任务中心创建任务对
象, 记录接入密钥和任务对象, 并且终端A中记录 接入密钥和证书;
步骤2: ID为IDA、 公钥为PA的发起方终端A和ID为IDB、 公钥为PB的响应方终端B都被授权
执行编号为task1的任务, A和B分别对 对方进行身份认证, 最终通过握 手建立连接;
步骤3: 终端A和终端B建立连接后, 以伪随机跳变的多个密钥在A和B之间进行加密数据
传输。
4.根据权利要求3所述的一种基于国密算法的数据通信方法, 其特征在于, 假设终端A
的ID为IDA, 公钥为PA, 任务编号 为task1, 步骤1所述的授权步骤 包括:
步骤101: 任务中心检查A的task1是否存在, 若不存在则为task1创建任务对象, 随机生
成接入密钥 key1, 并将任务对象和key1记录至任务列表; 步骤102: 任务中心检查A的公钥PA
是否合法, 若不 合法则授权失败, 若合法则进入步骤10 3;
步骤103: 任务中心使用签名私钥对由IDA、 PA和task1拼接的字节串进行数字签名, 得到
任务中心签名数据TC ‑SIGA;
步骤104: 任务中心将TC ‑SIGA和key1组成的授权数据AUTA发送给终端A; 步骤 105: A收到
授权数据AUTA后将AUTA拆分成任务中心 签名数据TC ‑SIGA和接入密钥key1, 根据IDA、 公钥PA、
任务编号task1和任务中心的公钥 PTC, 对TC‑SIGA进行验证, 若验证失败则接受授权失败, 若权 利 要 求 书 1/3 页
2
CN 114915396 A
2成功则转入步骤10 6;
步骤106: A将IDA、 PA和TC‑SIGA拼接为证书cer tA;
步骤107: A为task1创建任务对象, 记录key1和certA, 授权成功。
5.根据权利要求3所述的一种基于国密算法的数据通信方法, 其特征在于, 步骤2 的具
体操作步骤 包括:
步骤201: 发起方A随机生成SM2下的一对公私钥rA和RA, 并取出task1任务对象中的接入
密钥key1和证书certA, 将RA和certA拼接并以ke y1为密钥采用国密算法SM 4进行加密, 将得到
的密文发送给响应方B;
步骤202: 响应方B从task1任务对象中取出接入密钥key1'和证书certB, 以key1'对收到
的密文以国密算法SM4进行解密, 分离出RA和certA;
步骤203: 验证RA是否在SM2椭圆曲线上, 若不在则协商错误, 若在则继续验证certA, 若
验证成功则 运行SM2密钥交换协议的响应协商算法输出RB、 KB、 SB和S2; 将RB、 SB、 当前时间戳
TB和certB拼接成字节串S, 对字节串S签名并生成签名数据SIGB;
步骤204: 将S和SIGB拼接后以key1'为密钥进行加密, 将加密后的密文发送给A;
步骤205: 发送方A以key1对收到的密文进行解密, 分离得到RB、 SB、 B 的时间戳TB、 证书
certB和签名数据SIGB;
步骤206: 验证RB是否在SM2椭圆曲线上, 若在则继续验证certB, 若验证成功, 从certB取
出IDB和PB, 验证SIGB;
步骤207: 运行SM2密钥交换协议的发起方协商确认算法输出KA和SA, 完成A对B的认证,
创建通信对象并保存B的信息IDB、 PB和TB, 与B的种子密钥为KA;
步骤208: 将SA和当前时间戳TA拼接成字节串, 对该字节串签名生成签名数据SIGA; 将被
签名字节串和SIGA拼接后以key1为密钥加密, 将加密后的密文发送给B;
步骤209: B以key1'对收到的密文进行解密, 分离得到SA、 A的时间戳TA和签名数据SIGA,
以IDA和PA验证SIGA, 若验证成功则运行SM2密钥交换协议的响应方协商确认算法输出解密
成功或失败, 完成B对A的认证, 创建通信对象保存A的信息IDA、 PA和TA, 与A的种子密钥为KB。
6.根据权利要求5所述的一种基于国密算法的数据通信方法, 其特征在于, 步骤203中
所述的验证certA的步骤为: 以certA包含的IDA和PA、 以及B已知的task1和任务中心的公钥
PTC对certA中的任务中心签名数据TC ‑SIGA进行验证, 若验证失败则协商错误, 反之协商成
功。
7.根据权利要求6所述的一种基于国密算法的数据通信方法, 其特征在于, 步骤3中所
述的伪随机跳变的多个密钥生成方法为: 根据终端A和终端B的通信对象中的种子密钥, 分
别在A和B中使用SM2的密钥派生函数生成n+1个密钥, 其中的n个密钥构成密钥列表K, 另一
个密钥作为伪随机种子来 生成由c个[0,n ‑1]范围的整数组成的索引列表I。
8.根据权利要求7所述的一种基于国密算法的数据通信方法, 其特征在于, 步骤3的具
体操作步骤 包括:
步骤301: 消息发送方A读取当前时间戳, 将其拼接到原始消息尾部得到拼接后的字节
串, 循环读取I中的索引, 并以K中该索引对应的密钥作为当前消息的会话密钥;
步骤302: 基于国密算法SM4对拼接后的字节串进行对称加密, 并将I的读取位置前进一
个, 若已到末尾则回到第一个, 再将加密后的密文传输给消息 接收方;权 利 要 求 书 2/3 页
3
CN 114915396 A
3
专利 一种基于国密算法的跳变密钥数字通信加密系统和方法
文档预览
中文文档
15 页
50 下载
1000 浏览
0 评论
309 收藏
3.0分
温馨提示:本文档共15页,可预览 3 页,如浏览全部内容或当前文档出现乱码,可开通会员下载原始文档
本文档由 人生无常 于 2024-03-18 08:15:07上传分享