AsymmetricAlgorithm.ImportEncryptedPkcs8PrivateKey Metoda

Definicja

Przeciążenia

ImportEncryptedPkcs8PrivateKey(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, Int32)

Po zastąpieniu w klasie pochodnej importuje publiczny/prywatny kluczpair z struktury PKCS#8 EncryptedPrivateKeyInfo po odszyfrowaniu przy użyciu hasła opartego na bajtach, zastępując klucze dla tego obiektu.

ImportEncryptedPkcs8PrivateKey(ReadOnlySpan<Char>, ReadOnlySpan<Byte>, Int32)

Po zastąpieniu w klasie pochodnej importuje publiczny/prywatny kluczpair z struktury PKCS#8 EncryptedPrivateKeyInfo po odszyfrowaniu przy użyciu hasła opartego na znakach, zastępując klucze dla tego obiektu.

ImportEncryptedPkcs8PrivateKey(ReadOnlySpan<Byte>, ReadOnlySpan<Byte>, Int32)

Źródło:
AsymmetricAlgorithm.cs
Źródło:
AsymmetricAlgorithm.cs
Źródło:
AsymmetricAlgorithm.cs

Po zastąpieniu w klasie pochodnej importuje publiczny/prywatny kluczpair z struktury PKCS#8 EncryptedPrivateKeyInfo po odszyfrowaniu przy użyciu hasła opartego na bajtach, zastępując klucze dla tego obiektu.

public:
 virtual void ImportEncryptedPkcs8PrivateKey(ReadOnlySpan<System::Byte> passwordBytes, ReadOnlySpan<System::Byte> source, [Runtime::InteropServices::Out] int % bytesRead);
public virtual void ImportEncryptedPkcs8PrivateKey (ReadOnlySpan<byte> passwordBytes, ReadOnlySpan<byte> source, out int bytesRead);
abstract member ImportEncryptedPkcs8PrivateKey : ReadOnlySpan<byte> * ReadOnlySpan<byte> * int -> unit
override this.ImportEncryptedPkcs8PrivateKey : ReadOnlySpan<byte> * ReadOnlySpan<byte> * int -> unit
Public Overridable Sub ImportEncryptedPkcs8PrivateKey (passwordBytes As ReadOnlySpan(Of Byte), source As ReadOnlySpan(Of Byte), ByRef bytesRead As Integer)

Parametry

passwordBytes
ReadOnlySpan<Byte>

Bajty używane jako hasło podczas odszyfrowywania materiału klucza.

source
ReadOnlySpan<Byte>

Bajty struktury PKCS#8 EncryptedPrivateKeyInfo w kodowaniu ASN.1-BER.

bytesRead
Int32

Gdy ta metoda zwraca wartość, zawiera wartość, która wskazuje liczbę bajtów odczytanych z klasy source. Ten parametr jest traktowany jako niezainicjowany.

Wyjątki

Hasło jest niepoprawne.

-lub-

Zawartość source funkcji wyprowadzania kluczy (KDF, Key Derivation Function) jest starsza wersja PKCS#12 KDF, która wymaga Charhaseł opartych na hasłach.

-lub-

Zawartość source elementu nie reprezentuje struktury PKCS#8 EncryptedPrivateKeyInfo asN.1-1-BER.

-lub-

Zawartość source wskazuje klucz dla algorytmu innego niż algorytm reprezentowany przez to wystąpienie.

-lub-

Zawartość source klucza reprezentuje klucz w formacie, który nie jest obsługiwany.

-lub-

Importowanie klucza specyficznego dla algorytmu nie powiodło się.

Typ pochodny nie zastępuje tego elementu członkowskiego.

Uwagi

Bajty haseł są przekazywane bezpośrednio do funkcji wyprowadzania kluczy (KDF) używanej przez algorytm wskazany przez .pbeParameters Umożliwia to zgodność z innymi systemami, które używają kodowania tekstu innego niż UTF-8 podczas przetwarzania haseł za pomocą pbKDF2 (funkcja wyprowadzania kluczy opartych na hasłach 2).

Ta metoda obsługuje tylko kodowanie binarne (BER/CER/DER) klasy EncryptedPrivateKeyInfo. Jeśli wartość jest zakodowana w formacie Base64 lub w formacie tekstowym PEM, obiekt wywołujący musi zdekodować zawartość przed wywołaniem tej metody.

Ponieważ do interpretowania zawartości tego formatu danych wymagana jest obsługa algorytmu, ImportEncryptedPkcs8PrivateKey zgłasza domyślnie wyjątek NotImplementedException .

Dotyczy

ImportEncryptedPkcs8PrivateKey(ReadOnlySpan<Char>, ReadOnlySpan<Byte>, Int32)

Źródło:
AsymmetricAlgorithm.cs
Źródło:
AsymmetricAlgorithm.cs
Źródło:
AsymmetricAlgorithm.cs

Po zastąpieniu w klasie pochodnej importuje publiczny/prywatny kluczpair z struktury PKCS#8 EncryptedPrivateKeyInfo po odszyfrowaniu przy użyciu hasła opartego na znakach, zastępując klucze dla tego obiektu.

public:
 virtual void ImportEncryptedPkcs8PrivateKey(ReadOnlySpan<char> password, ReadOnlySpan<System::Byte> source, [Runtime::InteropServices::Out] int % bytesRead);
public virtual void ImportEncryptedPkcs8PrivateKey (ReadOnlySpan<char> password, ReadOnlySpan<byte> source, out int bytesRead);
abstract member ImportEncryptedPkcs8PrivateKey : ReadOnlySpan<char> * ReadOnlySpan<byte> * int -> unit
override this.ImportEncryptedPkcs8PrivateKey : ReadOnlySpan<char> * ReadOnlySpan<byte> * int -> unit
Public Overridable Sub ImportEncryptedPkcs8PrivateKey (password As ReadOnlySpan(Of Char), source As ReadOnlySpan(Of Byte), ByRef bytesRead As Integer)

Parametry

password
ReadOnlySpan<Char>

Hasło używane do odszyfrowywania materiału klucza.

source
ReadOnlySpan<Byte>

Bajty struktury PKCS#8 EncryptedPrivateKeyInfo w kodowaniu ASN.1-BER.

bytesRead
Int32

Gdy ta metoda zwraca wartość, zawiera wartość, która wskazuje liczbę bajtów odczytanych z klasy source. Ten parametr jest traktowany jako niezainicjowany.

Wyjątki

Hasło jest niepoprawne.

-lub-

Zawartość source elementu nie reprezentuje struktury PKCS#8 EncryptedPrivateKeyInfo asN.1-1-BER.

-lub-

Zawartość source wskazuje klucz dla algorytmu innego niż algorytm reprezentowany przez to wystąpienie.

-lub-

Zawartość source klucza reprezentuje klucz w formacie, który nie jest obsługiwany.

-lub-

Importowanie klucza specyficznego dla algorytmu nie powiodło się.

Typ pochodny nie zastępuje tego elementu członkowskiego.

Uwagi

Gdy zawartość source wskazuje algorytm używający pbKDF1 (funkcja wyprowadzania klucza opartego na hasłach 1) lub PBKDF2 (funkcja wyprowadzania klucza opartego na hasłach 2), hasło jest konwertowane na bajty za pomocą kodowania UTF-8.

Ta metoda obsługuje tylko kodowanie binarne (BER/CER/DER) klasy EncryptedPrivateKeyInfo. Jeśli wartość jest zakodowana w formacie Base64 lub w formacie tekstowym PEM, obiekt wywołujący musi zdekodować zawartość przed wywołaniem tej metody.

Ponieważ do interpretowania zawartości tego formatu danych wymagana jest obsługa algorytmu, ImportEncryptedPkcs8PrivateKey zgłasza domyślnie wyjątek NotImplementedException .

Dotyczy