Why md5 digest is 128 bit but returns an string of 32 chars?

·

1 min read

stackoverflow.com/a/6317301

TLDR: it's a HEX string, not ascii or UTF-8 string. Each hex char is 4 bit, not 8 bit

ChatGPT's answer:

"The MD5 hash function outputs a 128-bit hash value, but it is typically represented as a 32-character hexadecimal string. Each hexadecimal digit represents 4 bits, so the 32 characters represent a total of 128 bits. This representation makes it easier for humans to read and work with the hash values, but it does not change the underlying size of the hash value, which is still 128 bits."