<PackageReference Include="BouncyCastle.Cryptography" Version="2.7.0-beta.98" />

UserAttributePacket

using System.Collections.Generic; using System.IO; namespace Org.BouncyCastle.Bcpg { public class UserAttributePacket : ContainedPacket { private readonly UserAttributeSubpacket[] m_subpackets; public UserAttributePacket(BcpgInputStream bcpgIn) { UserAttributeSubpacketsParser userAttributeSubpacketsParser = new UserAttributeSubpacketsParser(bcpgIn); List<UserAttributeSubpacket> list = new List<UserAttributeSubpacket>(); UserAttributeSubpacket item; while ((item = userAttributeSubpacketsParser.ReadPacket()) != null) { list.Add(item); } m_subpackets = list.ToArray(); } public UserAttributePacket(UserAttributeSubpacket[] subpackets) { m_subpackets = subpackets; } public UserAttributeSubpacket[] GetSubpackets() { return m_subpackets; } public override void Encode(BcpgOutputStream bcpgOut) { MemoryStream memoryStream = new MemoryStream(); for (int i = 0; i != m_subpackets.Length; i++) { m_subpackets[i].Encode(memoryStream); } bcpgOut.WritePacket(PacketTag.UserAttribute, memoryStream.ToArray()); } } }