3 ms·
Base64 is a two-way hash function
by techscruggs 15y ago
Base64 is a two-way hash function
- jerf 15y ago"Two-way hash function" is an oxymoron. The fundamental characteristic of a function that makes it a hash function is the inability to (feasibly) reverse it. Base64 is an encoding.
- ubershmekel 15y ago"Two-way hash function" is a contradiction. An oxymoron is a figure of speech that combines contradictory xterms.
- masterzora 15y agoI agree with your final conclusion, that Base64 is an encoding, but it is also a hash function and hash functions can very well be two-way. In fact, the trivial hash function just maps data to itself, which is trivially reversible. However, we do want our cryptographic hash functions to be trapdoors to be of use.
- ay 15y agoTrapdoor function means the function is easy to calculate in one direction, but is difficult to calculate in the other direction without knowing a special bit of information that allows this calculation much easier. What would a trapdoor value be for SHA1 ? What I can agree is that I would like the cryptographic hash to be a one-way function, yes. But not trapdoor functions, please :-) (and can you point to the definition of the hash functions that you described ? I'm curious).
- masterzora 15y ago> What would a trapdoor value be for SHA1 ? Okay, you got me there. It's been long enough since I've actually used the term that I seemed to have remembered it being the same as one-way. Oops. As for the parenthetical, I'm not sure I take your meaning properly. If you are asking where I learned that hash functions don't have to be one way it seems to be an odd question, but I just checked Wikipedia and it agrees with me, at least.
- ay 15y ago"Okay, you got me there." - it was not really intended as a trick - sorry for the wording. As for the trivial hash - now I scrolled down the page on Wikipedia, indeed. I never thought of it this way. (That an identity function on an integer would deserve to be called a hash function :-) The part that got me was the initial sentence about hash function converting "large, possibly variable amount of data" into a "small datum". As "large" and "small" are implied to be of different sizes, I glazed over a possibility of identity function there. Thanks!
- masterzora 15y agoOh, I didn't think you intended to trick me. Perhaps some context that'd help you understand my state of mind when I wrote that: while I may be a dev and hacker professionally and as a hobby, I went to university in mathematics specialising in number theory. I'm expected to know silly things like the difference between "one way function" and "trapdoor function", so it's a touch off-putting when I forget.
- ay 15y agoI know what you mean. For me it was: "Hm. he wrote that with a good confidence. Which part of my knowledge is wrong or incomplete ?" :-) Kind of the same feeling when the significant other garbage-collects a pen you put on the table just a few minutes ago.