Last call to make your voice heard! Our 2022 Developer Survey closes in less than a week. Take survey.

Hot answers tagged

261 votes
Accepted

How can I create a password that says "SALT ME!" when hashed?

The output of MD5 is binary: a sequence of 128 bits, commonly encoded as 16 bytes (technically, 16 octets, but let's use the common convention of bytes being octets). Humans don't read bits or bytes. ...
user avatar
  • 168k
203 votes

How to approach replacing md5 for transporting Unity game data to a remote server

This approach is fundamentally flawed. Anything on the client side can and will be tampered with by players. It is the same problem which makes DRM untenable - the user owns the machine and all the ...
user avatar
  • 132k
108 votes
Accepted

Known strings to have the same MD5 hash, not colliding in real life?

... in which it clearly states that these two strings ... No. It clearly states "... two different sequences of 128 bytes ...". There is a huge difference in these statements. In the first ...
user avatar
95 votes
Accepted

Is it secure to use MD5 to verify the integrity of small files (less than 15kb)?

The size of the input is irrelevant. In fact, because of the birthday paradox, collisions are guaranteed as soon as the size of the message exceeds that of the hash. The best way to avoid collisions ...
user avatar
  • 64k
91 votes
Accepted

Is bcrypt(strtolower(hex(md5(pass)))) ok for storing passwords?

As a password cracker, I encourage all of my targets to use this technique. 😉 This (understandably!) seems like a good idea, but it turns out that against real-world attacks, wrapping an unsalted ...
user avatar
68 votes
Accepted

How long will it take to crack the passwords stolen in the Yahoo hack announced 14 Dec 2016?

Yes, they were likely able to crack many of the passwords in a short time. From the official Yahoo statement: For potentially affected accounts, the stolen user account information may have ...
user avatar
  • 43.6k
61 votes

Does every hash value have an inverse value?

My question is: Does every hash value H have a value V? For example, given md5 hash value f2c057ed1807c5e4227737e32cdb8669 (totally random), can we find what it was from? These are actually two ...
user avatar
59 votes
Accepted

Exploiting MD5 vulnerability in this PHP form?

Try sending a HEAD request. I'm assuming that with ascii.txt included, the output of the script is just over a nice number like 4096 bytes, a common output_buffering value. Once the script has ...
user avatar
  • 665
45 votes
Accepted

How can I prove this site has a huge security weakness?

The password format in the userpassword attribute looks like the standard format used by various unix services, such as the default system password service which stores hashed passwords in /etc/shadow....
user avatar
  • 9,095
45 votes
Accepted

Why would one need to encode an MD5 hash string? Is it unsafe to display unencoded?

Hash functions output binary data, usually as a byte array. This cannot be displayed correctly, therefore, you need encoding. Transmitting binary data can create problems, especially in protocols that ...
user avatar
  • 5,469
40 votes

How to approach replacing md5 for transporting Unity game data to a remote server

There are three problems here: What you're trying to do is fundamentally misguided in several ways, as described in Polynomial's answer. If you insist on doing it anyway, then you're not even using ...
user avatar
40 votes
Accepted

Received "md5" in access logs

The attacker is trying to exploit Joomla component called com_s5clanroster which is vulnerable to SQL Injection. An SQL injection vulnerability has been reported in Joomla Com S5clanroster. ...
user avatar
  • 9,963
40 votes

Known strings to have the same MD5 hash, not colliding in real life?

As pointed out in the other answers, the hexadecimal strings must be decoded to raw bytes first, then the raw bytes should be fed into the MD5 hash function. If you do this, both produce a hash of ...
user avatar
  • 19.6k
38 votes
Accepted

Why are MD5 and SHA-1 still used for checksums and certificates if they are called broken?

SHA-1 and MD5 are broken in the sense that they are vulnerable to collision attacks. That is, it has become (or, for SHA-1, will soon become) realistic to find two strings that have the same hash. As ...
user avatar
37 votes

SHA & MD5 Collisions for shorter strings

Short answer: collisions don't matter for password verification. The length of the input is irrelevant. I understand that md5 and sha512, etc... are insecure because they can have collisions. No, ...
user avatar
36 votes

Is bcrypt(strtolower(hex(md5(pass)))) ok for storing passwords?

While Royce's answer is correct in that wrapped hashes are weaker than unwrapped pure bcrypt hashes, it must be noted that they are nevertheless significantly stronger than your current implementation ...
user avatar
  • 1,665
30 votes
Accepted

Reversible Hash Function?

The definition of a cryptographic hash function includes resistance to preimages: given h(x), it should be infeasible to recover x. A hash function being "reversible" is the exact opposite of that ...
user avatar
  • 168k
30 votes

How can I prove this site has a huge security weakness?

This password hash seems to use the crypt() format (which, despite its name and what some documentations say, including that very man page, has absolutely nothing to do with encryption; it is hashing)....
user avatar
29 votes
Accepted

Why does MD5 hash starts from $1$ and SHA-512 from $6$? Isn't it weakness in itself?

First, there's Kerckhoffs's principle which is always desirable: A cryptosystem should be secure even if everything about the system, except the key, is public knowledge. where in this case the ...
user avatar
  • 38.6k
29 votes
Accepted

How can the content of a file refer to its own MD5?

'face2face' is only 9 characters, i.e. 36 bits since we are using hexadecimal encoding. It suffices to generate many pictures with some internal variations (subtle variations that do not impact the ...
user avatar
27 votes

Exploiting MD5 vulnerability in this PHP form?

The security flaw isn't in MD5 in this case. And the idea isn't to get if (!isset($_POST['pass']) || md5($_POST['pass'])!='castle') to evaluate in favor of the hacker. The vulnerability appears when ...
user avatar
  • 3,340
27 votes
Accepted

How to approach replacing md5 for transporting Unity game data to a remote server

Edit: To clarify, I can't speak to the security of your approach, only the hash portion. There are some strong comments here discouraging your approach. (i.e. a good hash can be part of a secure ...
user avatar
  • 13.8k
24 votes
Accepted

Convert SHA-256 to SHA-1 and MD5 - Increase bit length/entropy?

And it is longer than the input string, with 288bit instead of 256bit. So did we actually increased the entropy? No, you did not increase the entropy. In this context, "entropy" basically refers to ...
user avatar
  • 7,680
23 votes
Accepted

Can NSA generate all hashes for rainbow table to break md5?

First of all, MD5 is not an encryption algorithm. It is a hash function. Encryption generally implies decryption, which you cannot do with a hash function. Who said MD5 is good or unbreakable? It ...
user avatar
23 votes
Accepted

Client side password hashing with static salt - did I find a breach?

It depends. There is not enough information in your question to give specific answers, and probably without knowing the server side, it will be hard to evaluate. Isn't this a breach? I would not call ...
user avatar
  • 1,305
22 votes

How can I prove this site has a huge security weakness?

Stop. Go no further. Do no more testing, demonstration, etc. until you have been explicitly asked to do so in writing, and even then beg off and suggest that there are many more qualified people than ...
user avatar
  • 339
21 votes

How long will it take to crack the passwords stolen in the Yahoo hack announced 14 Dec 2016?

(Summary is in the last paragraph.) How long will it take to crack 1 password? Is the time to crack 1 billion, just 1e9 * t? Imagine I have this hashing algorithm: function hash(password): ...
user avatar
  • 31.8k
20 votes

Known strings to have the same MD5 hash, not colliding in real life?

Those are byte values not strings. Use https://cryptii.com/pipes/md5-hash and change input to bytes. Both byte arrays produce equal hash 79054025255fb1a26e4bc422aef54eb4.
user avatar
  • 311
19 votes

I have an MD5 encrypted link. How do I decrypt?

It's not MD5 (which is a message digest algorithm, not an encryption algorithm), and it's not even base 64. It's just ASCII encoded as hex. It contains http://imgur.com/EUJCsGB which is a link to ...
user avatar
  • 33.6k
18 votes

The brute-force resistence of bcrypt versus MD5 for password hashing?

Bcrypt use a configurable iteration count, so the answer to your question is: whatever you want it to be. If the iteration count is such that one bcrypt invocation is as expensive as 10 computations ...
user avatar

Only top scored, non community-wiki answers of a minimum length are eligible