Super User is a question and answer site for computer enthusiasts and power users. Join them; it only takes a minute:

Sign up
Here's how it works:
  1. Anybody can ask a question
  2. Anybody can answer
  3. The best answers are voted up and rise to the top

i have been wondering and surfing the net on the differences and processes of Md5, blowfish and twofish encryption algorithms but i cant find an exact answer, im a noob though..be gentle..any answers would be a great help..

share|improve this question

Not really sure what you're after, but you have to differentiate between encryption and hashing.

Example Encryption Algorithms:

  • DES
  • CAST-128
  • Blowfish
  • Twofish
  • CAST-256

Example Hash Algorithms

  • MD5
  • SHA-1
  • SHA-256

Encryption is a reversible process, where you can get back your original data.

Hashing is a one-way process, that can boil all your data down to a 20-byte "fingerprint".


Just to expand on hashing:

          20 MB file
              |
              ˅
         [MD5 hash]
              |
              ˅
0xe57262ce00045e850fd5392073a6e9cd

Hashing is very different from encryption. If you hash your data you cannot get it back.

Imagine hashing is like modulo addition:

 37
+69
+28
===
134 mod 10 = 4

Or more graphically:

      37,69,28
         |
         ˅
[Ian's hash algorithm]
         |
         ˅
         4

A hash is used to generate a "fingerprint" of your data. It is one way, and not reversible.

Since you are using a "chat" program, i assume you are want to encrypt the messages. For that you need an encryption algorithm, not a hashing algorithm.

share|improve this answer
    
i evaluated the Md5 encryption algorithm in Lan chat, result shows that in a Lan Chat that i have created using Md5 encryption the lesser the strings that i will sent to the client,, the longer the time it takes while in a larger string, the faster it transmits data..why is that? – RedKing Feb 21 '11 at 13:20
2  
Like Ian said, MD5 is not an encryption algorithm, it is a hash algo. It gives you back a 32 character string regardless how long the target string is and cannot be “unhashed” (you cannot get back the original string). What is probably happening is that because it gives a 32 character hash even for a 1-character string, you are getting a lot of overhead, which causes it to take longer. – Synetech Feb 21 '11 at 14:14
    
if the Md5 is irreversible..why is it that when i used Md5 for sending encrypted messages to a client pc, the client can still read what i have sent, it means the message that i have sent and encrpyted by the Md5 is decrypted when the client recieves it.. heres the main idea... "Send Message + Encrypt= Decrypt+ recieved.." – RedKing Feb 22 '11 at 12:05
1  
@iDarine: You are mistaken. Edit your original question to include the code you are using. – Ian Boyd Feb 22 '11 at 13:34

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .