System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及信息安全,尤其涉及一种抗量子攻击的国密ssl通信系统与方法。
技术介绍
1、随着量子计算技术的快速发展,传统的公钥密码系统,如rsa、diffie-hellman和椭圆曲线密码等,面临着巨大的安全威胁。这些传统密码系统在量子计算机的强大计算能力面前,预计会变得脆弱。现有的国密ssl通信技术采用了基于椭圆曲线密码技术的国密sm2算法,用于实现身份鉴别和密钥交换。然而,面对量子计算机的攻击,这些算法将不再具备足够的安全性。
2、抗量子密码算法(quantum-resistant cryptography)是一类能够抵抗量子计算机攻击的新一代密码算法,包括基于格、基于编码、基于多变量多项式等多种技术。目前,尽管已有相关研究提出在国密ssl客户端中增加抗量子算法以抵御量子计算机的攻击,但现有的传统国密ssl客户端由于各种原因,进行抗量子密码算法改造的成本和风险较高,难以在短期内快速实现这一转变。因此,当前尚缺乏成熟且广泛应用的抗量子密码算法方案。
3、在这种背景下,需要提出一种新的技术方案,能够在不完全替换现有国密ssl客户端的前提下,有效地集成抗量子密码算法,确保系统的安全性和兼容性,实现平滑的过渡和升级。
技术实现思路
1、本专利技术要解决的技术问题是:针对现有技术的上述缺陷,提供一种抗量子攻击的国密ssl通信系统与方法,在现有国密ssl通信系统中增加抗量子密码算法,实现混合传统密码算法和抗量子密码算法的安全通信系统和方法。
2、为实现
3、所述传统ssl客户端为不支持抗量子密码算法的国密ssl客户端;
4、所述混合ssl服务端同时具备传统国密密码技术和抗量子密码技术;
5、所述抗量子ssl客户端代理与所述传统ssl客户端部署在同一台设备或者同一个局域网中的不同设备上;
6、所述传统ssl客户端通过所述抗量子ssl客户端代理与所述混合ssl服务端进行通信;所述抗量子ssl客户端代理将所述传统ssl客户端发送的消息进行抗量子密码算法变换后再发送给所述混合ssl服务端,将所述混合ssl服务端发送的消息进行抗量子密码算法逆变换后再发送给所述传统ssl客户端;
7、所述传统ssl客户端、所述抗量子ssl客户端代理、所述混合ssl服务端三者进行消息交互,完成混合传统密码技术和抗量子密码技术的国密ssl握手过程。
8、优选的,所述抗量子ssl客户端代理支持同时与多个所述传统ssl客户端建立连接。
9、优选的,所述抗量子ssl客户端代理根据ip地址、端口号及会话id区分多个所述传统ssl客户端与所述混合ssl服务端建立的多个会话。
10、第二方面,本专利技术提供了一种抗量子攻击的国密ssl通信方法,所述方法基于上述抗量子攻击的国密ssl通信系统实现,所述方法包括以下步骤:
11、步骤s1,传统ssl客户端发送客户端hello消息给抗量子ssl客户端代理,所述hello消息包括第一客户端随机数clientrandom和密码算法套件列表cipher suites;
12、步骤s2,抗量子ssl客户端代理在客户端hello消息中附加混合抗量子密码算法套件,然后再将修改后的客户端hello消息发送给混合ssl服务端;
13、步骤s3,混合ssl服务端根据安全策略配置选择混合抗量子密码算法套件,构造服务端hello消息、证书消息、服务端混合密钥交换消息发送给抗量子ssl客户端代理;所述证书包括混合签名证书和混合加密证书,所述混合签名证书包括服务端传统签名算法公钥、服务端抗量子签名算法公钥,所述混合加密证书包括服务端传统加密算法公钥、服务端抗量子加密算法公钥;所述服务端混合密钥消息包括传统密钥交换参数tkex、传统密钥交换参数签名ts、抗量子密钥交换参数pkex和抗量子密钥交换参数签名ps;
14、步骤s4,抗量子ssl客户端代理将服务端hello消息中的混合抗量子密码算法套件替换为ssl客户端支持的传统密码算法套件;将所述抗量子密钥交换参数pkex和会话id缓存在本地;修改服务端混合密钥交换消息,去除所述抗量子密钥交换参数pkex和所述抗量子密钥交换参数签名ps,形成服务端传统密钥交换消息;然后将修改后的服务端hello消息、证书消息和服务端传统密钥交换消息发送给传统ssl客户端;
15、步骤s5,传统ssl客户端根据传统密钥交换算法生成预主密钥pms和传统客户端密钥交换参数ckex,根据传统客户端密钥交换参数ckex构造客户端密钥交换消息,并将所述客户端密钥交换消息发送给抗量子ssl客户端代理;所述传统客户端密钥交换参数ckex包括用于产生预主密钥pms的第二客户端随机数;
16、步骤s6,抗量子ssl客户端代理查找会话id对应的服务端抗量子密钥交换参数pkex和混合抗量子密码算法套件,对所述传统客户端密钥交换参数ckex进行抗量子加密,形成混合客户端密钥交换参数mixckex,然后将所述混合客户端密钥交换参数mixckex发送给混合ssl服务端;
17、步骤s7,混合ssl服务端解析客户端混合密钥交换消息mixckex,解密生成预主密钥pms;
18、步骤s8,混合ssl服务端和传统ssl客户端根据现有国密ssl规范各自使用预主密钥pms计算工作密钥并进行密文通信。
19、优选的,所述步骤s4之前还包括:
20、抗量子ssl客户端代理解析所述服务端混合密钥交换消息,验证所述抗量子密钥交换参数签名ps,如果验证失败,则中断握手协议。
21、优选的,所述步骤s5之前还包括:
22、传统ssl客户端解析所述服务端传统密钥交换消息,验证所述传统密钥交换参数签名ts,如果验证失败,则中断握手协议。
23、优选的,所述步骤s6中,所述对所述传统客户端密钥交换参数ckex进行抗量子加密,形成混合客户端密钥交换参数mixckex的具体方法为:
24、如果混合密码算法套件里的抗量子密码算法是公钥加密算法,则使用抗量子公钥加密算法加密所述传统客户端密钥交换参数ckex,输出密文eckex,生成混合客户端密钥交换参数mixckex=eckex;如果混合密码算法套件里的抗量子密码算法是抗量子密钥封装算法,则使用抗量子密钥封装算法和抗量子公钥生成共享密钥明文ss和密文ess,使用所述明文ss对称加密所述传统客户端密钥交换参数ckex,输出密文eckex,生成混合客户端密钥交换参数mixckex=ess|eckex。
25、优选的,所述步骤s7中,所述解密生成预主密钥pms的具体方法为:
26、如果混合密码算法套件里的抗量子密码算法是公钥加密算法,使用抗量子私钥解密eckex,输出传统客户端密钥交换参数本文档来自技高网...
【技术保护点】
1.一种抗量子攻击的国密SSL通信系统,其特征在于,所述系统包括传统SSL客户端、抗量子SSL客户端代理、混合SSL服务端;
2.根据权利要求1所述的抗量子攻击的国密SSL通信系统,其特征在于,所述抗量子SSL客户端代理支持同时与多个所述传统SSL客户端建立连接。
3.根据权利要求2所述的抗量子攻击的国密SSL通信系统,其特征在于,所述抗量子SSL客户端代理根据IP地址、端口号及会话ID区分多个所述传统SSL客户端与所述混合SSL服务端建立的多个会话。
4.一种抗量子攻击的国密SSL通信方法,其特征在于,应用于如权利要求1至3任意一项所述的抗量子攻击的国密SSL通信系统,所述方法包括以下步骤:
5.根据权利要求4所述的抗量子攻击的国密SSL通信方法,其特征在于,所述步骤S4之前还包括:
6.根据权利要求4所述的抗量子攻击的国密SSL通信方法,其特征在于,所述步骤S5之前还包括:
7.根据权利要求4所述的抗量子攻击的国密SSL通信方法,其特征在于,所述步骤S6中,所述对所述传统客户端密钥交换参数CKEX进行抗量
8.根据权利要求7所述的抗量子攻击的国密SSL通信方法,其特征在于,所述步骤S7中,所述解密生成预主密钥PMS的具体方法为:
...【技术特征摘要】
1.一种抗量子攻击的国密ssl通信系统,其特征在于,所述系统包括传统ssl客户端、抗量子ssl客户端代理、混合ssl服务端;
2.根据权利要求1所述的抗量子攻击的国密ssl通信系统,其特征在于,所述抗量子ssl客户端代理支持同时与多个所述传统ssl客户端建立连接。
3.根据权利要求2所述的抗量子攻击的国密ssl通信系统,其特征在于,所述抗量子ssl客户端代理根据ip地址、端口号及会话id区分多个所述传统ssl客户端与所述混合ssl服务端建立的多个会话。
4.一种抗量子攻击的国密ssl通信方法,其特征在于,应用于如权利要求1至3任意一项所述的抗量子攻击的国密...
【专利技术属性】
技术研发人员:刘义鹏,贺建楠,
申请(专利权)人:深圳市东进技术股份有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。