lua-resty-sm3
纯 Lua 实现的 SM3 哈希算法
$ opm get toruneko/lua-resty-sm3
名称
lua-resty-sm3 - 用于 LuaJIT 的 SM3 函数
状态
该库被认为已准备好用于生产环境。
构建状态: [!Travis](https://travis-ci.org/toruneko/lua-resty-sm3)
描述
此库需要使用包含 ngx_lua 模块 的 nginx 构建版本,以及 LuaJIT 2.0。
摘要
# nginx.conf:
lua_package_path "/path/to/lua-resty-sm3/lib/?.lua;;";
server {
location = /t {
content_by_lua_block {
local resty_sm3 = require "resty.sm3"
local sm3 = resty_sm3:new()
sm3:update("abc")
ngx.say(sm3:final())
sm3:reset()
sm3:update("abcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcdabcd")
ngx.say(sm3:final())
}
}
}
方法
要加载此库,
您需要在 ngx_lua 的 lua_package_path 指令中指定此库的路径。例如,
lua_package_path "/path/to/lua-resty-sm3/lib/?.lua;;";
。您可以使用
require
将库加载到一个本地 Lua 变量中。
local sm3 = require "resty.sm3"
new
语法: obj = sm3:new()
创建一个新的 sm3 对象实例。
-- creates a sm3 object
local resty_sm3 = require "resty.sm3"
local sm3 = resty_sm3:new()
update
语法: ok = sm3:update(str)
final
语法: hash = sm3:final()
reset
语法: sm3:reset()
作者
戴建豪 (toruneko) <toruneko@outlook.com>
版权和许可
此模块根据 MIT 许可证授权。
版权所有 (C) 2018,戴建豪 (toruneko) <toruneko@outlook.com>
保留所有权利。
在满足以下条件的情况下,允许以源代码和二进制形式重新分发和使用,无论是否修改。
源代码的再分发必须保留上述版权声明、此条件列表以及以下免责声明。
二进制形式的再分发必须在随分发提供的文档和/或其他材料中复制上述版权声明、此条件列表以及以下免责声明。
本软件由版权持有人和贡献者“按原样”提供,并且不提供任何明示或暗示的担保,包括但不限于适销性和特定用途适用性的暗示担保。在任何情况下,版权持有人或贡献者均不对任何直接的、间接的、偶然的、特殊的、惩戒性的或后果性的损害(包括但不限于替代商品或服务的采购;使用、数据或利润损失;或业务中断)负责,无论这些损害是如何造成的以及基于任何责任理论,无论是合同、严格责任还是侵权行为(包括疏忽或其他),即使已告知可能发生此类损害。
另请参阅
ngx_lua 模块:https://github.com/openresty/lua-nginx-module =back
POD 错误
注意!以上文档存在一些编码错误,如下所述:
- 大约在第 138 行
-
=over 未关闭 =back
作者
戴建豪 (toruneko)
许可证
mit
版本
-
toruneko/lua-resty-sm3 0.0.1纯 Lua 实现的 SM3 哈希算法 2018-08-31 02:18:38