未分類 4 11 月 2020 国密加密算法 SM4 国密加密算法 SM4 資深大佬 : dddddawn 4 有懂的朋友进来详细讲讲 SM4,现在是趋势了吗?之前没有了解和接触过,百度了一轮网上资料很少,求详细讲解资料和示例 大佬有話說 (20) 資深大佬 : YamchaL 只知道是中国版 AES,详细规范在国标系统有 主 資深大佬 : dddddawn @YamchaL 朋友来个链接呢?主要是加密出来和对方用加密机加密的结果不一致 資深大佬 : YamchaL http: / /openstd.samr.gov.cn/bzgk/gb/newGbInfo?hcno=7803DE42D3BC5E80B0C3E5D8E873D56A 資深大佬 : Allan0423 ZF 和企事业单位确实在推进密码国产化,版本新一点的 openssl 都支持 S-M2/3/4 了,可以用来对结果进行验证。 資深大佬 : Allan0423 ↑↑↑是 V2 逼我用字母的(投降 資深大佬 : borisz openssl enc -ciphers 可以看到支持 sm4 CBC/CFB/CTR/ECB/OFB, 两个结果不一样应该是 padding 不一样吧 資深大佬 : billlee 加密结果不一样是正常吧?都有随机 IV 的吧 主 資深大佬 : dddddawn @borisz ECB 和 CBC 什么区别呢?百度百科的代码感觉不太对呀 主 資深大佬 : dddddawn @YamchaL 打开不了 flash- – 主 資深大佬 : dddddawn @billlee 我觉得是对方给的 demo 算法和他们加密机算法估计不一致吧 主 資深大佬 : dddddawn @Allan0423 你用过没?百度百科的代码可以用吗 資深大佬 : jzmws 国密挺好用的! 至少是无感知的用 主 資深大佬 : dddddawn @jzmws 无感知的用,什么意思呢 資深大佬 : borisz @dddddawn 对方加密的内容, 你先用 openssl 解密一下, 看看能行不. 資深大佬 : borisz @dddddawn 抱歉,错了, 应该是你用 openssl, 用相同的 key, iv 再加密一次看看结果和你一样, 还是和对方一样. 主 資深大佬 : dddddawn @borisz 只提供了 key,未提供 iv (弱弱问句,iv 是啥)。目前是给我描述了算法,先 md5 加密,再对 md5 结果 sm4 加密最后得到 32 位签名,但是和请求体自带的签名不一致 資深大佬 : Allan0423 @dddddawn 龟龟,你在说啥啊?没给 IV 那可能是用的 ECB 模式,MD5 不是加密,是摘要,SM4 是加密算法,签名得用 SM2 。请求带的签名是需要私钥运算出来的,你没私钥怎么得到签名?看你的回复好像没有这方面的基础知识,这就不是 V 友三言两语能给你说明白的了。 主 資深大佬 : dddddawn @Allan0423 key 指的不是私钥吗?所以不懂 iv 指的是啥。是通过 sm4 对 md5 结果(请求内容生成 md5 摘要)加密生成的签名 資深大佬 : orangeTop 这个目前我们和政府的项目就必须使用 sm3 加密,但是都是调用第三方接口 資深大佬 : Allan0423 @dddddawn key 可以是私钥,也可以指对称加密算法的密钥,IV 是给对称加密算法的特定模式使用的。SM4 是对称加密算法,做不了签名。你说的“通过 sm4 对 md5 结果(请求内容生成 md5 摘要)加密生成的签名” 这是不可能的。