Crypto Module
Import using: use crypto
crypto.sha256(text)
Returns SHA-256 hash as 64-character lowercase hex digest.
use crypto
print(crypto.sha256("hello"))
# 2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824
crypto.base64Encode(text) / crypto.base64Decode(encoded)
Encode or decode Base64 (RFC 4648).
use crypto
let encoded = crypto.base64Encode("Hello World")
print(encoded) # SGVsbG8gV29ybGQ=
let decoded = crypto.base64Decode(encoded)
print(decoded) # Hello World
crypto.aesEncrypt(data, key, iv) / crypto.aesDecrypt(data, key, iv)
AES-256 encrypt and decrypt. Key must be 32 bytes, IV must be 16 bytes.
use crypto
let key = crypto.sha256("my-password")
let iv = bytes.bytesToHex(bytes.alloc(16))
let encrypted = crypto.aesEncrypt("secret data", key, iv)
print(encrypted)
let decrypted = crypto.aesDecrypt(encrypted, key, iv)
print(decrypted) # secret data