skynet 支持 sha256

📅 2026/7/1 18:32:04
skynet 支持 sha256
方案 替换 / 扩展 crypt C 库第三方补丁社区扩展库 skynet-lua-crypt 给 crypt.so 增加 sha256/hmac_sha256兼容 v1.2 所有稳定版替换 lualib-src/lua-crypt.c、新增 lsha2.c/lsha2.hMakefile 编译 crypt.so 时带上 sha2 源码调用 crypt.sha256(str)、crypt.hmac_sha256(key, data)测试代码-- https://lzltool.com/data-hmacsha256 -- 标准 sha256(abc) ba7816bf8f01cfea414140de5dae2223b00361a396177a9cb410ff61f20015ad -- 标准 hmac_sha256(abc,abc) 2f02e24ae2e1fe880399f27600afa88364e6062bf9bbe114b32fa8f23d03608a local crypt require skynet.crypt -- 二进制转16进制字符串 local function bin2hex(bin) local hex for i1,#bin do hex hex .. string.format(%02x, bin:byte(i)) end return hex end -- 计算 SHA256 print(bin2hex(crypt.sha256(abc))) -- 计算 HMAC-SHA256 local hmac crypt.hmac_sha256(abc, abc) print(bin2hex(hmac))完美符合仓库地址 http://gitmemories.com/CandyMi/skynet-lua-crypt配套原版讲解文章SegmentFault 完整改造教程https://segmentfault.com/a/1190000019647848文章完整讲解lsha2 源码来源与裁剪逻辑修改 Makefile 加入 lsha2.c 编译lua-crypt.c 新增 sha256、hmac_sha256 注册代码编译踩坑修复步骤注意可能skynet版本可能不一致覆盖后要自己对比修改有一些可以还原只修改必要的修改防止版本兼容问题。