Jump to content

12 posts in this topic

Posted

ok basically im writing java programs, but i want it so no one can read or ever read the code ..... how do i do this ?

Share this post


Link to post
Share on other sites

Posted

Well, Java is rather easy to decompile, so if you rely that much on lack of easy code extraction... You're basically screwed with Java.

Afaik at least.
I could be wrong.

[i]Glassed Silver:mac[/i]

Share this post


Link to post
Share on other sites

Posted

Java compiles to bytecode which can be rather easily converted back into readable source code with a free tool [url="http://java.decompiler.free.fr/"]like this[/url]. Java isn't meant for keeping your source code secure and even if you use C++ someone sufficiently dedicated will manage to reverse-engineer your code if they want to. I'm not trying to be offensive, but if you have to ask this question you probably aren't writing anything that would be worth someone's time to try to steal anyway at the moment. Just write your program, practice and don't worry about people decompiling your code because anything you do can only make it slightly harder for them, not stop them.

Share this post


Link to post
Share on other sites

Posted

[quote name='omnicoder' timestamp='1353425939' post='595336202']
Java compiles to bytecode which can be rather easily converted back into readable source code with a free tool [url="http://java.decompiler.free.fr/"]like this[/url]. Java isn't meant for keeping your source code secure and even if you use C++ someone sufficiently dedicated will manage to reverse-engineer your code if they want to. I'm not trying to be offensive, but if you have to ask this question you probably aren't writing anything that would be worth someone's time to try to steal anyway at the moment. Just write your program, practice and don't worry about people decompiling your code because anything you do can only make it slightly harder for them, not stop them.
[/quote]

I do not take you comment offensively but I am making encryption programs and I am simply exploring methods to ensure no reverse engineering of the encrypted data can happen (or happen with extreme ease)

Share this post


Link to post
Share on other sites

Posted

Scramble Java with C++. It's what Facebook does. Take a look at their source and you'll be completely lost! :p

Share this post


Link to post
Share on other sites

Posted

Could look into an obfuscator. Not 100% foolproof(if somebody wants to decompile your code they will, there are no magic bullets for software protection) but certainly makes it a bit tougher.
1 person likes this

Share this post


Link to post
Share on other sites

Posted

[quote name='SPEhosting' timestamp='1353426886' post='595336276']
I do not take you comment offensively but I am making encryption programs and I am simply exploring methods to ensure no reverse engineering of the encrypted data can happen (or happen with extreme ease)
[/quote]
Pure Java doesn't seem like a too great idea for me here.

[i]Glassed Silver:mac[/i]

Share this post


Link to post
Share on other sites

Posted

[quote name='SPEhosting' timestamp='1353426886' post='595336276']
I do not take you comment offensively but I am making encryption programs and I am simply exploring methods to ensure no reverse engineering of the encrypted data can happen (or happen with extreme ease)
[/quote]A good encryption method is hard to break even if the attacker knows exactly how it works. Obfuscating your source code will NOT improve the strength of the encryption it performs. Everyone knows how AES works, for instance, yet no one can break it. The program TrueCrypt is open-source yet it is widely used to secure sensitive data and is considered secure.

Security comes not from obfuscation of algorithms but from the time it would take an attacker to break the encryption.
3 people like this

Share this post


Link to post
Share on other sites

Posted

[quote name='Dr_Asik' timestamp='1353433018' post='595336640']
A good encryption method is hard to break even if the attacker knows exactly how it works. Obfuscating your source code will NOT improve the strength of the encryption it performs. Everyone knows how AES works, for instance, yet no one can break it. The program TrueCrypt is open-source yet it is widely used to secure sensitive data and is considered secure.
[/quote]

Exactly, encryption should be provably difficult to calculate the reverse of some function. Don't rely on security through obscurity, use logic and proofs!

Share this post


Link to post
Share on other sites

Posted

There is no such thing.
You can make it harder yes, if you want to completely stop people from knowing how your program works well then the best and only way I can see to do that is release your program in a non-working state.
If a computer can read and execute it, so can a human (with some effort/tools/hassle)

Share this post


Link to post
Share on other sites

Posted

[quote name='SPEhosting' timestamp='1353426886' post='595336276']
I do not take you comment offensively but I am making encryption programs and I am simply exploring methods to ensure no reverse engineering of the encrypted data can happen (or happen with extreme ease)
[/quote]

[quote name='Dr_Asik' timestamp='1353433018' post='595336640']
A good encryption method is hard to break even if the attacker knows exactly how it works. Obfuscating your source code will NOT improve the strength of the encryption it performs. Everyone knows how AES works, for instance, yet no one can break it. The program TrueCrypt is open-source yet it is widely used to secure sensitive data and is considered secure.

Security comes not from obfuscation of algorithms but from the time it would take an attacker to break the encryption.
[/quote]
This!

OP, forget it, code obfuscation is not about protecting data, it's about making it harder for other programmers to copy your code. As Asik said above, just simply encrypt your data, and for f-sake don't create your own encryption algorithm, use something standard.

This thread is pointless, lets return conversation to your [url="http://www.neowin.net/forum/topic/1120844-help-with-des-and-aes/"]other thread[/url] or make a new one on the lines of 'help me design a secure chat client'.

Share this post


Link to post
Share on other sites

Posted

This thread is useful because I was wondering the same thing!

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0

  • Recently Browsing   0 members

    No registered users viewing this page.