M MY Multiplayer: Wiki
Lado
Tipo

decodeString

Compartido

Decodifica o descifra un texto producido por encodeString.

string|bool decodeString(string algorithm, string data [, table options = nil, function callback = nil])

Parámetros

NombreTipoDescripción
algorithmstring"tea", "aes128", "rsa", "base64", "base32" o "zlib".
datastringEl texto a decodificar.
optionstableUna 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
callbackfunctionSi 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)

Ver también