LolzPB

base64

Jun 23rd, 2020
2,704
0
Never
11
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Lua 1.06 KB | None | 0 0
  1. local b='ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/' -- You will need this for encoding/decoding
  2. -- encoding
  3. function enc(data)
  4.     return ((data:gsub('.', function(x)
  5.         local r,b='',x:byte()
  6.         for i=8,1,-1 do r=r..(b%2^i-b%2^(i-1)>0 and '1' or '0') end
  7.         return r;
  8.     end)..'0000'):gsub('%d%d%d?%d?%d?%d?', function(x)
  9.         if (#x < 6) then return '' end
  10.         local c=0
  11.         for i=1,6 do c=c+(x:sub(i,i)=='1' and 2^(6-i) or 0) end
  12.         return b:sub(c+1,c+1)
  13.     end)..({ '', '==', '=' })[#data%3+1])
  14. end
  15.  
  16. -- decoding
  17. function dec(data)
  18.     data = string.gsub(data, '[^'..b..'=]', '')
  19.     return (data:gsub('.', function(x)
  20.         if (x == '=') then return '' end
  21.         local r,f='',(b:find(x)-1)
  22.         for i=6,1,-1 do r=r..(f%2^i-f%2^(i-1)>0 and '1' or '0') end
  23.         return r;
  24.     end):gsub('%d%d%d?%d?%d?%d?%d?%d?', function(x)
  25.         if (#x ~= 8) then return '' end
  26.         local c=0
  27.         for i=1,8 do c=c+(x:sub(i,i)=='1' and 2^(8-i) or 0) end
  28.             return string.char(c)
  29.     end))
  30. end
Advertisement
Comments
  • User was banned
  • User was banned
  • User was banned
  • User was banned
  • User was banned
  • User was banned
  • User was banned
  • User was banned
  • User was banned
  • User was banned
  • User was banned
Add Comment
Please, Sign In to add comment