Closed junfx closed 3 years ago
@guanzhi 国密局规定的sslvpn的协议是不是还没有实现?有没有这方面的计划? 另外,我说一点我自己的看法 其实对于国密的sslvpn 网关来说,主要的功能是实现ssl的建立,当然缺乏不了国密算法sm系列算法的支持,这只是一块块的砖,如果要建起可以居住的房子,还是需要像ssl国密协议的实现这样的钢筋、混凝土等组成一个整体。如果要让gmssl发扬光大,真正为广大用户和厂商使用,还是要实现这些基本的协议的,当然我是出于我们的产品要符合国密局的检测这方面考虑的。我是密码机公司的,这些sm系列的算法在我们的密码机里都已经实现了,我们现在急需要实现国密的ssl协议,而且国密的ssl协议和标准的ssl协议好像有一些差异,而且容易让人弄混。目前我的着手点是ECC_SM4_SM3这个密码套件的实现,这个相对来说简单些,感觉有点像RSA的秘钥交换,但和标准的RSA秘钥交换又多了一个Server_key_exchang交互,而且目前比较缺少的是这方面的例子。前段时间搞了一阵子,又忙别的去了,最近又来看看,发现有更新了,gmssl的网站也好了,拍手称快啊,哈哈
目前没有实现国密的SSL VPN协议。最近主要的工作在支持国密硬件和SM9,完成后会开始SSL VPN协议的开发。
@guanzhi 我想问一下,gmssl/crypto/sms4 是不是就是sm4算法?
@zhangshuang01 是的,记得首页介绍里有说明
@gujinqiangggs 好的,谢谢!
SMS4这个名字更早,很多文献都用的这个名字不是SM4,因此GmSSL用SMS4命名,后续可以考虑增加一些SM4的宏。
@guanzhi 您好, 最近去了解了下sm2密钥交换的部分, 以下几个结果想请您指点或探讨:
分组密码支持SM1和SM4,SM1算法是不公开的。 SSL VPN标准中要求双证书,GmSSL v1不支持SSL VPN,只支持IETF的TLS标准。
在<SSL VPN技术规范 3.1节> (2010年8月) 中提到:
本规范中使用的是签名证书或者具有签名能力的证书。
看来是我手上的规范太老了.
罗俊的一个PPT中提到了 (2014). 这个PPT中也说到了与tls1.1/1.2不兼容.
Marked as stale issue. Will be closed later if no activity for a while.
- SM2密钥交换在sm2.h中定义,在sm2_kap.c中实现,目前除了测试代码之外,没有其他模块调用该功能。
- SM2的双证书密钥交换和ECDH接口不是完全兼容。
- GmSSL密码库会尽可能支持所有公布的国密算法和标准,至于这些算法和标准怎么用,以及是否有人用,我们也不了解。但是SM2密钥交换这部分代码确实是在有用户询问之后才加入的。
没有找到该sm2_kap.c,请问有没有教程文档或者视频呢
关于sm2密钥交换, 我看了sm2_kap.c这个文件, 似乎在这里实现, 但是那几个函数除了在sm2test.c中调用外, GmSSL中其它地方似乎没用到. ECDH_compute_key等也没有被修改. 所以请教一下, sm2的密钥交换在哪里实现, 哪里被调用.