Re: WRAP.EXE: are there alternatives?

From: H. Hultink <hhu_at_geenspam.nl>
Date: Fri, 26 Jan 2007 10:05:36 +0100
Message-ID: <Xns98C466AC9D1DBHenk_at_192.87.166.16>


DA Morgan <damorgan_at_psoug.org> wrote in news:1169746521.161795_at_bubbleator.drizzle.com:

> H. Hultink wrote:

>> Hi,
>> 
[Quoted] [Quoted] >> I am looking for a way to encrypt PL/SQL code.
>> I used Oracle WRAP.EXE (Oracle version 9.2.0.8.0), but I discovered
>> that it cannot encrypt the code when this contains for example:
>> 
>> JOIN
>> CASE
>> MERGE
>> 
>> Is there an alternative tool available anywhere?
>> Please respond to the group.
>> 
>> TIA,
>> Regards,
>> Henk Hultink
>> Stoas, Wageningen
>> http://www.stoas.nl

>
> Where did you get your information?
>
> Before:
> =========
> CREATE OR REPLACE PROCEDURE testproc IS
> x POSITIVE;
> BEGIN
> SELECT COUNT(*)
> INTO x
> FROM user_tables t JOIN user_indexes i
> ON t.table_name = i.table_name;
> END testproc;
> /
>
>
> After:
> =========
> CREATE OR REPLACE PROCEDURE testproc wrapped
> a000000
> b2
> abcd
> abcd
> abcd
> abcd
> abcd
> abcd
> abcd
> abcd
> abcd
> abcd
> abcd
> abcd
> abcd
> abcd
> abcd
> 7
> 9d ca
> FBXvKE+s/Yx4djWgOf8VqON7zzAwgy5Kf8sVfC82JnMYYjesKFSO9BAOhPqQAU/3mI7jqzY
> 6
> nUsOawWILi0+9g5UgjjtnbHBHlIdHwdAGgLwZF1VWhdvW47sFgSsKy3NP7GybT6jLLDYgid
> r NLR83MNwUxbZri2iJ1VSKFxwByADhXy2So8k0koUFU1U/MTkix2B3T6y
>
> /
>

When I use your testproc and try to wrap I get the following message:

PSU(103,1,6,23):Encountered the symbol "JOIN" when expecting one of the following:

   , ; for group having intersect minus order start union where    connect

I discovered that 6, 23 refers to line and position, and found out that in all my testcases there was either JOIN, MERGE, CASE and some other keywords.
[Quoted] When I use Ian M's solution it wraps OK. Output looks quite different from yours. Maybe depending on which platform Oracle runs on? In my case: MS Windows Server 2003 EE sp1.

Regards,
Henk Hultink Received on Fri Jan 26 2007 - 10:05:36 CET

Original text of this message