Share via


HMACMD5 Třída

Definice

Vypočítá kód HMAC (Hash-based Message Authentication Code) pomocí MD5 hash funkce.

public ref class HMACMD5 : System::Security::Cryptography::HMAC
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public class HMACMD5 : System.Security.Cryptography.HMAC
public class HMACMD5 : System.Security.Cryptography.HMAC
[System.Runtime.InteropServices.ComVisible(true)]
public class HMACMD5 : System.Security.Cryptography.HMAC
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
type HMACMD5 = class
    inherit HMAC
type HMACMD5 = class
    inherit HMAC
[<System.Runtime.InteropServices.ComVisible(true)>]
type HMACMD5 = class
    inherit HMAC
Public Class HMACMD5
Inherits HMAC
Dědičnost
Atributy

Poznámky

HMACMD5 je typ klíčového hash algoritmu, který je vytvořen z funkce hash algoritmu MD5 (Message Digest Algorithm 5) a používá se jako kód HMAC (Hash-based Message Authentication Code). Proces HMAC promíchá tajný klíč s daty zprávy, výsledek hashuje pomocí hashovací funkce, tuto hodnotu hash znovu promíchá s tajným klíčem a pak použije hashovací funkci podruhé. Výstupní hodnota hash má délku 128 bitů.

Pomocí HMAC můžete určit, jestli byla zpráva poslaná přes nezabezpečený kanál manipulována za předpokladu, že odesílatel a příjemce sdílejí tajný klíč. Odesílatel vypočítá hodnotu hash pro původní data a jako jednu zprávu odešle původní data i hodnotu hash. Příjemce přepočítá hodnotu hash přijaté zprávy a zkontroluje, jestli vypočítaný HMAC odpovídá přenášené HMAC.

Jakákoli změna dat nebo hodnoty hash způsobí neshodu, protože ke změně zprávy a reprodukování správné hodnoty hash se vyžaduje znalost tajného klíče. Pokud se tedy původní a vypočítaná hodnota hash shodují, zpráva se ověří.

MD5 je kryptografický hashovací algoritmus vyvinutý v RSA Laboratories. HMACMD5 přijímá klíče libovolné velikosti a vytváří sekvenci hodnot hash o délce 128 bitů.

Kvůli kolizím s MD5 microsoft doporučuje SHA256.

Konstruktory

HMACMD5()

Inicializuje novou instanci HMACMD5 třídy pomocí náhodně vygenerovaného klíče.

HMACMD5(Byte[])

Inicializuje novou instanci HMACMD5 třídy pomocí zadaného klíče.

Pole

HashSizeInBits

Velikost hodnoty hash vytvořená algoritmem HMAC MD5 v bitech.

HashSizeInBytes

Velikost hodnoty hash vytvořená algoritmem HMAC MD5 v bajtech.

HashSizeValue

Představuje velikost počítaného hash kódu v bitech.

(Zděděno od HashAlgorithm)
HashValue

Představuje hodnotu vypočítaného hashového kódu.

(Zděděno od HashAlgorithm)
KeyValue

Klíč, který se má použít v hashovacím algoritmu.

(Zděděno od KeyedHashAlgorithm)
State

Představuje stav výpočtu hodnoty hash.

(Zděděno od HashAlgorithm)

Vlastnosti

BlockSizeValue

Získá nebo nastaví velikost bloku, která se má použít v hodnotě hash.

(Zděděno od HMAC)
CanReuseTransform

Získá hodnotu označ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)
HashName

Získá nebo nastaví název hash algoritmu použít pro hashování.

(Zděděno od HMAC)
HashSize

Získá velikost počítaného HMAC v bitech.

HashSize

Získá velikost počítaného hashového 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)
Key

Získá nebo nastaví klíč pro použití ve výpočtu HMAC.

Key

Získá nebo nastaví klíč pro použití ve výpočtu HMAC.

(Zděděno od HMAC)
OutputBlockSize

Při přepsání v odvozené třídě získá velikost výstupního bloku.

(Zděděno od HashAlgorithm)

Metody

Clear()

Uvolní všechny prostředky používané HashAlgorithm třídou.

(Zděděno od HashAlgorithm)
ComputeHash(Byte[])

Vypočítá hodnotu hash pro zadané pole bajtů.

(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(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)
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é HMACMD5 nástrojem a volitelně uvolní spravované prostředky.

Dispose(Boolean)

Uvolní nespravované prostředky používané třídou, HMAC pokud je změna klíče legitimní a volitelně uvolní spravované prostředky.

(Zděděno od HMAC)
Equals(Object)

Určí, zda se zadaný objekt rovná aktuálnímu objektu.

(Zděděno od Object)
GetHashCode()

Slouží jako výchozí hashovací funkce.

(Zděděno od Object)
GetType()

Získá aktuální Type instanci.

(Zděděno od Object)
HashCore(Byte[], Int32, Int32)

Směruje data zapsaná do objektu do algoritmu HMAC pro výpočet HMAC.

HashCore(Byte[], Int32, Int32)

Při přepsání v odvozené třídě směruje data zapsaná do objektu do algoritmu HMAC pro výpočet hodnoty HMAC.

(Zděděno od HMAC)
HashCore(ReadOnlySpan<Byte>)

Směruje data zapsaná do objektu do algoritmu HMAC pro výpočet HMAC.

HashCore(ReadOnlySpan<Byte>)

Směruje data zapsaná do objektu do algoritmu HMAC pro výpočet HMAC.

(Zděděno od HMAC)
HashData(Byte[], Byte[])

Vypočítá HMAC dat pomocí algoritmu MD5.

HashData(Byte[], Stream)

Vypočítá HMAC streamu pomocí algoritmu MD5.

HashData(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>)

Vypočítá HMAC dat pomocí algoritmu MD5.

HashData(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, Span<Byte>)

Vypočítá HMAC dat pomocí algoritmu MD5.

HashData(ReadOnlySpan<Byte>, Stream)

Vypočítá HMAC streamu pomocí algoritmu MD5.

HashData(ReadOnlySpan<Byte>, Stream, Span<Byte>)

Vypočítá HMAC streamu pomocí algoritmu MD5.

HashDataAsync(Byte[], Stream, CancellationToken)

Asynchronně vypočítá HMAC streamu pomocí algoritmu MD5.

HashDataAsync(ReadOnlyMemory<Byte>, Stream, CancellationToken)

Asynchronně vypočítá HMAC streamu pomocí algoritmu MD5.

HashDataAsync(ReadOnlyMemory<Byte>, Stream, Memory<Byte>, CancellationToken)

Asynchronně vypočítá HMAC streamu pomocí algoritmu MD5.

HashFinal()

Dokončí výpočet HMAC po zpracování posledních dat algoritmem.

HashFinal()

Při přepsání v odvozené třídě dokončí výpočet HMAC poté, co algoritmus zpracuje poslední data.

(Zděděno od HMAC)
Initialize()

Resetuje hashovací algoritmus do počátečního stavu.

Initialize()

Inicializuje instanci výchozí implementace .HMAC

(Zděděno od HMAC)
MemberwiseClone()

Vytvoří mělkou kopii aktuálního Objectsouboru .

(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 pole bajtů a zkopíruje zadanou oblast vstupního pole bajtů do zadané oblasti výstupního pole bajtů.

(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é pole bajtů.

(Zděděno od HashAlgorithm)
TryHashData(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, Span<Byte>, Int32)

Pokusí se vypočítat HMAC dat pomocí algoritmu MD5.

TryHashFinal(Span<Byte>, Int32)

Pokusí se dokončit výpočet HMAC poté, co algoritmus HMAC zpracuje poslední data.

TryHashFinal(Span<Byte>, Int32)

Pokusí se dokončit výpočet HMAC poté, co algoritmus HMAC zpracuje poslední data.

(Zděděno od HMAC)

Explicitní implementace rozhraní

IDisposable.Dispose()

Uvolní nespravované prostředky používané HashAlgorithm nástrojem a volitelně uvolní spravované prostředky.

(Zděděno od HashAlgorithm)

Platí pro

Viz také