Sample code for 30+ languages & platforms
Lua

ARC4 PRNG (Pseudo Random Number Generator)

See more Encryption Examples

Uses the ARC4 stream encryption algorithm as a pseudo random number generator.

Chilkat Lua Downloads

Lua
local chilkat = require("chilkat")

-- This example requires the Chilkat API to have been previously unlocked.
-- See Global Unlock Sample for sample code.

local crypt = chilkat.Crypt2.new()

-- Set the encryption algorithm to ARC4:
crypt.crypt_algorithm = "arc4"

-- We want the encrypted output to be a hex-encoded string.
crypt.encoding_mode = "hex"

local key = "000102030405060708090A0B0C0D0E0F"
local data = "12345678"

-- Key length is 128 bits in this example.
crypt.key_length = 128
crypt:set_encoded_key(key, "hex")

-- Generate 16 "random" 8-byte blocks, encoded as hex strings.
-- This example will generate the identical output each time
-- it is run.
local cipherHex = ""
for i = 0, 15 do
    cipherHex = crypt:encrypt_string_enc(data)
    print(data)
    print(cipherHex)
    data = cipherHex
end