MD5
Для паролей MD5 не подходит -
урок показывает старый алгоритм.
Для новых задач берите
SHA256
или
HMACSHA256
с ключом.
Синтаксис
byte[] hash = MD5.HashData(data);
Пример
Давайте посчитать MD5 строки
abcde в UTF-8:
using System;
using System.Security.Cryptography;
using System.Text;
class Program
{
static void Main()
{
byte[] data = Encoding.UTF8.GetBytes("abcde");
string res = Convert.ToHexString(MD5.HashData(data));
Console.WriteLine(res);
}
}
Результат выполнения кода:
AB56B4D92B40713ACC5AF89985D4B786
Пример
Давайте узнать длину массива хеша:
using System;
using System.Security.Cryptography;
using System.Text;
class Program
{
static void Main()
{
byte[] data = Encoding.UTF8.GetBytes("abcde");
int res = MD5.HashData(data).Length;
Console.WriteLine(res);
}
}
Результат выполнения кода:
16
Пример
Давайте сравнить длину MD5 и SHA-256:
using System;
using System.Security.Cryptography;
using System.Text;
class Program
{
static void Main()
{
byte[] data = Encoding.UTF8.GetBytes("abcde");
int md5 = MD5.HashData(data).Length;
int sha256 = SHA256.HashData(data).Length;
bool res = md5 < sha256;
Console.WriteLine(res);
}
}
Результат выполнения кода:
True
Смотрите также
-
SHA256,
современный хеш -
SHA512,
SHA-512 -
HMACSHA256,
хеш с ключом -
IncrementalHash,
по частям