Udostępnij za pośrednictwem


HMACSHA1 Klasa

Definicja

Oblicza oparty na skrótach kod uwierzytelniania komunikatów (HMAC) przy użyciu funkcji skrótu SHA1 .

public ref class HMACSHA1 : System::Security::Cryptography::HMAC
public ref class HMACSHA1 : System::Security::Cryptography::KeyedHashAlgorithm
[System.Runtime.Versioning.UnsupportedOSPlatform("browser")]
public class HMACSHA1 : System.Security.Cryptography.HMAC
public class HMACSHA1 : System.Security.Cryptography.HMAC
public class HMACSHA1 : System.Security.Cryptography.KeyedHashAlgorithm
[System.Runtime.InteropServices.ComVisible(true)]
public class HMACSHA1 : System.Security.Cryptography.HMAC
[<System.Runtime.Versioning.UnsupportedOSPlatform("browser")>]
type HMACSHA1 = class
    inherit HMAC
type HMACSHA1 = class
    inherit HMAC
type HMACSHA1 = class
    inherit KeyedHashAlgorithm
[<System.Runtime.InteropServices.ComVisible(true)>]
type HMACSHA1 = class
    inherit HMAC
Public Class HMACSHA1
Inherits HMAC
Public Class HMACSHA1
Inherits KeyedHashAlgorithm
Dziedziczenie
Dziedziczenie
Atrybuty

Uwagi

HMACSHA1 jest typem algorytmu skrótu klucza, który jest tworzony z funkcji skrótu SHA1 i używany jako HMAC lub kod uwierzytelniania komunikatów oparty na skrótach. Proces HMAC łączy klucz tajny z danymi komunikatu, skróty wyniku z funkcją skrótu, miesza tę wartość skrótu z kluczem tajnym ponownie, a następnie stosuje funkcję skrótu po raz drugi. Skrót danych wyjściowych ma długość 160 bitów.

HMAC może służyć do określenia, czy komunikat wysłany przez niezabezpieczony kanał został naruszony, pod warunkiem, że nadawca i odbiorca współużytkują klucz tajny. Nadawca oblicza wartość skrótu dla oryginalnych danych i wysyła zarówno oryginalne dane, jak i wartość skrótu jako pojedynczy komunikat. Odbiorca ponownie oblicza wartość skrótu odebranego komunikatu i sprawdza, czy obliczony HMAC jest zgodny z przesłanym elementem HMAC.

Każda zmiana danych lub wartości skrótu powoduje niezgodność, ponieważ znajomość klucza tajnego jest wymagana do zmiany komunikatu i odtworzenia poprawnej wartości skrótu. W związku z tym, jeśli oryginalne i obliczone wartości skrótu są zgodne, komunikat jest uwierzytelniany.

Algorytm SHA-1 (Secure Hash Algorithm, nazywany również SHS, Secure Hash Standard) to algorytm skrótu kryptograficznego opublikowany przez rząd Stanów Zjednoczonych. Tworzy 160-bitową wartość skrótu z dowolnego ciągu długości.

HMACSHA1 akceptuje klucze o dowolnym rozmiarze i tworzy sekwencję skrótów o długości 160 bitów.

Ze względu na problemy z kolizją z algorytmem SHA1 firma Microsoft zaleca algorytm SHA256.

Konstruktory

HMACSHA1()

Inicjuje HMACSHA1 nowe wystąpienie klasy z losowo wygenerowanym kluczem.

HMACSHA1(Byte[])

Inicjuje HMACSHA1 nowe wystąpienie klasy z określonymi danymi klucza.

HMACSHA1(Byte[], Boolean)
Przestarzałe.

Inicjuje nowe wystąpienie HMACSHA1 klasy z określonymi danymi klucza i wartością określającą, czy używać zarządzanej wersji algorytmu SHA1.

Pola

HashSizeInBits

Rozmiar skrótu generowany przez algorytm HMAC SHA1 w bitach.

HashSizeInBytes

Rozmiar skrótu generowany przez algorytm SHA1 HMAC w bajtach.

HashSizeValue

Reprezentuje rozmiar w bitach obliczonego kodu skrótu.

(Odziedziczone po HashAlgorithm)
HashValue

Reprezentuje wartość obliczonego kodu skrótu.

(Odziedziczone po HashAlgorithm)
KeyValue

Klucz do użycia w algorytmie skrótu.

(Odziedziczone po KeyedHashAlgorithm)
State

Reprezentuje stan obliczeń skrótu.

(Odziedziczone po HashAlgorithm)

Właściwości

BlockSizeValue

Pobiera lub ustawia rozmiar bloku do użycia w wartości skrótu.

(Odziedziczone po HMAC)
CanReuseTransform

Pobiera wartość wskazującą, czy można ponownie użyć bieżącej transformacji.

(Odziedziczone po HashAlgorithm)
CanTransformMultipleBlocks

Po zastąpieniu w klasie pochodnej pobiera wartość wskazującą, czy można przekształcić wiele bloków.

(Odziedziczone po HashAlgorithm)
Hash

Pobiera wartość obliczonego kodu skrótu.

(Odziedziczone po HashAlgorithm)
HashName

Pobiera lub ustawia nazwę algorytmu wyznaczania wartości skrótu do użycia na potrzeby tworzenia skrótów.

HashName

Pobiera lub ustawia nazwę algorytmu wyznaczania wartości skrótu do użycia na potrzeby tworzenia skrótów.

(Odziedziczone po HMAC)
HashSize

Pobiera rozmiar w bitach obliczonego HMAC.

HashSize

Pobiera rozmiar w bitach obliczonego kodu skrótu.

(Odziedziczone po HashAlgorithm)
InputBlockSize

Po przesłonięciu w klasie pochodnej pobiera rozmiar bloku wejściowego.

(Odziedziczone po HashAlgorithm)
Key

Pobiera lub ustawia klucz do użycia w algorytmie wyznaczania wartości skrótu.

Key

Pobiera lub ustawia klucz do użycia w obliczeniach HMAC.

(Odziedziczone po HMAC)
OutputBlockSize

Po zastąpieniu w klasie pochodnej pobiera rozmiar bloku wyjściowego.

(Odziedziczone po HashAlgorithm)

Metody

Clear()

Zwalnia wszystkie zasoby używane przez klasę HashAlgorithm .

(Odziedziczone po HashAlgorithm)
ComputeHash(Byte[])

Oblicza wartość skrótu dla określonej tablicy bajtów.

(Odziedziczone po HashAlgorithm)
ComputeHash(Byte[], Int32, Int32)

Oblicza wartość skrótu dla określonego regionu określonej tablicy bajtów.

(Odziedziczone po HashAlgorithm)
ComputeHash(Stream)

Oblicza wartość skrótu dla określonego Stream obiektu.

(Odziedziczone po HashAlgorithm)
ComputeHashAsync(Stream, CancellationToken)

Asynchronicznie oblicza wartość skrótu dla określonego Stream obiektu.

(Odziedziczone po HashAlgorithm)
Dispose()

Zwalnia wszystkie zasoby używane przez bieżące wystąpienie klasy HashAlgorithm.

(Odziedziczone po HashAlgorithm)
Dispose(Boolean)

Ten element członkowski przesłania element Dispose(Boolean), a dokładniejsza dokumentacja może być dostępna w tym temacie.

Zwalnia zasoby niezarządzane używane przez element KeyedHashAlgorithm i opcjonalnie zwalnia zasoby zarządzane.

Dispose(Boolean)

Zwalnia niezarządzane zasoby używane przez klasę HMAC , gdy zmiana klucza jest uzasadniona i opcjonalnie zwalnia zarządzane zasoby.

(Odziedziczone po HMAC)
Equals(Object)

Określa, czy dany obiekt jest taki sam, jak bieżący obiekt.

(Odziedziczone po Object)
Finalize()

Umożliwia obiektowi próbę zwolnienia zasobów i wykonania innych operacji oczyszczania przed odzyskaniem przez odzyskiwanie pamięci.

GetHashCode()

Służy jako domyślna funkcja skrótu.

(Odziedziczone po Object)
GetType()

Type Pobiera wartość bieżącego wystąpienia.

(Odziedziczone po Object)
HashCore(Byte[], Int32, Int32)

Kieruje dane zapisywane do obiektu w algorytmie wyznaczania wartości skrótu SHA1 na potrzeby obliczania opartego na skrótach kodu uwierzytelniania komunikatów (HMAC).

HashCore(Byte[], Int32, Int32)

Po przesłonięciu w klasie pochodnej dane są przesyłane do obiektu do algorytmu HMAC do obliczania wartości HMAC.

(Odziedziczone po HMAC)
HashCore(ReadOnlySpan<Byte>)

Kieruje dane zapisywane do obiektu w algorytmie HMAC do obliczania HMAC.

HashCore(ReadOnlySpan<Byte>)

Kieruje dane zapisywane do obiektu w algorytmie HMAC do obliczania HMAC.

(Odziedziczone po HMAC)
HashCore(ReadOnlySpan<Byte>)

Kieruje dane zapisywane do obiektu w algorytmie skrótu na potrzeby obliczania skrótu.

(Odziedziczone po HashAlgorithm)
HashData(Byte[], Byte[])

Oblicza HMAC danych przy użyciu algorytmu SHA1.

HashData(Byte[], Stream)

Oblicza HMAC strumienia przy użyciu algorytmu SHA1.

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

Oblicza HMAC danych przy użyciu algorytmu SHA1.

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

Oblicza HMAC danych przy użyciu algorytmu SHA1.

HashData(ReadOnlySpan<Byte>, Stream)

Oblicza HMAC strumienia przy użyciu algorytmu SHA1.

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

Oblicza HMAC strumienia przy użyciu algorytmu SHA1.

HashDataAsync(Byte[], Stream, CancellationToken)

Asynchronicznie oblicza HMAC strumienia przy użyciu algorytmu SHA1.

HashDataAsync(ReadOnlyMemory<Byte>, Stream, CancellationToken)

Asynchronicznie oblicza HMAC strumienia przy użyciu algorytmu SHA1.

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

Asynchronicznie oblicza HMAC strumienia przy użyciu algorytmu SHA1.

HashFinal()

Finalizuje obliczenia HMAC po przetworzeniu ostatnich danych przez algorytm.

HashFinal()

Po zastąpieniu w klasie pochodnej finalizuje obliczenia HMAC po przetworzeniu ostatnich danych przez algorytm.

(Odziedziczone po HMAC)
Initialize()

Resetuje algorytm skrótu do stanu początkowego.

Initialize()

Inicjuje wystąpienie domyślnej implementacji elementu HMAC.

(Odziedziczone po HMAC)
MemberwiseClone()

Tworzy płytkią kopię bieżącego Objectelementu .

(Odziedziczone po Object)
ToString()

Zwraca ciąg reprezentujący bieżący obiekt.

(Odziedziczone po Object)
TransformBlock(Byte[], Int32, Int32, Byte[], Int32)

Oblicza wartość skrótu dla określonego regionu tablicy bajtów wejściowych i kopiuje określony region tablicy bajtów wejściowych do określonego regionu tablicy bajtów wyjściowych.

(Odziedziczone po HashAlgorithm)
TransformFinalBlock(Byte[], Int32, Int32)

Oblicza wartość skrótu dla określonego regionu określonej tablicy bajtów.

(Odziedziczone po HashAlgorithm)
TryComputeHash(ReadOnlySpan<Byte>, Span<Byte>, Int32)

Próbuje obliczyć wartość skrótu dla określonej tablicy bajtów.

(Odziedziczone po HashAlgorithm)
TryHashData(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, Span<Byte>, Int32)

Próbuje obliczyć HMAC danych przy użyciu algorytmu SHA1.

TryHashFinal(Span<Byte>, Int32)

Próbuje sfinalizować obliczenia HMAC po przetworzeniu ostatnich danych przez algorytm HMAC.

TryHashFinal(Span<Byte>, Int32)

Próbuje sfinalizować obliczenia HMAC po przetworzeniu ostatnich danych przez algorytm HMAC.

(Odziedziczone po HMAC)
TryHashFinal(Span<Byte>, Int32)

Próbuje sfinalizować obliczanie skrótu po przetworzeniu ostatnich danych przez algorytm skrótu.

(Odziedziczone po HashAlgorithm)

Jawne implementacje interfejsu

IDisposable.Dispose()

Zwalnia zasoby niezarządzane używane przez element HashAlgorithm i opcjonalnie zwalnia zasoby zarządzane.

(Odziedziczone po HashAlgorithm)

Dotyczy

Zobacz też