Cryptography

From GiderosMobile
The printable version is no longer supported and may have rendering errors. Please update your browser bookmarks and please use the default browser print function instead.

Supported platforms: Platform android.pngPlatform ios.pngPlatform mac.pngPlatform pc.pngPlatform html5.pngPlatform winrt.pngPlatform win32.png
Available since: Gideros 2016.04

Description

Cryptographic primitives.

Example

local key = "GiderosGideros11"
local iv = "GiderosRules2023"
local paddingType = 1


local function cryptCopy(src, dst)
	local srcf = io.open(src, "rb")
	local dstf = io.open(dst, "wb")
	local size = 2^13 -- good buffer size (8K)
	while true do
		local block = srcf:read(size)
		if not block then break end
		block = Cryptography.aesEncrypt(block,key,iv,paddingType)
		dstf:write(block)
	end
	srcf:close()
	dstf:close()
end

local function decryptCopy(src, dst)
	local srcf = io.open(src, "rb")
	local dstf = io.open(dst, "wb")
	local size = 2^13 + 16 -- good buffer size (8K + 16 for padding)
	while true do
		local block = srcf:read(size)
		if not block then break end
		block = Cryptography.aesDecrypt(block,key,iv,paddingType)
		dstf:write(block)
	end
	srcf:close()
	dstf:close()
end

cryptCopy ("|D|myfile.sqlite", "C:/tmp/myfile.crypt")
decryptCopy ("C:/tmp/myfile.crypt", "C:/tmp/myfile.sqlite")

Methods

Cryptography.aesDecrypt decrypts an AES string
Cryptography.aesEncrypt encrypts a string with AES
Cryptography.b64 Base64 encode some data
Cryptography.md5 computes the MD5 hash of the input string
Cryptography.pbkdf2 Password-Based Key Derivation Function 2
Cryptography.sha1 sha1 encode some data
Cryptography.unb64 Base64 decode a string

Events

Constants