string|bool decodeString(string algorithm, string data [, table options = nil, function callback = nil])
Parámetros
| Nombre | Tipo | Descripción |
|---|---|---|
| algorithm | string | "tea", "aes128", "rsa", "base64", "base32" o "zlib". |
| data | string | El texto a decodificar. |
| options | table | Una tabla de opciones: key, iv (para aes128, lo que devolvió encodeString), variant o, para zlib, format (sin él, se detecta zlib o gzip).por defecto nil |
| callback | function | Si se da, el trabajo corre en segundo plano y la función recibe el resultado (o false) cuando termina.por defecto nil |
Retorno
El texto original. Con callback, true de inmediato. false si las opciones no son válidas o la operación falló.
Algoritmos
options es obligatorio para "tea", "aes128" y "rsa".
| Algoritmo | Opciones |
|---|---|
"tea" |
Clave en key; solo cuentan sus primeros 16 bytes. |
"aes128" |
AES-128 en modo CTR; key (16 bytes) e iv (el IV de 16 bytes devuelto por encodeString). |
"rsa" |
key contiene la clave privada para decodificar (par de la clave pública usada al codificar). |
"base64" |
variant = "URL" opcional para el alfabeto de URL. |
"base32" |
variant = "HEX" opcional para el alfabeto hexadecimal. |
"zlib" |
format opcional (sin él, zlib o gzip se detecta automáticamente). |
Ejemplo
encodeString("zlib", fileGetContents("map.json"), { compression = 6 }, function(packed)
if packed then
print("comprimido a " .. #packed .. " bytes")
end
end)