During coding, I have used both MD4 and MD5 encryption techniques. But there hasn't been any noticeable security difference between either of them. And yet, most of them prefer MD5, in fact specify it. MD5 :
System.Text.UTF8Encoding UTF8 = new System.Text.UTF8Encoding(); MD5CryptoServiceProvider HashProvider = new MD5CryptoServiceProvider(); byte TDESKey = null; TDESKey = HashProvider.ComputeHash(UTF8.GetBytes("CXPUB001")); // ASYNC PRIVATE KEY CODE FOR DATA ENCRYPTION //DATA ENCRYPTION TripleDESCryptoServiceProvider TDESAlgorithm = new TripleDESCryptoServiceProvider(); TDESAlgorithm.Key = TDESKey; //SENDER KEY APPENDED TDESAlgorithm.Mode = CipherMode.ECB; TDESAlgorithm.Padding = PaddingMode.PKCS7; byte DataToEncrypt = UTF8.GetBytes(Message);
So, what is the difference, security wise, between using MD4 and MD5 ?