Thank you Michael Rabin for your excellent work. Rest in Peace.
Rabin Fingerprinting is one of my favorites of his contributions. It's a "rolling hash" that allows you to quickly compute a 32-bit (or larger) hash at *every* byte offset of a file. It is used most notably to do file block matching/deduplication when those matching blocks can be at any offset. It's tragically underappreciated.
I've been meaning to write up a tutorial as part of my Galois Field series. Someday..
Thank you again!
I recently found his fingerprint algorithm and wrote a utility that uses it to find duplicate MIPS code for decompilation[0] and build unique identifiers that can be used to find duplicates without sharing any potentially copyrighted data[1].
This replaced some O(n²) searches through ASCII text, reducing search time from dozens of seconds to fractions of a second.
0 - https://github.com/ttkb-oss/mipsmatch 1 - https://github.com/ttkb-oss/mipsmatch/wiki/Identifiers
Important to note that FastCDC is about an order of magnitude for block deduplication and is generally considered the state of art for such an approach (speed of computing the hash is more important than absolutely optimal distribution of hashes).
I'm working on a data annotation system based around Rabin fingerprints. They're a really neat idea.
I especially like how if you end up with hash characteristics that you don't like, your can just select a different irreducible Galois polynomial and now you've got a whole new hash algorithm. It's like tuning to a different frequency.
For me it means I don't have to worry about cases where there aren't enough nearby fingerprints for the annotation to adhere to, I can just add or remove polynomials until I get a good density.
I took his Introduction to Cryptography class when he was a visiting professor at Columbia. Absolute master of an old-school chalkboard lecturer. They don't make them like that any more.
Hugely engaging, the margins of my notebook had many of his quips… there was an archive online somewhere.
e.g., x minus x is zero, even for Euler, so therefore…
Found on Archive, https://web.archive.org/web/20210509160248/http://www.eecs.h...
I know him from Harvard and came here to say pretty much the same thing. RIP.
First sentence starts with horrible antisemitism. Can someone fix it? (on my phone with kids so not in a position to)
I used to regularly donate to the wikimedia foundation every year. I stopped doing that as I find the whole project is now a political tool and cannot be relied on. Even ignoring vandalism like here, sometimtes the same articles get different meanings depending on the language you view them in.
Different language editions of Wikipedia are completely different projects, with distinct user bases. You're never looking at the "same" article across languages.
It's been fixed.
Thank you! I’m a casual user of Wikipedia but after this thread I went through the history of edits on the article and...oh my.
I have a greater appreciation for folks like you and the other editors who seem to be constantly removing this type of stuf. Some truly horrendous slurs there.
Still up. Looks like this is going to be another game of hit the hedgehog.
People keep adding different slurs. Awful and disgraceful.
Anti-Jew rhetoric is at a level unseen since WW2. It’s the new normal. It’s horrible.
Yeah, I come into contact with some form of Jewish hate on a literal daily basis now. It’s been this way for months.
*It’s the old normal :(
The article has now been been semi-protected to prevent vandalism by anonymous users.
I wonder why that is…
An admin has now semi-protected the article.
I had a look at the history of todays edits and it is appalling.
Indeed I just figured out how to view them. Wow. https://en.wikipedia.org/w/index.php?title=Michael_O._Rabin&...
I had the incredible good fortune to take one of his classes in college, and I loved it so much I took another just to learn from him again. A tremendous intellect AND an incredibly engaging and talented instructor. It would be an exaggeration to say that I knew him, but nevertheless he had a great impact on my education and my life. He will be missed.
It's hard to imagine how a single person managed to accomplish so much. RIP to the great soul :|
Seriously. After reading, I scrolled through his Known For section and thought, “Alright already, leave something for everybody else to work on.”
Michael O. Rabin had important contributions in many domains, but from a practical point of view the most important are his contributions to cryptography.
After Ralph Merkle, Whitfield Diffie and Martin Hellman, Michael O. Rabin is the most important of the creators of public-key cryptography.
The RSA team (Ron Rivest, Adi Shamir and Leonard Adleman) is better known than Michael O. Rabin, but that is entirely due to marketing and advertising, because they founded a successful business.
In reality the RSA algorithm is superfluous and suboptimal. If the RSA team had never discovered this algorithm, that would have had a null impact on the practice of cryptography. Public-key cryptography would have been developed equally well, because the algorithms discovered by Merkle, Diffie, Hellman and Rabin are necessary and sufficient.
On the other hand, while without the publications of RSA, cryptography would have evolved pretty much in the same way, without the publications of Michael O. Rabin from the late seventies the development of public-key cryptography would have been delayed by some years, until someone else would have made the same discoveries.
Together with Ralph Merkle, Michael O. Rabin was the one who discovered the need for secure cryptographic hash functions, i.e. one-way hash functions, which are now critical for many applications, including digital signatures. Thus Rabin is the one who has shown how the previously proposed methods of digital signing must be used in practice. For example, the original signing algorithm proposed by RSA could trivially be broken and it became secure only in the modified form described by Rabin, i.e. with the use of a one-way hash function.
Originally, Merkle defined 2 conditions for one-way hash functions, of resistance to first preimage attacks and second preimage attacks, while Rabin defined 1 condition, of resistance to collision attacks. Soon after that it was realized that all 3 conditions are mandatory, so the 2 definitions, of Merkle and of Rabin, have been merged into the modern definition of such hash functions.
Unfortunately, both Merkle and Rabin have overlooked a 4th condition, of resistance to length extension attacks. This should have always been included in the definition of secure hash functions.
Because this 4th condition was omitted, the US Secure Hash Algorithm Standards defined algorithms that lack this property, which has forced many applications to use workarounds, like the HMAC algorithm, which for many years have wasted time and energy wherever encrypted communications were used, until more efficient authentication methods have been standardized, which do not use one-way hash functions, for instance GCM, which is today the most frequently used authentication algorithm on the Internet.
Nobody has hidden the history of contributions of Rabin to cryptography or computer science.
He is a Turing Award winner.
I would argue that nondeterministic finite automata are both more significant and more practical.
@dang this deserves a black ribbon
"@dang" doesn't do anything last I heard (though at this point it's used often enough that maybe the HN folks should consider it). If you want to reach the mods you can contact hn@ycombinator.com I believe.
What is a black ribbon?
Probably meant black HN top bar.
Michael Rabin, 1976 ACM Turing Award Recipient
That sly remark at 22:40 on the telephone ringing :)
Amazing man, with many important contributions over a very long career. The Rabin Cryptosystem (like RSA, but with public exponent 2) is notable for two reasons. First, unlike RSA, it is provably as hard as "factorization" (as he would call it), and second, unlike RSA, it wasn't protected by patent.
May his memory be a blessing.
Doctoral advisor - Alonzo Church
TIL. Also just realized that Alan Turing was also one of Church’s doctoral students. We stand on the shoulders of these giants.
I loved implementing the Rabin-Karp algoritm, such a fun and celever solution.
"As a young boy, he was very interested in mathematics and his father sent him to the best high school in Haifa, where he studied under mathematician Elisha Netanyahu, who was then a high school teacher."
Interesting. Some people are lucky enough to find their vocation quite early in life.
Wow hadn't heard of him https://en.wikipedia.org/wiki/Elisha_Netanyahu
What a small world. But the entire extended family are professors. Too bad one became a politician.
Benzion?
> Benzion Netanyahu ... A scholar of Judaic history, he was also an activist in the Revisionist Zionism movement, who lobbied in the United States to support the creation of the Jewish state.
Benzion’s son (and Elisha’s nephew) Benjamin Netanyahu is the Israeli prime minister.
Then there are at least two.
Yeah.
Everything is intertwined at some level.
Interesting.