Pkcs12KeyBag(ReadOnlyMemory<Byte>, Boolean) 构造函数
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
从现有的编码 PKCS#8 PrivateKeyInfo 值初始化 Pkcs12KeyBag 的新实例。
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)
参数
- pkcs8PrivateKey
- ReadOnlyMemory<Byte>
BER 编码的 PKCS#8 PrivateKeyInfo 值。
- skipCopy
- Boolean
true
表示存储 pkcs8PrivateKey
而不进行防御性复制;否则为 false
。 默认值为 false
。
例外
pkcs8privateKey
参数不表示单个 ASN.1 BER 编码值。
注解
此方法验证 是否 pkcs8PrivateKey
为单个 BER 编码的值,但不验证该值是否为正确的 PKCS#8 PrivateKeyInfo 值。
PKCS#12 标准允许在 KeyBag 中传输私钥,但并非所有 PFX 读取器都支持将证书与 KeyBag 中的密钥配对。 为获得最佳支持,ShroudedKeyBag 中的传输密钥 (Pkcs12ShroudedKeyBag) 。
此方法的默认行为是创建 的 pkcs8PrivateKey
防御副本。
skipCopy
当 参数为 true
时,将跳过此防御性副本。
如果跳过防御性副本,并在返回值或其方法或属性生成的任何对象的生存期内更改内容 pkcs8PrivateKey
,则这些对象的方法和属性可能会产生无稽之谈的结果,或者由于损坏状态而引发异常。
因此,建议调用方仅在可以合理地确保数据保持不变时,才对参数使用 true
值 skipCopy
。