在上一篇文章《写给开发人员的实用密码学 - 对称加密算法》中,介绍了现代密码学中非常重要的加密解密算法,国密标准中 SM4/SMS4 就是一种对称加密算法。本文将介绍密码库 libtomcrypt 库中增加 SM4 算法的一些关键点。
论名气,libtomcrypt 远远不及 OpenSSL、NSS、Bouncy Castle 等加密库,不过 libtomcrypt 也有一些优点:
-
代码采用 C 语言实现,可移植性好
-
模块化设计,易于裁剪,可以编译出很精简的库,比较适用于嵌入式设备、IoT设备
-
实现完备,支持目前几乎所有公开的加密算法
-
代码规模适中,没有使用过多的语法糖,代码直观易懂,比较容易上手
不过需要注意的是 libtomcrypt 并没有实现 SSL/TLS、SSH 等协议,仅仅是一个加密解密库。如果项目中需要 SSL/TLS 支持&