Miscellaneous

Generates hashes from file upload, text or URL using various algorithms.

This online tool **generates hashes** using various algorithms (**MD5**, **MD5-24**, **SHA1**, **CRC32** and more) for either uploaded files or directly entered data.

*Hashing* is a process of generating a string (or number) with limited width from a data stream of arbitrary length. Produced *hash* identifies that particular data stream while not exceeding a certain length.

Of course, one hash matches many possible streams because it has limited width; however, good hash functions make it impossible to guess which data will have the same hash. Hashes can be *reversible* and *irreversible*; all hashes handled by this tool are irreversible meaning that you can't rebuild the original data stream given a hash string.

##
Reference pages

Reference pages on **popular** hashing algorithms:

**MD5 (Message Digest 5)** – very popular algorithm well-known for its entropy quality. Hash takes 16 bytes (128 bits) but is often converted to 32-character long string (simply a hexadecimal representation of raw hash) containing Latin characters (case-insensitive) and digits.**Short MD5** (sometimes **MD5-24**) – a case-sensitive version of **MD5** hash function using extended alphabet (41 symbols). While still URL-safe it takes **up to 24 characters** instead of 32. PHP implementation are freely available here.

**SHA1 (Secure Hash Algorithm 1)** – a 40-character long string which strength can be compared to that of **MD5**.**CRC32 (Cyclic redundancy check)** – basic, quick, widely used method of calculating checksums of data. The hash takes exactly 4 bytes (*32 bits*).**Adler32 (Mark Adler's algorithm)** – very similar to **CRC32** but a bit faster and less reliable. Also takes up exactly 4 bytes (*32 bits*). Is a part of the very well-known ZLib compression library.

**Less known** hash functions that this tool uses:

**HAVAL** – produces hashes of different lengths (*128*, *160*, *192*, *224* and *256-bit hashes*) and number of *rounds* (3, 4 or 5). Numbers in its name read as: `HAVAL <bits>,<rounds>`.**Tiger** – a hash initially designed for 64-bit platforms; used in **DirectConnect (DC++)** applications. Standard hash width is *192 bits*.**RIPEMD** – cryptographic hash function designed in an open academic community. Standard hash width is *160 bits*. Similar in performance to **SHA-1**.