Solved

encrypt my pl/sql

Posted on 2001-06-06
8
1,355 Views
Last Modified: 2008-02-26
I need to encrypt my pl/sql procedure which stored in oracle   ,and no one can retrive the source code  from the Dictionary Views.
What can I do?
thanks.
0
Comment
Question by:wangweiww
  • 4
  • 2
  • 2
8 Comments
 
LVL 9

Accepted Solution

by:
dbalaski earned 200 total points
ID: 6161085
Hi,

This is pretty easy to do with a supplied utility from Oracle -- Wrap Utility
Wrap Utility, a stand-alone programming utility that encrypts PL/SQL source code. You can use the Wrap Utility to deliver PL/SQL applications without exposing your source code.


You can read in more detail about it the Oracle Manual:
"PL/SQL User's Guide and Reference Release 8.1.6"
Part Number A77069-01
Appendix C:   Wrap Utility


A clip from the manual:

To run the Wrap Utility, enter the wrap command at your operating system prompt using the following syntax:
wrap iname=input_file [oname=output_file]

Leave no space around the equal signs because spaces delimit individual arguments.
The wrap command requires only one argument, which is

iname=input_file
where input_file is the name of the Wrap Utility input file. You need not specify the file extension because it defaults to sql. For example, the following commands are equivalent:
wrap iname=/mydir/myfile
wrap iname=/mydir/myfile.sql

-------------------------------------

Hope this answers the question and solves your problem,
sincerely
dBalaski
0
 
LVL 3

Expert Comment

by:sidcap
ID: 6161088
I have to wrap your code. Depending on the client version use are using you will have to execute wrap.exe or wrap80.exe.

That's exactly what you need.

Hope this helps, SIDCAP.
0
 
LVL 9

Expert Comment

by:dbalaski
ID: 6161092
BTW -- the Wrap utility is not only available in oracle 8i -- it is in oracle 7 as well.

dBalaski
0
 
LVL 3

Expert Comment

by:sidcap
ID: 6161095
sorry dbalaski; I have not notified about your answer.

Sorry once again, SIDCAP
0
PRTG Network Monitor: Intuitive Network Monitoring

Network Monitoring is essential to ensure that computer systems and network devices are running. Use PRTG to monitor LANs, servers, websites, applications and devices, bandwidth, virtual environments, remote systems, IoT, and many more. PRTG is easy to set up & use.

 
LVL 9

Expert Comment

by:dbalaski
ID: 6161101
its okay -- our entry times are close (12:34 to 12:34)
I guess i submitted a few seconds before you...

dBalaski
0
 

Author Comment

by:wangweiww
ID: 6171493
thanks dbalaski and sidcap,

   c:\tmp\t.sql has the following function:
   create or replace function f_test return varchar2
   is
   begin
     return '12345';
   end;

but
   wrap iname=c:\tmp\t.sql
   kgepop: no error frame to pop to for error 1801

why ?
thanks

 

   
0
 
LVL 9

Expert Comment

by:dbalaski
ID: 6172580
Hi,

From what I have read,  kgepop  is usually a memory error..

I just tried your code on my Sun E5000 under Oracle 8.1.6  -- worked fine:

$ cat testwrap.sql
create or replace function f_test return varchar2
is
begin
return '12345';
end;
$
$ wrap iname=testwrap.sql

PL/SQL Wrapper: Release 8.1.6.0.0 - Production on Sat Jun 09 23:36:13 2001
Copyright (c) Oracle Corporation 1993, 1994, 1995, 1996, 1997, 1998, 1999.  Alld
Processing testwrap.sql to testwrap.plb
$
$ cat testwrap.plb
create or replace function f_test wrapped
0
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
abcd
1
8
8106000
1
4
0
5
2 :e:
1FUNCTION:
1F_TEST:
1RETURN:
1VARCHAR2:
112345:
0

0
0
14
2
0 a0 1d 8d a0 b4 a0 2c
6a a0 6e 65 b7 a4 b1 11
68 4f 17 b5
14
2
0 3 7 10 c b 21 25
29 2d 31 36 3a 3c 40 42
4e 52 54 5d
14
2
0 :2 1 a 11 0 18 :3 1 8
:9 1
14
2
0 :4 1 0 :3 1 :3 4 :2 3 :6 1
5f
4
:2 0 8 1 :4 0
3 :3 0 3 :3 0
2 :a 0 10 1
:4 0 4 :3 0 5
6 0 10 3
7 :2 0 3 :3 0
5 :4 0 a :2 0
c 3 f :3 0
f 0 f e
c d :6 0 10
:2 0 3 7 f
12 :2 0 2 10
13 :8 0
5
4
:3 0 1 b
1
4
0
12
0
1
14
1
1
0 0 0 0 0 0 0 0
0 0 0 0 0 0 0 0
0 0 0 0
3 0 1
0

/
-------------------------------------


I see you are using NT,   check to see if there is WRAP23.exe and WRAP80.EXE
Try one of those ...  

dBalaski




0
 

Author Comment

by:wangweiww
ID: 6186316
thanks dbalaski
I think it the right way to encrypt my pl/sql.

But I still can not run wrap correctly.(error msg: kgepop: no error frame to pop to for error 1801)
I am using Oracle 8.1.5 for NT and can not find the WRAP23.exe and WRAP80.EXE .


 
0

Featured Post

Is Your Active Directory as Secure as You Think?

More than 75% of all records are compromised because of the loss or theft of a privileged credential. Experts have been exploring Active Directory infrastructure to identify key threats and establish best practices for keeping data safe. Attend this month’s webinar to learn more.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Suggested Solutions

Introduction A previously published article on Experts Exchange ("Joins in Oracle", http://www.experts-exchange.com/Database/Oracle/A_8249-Joins-in-Oracle.html) makes a statement about "Oracle proprietary" joins and mixes the join syntax with gen…
Configuring and using Oracle Database Gateway for ODBC Introduction First, a brief summary of what a Database Gateway is.  A Gateway is a set of driver agents and configurations that allow an Oracle database to communicate with other platforms…
This video explains at a high level with the mandatory Oracle Memory processes are as well as touching on some of the more common optional ones.
This video shows how to recover a database from a user managed backup

932 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

11 Experts available now in Live!

Get 1:1 Help Now