Пример #1
0
        public Pkcs12ShroudedKeyBag AddShroudedKey(
            AsymmetricAlgorithm key,
            ReadOnlySpan <char> password,
            PbeParameters pbeParameters)
        {
            if (key == null)
            {
                throw new ArgumentNullException(nameof(key));
            }
            if (IsReadOnly)
            {
                throw new InvalidOperationException(SR.Cryptography_Pkcs12_SafeContentsIsReadOnly);
            }

            byte[] encryptedPkcs8    = key.ExportEncryptedPkcs8PrivateKey(password, pbeParameters);
            Pkcs12ShroudedKeyBag bag = new Pkcs12ShroudedKeyBag(encryptedPkcs8, skipCopy: true);

            AddSafeBag(bag);
            return(bag);
        }