Difference between revisions of "DecodeString"

From Multi Theft Auto: Wiki
Jump to navigation Jump to search
Line 17: Line 17:
===Options for each algorithm===
===Options for each algorithm===
* ''tea'' ([https://en.wikipedia.org/wiki/Tiny_Encryption_Algorithm Tiny Encryption Algorithm])
* ''tea'' ([https://en.wikipedia.org/wiki/Tiny_Encryption_Algorithm Tiny Encryption Algorithm])
** ''key'': A key to decode the input with.
** '''key''': A key to decode the input with.
* ''aes128'' ([https://en.wikipedia.org/wiki/Tiny_Encryption_Algorithm Tiny Encryption Algorithm])
** '''key''': A key to decode the input with.
** '''iv''': The initialization vector that was generated by [https://wiki.multitheftauto.com/wiki/EncodeString encodeString] with the aes128 algorithm.

===Optional Arguments===
===Optional Arguments===

Revision as of 18:22, 26 July 2021

This function decodes an encoded string using the specified algorithm. The counterpart of this function is encodeString.


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

Required Arguments

  • algorithm: The algorithm to use.
  • input: The input to decode.
  • options: A table with options and other neccessary data for the algorithm, as detailed below.

Options for each algorithm

Optional Arguments

  • callback: providing a callback will run this function asynchronously, the arguments to the callback are the same as the returned values below.


Returns the decoded string if successful, false otherwise. If a callback was provided, the decoded string is argument to the callback.


Adds an /decode command in which you can provide an algorithm, key and data to decode.

Click to collapse [-]
    function(player, _, algorithm, key, ...)
        if algorithm and key then
            local text = table.concat({...}, " ")
            if type(text) == "string" and text ~= "" then
                local decoded = decodeString(algorithm, text, { key = key })
                if decoded then
                    outputChatBox("The result of " .. algorithm .. " decoding is: " .. decoded, player)
                    outputChatBox("Failed to decode. Make sure that all arguments are valid.", player, 255, 0, 0)
                outputChatBox("Please specify text in the command.", player, 255, 0, 0)
            outputChatBox("Invalid algorithm and/or key.", player, 255, 0, 0)

See Also