How can I add licensing to my software?

Discussion in 'Spigot Plugin Development' started by Emilius123, Mar 4, 2019.

  1. THE CONTEXT:
    Hello! I want to sell my plugins. But I want to add licensing that the customers can't just give the JAR to a friend or sell it cheaper than they got it from me.

    THE QUESTION:
    So I want to add licensing. Maybe with serial numbers. But how could I do that?
     
    • Agree Agree x 1
  2. Then you can add whatever you’re permitted to. Just ask your lawyer to draft a license agreement.
     
  3. Strahan

    Benefactor

    You also need to just accept the fact that you can't stop all pirates. A licensing system with serial numbers will stop only the casual, lazy person from pirating your stuff. If billion dollar software giants can't stop piracy with their licensing, the odds that you can make something more effective is pretty slim. Not to mention plugins decompile very easily, and obfuscation isn't the end-all-be-all of code protection some people think it is.

    Also, no offense, but judging from your resources you need to improve your Java skills before you try to sell plugins. At least if you want to sell them here, as premium plugins are checked for beginner mistakes.
     
  4. What for mistakes am I doing?
     
  5. @Emilius123, don't take this as an offence, but your plugins as too basic. There are already a lot of them, and some are better.
    (No offence, just the answer for your mistakes that you are doing)
    Please, I don't want to offend you, okay?
     
    • Agree Agree x 1
  6. If someone wants to crack it, they're gonna crack it regardless. I'll break down 2 methods I've seen used before.

    Getting around code obfuscation (using Stringer, ZKM etc.):

    https://javadeobfuscator.com/ - I've personally used this deobfuscator before and it's a beast at what it does. It's free and it makes obfuscated code perfectly readable.

    Bypassing plugin license servers:
    I remember I had a plugin that used a license server. The dev quit (the license server went down) and my client wanted me to fix it. I used a bytecode inspector and changed one of the variables to always return OK. That's extremely basic but there's also tools like Fiddler for advanced web debugging.

    One example is FeatherBoard (by Maximvdw) - it uses a custom license server + Stringer obfuscation. That didn't stop it from ending up on <redacted>. :confused:
     
    #8 Terrobility, Mar 5, 2019
    Last edited by a moderator: Mar 5, 2019
  7. Featherboard is just re-uploaded, there’s usually no attempt at de-obfuscating it or removing the licensing system. once maxim finds out about it, he disables the copy
     
  8. to put effort into trying to remove it so i have something to do or not to put effort into trying to remove it *thinking face*