Example #1
0
        public static Byte[] ExportBinaryData(this X509Extension extension)
        {
            if (String.IsNullOrEmpty(extension.Oid.Value))
            {
                return(null);
            }
            List <Byte> rawData = new List <Byte>(Asn1Utils.EncodeObjectIdentifier(extension.Oid));

            if (extension.Critical)
            {
                rawData.AddRange(Asn1Utils.EncodeBoolean(true));
            }
            rawData.AddRange(Asn1Utils.Encode(extension.RawData, (Byte)Asn1Type.OCTET_STRING));
            return(Asn1Utils.Encode(rawData.ToArray(), 48));
        }
Example #2
0
        public static Byte[] EncodeX509Extension(X509Extension extension)
        {
            if (extension == null)
            {
                throw new ArgumentNullException(nameof(extension));
            }
            if (String.IsNullOrEmpty(extension.Oid.Value))
            {
                throw new UninitializedObjectException();
            }
            List <Byte> rawData = new List <Byte>(Asn1Utils.EncodeObjectIdentifier(extension.Oid));

            if (extension.Critical)
            {
                rawData.AddRange(Asn1Utils.EncodeBoolean(true));
            }
            rawData.AddRange(Asn1Utils.Encode(extension.RawData, (Byte)Asn1Type.OCTET_STRING));
            return(Asn1Utils.Encode(rawData.ToArray(), 48));
        }