Comment by gleenn
10 hours ago
This seems extremely cool, but man does it also sound complicated. The write up was thorough but the algorithm seems so complicated that the author can't even write good tests for it is concerning. I would be very concerned their algorithm might accidentally skip something important accidentally given they are dealing with dynamically combining large binary expressions. You can make it fast, but if you can't prove it and it's security related that probably needs to be proved out more, even if SHA1 is already compromised.
Fuzz tests with tailored random distributions and good logical property tests are excellent tests.
What would you do better?
Also, the author didn't say that there were no other tests. They just said that they use fuzz + property tests a fair bit.
Why do you conclude the author cannot write good tests for it?