Eli wrote great arguements in his Serpent paper with regards to why Serpent was designed the way it was. Crypto is not something you want to sit on the "Bleeding Edge" of technology and math theory. You want security above all else, that's the number one priority. If you want speed, then why not run an XOR algorithm? Right, lack of security. I think Bruce is a great cryptographer, his book I have at my bedside and is my reference. BUT, I have to say that I'm biased towards Serpent. It is a "clean" cipher, and is the fastest in hardware so more than likely, VPN's will be using it, it's overly conservative (32 rounds vs. most others are 16, and Rijndael is 10) and of all the candidates, I see it as the one that will last the longest in terms of strength against attacks. As for twofish, the MDS matrix scares me, I've never been a big fan of Blowfish because non-static, data-dependent S-boxes are difficult to cryptoanalyse and also I think Blowfish has been discovered to have a few weak keys. I assume that twofish is better designed, but it has not been given the proper amount of analysis and so we can say that for sure. Rijndael, is fast, highly parallelisable, and extensible. BUT, there are attacks (like the SQUARE attack) that is geared towards it, and probably others that attack this unique structure, and so I would wait a bit to pick that one. Most people associate "twofish" and "Bruce" together and almost with blind faith believe that it's a superior algorithm. Twofish is a good algorithm, but the complexity factor has to be considered also. Keep in mind it's usually not the algorithm that fails, but the implementation of it. So when it comes to crypto, complexity is VERY bad. Data-dependent S-boxes? Doesn't give me warm fuzzies at night. I would stick with Serpent, or better yet,3DES. Tried and true, large key size, and although it's slow, it's purpose is not to be fast, but to be secure. Albert
http://www.achtung.com/opinions/dotcommunist.html
Eli wrote great arguements in his Serpent paper with regards to why Serpent was designed the way it was. Crypto is not something you want to sit on the "Bleeding Edge" of technology and math theory. You want security above all else, that's the number one priority. If you want speed, then why not run an XOR algorithm? Right, lack of security. I think Bruce is a great cryptographer, his book I have at my bedside and is my reference. BUT, I have to say that I'm biased towards Serpent. It is a "clean" cipher, and is the fastest in hardware so more than likely, VPN's will be using it, it's overly conservative (32 rounds vs. most others are 16, and Rijndael is 10) and of all the candidates, I see it as the one that will last the longest in terms of strength against attacks. As for twofish, the MDS matrix scares me, I've never been a big fan of Blowfish because non-static, data-dependent S-boxes are difficult to cryptoanalyse and also I think Blowfish has been discovered to have a few weak keys. I assume that twofish is better designed, but it has not been given the proper amount of analysis and so we can say that for sure. Rijndael, is fast, highly parallelisable, and extensible. BUT, there are attacks (like the SQUARE attack) that is geared towards it, and probably others that attack this unique structure, and so I would wait a bit to pick that one. Most people associate "twofish" and "Bruce" together and almost with blind faith believe that it's a superior algorithm. Twofish is a good algorithm, but the complexity factor has to be considered also. Keep in mind it's usually not the algorithm that fails, but the implementation of it. So when it comes to crypto, complexity is VERY bad. Data-dependent S-boxes? Doesn't give me warm fuzzies at night. I would stick with Serpent, or better yet,3DES. Tried and true, large key size, and although it's slow, it's purpose is not to be fast, but to be secure. Albert