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 wyznaczania wartości skrótu klucza, który jest tworzony z funkcji skrótu SHA1 i używany jako kod uwierzytelniania komunikatów oparty na skrótach lub HMAC. Proces HMAC łączy klucz tajny z danymi komunikatu, skróty wyniku za pomocą funkcji 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ść skrótu powoduje niezgodność, ponieważ wymagana jest znajomość klucza tajnego w celu 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 zostanie uwierzytelniony.

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

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

Ze względu na problemy z kolizją z sha1 Microsoft zaleca 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 HMAC SHA1 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żącego przekształcenia.

(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 wyznaczania wartości skrótu.

HashName

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

(Odziedziczone po HMAC)
HashSize

Pobiera rozmiar obliczonego HMAC w bitach.

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 przesłonięciu 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 bieżące wystąpienie.

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

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

HashCore(Byte[], Int32, Int32)

Po przesłonięciu w klasie pochodnej dane są zapisywane w obiekcie w algorytmie HMAC do obliczania wartości HMAC.

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

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

HashCore(ReadOnlySpan<Byte>)

Kieruje dane zapisywane do obiektu w algorytmie HMAC do przetwarzania 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 wartość HMAC danych przy użyciu algorytmu SHA1.

HashData(Byte[], Stream)

Oblicza HMAC strumienia przy użyciu algorytmu SHA1.

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

Oblicza wartość HMAC danych przy użyciu algorytmu SHA1.

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

Oblicza wartość 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()

Gdy zastąpisz klasę pochodną, 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 .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ć obliczenia 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ż