(S.C. presents) Fun with hash



Very common way to display hash function results is to show them as hexadecimal number. This page contains collection of MD5 and SHA-1 results that contains same hexadecimal digit as many times as possible in same number.

Note! This page have no point :-)   This was done more or less just for "fun" and to practice running code in multiple CPUs, optimizing code and testing new profiler. I then just left it running along with many other similarly pointless programs running on my computer. At the same time this prooves that both MD5 and SHA-1 distributes their results very well. There isn't any particular result that would jump out from other results.

Input bytes used are all case-sensitive alphanumeric string, so numbers 0 to 9, characters A to Z and characters a to z. Due the nature of these hash functions, there is no reason to expect that any other kind of input bytes would give any better results.

I started searching from string "0", so there is no shorter case-sensitive alphanumeric strings that would return same or better results than the ones on this page. For example, there is no 6 character or shorter alphanumeric string that would result SHA-1 hash containing 21 or more of digits "9" when turned to hexadecimal number.


MD5

Key       Input     Output (MD5)     Count
0       7BOGbV8D     0007000B0011460F30060700F0100E0A     18
1       4q0U9ZYM     1A1B1161AF4911111C11F151F4110811     18
2       1Xgz1h4Y     232A6227322222382C2BA22B5262E222     18
3       4ZLJVg4y     31B29361C33F333023333333395323C3     18
4       R4i0fwt     4E42E4444494943449C4348444CCBB44     18
5       0wRLpuLu     0555F5585C75A555A65FD5455A5E5559     18
6       32eDPR6Q     566DB96DF1B66659666F66B66666166E     18
7       63qYwvts     7D7E7477B77777F86797076377727FB7     18
8       9rUbzMtb     2888491638A8588C88C8886848E38888     18
9       0VcMr5PO     D9A39F9639C99999F599209995994999     19
A       3KTzYK1z     FAAA4A9AA836A0AAA60A282AAAA9A9AA     18
B       DO2oKmQ0     0B1BB1B4BDA9BBBBB48BBB1C1BBB24BB     18
C       2TWPlry1     BC1CCCC0134C7CCCC78C6CC8C95CCCBC     18
D       18XNzE7k     FFDDDFD2DDBDDBD0DABD66DD7D9DDD1D     18
E       BfJJRCP5     CE8EE6EEFE56EBEECEE68E6EEEB33EEE     18
F       0Evx4MUZ     B67AFF3FFBFFFFB9FAFFF2F7FF26FFF3     18

SHA-1

Key       Input     Output (SHA-1)     Count
0       1KfzB34f     000909F0CC090F0940A0FF000D6000D050010502     21
1       1Uv54gh1     FF1E31AB2611B1101C1F11E511F21BC11111131C     20
2       zVyXQpG     4222A22B83289225222CE1462AA0222D2222C23C     20
3       0T96zLdm     39333313133B6AC934F78303333C3C9331332236     20
4       3HkxqvNc     4941F4D844A43444684F04414434DE04F841444A     20
5       hzR3zQr     EF54F550A5B59555CA95556E755275353E95A555     19
6       1xcLHHaO     966E66E6666EF366A636D9D9F6669EC793166666     20
7       GYPtCu1n     774697DDD77D8787777E7771727295CB7D7A7277     20
8       5nx2eL5l     988588DD80D88684CF708888889188C889CF188B     20
9       epKe6so     991968A949969939959679929E9357979F9A99E9     21
A       6q1Qs6Qw     AA488AA480AFA0EAAAE1A748A02A3A46AAAAEAAA     20
B       I3ZwMVR6     BBABBC4BBBB9B3FBB0BBBB6BB8AB7B28DB8B43E4     21
C       FMhT2If5     CBDFCBCCCCCCC2CDCCCC7C50B0C5C1BCCF97BECA     20
D       7XkJhWHu     D5EDDDEDDDDD8BBDDDDB811DD2DF193DBD205D0D     20
E       4EG28G9q     EDE59EE7087EEEEE3FE519CEEEE83EF5EE50E4EE     20
F       7B1pWUm4     FF6FAFFF3FFFB0BFFFFB60BFEAFCFF75F89F35F0     20

Bits

Same thing when output is turned to bits.

Key       Input     Output (MD5)     Count
0       3qgWoopO     00101000 10000101 01000001 00000000
00000001 00000011 10001000 11000010
00100000 10000000 00100000 00000000
00000000 01000000 00010100 00100010
    105
1       DVI43vP     01111111 10111111 00111110 00110111
10111111 11110011 10111111 11011101
10111111 01101111 11010011 11110101
11111111 11111111 11111011 11111111
    105
Key       Input     Output (SHA-1)     Count
0       0gGgNcAj     01100001 10001000 00000010 00000001
10000110 00000000 00000000 00100000
01110001 01100011 00000010 01000010
00000000 00000001 00100000 10000001
00000000 00110001 00000010 10010000
    128
1       0F9Ejdt9     11001111 00111011 11111111 01110011
11111111 11001110 11111111 11110110
01111111 10111111 11011111 00110001
11011011 11101111 01101110 10111111
11111011 01001111 01111111 01111111
    126

Words

Some extra hashes:

gkb -> MD5 -> 890A11CEDD5A4E7BFA76F9466EC0FFEE
DiNP -> SHA-1 -> 0249DEC0DEDEF36F82CDA85FA19F64CC90FEC622
3slGz -> MD5 -> DA4E3E0B5E55ED5CBFC399F46791D490
7pHah -> MD5 -> 6B4D2DBE8367177106EFBADA55E589B2

These are really bad:

RZHkEU -> MD5 -> A09455BAD1441FBCED18BAD5BADABAD9
1ErfBXCB -> SHA1 -> C8BADBD27BADBAD59F4BAD86F78BD9CBC1FBADFE

Not as bad as this though:

BWDcPv -> SHA-1 -> B843979D09FC28DAB71E149F2DECAFF14C0FFEE2


Online hash calculator

I have MD5 / SHA-1 generator in Tiikoni.com that will print out both hexadecimal result as well as bytes and bits of the resulting hash.




www.tiikoni.net/hashes/ Full page map Copyright © Pasi Laaksonen