山东大学软件工程应用与实践——GMSSL开源库(六)——SM9密钥交换协议

山东大学软件工程应用与实践——GMSSL开源库(五)——SM9密钥的生成 2021SC@SDUSC 目录前言源文件中函数的分析SM9_hash1 *SM9_MASTER_KEY_extract_key*check if mastercheck hash1 and set hash1 md **if private**check schemeSM9_extract_public_key与SM9_extract_private_keySM9PrivateKey_get_public_key小结 前言 由前文可知,SM9算法的数字签名的生成与密钥的生成密不可分,在SM9_SignFin 阅读详情

2021SC@SDUSC

基本概念

1976年,Diffie和Hellman在其题为《密码学的新方向》的论文中首次给出了公钥密码学的定义,并提出了Diffie-Hellman密钥交换算法。该算法解决了对称密码体制中的密钥分发问题,使得通信双方可以通过公开信道安全地交换共享密钥。

使用SM9通信的双方通过对方的标识和自身的私钥,经过两次或者可选的三次信息传递过程,计算获取一个由双方共同决定的共享秘密密钥。该密钥可以作为对称密码算法的会话密钥,其中可选步骤用来实现密钥确认。
密钥交换协议执行前需给用户分配加密私钥。SM9密钥交换协议可抵抗中间入侵攻击。

应用场景:双方在线,密钥交换后,利用该会话密钥进行数据交换,会话结束后,会话密钥失效。

符号及辅助算法

在这里插入图片描述
在这里插入图片描述
密钥交换协议的符号与数字签名的符号相差不大,区别之处在于多添加了几个参数的定义:
在这里插入图片描述
在这里插入图片描述
其中,KDF()密码派生函数的具体内容如下:

商用密码应用与安全性评估要点笔记(SM9数字签名算法) 用户的公钥由用户标识和一组公开的数学参数计算得到,用户私钥则是由用户标识、一组公开的数学参数和一个域范围内的秘密值计算得到。(2)主密钥master key MK,密码分层结构中最顶层的密钥,这里是非对称密钥就包括主私钥(由KGC随机数生成,不公开)和主公钥(由主私钥结合系统参数生产,公开)。(6)用户加密密钥对,包括加密私钥和公钥,其中私钥由KGC产生并下发给用户,用于加密、解密和密钥协商。(5)用户签名密钥对,包括签名私钥和公钥,其中私钥由KGC产生并下发给用户,用于数字签名和验签。 阅读详情

相关推荐

山东大学软件工程应用与实践——GMSSL开源库(八)——SM9密钥封装机制与公钥加密算法

2021SC@SDUSC 文章目录概念符合及辅助算法密钥封装与公钥加密的算法流程密钥封装算法密钥解封算法密钥解封算法的正确性证明公钥加密算法解密算法小结 概念 密钥封装操作模式是NIST制定的最新的一类分组密码工作模式。密钥封装模式使用AES或三种DES作为底层加密算法。 密钥封装的目的是为通信双方安全地交换对称密钥,而通信双方事先已共享有一组称为密码加密密钥的对称密钥。 通常一个协议需要调用不同层次的密钥,其中低级密钥使用频率高,为了抵抗攻击需要频繁更换。而高级密钥使用频率低,受到密码攻击的威胁相对较少。

m0_51588039的博客 4081

GMSSL实现SM9密钥交换实战指南

SM9是一种基于身份的国密公钥密码体系,其密钥交换协议通过用户标识(ID)与密钥生成中心(KGC)协同完成共享密钥协商,无需传统X.509证书。原理上依赖椭圆曲线双线性对运算与SM3哈希派生,技术价值在于简化PKI管理、适配信创环境、支持轻量物联网终端。典型应用场景包括政务云API双向认证、金融终端安全接入及国产化ARM服务器部署。本文聚焦GMSSL开源库在真实工程中的落地实践,覆盖KGC初始化、ID编码规范、跨平台调试(如鲲鹏/麒麟OS)、内存安全加固及性能优化,直击SM9密钥交换协议在生产环境中最常遇到

weixin_33935636的博客 261

SM9 用户私钥在线分发技术

因此,IBC 可以作为PKI 的一个很好的替代,尤其是在具有海量连接的物联网应用环境。本方案遵循 SM9 密钥管理架构,基于现有 SM9私钥离线分发规范标准,在实现 RA 与 PKG 之间的安全防护的同时,增加了 User/Client 与 RA、User/Client 与 PKG 之间的安全防护设计,具体采用了双向身份认证、数据加密传输、数据完整性验证、数据合法性验证、时间戳防重放等安全防护技术,在User/Client、RA 和 PKG 三者之间构建完备的安全防护体系,有效保障用户私钥在线分发的安全。

罗伯特技术屋 1127

html2canvas 返回的toDataURL()数据为 data:,的解决方法

html2canvas 返回的toDataURL()数据为 data:,的解决方法 我在使用html2canvas的使用, 发现toDataURL() 返回的数据为data:, 而且将数据设置为img的src属性,图片也不能正常显示,我尝试了很多方法,也没有解决出来,经过我不断的百度+自己尝试,终于解决了这个问题。 代码: 这段代码是没有任何问题的,标准html2canvas的demod代码,但就是无法正常将图片previewImg 渲染出来,dataURL 我打印的结果为 data:, 错误的原因是,

java123_PB的博客 5016

直流并联电压源的下垂控制与模拟光伏板特性的方法与仿真

并联直流电源下垂控制方法,下垂特性可以让并联直流电源输出功率/电流自动均衡,直流电源输出特性模拟光伏板的输出特性,具有自动限制输出最大功率的功能

1189

手把手教你用STM32+LAN8720搭建以太网通信模块(含原理图)

本文详细介绍了如何使用STM32微控制器与LAN8720物理层芯片搭建以太网通信模块,涵盖硬件设计、软件配置及常见问题排查。重点讲解了LAN8720的低功耗设计、RMII接口简化布线等特性,以及STM32CubeMX配置和LwIP协议栈移植技巧,助力开发者快速实现稳定可靠的嵌入式网络通信。

CAT789的专栏 394

【学习笔记-QGIS】 QGIS从零快速上手

安装文章参考:https://zhuanlan.zhihu.com/p/370633306。

Xcong_Zhu的博客 1万+

永磁同步电机矢量控制——从三相静止坐标系到d-q坐标系的数学转换

本文深入解析了永磁同步电机矢量控制的核心——从三相静止坐标系到d-q旋转坐标系的数学转换。通过Clark变换和Park变换,将复杂的三相交流系统解耦为易于控制的直流量,从而实现对电机转矩和磁场的独立、精准控制。文章结合物理图像与工程实践,详细阐述了坐标变换的原理、公式推导及其在磁场定向控制(FOC)中的关键作用。

weixin_29294395的博客 111

选择的 Python 解释器无效,请尝试更改解释器以启用 IntelliSense、Lint 分析和调试等功能。请查看输出,详细了解解释器无效的原因。

摘要:在VS Code中配置Anaconda Python解释器时若出现"解释器无效"错误,可通过修改用户设置解决。具体步骤:1) 按Ctrl+Shift+P打开命令面板;2) 搜索并打开用户设置JSON文件;3) 添加conda路径配置项,示例格式为"python.condaPath": "D:\\Anaconda\\setup\\Scripts\\conda.exe";4) 同时启用环境激活选项"python.terminal.act

猿小白的博客 833

猫群优化算法(CSO)详解:从生物灵感到智能优化

猫群优化算法(CSO)是一种模拟猫科动物行为的群体智能优化算法。该算法基于猫的两种主要行为模式:搜寻状态(全局探索)和跟踪状态(局部开发)。CSO通过混合率(MR)动态调整两种模式的比例,实现探索与开发的平衡。算法核心包括搜寻模式的变异操作和跟踪模式的速度-位移模型,具有收敛性能好、全局搜索能力强等特点。相比传统优化算法,CSO在高维复杂问题中表现优异,已成功应用于函数优化、图像处理等多个领域。算法性能受混合率、变化域等参数影响,自适应参数策略可进一步提升优化效果。

qq_42212808的博客 609

【软考中级】多媒体应用设计师复习笔记第十章【free】

第10章法律法规与标准规范 行业标准 缩写的大写拼音 地方标准 DB加生代码 企业标准Q加斜线企业代号国际标准是国际标准化组织ISO和国际电工委员会IEC制定的标准 国家标准是由国务院标准化行政主管部门制定,全国范围内使用 ?强制性国家标准的代号为GB,推荐性国家标准的代号为GB/T。 ?软件开发规范GB8566-88属于强制性国家标准 在这里插入图片描述 行业标准代号由大写汉语拼音字母组成,加上斜线和T,组成推荐性行业标准,如XX/T。已经发布的行业代号有QJ(航天),SJ(电子

weixin_47120900的博客 636

最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版

Part-E1-SDIO-Specification-Ver4.00-Final-120220.pdf:最新的sdio 4.0 spec 协议标准 带书签 高清完整PDF版,包括SDIO 接口的外设,SDIO 接口官方协议等。

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

锂电池充电器电路设计 里面有电路

锂电池充电器电路设计 里面有电路 3.7V升压到5V电路设计。

廖雪峰Python教程[完整版]

廖雪峰的python教程整理的,已经排好版了,而且还是完整的,适合小白

上一篇: 山东大学软件工程应用与实践——GMSSL开源库(五)——SM9密钥的生成
下一篇: 山东大学软件工程应用与实践——GMSSL开源库(七)——SM9密钥交换的源代码分析
神说未
博客等级 码龄6年 48粉丝 28原创
评论 1
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值