SerweryWłasny serwerDla twórcówForumFAQDokumentacjaBezpieczeństwo
Pobierz launcher
  1. Dokumentacja
  2. Funkcje wspólne
  3. encodeString

Funkcja

encodeString

Serwer i klientPozostałeIdentyczna z MTA:SA

Szyfruje, koduje albo kompresuje tekst. Działa na serwerze i u gracza. Algorytmy: tea (surowe bajty TEA, bez base64), aes128 (klucz dokładnie 16 znaków; zwraca też losowy iv, potrzebny do odszyfrowania), rsa (klucz publiczny z generateKeyPair), base64 (wariant url), base32 (alfabet Crypto++, wariant hex = RFC 4648 base32hex), zlib (format gzip, zlib albo raw, stopień 0-9, strategia). Przy base64, base32 i zlib tabela opcji może zostać pominięta. Z funkcją zwrotną wynik przychodzi do niej w następnej klatce, a funkcja zwraca true.

Składnia

string encodeString(string algorithm, string input [, table options, function callback])

Argumenty

algorithmstring
"tea", "aes128", "rsa", "base64", "base32" albo "zlib".
inputstring
Dane.
optionstable, opcjonalny
tea/aes128/rsa: { key = "..." }; base64: { variant = "url" }; base32: { variant = "hex" }; zlib: { format = "gzip"|"zlib"|"raw" albo windowBits, compression = 0-9, strategy = "default"|"filtered"|"huffman"|"rle"|"fixed" } (domyślnie gzip, 9).
callbackfunction, opcjonalny
Funkcja dostaje wynik (przy aes128 także iv).

Zwraca

Wynik (przy aes128 także iv) albo false i ostrzeżenie.

Przykład

local key = "0123456789abcdef"
local data, iv = encodeString("aes128", "tajne dane", { key = key })
local plain = decodeString("aes128", data, { key = key, iv = iv })

Zobacz też