AsymmetricAlgorithm.ImportEncryptedPkcs8PrivateKey メソッド

定義

オーバーロード

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

派生クラスでオーバーライドされるときに、バイトベースのパスワードを使用して暗号化解除した後に、PKCS#8 EncryptedPrivateKeyInfo 構造体から公開/秘密キー ペアをインポートし、このオブジェクトのキーを置き換えます。

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

派生クラスでオーバーライドされるときに、char ベースのパスワードを使用して暗号化解除した後に、PKCS#8 EncryptedPrivateKeyInfo 構造体から公開/秘密キー ペアをインポートし、このオブジェクトのキーを置き換えます。

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

派生クラスでオーバーライドされるときに、バイトベースのパスワードを使用して暗号化解除した後に、PKCS#8 EncryptedPrivateKeyInfo 構造体から公開/秘密キー ペアをインポートし、このオブジェクトのキーを置き換えます。

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)

パラメーター

passwordBytes
ReadOnlySpan<Byte>

キー マテリアルを暗号化解除するときにパスワードとして使用するバイト。

source
ReadOnlySpan<Byte>

ASN.1-BER エンコードでの PKCS#8 EncryptedPrivateKeyInfo 構造体のバイト。

bytesRead
Int32

このメソッドが戻るときに、source から読み込まれたバイト数を示す値が含まれます。 このパラメーターは初期化前として処理されます。

例外

パスワードが正しくありません。

または

source のコンテンツは、適用するキー派生関数 (KDF) が、Char ベースのパスワードを必要とするレガシの PKCS#12 KDF であることを示しています。

または

source のコンテンツは、ASN.1-BER でエンコードされた PKCS#8 EncryptedPrivateKeyInfo 構造体を表していません。

または

source のコンテンツは、そのキーが、このインスタンスで表されているアルゴリズム以外のアルゴリズム用であることを示しています。

または

source のコンテンツは、サポートされていない形式のキーを表しています。

または

アルゴリズム固有のキーのインポートに失敗しました。

派生タイプはこのメンバーをオーバーライドしていません。

注釈

パスワード バイトは、指定されたアルゴリズムによって使用されるキー派生関数 (KDF) に直接渡されます pbeParameters。 これにより、PBKDF2 でパスワードを処理するときに UTF-8 以外のテキスト エンコードを使用する他のシステムとの互換性が可能になります (パスワードベースのキー派生関数 2)。

このメソッドは、EncryptedPrivateKeyInfo のバイナリ (BER/CER/DER) エンコードのみをサポートします。 値が Base64 エンコードまたは PEM テキスト形式の場合、呼び出し元は、このメソッドを呼び出す前に、コンテンツを Base64 デコードする必要があります。

このデータ形式の内容を解釈するにはアルゴリズム固有のサポートが必要であるため、 ImportEncryptedPkcs8PrivateKey 既定でスロー NotImplementedException されます。

適用対象

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

派生クラスでオーバーライドされるときに、char ベースのパスワードを使用して暗号化解除した後に、PKCS#8 EncryptedPrivateKeyInfo 構造体から公開/秘密キー ペアをインポートし、このオブジェクトのキーを置き換えます。

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)

パラメーター

password
ReadOnlySpan<Char>

キー マテリアルの暗号化に使用するパスワード。

source
ReadOnlySpan<Byte>

ASN.1-BER エンコードでの PKCS#8 EncryptedPrivateKeyInfo 構造体のバイト。

bytesRead
Int32

このメソッドが戻るときに、source から読み込まれたバイト数を示す値が含まれます。 このパラメーターは初期化前として処理されます。

例外

パスワードが正しくありません。

または

source のコンテンツは、ASN.1-BER でエンコードされた PKCS#8 EncryptedPrivateKeyInfo 構造体を表していません。

または

source のコンテンツは、そのキーが、このインスタンスで表されているアルゴリズム以外のアルゴリズム用であることを示しています。

または

source のコンテンツは、サポートされていない形式のキーを表しています。

または

アルゴリズム固有のキーのインポートに失敗しました。

派生タイプはこのメンバーをオーバーライドしていません。

注釈

PBKDF1 (パスワードベースのキー派生関数 1) または PBKDF2 (パスワードベースのキー派生関数 2) を使用するアルゴリズムを示す内容 source の場合、パスワードは UTF-8 エンコードを介してバイトに変換されます。

このメソッドは、EncryptedPrivateKeyInfo のバイナリ (BER/CER/DER) エンコードのみをサポートします。 値が Base64 エンコードまたは PEM テキスト形式の場合、呼び出し元は、このメソッドを呼び出す前に、コンテンツを Base64 デコードする必要があります。

このデータ形式の内容を解釈するにはアルゴリズム固有のサポートが必要であるため、 ImportEncryptedPkcs8PrivateKey 既定でスロー NotImplementedException されます。

適用対象