Visit Our UNIX and Linux User Community

compile a c program in a encrypted way

Thread Tools Search this Thread
Top Forums UNIX for Advanced & Expert Users compile a c program in a encrypted way
# 1  
Old 11-23-2010
compile a c program in a encrypted way

Hi Guys,

I wonder I had have a look to the cc compile options but I could be missing one but basically I'm compliling a c program where I will storing a command to connect to a database and also userid and password. The issue is that after the module is generated using a command like strings I can see the the user and password in plain text. I wonder if anyone know if there is a option on the c compiler so I can encrypt the c module so the users or whoever will be granted to execute this module they don't get to see the user/password at all. I will be giving then execute access only so they shouldn't be able to view the file but want to make it extra secure if possible. thanks.
# 2  
Old 11-23-2010
The answer is: don't hard code passwords.

One workaround is to encrypt the password into a file, then decrypt it at runtime. With a 600 permission the encrypted file is not a complete sitting duck for users on your system to play with. This also has some security issues, but is a lot better than just putting a password into a C source file. The best solution is to get the password interactively at run time.
# 3  
Old 11-23-2010
Originally Posted by arizah
I will be giving then execute access only so they shouldn't be able to view the file but want to make it extra secure if possible. thanks.
if someone can execute the program they can read it. eg: debugger. don't hardcode a password as Jim suggested.
# 4  
Old 11-23-2010
Hi Guys,

thanks. So I should be looking at makekey , keylogin and other commands to make this more robust. thanks again.
# 5  
Old 11-23-2010
You may hardcode a password as long as it is not plain text. But doing so may offer a little advantage only - if ever - compared to the flexibility you gain having the password encrypted in a file.

# 6  
Old 11-23-2010
Doesn't matter how you do it - if they can run the program, they can get the password using something like strace or truss.

Unless you make the process setuid or setgid, which opens up a whole new set of problems.
# 7  
Old 11-24-2010
I can see the disavantage of having the password in plain text but haven't heard something really useful/mininful for someone who has come across to the same situation. It would be good to hear from someone to have been in similar situation and how they got around it. thanks.

Previous Thread | Next Thread
Test Your Knowledge in Computers #972
Difficulty: Easy
The Linux kernel is written in assembly language.
True or False?

10 More Discussions You Might Find Interesting

1. UNIX for Advanced & Expert Users

java compile and run program help

What is the trick to get a java program to run and compile? I can't even get a basic skeleton to run and compile. What packages do I need? I figured the java-gcj and gcc-java packages was enough. Do I need any other packages? I thought I had to do this and it would work but its not. javac... (1 Reply)
Discussion started by: cokedude
1 Replies

2. Programming

Not able to compile C program on z/OS (USS)

Hi, I having an issue while compiling a C program in USS (z/OS) machine. I was able to create objest files (.o) from source (.c) files but when I try to create a binary file from the object files I am getting the below error. $ cc util.o sock.o app.o -lnsl -o ptf FSUM3067 The archive... (7 Replies)
Discussion started by: madhu84
7 Replies

3. Programming

Can someone compile and run a program on AIX 6.1 please?

Hi, I have a program which collects performance data from AIX. It works fine on older releases (< 5.3) but I fail to get data from /proc. I would really appreciate it if someone could compile (using ANSI compat C compiler), run the program (for 30-40 minutes) on AIX 6.1 and send me the... (2 Replies)
Discussion started by: StuBob
2 Replies

4. Solaris

How do I compile a 64-bit program on SPARC??

Hi, wcslen(), strlen() returns size_t. On 64-bit platform i want to use int like str length is 10. int len = wcslen(str); On 64-bit what should I need to do if i wants the length in int. Because getting error as "Conversion of 64 bit type value to "int" causes truncation". if i... (17 Replies)
Discussion started by: amit_27
17 Replies

5. Programming

compile a c program

I am trying to compile a c program on AIX 5.3L 64-bit unix. I have used this program in the past and it works. Does anybody know what this error means? /usr/local/bin> gcc get_epoch_secs.c get_epoch_secs gcc: get_epoch_secs: No such file or directory get_epoch_secs.c: In function... (8 Replies)
Discussion started by: djehresmann
8 Replies

6. Programming

Compile and Run C Program on Solaris

Hello Guys, I am using Solaris Developer Express Edition 9/07, I am a beginner. Please tell me how to compile and execute a C program. Please give me your answers clearly, for the compilers cc,c89,c99. I not getting the answer anywhere. Please....... reply to me. Advance thanks......... (0 Replies)
Discussion started by: selva_ss
0 Replies

7. BSD

How to compile a c program in freeBSD

Hi , I have freeBSD installed. I need to compile a c program which has embedded informix sql statement in it. Can you please help me to to do the same. I need to know what I should I do to make BSD compatable to compile the c program ? Thanks in advance Jisha (3 Replies)
Discussion started by: jisha
3 Replies

8. Programming

how to compile a program statically

how can i do static compilation in cc and -lldap i have system defined and user defined header file. Can any one suggest any site where from i can get some information about static and dynamic compilation. Thankx (1 Reply)
Discussion started by: bhakti
1 Replies

9. Programming

How to compile a c program by using gcc

Hi all, Yeasterday I try to compile c program by using cygwin. I just find an errors the fist one is concerinig about the end of the line. To summit my Assignment which is the day after tommorow I have to compile my c program by using just gcc. If any one know what do I have to... (5 Replies)
Discussion started by: Bell
5 Replies

10. Programming

how to compile a program

how do i go about compiling a simple hello world script in mandrake linux? this is something i have had no luck in finding on the main site, please help? thank you (2 Replies)
Discussion started by: CmpKillr
2 Replies

Featured Tech Videos