public static void Main()
var firstHash = "3cf82c9dbfb8ffeb34f57ff2092f3ed8";
var secondHash = "16ef19cbe1cb24ee55b2863c7d94d078";
var binFirst = hex2binary(firstHash);
var binSecond = hex2binary(secondHash);
for (int i = 0; i < binFirst.Length; i++)
if (binFirst[i] != binSecond[i])
var percentDiff = (double)diffCount/(double)binFirst.Length*100;
Console.WriteLine($"Liczba bitów różniąca wyniki:{diffCount} tj {percentDiff:N0} % z {binFirst.Length}");
private static string hex2binary(string hexvalue)
foreach (char c in hexvalue)
binaryval += Convert.ToString(Convert.ToInt32(c.ToString(), 16), 2).PadLeft(4, '0');