Udostępnij za pośrednictwem


AsymmetricAlgorithm.ImportEncryptedPkcs8PrivateKey Metoda

Definicja

Przeciążenia

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

Po zastąpieniu klasy pochodnej zaimportuje klucz publiczny/prywatny z struktury PKCS#8 EncryptedPrivateKeyInfo po odszyfrowaniu hasła opartego na bajtach, zastępując klucze dla tego obiektu.

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

Po zastąpieniu klasy pochodnej zaimportuje 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 klasy pochodnej zaimportuje klucz publiczny/prywatny z struktury PKCS#8 EncryptedPrivateKeyInfo po odszyfrowaniu 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 do użycia 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ść wskazującą liczbę bajtów odczytanych z sourceelementu . Ten parametr jest traktowany jako niezainicjowany.

Wyjątki

Hasło jest niepoprawne.

-lub-

Zawartość source wskazuje, że funkcja wyprowadzania klucza (KDF) ma zastosowanie, to starsza wersja PKCS#12 KDF, która wymaga Charhaseł opartych na hasłach.

-lub-

Zawartość elementu source nie reprezentuje struktury PKCS#8 EncryptedPrivateKeyInfo zakodowanej w formacie ASN.1.1.

-lub-

Zawartość source wskazuje, że klucz jest 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ść w formacie Base64 przed wywołaniem tej metody.

Ponieważ obsługa specyficzna dla algorytmu jest wymagana do interpretowania zawartości tego formatu danych, ImportEncryptedPkcs8PrivateKey zgłasza wartość NotImplementedException domyślnie.

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 klasy pochodnej zaimportuje 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 do użycia 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ść wskazującą liczbę bajtów odczytanych z sourceelementu . Ten parametr jest traktowany jako niezainicjowany.

Wyjątki

Hasło jest niepoprawne.

-lub-

Zawartość elementu source nie reprezentuje struktury PKCS#8 EncryptedPrivateKeyInfo zakodowanej w formacie ASN.1.1.

-lub-

Zawartość source wskazuje, że klucz jest 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, który używa 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 pośrednictwem 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ść w formacie Base64 przed wywołaniem tej metody.

Ponieważ obsługa specyficzna dla algorytmu jest wymagana do interpretowania zawartości tego formatu danych, ImportEncryptedPkcs8PrivateKey zgłasza wartość NotImplementedException domyślnie.

Dotyczy