Protect source code upon delivery to customer

I recently found out that the company that will be installing one of our core products has previously tried to restructure the work of supplier suppliers for evil purposes. In this regard, I want to learn more about how to protect our work, and so far I have been thinking about the following:

1) Obviously, use an obfuscator. The question is which one.

2) Encrypt configuration files as much as possible (especially endpoint information).

3) Move as much logic as possible to the web service.

4) Use SSL to transfer data.

The project is written in C # / WPF and connects to a set of web services hosted in IIS 7. We pack our deliveries using WIX, is there anything to offer on WIX?

I understand that ultimately all binary files can be hacked and that as a small company, we should probably focus on writing code instead of protecting it. But these minor lease steps make it difficult. What else can be done? Does the community have more tips on this? Links to internal / external resources will be highly appreciated.

+7
source share
3 answers

Here are your options:

  • Do not give them a program, they are already abusing their power.
  • Ask them to enter into a license agreement in which:
    • They can reverse engineer the program or even see the source code within the limits defined by your legal team.
    • They can't do anything without inviting the world with legal pain
  • Release the code as open source. You would be surprised if the "forbidden fruit" is not banned, they may just get bored and leave it alone.
  • Transfer your own computing to your own servers, essentially making your program a thin client.
  • Reverse some of your tools. Entering the cold war.
  • Stock up on patents, and when you see your own code in the wild, the company will forget about violating your patent.
  • Pay the crowd to launch your "friends" out of town.
  • Send them a cupcake basket with the words "PlZ st0p wit the H4x"
  • Dress like a ghost of professional integrity, visit each of your employees and teach them lessons in ethics and morality.
  • Redeem a company, fire all employees.
+15
source

Whatever the agreement with @Chris.

Hire a lawyer and draw up the relevant license terms.

Each time, so often contact an abusive company and ask if they have something similar to your software for sale. In case they say yes, get a demo. If this bears any resemblance to yours, bring them into oblivion. One of the earliest steps in this type of lawsuit is discovery. At this point, you will find out if they copied your code or not.

Presto, the problem is resolved.

The point is the only real solution - to use the legal system.

+3
source

In fact, I think your 4 points cover what you can do (realistically) very well. The only thing I would like to add is the corresponding offer in your license.

If someone wants to steal, they will steal.

Edit: oh, RE Obfuscator, as far as I hate recommending Red Gate after their reflex treatment, their Smart Assembly is very good.

+2
source

All Articles