Ejemplo n.º 1
0
        // SEQUENCE
        //   SEQUENCE
        //     OBJECT IDENTIFIER 1.2.840.113549.1.1.1
        //     NULL
        //   BIT STRING
        //     SEQUENCE
        //       INTEGER N
        //       INTEGER E
        private static AsymmetricJwk ReadRsaPublicKey(ref AsnReader reader)
        {
            reader = reader.ReadBitString();
            reader = reader.ReadSequence();
            var n = reader.ReadInteger();
            var e = reader.ReadInteger();

            if (reader.Read())
            {
                ThrowHelper.ThrowInvalidOperationException_InvalidPem();
            }

            return(RsaJwk.FromByteArray(
                       n: AsnReader.TrimLeadingZeroes(n),
                       e: AsnReader.TrimLeadingZeroes(e, align: false)));
        }