MD5 Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Представляет абстрактный класс, от которого наследуются все реализации хэш-алгоритма MD5 .
public ref class MD5 abstract : System::Security::Cryptography::HashAlgorithm
public abstract class MD5 : System.Security.Cryptography.HashAlgorithm
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public abstract class MD5 : System.Security.Cryptography.HashAlgorithm
[System.Runtime.InteropServices.ComVisible(true)]
public abstract class MD5 : System.Security.Cryptography.HashAlgorithm
type MD5 = class
inherit HashAlgorithm
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
type MD5 = class
inherit HashAlgorithm
[<System.Runtime.InteropServices.ComVisible(true)>]
type MD5 = class
inherit HashAlgorithm
Public MustInherit Class MD5
Inherits HashAlgorithm
- Наследование
- Производный
- Атрибуты
Комментарии
Хэш-функции сопоставляют двоичные строки произвольной длины с небольшими двоичными строками фиксированной длины. Криптографическая хэш-функция имеет свойство, которое оно вычисляет, чтобы найти два разных входных данных, хэшированных в одно и то же значение; То есть хэши двух наборов данных должны совпадать, если соответствующие данные также совпадают. Небольшие изменения данных приводят к большим непредсказуемым изменениям хэша.
Хэш-размер алгоритма MD5 составляет 128 бит.
Методы ComputeHashMD5 класса возвращают хэш в виде массива 16 байт. Обратите внимание, что некоторые реализации MD5 создают 32-символьный хэш с шестнадцатеричным форматом. Чтобы взаимодействовать с такими реализациями, отформатируйте возвращаемое значение ComputeHash методов в виде шестнадцатеричного значения.
Note
Из-за проблем с столкновением с MD5/SHA-1 Microsoft рекомендует SHA-256 или SHA-512. Рекомендуется использовать SHA256 класс или SHA512 класс вместо MD5 класса. Используйте MD5 только для совместимости с устаревшими приложениями и данными.
Конструкторы
| Имя | Описание |
|---|---|
| MD5() |
Инициализирует новый экземпляр .MD5 |
Поля
| Имя | Описание |
|---|---|
| HashSizeInBits |
Хэш-размер, созданный алгоритмом MD5, в битах. |
| HashSizeInBytes |
Хэш-размер, созданный алгоритмом MD5 в байтах. |
| HashSizeValue |
Представляет размер в битах вычисляемого хэш-кода. (Унаследовано от HashAlgorithm) |
| HashValue |
Представляет значение вычисляемого хэш-кода. (Унаследовано от HashAlgorithm) |
| State |
Представляет состояние хэш-вычисления. (Унаследовано от HashAlgorithm) |
Свойства
| Имя | Описание |
|---|---|
| CanReuseTransform |
Возвращает значение, указывающее, можно ли повторно использовать текущее преобразование. (Унаследовано от HashAlgorithm) |
| CanTransformMultipleBlocks |
При переопределении в производном классе получает значение, указывающее, можно ли преобразовать несколько блоков. (Унаследовано от HashAlgorithm) |
| Hash |
Возвращает значение вычисляемого хэш-кода. (Унаследовано от HashAlgorithm) |
| HashSize |
Возвращает размер в битах вычисляемого хэш-кода. (Унаследовано от HashAlgorithm) |
| InputBlockSize |
При переопределении в производном классе получает размер входного блока. (Унаследовано от HashAlgorithm) |
| OutputBlockSize |
При переопределении в производном классе получает размер выходного блока. (Унаследовано от HashAlgorithm) |
Методы
| Имя | Описание |
|---|---|
| Clear() |
Освобождает все ресурсы, используемые классом HashAlgorithm . (Унаследовано от HashAlgorithm) |
| ComputeHash(Byte[], Int32, Int32) |
Вычисляет хэш-значение для указанного региона указанного массива байтов. (Унаследовано от HashAlgorithm) |
| ComputeHash(Byte[]) |
Вычисляет хэш-значение для указанного массива байтов. (Унаследовано от HashAlgorithm) |
| ComputeHash(Stream) |
Вычисляет хэш-значение для указанного Stream объекта. (Унаследовано от HashAlgorithm) |
| ComputeHashAsync(Stream, CancellationToken) |
Асинхронно вычисляет хэш-значение для указанного Stream объекта. (Унаследовано от HashAlgorithm) |
| Create() |
Создает экземпляр реализации хэш-алгоритма MD5 по умолчанию. |
| Create(String) |
Устаревшие..
Создает экземпляр указанной реализации хэш-алгоритма MD5 . |
| Dispose() |
Освобождает все ресурсы, используемые текущим экземпляром класса HashAlgorithm. (Унаследовано от HashAlgorithm) |
| Dispose(Boolean) |
Освобождает неуправляемые ресурсы, используемые HashAlgorithm и при необходимости освобождает управляемые ресурсы. (Унаследовано от HashAlgorithm) |
| Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
| GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
| GetType() |
Возвращает Type текущего экземпляра. (Унаследовано от Object) |
| HashCore(Byte[], Int32, Int32) |
При переопределении в производном классе направляет данные, записанные в объект, в хэш-алгоритм для вычисления хэша. (Унаследовано от HashAlgorithm) |
| HashCore(ReadOnlySpan<Byte>) |
Направляет данные, записанные в объект, в хэш-алгоритм для вычисления хэша. (Унаследовано от HashAlgorithm) |
| HashData(Byte[]) |
Вычисляет хэш данных с помощью алгоритма MD5. |
| HashData(ReadOnlySpan<Byte>, Span<Byte>) |
Вычисляет хэш данных с помощью алгоритма MD5. |
| HashData(ReadOnlySpan<Byte>) |
Вычисляет хэш данных с помощью алгоритма MD5. |
| HashData(Stream, Span<Byte>) |
Вычисляет хэш потока с помощью алгоритма MD5. |
| HashData(Stream) |
Вычисляет хэш потока с помощью алгоритма MD5. |
| HashDataAsync(Stream, CancellationToken) |
Асинхронно вычисляет хэш потока с помощью алгоритма MD5. |
| HashDataAsync(Stream, Memory<Byte>, CancellationToken) |
Асинхронно вычисляет хэш потока с помощью алгоритма MD5. |
| HashFinal() |
При переопределении в производном классе завершает вычисление хэша после обработки последних данных алгоритмом криптографического хэша. (Унаследовано от HashAlgorithm) |
| Initialize() |
Сбрасывает хэш-алгоритм в исходное состояние. (Унаследовано от HashAlgorithm) |
| MemberwiseClone() |
Создает неглубокую копию текущей Object. (Унаследовано от Object) |
| ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |
| TransformBlock(Byte[], Int32, Int32, Byte[], Int32) |
Вычисляет хэш-значение для указанного региона входного массива байтов и копирует указанный регион входного массива байтов в указанный регион выходного массива байтов. (Унаследовано от HashAlgorithm) |
| TransformFinalBlock(Byte[], Int32, Int32) |
Вычисляет хэш-значение для указанного региона указанного массива байтов. (Унаследовано от HashAlgorithm) |
| TryComputeHash(ReadOnlySpan<Byte>, Span<Byte>, Int32) |
Пытается вычислить хэш-значение для указанного массива байтов. (Унаследовано от HashAlgorithm) |
| TryHashData(ReadOnlySpan<Byte>, Span<Byte>, Int32) |
Пытается вычислить хэш данных с помощью алгоритма MD5. |
| TryHashFinal(Span<Byte>, Int32) |
Пытается завершить вычисление хэша после обработки последних данных алгоритмом хэша. (Унаследовано от HashAlgorithm) |
Явные реализации интерфейса
| Имя | Описание |
|---|---|
| IDisposable.Dispose() |
Освобождает неуправляемые ресурсы, используемые HashAlgorithm и при необходимости освобождает управляемые ресурсы. (Унаследовано от HashAlgorithm) |