This set is huge. There's as much content as in any two or three other sets.
This set is tough. It's easily the toughest set so far. And there is some math. But it's fascinating stuff and (I hope) pretty approachable.
This set is OG cryptopals. That means we're (for now) distributing it via email. If you want to check it out, send a mail to firstname.lastname@example.org with subject "Crazy Flamboyant for the Rap Enjoyment".
Secondly, Sean suggested I should speed run set 8 (which I have been saving to run through in a single go) live on Twitch.
People seem to like the idea, so I'll have to figure out a schedule, but this is happening. Check Twitter if you are interested or have advice.
(For context, I think I was the first to finish set 7, which I sped run while at Recurse Center in 30 hours.)
I assume most people don't know, so: Filippo was one of our earliest adopters of cryptopals. He is a monster. He demolished everything we put in front of him.
You should watch Filippo run set 8. I've read a bunch of his code via cryptopals, and I'm a better programmer because of it. I'm very excited to watch him work in realtime.
It's been really fascinating to learn how to use hyperelliptic.org/EFD and turn the pure optimized voodoo of DJB's C implementations into minimalist C++ code.
Here is my current progress: http://hastebin.com/raw/vohusotobe
After separating the math operations on the prime field (2^255-19) into its own type, I was able to reduce Curve25519 to a 30-line class, that's still (hopefully) safe from side-channel leaks and ~90% as fast as the original C version was. Ed's about three times that size on account of all the hashing that's involved, and building a table for scalar multiply over the constant B.
However, there's still a very clear gap in my knowledge of how it all actually works. The math is so far beyond my current knowledge that I don't really have any understanding of its potential weaknesses. The best I can do so far is compare and confirm test vectors against the official implementation, and rely on the work of others in verifying the strength and security of the curve itself.
I'll definitely try and go through this set the next time I have downtime.
"1. Set 7 is out and, if you finished Set 6, you'll be getting Set 8 (Elliptic Curve) sometime in the next few weeks."
Oh well, 2 years later I can still do them :)