"Siddhesh Kurade" <[EMAIL PROTECTED]> writes:

    Hi Christopher,
                        I have been using Jacl for quite a while now and its =
    really great.
     Right now I have Java classes prepared by us and which I want to make =
    it available for Tcl users. For this I have provided simple Tcl =
    procedures as interface in which I am manipulating the Java Objects and =
    giving simple output to the Tcl users. The idea is that Tcl users need =
    not know Java to use our product features. They can use them calling =
    simple Tcl procedures that we have provided through Jacl.
                        The problem is that my source code is open to all. =
    Does Jacl support some packaging utility in encrypted format like that =
    of .exe or .class files so that my source code cannot be seen by the =
    users ?? I am aware that TclPro provides such utility in some .tbc =
    format. Does Jacl support that ??  Please tell me if any such utilities =
    are available.
                        Basically I want to know whether .tcl files can be =
    converted into some other files in encrypted form and still can be used =
    with Jacl
    
    Awaiting your reply
    
    
    Siddhesh
---end--
Glad to hear that Jacl is of use to you.
I'm not the primary author of Jacl, but we use it to test our Java
code in Ptolemy II (http://ptolemy.eecs.berkeley.edu/ptolemyII)

Scriptics does not presently provide support for Jacl, but if you
offered to pay them, they might do it :-)

Jacl does not currently support bundling into a .exe file or a .class
file.  What we do is that we have a short shell script that runs
Jacl called ptjacl, and then we pass .tcl scripts to it.

The ptjacl script can be found at:
http://ptolemy.eecs.berkeley.edu/ptolemyII/ptII0.3/ptII0.3/bin/ptjacl

Note that our version of jacl uses one jar file, as opposed to
the public version, which has two jar files
The ptjacl jar file is at:
http://ptolemy.eecs.berkeley.edu/ptolemyII/ptII0.3/ptII0.3/lib/ptjacl.jar

I don't know much about the .tbc format, but I doubt if Jacl can 
use it since Jacl is 100% Java, and TclPro uses C.  Java Byte Codes
are not the same as Tcl Byte Codes.

Jacl is 100% Java, so you could try various Java Obfuscation hacks.
I believe that there are Java byte-code obfuscators, but I don't know
of any off hand.

A quick and dirty trick would be to write a Java class that takes an
encrypted Tcl file, unencrypts it and then evaluates it.  Obviously,
this system is not foolproof, since it would be possible to run a
debugger and look at the contents of the Tcl buffer in memory, but
it should stop most people.  You probably need not use strong
encryption here, you could just use a simple rot13 style hack.

Another alternative is to just ship the Tcl scripts and be done with
it. Most interface code does not contain serious intellectual property
information about algorithms.

Another idea would be to try to use serialization of the Java objects
but this would be non-trivial.

Basically, Jacl does not presently do what you want at this time, but
you could try to extend it.

-Christopher

----------------------------------------------------------------
The TclJava mailing list is sponsored by WebNet Technologies.
To subscribe:    send mail to [EMAIL PROTECTED]  
                 with the word SUBSCRIBE as the subject.
To unsubscribe:  send mail to [EMAIL PROTECTED] 
                 with the word UNSUBSCRIBE as the subject.
To send to the list, send email to '[EMAIL PROTECTED]'. 
A list archive is at: http://www.findmail.com/listsaver/tcldallas/

Reply via email to