moer 发表于 2022-8-4 17:04:55

封装“国密算法SM4”为活字格插件

封装“国密算法SM4”为活字格插件

刚开始使用开源的.net 代码进行封装,测试了几个库,随便测试就出错, 比如明文字符长一点就异常。

然后终于找到一个使用人数相对比较多的开源库, 自己加密,然后解密,很顺利。但是跟第三方对接的时候,对方密文发过来,我解出来是乱码,哪里错了呢?
可能对方错了,也可能我错了。
测试了几个在线sm4加密解密的网站,解出来都是乱码, 在线sm4加密解密工具靠谱吗?

我得依据一个标准来检验工具的正确性。。。。。

在github 一早就注意到:http://gmssl.org/   https://github.com/guanzhi/GmSSL
但人家是c语言写的,也没有提供c#的wrapper接口
所以最早就忽视这个3.3k starts的开源库。


不得以,下载GmSSL源代码进行编译, windows下编译也是一路坑。。。。。
花了一个下午进行编译,编译后就生成了可执行文件gmssl.exe,解密测试,解密成功。说明我之前用的.net 版本的算法有问题, 没有时间和精力去检查算法哪里错了。
最快的手段还是拿来主义,直接使用GmSSL里面的接口。
活字格插件是C#语言编写的。c#怎么调用c的方法呢?


。。。。。。。。。。。。。。。
省略好多字
终于“sm4解密”,“sm4加密”插件出现了。




小崽子 发表于 2022-8-4 18:29:00

大佬这个加密解密具体可以用到什么场景里面? 看上去挺厉害的,感谢无私分享!

moer 发表于 2022-8-4 18:37:43

小崽子 发表于 2022-8-4 18:29
大佬这个加密解密具体可以用到什么场景里面? 看上去挺厉害的,感谢无私分享!

说明你不需要。 当你需要的时候自然会用到它。

willning 发表于 2022-8-5 09:59:26

小崽子 发表于 2022-8-4 18:29
大佬这个加密解密具体可以用到什么场景里面? 看上去挺厉害的,感谢无私分享!

等到你需要做一些涉密应用,或者有分保要求的时候,就知道啦

桂花酒酿丸子 发表于 2022-8-5 10:10:19

这简直不要太棒。运用得好的话,可以让活字格开发人员对最终客户的收费方式又多了一种。

ngqj 发表于 2022-8-5 17:57:58

感谢黄总的鼎力支持!:D

小崽子 发表于 2022-8-5 22:28:19

willning 发表于 2022-8-5 09:59
等到你需要做一些涉密应用,或者有分保要求的时候,就知道啦

哦,这样子啊,那挺强大的,大神会开发,我还不会用:lol

恒德勤智 发表于 2024-8-26 15:53:36

什么加密总是报错呢?

moer 发表于 2024-8-26 20:29:01

恒德勤智 发表于 2024-8-26 15:53
什么加密总是报错呢?

s_txt的值不符合要求。你可以看看sm4的要求。
页: [1]
查看完整版本: 封装“国密算法SM4”为活字格插件