在编码过程中,我使用了MD4和MD5加密技术。但他们之间并没有任何明显的安全差别。然而,他们中的大多数人更喜欢MD5,实际上是指定它。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);那么,在安全性方面,使用MD4和MD5有什么区别呢?
发布于 2014-10-27 10:05:13
MD4和MD5都不是加密,而是一个产生128位哈希值的散列函数。如果您需要加密,请使用适当的加密技术,如AES。
为了添加到MD5的“安全性”方面,它被宣布为不可用,因为有几个漏洞可能导致散列碰撞,最糟糕的是,使用彩虹表将密文逆转回原来的值。如果您需要散列,请使用沙二
发布于 2014-10-27 10:04:22
MD5于1991年被设计成一个安全的替代品。(汉斯·多伯汀后来确实在MD4中发现了弱点
MD4的安全性已经严重受损。1995年发布了第一次针对MD4的全面碰撞攻击,此后又发布了几次较新的攻击。从2007年起,攻击可以在少于2个MD4哈希操作中产生冲突。
以下是MD4和MD5之间的区别:
https://stackoverflow.com/questions/26584765
复制相似问题