coding
Smail_的gravatar头像
Smail_2019-10-29 11:35:28
openresty des3加密脱坑基地

分享2种openresty des3加密的代码,节省大家脱坑的时间:
1.based on lua-resty-nettle
local pkcs7 = require "resty.nettle.padding.pkcs7"
local base64 = require "resty.nettle.base64"
local des = require "resty.nettle.des"
local cipher= des.new("密钥")
local encrypted = cipher:encrypt(pkcs7.pad('要加密的文本', 8))
ngx.print(base64.encode(encrypted))
2.based on lua-lockbox
local Array = require("lockbox.util.array")
local Stream = require("lockbox.util.stream")
local ECBMode = require("lockbox.cipher.mode.ecb")
local PKCS7Padding = require("lockbox.padding.pkcs7")
local DESCipher = require("lockbox.cipher.des3")
local Base64 = require("lockbox.util.base64")
local cipher = ECBMode.Cipher().setKey(Array.fromString("密钥")).setBlockCipher(DESCipher).setPadding(PKCS7Padding)
local res = cipher.init().update(Stream.fromArray(Array.fromString(""))).update(Stream.fromArray(Array.fromString('要加密的文本'))).finish().asBytes()
local out = Base64.fromArray(res)
ngx.print(out)
推荐第1种,性能还可以,lua-lockbox需要修改lockbox.padding.pkcs7中的一行代码local paddingCount = blockSize - byteCount % blockSize;


打赏

分享到:

最近浏览
youwuzuichen LV611月11日
月亮星星星星
hhuangh LV411月8日
月亮
406971727 LV1611月5日
太阳
q85071744111月1日
暂无贡献等级
nanjer LV211月1日
星星星星
珍惜拥有 LV511月1日
月亮星星
Smail_ LV1910月31日
太阳星星星星星星
苜蓿123456 LV810月31日
月亮月亮
浙江螃蟹 LV710月31日
月亮星星星星星星
java-北京-菜鸟 LV1310月30日
月亮月亮月亮星星
最代码广告位
顶部客服微信二维码底部
>扫描二维码关注最代码为好友扫描二维码关注最代码为好友