Lua功能模块之“加密”
作者:糖果
在Lua开发的世界中,有很多开源的模块,分布在一些网站(比如开普勒项目),github上,有的都已经配置好了,可以向python的pip工具一样,只不过在lua世界中使用luarocks安装工具快速的安装。
我们在开发的工作中,难免要对一些数据进行加密处理,而加密模块的使用有是就必不可少。
在lua官方的WIKI列表中就列出了,很多lua程序写的加密库,这写加密库有的是用纯lua写的,也有用lua调用C的程序实现加密。不过有些时候甄选这些库还是需要花一些时间精力,只是需要测试一下这是加密算是否是好用的
这是lua组织列出的一览列表。
http://lua-users.org/wiki/CryptographyStuff
说一下为什么要加密,我们面临的任务是什么!我们现在面临的任务是,要对一段字符串进行sha256算法加密。
我们从列表中选出了几个支持sha256加密的包,并说明一下这几个工具包。
1.SecureHashAlgorithm和SecureHashAlgorithmBW
这个工具包是支持sha256加密的,而且是纯lua方法的实现,问题是,这两个包分别依赖lua5.2和lua5.3。
而我们系统的运行环境是lua5.1,因为大部分的生产环境都是lua5.1,因为历史原因暂时没法改变。如果要把5.2的程序移植到5.1下运行,还需要移植一个lua5.2才独有的包,这是lua5.2升级之后才有的部件:bit32,而在lua5.3中又将这个部件去掉了,移植的动力不大,暂时不使用这个包。