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..
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.
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.
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.
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.
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.
On the contrary, you cannot find frequently descriptions about the role of Michael O. Rabin in the creation of public-key cryptography, so few people are aware of it and I bet that no AI model can generate any text even remotely resembling this, because this information cannot be found in any single place in the possible training texts.
You can find definitions of secure hash functions everywhere, but pretty much nowhere you will find who are the authors of the conditions that are used in the modern definition and who have introduced the use of one-way hash functions.
I did not find this information anywhere, before reading the original publications of Rabin and Merkle from 1978/1979 and some later follow-up papers written by them.
You will not find this historical information in Wikipedia and I believe that it is important to know who are the true authors of the things that one uses daily. Connecting to this site or to any other site with https uses digital signatures that depend on the collision-resistant hash functions defined by Rabin and Merkle.
The Wikipedia article about Michael O. Rabin lists many of his achievements, but all those that are listed there are much less important than his contribution to the definition of the one-way hash functions, which lead to secure digital signatures.
Wikipedia mentions only the Rabin signature algorithm, but that has negligible importance, because it has been used only very rarely. On the other hand all other signature algorithms are based on the work of Rabin, by using secure hash functions.
I don't think that is AI slop. adrian_b often post long posts because he thinks he has a lot to say, but you can often tell that they contain his personal views and points that he thinks are important related to the discussions whereas actual AI slop tends to be bland and generic.
I wouldn’t really call that AI slop. Some people just write longer posts because they’ve got a lot they want to get across, and you can usually tell it reflects their own opinions and what they think matters in the discussion. Actual AI-generated stuff tends to come off more generic and lacks that personal angle.
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.
"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.
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!
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
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.
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 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.
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.
On the contrary, you cannot find frequently descriptions about the role of Michael O. Rabin in the creation of public-key cryptography, so few people are aware of it and I bet that no AI model can generate any text even remotely resembling this, because this information cannot be found in any single place in the possible training texts.
You can find definitions of secure hash functions everywhere, but pretty much nowhere you will find who are the authors of the conditions that are used in the modern definition and who have introduced the use of one-way hash functions.
I did not find this information anywhere, before reading the original publications of Rabin and Merkle from 1978/1979 and some later follow-up papers written by them.
You will not find this historical information in Wikipedia and I believe that it is important to know who are the true authors of the things that one uses daily. Connecting to this site or to any other site with https uses digital signatures that depend on the collision-resistant hash functions defined by Rabin and Merkle.
The Wikipedia article about Michael O. Rabin lists many of his achievements, but all those that are listed there are much less important than his contribution to the definition of the one-way hash functions, which lead to secure digital signatures.
Wikipedia mentions only the Rabin signature algorithm, but that has negligible importance, because it has been used only very rarely. On the other hand all other signature algorithms are based on the work of Rabin, by using secure hash functions.
I really enjoyed reading it.
https://youtu.be/L3FZzGU3n14
Interesting. Some people are lucky enough to find their vocation quite early in life.
Everything is intertwined at some level.
Interesting.