954,525 Members — Technology Publication meets Social Media
Username:
Password:
Lost login information?
Have something to say? Contribute New Article Reply to this Article

Encryption Algorithm Idea.

Okay, I was thinking about making an encryption algorithm, now the thing with most algorithms is that they follow specific steps. Well, I was thinking, what if you made an algorithm that generated random characters (the kind you see on your keyboard, excluding characters that could crash the program), and each character followed a few steps. And the only way to decrypt the program would be to get the string of characters and reverse the steps. Now if someone would try to manually decrypt it without the code they would really have to bust there balls. They would have determine the steps of each character that had been used. This would be a big project (for me at least) and I think I could do it with my current knowledge. Each character of the encryption code would correspond to a single letter, the code would repeat itself as many times as needed.

Would this work? Or do most of you consider this to be a failed attempt.

AutoPython
Junior Poster
138 posts since Sep 2009
Reputation Points: 14
Solved Threads: 18
 

How are you yourself going to decrypt this top secret message?

vegaseat
DaniWeb's Hypocrite
Moderator
5,989 posts since Oct 2004
Reputation Points: 1,345
Solved Threads: 1,417
 

First random by function is not random...no matter what they call the function it is predictable...

Second you really should read up on this field "encryption", its big and diverse I doubt you came up with a new idea..

I really hate to busting bubbles but the truth is encryption is a very complex art that usually requires extensive training in mathematics and/or computer science(Master or Phd)

gerard4143
Nearly a Posting Maven
2,272 posts since Jan 2008
Reputation Points: 512
Solved Threads: 387
 

I'd like to see you try to implement one of the existing encryption algos, much less to coming up with your own.

Thought so.

scru
Posting Virtuoso
1,629 posts since Feb 2007
Reputation Points: 975
Solved Threads: 140
 

Encryption does not have to be so complex and mathematical and what not. I can easily conceive that this would be considered a small encryption by many standards. This is not meant to stop white hat's by no means whatsoever, this is just a rather simple idea to keep the average person to read a personal message. No offense taken :). As for Vegaseats message, I won't need to decrypt the message if I have the encryption code. Another thing I would like to add, is that encryption is not necessarily defined as to how complex it is, but as to what it does.

AutoPython
Junior Poster
138 posts since Sep 2009
Reputation Points: 14
Solved Threads: 18
 

I would also like to mention that you all don't have to be so snobby... You act like I just offended you all.

AutoPython
Junior Poster
138 posts since Sep 2009
Reputation Points: 14
Solved Threads: 18
 

Sorry didn't mean to come off as uppity maybe you should check some of the open source encryption libraries that are available....G4143

gerard4143
Nearly a Posting Maven
2,272 posts since Jan 2008
Reputation Points: 512
Solved Threads: 387
 

What kind of steps are you talking about.
Do the steps only apply to the current character?
If yes, you just made a substitution encryption and that is easy to crack. Just count the character frequencys and compare with known counts for certain languages.
If you use the previous characters in the steps to take it will be much harder, something like the Enigma machine.

djidjadji
Light Poster
28 posts since Aug 2009
Reputation Points: 38
Solved Threads: 18
 

To clear up a few things... If I put the python interpreter on a USB drive with the functions and program and all, and run the program from the USB it won't be able to trace it unless the USB drive is inserted. Thinking about it, the original idea would be easy to crack as seeing it is very repetitive.

1. The program generates a random string of symbols, letters, digits etc. that is 1/2 the size of the string or message or other various things.

2. The program interprets each character as an algorithm step, and then reverses the characters and interprets that.

3. The program will run through the string, and apply the code to each character.

AutoPython
Junior Poster
138 posts since Sep 2009
Reputation Points: 14
Solved Threads: 18
 

It could be useful to visit the pycrypto page.

Gribouillis
Posting Maven
Moderator
2,786 posts since Jul 2008
Reputation Points: 1,044
Solved Threads: 691
 

Random generation IS very predictable, not to mention a brute force could probably crack that in about 5min. Cryptography is really intense, and your not really using an algo, more like a formula. Not too mention most encryption methods use randomly generated keys, and TrueCrypt for example uses your mouse movement to generate a random key(which is a good it). So your idea, its not gonna work, if you want to try it i can garuntee that if you give me the source code and something that you encrypted with it i can reverse engineer and crack the encryption in about 2 min.

ov3rcl0ck
Junior Poster
113 posts since Sep 2009
Reputation Points: 35
Solved Threads: 22
 
Encryption does not have to be so complex and mathematical and what not. I can easily conceive that this would be considered a small encryption by many standards. This is not meant to stop white hat's by no means whatsoever, this is just a rather simple idea to keep the average person to read a personal message. No offense taken :). As for Vegaseats message, I won't need to decrypt the message if I have the encryption code. Another thing I would like to add, is that encryption is not necessarily defined as to how complex it is, but as to what it does.

Encryption complexity does mater, because your encryption can be solved with a bruteforce in under 5 min, what i could do is create a for loop that loops up to whatever number and inputs that into your algo, have it do a regex to find anything that could be english, once thats found i have the message, cracked with a simple 15 line scripts. Its almost pointless to make it, but i won't deny that it is a OK project to start your adventure down the road of cryptography. Personally my first experience with cryptography was making a MD5 hash cracker, I'd recommend that you try something like that.

ov3rcl0ck
Junior Poster
113 posts since Sep 2009
Reputation Points: 35
Solved Threads: 22
 

*Sigh* I don't know if you can't read, or you just skipped some posts, but this isn't supposed to be really complex. I don't know how fast brute force is, but IMO 60 to the power of the amount of characters in the message is a lot of combinations. But another thing that I don't know you understand, is that most people won't have the source code, because it would be on a USB (oh duh!, of course....) If I wanted to do an encryption, giving the source code would be like giving the code to the vault. The final result would just be a lonely string sitting in a text file. You can't expect to have the engine running and the source code.

AutoPython
Junior Poster
138 posts since Sep 2009
Reputation Points: 14
Solved Threads: 18
 
*Sigh* I don't know if you can't read, or you just skipped some posts, but this isn't supposed to be really complex. I don't know how fast brute force is, but IMO 60 to the power of the amount of characters in the message is a lot of combinations. But another thing that I don't know you understand, is that most people won't have the source code, because it would be on a USB (oh duh!, of course....) If I wanted to do an encryption, giving the source code would be like giving the code to the vault. The final result would just be a lonely string sitting in a text file. You can't expect to have the engine running and the source code.

Well either you're completely ignorant, or you have haven't put much thought into this. If someones in the position in which they can take your encrypted files then they could potentially steal your script, and in seconds they could crack it, i can make a loop that can input ever number from 1-9,000,000,000,000 in under a minute.

ov3rcl0ck
Junior Poster
113 posts since Sep 2009
Reputation Points: 35
Solved Threads: 22
 

This question has already been solved

Post: Markdown Syntax: Formatting Help
You