19 lines
407 B
Lua
19 lines
407 B
Lua
|
local b64 = require("base64")
|
||
|
|
||
|
local function decode_base64url(base64)
|
||
|
base64 = base64:gsub("-", "+")
|
||
|
base64 = base64:gsub("_", "/")
|
||
|
return b64.decode(base64)
|
||
|
end
|
||
|
|
||
|
local function encode_base64url(plaintext)
|
||
|
local plain = b64.encode(plaintext)
|
||
|
plain = plain:gsub("/", "_")
|
||
|
return plain:gsub("%+", "-")
|
||
|
end
|
||
|
|
||
|
return {
|
||
|
decode_base64url = decode_base64url,
|
||
|
encode_base64url = encode_base64url,
|
||
|
}
|