Source code protection

I am aware of the negatives of obfuscation and i am not a big fan of implementing it. There has to be some way to protect my code from theft, but thanks for your advice anyway it is something I do agree with.

2 Likes

Roblox does not allow require or get/setfenv in toolbox models. Obfuscation is also not allowed.

Selling your obfuscated code is just hideous and worthless, as doing this is dangerous, as a buyer may think the code has a IP logger(they exist), thus not buying the code. There is another major flaw, if the buyer made a vid about the product’s “harm”, the consumer may not use the software, so it’s just a Lose-Lose situation.

Instead, if you don’t want people to modify/re-use/use as comm. purpose(w/o attribution), you could choose the Creative Commons(CC) License (choose licence type here)

if you still want another license, go to this website

also you posted in the wrong topic

nobody is going to buy a project without the source code . are u kidding me

This thread is kinda turning aggressive. This person asked for support with this because they don’t know. We can’t respond like they know the customs of sharing assets.

1 Like

I am closing the thread, as I am no longer getting useful advice. I think the only option for me is to figure out how to work with licenses to somewhat protect my own work.

1 Like

Hey, I know you said you are closing this, but I thought I’d offer a solution anyway because people have no idea what they are talking about, obfuscation is a great thing & is used in many cases in a lot of apps.

I haven’t gotten too deep into this, but this app I just found seems like it works really well & should do exactly what you are looking for. Now, it is technically POSSIBLE someone edits your code but they would have to be extremely skilled & it would be relatively hard to do.

Here is the tool: https://luaobfuscator.com/

Hope, this helps! Good luck with your endeavors.

4 Likes

Just did a little bit more research, here is a really good post about obfuscation if you’d like to do it. The guide for Obfuscation

Thanks for the help, I have already tried a fair bit with obfuscating myself. I use GitHub - kosuke14/ByteLuaObfuscator: Simple Lua Bytecode-Method Obfuscator for Lua 5.1. (no loadstring when running obfuscateds). is working fine but if I implement obfuscation now then I will have to do a lot of reworking my logic as the project is already nearly finished, and obfuscating like complex files seem to break any obfuscator.

Speaking from experience here: Out in the software industry, the bottom line is you can’t. Companies like Google, Apple, and Microsoft would love it if you couldn’t disassemble the object code and translate it back into source code. Yeah, you can obfuscate your code and whatnot, encrypt it even and run it in a virtual machine. But the issue is that if the CPU can execute it, then so can someone who want’s to look at it.

The only true way of protecting your program is not not release it at all. But then what’s the point? There are secured hardware solutions like running the code on a single chip computer such as a microcontroller or digital signal processor, or what game console developers do (Sony PlayStation, Microsoft X-Box, Nintendo) which is to use custom silicon that’s basically a CPU with several MB of flash memory on it. If the program is small enough, and depending on what you are trying to do, you can run it from a smart card chip which is secure by design (This includes the chips on your credit/bank debit cards).

Other than that, the only thing that you can do is to register your code for copyright with the copyright, patent, and trademark office in your country of residence. If someone messes with your code (or steals it), you have the force of law on your side under the Berne Convention (WIPO International Copyright Treaty) to legally go after them, which people have done.

1 Like

Actually, people do it all the time. Windows, iOS, phone/tablet apps, etc… Any commercial software really. Even Roblox itself (client, studio, server) isn’t open source. Granted, some components are, like the LUA interpreter, but the rest? Nope.

Are you going to acquire a self-driving car startup in silicon valley for 1.2b dollars, without the raw source code?

Protecting your source code while sharing or selling your projects is indeed a common concern in the software development world. While it’s nearly impossible to achieve absolute protection, there are a few strategies you can consider to make it more difficult for others to access or modify your code:

  1. License and Legal Protection:
  • Use licenses: You mentioned licenses, and they can be a valuable tool. Utilize licenses like open-source licenses or commercial licenses to define how others can use your code. Make sure to include a license agreement that outlines what users can and cannot do with your code.
  • Copyright notices: Include clear copyright notices in your code and project documentation to indicate your ownership of the code.
  1. Obfuscation:
  • While you mentioned that obfuscation might be a bit challenging for your current project, it’s still an option for making the code harder to read. It won’t provide complete protection, but it can be a deterrent.
  1. Hosting:
  • Use a cloud-based service to host your project: Hosting your project on a cloud service can provide an extra layer of security by limiting access to your source code. Users will interact with the compiled/obfuscated version rather than the raw source code.
  1. Compiled Code:
  • Distribute compiled executables or bytecode instead of the raw source code. This makes it more difficult for others to modify the code.
  1. APIs and Services:
  • Keep sensitive logic on a server: If feasible, you could implement certain parts of your project as server-side logic accessed via APIs. This way, you can protect the critical parts of your application.
  1. Selective Sharing:
  • Consider sharing only specific parts of your code that are essential for your users while keeping the more sensitive parts hidden.
  1. Professional Assistance:
  • Consult with a legal professional: If your project is particularly valuable, it might be worth seeking legal advice on how to best protect your intellectual property.

It’s important to recognize that no method can guarantee absolute protection. Determined individuals can find ways to reverse-engineer code, regardless of the measures in place. However, by using a combination of these strategies, you can deter most casual users from accessing or modifying your code.

Ultimately, the choice you make will depend on the nature of your project, your target audience, and your level of comfort with sharing your work. Always ensure you’re in compliance with relevant laws and regulations when sharing or selling your software.

1 Like

Of course not. But who’s going to do that? I was talking about commercial software you you download or buy in a store. Console games fall into that category too. Of course, if you buy a software company, you get all their assets, including the source code.

right, so why would you buy (acquire) a game without the source code

Well done ChatGPT
You can also use many require with different users and decode your script with json. But EVERYTHING (here) can be traced back

You’re missing the point. As a consumer, you don’t get the source code of any software you buy or download unless it’s open source.

Besides, at this point, I think you are trolling.

YOU ARE NOT THE CONSUMER. you are buying the game. You are not buying the latest iphone 14, you are buying iOs, or apple Inc.

I see what you are saying, but your argument is completely out of scope here, and we are going off topic. The OP was looking for advise on protecting their own code from someone tampering with it or stealing it. Both of which are valid concerns within the software industry. With that being said, the OP is not going to sell the software itself, but a right to use license. When you buy software in the store, you are not buying the title to the software, but a license to use the software. You don’t own it like you own a car, TV, or refrigerator.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.