Es gibt eine Vielzahl von Verschleierungswerkzeugen, die den Quellcode schwer verständlich machen und dennoch die gleiche Funktionalität bieten. [Ich mache eine davon; siehe meine bio].
Sie können auf einem Entwicklungsstandort im ursprünglichen Klartextformat Ihrer Quelle arbeiten. Sie können den Klartext verschleiern, um die geschützte Version zu erstellen, die dann bereitgestellt wird. Das bedeutet, dass Personen mit uneingeschränktem Zugriff auf den bereitgestellten Server nur den verschleierten Text sehen, was den Code sehr schwer zu verstehen macht.
Natürlich sollten Sie die verschleierte Version an Ihrem Entwicklungsstandort testen, bevor Sie sie bereitstellen, um sicherzustellen, dass der Obfuscator nichts beschädigt hat (oder es ist wahrscheinlicher, dass Sie den Obfuscator falsch konfiguriert haben).
Es ist nicht ideal; entschlossene Gegner können mit genügend Aufwand Ihren Code wahrscheinlich umbauen. Normalerweise reicht es aus, um sie zu entmutigen, und das ist alles, was Sie brauchen.
In Bezug auf Schlüsseler : Das ist eine sehr schlechte Idee, weil sie die Logik enthalten, den Quellcode zu entschlüsseln. Wenn Sie also verschlüsselte Versionen Ihres Codes bereitstellen, kann Ihr Gegner den Entschlüsseler verwenden, den Sie auch angeben müssen, um den Klartext Ihres Programms ziemlich trivial zu erreichen.