public DerApplicationSpecific(bool isExplicit, int tag, Asn1Encodable obj) { Asn1Object asn1Object = obj.ToAsn1Object(); byte[] derEncoded = asn1Object.GetDerEncoded(); isConstructed = Asn1TaggedObject.IsConstructed(isExplicit, asn1Object); this.tag = tag; if (isExplicit) { octets = derEncoded; return; } int lengthOfHeader = GetLengthOfHeader(derEncoded); byte[] array = new byte[derEncoded.Length - lengthOfHeader]; Array.Copy(derEncoded, lengthOfHeader, array, 0, array.Length); octets = array; }