HMACMD5 Klasse
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Berechnet einen hashbasierten Nachrichtenauthentifizierungscode (HMAC) mithilfe der MD5 Hashfunktion.
public ref class HMACMD5 : System::Security::Cryptography::HMAC
public class HMACMD5 : System.Security.Cryptography.HMAC
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public class HMACMD5 : System.Security.Cryptography.HMAC
[System.Runtime.InteropServices.ComVisible(true)]
public class HMACMD5 : System.Security.Cryptography.HMAC
type HMACMD5 = class
inherit HMAC
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
type HMACMD5 = class
inherit HMAC
[<System.Runtime.InteropServices.ComVisible(true)>]
type HMACMD5 = class
inherit HMAC
Public Class HMACMD5
Inherits HMAC
- Vererbung
- Attribute
Hinweise
HMACMD5 ist eine Art schlüsselbasierter Hashalgorithmus, der aus der Hashfunktion Message Digest Algorithm 5 (MD5) erstellt und als Hash-basierter Nachrichtenauthentifizierungscode (HMAC) verwendet wird. Der HMAC-Prozess kombiniert einen geheimen Schlüssel mit den Nachrichtendaten, hashet das Ergebnis mit der Hashfunktion, mischt diesen Hashwert erneut mit dem geheimen Schlüssel und wendet dann die Hashfunktion ein zweites Mal an. Der Ausgabehash beträgt 128 Bit länge.
Ein HMAC kann verwendet werden, um zu bestimmen, ob eine Nachricht, die über einen unsicheren Kanal gesendet wurde, manipuliert wurde, vorausgesetzt, der Absender und empfänger geben einen geheimen Schlüssel frei. Der Absender berechnet den Hashwert für die ursprünglichen Daten und sendet sowohl die ursprünglichen Daten als auch den Hashwert als einzelne Nachricht. Der Empfänger berechnet den Hashwert für die empfangene Nachricht neu und überprüft, ob der berechnete HMAC mit dem übertragenen HMAC übereinstimmt.
Jede Änderung der Daten oder des Hashwerts führt zu einem Konflikt, da Kenntnisse des geheimen Schlüssels erforderlich sind, um die Nachricht zu ändern und den richtigen Hashwert zu reproduzieren. Wenn die ursprünglichen und berechneten Hashwerte übereinstimmen, wird die Nachricht authentifiziert.
MD5 ist ein kryptografischer Hashalgorithmus, der bei RSA Laboratories entwickelt wurde. HMACMD5 akzeptiert Schlüssel jeder Größe und erzeugt eine Hashsequenz mit einer Länge von 128 Bit.
Aufgrund von Kollisionsproblemen mit MD5 empfiehlt Microsoft SHA-256.
Konstruktoren
| Name | Beschreibung |
|---|---|
| HMACMD5() |
Initialisiert eine neue Instanz der HMACMD5 Klasse mithilfe eines zufällig generierten Schlüssels. |
| HMACMD5(Byte[]) |
Initialisiert eine neue Instanz der HMACMD5 Klasse mithilfe des angegebenen Schlüssels. |
Felder
| Name | Beschreibung |
|---|---|
| HashSizeInBits |
Die vom HMAC MD5-Algorithmus erzeugte Hashgröße in Bits. |
| HashSizeInBytes |
Die vom HMAC MD5-Algorithmus erzeugte Hashgröße in Bytes. |
| HashSizeValue |
Stellt die Größe des berechneten Hashcodes in Bits dar. (Geerbt von HashAlgorithm) |
| HashValue |
Stellt den Wert des berechneten Hashcodes dar. (Geerbt von HashAlgorithm) |
| KeyValue |
Der Schlüssel, der im Hashalgorithmus verwendet werden soll. (Geerbt von KeyedHashAlgorithm) |
| State |
Stellt den Status der Hashberechnung dar. (Geerbt von HashAlgorithm) |
Eigenschaften
| Name | Beschreibung |
|---|---|
| BlockSizeValue |
Ruft die blockgröße ab, die im Hashwert verwendet werden soll, oder legt diese fest. (Geerbt von HMAC) |
| CanReuseTransform |
Ruft einen Wert ab, der angibt, ob die aktuelle Transformation wiederverwendet werden kann. (Geerbt von HashAlgorithm) |
| CanTransformMultipleBlocks |
Beim Überschreiben in einer abgeleiteten Klasse wird ein Wert abgerufen, der angibt, ob mehrere Blöcke transformiert werden können. (Geerbt von HashAlgorithm) |
| Hash |
Ruft den Wert des berechneten Hashcodes ab. (Geerbt von HashAlgorithm) |
| HashName |
Dient zum Abrufen oder Festlegen des Namens des Hashalgorithmus, der für das Hashing verwendet werden soll. (Geerbt von HMAC) |
| HashSize |
Ruft die Größe des berechneten HMAC in Bits ab. |
| HashSize |
Ruft die Größe des berechneten Hashcodes in Bits ab. (Geerbt von HashAlgorithm) |
| InputBlockSize |
Wenn sie in einer abgeleiteten Klasse überschrieben wird, ruft die Größe des Eingabeblocks ab. (Geerbt von HashAlgorithm) |
| Key |
Ruft den Schlüssel ab, der in der HMAC-Berechnung verwendet werden soll, oder legt diesen fest. |
| Key |
Ruft den Schlüssel ab, der in der HMAC-Berechnung verwendet werden soll, oder legt diesen fest. (Geerbt von HMAC) |
| OutputBlockSize |
Wenn sie in einer abgeleiteten Klasse überschrieben wird, ruft die Ausgabeblockgröße ab. (Geerbt von HashAlgorithm) |
Methoden
| Name | Beschreibung |
|---|---|
| Clear() |
Gibt alle Ressourcen frei, die von der HashAlgorithm-Klasse verwendet werden. (Geerbt von HashAlgorithm) |
| ComputeHash(Byte[], Int32, Int32) |
Berechnet den Hashwert für den angegebenen Bereich des angegebenen Bytearrays. (Geerbt von HashAlgorithm) |
| ComputeHash(Byte[]) |
Berechnet den Hashwert für das angegebene Bytearray. (Geerbt von HashAlgorithm) |
| ComputeHash(Stream) |
Berechnet den Hashwert für das angegebene Stream Objekt. (Geerbt von HashAlgorithm) |
| ComputeHashAsync(Stream, CancellationToken) |
Berechnet asynchron den Hashwert für das angegebene Stream Objekt. (Geerbt von HashAlgorithm) |
| Dispose() |
Gibt alle Ressourcen frei, die von der aktuellen Instanz der HashAlgorithm Klasse verwendet werden. (Geerbt von HashAlgorithm) |
| Dispose(Boolean) |
Gibt die nicht verwalteten Ressourcen frei, die von den HMACMD5 verwalteten Ressourcen verwendet werden, und gibt optional die verwalteten Ressourcen frei. |
| Dispose(Boolean) |
Gibt die nicht verwalteten Ressourcen frei, die von der HMAC Klasse verwendet werden, wenn eine Schlüsseländerung legitim ist und optional die verwalteten Ressourcen freigibt. (Geerbt von HMAC) |
| Equals(Object) |
Bestimmt, ob das angegebene Objekt dem aktuellen Objekt entspricht. (Geerbt von Object) |
| GetHashCode() |
Dient als Standardhashfunktion. (Geerbt von Object) |
| GetType() |
Ruft die Type der aktuellen Instanz ab. (Geerbt von Object) |
| HashCore(Byte[], Int32, Int32) |
Leitet Daten, die in das Objekt geschrieben wurden, an den HMAC-Algorithmus weiter, um den HMAC zu berechnen. |
| HashCore(Byte[], Int32, Int32) |
Wenn eine abgeleitete Klasse außer Kraft gesetzt wird, werden Daten, die in das Objekt geschrieben wurden, in den HMAC-Algorithmus weitergeleitet, um den HMAC-Wert zu berechnen. (Geerbt von HMAC) |
| HashCore(ReadOnlySpan<Byte>) |
Leitet Daten, die in das Objekt geschrieben wurden, an den HMAC-Algorithmus weiter, um den HMAC zu berechnen. |
| HashData(Byte[], Byte[]) |
Berechnet den HMAC von Daten mithilfe des MD5-Algorithmus. |
| HashData(Byte[], Stream) |
Berechnet den HMAC eines Datenstroms mithilfe des MD5-Algorithmus. |
| HashData(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, Span<Byte>) |
Berechnet den HMAC von Daten mithilfe des MD5-Algorithmus. |
| HashData(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>) |
Berechnet den HMAC von Daten mithilfe des MD5-Algorithmus. |
| HashData(ReadOnlySpan<Byte>, Stream, Span<Byte>) |
Berechnet den HMAC eines Datenstroms mithilfe des MD5-Algorithmus. |
| HashData(ReadOnlySpan<Byte>, Stream) |
Berechnet den HMAC eines Datenstroms mithilfe des MD5-Algorithmus. |
| HashDataAsync(Byte[], Stream, CancellationToken) |
Berechnet asynchron den HMAC eines Datenstroms mithilfe des MD5-Algorithmus. |
| HashDataAsync(ReadOnlyMemory<Byte>, Stream, CancellationToken) |
Berechnet asynchron den HMAC eines Datenstroms mithilfe des MD5-Algorithmus. |
| HashDataAsync(ReadOnlyMemory<Byte>, Stream, Memory<Byte>, CancellationToken) |
Berechnet asynchron den HMAC eines Datenstroms mithilfe des MD5-Algorithmus. |
| HashFinal() |
Schließt die HMAC-Berechnung ab, nachdem die letzten Daten vom Algorithmus verarbeitet wurden. |
| HashFinal() |
Wenn sie in einer abgeleiteten Klasse überschrieben wird, wird die HMAC-Berechnung abgeschlossen, nachdem die letzten Daten vom Algorithmus verarbeitet wurden. (Geerbt von HMAC) |
| Initialize() |
Setzt den Hashalgorithmus auf seinen Anfangszustand zurück. |
| Initialize() |
Initialisiert eine Instanz der Standardimplementierung von HMAC. (Geerbt von HMAC) |
| MemberwiseClone() |
Erstellt eine flache Kopie der aktuellen Object. (Geerbt von Object) |
| ToString() |
Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt. (Geerbt von Object) |
| TransformBlock(Byte[], Int32, Int32, Byte[], Int32) |
Berechnet den Hashwert für den angegebenen Bereich des Eingabebytearrays und kopiert den angegebenen Bereich des Eingabebytearrays in den angegebenen Bereich des Ausgabebytearrays. (Geerbt von HashAlgorithm) |
| TransformFinalBlock(Byte[], Int32, Int32) |
Berechnet den Hashwert für den angegebenen Bereich des angegebenen Bytearrays. (Geerbt von HashAlgorithm) |
| TryComputeHash(ReadOnlySpan<Byte>, Span<Byte>, Int32) |
Versucht, den Hashwert für das angegebene Bytearray zu berechnen. (Geerbt von HashAlgorithm) |
| TryHashData(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, Span<Byte>, Int32) |
Versucht, den HMAC von Daten mithilfe des MD5-Algorithmus zu berechnen. |
| TryHashFinal(Span<Byte>, Int32) |
Versuche, die HMAC-Berechnung abzuschließen, nachdem die letzten Daten vom HMAC-Algorithmus verarbeitet wurden. |
| Verify(Byte[], Byte[], Byte[]) |
Berechnet einen hashbasierten Nachrichtenauthentifizierungscode (HMAC) mithilfe der MD5 Hashfunktion. |
| Verify(Byte[], Stream, Byte[]) |
Berechnet einen hashbasierten Nachrichtenauthentifizierungscode (HMAC) mithilfe der MD5 Hashfunktion. |
| Verify(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, ReadOnlySpan<Byte>) |
Berechnet einen hashbasierten Nachrichtenauthentifizierungscode (HMAC) mithilfe der MD5 Hashfunktion. |
| Verify(ReadOnlySpan<Byte>, Stream, ReadOnlySpan<Byte>) |
Berechnet einen hashbasierten Nachrichtenauthentifizierungscode (HMAC) mithilfe der MD5 Hashfunktion. |
| VerifyAsync(Byte[], Stream, Byte[], CancellationToken) |
Berechnet einen hashbasierten Nachrichtenauthentifizierungscode (HMAC) mithilfe der MD5 Hashfunktion. |
| VerifyAsync(ReadOnlyMemory<Byte>, Stream, ReadOnlyMemory<Byte>, CancellationToken) |
Berechnet einen hashbasierten Nachrichtenauthentifizierungscode (HMAC) mithilfe der MD5 Hashfunktion. |
Explizite Schnittstellenimplementierungen
| Name | Beschreibung |
|---|---|
| IDisposable.Dispose() |
Gibt die nicht verwalteten Ressourcen frei, die von den HashAlgorithm verwalteten Ressourcen verwendet werden, und gibt optional die verwalteten Ressourcen frei. (Geerbt von HashAlgorithm) |