Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- -- The ultimate Lua encryption tool for Roblox (Works 70% of the time)
- local Body = game:HttpGet('https://unpkg.com/emoji.json@13.1.0/emoji-compact.json')
- local Emojis = game.HttpService:JSONDecode(Body)
- local Numbers = {}
- local EmojiSecure = {}
- local EmojiCharacters = {}
- function EmojiSecure:GenerateNumber(From, To)
- local Number = 0
- repeat
- Number = math.random(From or 1, To or 1000)
- until not table.find(Numbers, Number)
- return Number
- end
- function EmojiSecure:ReverseTable(Table)
- local NewTable = {}
- for X, Y in pairs(Table) do
- NewTable[Y] = X
- end
- return NewTable
- end
- function EmojiSecure:SplitByEmoji(Text)
- local SplitEmojis = {}
- for Emoji in Text
- :gsub("(.)([\194-\244])", "%1\0%2")
- :gsub("%z(\240\159\143[\187-\191])", "%1")
- :gsub("%z(\239\184[\128-\143])", "%1")
- :gsub("%z(\226\128\141)%z", "%1")
- :gmatch("%Z+")
- do
- table.insert(SplitEmojis, Emoji)
- end
- return SplitEmojis
- end
- function EmojiSecure:Encode(Text)
- local Encoded = ''
- for Integer, Character in pairs(Text:split('')) do
- local Emoji = EmojiCharacters[Character:byte()]
- local EmojiByte = Emoji:gsub('.', function(Byte)
- return "\\" .. Byte:byte()
- end)
- Encoded ..= EmojiByte
- end
- return Encoded
- end
- function EmojiSecure:Decode(Text)
- local Decoded = ""
- local CharacterEmoji = EmojiSecure:ReverseTable(EmojiCharacters)
- for Integer, Emoji in pairs(EmojiSecure:SplitByEmoji(Text)) do
- if CharacterEmoji[Emoji] then
- Decoded ..= "\\" .. CharacterEmoji[Emoji]
- end
- end
- return loadstring("return '" .. Decoded .. "'")()
- end
- for Integer = 1, 255 do
- local Number = EmojiSecure:GenerateNumber(1, #Emojis)
- local Emoji = Emojis[Number]
- EmojiCharacters[Integer] = Emoji
- end
- return EmojiSecure
- --[[ Example usage
- local EmojiSecure = loadstring(game:HttpGet('https://pastebin.com/raw/qqCVppSE'))() -- Loading in the module
- local Encoded = EmojiSecure:Encode('print("Emoji Secure on top!")') -- Encoding it into emojis, then bytes
- local Decoded = EmojiSecure:Decode(loadstring("return '" .. Encoded .. "'")()) -- Decoding the correct value
- loadstring(Decoded)() -- Loading the decoded value
- ]]
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement