local data = ... -- any data
local lumen = require(path)(config?)
local config = lumen.getconfig(true?)
-- serializes the config for transfer (if persistant)
-- else new config each call to lumen()
local enc = lumen.encrypt(data)
local dec = lumen.decrypt(enc)
print(lumen.compare(data, dec))
- hash types — (md5, sha256, poly1305, base64)
lumen.nonce(len?: number) -> buffer — generate a cryptographically secure random nonce
lumen.hash.?(data: buffer | table) -> string — compute a hash checksum
lumen.compare(buf1: buffer, buf2: buffer) -> boolean — constant-time buffer equality check
lumen.hex(buf: buffer) -> string — convert a buffer to a hex string
lumen.getconfig(serialized?: boolean) -> table|buffer — generate fresh random keys
lumen.encrypt(data: table|buffer) -> buffer — encrypt a table or buffer
lumen.decrypt(buf: buffer) -> table|buffer — decrypt a buffer
- ☺️ code examples on github repo