HMACSHA1 Klasa
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
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) |