init commit

This commit is contained in:
2025-10-09 09:57:24 +09:00
commit 4d551bd74f
6636 changed files with 1218703 additions and 0 deletions

View File

@@ -0,0 +1,64 @@
using System;
using Org.BouncyCastle.Utilities;
namespace Org.BouncyCastle.Asn1.Cms;
public class RecipientIdentifier : Asn1Encodable, IAsn1Choice
{
private Asn1Encodable id;
public bool IsTagged => id is Asn1TaggedObject;
public Asn1Encodable ID
{
get
{
if (id is Asn1TaggedObject)
{
return Asn1OctetString.GetInstance((Asn1TaggedObject)id, isExplicit: false);
}
return IssuerAndSerialNumber.GetInstance(id);
}
}
public RecipientIdentifier(IssuerAndSerialNumber id)
{
this.id = id;
}
public RecipientIdentifier(Asn1OctetString id)
{
this.id = new DerTaggedObject(explicitly: false, 0, id);
}
public RecipientIdentifier(Asn1Object id)
{
this.id = id;
}
public static RecipientIdentifier GetInstance(object o)
{
if (o == null || o is RecipientIdentifier)
{
return (RecipientIdentifier)o;
}
if (o is IssuerAndSerialNumber)
{
return new RecipientIdentifier((IssuerAndSerialNumber)o);
}
if (o is Asn1OctetString)
{
return new RecipientIdentifier((Asn1OctetString)o);
}
if (o is Asn1Object)
{
return new RecipientIdentifier((Asn1Object)o);
}
throw new ArgumentException("Illegal object in RecipientIdentifier: " + Platform.GetTypeName(o));
}
public override Asn1Object ToAsn1Object()
{
return id.ToAsn1Object();
}
}