Org.BouncyCastle.Asn1.DerBitString.FromAsn1Octets C# (CSharp) Метод

FromAsn1Octets() статический приватный Метод

static private FromAsn1Octets ( byte octets ) : DerBitString
octets byte
Результат DerBitString
		internal static DerBitString FromAsn1Octets(byte[] octets)
		{
	        if (octets.Length < 1)
	            throw new ArgumentException("truncated BIT STRING detected", "octets");

            int padBits = octets[0];
            byte[] data = Arrays.CopyOfRange(octets, 1, octets.Length);

            if (padBits > 0 && padBits < 8 && data.Length > 0)
            {
                int last = data[data.Length - 1];
                int mask = (1 << padBits) - 1;

                if ((last & mask) != 0)
                {
                    return new BerBitString(data, padBits);
                }
            }

            return new DerBitString(data, padBits);
		}
	}

Usage Example

Пример #1
0
        public static DerBitString GetInstance(Asn1TaggedObject obj, bool isExplicit)
        {
            Asn1Object @object = obj.GetObject();

            if (isExplicit || @object is DerBitString)
            {
                return(DerBitString.GetInstance(@object));
            }
            return(DerBitString.FromAsn1Octets(((Asn1OctetString)@object).GetOctets()));
        }
All Usage Examples Of Org.BouncyCastle.Asn1.DerBitString::FromAsn1Octets