MathGroup Archive 2009

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: protecting Mathematica notebooks/source code from piracy

  • To: mathgroup at smc.vnet.net
  • Subject: [mg103495] Re: protecting Mathematica notebooks/source code from piracy
  • From: David Reiss <dbreiss at gmail.com>
  • Date: Fri, 25 Sep 2009 05:56:51 -0400 (EDT)
  • References: <h9eqdt$d51$1@smc.vnet.net>

To really do this in a way that works requires a pretty baroque set of
things.  I have implemented some of it in creating password protection
for http://scientificarts.com/worklife.  I also have implemented as a
functionality in the package a means for password protecting
individual notebooks

But the sort answer is that there is no general way to do this both
completely and simply in Mathematica.  If one simply uses Encode, then
the user can still reverse engineer the material if they read the
material in with Get simply through executing

?? functionname

But this does not work if the given function has the Locked
attribute.   So a mix of using Locked and Encode can protect source
code.  Be aware though that a Locked function cannot have its options
reset globally through using SetOptions. (I consider this a design bug
and folks at WRI are aware of it.)

It is also worth mentioning that many or most of the techniques for
implementing a password protection scheme in Mathematica by using
Mathematica top level code can be circumvented in various ways.  So
view it as a lock on a door: if someone wants to get in they probably
will be able to.

Mathematica certainly is in need of a low level implementation for
safely and cryptographically strongly enabling the user to password
protect both individual notebooks and entire packages/applications.

--David


On Sep 23, 11:52 pm, stpatryck <stpatr... at gmail.com> wrote:
> Hello All,
>
> I tried searching this group's archives for ways of protecting
> Mathematica notebooks and source code from piracy and/or
> modification.  I didn't find anything, so I'm wondering if there are
> ways to do it.
>
> Any suggestions or advice would be appreciated.
>
> Thanks in advance.



  • Prev by Date: Re: Re: Precision of AiryAi[0.0]
  • Next by Date: Re: Offline use of Paclets
  • Previous by thread: Re: protecting Mathematica notebooks/source code from piracy
  • Next by thread: Re: protecting Mathematica notebooks/source code from piracy