Encrypting source / application licensing


#1

Hey folks-

If I wanted to distribute my code to users that would run the code on
their own machine, how could I go about encrypting the source to run on
a user’s machine?

PHP has the Zend Encoder among others, I believe. Is there anything
similar for Ruby?

Jake


#2

Jake J. wrote:

Hey folks-

If I wanted to distribute my code to users that would run the code on
their own machine, how could I go about encrypting the source to run on
a user’s machine?

PHP has the Zend Encoder among others, I believe. Is there anything
similar for Ruby?
Not yet. Expect that to happen soon after Ruby 2.0 gets released (I
don’t know of any specific projects, but there’s a market force and the
architecture should allow it). The current Ruby interpreter doesn’t do
a bytecode compilation, so there’s no intermediate to save.


#3

Alex Y. wrote:

Jake J. wrote:

Hey folks-

If I wanted to distribute my code to users that would run the code on
their own machine, how could I go about encrypting the source to run on
a user’s machine?

PHP has the Zend Encoder among others, I believe. Is there anything
similar for Ruby?
Not yet. Expect that to happen soon after Ruby 2.0 gets released (I
don’t know of any specific projects, but there’s a market force and the
architecture should allow it). The current Ruby interpreter doesn’t do
a bytecode compilation, so there’s no intermediate to save.

Great. Thanks. I remembered reading about a bytecode implementation
but I wasn’t entirely sure how that would fit in.

It seems that some folks have been able to reverse the Zend Encode
stuff. Is that a bytecode implementation or some other form of
decrypt-before-interpret thing?

Jake


#4

Not to make light of what you’re trying to do, but most commercial Java
applications (including the one that pays for my salary) are trival to
reverse engineer and no one worries about it much. The various
solutions
are limited and bring their own headaches.

Are you sure you need to hide your code?


#5

Jake J. wrote:

It seems that some folks have been able to reverse the Zend Encode
stuff. Is that a bytecode implementation or some other form of
decrypt-before-interpret thing?
Looks like bytecode to me, although I haven’t played with it myself.


#6

Larry W. wrote:

Not to make light of what you’re trying to do, but most commercial Java
applications (including the one that pays for my salary) are trival to
reverse engineer and no one worries about it much. The various
solutions
are limited and bring their own headaches.

Are you sure you need to hide your code?

Locks on a house, I guess. You get rid of a lot of folks just by having
some mild deterrant.

How does the Google Appliance protect their source? Or the Joyent
Connector?