EncryptV1 is OPEN SOURCE and publicly available for everyone to use. This script
does require a little bit of scripting knowledge.
Use:
local encrypt = require(script.Parent.Modules.Packages:WaitForChild("encrypt"))
local decrypt = require(script.Parent.Modules.Packages:WaitForChild("decrypt"))
local data = "This is a encrypted string 1234"
local encrypted = encrypt(data)
print(encrypted)
local data2 = decrypt(encrypted)
print(data2)
Output:
Of4lgnWlgnW4ifONGxV2gpdKj3WuspVlIQgzLYiuZ3WtDA5oJnl4
This is a encrypted string 1234
EncryptV1 helps you encrypt your code from exploiters dumping/decompiling your game, getting
your strings, and for much more other uses…
I mean changing the functions to something like this
local code = "WhTRfpiVXLZcDrdwYBOeJGjaIgsFtz4kAHKQlMoNbCEnuSqyxvmPU1234567890"
local encypted = encrypt("hi", code)
local hi = decrypt(encrypted, code)
I’m not sure what happened, but it didn’t work. I tried to encrypt and decrypt two identical strings, but when I decrypted the strings, they were just backticks.
Code:
local Encrypt = require(game.ReplicatedStorage.Encrypt_V1__by_bakep.Wrapper) --// I wrote a simple wrapper and I changed the name to not include any spaces
local aa = Encrypt.Encrypt("aa")
local aa2 = Encrypt.Encrypt("aa")
print("\n", aa, "\n", aa2, "\n")
print("\n", Encrypt.Decrypt(aa), "\n", Encrypt.Decrypt(aa2), "\n") --// just prints backticks
Also, this is not very secure, someone just use this module to decrypt any data. To make it secure, you’re going to need to add a bit of randomness, but only true randomness, using math.random or Random.new() will not work, since you can just reverse the algorithms used for them, then decrypt the remaining string with this module.
Indeed, it may be crackable like that, but an exploiter will not know what to do with those strings. In V2 I will make it less complicating, but can you please send me the full script. WARNING: Make sure that 1234567890+/ is at the back of every code, delete all the numbers, the / and +, and put them behind.
I would also recommend using Shuffle Letters - Online Random Tools, to shuffle your cryptostrings and the letters should always be inputting in the shuffle-letters ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz
The CryptoStrings are supposed to be changed for 100% security, along with that you cant run encrypt/decrypt in a executor. In V2 I will update the settings so you can do…, much easier for encrypting/decrypting.
local code = "WhTRfpiVXLZcDrdwYBOeJGjaIgsFtz4kAHKQlMoNbCEnuSqyxvmPU1234567890"
local encypted = encrypt("hi", code)
local hi = decrypt(encrypted, code)
It does, you cant decompile a server script or any other script if you obfuscate the code so your cryptostring is hidden, so if you were too do this…
local code = "WhTRfpiVXLZcDrdwYBOeJGjaIgsFtz4kAHKQlMoNbCEnuSqyxvmPU1234567890+/" -- CHANGE YOUR CRYPTOSTRING!
local encypted = encrypt("hi", code)
local hi = decrypt(encrypted, code)
in that method which is what i will do in v1.19 , it is 100% secure because it is in serverscriptservice and it is a script, (which cannot be decompiled). Please look closer before commenting.
No, you can require the cryptostrings from the modulescript, modulescripts are not decodedable if using an executor so you can encode/decode things from localscripts and other sorts. The exploiter can dump strings, api’s, url’s, if you have any.
The client will still need to know the CryptoString if it wants to decode any data sent from the server, if you store it in a variable an exploiter can just run getupvalues() or getconstants() in their executor. They could even probably run a script that loops through the obfuscated localscripts environment and look for the decode function, hook it to get the CryptoString, and then re-use the decode function, passing in the CryptoString.
You can store your cryptostring without it being deobfuscated. In the next version that will release all of this will be addressed and more easier to understand, with steps to hide cryptostrings.