Global ObjectLicense and SecuritySingleton Global

Crypto

Digests (MD5, SHA), HMAC signatures, Base64/hex encoding, secure random values and constant-time comparison. Digests return hex strings; there is no encryption such as AES.

Documented for app version 1.0.51Updated:

Detailed Explanation

This section explains when to use the API, how to call it, and which structures it works best with in production flow.

How To Call It

Crypto is a singleton global table: call its functions with a dot (Crypto.<method>(...)).

When To Use It

In security and licensing flow, re-check the result at critical checkpoints instead of trusting a single early validation.

Parameters and Return

Crypto offers 18 methods; each method page lists its parameters and return value.

Best Combined With

When paired with License and Runtime/System checks, it gives you stronger premium, trial, and security decisions.

Example Usage

The snippet below is a starter pattern that can be applied directly in runtime flow.

local signature = Crypto.hmacSha256("shared-secret", "payload")
local ok = Crypto.constantTimeEquals(signature, signature)

Copyable Progressive Examples

From foundation to combined usage, each level is provided as a separate code block so you can copy the level you need and adapt it directly.

Foundation

Shows the shortest direct way to call the API.

Foundation
local signature = Crypto.hmacSha256("shared-secret", "payload")
local ok = Crypto.constantTimeEquals(signature, signature)

Simple

Wraps the base call with minimal flow control.

Simple
local signature = Crypto.hmacSha256("shared-secret", "payload")
local ok = Crypto.constantTimeEquals(signature, signature)

-- Continue with one focused method on the object.

Practical Flow

A practical pattern for real macros with pcall, logging, and guards.

Practical Flow
local signature = Crypto.hmacSha256("shared-secret", "payload")
local ok = Crypto.constantTimeEquals(signature, signature)
local note = "Crypto overview loaded"
print(note)

Detailed

This level packages the API into a reusable helper with error reporting.

Detailed
-- In security and licensing flow, re-check the result at critical checkpoints instead of trusting a single early validation.
local function run_crypto_step()
  local signature = Crypto.hmacSha256("shared-secret", "payload")
  local ok = Crypto.constantTimeEquals(signature, signature)
end

local ok, err = pcall(run_crypto_step)
if not ok then
  toast("Step failed")
  print(err)
end

Combined

Combines the API with related structures to form a more realistic workflow.

Combined
local signature = Crypto.hmacSha256("shared-secret", "payload")
local ok = Crypto.constantTimeEquals(signature, signature)
wait(200)
print("Combined with logging and flow control")