My Question(s)
I am wondering if I have a password (long enough) and I cypher it by itself (let's ignore the salt) in this way:
cy_hash(mypassword)=cypher(text=mypassword,key=mypassword)
Then, is cy_hash
as secure as md5
, sha1
, sha512
, etc?
Also:
- Is there any theoretical comparison between these methods?
- Has this method ever been used in practice? If not, why?
- Is there any research on this hash?
My research efforts
As for my research efforts, I have looked around and found the following Q&As:
- Is it safe to encrypt a string using same string as key? (at StackOverflow)
- how much is secure to encrypt a password using itself (as encryption key) for storing it on a unsecure media? (at Crypto.StackExchange)
but those Q&As do not answer my question. You can safely skip linking to them.
12345blabla
) with the password and when the password is given, try to decrypt it and check that there is no error, i.e. the string is returned. I think the big problems here are that it is more difficult to implement than a "simple" hash and that it is way too fast. A password hash should be slow, whereas encryption algorithms are usually designed to be fast, sometimes even supported by hardware acceleration (AES). $\endgroup$