Partilhar via


Pkcs12KeyBag(ReadOnlyMemory<Byte>, Boolean) Construtor

Definição

Inicializa uma nova instância do Pkcs12KeyBag usando um valor de PrivateKeyInfo do PKCS nº 8 codificado existente.

public Pkcs12KeyBag (ReadOnlyMemory<byte> pkcs8PrivateKey, bool skipCopy = false);
new System.Security.Cryptography.Pkcs.Pkcs12KeyBag : ReadOnlyMemory<byte> * bool -> System.Security.Cryptography.Pkcs.Pkcs12KeyBag
Public Sub New (pkcs8PrivateKey As ReadOnlyMemory(Of Byte), Optional skipCopy As Boolean = false)

Parâmetros

pkcs8PrivateKey
ReadOnlyMemory<Byte>

Um valor de PrivateKeyInfo de PKCS nº 8 codificado em BER.

skipCopy
Boolean

true para armazenar pkcs8PrivateKey sem fazer uma cópia defensiva; caso contrário, false. O padrão é false.

Exceções

O parâmetro pkcs8privateKey não representa um único valor codificado com ASN.1 BER.

Comentários

Esse método valida que pkcs8PrivateKey é um único valor codificado em BER, mas não verifica se o valor é um valor PKCS#8 PrivateKeyInfo adequado.

O transporte de chaves privadas em um KeyBag é permitido pelo padrão PKCS nº 12, mas nem todos os leitores PFX dão suporte ao emparelhamento de certificados com chaves de um KeyBag. Para obter o melhor suporte, chaves de transporte em um ShroudedKeyBag (Pkcs12ShroudedKeyBag).

O comportamento padrão desse método é fazer uma cópia defensiva de pkcs8PrivateKey. Quando o skipCopy parâmetro é true, essa cópia defensiva é ignorada. Se a cópia defensiva for ignorada e o conteúdo da alteração durante o tempo de pkcs8PrivateKey vida do valor retornado ou de qualquer objeto produzido por seus métodos ou propriedades, métodos e propriedades nesses objetos poderão produzir resultados absurdos ou gerar exceções devido ao estado corrompido. Portanto, os chamadores são aconselhados a usar apenas um true valor para o skipCopy parâmetro quando puderem ter certeza razoavelmente de que os dados permanecerão intactos.

Aplica-se a

Confira também