On Mon, 2010-02-08 at 23:13 +0000, Richard Quadling wrote:

> On 8 February 2010 19:32, Brian Dunning <br...@briandunning.com> wrote:
> > Hey all -
> >
> > I'm selling a custom PHP solution to FileMaker users. It uses FileMaker's 
> > PHP API, so everyone who has FileMaker Server is already set up to use it, 
> > but very few of them have any knowledge of how to set up a server or do 
> > anything PHP related. But I do want to add some level of code obfuscation 
> > to prevent them from making simple changes to my code that allow them to 
> > exceed the privileges they've purchased.
> >
> > I've looked at custom code encryption services like Ioncube and phpCipher, 
> > but in my estimation, deploying the needed server-side code for these is 
> > going to be beyond the capabilities of a large segment of my customers. I 
> > would rather have a few customers cheat me than offer a product that most 
> > customers are unable to figure out how to run.
> >
> > So I was thinking of doing something like base64_encoding the crucial chunk 
> > of my code (maybe 20 lines worth) and using 
> > eval(base64_decode($that_content)) to run it. I figure that will scare away 
> > most of the customers who might be able to edit my code. Can anyone suggest 
> > something that goes one better?
> >
> > - Brian
> > --
> > PHP General Mailing List (http://www.php.net/)
> > To unsubscribe, visit: http://www.php.net/unsub.php
> >
> >
> For simple obfuscation, then maybe making a PHAR app may be of use here.
> http://docs.php.net/phar
> -- 
> -----
> Richard Quadling
> "Standing on the shoulders of some very clever giants!"
> EE : http://www.experts-exchange.com/M_248814.html
> EE4Free : http://www.experts-exchange.com/becomeAnExpert.jsp
> Zend Certified Engineer : http://zend.com/zce.php?c=ZEND002498&r=213474731
> ZOPA : http://uk.zopa.com/member/RQuadling

You could move some of the code to a binary package compiled from your
PHP script. This would limit who could use your system, for example, if
you compiled it for Windows then non-Windows users couldn't use it
unless you also compiled some binaries for them too. Of course,
requiring FileMaker does limit your audience too I believe, but that's
another topic.

I've seen this practice of binaries used before, and it seems to work
well. There are countless pieces of software out there that can create
installable programs, which will aid you immensely. You just have to put
one of those together and people can easily install your software with
just a few clicks.

The other route is to use remote scripts. So they would install a base
system on their own servers, but scripts crucial to the system are
accessed remotely. Doing this will mean you have to make sure your
script is watertight from a security point of view though, and ensure
you encrypt traffic going between any servers.

Lastly, you could offer some sort of hosted solution. This may not be
suitable I guess from what you've described of your system, but if it
is, you can then deem exactly what goes on.


Reply via email to