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. ...
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 ...
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 ...
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 ...
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 ...
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 ...
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 ...
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 ...
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....
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 ...
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 ...
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. ...
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 ...
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 ...
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, ...
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 ...
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 ...
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)....
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 ...
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 ...
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 ...
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 ...
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 ...
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 ...
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 ...
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 ...
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):
...
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.
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 ...
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 ...
Only top scored, non community-wiki answers of a minimum length are eligible
Related Tags
md5 × 248hash × 147
passwords × 47
sha × 38
cryptography × 34
encryption × 21
authentication × 15
password-cracking × 15
salt × 14
sha256 × 13
brute-force × 12
php × 11
http × 8
bcrypt × 7
integrity × 6
hashcat × 6
web-application × 5
password-management × 5
openssl × 5
aes × 5
rainbow-table × 5
tls × 4
man-in-the-middle × 4
hmac × 4
sha2 × 4