Создаем портфолио за 1 месяц
К концу месяца: 4 классных проекта в вашем портфолио! Стоимость: 100$. Подробности...
1382 of 1492 menu
◀ ▶

SHA256

Удобнее вызывать HashData без экземпляра. Через Create и ComputeHash результат тот же. Большие данные по кускам - IncrementalHash.

Синтаксис

byte[] hash = SHA256.HashData(data);

Пример

Давайте посчитать хеш строки 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(SHA256.HashData(data)); Console.WriteLine(res); } }

Результат выполнения кода:

36BBE50ED96841D10443BCB670D6554F0A34B761BE67EC9C4A8AD2C0C44CA42C

Пример

Давайте узнать длину массива хеша:

using System; using System.Security.Cryptography; using System.Text; class Program { static void Main() { byte[] data = Encoding.UTF8.GetBytes("abcde"); int res = SHA256.HashData(data).Length; Console.WriteLine(res); } }

Результат выполнения кода:

32

Пример

Давайте сравнить HashData и ComputeHash:

using System; using System.Security.Cryptography; using System.Text; class Program { static void Main() { byte[] data = Encoding.UTF8.GetBytes("abcde"); string fromStatic = Convert.ToHexString(SHA256.HashData(data)); string fromInstance; using (SHA256 sha = SHA256.Create()) { fromInstance = Convert.ToHexString(sha.ComputeHash(data)); } bool res = fromStatic == fromInstance; Console.WriteLine(res); } }

Результат выполнения кода:

True

Смотрите также

← →
↑
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить