5 ms·
The Matasano Crypto Challenges
- shanelja 14y agoIt's great to see a company doing something like this and getting involved in the community this way, I took Dan Boneh's class on Cryptography some time last year so I've sent these guys an email and I will see what I can manage.
- ColinWright 14y agoQuoting: You'll want to be able to code proficiently in any language. That should probably be: You'll want to be able to code proficiently in *some* language. I should think no one can code proficiently in every language, and to me, that's what the first implies.
- karterk 14y agoin a language of your choice sounds best to me.
- jacobwcarlson 14y agoIf you're going to be pedantic at least consult a dictionary first: "any 1 [ usu. with negative or in questions ] used to refer to one or some of a thing or number of things, no matter how much or many"
- da3da 14y agoSee how that entry says "usu. with negative or in questions"? The usage in this case is neither negative nor a question, and so many, like the gp and myself, found it confusing.
- jfarmer 14y ago'People "know" this already, but they don't really know it in their gut, and we think the reason for that is that very few people actually know how to implement the best-known attacks. So, mail us, and we'll give you a tour of them.' As Hegel said, "The familiar is not understood precisely because it's familiar." Das Bekannte überhaupt ist darum, weil es bekannt ist, nicht erkannt. I live this every day as a teacher. Students believe they understand, say, linked lists because they can recite all sorts of Linked List Facts™. It's not until you put them in front of a problem with a linked-list-shaped hole that they truly come to understand (erkennen).
- tonecluster 14y agoAin't that the truth. And (if you're doing it right), the older you get the more holes you spot. And, in filling those holes, keep collecting the lightbulbs from over your head when the "erkennen" mallet strikes.
- eru 14y agoWhy did you use German here? (Please pardon the off-topic comment. Just my interest as a native speaker.)
- jfarmer 14y agoHe was quoting me quoting Hegel, talking about the relationship between familiarity and understanding. Unfortunately English doesn't have the precise distinction that German does, so the translation is a little confusing. To an English speaker "familiar", "known", and "understood" are almost synonymous. Many programmers I know use the word "grok" as a stand in: http://en.wikipedia.org/wiki/Grok http://en.wikipedia.org/wiki/Grok
- eru 14y agoOh, thanks. I didn't have the whole thread in mind.
- AdamGibbins 14y agoMaciej did a good review here: https://blog.pinboard.in/2013/04/the_matasano_crypto_challenges/ https://blog.pinboard.in/2013/04/the_matasano_crypto_challen...
- ColinWright 14y agoGreat review and subsequent discussion: https://news.ycombinator.com/item?id=5574074 https://news.ycombinator.com/item?id=5574074
- jrabone 14y agoPardon the paranoia, but who else gets to see the little black book^H^H^H list of people who are skilled at practical crypto exploits?
- eru 14y agoWhat's the matter with that? You can study the stuff at universities to a much deeper level.
- tptacek 14y agoIf you can point me to a university curricula (and, especially, a syllabus) that has hugely better coverage of practical attacks on cryptographic implementations, I'd be interested in seeing it. Nobody is going to come out of these challenges qualified to pick SHA-4 or AES-ng, or for that matter, prepared to design a new cipher or even a novel crypto construction. That's not the point of the challenges. But we're covering what I think might be an odd corner of cryptography. Our approach to crypto is from a software security perspective. In a similar sense as 2013 software security researcher might be able to tell you a great deal about how Javascript objects are allocated a browser but not have any idea about best practices for organizing actual working Javascript code, we're covering an idiosyncratic set of implementation details but leaving all the theory out --- not least because we don't have the theory background.
- eru 14y ago> If you can point me to a university curricula (and, especially, a syllabus) that has hugely better coverage of practical attacks on cryptographic implementations, I'd be interested in seeing it. Me, too. The courses I took were much more theoretical--lots and lots of number theory. I enjoyed them, and I enjoy your challenges, too. The theory is fun, and I learned enough to understand some interesting attacks, but at the level of courses I studied the material at, we did not come up with any new attacks. The distinction is a bit like theoretical computer science versus actually writing a programme. P.S. I'll looking through material from my old university and see if I can find anything interesting.
- andrewcooke 14y agoi'm a third of the way through these are they're really entertaining - i am going to recommend them to my colleagues at the next weekly meeting. i "knew" some of attacks were possible, but had no real idea of how to go about exploiting them "for real" - this course works you through practical applications (and i found it to be pitched at an almost perfect level - it moves fast enough to be interesting, but not so fast you get lost). they're quite meaty - doing one email (out of the 6) takes at least a day for me (but there's also some slack - you've got quite a bit of freedom and i think you could spend more or less time, depending on exactly what you choose to do.) i haven't needed any deep technical knowledge or hard maths (but i already knew, for example, what a "block cipher" was and what "modes of operation" were, even if i couldn't tell you which did what without looking at wikipedia). the hardest part has just been "bookkeeping" in the code - tracking which offset in the array of data i am modifying, etc. the usual programming details. so this is for interested amateurs - i don't think the nsa is going to be very excited learning who has completed the course... (also, fwiw, i'm using python 3.3 (the new "yield from" is very useful when writing code that modifies sequences) and it's plenty fast enough so far)
- eru 14y ago> so this is for interested amateurs - i don't think the nsa is going to be very excited learning who has completed the course... Yes. Though: I studied cryptography as part of mathematics in university, and while we studied much more sophisticated attacks and ways to break your ciphers, we never actually ended up coding up the breaks even of comparatively trivial attacks.
- tptacek 14y agoWhat's an example of sophisticated class of attacks we have poor coverage on? (If you like, mail me directly; we're not publishing exactly what the challenges are). I'd appreciate leads on places we should expand our coverage. Sean is already working on set 7, and we're pulling attacks out of the recent literature to do that. Worth mentioning: we're not cryptographers.
- 14y ago
- dtwwtd 14y agoI've really been wanting to do these for a few months now. I've just got to get through finals this week before I can start!
- tptacek 14y agoOh. This is why we suddenly got a huge flood of mail on a Sunday night. Well, hello again. A reminder: $20 to Watsi for each person who finishes all six sets.
- dsl 14y agoI don't know why I just realized tptacek == the Thomas Ptacek. Can't wait to finish real work so I can focus on banging out code for round 1.
- aptwebapps 14y agoI did the first set and loved it. Are you running much of a backlog? I sent that in about two days ago. Actually, looks like an email mixup. I didn't reply directly to the more recent email and composed a fresh mail to us@cryptopals.com which doesn't work (although I did CC the other address as requested). Just forwarded my submission. Edit: Just got set 2.
- shanelja 14y agoI sent in my request a few minutes after this went live, still waiting. :( They must have a huge spike in requests to go through, plus the people completing sets 1 and 2. I would expect waiting times to drop as fewer people complete the advanced sets.
- just2n 14y agoStill waiting. How long is the average wait time?
- tptacek 14y agoMuch better than it was on Friday when the first story hit (none of this was automated on Friday), but still on human-scale time. Minutes to multiple hours. When did you send your mail to us? If it was any time before this afternoon, you should have already seen mail from us; check your spam filter. About 1 out of every ~200 people we mail refuses the mail (at SMTP) for one reason or another, so if you're running your own email server, make sure it'll accept mail from MATASANOCRYPTOPALS.COM --- note that's not the domain you sent to.
- unlimit 14y agoI am also waiting on it. I sent the email on the 19 April.
- Osmium 14y agoI just started doing these and am very much enjoying it so far despite not being much of a programmer (and never having done any crypto before!). I spent a good Saturday afternoon doing the first 8 though have to confess problem 4 seems I be confounding me despite having easily found the answer to problem 3 :( and whatever bug I have in problem 4 also means my problem 6 isn't working either. And sadly I have to get back to my real work now it's Monday again!