参考文献:SM2椭圆曲线公钥密码算法-第三部分(秘钥协商协议)
一、概述
本部分规定了SM2椭圆曲线公钥密码算法的密钥交换协议,并给出了密钥交换与验证示例及相应的流程。本部分适用于商用密码 应用中的密钥交换,可满足通信双方经过两次或可选三次信息传递过程,计算获取一个由双方共同决定的共享秘密密钥(会话密钥)。同时,本部分还可为安全产品生产商提供产品和技术的标准定位以及标准化的参考,提高安全产品的可信性和互操作性。
二、术语和定义
1、密钥 key
确定密码参数运算的一个参数,它用于:
(a)加密和解密变换;
(b)同步产生共享秘钥;
(c)数字签名的生成和验证。
2、密钥交换 key exchange
在通信实体之间安全地建立一个共享秘钥的协商过程。
3、密钥协商:key agreement
多个用户之间建立一个共享秘密秘钥的过程,并且其中任何一个用户都不能预先确定该秘钥的值。
4、从A到B的密钥确认 key comfirmation from A to B
使用户B确信用户A拥有特定秘密秘钥的保证。
5、密钥派生函数 key derivation function
通过作用于共享秘密和双方都知道的其他参数,产生一个或多个共享秘密秘钥的函数。
6、杂凑函数 hash function
将一个比特串映射为一个固定长度比特串的函数,该函数满足如下性质:
(a)对于任意给定的输出,要找其对应的输入,在计算上是不可行的;
(b)对于任意给定的输入,要找到输出相同的另一个输入,在计算上是不可行的。
7、杂凑值 hash value
杂凑函数作用于一条消息时输出的比特串。
8、对称密码算法 symmetric cryptographic algrorithm
一种执行