Scripting HelpersARCHIVE
A little piece of Roblox history. Preserved for everyone, one question at a time.Read about the archive →
✓ ANSWER ACCEPTED

Are Remote Functions secure?

This is kind of a noob question and I may be overthinking it but, are RemoteFunctions even secure?

I can't imagine a situation where I'd use a RemoteFunction over a RemoteEvent if I'm trying to validate something from the client.

Say I have this line of code in my local script

local canPurchase = remoteFunction:InvokeServer()

Then on the server script, I'd check if the player has enough money to purchase an item, and if they do, the function will return true, thus, making canPurchase = true.

Thing is, can't an exploiter just remove the entire InvokeServer() nonsense and change it to something like...

local canPurchase = true

Then the player would be able to purchase the item regardless of whether they have the money or not.

This is based on the assumption that exploiters can change anything on the local script which I've heard that they can.

3 comments

0

They aren't secure. The same can be said for remote events as exploiters can also send them! Security depends on how you use both of them, by obfuscation or sanity checks.

0

@radiant_Light203 They are secure, Exploiters can send them, yes, but that really doesn't mean anything, unless you mess up really bad on using RemoteEvents

0

My friend, we say the same thing from two different mouths. Security comes from how you use remotes, not their simple presence.

1 answer

✓ Accepted answer

Say I have this line of code in my local script view source

local canPurchase = remoteFunction:InvokeServer()

Then on the server script, I'd check if the player has enough money to purchase an item, and if they do, the function will return true, thus, making canPurchase = true.

Thing is, can't an exploiter just remove the entire InvokeServer() nonsense and change it to something like...

view source

local canPurchase = true

RemoteEvent is secured, the way you use them is not

Why would you check wether they can purchase or not on the client side, do it on the server side All you need from the client are Inputs, like pushing a key or clicking a button.

They can change their own script, but it won't have effect on other clients or the server, unless you got a RemoteEvent/RemoteFunction that enables it, intentional or not

1 comment

0

true

This discussion is preserved as it was. New answers, comments, and votes are closed.