MD5 Třída
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Představuje abstraktní třídu, ze které všechny implementace MD5 hash algoritmu dědí.
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
- Dědičnost
- Odvozené
- Atributy
Poznámky
Funkce hash mapují binární řetězce libovolné délky na malé binární řetězce s pevnou délkou. Kryptografická funkce hash má vlastnost, že je výpočetně neproveditelná pro nalezení dvou jedinečných vstupů, které hashují stejnou hodnotu; to znamená, že hodnoty hash dvou sad dat by se měly shodovat, pokud se odpovídající data shodují. Malé změny dat vedou k velkým a nepředvídatelným změnám hodnoty hash.
Velikost hodnoty hash pro MD5 algoritmus je 128 bitů.
Metody ComputeHashMD5 třídy vracejí hodnotu hash jako pole 16 bajtů. Všimněte si, že některé implementace MD5 vytvářejí šestnáctkovou šestnáctkovou hodnotu hash ve formátu 32 znaků. Chcete-li spolupracovat s těmito implementacemi, naformátujte návratovou ComputeHash hodnotu metod jako šestnáctkovou hodnotu.
Note
Vzhledem ke kolizím problémů s MD5/SHA-1 Microsoft doporučuje SHA-256 nebo SHA-512. Zvažte použití SHA256 třídy nebo SHA512 třídy místo MD5 třídy. Používejte MD5 pouze kvůli kompatibilitě se staršími aplikacemi a daty.
Konstruktory
| Name | Description |
|---|---|
| MD5() |
Inicializuje novou instanci .MD5 |
Pole
| Name | Description |
|---|---|
| HashSizeInBits |
Velikost hash vytvořená algoritmem MD5 v bitech. |
| HashSizeInBytes |
Velikost hash vytvořená algoritmem MD5 v bajtech. |
| HashSizeValue |
Představuje velikost vypočítaného hashového kódu v bitech. (Zděděno od HashAlgorithm) |
| HashValue |
Představuje hodnotu vypočítaného kódu hash. (Zděděno od HashAlgorithm) |
| State |
Představuje stav výpočtu hodnoty hash. (Zděděno od HashAlgorithm) |
Vlastnosti
| Name | Description |
|---|---|
| CanReuseTransform |
Získá hodnotu určující, zda aktuální transformace lze znovu použít. (Zděděno od HashAlgorithm) |
| CanTransformMultipleBlocks |
Při přepsání v odvozené třídě získá hodnotu označující, zda lze transformovat více bloků. (Zděděno od HashAlgorithm) |
| Hash |
Získá hodnotu vypočítaného hash kódu. (Zděděno od HashAlgorithm) |
| HashSize |
Získá velikost vypočítaného hash kódu v bitech. (Zděděno od HashAlgorithm) |
| InputBlockSize |
Při přepsání v odvozené třídě získá velikost vstupního bloku. (Zděděno od HashAlgorithm) |
| OutputBlockSize |
Při přepsání v odvozené třídě získá velikost výstupního bloku. (Zděděno od HashAlgorithm) |
Metody
| Name | Description |
|---|---|
| Clear() |
Uvolní všechny prostředky používané HashAlgorithm třídou. (Zděděno od HashAlgorithm) |
| ComputeHash(Byte[], Int32, Int32) |
Vypočítá hodnotu hash pro zadanou oblast zadaného pole bajtů. (Zděděno od HashAlgorithm) |
| ComputeHash(Byte[]) |
Vypočítá hodnotu hash pro zadané pole bajtů. (Zděděno od HashAlgorithm) |
| ComputeHash(Stream) |
Vypočítá hodnotu hash pro zadaný Stream objekt. (Zděděno od HashAlgorithm) |
| ComputeHashAsync(Stream, CancellationToken) |
Asynchronně vypočítá hodnotu hash pro zadaný Stream objekt. (Zděděno od HashAlgorithm) |
| Create() |
Vytvoří instanci výchozí implementace MD5 hash algoritmu. |
| Create(String) |
Zastaralé.
Vytvoří instanci zadané implementace MD5 algoritmu hash. |
| Dispose() |
Uvolní všechny prostředky používané aktuální instancí HashAlgorithm třídy. (Zděděno od HashAlgorithm) |
| Dispose(Boolean) |
Uvolní nespravované prostředky používané HashAlgorithm a volitelně uvolní spravované prostředky. (Zděděno od HashAlgorithm) |
| Equals(Object) |
Určuje, zda je zadaný objekt roven aktuálnímu objektu. (Zděděno od Object) |
| GetHashCode() |
Slouží jako výchozí funkce hash. (Zděděno od Object) |
| GetType() |
Získá Type aktuální instance. (Zděděno od Object) |
| HashCore(Byte[], Int32, Int32) |
Při přepsání v odvozené třídě směruje data zapsaná do objektu do algoritmu hash pro výpočet hodnoty hash. (Zděděno od HashAlgorithm) |
| HashCore(ReadOnlySpan<Byte>) |
Směruje data zapsaná do objektu do algoritmu hash pro výpočet hodnoty hash. (Zděděno od HashAlgorithm) |
| HashData(Byte[]) |
Vypočítá hodnotu hash dat pomocí algoritmu MD5. |
| HashData(ReadOnlySpan<Byte>, Span<Byte>) |
Vypočítá hodnotu hash dat pomocí algoritmu MD5. |
| HashData(ReadOnlySpan<Byte>) |
Vypočítá hodnotu hash dat pomocí algoritmu MD5. |
| HashData(Stream, Span<Byte>) |
Vypočítá hodnotu hash datového proudu pomocí algoritmu MD5. |
| HashData(Stream) |
Vypočítá hodnotu hash datového proudu pomocí algoritmu MD5. |
| HashDataAsync(Stream, CancellationToken) |
Asynchronně vypočítá hodnotu hash datového proudu pomocí algoritmu MD5. |
| HashDataAsync(Stream, Memory<Byte>, CancellationToken) |
Asynchronně vypočítá hodnotu hash datového proudu pomocí algoritmu MD5. |
| HashFinal() |
Při přepsání v odvozené třídě dokončí výpočet hash po posledním zpracování dat kryptografickým hashovacím algoritmem. (Zděděno od HashAlgorithm) |
| Initialize() |
Resetuje hashovací algoritmus do počátečního stavu. (Zděděno od HashAlgorithm) |
| MemberwiseClone() |
Vytvoří mělkou kopii aktuálního Object. (Zděděno od Object) |
| ToString() |
Vrátí řetězec, který představuje aktuální objekt. (Zděděno od Object) |
| TransformBlock(Byte[], Int32, Int32, Byte[], Int32) |
Vypočítá hodnotu hash pro zadanou oblast vstupního bajtového pole a zkopíruje zadanou oblast vstupního bajtového pole do zadané oblasti výstupního bajtového pole. (Zděděno od HashAlgorithm) |
| TransformFinalBlock(Byte[], Int32, Int32) |
Vypočítá hodnotu hash pro zadanou oblast zadaného pole bajtů. (Zděděno od HashAlgorithm) |
| TryComputeHash(ReadOnlySpan<Byte>, Span<Byte>, Int32) |
Pokusí se vypočítat hodnotu hash pro zadané bajtové pole. (Zděděno od HashAlgorithm) |
| TryHashData(ReadOnlySpan<Byte>, Span<Byte>, Int32) |
Pokusí se vypočítat hodnotu hash dat pomocí algoritmu MD5. |
| TryHashFinal(Span<Byte>, Int32) |
Pokusí se dokončit výpočet hash po zpracování posledních dat algoritmem hash. (Zděděno od HashAlgorithm) |
Explicitní implementace rozhraní
| Name | Description |
|---|---|
| IDisposable.Dispose() |
Uvolní nespravované prostředky používané HashAlgorithm a volitelně uvolní spravované prostředky. (Zděděno od HashAlgorithm) |