summary refs log tree commit diff
path: root/crypto
diff options
context:
space:
mode:
authorOren Novotny <oren@novotny.org>2015-10-18 18:14:08 -0400
committerOren Novotny <oren@novotny.org>2015-10-18 18:15:19 -0400
commit3db90551169b383bc6b78b81954e20a10cb92f59 (patch)
tree74a48d7907f41fbb0e5a3a6488c6c4a6dfdd8941 /crypto
parentremove unneeded local nuget (diff)
downloadBouncyCastle.NET-ed25519-3db90551169b383bc6b78b81954e20a10cb92f59.tar.xz
remove files not in master
Diffstat (limited to 'crypto')
-rw-r--r--crypto/doc/wp7/crypto.xml19296
-rw-r--r--crypto/src/asn1/DerUnknownTag.cs80
-rw-r--r--crypto/src/cms/NullOutputStream.cs20
-rw-r--r--crypto/src/crypto/tls/AlwaysValidVerifyer.cs24
-rw-r--r--crypto/src/crypto/tls/DigestAlgorithm.cs21
-rw-r--r--crypto/src/crypto/tls/ICertificateVerifyer.cs18
-rw-r--r--crypto/src/crypto/tls/LegacyTlsAuthentication.cs32
-rw-r--r--crypto/src/crypto/tls/LegacyTlsClient.cs28
-rw-r--r--crypto/src/crypto/tls/TlsException.cs11
-rw-r--r--crypto/src/math/ec/IntArray.cs485
-rw-r--r--crypto/src/math/ec/multiplier/FpNafMultiplier.cs41
-rw-r--r--crypto/src/math/ec/multiplier/WNafMultiplier.cs243
12 files changed, 0 insertions, 20299 deletions
diff --git a/crypto/doc/wp7/crypto.xml b/crypto/doc/wp7/crypto.xml
deleted file mode 100644
index f1cf2f391..000000000
--- a/crypto/doc/wp7/crypto.xml
+++ /dev/null
@@ -1,19296 +0,0 @@
-<?xml version="1.0"?>
-<doc>
-    <assembly>
-        <name>crypto</name>
-    </assembly>
-    <members>
-        <member name="T:Org.BouncyCastle.Apache.Bzip2.BZip2Constants">
-             Base class for both the compress and decompress classes.
-             Holds common arrays, and static data.
-            
-             @author <a href="mailto:keiron@aftexsw.com">Keiron Liddle</a>
-        </member>
-        <member name="T:Org.BouncyCastle.Apache.Bzip2.CBZip2InputStream">
-             An input stream that decompresses from the BZip2 format (with the file
-             header chars) to be read as any other stream.
-            
-             @author <a href="mailto:keiron@aftexsw.com">Keiron Liddle</a>
-            
-             <b>NB:</b> note this class has been modified to read the leading BZ from the
-             start of the BZIP2 stream to make it compatible with other PGP programs.
-        </member>
-        <member name="T:Org.BouncyCastle.Apache.Bzip2.CBZip2OutputStream">
-             An output stream that compresses into the BZip2 format (with the file
-             header chars) into another stream.
-            
-             @author <a href="mailto:keiron@aftexsw.com">Keiron Liddle</a>
-            
-             TODO:    Update to BZip2 1.0.1
-             <b>NB:</b> note this class has been modified to add a leading BZ to the
-             start of the BZIP2 stream to make it compatible with other PGP programs.
-        </member>
-        <member name="M:Org.BouncyCastle.Apache.Bzip2.CBZip2OutputStream.WriteByte(System.Byte)">
-            
-             modified by Oliver Merkel, 010128
-            
-        </member>
-        <member name="T:Org.BouncyCastle.Apache.Bzip2.CRC">
-             A simple class the hold and calculate the CRC for sanity checking
-             of the data.
-            
-             @author <a href="mailto:keiron@aftexsw.com">Keiron Liddle</a>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Asn1Encodable.GetDerEncoded">
-             Return the DER encoding of the object, null if the DER encoding can not be made.
-            
-             @return a DER byte array, null otherwise.
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.Asn1InputStream">
-            a general purpose ASN.1 decoder - note: this class differs from the
-            others in that it returns null after it has read the last object in
-            the stream. If an ASN.1 Null is encountered a Der/BER Null object is
-            returned.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Asn1InputStream.#ctor(System.IO.Stream,System.Int32)">
-             Create an ASN1InputStream where no DER object will be longer than limit.
-            
-             @param input stream containing ASN.1 encoded data.
-             @param limit maximum size of a DER encoded object.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Asn1InputStream.#ctor(System.Byte[])">
-             Create an ASN1InputStream based on the input byte array. The length of DER objects in
-             the stream is automatically limited to the length of the input array.
-            
-             @param input array containing ASN.1 encoded data.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Asn1InputStream.BuildObject(System.Int32,System.Int32,System.Int32)">
-            build an object given its tag and the number of bytes to construct it from.
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.Asn1Null">
-            A Null object.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Asn1Object.FromByteArray(System.Byte[])">
-            <summary>Create a base ASN.1 object from a byte array.</summary>
-            <param name="data">The byte array to parse.</param>
-            <returns>The base ASN.1 object represented by the byte array.</returns>
-            <exception cref="T:System.IO.IOException">If there is a problem parsing the data.</exception>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Asn1Object.FromStream(System.IO.Stream)">
-            <summary>Read a base ASN.1 object from a stream.</summary>
-            <param name="inStr">The stream to parse.</param>
-            <returns>The base ASN.1 object represented by the byte array.</returns>
-            <exception cref="T:System.IO.IOException">If there is a problem parsing the data.</exception>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Asn1OctetString.GetInstance(Org.BouncyCastle.Asn1.Asn1TaggedObject,System.Boolean)">
-             return an Octet string from a tagged object.
-            
-             @param obj the tagged object holding the object we want.
-             @param explicitly true if the object is meant to be explicitly
-                          tagged false otherwise.
-             @exception ArgumentException if the tagged object cannot
-                          be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Asn1OctetString.GetInstance(System.Object)">
-             return an Octet string from the given object.
-            
-             @param obj the object we want converted.
-             @exception ArgumentException if the object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Asn1OctetString.#ctor(System.Byte[])">
-            @param string the octets making up the octet string.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Asn1Sequence.GetInstance(System.Object)">
-             return an Asn1Sequence from the given object.
-            
-             @param obj the object we want converted.
-             @exception ArgumentException if the object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Asn1Sequence.GetInstance(Org.BouncyCastle.Asn1.Asn1TaggedObject,System.Boolean)">
-             Return an ASN1 sequence from a tagged object. There is a special
-             case here, if an object appears to have been explicitly tagged on
-             reading but we were expecting it to be implicitly tagged in the
-             normal course of events it indicates that we lost the surrounding
-             sequence - so we need to add it back (this will happen if the tagged
-             object is a sequence that contains other sequences). If you are
-             dealing with implicitly tagged sequences you really <b>should</b>
-             be using this method.
-            
-             @param obj the tagged object.
-             @param explicitly true if the object is meant to be explicitly tagged,
-                      false otherwise.
-             @exception ArgumentException if the tagged object cannot
-                      be converted.
-        </member>
-        <member name="P:Org.BouncyCastle.Asn1.Asn1Sequence.Item(System.Int32)">
-             return the object at the sequence position indicated by index.
-            
-             @param index the sequence number (starting at zero) of the object
-             @return the object at the sequence position indicated by index.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Asn1Set.GetInstance(System.Object)">
-             return an ASN1Set from the given object.
-            
-             @param obj the object we want converted.
-             @exception ArgumentException if the object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Asn1Set.GetInstance(Org.BouncyCastle.Asn1.Asn1TaggedObject,System.Boolean)">
-             Return an ASN1 set from a tagged object. There is a special
-             case here, if an object appears to have been explicitly tagged on
-             reading but we were expecting it to be implicitly tagged in the
-             normal course of events it indicates that we lost the surrounding
-             set - so we need to add it back (this will happen if the tagged
-             object is a sequence that contains other sequences). If you are
-             dealing with implicitly tagged sets you really <b>should</b>
-             be using this method.
-            
-             @param obj the tagged object.
-             @param explicitly true if the object is meant to be explicitly tagged
-                      false otherwise.
-             @exception ArgumentException if the tagged object cannot
-                      be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Asn1Set.LessThanOrEqual(System.Byte[],System.Byte[])">
-            return true if a &lt;= b (arrays are assumed padded with zeros).
-        </member>
-        <member name="P:Org.BouncyCastle.Asn1.Asn1Set.Item(System.Int32)">
-             return the object at the set position indicated by index.
-            
-             @param index the set number (starting at zero) of the object
-             @return the object at the set position indicated by index.
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.Asn1TaggedObject">
-            ASN.1 TaggedObject - in ASN.1 notation this is any object preceded by
-            a [n] where n is some number - these are assumed to follow the construction
-            rules (as with sequences).
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Asn1TaggedObject.#ctor(System.Int32,Org.BouncyCastle.Asn1.Asn1Encodable)">
-            @param tagNo the tag number for this object.
-            @param obj the tagged object.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Asn1TaggedObject.#ctor(System.Boolean,System.Int32,Org.BouncyCastle.Asn1.Asn1Encodable)">
-            @param explicitly true if the object is explicitly tagged.
-            @param tagNo the tag number for this object.
-            @param obj the tagged object.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Asn1TaggedObject.IsExplicit">
-            return whether or not the object may be explicitly tagged.
-            <p>
-            Note: if the object has been read from an input stream, the only
-            time you can be sure if isExplicit is returning the true state of
-            affairs is if it returns false. An implicitly tagged object may appear
-            to be explicitly tagged, so you need to understand the context under
-            which the reading was done as well, see GetObject below.</p>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Asn1TaggedObject.GetObject">
-            return whatever was following the tag.
-            <p>
-            Note: tagged objects are generally context dependent if you're
-            trying to extract a tagged object you should be going via the
-            appropriate GetInstance method.</p>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Asn1TaggedObject.GetObjectParser(System.Int32,System.Boolean)">
-            Return the object held in this tagged object as a parser assuming it has
-            the type of the passed in tag. If the object doesn't have a parser
-            associated with it, the base object is returned.
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.DerApplicationSpecific">
-            Base class for an application specific object
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerApplicationSpecific.GetObject">
-             Return the enclosed object assuming explicit tagging.
-            
-             @return  the resulting object
-             @throws IOException if reconstruction fails.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerApplicationSpecific.GetObject(System.Int32)">
-             Return the enclosed object assuming implicit tagging.
-            
-             @param derTagNo the type tag that should be applied to the object's contents.
-             @return  the resulting object
-             @throws IOException if reconstruction fails.
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.BerNull">
-            A BER Null object.
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.DerNull">
-            A Null object.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerOctetString.#ctor(System.Byte[])">
-            <param name="str">The octets making up the octet string.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.BerOctetString.ToBytes(System.Collections.IEnumerable)">
-            convert a vector of octet strings into a single byte string
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.BerOctetString.#ctor(System.Byte[])">
-            <param name="str">The octets making up the octet string.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.BerOctetString.GetEnumerator">
-            return the DER octets that make up this string.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerSequence.#ctor">
-            create an empty sequence
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerSequence.#ctor(Org.BouncyCastle.Asn1.Asn1Encodable)">
-            create a sequence containing one object
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerSequence.#ctor(Org.BouncyCastle.Asn1.Asn1EncodableVector)">
-            create a sequence containing a vector of objects.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.BerSequence.#ctor">
-            create an empty sequence
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.BerSequence.#ctor(Org.BouncyCastle.Asn1.Asn1Encodable)">
-            create a sequence containing one object
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.BerSequence.#ctor(Org.BouncyCastle.Asn1.Asn1EncodableVector)">
-            create a sequence containing a vector of objects.
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.DerSet">
-            A Der encoded set object
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerSet.#ctor">
-            create an empty set
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerSet.#ctor(Org.BouncyCastle.Asn1.Asn1Encodable)">
-            @param obj - a single object that makes up the set.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerSet.#ctor(Org.BouncyCastle.Asn1.Asn1EncodableVector)">
-            @param v - a vector of objects making up the set.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.BerSet.#ctor">
-            create an empty sequence
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.BerSet.#ctor(Org.BouncyCastle.Asn1.Asn1Encodable)">
-            create a set containing one object
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.BerSet.#ctor(Org.BouncyCastle.Asn1.Asn1EncodableVector)">
-            create a set containing a vector of objects.
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.BerTaggedObject">
-            BER TaggedObject - in ASN.1 notation this is any object preceded by
-            a [n] where n is some number - these are assumed to follow the construction
-            rules (as with sequences).
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.DerTaggedObject">
-            DER TaggedObject - in ASN.1 notation this is any object preceded by
-            a [n] where n is some number - these are assumed to follow the construction
-            rules (as with sequences).
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerTaggedObject.#ctor(System.Int32,Org.BouncyCastle.Asn1.Asn1Encodable)">
-            @param tagNo the tag number for this object.
-            @param obj the tagged object.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerTaggedObject.#ctor(System.Boolean,System.Int32,Org.BouncyCastle.Asn1.Asn1Encodable)">
-            @param explicitly true if an explicitly tagged object.
-            @param tagNo the tag number for this object.
-            @param obj the tagged object.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerTaggedObject.#ctor(System.Int32)">
-            create an implicitly tagged object that contains a zero
-            length sequence.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.BerTaggedObject.#ctor(System.Int32,Org.BouncyCastle.Asn1.Asn1Encodable)">
-            @param tagNo the tag number for this object.
-            @param obj the tagged object.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.BerTaggedObject.#ctor(System.Boolean,System.Int32,Org.BouncyCastle.Asn1.Asn1Encodable)">
-            @param explicitly true if an explicitly tagged object.
-            @param tagNo the tag number for this object.
-            @param obj the tagged object.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.BerTaggedObject.#ctor(System.Int32)">
-            create an implicitly tagged object that contains a zero
-            length sequence.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cmp.CAKeyUpdAnnContent.ToAsn1Object">
-            <pre>
-            CAKeyUpdAnnContent ::= SEQUENCE {
-                                        oldWithNew   CmpCertificate, -- old pub signed with new priv
-                                        newWithOld   CmpCertificate, -- new pub signed with old priv
-                                        newWithNew   CmpCertificate  -- new pub signed with new priv
-             }
-            </pre>
-            @return a basic ASN.1 object representation.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cmp.CertConfirmContent.ToAsn1Object">
-            <pre>
-            CertConfirmContent ::= SEQUENCE OF CertStatus
-            </pre>
-            @return a basic ASN.1 object representation.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cmp.CertifiedKeyPair.ToAsn1Object">
-            <pre>
-            CertifiedKeyPair ::= SEQUENCE {
-                                             certOrEncCert       CertOrEncCert,
-                                             privateKey      [0] EncryptedValue      OPTIONAL,
-                                             -- see [CRMF] for comment on encoding
-                                             publicationInfo [1] PKIPublicationInfo  OPTIONAL
-                  }
-            </pre>
-            @return a basic ASN.1 object representation.
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.IAsn1Choice">
-            Marker interface for CHOICE objects - if you implement this in a roll-your-own
-            object, any attempt to tag the object implicitly will convert the tag to an
-            explicit one as the encoding rules require.
-            <p>
-            If you use this interface your class should also implement the getInstance
-            pattern which takes a tag object and the tagging mode used. 
-            </p>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cmp.CertOrEncCert.ToAsn1Object">
-            <pre>
-            CertOrEncCert ::= CHOICE {
-                                 certificate     [0] CMPCertificate,
-                                 encryptedCert   [1] EncryptedValue
-                      }
-            </pre>
-            @return a basic ASN.1 object representation.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cmp.CertRepMessage.ToAsn1Object">
-            <pre>
-            CertRepMessage ::= SEQUENCE {
-                                     caPubs       [1] SEQUENCE SIZE (1..MAX) OF CMPCertificate
-                                                                                        OPTIONAL,
-                                     response         SEQUENCE OF CertResponse
-            }
-            </pre>
-            @return a basic ASN.1 object representation.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cmp.CertResponse.ToAsn1Object">
-            <pre>
-            CertResponse ::= SEQUENCE {
-                                       certReqId           INTEGER,
-                                       -- to match this response with corresponding request (a value
-                                       -- of -1 is to be used if certReqId is not specified in the
-                                       -- corresponding request)
-                                       status              PKIStatusInfo,
-                                       certifiedKeyPair    CertifiedKeyPair    OPTIONAL,
-                                       rspInfo             OCTET STRING        OPTIONAL
-                                       -- analogous to the id-regInfo-utf8Pairs string defined
-                                       -- for regInfo in CertReqMsg [CRMF]
-                        }
-            </pre> 
-            @return a basic ASN.1 object representation.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cmp.CertStatus.ToAsn1Object">
-            <pre>
-            CertStatus ::= SEQUENCE {
-                              certHash    OCTET STRING,
-                              -- the hash of the certificate, using the same hash algorithm
-                              -- as is used to create and verify the certificate signature
-                              certReqId   INTEGER,
-                              -- to match this confirmation with the corresponding req/rep
-                              statusInfo  PKIStatusInfo OPTIONAL
-            }
-            </pre>
-            @return a basic ASN.1 object representation.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cmp.Challenge.ToAsn1Object">
-             <pre>
-             Challenge ::= SEQUENCE {
-                             owf                 AlgorithmIdentifier  OPTIONAL,
-            
-                             -- MUST be present in the first Challenge; MAY be omitted in
-                             -- any subsequent Challenge in POPODecKeyChallContent (if
-                             -- omitted, then the owf used in the immediately preceding
-                             -- Challenge is to be used).
-            
-                             witness             OCTET STRING,
-                             -- the result of applying the one-way function (owf) to a
-                             -- randomly-generated INTEGER, A.  [Note that a different
-                             -- INTEGER MUST be used for each Challenge.]
-                             challenge           OCTET STRING
-                             -- the encryption (under the public key for which the cert.
-                             -- request is being made) of Rand, where Rand is specified as
-                             --   Rand ::= SEQUENCE {
-                             --      int      INTEGER,
-                             --       - the randomly-generated INTEGER A (above)
-                             --      sender   GeneralName
-                             --       - the sender's name (as included in PKIHeader)
-                             --   }
-                  }
-             </pre>
-             @return a basic ASN.1 object representation.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cmp.CmpCertificate.#ctor(Org.BouncyCastle.Asn1.X509.AttributeCertificate)">
-            Note: the addition of attribute certificates is a BC extension.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cmp.CmpCertificate.ToAsn1Object">
-             <pre>
-             CMPCertificate ::= CHOICE {
-                        x509v3PKCert        Certificate
-                        x509v2AttrCert      [1] AttributeCertificate
-              }
-             </pre>
-             Note: the addition of attribute certificates is a BC extension.
-            
-             @return a basic ASN.1 object representation.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cmp.CrlAnnContent.ToAsn1Object">
-            <pre>
-            CrlAnnContent ::= SEQUENCE OF CertificateList
-            </pre>
-            @return a basic ASN.1 object representation.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cmp.ErrorMsgContent.ToAsn1Object">
-            <pre>
-            ErrorMsgContent ::= SEQUENCE {
-                                   pKIStatusInfo          PKIStatusInfo,
-                                   errorCode              INTEGER           OPTIONAL,
-                                   -- implementation-specific error codes
-                                   errorDetails           PKIFreeText       OPTIONAL
-                                   -- implementation-specific error details
-            }
-            </pre>
-            @return a basic ASN.1 object representation.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cmp.GenMsgContent.ToAsn1Object">
-            <pre>
-            GenMsgContent ::= SEQUENCE OF InfoTypeAndValue
-            </pre>
-            @return a basic ASN.1 object representation.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cmp.GenRepContent.ToAsn1Object">
-            <pre>
-            GenRepContent ::= SEQUENCE OF InfoTypeAndValue
-            </pre>
-            @return a basic ASN.1 object representation.
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.Cmp.InfoTypeAndValue">
-             Example InfoTypeAndValue contents include, but are not limited
-             to, the following (un-comment in this ASN.1 module and use as
-             appropriate for a given environment):
-             <pre>
-               id-it-caProtEncCert    OBJECT IDENTIFIER ::= {id-it 1}
-                  CAProtEncCertValue      ::= CMPCertificate
-               id-it-signKeyPairTypes OBJECT IDENTIFIER ::= {id-it 2}
-                 SignKeyPairTypesValue   ::= SEQUENCE OF AlgorithmIdentifier
-               id-it-encKeyPairTypes  OBJECT IDENTIFIER ::= {id-it 3}
-                 EncKeyPairTypesValue    ::= SEQUENCE OF AlgorithmIdentifier
-               id-it-preferredSymmAlg OBJECT IDENTIFIER ::= {id-it 4}
-                  PreferredSymmAlgValue   ::= AlgorithmIdentifier
-               id-it-caKeyUpdateInfo  OBJECT IDENTIFIER ::= {id-it 5}
-                  CAKeyUpdateInfoValue    ::= CAKeyUpdAnnContent
-               id-it-currentCRL       OBJECT IDENTIFIER ::= {id-it 6}
-                  CurrentCRLValue         ::= CertificateList
-               id-it-unsupportedOIDs  OBJECT IDENTIFIER ::= {id-it 7}
-                  UnsupportedOIDsValue    ::= SEQUENCE OF OBJECT IDENTIFIER
-               id-it-keyPairParamReq  OBJECT IDENTIFIER ::= {id-it 10}
-                  KeyPairParamReqValue    ::= OBJECT IDENTIFIER
-               id-it-keyPairParamRep  OBJECT IDENTIFIER ::= {id-it 11}
-                  KeyPairParamRepValue    ::= AlgorithmIdentifer
-               id-it-revPassphrase    OBJECT IDENTIFIER ::= {id-it 12}
-                  RevPassphraseValue      ::= EncryptedValue
-               id-it-implicitConfirm  OBJECT IDENTIFIER ::= {id-it 13}
-                  ImplicitConfirmValue    ::= NULL
-               id-it-confirmWaitTime  OBJECT IDENTIFIER ::= {id-it 14}
-                  ConfirmWaitTimeValue    ::= GeneralizedTime
-               id-it-origPKIMessage   OBJECT IDENTIFIER ::= {id-it 15}
-                  OrigPKIMessageValue     ::= PKIMessages
-               id-it-suppLangTags     OBJECT IDENTIFIER ::= {id-it 16}
-                  SuppLangTagsValue       ::= SEQUENCE OF UTF8String
-            
-             where
-            
-               id-pkix OBJECT IDENTIFIER ::= {
-                  iso(1) identified-organization(3)
-                  dod(6) internet(1) security(5) mechanisms(5) pkix(7)}
-             and
-                  id-it   OBJECT IDENTIFIER ::= {id-pkix 4}
-             </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cmp.InfoTypeAndValue.ToAsn1Object">
-            <pre>
-            InfoTypeAndValue ::= SEQUENCE {
-                                    infoType               OBJECT IDENTIFIER,
-                                    infoValue              ANY DEFINED BY infoType  OPTIONAL
-            }
-            </pre>
-            @return a basic ASN.1 object representation.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cmp.KeyRecRepContent.ToAsn1Object">
-            <pre>
-            KeyRecRepContent ::= SEQUENCE {
-                                    status                  PKIStatusInfo,
-                                    newSigCert          [0] CMPCertificate OPTIONAL,
-                                    caCerts             [1] SEQUENCE SIZE (1..MAX) OF
-                                                                      CMPCertificate OPTIONAL,
-                                    keyPairHist         [2] SEQUENCE SIZE (1..MAX) OF
-                                                                      CertifiedKeyPair OPTIONAL
-                         }
-            </pre> 
-            @return a basic ASN.1 object representation.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cmp.OobCertHash.ToAsn1Object">
-            <pre>
-            OobCertHash ::= SEQUENCE {
-                                 hashAlg     [0] AlgorithmIdentifier     OPTIONAL,
-                                 certId      [1] CertId                  OPTIONAL,
-                                 hashVal         BIT STRING
-                                 -- hashVal is calculated over the Der encoding of the
-                                 -- self-signed certificate with the identifier certID.
-                  }
-            </pre>
-            @return a basic ASN.1 object representation.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cmp.PbmParameter.ToAsn1Object">
-            <pre>
-             PbmParameter ::= SEQUENCE {
-                                   salt                OCTET STRING,
-                                   -- note:  implementations MAY wish to limit acceptable sizes
-                                   -- of this string to values appropriate for their environment
-                                   -- in order to reduce the risk of denial-of-service attacks
-                                   owf                 AlgorithmIdentifier,
-                                   -- AlgId for a One-Way Function (SHA-1 recommended)
-                                   iterationCount      INTEGER,
-                                   -- number of times the OWF is applied
-                                   -- note:  implementations MAY wish to limit acceptable sizes
-                                   -- of this integer to values appropriate for their environment
-                                   -- in order to reduce the risk of denial-of-service attacks
-                                   mac                 AlgorithmIdentifier
-                                   -- the MAC AlgId (e.g., DES-MAC, Triple-DES-MAC [PKCS11],
-               }   -- or HMAC [RFC2104, RFC2202])
-            </pre>
-            @return a basic ASN.1 object representation.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cmp.PkiBody.#ctor(System.Int32,Org.BouncyCastle.Asn1.Asn1Encodable)">
-            Creates a new PkiBody.
-            @param type one of the TYPE_* constants
-            @param content message content
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cmp.PkiBody.ToAsn1Object">
-            <pre>
-            PkiBody ::= CHOICE {       -- message-specific body elements
-                   ir       [0]  CertReqMessages,        --Initialization Request
-                   ip       [1]  CertRepMessage,         --Initialization Response
-                   cr       [2]  CertReqMessages,        --Certification Request
-                   cp       [3]  CertRepMessage,         --Certification Response
-                   p10cr    [4]  CertificationRequest,   --imported from [PKCS10]
-                   popdecc  [5]  POPODecKeyChallContent, --pop Challenge
-                   popdecr  [6]  POPODecKeyRespContent,  --pop Response
-                   kur      [7]  CertReqMessages,        --Key Update Request
-                   kup      [8]  CertRepMessage,         --Key Update Response
-                   krr      [9]  CertReqMessages,        --Key Recovery Request
-                   krp      [10] KeyRecRepContent,       --Key Recovery Response
-                   rr       [11] RevReqContent,          --Revocation Request
-                   rp       [12] RevRepContent,          --Revocation Response
-                   ccr      [13] CertReqMessages,        --Cross-Cert. Request
-                   ccp      [14] CertRepMessage,         --Cross-Cert. Response
-                   ckuann   [15] CAKeyUpdAnnContent,     --CA Key Update Ann.
-                   cann     [16] CertAnnContent,         --Certificate Ann.
-                   rann     [17] RevAnnContent,          --Revocation Ann.
-                   crlann   [18] CRLAnnContent,          --CRL Announcement
-                   pkiconf  [19] PKIConfirmContent,      --Confirmation
-                   nested   [20] NestedMessageContent,   --Nested Message
-                   genm     [21] GenMsgContent,          --General Message
-                   genp     [22] GenRepContent,          --General Response
-                   error    [23] ErrorMsgContent,        --Error Message
-                   certConf [24] CertConfirmContent,     --Certificate confirm
-                   pollReq  [25] PollReqContent,         --Polling request
-                   pollRep  [26] PollRepContent          --Polling response
-            }
-            </pre>
-            @return a basic ASN.1 object representation.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cmp.PkiConfirmContent.ToAsn1Object">
-            <pre>
-            PkiConfirmContent ::= NULL
-            </pre>
-            @return a basic ASN.1 object representation.
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.Cmp.PkiFailureInfo">
-            <pre>
-            PKIFailureInfo ::= BIT STRING {
-            badAlg               (0),
-              -- unrecognized or unsupported Algorithm Identifier
-            badMessageCheck      (1), -- integrity check failed (e.g., signature did not verify)
-            badRequest           (2),
-              -- transaction not permitted or supported
-            badTime              (3), -- messageTime was not sufficiently close to the system time, as defined by local policy
-            badCertId            (4), -- no certificate could be found matching the provided criteria
-            badDataFormat        (5),
-              -- the data submitted has the wrong format
-            wrongAuthority       (6), -- the authority indicated in the request is different from the one creating the response token
-            incorrectData        (7), -- the requester's data is incorrect (for notary services)
-            missingTimeStamp     (8), -- when the timestamp is missing but should be there (by policy)
-            badPOP               (9)  -- the proof-of-possession failed
-            timeNotAvailable    (14),
-              -- the TSA's time source is not available
-            unacceptedPolicy    (15),
-              -- the requested TSA policy is not supported by the TSA
-            unacceptedExtension (16),
-              -- the requested extension is not supported by the TSA
-             addInfoNotAvailable (17)
-               -- the additional information requested could not be understood
-               -- or is not available
-             systemFailure       (25)
-               -- the request cannot be handled due to system failure
-            </pre>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.IAsn1String">
-            basic interface for Der string objects.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerBitString.GetPadBits(System.Int32)">
-            return the correct number of pad bits for a bit string defined in
-            a 32 bit constant
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerBitString.GetBytes(System.Int32)">
-            return the correct number of bytes for a bit string defined in
-            a 32 bit constant
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerBitString.GetInstance(System.Object)">
-             return a Bit string from the passed in object
-            
-             @exception ArgumentException if the object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerBitString.GetInstance(Org.BouncyCastle.Asn1.Asn1TaggedObject,System.Boolean)">
-             return a Bit string from a tagged object.
-            
-             @param obj the tagged object holding the object we want
-             @param explicitly true if the object is meant to be explicitly
-                          tagged false otherwise.
-             @exception ArgumentException if the tagged object cannot
-                           be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerBitString.#ctor(System.Byte[],System.Int32)">
-            @param data the octets making up the bit string.
-            @param padBits the number of extra bits at the end of the string.
-        </member>
-        <member name="P:Org.BouncyCastle.Asn1.DerBitString.IntValue">
-            @return the value of the bit string as an int (truncating if necessary)
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cmp.PkiFailureInfo.#ctor(System.Int32)">
-            Basic constructor.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cmp.PkiFreeText.ToAsn1Object">
-            <pre>
-            PkiFreeText ::= SEQUENCE SIZE (1..MAX) OF UTF8String
-            </pre>
-        </member>
-        <member name="P:Org.BouncyCastle.Asn1.Cmp.PkiFreeText.Size">
-             Return the number of string elements present.
-            
-             @return number of elements present.
-        </member>
-        <member name="P:Org.BouncyCastle.Asn1.Cmp.PkiFreeText.Item(System.Int32)">
-             Return the UTF8STRING at index.
-            
-             @param index index of the string of interest
-             @return the string at index.
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.Cmp.PkiHeader.NULL_NAME">
-            Value for a "null" recipient or sender.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cmp.PkiHeader.ToAsn1Object">
-            <pre>
-             PkiHeader ::= SEQUENCE {
-                       pvno                INTEGER     { cmp1999(1), cmp2000(2) },
-                       sender              GeneralName,
-                       -- identifies the sender
-                       recipient           GeneralName,
-                       -- identifies the intended recipient
-                       messageTime     [0] GeneralizedTime         OPTIONAL,
-                       -- time of production of this message (used when sender
-                       -- believes that the transport will be "suitable"; i.e.,
-                       -- that the time will still be meaningful upon receipt)
-                       protectionAlg   [1] AlgorithmIdentifier     OPTIONAL,
-                       -- algorithm used for calculation of protection bits
-                       senderKID       [2] KeyIdentifier           OPTIONAL,
-                       recipKID        [3] KeyIdentifier           OPTIONAL,
-                       -- to identify specific keys used for protection
-                       transactionID   [4] OCTET STRING            OPTIONAL,
-                       -- identifies the transaction; i.e., this will be the same in
-                       -- corresponding request, response, certConf, and PKIConf
-                       -- messages
-                       senderNonce     [5] OCTET STRING            OPTIONAL,
-                       recipNonce      [6] OCTET STRING            OPTIONAL,
-                       -- nonces used to provide replay protection, senderNonce
-                       -- is inserted by the creator of this message; recipNonce
-                       -- is a nonce previously inserted in a related message by
-                       -- the intended recipient of this message
-                       freeText        [7] PKIFreeText             OPTIONAL,
-                       -- this may be used to indicate context-specific instructions
-                       -- (this field is intended for human consumption)
-                       generalInfo     [8] SEQUENCE SIZE (1..MAX) OF
-                                            InfoTypeAndValue     OPTIONAL
-                       -- this may be used to convey context-specific information
-                       -- (this field not primarily intended for human consumption)
-            }
-            </pre>
-            @return a basic ASN.1 object representation.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cmp.PkiHeaderBuilder.Build">
-            <pre>
-             PKIHeader ::= SEQUENCE {
-                       pvno                INTEGER     { cmp1999(1), cmp2000(2) },
-                       sender              GeneralName,
-                       -- identifies the sender
-                       recipient           GeneralName,
-                       -- identifies the intended recipient
-                       messageTime     [0] GeneralizedTime         OPTIONAL,
-                       -- time of production of this message (used when sender
-                       -- believes that the transport will be "suitable"; i.e.,
-                       -- that the time will still be meaningful upon receipt)
-                       protectionAlg   [1] AlgorithmIdentifier     OPTIONAL,
-                       -- algorithm used for calculation of protection bits
-                       senderKID       [2] KeyIdentifier           OPTIONAL,
-                       recipKID        [3] KeyIdentifier           OPTIONAL,
-                       -- to identify specific keys used for protection
-                       transactionID   [4] OCTET STRING            OPTIONAL,
-                       -- identifies the transaction; i.e., this will be the same in
-                       -- corresponding request, response, certConf, and PKIConf
-                       -- messages
-                       senderNonce     [5] OCTET STRING            OPTIONAL,
-                       recipNonce      [6] OCTET STRING            OPTIONAL,
-                       -- nonces used to provide replay protection, senderNonce
-                       -- is inserted by the creator of this message; recipNonce
-                       -- is a nonce previously inserted in a related message by
-                       -- the intended recipient of this message
-                       freeText        [7] PKIFreeText             OPTIONAL,
-                       -- this may be used to indicate context-specific instructions
-                       -- (this field is intended for human consumption)
-                       generalInfo     [8] SEQUENCE SIZE (1..MAX) OF
-                                            InfoTypeAndValue     OPTIONAL
-                       -- this may be used to convey context-specific information
-                       -- (this field not primarily intended for human consumption)
-            }
-            </pre>
-            @return a basic ASN.1 object representation.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cmp.PkiMessage.#ctor(Org.BouncyCastle.Asn1.Cmp.PkiHeader,Org.BouncyCastle.Asn1.Cmp.PkiBody,Org.BouncyCastle.Asn1.DerBitString,Org.BouncyCastle.Asn1.Cmp.CmpCertificate[])">
-             Creates a new PkiMessage.
-            
-             @param header message header
-             @param body message body
-             @param protection message protection (may be null)
-             @param extraCerts extra certificates (may be null)
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cmp.PkiMessage.ToAsn1Object">
-            <pre>
-            PkiMessage ::= SEQUENCE {
-                             header           PKIHeader,
-                             body             PKIBody,
-                             protection   [0] PKIProtection OPTIONAL,
-                             extraCerts   [1] SEQUENCE SIZE (1..MAX) OF CMPCertificate
-                                                                                OPTIONAL
-            }
-            </pre>
-            @return a basic ASN.1 object representation.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cmp.PkiMessages.ToAsn1Object">
-            <pre>
-            PkiMessages ::= SEQUENCE SIZE (1..MAX) OF PkiMessage
-            </pre>
-            @return a basic ASN.1 object representation.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cmp.PkiStatusInfo.#ctor(System.Int32)">
-            @param status
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cmp.PkiStatusInfo.#ctor(System.Int32,Org.BouncyCastle.Asn1.Cmp.PkiFreeText)">
-            @param status
-            @param statusString
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cmp.PkiStatusInfo.ToAsn1Object">
-             <pre>
-             PkiStatusInfo ::= SEQUENCE {
-                 status        PKIStatus,                (INTEGER)
-                 statusString  PkiFreeText     OPTIONAL,
-                 failInfo      PkiFailureInfo  OPTIONAL  (BIT STRING)
-             }
-            
-             PKIStatus:
-               granted                (0), -- you got exactly what you asked for
-               grantedWithMods        (1), -- you got something like what you asked for
-               rejection              (2), -- you don't get it, more information elsewhere in the message
-               waiting                (3), -- the request body part has not yet been processed, expect to hear more later
-               revocationWarning      (4), -- this message contains a warning that a revocation is imminent
-               revocationNotification (5), -- notification that a revocation has occurred
-               keyUpdateWarning       (6)  -- update already done for the oldCertId specified in CertReqMsg
-            
-             PkiFailureInfo:
-               badAlg           (0), -- unrecognized or unsupported Algorithm Identifier
-               badMessageCheck  (1), -- integrity check failed (e.g., signature did not verify)
-               badRequest       (2), -- transaction not permitted or supported
-               badTime          (3), -- messageTime was not sufficiently close to the system time, as defined by local policy
-               badCertId        (4), -- no certificate could be found matching the provided criteria
-               badDataFormat    (5), -- the data submitted has the wrong format
-               wrongAuthority   (6), -- the authority indicated in the request is different from the one creating the response token
-               incorrectData    (7), -- the requester's data is incorrect (for notary services)
-               missingTimeStamp (8), -- when the timestamp is missing but should be there (by policy)
-               badPOP           (9)  -- the proof-of-possession failed
-            
-             </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cmp.PollRepContent.ToAsn1Object">
-            <pre>
-            PollRepContent ::= SEQUENCE OF SEQUENCE {
-                    certReqId              INTEGER,
-                    checkAfter             INTEGER,  -- time in seconds
-                    reason                 PKIFreeText OPTIONAL
-                }
-            </pre>
-            @return a basic ASN.1 object representation.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cmp.PollReqContent.ToAsn1Object">
-            <pre>
-            PollReqContent ::= SEQUENCE OF SEQUENCE {
-                                   certReqId              INTEGER
-            }
-            </pre>
-            @return a basic ASN.1 object representation.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cmp.PopoDecKeyChallContent.ToAsn1Object">
-            <pre>
-            PopoDecKeyChallContent ::= SEQUENCE OF Challenge
-            </pre>
-            @return a basic ASN.1 object representation.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cmp.PopoDecKeyRespContent.ToAsn1Object">
-            <pre>
-            PopoDecKeyRespContent ::= SEQUENCE OF INTEGER
-            </pre>
-            @return a basic ASN.1 object representation.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cmp.ProtectedPart.ToAsn1Object">
-            <pre>
-            ProtectedPart ::= SEQUENCE {
-                               header    PKIHeader,
-                               body      PKIBody
-            }
-            </pre>
-            @return a basic ASN.1 object representation.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cmp.RevAnnContent.ToAsn1Object">
-            <pre>
-            RevAnnContent ::= SEQUENCE {
-                  status              PKIStatus,
-                  certId              CertId,
-                  willBeRevokedAt     GeneralizedTime,
-                  badSinceDate        GeneralizedTime,
-                  crlDetails          Extensions  OPTIONAL
-                   -- extra CRL details (e.g., crl number, reason, location, etc.)
-            }
-            </pre>
-            @return a basic ASN.1 object representation.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cmp.RevDetails.ToAsn1Object">
-            <pre>
-            RevDetails ::= SEQUENCE {
-                             certDetails         CertTemplate,
-                              -- allows requester to specify as much as they can about
-                              -- the cert. for which revocation is requested
-                              -- (e.g., for cases in which serialNumber is not available)
-                              crlEntryDetails     Extensions       OPTIONAL
-                              -- requested crlEntryExtensions
-                        }
-            </pre>
-            @return a basic ASN.1 object representation.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cmp.RevRepContent.ToAsn1Object">
-            <pre>
-            RevRepContent ::= SEQUENCE {
-                   status       SEQUENCE SIZE (1..MAX) OF PKIStatusInfo,
-                   -- in same order as was sent in RevReqContent
-                   revCerts [0] SEQUENCE SIZE (1..MAX) OF CertId OPTIONAL,
-                   -- IDs for which revocation was requested
-                   -- (same order as status)
-                   crls     [1] SEQUENCE SIZE (1..MAX) OF CertificateList OPTIONAL
-                   -- the resulting CRLs (there may be more than one)
-              }
-            </pre>
-            @return a basic ASN.1 object representation.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cmp.RevReqContent.ToAsn1Object">
-            <pre>
-            RevReqContent ::= SEQUENCE OF RevDetails
-            </pre>
-            @return a basic ASN.1 object representation.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.Attribute.GetInstance(System.Object)">
-             return an Attribute object from the given object.
-            
-             @param o the object we want converted.
-             @exception ArgumentException if the object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.Attribute.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-            Attribute ::= SEQUENCE {
-                attrType OBJECT IDENTIFIER,
-                attrValues SET OF AttributeValue
-            }
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.Attributes.ToAsn1Object">
-            <pre>
-            Attributes ::=
-              SET SIZE(1..MAX) OF Attribute -- according to RFC 5652
-            </pre>
-            @return
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.AttributeTable.GetAll(Org.BouncyCastle.Asn1.DerObjectIdentifier)">
-             Return all the attributes matching the OBJECT IDENTIFIER oid. The vector will be
-             empty if there are no attributes of the required type present.
-            
-             @param oid type of attribute required.
-             @return a vector of all the attributes found of type oid.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.AttributeTable.Add(Org.BouncyCastle.Asn1.DerObjectIdentifier,Org.BouncyCastle.Asn1.Asn1Encodable)">
-             Return a new table with the passed in attribute added.
-            
-             @param attrType
-             @param attrValue
-             @return
-        </member>
-        <member name="P:Org.BouncyCastle.Asn1.Cms.AttributeTable.Item(Org.BouncyCastle.Asn1.DerObjectIdentifier)">
-            <summary>Return the first attribute matching the given OBJECT IDENTIFIER</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.AuthenticatedData.GetInstance(Org.BouncyCastle.Asn1.Asn1TaggedObject,System.Boolean)">
-             return an AuthenticatedData object from a tagged object.
-            
-             @param obj      the tagged object holding the object we want.
-             @param isExplicit true if the object is meant to be explicitly
-                             tagged false otherwise.
-             @throws ArgumentException if the object held by the
-                                              tagged object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.AuthenticatedData.GetInstance(System.Object)">
-             return an AuthenticatedData object from the given object.
-            
-             @param obj the object we want converted.
-             @throws ArgumentException if the object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.AuthenticatedData.ToAsn1Object">
-             Produce an object suitable for an Asn1OutputStream.
-             <pre>
-             AuthenticatedData ::= SEQUENCE {
-                   version CMSVersion,
-                   originatorInfo [0] IMPLICIT OriginatorInfo OPTIONAL,
-                   recipientInfos RecipientInfos,
-                   macAlgorithm MessageAuthenticationCodeAlgorithm,
-                   digestAlgorithm [1] DigestAlgorithmIdentifier OPTIONAL,
-                   encapContentInfo EncapsulatedContentInfo,
-                   authAttrs [2] IMPLICIT AuthAttributes OPTIONAL,
-                   mac MessageAuthenticationCode,
-                   unauthAttrs [3] IMPLICIT UnauthAttributes OPTIONAL }
-            
-             AuthAttributes ::= SET SIZE (1..MAX) OF Attribute
-            
-             UnauthAttributes ::= SET SIZE (1..MAX) OF Attribute
-            
-             MessageAuthenticationCode ::= OCTET STRING
-             </pre>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.Cms.AuthenticatedDataParser">
-             Produce an object suitable for an Asn1OutputStream.
-             <pre>
-             AuthenticatedData ::= SEQUENCE {
-                   version CMSVersion,
-                   originatorInfo [0] IMPLICIT OriginatorInfo OPTIONAL,
-                   recipientInfos RecipientInfos,
-                   macAlgorithm MessageAuthenticationCodeAlgorithm,
-                   digestAlgorithm [1] DigestAlgorithmIdentifier OPTIONAL,
-                   encapContentInfo EncapsulatedContentInfo,
-                   authAttrs [2] IMPLICIT AuthAttributes OPTIONAL,
-                   mac MessageAuthenticationCode,
-                   unauthAttrs [3] IMPLICIT UnauthAttributes OPTIONAL }
-            
-             AuthAttributes ::= SET SIZE (1..MAX) OF Attribute
-            
-             UnauthAttributes ::= SET SIZE (1..MAX) OF Attribute
-            
-             MessageAuthenticationCode ::= OCTET STRING
-             </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.AuthEnvelopedData.GetInstance(Org.BouncyCastle.Asn1.Asn1TaggedObject,System.Boolean)">
-             return an AuthEnvelopedData object from a tagged object.
-            
-             @param obj      the tagged object holding the object we want.
-             @param isExplicit true if the object is meant to be explicitly
-                             tagged false otherwise.
-             @throws ArgumentException if the object held by the
-                                              tagged object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.AuthEnvelopedData.GetInstance(System.Object)">
-             return an AuthEnvelopedData object from the given object.
-            
-             @param obj the object we want converted.
-             @throws ArgumentException if the object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.AuthEnvelopedData.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-            AuthEnvelopedData ::= SEQUENCE {
-              version CMSVersion,
-              originatorInfo [0] IMPLICIT OriginatorInfo OPTIONAL,
-              recipientInfos RecipientInfos,
-              authEncryptedContentInfo EncryptedContentInfo,
-              authAttrs [1] IMPLICIT AuthAttributes OPTIONAL,
-              mac MessageAuthenticationCode,
-              unauthAttrs [2] IMPLICIT UnauthAttributes OPTIONAL }
-            </pre>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.Cms.AuthEnvelopedDataParser">
-            Produce an object suitable for an Asn1OutputStream.
-            
-            <pre>
-            AuthEnvelopedData ::= SEQUENCE {
-              version CMSVersion,
-              originatorInfo [0] IMPLICIT OriginatorInfo OPTIONAL,
-              recipientInfos RecipientInfos,
-              authEncryptedContentInfo EncryptedContentInfo,
-              authAttrs [1] IMPLICIT AuthAttributes OPTIONAL,
-              mac MessageAuthenticationCode,
-              unauthAttrs [2] IMPLICIT UnauthAttributes OPTIONAL }
-            </pre>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.Cms.CompressedData">
-            RFC 3274 - CMS Compressed Data.
-            <pre>
-            CompressedData ::= Sequence {
-             version CMSVersion,
-             compressionAlgorithm CompressionAlgorithmIdentifier,
-             encapContentInfo EncapsulatedContentInfo
-            }
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.CompressedData.GetInstance(Org.BouncyCastle.Asn1.Asn1TaggedObject,System.Boolean)">
-             return a CompressedData object from a tagged object.
-            
-             @param ato the tagged object holding the object we want.
-             @param explicitly true if the object is meant to be explicitly
-                          tagged false otherwise.
-             @exception ArgumentException if the object held by the
-                      tagged object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.CompressedData.GetInstance(System.Object)">
-             return a CompressedData object from the given object.
-            
-             @param _obj the object we want converted.
-             @exception ArgumentException if the object cannot be converted.
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.Cms.CompressedDataParser">
-            RFC 3274 - CMS Compressed Data.
-            <pre>
-            CompressedData ::= SEQUENCE {
-             version CMSVersion,
-             compressionAlgorithm CompressionAlgorithmIdentifier,
-             encapContentInfo EncapsulatedContentInfo
-            }
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.ContentInfo.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-            ContentInfo ::= Sequence {
-                     contentType ContentType,
-                     content
-                     [0] EXPLICIT ANY DEFINED BY contentType OPTIONAL }
-            </pre>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.Cms.ContentInfoParser">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-            ContentInfo ::= SEQUENCE {
-                     contentType ContentType,
-                     content
-                     [0] EXPLICIT ANY DEFINED BY contentType OPTIONAL }
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.Ecc.MQVuserKeyingMaterial.GetInstance(Org.BouncyCastle.Asn1.Asn1TaggedObject,System.Boolean)">
-             return an AuthEnvelopedData object from a tagged object.
-            
-             @param obj      the tagged object holding the object we want.
-             @param isExplicit true if the object is meant to be explicitly
-                             tagged false otherwise.
-             @throws ArgumentException if the object held by the
-                                              tagged object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.Ecc.MQVuserKeyingMaterial.GetInstance(System.Object)">
-             return an AuthEnvelopedData object from the given object.
-            
-             @param obj the object we want converted.
-             @throws ArgumentException if the object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.Ecc.MQVuserKeyingMaterial.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-            MQVuserKeyingMaterial ::= SEQUENCE {
-              ephemeralPublicKey OriginatorPublicKey,
-              addedukm [0] EXPLICIT UserKeyingMaterial OPTIONAL  }
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.EncryptedContentInfo.GetInstance(System.Object)">
-             return an EncryptedContentInfo object from the given object.
-            
-             @param obj the object we want converted.
-             @exception ArgumentException if the object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.EncryptedContentInfo.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-            EncryptedContentInfo ::= Sequence {
-                contentType ContentType,
-                contentEncryptionAlgorithm ContentEncryptionAlgorithmIdentifier,
-                encryptedContent [0] IMPLICIT EncryptedContent OPTIONAL
-            }
-            </pre>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.Cms.EncryptedContentInfoParser">
-            <pre>
-            EncryptedContentInfo ::= SEQUENCE {
-                contentType ContentType,
-                contentEncryptionAlgorithm ContentEncryptionAlgorithmIdentifier,
-                encryptedContent [0] IMPLICIT EncryptedContent OPTIONAL
-            }
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.EncryptedData.ToAsn1Object">
-            <pre>
-                  EncryptedData ::= SEQUENCE {
-                                version CMSVersion,
-                                encryptedContentInfo EncryptedContentInfo,
-                                unprotectedAttrs [1] IMPLICIT UnprotectedAttributes OPTIONAL }
-            </pre>
-            @return a basic ASN.1 object representation.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.EnvelopedData.GetInstance(Org.BouncyCastle.Asn1.Asn1TaggedObject,System.Boolean)">
-             return an EnvelopedData object from a tagged object.
-            
-             @param obj the tagged object holding the object we want.
-             @param explicitly true if the object is meant to be explicitly
-                          tagged false otherwise.
-             @exception ArgumentException if the object held by the
-                      tagged object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.EnvelopedData.GetInstance(System.Object)">
-             return an EnvelopedData object from the given object.
-            
-             @param obj the object we want converted.
-             @exception ArgumentException if the object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.EnvelopedData.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-            EnvelopedData ::= Sequence {
-                version CMSVersion,
-                originatorInfo [0] IMPLICIT OriginatorInfo OPTIONAL,
-                recipientInfos RecipientInfos,
-                encryptedContentInfo EncryptedContentInfo,
-                unprotectedAttrs [1] IMPLICIT UnprotectedAttributes OPTIONAL
-            }
-            </pre>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.Cms.EnvelopedDataParser">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-            EnvelopedData ::= SEQUENCE {
-                version CMSVersion,
-                originatorInfo [0] IMPLICIT OriginatorInfo OPTIONAL,
-                recipientInfos RecipientInfos,
-                encryptedContentInfo EncryptedContentInfo,
-                unprotectedAttrs [1] IMPLICIT UnprotectedAttributes OPTIONAL
-            }
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.KekIdentifier.GetInstance(Org.BouncyCastle.Asn1.Asn1TaggedObject,System.Boolean)">
-             return a KekIdentifier object from a tagged object.
-            
-             @param obj the tagged object holding the object we want.
-             @param explicitly true if the object is meant to be explicitly
-                          tagged false otherwise.
-             @exception ArgumentException if the object held by the
-                      tagged object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.KekIdentifier.GetInstance(System.Object)">
-             return a KekIdentifier object from the given object.
-            
-             @param obj the object we want converted.
-             @exception ArgumentException if the object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.KekIdentifier.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-            KekIdentifier ::= Sequence {
-                keyIdentifier OCTET STRING,
-                date GeneralizedTime OPTIONAL,
-                other OtherKeyAttribute OPTIONAL
-            }
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.KekRecipientInfo.GetInstance(Org.BouncyCastle.Asn1.Asn1TaggedObject,System.Boolean)">
-             return a KekRecipientInfo object from a tagged object.
-            
-             @param obj the tagged object holding the object we want.
-             @param explicitly true if the object is meant to be explicitly
-                          tagged false otherwise.
-             @exception ArgumentException if the object held by the
-                      tagged object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.KekRecipientInfo.GetInstance(System.Object)">
-             return a KekRecipientInfo object from the given object.
-            
-             @param obj the object we want converted.
-             @exception ArgumentException if the object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.KekRecipientInfo.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-            KekRecipientInfo ::= Sequence {
-                version CMSVersion,  -- always set to 4
-                kekID KekIdentifier,
-                keyEncryptionAlgorithm KeyEncryptionAlgorithmIdentifier,
-                encryptedKey EncryptedKey
-            }
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.KeyAgreeRecipientIdentifier.GetInstance(Org.BouncyCastle.Asn1.Asn1TaggedObject,System.Boolean)">
-             return an KeyAgreeRecipientIdentifier object from a tagged object.
-            
-             @param obj the tagged object holding the object we want.
-             @param isExplicit true if the object is meant to be explicitly
-                          tagged false otherwise.
-             @exception ArgumentException if the object held by the
-                      tagged object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.KeyAgreeRecipientIdentifier.GetInstance(System.Object)">
-             return an KeyAgreeRecipientIdentifier object from the given object.
-            
-             @param obj the object we want converted.
-             @exception ArgumentException if the object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.KeyAgreeRecipientIdentifier.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-            KeyAgreeRecipientIdentifier ::= CHOICE {
-                issuerAndSerialNumber IssuerAndSerialNumber,
-                rKeyId [0] IMPLICIT RecipientKeyIdentifier
-            }
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.KeyAgreeRecipientInfo.GetInstance(Org.BouncyCastle.Asn1.Asn1TaggedObject,System.Boolean)">
-             return a KeyAgreeRecipientInfo object from a tagged object.
-            
-             @param obj the tagged object holding the object we want.
-             @param explicitly true if the object is meant to be explicitly
-                          tagged false otherwise.
-             @exception ArgumentException if the object held by the
-                      tagged object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.KeyAgreeRecipientInfo.GetInstance(System.Object)">
-             return a KeyAgreeRecipientInfo object from the given object.
-            
-             @param obj the object we want converted.
-             @exception ArgumentException if the object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.KeyAgreeRecipientInfo.ToAsn1Object">
-                     * Produce an object suitable for an Asn1OutputStream.
-                     * <pre>
-                     * KeyAgreeRecipientInfo ::= Sequence {
-                     *     version CMSVersion,  -- always set to 3
-                     *     originator [0] EXPLICIT OriginatorIdentifierOrKey,
-                     *     ukm [1] EXPLICIT UserKeyingMaterial OPTIONAL,
-                     *     keyEncryptionAlgorithm KeyEncryptionAlgorithmIdentifier,
-                     *     recipientEncryptedKeys RecipientEncryptedKeys
-                     * }
-            		 *
-            		 * UserKeyingMaterial ::= OCTET STRING
-                     * </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.KeyTransRecipientInfo.GetInstance(System.Object)">
-             return a KeyTransRecipientInfo object from the given object.
-            
-             @param obj the object we want converted.
-             @exception ArgumentException if the object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.KeyTransRecipientInfo.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-            KeyTransRecipientInfo ::= Sequence {
-                version CMSVersion,  -- always set to 0 or 2
-                rid RecipientIdentifier,
-                keyEncryptionAlgorithm KeyEncryptionAlgorithmIdentifier,
-                encryptedKey EncryptedKey
-            }
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.MetaData.ToAsn1Object">
-            <pre>
-            MetaData ::= SEQUENCE {
-              hashProtected        BOOLEAN,
-              fileName             UTF8String OPTIONAL,
-              mediaType            IA5String OPTIONAL,
-              otherMetaData        Attributes OPTIONAL
-            }
-            </pre>
-            @return
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.OriginatorIdentifierOrKey.GetInstance(Org.BouncyCastle.Asn1.Asn1TaggedObject,System.Boolean)">
-             return an OriginatorIdentifierOrKey object from a tagged object.
-            
-             @param o the tagged object holding the object we want.
-             @param explicitly true if the object is meant to be explicitly
-                          tagged false otherwise.
-             @exception ArgumentException if the object held by the
-                      tagged object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.OriginatorIdentifierOrKey.GetInstance(System.Object)">
-             return an OriginatorIdentifierOrKey object from the given object.
-            
-             @param o the object we want converted.
-             @exception ArgumentException if the object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.OriginatorIdentifierOrKey.ToAsn1Object">
-             Produce an object suitable for an Asn1OutputStream.
-             <pre>
-             OriginatorIdentifierOrKey ::= CHOICE {
-                 issuerAndSerialNumber IssuerAndSerialNumber,
-                 subjectKeyIdentifier [0] SubjectKeyIdentifier,
-                 originatorKey [1] OriginatorPublicKey
-             }
-            
-             SubjectKeyIdentifier ::= OCTET STRING
-             </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.OriginatorInfo.GetInstance(Org.BouncyCastle.Asn1.Asn1TaggedObject,System.Boolean)">
-             return an OriginatorInfo object from a tagged object.
-            
-             @param obj the tagged object holding the object we want.
-             @param explicitly true if the object is meant to be explicitly
-                          tagged false otherwise.
-             @exception ArgumentException if the object held by the
-                      tagged object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.OriginatorInfo.GetInstance(System.Object)">
-             return an OriginatorInfo object from the given object.
-            
-             @param obj the object we want converted.
-             @exception ArgumentException if the object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.OriginatorInfo.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-            OriginatorInfo ::= Sequence {
-                certs [0] IMPLICIT CertificateSet OPTIONAL,
-                crls [1] IMPLICIT CertificateRevocationLists OPTIONAL
-            }
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.OriginatorPublicKey.GetInstance(Org.BouncyCastle.Asn1.Asn1TaggedObject,System.Boolean)">
-             return an OriginatorPublicKey object from a tagged object.
-            
-             @param obj the tagged object holding the object we want.
-             @param explicitly true if the object is meant to be explicitly
-                          tagged false otherwise.
-             @exception ArgumentException if the object held by the
-                      tagged object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.OriginatorPublicKey.GetInstance(System.Object)">
-             return an OriginatorPublicKey object from the given object.
-            
-             @param obj the object we want converted.
-             @exception ArgumentException if the object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.OriginatorPublicKey.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-            OriginatorPublicKey ::= Sequence {
-                algorithm AlgorithmIdentifier,
-                publicKey BIT STRING
-            }
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.OtherKeyAttribute.GetInstance(System.Object)">
-             return an OtherKeyAttribute object from the given object.
-            
-             @param o the object we want converted.
-             @exception ArgumentException if the object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.OtherKeyAttribute.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-            OtherKeyAttribute ::= Sequence {
-                keyAttrId OBJECT IDENTIFIER,
-                keyAttr ANY DEFINED BY keyAttrId OPTIONAL
-            }
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.OtherRecipientInfo.GetInstance(Org.BouncyCastle.Asn1.Asn1TaggedObject,System.Boolean)">
-             return a OtherRecipientInfo object from a tagged object.
-            
-             @param obj the tagged object holding the object we want.
-             @param explicitly true if the object is meant to be explicitly
-                          tagged false otherwise.
-             @exception ArgumentException if the object held by the
-                      tagged object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.OtherRecipientInfo.GetInstance(System.Object)">
-             return a OtherRecipientInfo object from the given object.
-            
-             @param obj the object we want converted.
-             @exception ArgumentException if the object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.OtherRecipientInfo.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-            OtherRecipientInfo ::= Sequence {
-               oriType OBJECT IDENTIFIER,
-               oriValue ANY DEFINED BY oriType }
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.PasswordRecipientInfo.GetInstance(Org.BouncyCastle.Asn1.Asn1TaggedObject,System.Boolean)">
-             return a PasswordRecipientInfo object from a tagged object.
-            
-             @param obj the tagged object holding the object we want.
-             @param explicitly true if the object is meant to be explicitly
-                          tagged false otherwise.
-             @exception ArgumentException if the object held by the
-                      tagged object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.PasswordRecipientInfo.GetInstance(System.Object)">
-             return a PasswordRecipientInfo object from the given object.
-            
-             @param obj the object we want converted.
-             @exception ArgumentException if the object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.PasswordRecipientInfo.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-            PasswordRecipientInfo ::= Sequence {
-              version CMSVersion,   -- Always set to 0
-              keyDerivationAlgorithm [0] KeyDerivationAlgorithmIdentifier
-                                        OPTIONAL,
-             keyEncryptionAlgorithm KeyEncryptionAlgorithmIdentifier,
-             encryptedKey EncryptedKey }
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.RecipientEncryptedKey.GetInstance(Org.BouncyCastle.Asn1.Asn1TaggedObject,System.Boolean)">
-             return an RecipientEncryptedKey object from a tagged object.
-            
-             @param obj the tagged object holding the object we want.
-             @param isExplicit true if the object is meant to be explicitly
-                          tagged false otherwise.
-             @exception ArgumentException if the object held by the
-                      tagged object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.RecipientEncryptedKey.GetInstance(System.Object)">
-             return a RecipientEncryptedKey object from the given object.
-            
-             @param obj the object we want converted.
-             @exception ArgumentException if the object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.RecipientEncryptedKey.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-            RecipientEncryptedKey ::= SEQUENCE {
-                rid KeyAgreeRecipientIdentifier,
-                encryptedKey EncryptedKey
-            }
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.RecipientIdentifier.GetInstance(System.Object)">
-             return a RecipientIdentifier object from the given object.
-            
-             @param o the object we want converted.
-             @exception ArgumentException if the object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.RecipientIdentifier.ToAsn1Object">
-             Produce an object suitable for an Asn1OutputStream.
-             <pre>
-             RecipientIdentifier ::= CHOICE {
-                 issuerAndSerialNumber IssuerAndSerialNumber,
-                 subjectKeyIdentifier [0] SubjectKeyIdentifier
-             }
-            
-             SubjectKeyIdentifier ::= OCTET STRING
-             </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.RecipientInfo.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-            RecipientInfo ::= CHOICE {
-                ktri KeyTransRecipientInfo,
-                kari [1] KeyAgreeRecipientInfo,
-                kekri [2] KekRecipientInfo,
-                pwri [3] PasswordRecipientInfo,
-                ori [4] OtherRecipientInfo }
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.RecipientKeyIdentifier.GetInstance(Org.BouncyCastle.Asn1.Asn1TaggedObject,System.Boolean)">
-             return a RecipientKeyIdentifier object from a tagged object.
-            
-             @param _ato the tagged object holding the object we want.
-             @param _explicit true if the object is meant to be explicitly
-                          tagged false otherwise.
-             @exception ArgumentException if the object held by the
-                      tagged object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.RecipientKeyIdentifier.GetInstance(System.Object)">
-             return a RecipientKeyIdentifier object from the given object.
-            
-             @param _obj the object we want converted.
-             @exception ArgumentException if the object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.RecipientKeyIdentifier.ToAsn1Object">
-             Produce an object suitable for an Asn1OutputStream.
-             <pre>
-             RecipientKeyIdentifier ::= Sequence {
-                 subjectKeyIdentifier SubjectKeyIdentifier,
-                 date GeneralizedTime OPTIONAL,
-                 other OtherKeyAttribute OPTIONAL
-             }
-            
-             SubjectKeyIdentifier ::= OCTET STRING
-             </pre>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.Cms.SignedData">
-            a signed data object.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.SignedData.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-            SignedData ::= Sequence {
-                version CMSVersion,
-                digestAlgorithms DigestAlgorithmIdentifiers,
-                encapContentInfo EncapsulatedContentInfo,
-                certificates [0] IMPLICIT CertificateSet OPTIONAL,
-                crls [1] IMPLICIT CertificateRevocationLists OPTIONAL,
-                signerInfos SignerInfos
-              }
-            </pre>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.Cms.SignedDataParser">
-            <pre>
-            SignedData ::= SEQUENCE {
-                version CMSVersion,
-                digestAlgorithms DigestAlgorithmIdentifiers,
-                encapContentInfo EncapsulatedContentInfo,
-                certificates [0] IMPLICIT CertificateSet OPTIONAL,
-                crls [1] IMPLICIT CertificateRevocationLists OPTIONAL,
-                signerInfos SignerInfos
-              }
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.SignerIdentifier.GetInstance(System.Object)">
-             return a SignerIdentifier object from the given object.
-            
-             @param o the object we want converted.
-             @exception ArgumentException if the object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.SignerIdentifier.ToAsn1Object">
-             Produce an object suitable for an Asn1OutputStream.
-             <pre>
-             SignerIdentifier ::= CHOICE {
-                 issuerAndSerialNumber IssuerAndSerialNumber,
-                 subjectKeyIdentifier [0] SubjectKeyIdentifier
-             }
-            
-             SubjectKeyIdentifier ::= OCTET STRING
-             </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.SignerInfo.ToAsn1Object">
-             Produce an object suitable for an Asn1OutputStream.
-             <pre>
-              SignerInfo ::= Sequence {
-                  version Version,
-                  SignerIdentifier sid,
-                  digestAlgorithm DigestAlgorithmIdentifier,
-                  authenticatedAttributes [0] IMPLICIT Attributes OPTIONAL,
-                  digestEncryptionAlgorithm DigestEncryptionAlgorithmIdentifier,
-                  encryptedDigest EncryptedDigest,
-                  unauthenticatedAttributes [1] IMPLICIT Attributes OPTIONAL
-              }
-            
-              EncryptedDigest ::= OCTET STRING
-            
-              DigestAlgorithmIdentifier ::= AlgorithmIdentifier
-            
-              DigestEncryptionAlgorithmIdentifier ::= AlgorithmIdentifier
-             </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.Time.#ctor(System.DateTime)">
-            creates a time object from a given date - if the date is between 1950
-            and 2049 a UTCTime object is Generated, otherwise a GeneralizedTime
-            is used.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.Time.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-            Time ::= CHOICE {
-                        utcTime        UTCTime,
-                        generalTime    GeneralizedTime }
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.TimeStampAndCrl.ToAsn1Object">
-            <pre>
-            TimeStampAndCRL ::= SEQUENCE {
-                timeStamp   TimeStampToken,          -- according to RFC 3161
-                crl         CertificateList OPTIONAL -- according to RFC 5280
-             }
-            </pre>
-            @return
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.TimeStampedData.ToAsn1Object">
-            <pre>
-            TimeStampedData ::= SEQUENCE {
-              version              INTEGER { v1(1) },
-              dataUri              IA5String OPTIONAL,
-              metaData             MetaData OPTIONAL,
-              content              OCTET STRING OPTIONAL,
-              temporalEvidence     Evidence
-            }
-            </pre>
-            @return
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Cms.TimeStampTokenEvidence.ToAsn1Object">
-            <pre>
-            TimeStampTokenEvidence ::=
-               SEQUENCE SIZE(1..MAX) OF TimeStampAndCrl
-            </pre>
-            @return
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Crmf.AttributeTypeAndValue.ToAsn1Object">
-            <pre>
-            AttributeTypeAndValue ::= SEQUENCE {
-                      type         OBJECT IDENTIFIER,
-                      value        ANY DEFINED BY type }
-            </pre>
-            @return a basic ASN.1 object representation.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Crmf.CertId.ToAsn1Object">
-            <pre>
-            CertId ::= SEQUENCE {
-                            issuer           GeneralName,
-                            serialNumber     INTEGER }
-            </pre>
-            @return a basic ASN.1 object representation.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Crmf.CertReqMessages.ToAsn1Object">
-            <pre>
-            CertReqMessages ::= SEQUENCE SIZE (1..MAX) OF CertReqMsg
-            </pre>
-            @return a basic ASN.1 object representation.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Crmf.CertReqMsg.#ctor(Org.BouncyCastle.Asn1.Crmf.CertRequest,Org.BouncyCastle.Asn1.Crmf.ProofOfPossession,Org.BouncyCastle.Asn1.Crmf.AttributeTypeAndValue[])">
-            Creates a new CertReqMsg.
-            @param certReq CertRequest
-            @param popo may be null
-            @param regInfo may be null
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Crmf.CertReqMsg.ToAsn1Object">
-            <pre>
-            CertReqMsg ::= SEQUENCE {
-                               certReq   CertRequest,
-                               pop       ProofOfPossession  OPTIONAL,
-                               -- content depends upon key type
-                               regInfo   SEQUENCE SIZE(1..MAX) OF AttributeTypeAndValue OPTIONAL }
-            </pre>
-            @return a basic ASN.1 object representation.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Crmf.CertRequest.ToAsn1Object">
-            <pre>
-            CertRequest ::= SEQUENCE {
-                                 certReqId     INTEGER,          -- ID for matching request and reply
-                                 certTemplate  CertTemplate,  -- Selected fields of cert to be issued
-                                 controls      Controls OPTIONAL }   -- Attributes affecting issuance
-            </pre>
-            @return a basic ASN.1 object representation.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Crmf.CertTemplate.ToAsn1Object">
-            <pre>
-             CertTemplate ::= SEQUENCE {
-                 version      [0] Version               OPTIONAL,
-                 serialNumber [1] INTEGER               OPTIONAL,
-                 signingAlg   [2] AlgorithmIdentifier   OPTIONAL,
-                 issuer       [3] Name                  OPTIONAL,
-                 validity     [4] OptionalValidity      OPTIONAL,
-                 subject      [5] Name                  OPTIONAL,
-                 publicKey    [6] SubjectPublicKeyInfo  OPTIONAL,
-                 issuerUID    [7] UniqueIdentifier      OPTIONAL,
-                 subjectUID   [8] UniqueIdentifier      OPTIONAL,
-                 extensions   [9] Extensions            OPTIONAL }
-            </pre>
-            @return a basic ASN.1 object representation.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Crmf.CertTemplateBuilder.SetVersion(System.Int32)">
-            Sets the X.509 version. Note: for X509v3, use 2 here. 
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Crmf.CertTemplateBuilder.SetIssuerUID(Org.BouncyCastle.Asn1.DerBitString)">
-            Sets the issuer unique ID (deprecated in X.509v3) 
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Crmf.CertTemplateBuilder.SetSubjectUID(Org.BouncyCastle.Asn1.DerBitString)">
-            Sets the subject unique ID (deprecated in X.509v3) 
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Crmf.CertTemplateBuilder.Build">
-            <pre>
-             CertTemplate ::= SEQUENCE {
-                 version      [0] Version               OPTIONAL,
-                 serialNumber [1] INTEGER               OPTIONAL,
-                 signingAlg   [2] AlgorithmIdentifier   OPTIONAL,
-                 issuer       [3] Name                  OPTIONAL,
-                 validity     [4] OptionalValidity      OPTIONAL,
-                 subject      [5] Name                  OPTIONAL,
-                 publicKey    [6] SubjectPublicKeyInfo  OPTIONAL,
-                 issuerUID    [7] UniqueIdentifier      OPTIONAL,
-                 subjectUID   [8] UniqueIdentifier      OPTIONAL,
-                 extensions   [9] Extensions            OPTIONAL }
-            </pre>
-            @return a basic ASN.1 object representation.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Crmf.Controls.ToAsn1Object">
-            <pre>
-            Controls  ::= SEQUENCE SIZE(1..MAX) OF AttributeTypeAndValue
-            </pre>
-            @return a basic ASN.1 object representation.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Crmf.EncKeyWithID.ToAsn1Object">
-            <pre>
-            EncKeyWithID ::= SEQUENCE {
-                 privateKey           PrivateKeyInfo,
-                 identifier CHOICE {
-                    string               UTF8String,
-                    generalName          GeneralName
-                } OPTIONAL
-            }
-            </pre>
-            @return
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Crmf.EncryptedKey.ToAsn1Object">
-            <pre>
-               EncryptedKey ::= CHOICE {
-                   encryptedValue        EncryptedValue, -- deprecated
-                   envelopedData     [0] EnvelopedData }
-                   -- The encrypted private key MUST be placed in the envelopedData
-                   -- encryptedContentInfo encryptedContent OCTET STRING.
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Crmf.EncryptedValue.ToAsn1Object">
-            <pre>
-            EncryptedValue ::= SEQUENCE {
-                                intendedAlg   [0] AlgorithmIdentifier  OPTIONAL,
-                                -- the intended algorithm for which the value will be used
-                                symmAlg       [1] AlgorithmIdentifier  OPTIONAL,
-                                -- the symmetric algorithm used to encrypt the value
-                                encSymmKey    [2] BIT STRING           OPTIONAL,
-                                -- the (encrypted) symmetric key used to encrypt the value
-                                keyAlg        [3] AlgorithmIdentifier  OPTIONAL,
-                                -- algorithm used to encrypt the symmetric key
-                                valueHint     [4] OCTET STRING         OPTIONAL,
-                                -- a brief description or identifier of the encValue content
-                                -- (may be meaningful only to the sending entity, and used only
-                                -- if EncryptedValue might be re-examined by the sending entity
-                                -- in the future)
-                                encValue       BIT STRING }
-                                -- the encrypted value itself
-            </pre>
-            @return a basic ASN.1 object representation.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Crmf.OptionalValidity.ToAsn1Object">
-            <pre>
-            OptionalValidity ::= SEQUENCE {
-                                   notBefore  [0] Time OPTIONAL,
-                                   notAfter   [1] Time OPTIONAL } --at least one MUST be present
-            </pre>
-            @return a basic ASN.1 object representation.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Crmf.PkiArchiveOptions.ToAsn1Object">
-            <pre>
-             PkiArchiveOptions ::= CHOICE {
-                 encryptedPrivKey     [0] EncryptedKey,
-                 -- the actual value of the private key
-                 keyGenParameters     [1] KeyGenParameters,
-                 -- parameters which allow the private key to be re-generated
-                 archiveRemGenPrivKey [2] BOOLEAN }
-                 -- set to TRUE if sender wishes receiver to archive the private
-                 -- key of a key pair that the receiver generates in response to
-                 -- this request; set to FALSE if no archival is desired.
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Crmf.PkiPublicationInfo.ToAsn1Object">
-            <pre>
-            PkiPublicationInfo ::= SEQUENCE {
-                             action     INTEGER {
-                                            dontPublish (0),
-                                            pleasePublish (1) },
-                             pubInfos  SEQUENCE SIZE (1..MAX) OF SinglePubInfo OPTIONAL }
-            -- pubInfos MUST NOT be present if action is "dontPublish"
-            -- (if action is "pleasePublish" and pubInfos is omitted,
-            -- "dontCare" is assumed)
-            </pre>
-            @return a basic ASN.1 object representation.
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.Crmf.PKMacValue">
-            Password-based MAC value for use with POPOSigningKeyInput.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Crmf.PKMacValue.#ctor(Org.BouncyCastle.Asn1.Cmp.PbmParameter,Org.BouncyCastle.Asn1.DerBitString)">
-            Creates a new PKMACValue.
-            @param params parameters for password-based MAC
-            @param value MAC of the DER-encoded SubjectPublicKeyInfo
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Crmf.PKMacValue.#ctor(Org.BouncyCastle.Asn1.X509.AlgorithmIdentifier,Org.BouncyCastle.Asn1.DerBitString)">
-            Creates a new PKMACValue.
-            @param aid CMPObjectIdentifiers.passwordBasedMAC, with PBMParameter
-            @param value MAC of the DER-encoded SubjectPublicKeyInfo
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Crmf.PKMacValue.ToAsn1Object">
-            <pre>
-            PKMACValue ::= SEQUENCE {
-                 algId  AlgorithmIdentifier,
-                 -- algorithm value shall be PasswordBasedMac 1.2.840.113533.7.66.13
-                 -- parameter value is PBMParameter
-                 value  BIT STRING }
-            </pre>
-            @return a basic ASN.1 object representation.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Crmf.PopoPrivKey.ToAsn1Object">
-            <pre>
-            PopoPrivKey ::= CHOICE {
-                   thisMessage       [0] BIT STRING,         -- Deprecated
-                    -- possession is proven in this message (which contains the private
-                    -- key itself (encrypted for the CA))
-                   subsequentMessage [1] SubsequentMessage,
-                    -- possession will be proven in a subsequent message
-                   dhMAC             [2] BIT STRING,         -- Deprecated
-                   agreeMAC          [3] PKMACValue,
-                   encryptedKey      [4] EnvelopedData }
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Crmf.PopoSigningKey.#ctor(Org.BouncyCastle.Asn1.Crmf.PopoSigningKeyInput,Org.BouncyCastle.Asn1.X509.AlgorithmIdentifier,Org.BouncyCastle.Asn1.DerBitString)">
-            Creates a new Proof of Possession object for a signing key.
-            @param poposkIn the PopoSigningKeyInput structure, or null if the
-                CertTemplate includes both subject and publicKey values.
-            @param aid the AlgorithmIdentifier used to sign the proof of possession.
-            @param signature a signature over the DER-encoded value of poposkIn,
-                or the DER-encoded value of certReq if poposkIn is null.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Crmf.PopoSigningKey.ToAsn1Object">
-            <pre>
-            PopoSigningKey ::= SEQUENCE {
-                                 poposkInput           [0] PopoSigningKeyInput OPTIONAL,
-                                 algorithmIdentifier   AlgorithmIdentifier,
-                                 signature             BIT STRING }
-             -- The signature (using "algorithmIdentifier") is on the
-             -- DER-encoded value of poposkInput.  NOTE: If the CertReqMsg
-             -- certReq CertTemplate contains the subject and publicKey values,
-             -- then poposkInput MUST be omitted and the signature MUST be
-             -- computed on the DER-encoded value of CertReqMsg certReq.  If
-             -- the CertReqMsg certReq CertTemplate does not contain the public
-             -- key and subject values, then poposkInput MUST be present and
-             -- MUST be signed.  This strategy ensures that the public key is
-             -- not present in both the poposkInput and CertReqMsg certReq
-             -- CertTemplate fields.
-            </pre>
-            @return a basic ASN.1 object representation.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Crmf.PopoSigningKeyInput.#ctor(Org.BouncyCastle.Asn1.X509.GeneralName,Org.BouncyCastle.Asn1.X509.SubjectPublicKeyInfo)">
-            Creates a new PopoSigningKeyInput with sender name as authInfo. 
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Crmf.PopoSigningKeyInput.#ctor(Org.BouncyCastle.Asn1.Crmf.PKMacValue,Org.BouncyCastle.Asn1.X509.SubjectPublicKeyInfo)">
-            Creates a new PopoSigningKeyInput using password-based MAC. 
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Crmf.PopoSigningKeyInput.ToAsn1Object">
-            <pre>
-            PopoSigningKeyInput ::= SEQUENCE {
-                   authInfo             CHOICE {
-                                            sender              [0] GeneralName,
-                                            -- used only if an authenticated identity has been
-                                            -- established for the sender (e.g., a DN from a
-                                            -- previously-issued and currently-valid certificate
-                                            publicKeyMac        PKMacValue },
-                                            -- used if no authenticated GeneralName currently exists for
-                                            -- the sender; publicKeyMac contains a password-based MAC
-                                            -- on the DER-encoded value of publicKey
-                   publicKey           SubjectPublicKeyInfo }  -- from CertTemplate
-            </pre>
-            @return a basic ASN.1 object representation.
-        </member>
-        <member name="P:Org.BouncyCastle.Asn1.Crmf.PopoSigningKeyInput.Sender">
-            Returns the sender field, or null if authInfo is publicKeyMac 
-        </member>
-        <member name="P:Org.BouncyCastle.Asn1.Crmf.PopoSigningKeyInput.PublicKeyMac">
-            Returns the publicKeyMac field, or null if authInfo is sender 
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Crmf.ProofOfPossession.#ctor">
-            Creates a ProofOfPossession with type raVerified. 
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Crmf.ProofOfPossession.#ctor(Org.BouncyCastle.Asn1.Crmf.PopoSigningKey)">
-            Creates a ProofOfPossession for a signing key. 
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Crmf.ProofOfPossession.#ctor(System.Int32,Org.BouncyCastle.Asn1.Crmf.PopoPrivKey)">
-            Creates a ProofOfPossession for key encipherment or agreement.
-            @param type one of TYPE_KEY_ENCIPHERMENT or TYPE_KEY_AGREEMENT
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Crmf.ProofOfPossession.ToAsn1Object">
-            <pre>
-            ProofOfPossession ::= CHOICE {
-                                      raVerified        [0] NULL,
-                                      -- used if the RA has already verified that the requester is in
-                                      -- possession of the private key
-                                      signature         [1] PopoSigningKey,
-                                      keyEncipherment   [2] PopoPrivKey,
-                                      keyAgreement      [3] PopoPrivKey }
-            </pre>
-            @return a basic ASN.1 object representation.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Crmf.SinglePubInfo.ToAsn1Object">
-            <pre>
-            SinglePubInfo ::= SEQUENCE {
-                   pubMethod    INTEGER {
-                      dontCare    (0),
-                      x500        (1),
-                      web         (2),
-                      ldap        (3) },
-                  pubLocation  GeneralName OPTIONAL }
-            </pre>
-            @return a basic ASN.1 object representation.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerInteger.GetInstance(System.Object)">
-             return an integer from the passed in object
-            
-             @exception ArgumentException if the object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerInteger.GetInstance(Org.BouncyCastle.Asn1.Asn1TaggedObject,System.Boolean)">
-             return an Integer from a tagged object.
-            
-             @param obj the tagged object holding the object we want
-             @param isExplicit true if the object is meant to be explicitly
-                          tagged false otherwise.
-             @exception ArgumentException if the tagged object cannot
-                           be converted.
-        </member>
-        <member name="P:Org.BouncyCastle.Asn1.DerInteger.PositiveValue">
-            in some cases positive values Get crammed into a space,
-            that's not quite big enough...
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.CryptoPro.ECGost3410NamedCurves">
-            table of the available named parameters for GOST 3410-2001.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.CryptoPro.ECGost3410NamedCurves.GetByOid(Org.BouncyCastle.Asn1.DerObjectIdentifier)">
-             return the ECDomainParameters object for the given OID, null if it
-             isn't present.
-            
-             @param oid an object identifier representing a named parameters, if present.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.CryptoPro.ECGost3410NamedCurves.GetName(Org.BouncyCastle.Asn1.DerObjectIdentifier)">
-            return the named curve name represented by the given object identifier.
-        </member>
-        <member name="P:Org.BouncyCastle.Asn1.CryptoPro.ECGost3410NamedCurves.Names">
-            returns an enumeration containing the name strings for curves
-            contained in this structure.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.CryptoPro.Gost28147Parameters.ToAsn1Object">
-             <pre>
-             Gost28147-89-Parameters ::=
-                           SEQUENCE {
-                                   iv                   Gost28147-89-IV,
-                                   encryptionParamSet   OBJECT IDENTIFIER
-                            }
-            
-               Gost28147-89-IV ::= OCTET STRING (SIZE (8))
-             </pre>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.CryptoPro.Gost3410NamedParameters">
-            table of the available named parameters for GOST 3410-94.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.CryptoPro.Gost3410NamedParameters.GetByOid(Org.BouncyCastle.Asn1.DerObjectIdentifier)">
-             return the GOST3410ParamSetParameters object for the given OID, null if it
-             isn't present.
-            
-             @param oid an object identifier representing a named parameters, if present.
-        </member>
-        <member name="P:Org.BouncyCastle.Asn1.CryptoPro.Gost3410NamedParameters.Names">
-            returns an enumeration containing the name strings for parameters
-            contained in this structure.
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.DerBmpString">
-            Der BMPString object.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerBmpString.GetInstance(System.Object)">
-             return a BMP string from the given object.
-            
-             @param obj the object we want converted.
-             @exception ArgumentException if the object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerBmpString.GetInstance(Org.BouncyCastle.Asn1.Asn1TaggedObject,System.Boolean)">
-             return a BMP string from a tagged object.
-            
-             @param obj the tagged object holding the object we want
-             @param explicitly true if the object is meant to be explicitly
-                          tagged false otherwise.
-             @exception ArgumentException if the tagged object cannot
-                          be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerBmpString.#ctor(System.Byte[])">
-            basic constructor - byte encoded string.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerBmpString.#ctor(System.String)">
-            basic constructor
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerBoolean.GetInstance(System.Object)">
-             return a bool from the passed in object.
-            
-             @exception ArgumentException if the object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerBoolean.GetInstance(System.Boolean)">
-            return a DerBoolean from the passed in bool.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerBoolean.GetInstance(Org.BouncyCastle.Asn1.Asn1TaggedObject,System.Boolean)">
-             return a Boolean from a tagged object.
-            
-             @param obj the tagged object holding the object we want
-             @param explicitly true if the object is meant to be explicitly
-                          tagged false otherwise.
-             @exception ArgumentException if the tagged object cannot
-                           be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerEnumerated.GetInstance(System.Object)">
-             return an integer from the passed in object
-            
-             @exception ArgumentException if the object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerEnumerated.GetInstance(Org.BouncyCastle.Asn1.Asn1TaggedObject,System.Boolean)">
-             return an Enumerated from a tagged object.
-            
-             @param obj the tagged object holding the object we want
-             @param explicitly true if the object is meant to be explicitly
-                          tagged false otherwise.
-             @exception ArgumentException if the tagged object cannot
-                           be converted.
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.DerExternal">
-            Class representing the DER-type External
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerExternal.#ctor(Org.BouncyCastle.Asn1.DerObjectIdentifier,Org.BouncyCastle.Asn1.DerInteger,Org.BouncyCastle.Asn1.Asn1Object,Org.BouncyCastle.Asn1.DerTaggedObject)">
-            Creates a new instance of DerExternal
-            See X.690 for more informations about the meaning of these parameters
-            @param directReference The direct reference or <code>null</code> if not set.
-            @param indirectReference The indirect reference or <code>null</code> if not set.
-            @param dataValueDescriptor The data value descriptor or <code>null</code> if not set.
-            @param externalData The external data in its encoded form.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerExternal.#ctor(Org.BouncyCastle.Asn1.DerObjectIdentifier,Org.BouncyCastle.Asn1.DerInteger,Org.BouncyCastle.Asn1.Asn1Object,System.Int32,Org.BouncyCastle.Asn1.Asn1Object)">
-            Creates a new instance of DerExternal.
-            See X.690 for more informations about the meaning of these parameters
-            @param directReference The direct reference or <code>null</code> if not set.
-            @param indirectReference The indirect reference or <code>null</code> if not set.
-            @param dataValueDescriptor The data value descriptor or <code>null</code> if not set.
-            @param encoding The encoding to be used for the external data
-            @param externalData The external data
-        </member>
-        <member name="P:Org.BouncyCastle.Asn1.DerExternal.Encoding">
-            The encoding of the content. Valid values are
-            <ul>
-            <li><code>0</code> single-ASN1-type</li>
-            <li><code>1</code> OCTET STRING</li>
-            <li><code>2</code> BIT STRING</li>
-            </ul>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.DerGeneralizedTime">
-            Generalized time object.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerGeneralizedTime.GetInstance(System.Object)">
-             return a generalized time from the passed in object
-            
-             @exception ArgumentException if the object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerGeneralizedTime.GetInstance(Org.BouncyCastle.Asn1.Asn1TaggedObject,System.Boolean)">
-             return a Generalized Time object from a tagged object.
-            
-             @param obj the tagged object holding the object we want
-             @param explicitly true if the object is meant to be explicitly
-                          tagged false otherwise.
-             @exception ArgumentException if the tagged object cannot
-                           be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerGeneralizedTime.#ctor(System.String)">
-             The correct format for this is YYYYMMDDHHMMSS[.f]Z, or without the Z
-             for local time, or Z+-HHMM on the end, for difference between local
-             time and UTC time. The fractional second amount f must consist of at
-             least one number with trailing zeroes removed.
-            
-             @param time the time string.
-             @exception ArgumentException if string is an illegal format.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerGeneralizedTime.#ctor(System.DateTime)">
-            base constructor from a local time object
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerGeneralizedTime.GetTime">
-            return the time - always in the form of
-             YYYYMMDDhhmmssGMT(+hh:mm|-hh:mm).
-            <p>
-            Normally in a certificate we would expect "Z" rather than "GMT",
-            however adding the "GMT" means we can just use:
-            <pre>
-                dateF = new SimpleDateFormat("yyyyMMddHHmmssz");
-            </pre>
-            To read in the time and Get a date which is compatible with our local
-            time zone.</p>
-        </member>
-        <member name="P:Org.BouncyCastle.Asn1.DerGeneralizedTime.TimeString">
-            Return the time.
-            @return The time string as it appeared in the encoded object.
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.DerIA5String">
-            Der IA5String object - this is an ascii string.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerIA5String.GetInstance(System.Object)">
-             return a IA5 string from the passed in object
-            
-             @exception ArgumentException if the object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerIA5String.GetInstance(Org.BouncyCastle.Asn1.Asn1TaggedObject,System.Boolean)">
-             return an IA5 string from a tagged object.
-            
-             @param obj the tagged object holding the object we want
-             @param explicitly true if the object is meant to be explicitly
-                          tagged false otherwise.
-             @exception ArgumentException if the tagged object cannot
-                           be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerIA5String.#ctor(System.Byte[])">
-            basic constructor - with bytes.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerIA5String.#ctor(System.String)">
-            basic constructor - without validation.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerIA5String.#ctor(System.String,System.Boolean)">
-             Constructor with optional validation.
-            
-             @param string the base string to wrap.
-             @param validate whether or not to check the string.
-             @throws ArgumentException if validate is true and the string
-             contains characters that should not be in an IA5String.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerIA5String.IsIA5String(System.String)">
-             return true if the passed in String can be represented without
-             loss as an IA5String, false otherwise.
-            
-             @return true if in printable set, false otherwise.
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.DerNumericString">
-            Der NumericString object - this is an ascii string of characters {0,1,2,3,4,5,6,7,8,9, }.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerNumericString.GetInstance(System.Object)">
-             return a Numeric string from the passed in object
-            
-             @exception ArgumentException if the object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerNumericString.GetInstance(Org.BouncyCastle.Asn1.Asn1TaggedObject,System.Boolean)">
-             return an Numeric string from a tagged object.
-            
-             @param obj the tagged object holding the object we want
-             @param explicitly true if the object is meant to be explicitly
-                          tagged false otherwise.
-             @exception ArgumentException if the tagged object cannot
-                           be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerNumericString.#ctor(System.Byte[])">
-            basic constructor - with bytes.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerNumericString.#ctor(System.String)">
-            basic constructor -  without validation..
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerNumericString.#ctor(System.String,System.Boolean)">
-             Constructor with optional validation.
-            
-             @param string the base string to wrap.
-             @param validate whether or not to check the string.
-             @throws ArgumentException if validate is true and the string
-             contains characters that should not be in a NumericString.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerNumericString.IsNumericString(System.String)">
-             Return true if the string can be represented as a NumericString ('0'..'9', ' ')
-            
-             @param str string to validate.
-             @return true if numeric, fale otherwise.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerObjectIdentifier.GetInstance(System.Object)">
-             return an Oid from the passed in object
-            
-             @exception ArgumentException if the object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerObjectIdentifier.GetInstance(Org.BouncyCastle.Asn1.Asn1TaggedObject,System.Boolean)">
-             return an object Identifier from a tagged object.
-            
-             @param obj the tagged object holding the object we want
-             @param explicitly true if the object is meant to be explicitly
-                          tagged false otherwise.
-             @exception ArgumentException if the tagged object cannot
-                           be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerObjectIdentifier.On(Org.BouncyCastle.Asn1.DerObjectIdentifier)">
-            Return  true if this oid is an extension of the passed in branch, stem.
-            @param stem the arc or branch that is a possible parent.
-            @return  true if the branch is on the passed in stem, false otherwise.
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.DerPrintableString">
-            Der PrintableString object.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerPrintableString.GetInstance(System.Object)">
-             return a printable string from the passed in object.
-            
-             @exception ArgumentException if the object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerPrintableString.GetInstance(Org.BouncyCastle.Asn1.Asn1TaggedObject,System.Boolean)">
-             return a Printable string from a tagged object.
-            
-             @param obj the tagged object holding the object we want
-             @param explicitly true if the object is meant to be explicitly
-                          tagged false otherwise.
-             @exception ArgumentException if the tagged object cannot
-                           be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerPrintableString.#ctor(System.Byte[])">
-            basic constructor - byte encoded string.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerPrintableString.#ctor(System.String)">
-            basic constructor - this does not validate the string
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerPrintableString.#ctor(System.String,System.Boolean)">
-             Constructor with optional validation.
-            
-             @param string the base string to wrap.
-             @param validate whether or not to check the string.
-             @throws ArgumentException if validate is true and the string
-             contains characters that should not be in a PrintableString.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerPrintableString.IsPrintableString(System.String)">
-             return true if the passed in String can be represented without
-             loss as a PrintableString, false otherwise.
-            
-             @return true if in printable set, false otherwise.
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.DerT61String">
-            Der T61String (also the teletex string) - 8-bit characters
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerT61String.GetInstance(System.Object)">
-             return a T61 string from the passed in object.
-            
-             @exception ArgumentException if the object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerT61String.GetInstance(Org.BouncyCastle.Asn1.Asn1TaggedObject,System.Boolean)">
-             return an T61 string from a tagged object.
-            
-             @param obj the tagged object holding the object we want
-             @param explicitly true if the object is meant to be explicitly
-                          tagged false otherwise.
-             @exception ArgumentException if the tagged object cannot
-                           be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerT61String.#ctor(System.Byte[])">
-            basic constructor - with bytes.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerT61String.#ctor(System.String)">
-            basic constructor - with string.
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.DerUniversalString">
-            Der UniversalString object.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerUniversalString.GetInstance(System.Object)">
-             return a Universal string from the passed in object.
-            
-             @exception ArgumentException if the object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerUniversalString.GetInstance(Org.BouncyCastle.Asn1.Asn1TaggedObject,System.Boolean)">
-             return a Universal string from a tagged object.
-            
-             @param obj the tagged object holding the object we want
-             @param explicitly true if the object is meant to be explicitly
-                          tagged false otherwise.
-             @exception ArgumentException if the tagged object cannot
-                           be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerUniversalString.#ctor(System.Byte[])">
-            basic constructor - byte encoded string.
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.DerUnknownTag">
-            We insert one of these when we find a tag we don't recognise.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerUnknownTag.#ctor(System.Int32,System.Byte[])">
-            @param tag the tag value.
-            @param data the contents octets.
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.DerUtcTime">
-            UTC time object.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerUtcTime.GetInstance(System.Object)">
-             return an UTC Time from the passed in object.
-            
-             @exception ArgumentException if the object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerUtcTime.GetInstance(Org.BouncyCastle.Asn1.Asn1TaggedObject,System.Boolean)">
-             return an UTC Time from a tagged object.
-            
-             @param obj the tagged object holding the object we want
-             @param explicitly true if the object is meant to be explicitly
-                          tagged false otherwise.
-             @exception ArgumentException if the tagged object cannot
-                           be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerUtcTime.#ctor(System.String)">
-            The correct format for this is YYMMDDHHMMSSZ (it used to be that seconds were
-            never encoded. When you're creating one of these objects from scratch, that's
-            what you want to use, otherwise we'll try to deal with whatever Gets read from
-            the input stream... (this is why the input format is different from the GetTime()
-            method output).
-            <p>
-            @param time the time string.</p>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerUtcTime.#ctor(System.DateTime)">
-            base constructor from a DateTime object
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerUtcTime.ToDateTime">
-             return the time as a date based on whatever a 2 digit year will return. For
-             standardised processing use ToAdjustedDateTime().
-            
-             @return the resulting date
-             @exception ParseException if the date string cannot be parsed.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerUtcTime.ToAdjustedDateTime">
-             return the time as an adjusted date
-             in the range of 1950 - 2049.
-            
-             @return a date in the range of 1950 to 2049.
-             @exception ParseException if the date string cannot be parsed.
-        </member>
-        <member name="P:Org.BouncyCastle.Asn1.DerUtcTime.TimeString">
-            return the time - always in the form of
-             YYMMDDhhmmssGMT(+hh:mm|-hh:mm).
-            <p>
-            Normally in a certificate we would expect "Z" rather than "GMT",
-            however adding the "GMT" means we can just use:
-            <pre>
-                dateF = new SimpleDateFormat("yyMMddHHmmssz");
-            </pre>
-            To read in the time and Get a date which is compatible with our local
-            time zone.</p>
-            <p>
-            <b>Note:</b> In some cases, due to the local date processing, this
-            may lead to unexpected results. If you want to stick the normal
-            convention of 1950 to 2049 use the GetAdjustedTime() method.</p>
-        </member>
-        <member name="P:Org.BouncyCastle.Asn1.DerUtcTime.AdjustedTimeString">
-            <summary>
-            Return a time string as an adjusted date with a 4 digit year.
-            This goes in the range of 1950 - 2049.
-            </summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.DerUtf8String">
-            Der UTF8String object.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerUtf8String.GetInstance(System.Object)">
-             return an UTF8 string from the passed in object.
-            
-             @exception ArgumentException if the object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerUtf8String.GetInstance(Org.BouncyCastle.Asn1.Asn1TaggedObject,System.Boolean)">
-             return an UTF8 string from a tagged object.
-            
-             @param obj the tagged object holding the object we want
-             @param explicitly true if the object is meant to be explicitly
-                          tagged false otherwise.
-             @exception ArgumentException if the tagged object cannot
-                           be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerUtf8String.#ctor(System.Byte[])">
-            basic constructor - byte encoded string.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerUtf8String.#ctor(System.String)">
-            basic constructor
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.DerVisibleString">
-            Der VisibleString object.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerVisibleString.GetInstance(System.Object)">
-             return a Visible string from the passed in object.
-            
-             @exception ArgumentException if the object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerVisibleString.GetInstance(Org.BouncyCastle.Asn1.Asn1TaggedObject,System.Boolean)">
-             return a Visible string from a tagged object.
-            
-             @param obj the tagged object holding the object we want
-             @param explicitly true if the object is meant to be explicitly
-                          tagged false otherwise.
-             @exception ArgumentException if the tagged object cannot
-                           be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerVisibleString.#ctor(System.Byte[])">
-            basic constructor - byte encoded string.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.DerVisibleString.#ctor(System.String)">
-            basic constructor
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.Esf.CertificateValues">
-            <remarks>
-            RFC 3126: 4.3.1 Certificate Values Attribute Definition
-            <code>
-            CertificateValues ::= SEQUENCE OF Certificate
-            </code>
-            </remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Esf.CommitmentTypeIndication.ToAsn1Object">
-            <pre>
-            CommitmentTypeIndication ::= SEQUENCE {
-                 commitmentTypeId   CommitmentTypeIdentifier,
-                 commitmentTypeQualifier   SEQUENCE SIZE (1..MAX) OF
-                         CommitmentTypeQualifier OPTIONAL }
-            </pre>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.Esf.CommitmentTypeQualifier">
-             Commitment type qualifiers, used in the Commitment-Type-Indication attribute (RFC3126).
-            
-             <pre>
-               CommitmentTypeQualifier ::= SEQUENCE {
-                   commitmentTypeIdentifier  CommitmentTypeIdentifier,
-                   qualifier          ANY DEFINED BY commitmentTypeIdentifier OPTIONAL }
-             </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Esf.CommitmentTypeQualifier.#ctor(Org.BouncyCastle.Asn1.DerObjectIdentifier)">
-             Creates a new <code>CommitmentTypeQualifier</code> instance.
-            
-             @param commitmentTypeIdentifier a <code>CommitmentTypeIdentifier</code> value
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Esf.CommitmentTypeQualifier.#ctor(Org.BouncyCastle.Asn1.DerObjectIdentifier,Org.BouncyCastle.Asn1.Asn1Encodable)">
-             Creates a new <code>CommitmentTypeQualifier</code> instance.
-            
-             @param commitmentTypeIdentifier a <code>CommitmentTypeIdentifier</code> value
-             @param qualifier the qualifier, defined by the above field.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Esf.CommitmentTypeQualifier.#ctor(Org.BouncyCastle.Asn1.Asn1Sequence)">
-             Creates a new <code>CommitmentTypeQualifier</code> instance.
-            
-             @param as <code>CommitmentTypeQualifier</code> structure
-             encoded as an Asn1Sequence.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Esf.CommitmentTypeQualifier.ToAsn1Object">
-             Returns a DER-encodable representation of this instance.
-            
-             @return a <code>Asn1Object</code> value
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.Esf.CompleteCertificateRefs">
-            <remarks>
-            RFC 3126: 4.2.1 Complete Certificate Refs Attribute Definition
-            <code>
-            CompleteCertificateRefs ::= SEQUENCE OF OtherCertID
-            </code>
-            </remarks>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.Esf.CompleteRevocationRefs">
-            <remarks>
-            RFC 3126: 4.2.2 Complete Revocation Refs Attribute Definition
-            <code>
-            CompleteRevocationRefs ::= SEQUENCE OF CrlOcspRef
-            </code>
-            </remarks>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.Esf.CrlIdentifier">
-            <remarks>
-            RFC 3126: 4.2.2 Complete Revocation Refs Attribute Definition
-            <code>
-            CrlIdentifier ::= SEQUENCE 
-            {
-            	crlissuer		Name,
-            	crlIssuedTime	UTCTime,
-            	crlNumber		INTEGER OPTIONAL
-            }
-            </code>
-            </remarks>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.Esf.CrlListID">
-            <remarks>
-            RFC 3126: 4.2.2 Complete Revocation Refs Attribute Definition
-            <code>
-            CRLListID ::= SEQUENCE 
-            {
-            	crls	SEQUENCE OF CrlValidatedID
-            }
-            </code>
-            </remarks>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.Esf.CrlOcspRef">
-            <remarks>
-            RFC 3126: 4.2.2 Complete Revocation Refs Attribute Definition
-            <code>
-            CrlOcspRef ::= SEQUENCE {
-            	crlids		[0] CRLListID		OPTIONAL,
-            	ocspids		[1] OcspListID		OPTIONAL,
-            	otherRev	[2] OtherRevRefs	OPTIONAL
-            }
-            </code>
-            </remarks>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.Esf.CrlValidatedID">
-            <remarks>
-            RFC 3126: 4.2.2 Complete Revocation Refs Attribute Definition
-            <code>
-            CrlValidatedID ::= SEQUENCE {
-            	crlHash			OtherHash,
-            	crlIdentifier	CrlIdentifier OPTIONAL}
-            </code>
-            </remarks>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.Esf.OcspIdentifier">
-            <remarks>
-            RFC 3126: 4.2.2 Complete Revocation Refs Attribute Definition
-            <code>
-            OcspIdentifier ::= SEQUENCE {
-            	ocspResponderID		ResponderID,
-            		-- As in OCSP response data
-            	producedAt			GeneralizedTime
-            		-- As in OCSP response data
-            }
-            </code>
-            </remarks>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.Esf.OcspListID">
-            <remarks>
-            RFC 3126: 4.2.2 Complete Revocation Refs Attribute Definition
-            <code>
-            OcspListID ::=  SEQUENCE {
-            	ocspResponses	SEQUENCE OF OcspResponsesID
-            }
-            </code>
-            </remarks>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.Esf.OcspResponsesID">
-            <remarks>
-            RFC 3126: 4.2.2 Complete Revocation Refs Attribute Definition
-            <code>
-            OcspResponsesID ::= SEQUENCE {
-            	ocspIdentifier	OcspIdentifier,
-            	ocspRepHash		OtherHash OPTIONAL
-            }
-            </code>
-            </remarks>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.Esf.OtherCertID">
-            <remarks>
-            <code>
-            OtherCertID ::= SEQUENCE {
-            	otherCertHash	OtherHash,
-            	issuerSerial	IssuerSerial OPTIONAL
-            }
-            </code>
-            </remarks>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.Esf.OtherHash">
-            <remarks>
-            <code>
-            OtherHash ::= CHOICE {
-            	sha1Hash	OtherHashValue, -- This contains a SHA-1 hash
-            	otherHash	OtherHashAlgAndValue
-            }
-            
-            OtherHashValue ::= OCTET STRING
-            </code>
-            </remarks>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.Esf.OtherHashAlgAndValue">
-            <summary>
-            Summary description for OtherHashAlgAndValue.
-            </summary>
-            <remarks>
-            <code>
-            OtherHashAlgAndValue ::= SEQUENCE {
-            	hashAlgorithm	AlgorithmIdentifier,
-            	hashValue		OtherHashValue
-            }
-            
-            OtherHashValue ::= OCTET STRING
-            </code>
-            </remarks>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.Esf.OtherRevRefs">
-             <remarks>
-             RFC 3126: 4.2.2 Complete Revocation Refs Attribute Definition
-             <code>
-             OtherRevRefs ::= SEQUENCE 
-             {
-            		otherRevRefType      OtherRevRefType,
-            		otherRevRefs         ANY DEFINED BY otherRevRefType
-             }
-            
-             OtherRevRefType ::= OBJECT IDENTIFIER
-             </code>
-             </remarks>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.Esf.OtherRevVals">
-             <remarks>
-             RFC 3126: 4.3.2 Revocation Values Attribute Definition
-             <code>
-             OtherRevVals ::= SEQUENCE 
-             {
-            		otherRevValType      OtherRevValType,
-            		otherRevVals         ANY DEFINED BY otherRevValType
-             }
-            
-             OtherRevValType ::= OBJECT IDENTIFIER
-             </code>
-             </remarks>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.Esf.OtherSigningCertificate">
-            <remarks>
-            <code>
-            OtherSigningCertificate ::= SEQUENCE {
-            	certs		SEQUENCE OF OtherCertID,
-            	policies	SEQUENCE OF PolicyInformation OPTIONAL
-            }
-            </code>
-            </remarks>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.Esf.RevocationValues">
-            <remarks>
-            RFC 5126: 6.3.4.  revocation-values Attribute Definition
-            <code>
-            RevocationValues ::=  SEQUENCE {
-            	crlVals			[0] SEQUENCE OF CertificateList     OPTIONAL,
-            	ocspVals		[1] SEQUENCE OF BasicOCSPResponse   OPTIONAL,
-            	otherRevVals	[2] OtherRevVals OPTIONAL
-            }
-            </code>
-            </remarks>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.Esf.SignaturePolicyId">
-            <remarks>
-            <code>
-            SignaturePolicyId ::= SEQUENCE {
-            	sigPolicyIdentifier		SigPolicyId,
-            	sigPolicyHash			SigPolicyHash,
-            	sigPolicyQualifiers		SEQUENCE SIZE (1..MAX) OF SigPolicyQualifierInfo OPTIONAL
-            }
-            
-            SigPolicyId ::= OBJECT IDENTIFIER
-            
-            SigPolicyHash ::= OtherHashAlgAndValue
-            </code>
-            </remarks>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.Esf.SignaturePolicyIdentifier">
-            <remarks>
-            <code>
-            SignaturePolicyIdentifier ::= CHOICE {
-            	SignaturePolicyId		SignaturePolicyId,
-            	SignaturePolicyImplied	SignaturePolicyImplied
-            }
-            
-            SignaturePolicyImplied ::= NULL
-            </code>
-            </remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Esf.SignerAttribute.ToAsn1Object">
-            
-             <pre>
-              SignerAttribute ::= SEQUENCE OF CHOICE {
-                  claimedAttributes   [0] ClaimedAttributes,
-                  certifiedAttributes [1] CertifiedAttributes }
-            
-              ClaimedAttributes ::= SEQUENCE OF Attribute
-              CertifiedAttributes ::= AttributeCertificate -- as defined in RFC 3281: see clause 4.1.
-             </pre>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.Esf.SignerLocation">
-             Signer-Location attribute (RFC3126).
-            
-             <pre>
-               SignerLocation ::= SEQUENCE {
-                   countryName        [0] DirectoryString OPTIONAL,
-                   localityName       [1] DirectoryString OPTIONAL,
-                   postalAddress      [2] PostalAddress OPTIONAL }
-            
-               PostalAddress ::= SEQUENCE SIZE(1..6) OF DirectoryString
-             </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Esf.SignerLocation.ToAsn1Object">
-             <pre>
-               SignerLocation ::= SEQUENCE {
-                   countryName        [0] DirectoryString OPTIONAL,
-                   localityName       [1] DirectoryString OPTIONAL,
-                   postalAddress      [2] PostalAddress OPTIONAL }
-            
-               PostalAddress ::= SEQUENCE SIZE(1..6) OF DirectoryString
-            
-               DirectoryString ::= CHOICE {
-                     teletexString           TeletexString (SIZE (1..MAX)),
-                     printableString         PrintableString (SIZE (1..MAX)),
-                     universalString         UniversalString (SIZE (1..MAX)),
-                     utf8String              UTF8String (SIZE (1.. MAX)),
-                     bmpString               BMPString (SIZE (1..MAX)) }
-             </pre>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.Esf.SigPolicyQualifierInfo">
-            <remarks>
-            <code>
-            SigPolicyQualifierInfo ::= SEQUENCE {
-            	sigPolicyQualifierId  SigPolicyQualifierId,
-            	sigQualifier          ANY DEFINED BY sigPolicyQualifierId
-            }
-            
-            SigPolicyQualifierId ::= OBJECT IDENTIFIER
-            </code>
-            </remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Ess.ContentHints.#ctor(Org.BouncyCastle.Asn1.Asn1Sequence)">
-            constructor
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Ess.ContentHints.ToAsn1Object">
-            <pre>
-            ContentHints ::= SEQUENCE {
-              contentDescription UTF8String (SIZE (1..MAX)) OPTIONAL,
-              contentType ContentType }
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Ess.ContentIdentifier.#ctor(Org.BouncyCastle.Asn1.Asn1OctetString)">
-            Create from OCTET STRING whose octets represent the identifier.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Ess.ContentIdentifier.#ctor(System.Byte[])">
-            Create from byte array representing the identifier.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Ess.ContentIdentifier.ToAsn1Object">
-            The definition of ContentIdentifier is
-            <pre>
-            ContentIdentifier ::=  OCTET STRING
-            </pre>
-            id-aa-contentIdentifier OBJECT IDENTIFIER ::= { iso(1)
-             member-body(2) us(840) rsadsi(113549) pkcs(1) pkcs9(9)
-             smime(16) id-aa(2) 7 }
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Ess.EssCertID.#ctor(Org.BouncyCastle.Asn1.Asn1Sequence)">
-            constructor
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Ess.EssCertID.ToAsn1Object">
-            <pre>
-            EssCertID ::= SEQUENCE {
-                certHash Hash,
-                issuerSerial IssuerSerial OPTIONAL }
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Ess.EssCertIDv2.ToAsn1Object">
-             <pre>
-             EssCertIDv2 ::=  SEQUENCE {
-                 hashAlgorithm     AlgorithmIdentifier
-                          DEFAULT {algorithm id-sha256},
-                 certHash          Hash,
-                 issuerSerial      IssuerSerial OPTIONAL
-             }
-            
-             Hash ::= OCTET STRING
-            
-             IssuerSerial ::= SEQUENCE {
-                 issuer         GeneralNames,
-                 serialNumber   CertificateSerialNumber
-             }
-             </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Ess.OtherCertID.#ctor(Org.BouncyCastle.Asn1.Asn1Sequence)">
-            constructor
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Ess.OtherCertID.ToAsn1Object">
-             <pre>
-             OtherCertID ::= SEQUENCE {
-                 otherCertHash    OtherHash,
-                 issuerSerial     IssuerSerial OPTIONAL }
-            
-             OtherHash ::= CHOICE {
-                 sha1Hash     OCTET STRING,
-                 otherHash    OtherHashAlgAndValue }
-            
-             OtherHashAlgAndValue ::= SEQUENCE {
-                 hashAlgorithm    AlgorithmIdentifier,
-                 hashValue        OCTET STRING }
-            
-             </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Ess.OtherSigningCertificate.#ctor(Org.BouncyCastle.Asn1.Asn1Sequence)">
-            constructors
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Ess.OtherSigningCertificate.ToAsn1Object">
-            The definition of OtherSigningCertificate is
-            <pre>
-            OtherSigningCertificate ::=  SEQUENCE {
-                 certs        SEQUENCE OF OtherCertID,
-                 policies     SEQUENCE OF PolicyInformation OPTIONAL
-            }
-            </pre>
-            id-aa-ets-otherSigCert OBJECT IDENTIFIER ::= { iso(1)
-             member-body(2) us(840) rsadsi(113549) pkcs(1) pkcs9(9)
-             smime(16) id-aa(2) 19 }
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Ess.SigningCertificate.#ctor(Org.BouncyCastle.Asn1.Asn1Sequence)">
-            constructors
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Ess.SigningCertificate.ToAsn1Object">
-            The definition of SigningCertificate is
-            <pre>
-            SigningCertificate ::=  SEQUENCE {
-                 certs        SEQUENCE OF EssCertID,
-                 policies     SEQUENCE OF PolicyInformation OPTIONAL
-            }
-            </pre>
-            id-aa-signingCertificate OBJECT IDENTIFIER ::= { iso(1)
-             member-body(2) us(840) rsadsi(113549) pkcs(1) pkcs9(9)
-             smime(16) id-aa(2) 12 }
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Ess.SigningCertificateV2.ToAsn1Object">
-            The definition of SigningCertificateV2 is
-            <pre>
-            SigningCertificateV2 ::=  SEQUENCE {
-                 certs        SEQUENCE OF EssCertIDv2,
-                 policies     SEQUENCE OF PolicyInformation OPTIONAL
-            }
-            </pre>
-            id-aa-signingCertificateV2 OBJECT IDENTIFIER ::= { iso(1)
-               member-body(2) us(840) rsadsi(113549) pkcs(1) pkcs9(9)
-               smime(16) id-aa(2) 47 }
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.Icao.CscaMasterList">
-             The CscaMasterList object. This object can be wrapped in a
-             CMSSignedData to be published in LDAP.
-            
-             <pre>
-             CscaMasterList ::= SEQUENCE {
-               version                CscaMasterListVersion,
-               certList               SET OF Certificate }
-               
-             CscaMasterListVersion :: INTEGER {v0(0)}
-             </pre>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.Icao.DataGroupHash">
-             The DataGroupHash object.
-             <pre>
-             DataGroupHash  ::=  SEQUENCE {
-                  dataGroupNumber         DataGroupNumber,
-                  dataGroupHashValue     OCTET STRING }
-            
-             DataGroupNumber ::= INTEGER {
-                     dataGroup1    (1),
-                     dataGroup1    (2),
-                     dataGroup1    (3),
-                     dataGroup1    (4),
-                     dataGroup1    (5),
-                     dataGroup1    (6),
-                     dataGroup1    (7),
-                     dataGroup1    (8),
-                     dataGroup1    (9),
-                     dataGroup1    (10),
-                     dataGroup1    (11),
-                     dataGroup1    (12),
-                     dataGroup1    (13),
-                     dataGroup1    (14),
-                     dataGroup1    (15),
-                     dataGroup1    (16) }
-            
-             </pre>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.Icao.LdsSecurityObject">
-             The LDSSecurityObject object (V1.8).
-             <pre>
-             LDSSecurityObject ::= SEQUENCE {
-               version                LDSSecurityObjectVersion,
-               hashAlgorithm          DigestAlgorithmIdentifier,
-               dataGroupHashValues    SEQUENCE SIZE (2..ub-DataGroups) OF DataHashGroup,
-               ldsVersionInfo         LDSVersionInfo OPTIONAL
-                 -- if present, version MUST be v1 }
-            
-             DigestAlgorithmIdentifier ::= AlgorithmIdentifier,
-            
-             LDSSecurityObjectVersion :: INTEGER {V0(0)}
-             </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Icao.LdsVersionInfo.ToAsn1Object">
-            <pre>
-            LDSVersionInfo ::= SEQUENCE {
-               ldsVersion PRINTABLE STRING
-               unicodeVersion PRINTABLE STRING
-             }
-            </pre>
-            @return
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.IsisMtt.IsisMttObjectIdentifiers.IdIsisMttCPAccredited">
-            The id-isismtt-cp-accredited OID indicates that the certificate is a
-            qualified certificate according to Directive 1999/93/EC of the European
-            Parliament and of the Council of 13 December 1999 on a Community
-            Framework for Electronic Signatures, which additionally conforms the
-            special requirements of the SigG and has been issued by an accredited CA.
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.IsisMtt.IsisMttObjectIdentifiers.IdIsisMttATDateOfCertGen">
-             Certificate extensionDate of certificate generation
-             
-             <pre>
-            		DateOfCertGenSyntax ::= GeneralizedTime
-             </pre>
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.IsisMtt.IsisMttObjectIdentifiers.IdIsisMttATProcuration">
-            Attribute to indicate that the certificate holder may sign in the name of
-            a third person. May also be used as extension in a certificate.
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.IsisMtt.IsisMttObjectIdentifiers.IdIsisMttATAdmission">
-            Attribute to indicate admissions to certain professions. May be used as
-            attribute in attribute certificate or as extension in a certificate
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.IsisMtt.IsisMttObjectIdentifiers.IdIsisMttATMonetaryLimit">
-            Monetary limit for transactions. The QcEuMonetaryLimit QC statement MUST
-            be used in new certificates in place of the extension/attribute
-            MonetaryLimit since January 1, 2004. For the sake of backward
-            compatibility with certificates already in use, SigG conforming
-            components MUST support MonetaryLimit (as well as QcEuLimitValue).
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.IsisMtt.IsisMttObjectIdentifiers.IdIsisMttATDeclarationOfMajority">
-            A declaration of majority. May be used as attribute in attribute
-            certificate or as extension in a certificate
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.IsisMtt.IsisMttObjectIdentifiers.IdIsisMttATIccsn">
-             
-             Serial number of the smart card containing the corresponding private key
-             
-             <pre>
-            		ICCSNSyntax ::= OCTET STRING (SIZE(8..20))
-             </pre>
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.IsisMtt.IsisMttObjectIdentifiers.IdIsisMttATPKReference">
-             
-             Reference for a file of a smartcard that stores the public key of this
-             certificate and that is used as �security anchor�.
-             
-             <pre>
-            		PKReferenceSyntax ::= OCTET STRING (SIZE(20))
-             </pre>
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.IsisMtt.IsisMttObjectIdentifiers.IdIsisMttATRestriction">
-             Some other restriction regarding the usage of this certificate. May be
-             used as attribute in attribute certificate or as extension in a
-             certificate.
-             
-             <pre>
-            		RestrictionSyntax ::= DirectoryString (SIZE(1..1024))
-             </pre>
-             
-             @see Org.BouncyCastle.Asn1.IsisMtt.X509.Restriction
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.IsisMtt.IsisMttObjectIdentifiers.IdIsisMttATRetrieveIfAllowed">
-             
-             (Single)Request extension: Clients may include this extension in a
-             (single) Request to request the responder to send the certificate in the
-             response message along with the status information. Besides the LDAP
-             service, this extension provides another mechanism for the distribution
-             of certificates, which MAY optionally be provided by certificate
-             repositories.
-             
-             <pre>
-            		RetrieveIfAllowed ::= BOOLEAN
-             </pre>
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.IsisMtt.IsisMttObjectIdentifiers.IdIsisMttATRequestedCertificate">
-            SingleOCSPResponse extension: The certificate requested by the client by
-            inserting the RetrieveIfAllowed extension in the request, will be
-            returned in this extension.
-            
-            @see Org.BouncyCastle.Asn1.IsisMtt.Ocsp.RequestedCertificate
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.IsisMtt.IsisMttObjectIdentifiers.IdIsisMttATNamingAuthorities">
-            Base ObjectIdentifier for naming authorities
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.IsisMtt.IsisMttObjectIdentifiers.IdIsisMttATCertInDirSince">
-             SingleOCSPResponse extension: Date, when certificate has been published
-             in the directory and status information has become available. Currently,
-             accrediting authorities enforce that SigG-conforming OCSP servers include
-             this extension in the responses.
-             
-             <pre>
-            		CertInDirSince ::= GeneralizedTime
-             </pre>
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.IsisMtt.IsisMttObjectIdentifiers.IdIsisMttATCertHash">
-             Hash of a certificate in OCSP.
-            
-             @see Org.BouncyCastle.Asn1.IsisMtt.Ocsp.CertHash
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.IsisMtt.IsisMttObjectIdentifiers.IdIsisMttATNameAtBirth">
-             <pre>
-            		NameAtBirth ::= DirectoryString(SIZE(1..64)
-             </pre>
-             
-             Used in
-             {@link Org.BouncyCastle.Asn1.X509.SubjectDirectoryAttributes SubjectDirectoryAttributes}
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.IsisMtt.IsisMttObjectIdentifiers.IdIsisMttATAdditionalInformation">
-            Some other information of non-restrictive nature regarding the usage of
-            this certificate. May be used as attribute in atribute certificate or as
-            extension in a certificate.
-            
-            <pre>
-                          AdditionalInformationSyntax ::= DirectoryString (SIZE(1..2048))
-            </pre>
-            
-            @see Org.BouncyCastle.Asn1.IsisMtt.X509.AdditionalInformationSyntax
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.IsisMtt.IsisMttObjectIdentifiers.IdIsisMttATLiabilityLimitationFlag">
-             Indicates that an attribute certificate exists, which limits the
-             usability of this public key certificate. Whenever verifying a signature
-             with the help of this certificate, the content of the corresponding
-             attribute certificate should be concerned. This extension MUST be
-             included in a PKC, if a corresponding attribute certificate (having the
-             PKC as base certificate) contains some attribute that restricts the
-             usability of the PKC too. Attribute certificates with restricting content
-             MUST always be included in the signed document.
-             
-             <pre>
-            		LiabilityLimitationFlagSyntax ::= BOOLEAN
-             </pre>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.IsisMtt.Ocsp.CertHash">
-            ISIS-MTT PROFILE: The responder may include this extension in a response to
-            send the hash of the requested certificate to the responder. This hash is
-            cryptographically bound to the certificate and serves as evidence that the
-            certificate is known to the responder (i.e. it has been issued and is present
-            in the directory). Hence, this extension is a means to provide a positive
-            statement of availability as described in T8.[8]. As explained in T13.[1],
-            clients may rely on this information to be able to validate signatures after
-            the expiry of the corresponding certificate. Hence, clients MUST support this
-            extension. If a positive statement of availability is to be delivered, this
-            extension syntax and OID MUST be used.
-            <p/>
-            <p/>
-            <pre>
-                CertHash ::= SEQUENCE {
-                  hashAlgorithm AlgorithmIdentifier,
-                  certificateHash OCTET STRING
-                }
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.IsisMtt.Ocsp.CertHash.#ctor(Org.BouncyCastle.Asn1.Asn1Sequence)">
-             Constructor from Asn1Sequence.
-             <p/>
-             The sequence is of type CertHash:
-             <p/>
-             <pre>
-                 CertHash ::= SEQUENCE {
-                   hashAlgorithm AlgorithmIdentifier,
-                   certificateHash OCTET STRING
-                 }
-             </pre>
-            
-             @param seq The ASN.1 sequence.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.IsisMtt.Ocsp.CertHash.#ctor(Org.BouncyCastle.Asn1.X509.AlgorithmIdentifier,System.Byte[])">
-             Constructor from a given details.
-            
-             @param hashAlgorithm   The hash algorithm identifier.
-             @param certificateHash The hash of the whole DER encoding of the certificate.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.IsisMtt.Ocsp.CertHash.ToAsn1Object">
-             Produce an object suitable for an Asn1OutputStream.
-             <p/>
-             Returns:
-             <p/>
-             <pre>
-                 CertHash ::= SEQUENCE {
-                   hashAlgorithm AlgorithmIdentifier,
-                   certificateHash OCTET STRING
-                 }
-             </pre>
-            
-             @return an Asn1Object
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.IsisMtt.Ocsp.RequestedCertificate">
-            ISIS-MTT-Optional: The certificate requested by the client by inserting the
-            RetrieveIfAllowed extension in the request, will be returned in this
-            extension.
-            <p/>
-            ISIS-MTT-SigG: The signature act allows publishing certificates only then,
-            when the certificate owner gives his isExplicit permission. Accordingly, there
-            may be �nondownloadable� certificates, about which the responder must provide
-            status information, but MUST NOT include them in the response. Clients may
-            get therefore the following three kind of answers on a single request
-            including the RetrieveIfAllowed extension:
-            <ul>
-            <li> a) the responder supports the extension and is allowed to publish the
-            certificate: RequestedCertificate returned including the requested
-            certificate</li>
-            <li>b) the responder supports the extension but is NOT allowed to publish
-            the certificate: RequestedCertificate returned including an empty OCTET
-            STRING</li>
-            <li>c) the responder does not support the extension: RequestedCertificate is
-            not included in the response</li>
-            </ul>
-            Clients requesting RetrieveIfAllowed MUST be able to handle these cases. If
-            any of the OCTET STRING options is used, it MUST contain the DER encoding of
-            the requested certificate.
-            <p/>
-            <pre>
-                       RequestedCertificate ::= CHOICE {
-                         Certificate Certificate,
-                         publicKeyCertificate [0] EXPLICIT OCTET STRING,
-                         attributeCertificate [1] EXPLICIT OCTET STRING
-                       }
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.IsisMtt.Ocsp.RequestedCertificate.#ctor(Org.BouncyCastle.Asn1.X509.X509CertificateStructure)">
-             Constructor from a given details.
-             <p/>
-             Only one parameter can be given. All other must be <code>null</code>.
-            
-             @param certificate Given as Certificate
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.IsisMtt.Ocsp.RequestedCertificate.ToAsn1Object">
-             Produce an object suitable for an Asn1OutputStream.
-             <p/>
-             Returns:
-             <p/>
-             <pre>
-                        RequestedCertificate ::= CHOICE {
-                          Certificate Certificate,
-                          publicKeyCertificate [0] EXPLICIT OCTET STRING,
-                          attributeCertificate [1] EXPLICIT OCTET STRING
-                        }
-             </pre>
-            
-             @return an Asn1Object
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.IsisMtt.X509.AdditionalInformationSyntax">
-            Some other information of non-restrictive nature regarding the usage of this
-            certificate.
-            
-            <pre>
-               AdditionalInformationSyntax ::= DirectoryString (SIZE(1..2048))
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.IsisMtt.X509.AdditionalInformationSyntax.#ctor(System.String)">
-             Constructor from a given details.
-            
-             @param information The describtion of the information.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.IsisMtt.X509.AdditionalInformationSyntax.ToAsn1Object">
-             Produce an object suitable for an Asn1OutputStream.
-             <p/>
-             Returns:
-             <p/>
-             <pre>
-               AdditionalInformationSyntax ::= DirectoryString (SIZE(1..2048))
-             </pre>
-            
-             @return an Asn1Object
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.IsisMtt.X509.Admissions">
-             An Admissions structure.
-             <p/>
-             <pre>
-                        Admissions ::= SEQUENCE
-                        {
-                          admissionAuthority [0] EXPLICIT GeneralName OPTIONAL
-                          namingAuthority [1] EXPLICIT NamingAuthority OPTIONAL
-                          professionInfos SEQUENCE OF ProfessionInfo
-                        }
-             <p/>
-             </pre>
-            
-             @see Org.BouncyCastle.Asn1.IsisMtt.X509.AdmissionSyntax
-             @see Org.BouncyCastle.Asn1.IsisMtt.X509.ProfessionInfo
-             @see Org.BouncyCastle.Asn1.IsisMtt.X509.NamingAuthority
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.IsisMtt.X509.Admissions.#ctor(Org.BouncyCastle.Asn1.Asn1Sequence)">
-             Constructor from Asn1Sequence.
-             <p/>
-             The sequence is of type ProcurationSyntax:
-             <p/>
-             <pre>
-                        Admissions ::= SEQUENCE
-                        {
-                          admissionAuthority [0] EXPLICIT GeneralName OPTIONAL
-                          namingAuthority [1] EXPLICIT NamingAuthority OPTIONAL
-                          professionInfos SEQUENCE OF ProfessionInfo
-                        }
-             </pre>
-            
-             @param seq The ASN.1 sequence.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.IsisMtt.X509.Admissions.#ctor(Org.BouncyCastle.Asn1.X509.GeneralName,Org.BouncyCastle.Asn1.IsisMtt.X509.NamingAuthority,Org.BouncyCastle.Asn1.IsisMtt.X509.ProfessionInfo[])">
-             Constructor from a given details.
-             <p/>
-             Parameter <code>professionInfos</code> is mandatory.
-            
-             @param admissionAuthority The admission authority.
-             @param namingAuthority    The naming authority.
-             @param professionInfos    The profession infos.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.IsisMtt.X509.Admissions.ToAsn1Object">
-             Produce an object suitable for an Asn1OutputStream.
-             <p/>
-             Returns:
-             <p/>
-             <pre>
-                   Admissions ::= SEQUENCE
-                   {
-                     admissionAuthority [0] EXPLICIT GeneralName OPTIONAL
-                     namingAuthority [1] EXPLICIT NamingAuthority OPTIONAL
-                     professionInfos SEQUENCE OF ProfessionInfo
-                   }
-             <p/>
-             </pre>
-            
-             @return an Asn1Object
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.IsisMtt.X509.AdmissionSyntax">
-             Attribute to indicate admissions to certain professions.
-             <p/>
-             <pre>
-                 AdmissionSyntax ::= SEQUENCE
-                 {
-                   admissionAuthority GeneralName OPTIONAL,
-                   contentsOfAdmissions SEQUENCE OF Admissions
-                 }
-             <p/>
-                 Admissions ::= SEQUENCE
-                 {
-                   admissionAuthority [0] EXPLICIT GeneralName OPTIONAL
-                   namingAuthority [1] EXPLICIT NamingAuthority OPTIONAL
-                   professionInfos SEQUENCE OF ProfessionInfo
-                 }
-             <p/>
-                 NamingAuthority ::= SEQUENCE
-                 {
-                   namingAuthorityId OBJECT IDENTIFIER OPTIONAL,
-                   namingAuthorityUrl IA5String OPTIONAL,
-                   namingAuthorityText DirectoryString(SIZE(1..128)) OPTIONAL
-                 }
-             <p/>
-                 ProfessionInfo ::= SEQUENCE
-                 {
-                   namingAuthority [0] EXPLICIT NamingAuthority OPTIONAL,
-                   professionItems SEQUENCE OF DirectoryString (SIZE(1..128)),
-                   professionOIDs SEQUENCE OF OBJECT IDENTIFIER OPTIONAL,
-                   registrationNumber PrintableString(SIZE(1..128)) OPTIONAL,
-                   addProfessionInfo OCTET STRING OPTIONAL
-                 }
-             </pre>
-             <p/>
-             <p/>
-             ISIS-MTT PROFILE: The relatively complex structure of AdmissionSyntax
-             supports the following concepts and requirements:
-             <ul>
-             <li> External institutions (e.g. professional associations, chambers, unions,
-             administrative bodies, companies, etc.), which are responsible for granting
-             and verifying professional admissions, are indicated by means of the data
-             field admissionAuthority. An admission authority is indicated by a
-             GeneralName object. Here an X.501 directory name (distinguished name) can be
-             indicated in the field directoryName, a URL address can be indicated in the
-             field uniformResourceIdentifier, and an object identifier can be indicated in
-             the field registeredId.</li>
-             <li> The names of authorities which are responsible for the administration of
-             title registers are indicated in the data field namingAuthority. The name of
-             the authority can be identified by an object identifier in the field
-             namingAuthorityId, by means of a text string in the field
-             namingAuthorityText, by means of a URL address in the field
-             namingAuthorityUrl, or by a combination of them. For example, the text string
-             can contain the name of the authority, the country and the name of the title
-             register. The URL-option refers to a web page which contains lists with
-             �officially� registered professions (text and possibly OID) as well as
-             further information on these professions. Object identifiers for the
-             component namingAuthorityId are grouped under the OID-branch
-             id-isis-at-namingAuthorities and must be applied for.</li>
-             <li>See http://www.teletrust.de/anwend.asp?Id=30200&amp;Sprache=E_&amp;HomePG=0
-             for an application form and http://www.teletrust.de/links.asp?id=30220,11
-             for an overview of registered naming authorities.</li>
-             <li> By means of the data type ProfessionInfo certain professions,
-             specializations, disciplines, fields of activity, etc. are identified. A
-             profession is represented by one or more text strings, resp. profession OIDs
-             in the fields professionItems and professionOIDs and by a registration number
-             in the field registrationNumber. An indication in text form must always be
-             present, whereas the other indications are optional. The component
-             addProfessionInfo may contain additional applicationspecific information in
-             DER-encoded form.</li>
-             </ul>
-             <p/>
-             By means of different namingAuthority-OIDs or profession OIDs hierarchies of
-             professions, specializations, disciplines, fields of activity, etc. can be
-             expressed. The issuing admission authority should always be indicated (field
-             admissionAuthority), whenever a registration number is presented. Still,
-             information on admissions can be given without indicating an admission or a
-             naming authority by the exclusive use of the component professionItems. In
-             this case the certification authority is responsible for the verification of
-             the admission information.
-             <p/>
-             <p/>
-             <p/>
-             This attribute is single-valued. Still, several admissions can be captured in
-             the sequence structure of the component contentsOfAdmissions of
-             AdmissionSyntax or in the component professionInfos of Admissions. The
-             component admissionAuthority of AdmissionSyntax serves as default value for
-             the component admissionAuthority of Admissions. Within the latter component
-             the default value can be overwritten, in case that another authority is
-             responsible. The component namingAuthority of Admissions serves as a default
-             value for the component namingAuthority of ProfessionInfo. Within the latter
-             component the default value can be overwritten, in case that another naming
-             authority needs to be recorded.
-             <p/>
-             The length of the string objects is limited to 128 characters. It is
-             recommended to indicate a namingAuthorityURL in all issued attribute
-             certificates. If a namingAuthorityURL is indicated, the field professionItems
-             of ProfessionInfo should contain only registered titles. If the field
-             professionOIDs exists, it has to contain the OIDs of the professions listed
-             in professionItems in the same order. In general, the field professionInfos
-             should contain only one entry, unless the admissions that are to be listed
-             are logically connected (e.g. they have been issued under the same admission
-             number).
-            
-             @see Org.BouncyCastle.Asn1.IsisMtt.X509.Admissions
-             @see Org.BouncyCastle.Asn1.IsisMtt.X509.ProfessionInfo
-             @see Org.BouncyCastle.Asn1.IsisMtt.X509.NamingAuthority
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.IsisMtt.X509.AdmissionSyntax.#ctor(Org.BouncyCastle.Asn1.Asn1Sequence)">
-             Constructor from Asn1Sequence.
-             <p/>
-             The sequence is of type ProcurationSyntax:
-             <p/>
-             <pre>
-                 AdmissionSyntax ::= SEQUENCE
-                 {
-                   admissionAuthority GeneralName OPTIONAL,
-                   contentsOfAdmissions SEQUENCE OF Admissions
-                 }
-             <p/>
-                 Admissions ::= SEQUENCE
-                 {
-                   admissionAuthority [0] EXPLICIT GeneralName OPTIONAL
-                   namingAuthority [1] EXPLICIT NamingAuthority OPTIONAL
-                   professionInfos SEQUENCE OF ProfessionInfo
-                 }
-             <p/>
-                 NamingAuthority ::= SEQUENCE
-                 {
-                   namingAuthorityId OBJECT IDENTIFIER OPTIONAL,
-                   namingAuthorityUrl IA5String OPTIONAL,
-                   namingAuthorityText DirectoryString(SIZE(1..128)) OPTIONAL
-                 }
-             <p/>
-                 ProfessionInfo ::= SEQUENCE
-                 {
-                   namingAuthority [0] EXPLICIT NamingAuthority OPTIONAL,
-                   professionItems SEQUENCE OF DirectoryString (SIZE(1..128)),
-                   professionOIDs SEQUENCE OF OBJECT IDENTIFIER OPTIONAL,
-                   registrationNumber PrintableString(SIZE(1..128)) OPTIONAL,
-                   addProfessionInfo OCTET STRING OPTIONAL
-                 }
-             </pre>
-            
-             @param seq The ASN.1 sequence.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.IsisMtt.X509.AdmissionSyntax.#ctor(Org.BouncyCastle.Asn1.X509.GeneralName,Org.BouncyCastle.Asn1.Asn1Sequence)">
-             Constructor from given details.
-            
-             @param admissionAuthority   The admission authority.
-             @param contentsOfAdmissions The admissions.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.IsisMtt.X509.AdmissionSyntax.ToAsn1Object">
-             Produce an object suitable for an Asn1OutputStream.
-             <p/>
-             Returns:
-             <p/>
-             <pre>
-                 AdmissionSyntax ::= SEQUENCE
-                 {
-                   admissionAuthority GeneralName OPTIONAL,
-                   contentsOfAdmissions SEQUENCE OF Admissions
-                 }
-             <p/>
-                 Admissions ::= SEQUENCE
-                 {
-                   admissionAuthority [0] EXPLICIT GeneralName OPTIONAL
-                   namingAuthority [1] EXPLICIT NamingAuthority OPTIONAL
-                   professionInfos SEQUENCE OF ProfessionInfo
-                 }
-             <p/>
-                 NamingAuthority ::= SEQUENCE
-                 {
-                   namingAuthorityId OBJECT IDENTIFIER OPTIONAL,
-                   namingAuthorityUrl IA5String OPTIONAL,
-                   namingAuthorityText DirectoryString(SIZE(1..128)) OPTIONAL
-                 }
-             <p/>
-                 ProfessionInfo ::= SEQUENCE
-                 {
-                   namingAuthority [0] EXPLICIT NamingAuthority OPTIONAL,
-                   professionItems SEQUENCE OF DirectoryString (SIZE(1..128)),
-                   professionOIDs SEQUENCE OF OBJECT IDENTIFIER OPTIONAL,
-                   registrationNumber PrintableString(SIZE(1..128)) OPTIONAL,
-                   addProfessionInfo OCTET STRING OPTIONAL
-                 }
-             </pre>
-            
-             @return an Asn1Object
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.IsisMtt.X509.AdmissionSyntax.GetContentsOfAdmissions">
-            @return Returns the contentsOfAdmissions.
-        </member>
-        <member name="P:Org.BouncyCastle.Asn1.IsisMtt.X509.AdmissionSyntax.AdmissionAuthority">
-            @return Returns the admissionAuthority if present, null otherwise.
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.IsisMtt.X509.DeclarationOfMajority">
-            A declaration of majority.
-            <p/>
-            <pre>
-                      DeclarationOfMajoritySyntax ::= CHOICE
-                      {
-                        notYoungerThan [0] IMPLICIT INTEGER,
-                        fullAgeAtCountry [1] IMPLICIT SEQUENCE
-                        {
-                          fullAge BOOLEAN DEFAULT TRUE,
-                          country PrintableString (SIZE(2))
-                        }
-                        dateOfBirth [2] IMPLICIT GeneralizedTime
-                      }
-            </pre>
-            <p/>
-            fullAgeAtCountry indicates the majority of the owner with respect to the laws
-            of a specific country.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.IsisMtt.X509.DeclarationOfMajority.ToAsn1Object">
-             Produce an object suitable for an Asn1OutputStream.
-             <p/>
-             Returns:
-             <p/>
-             <pre>
-                       DeclarationOfMajoritySyntax ::= CHOICE
-                       {
-                         notYoungerThan [0] IMPLICIT INTEGER,
-                         fullAgeAtCountry [1] IMPLICIT SEQUENCE
-                         {
-                           fullAge BOOLEAN DEFAULT TRUE,
-                           country PrintableString (SIZE(2))
-                         }
-                         dateOfBirth [2] IMPLICIT GeneralizedTime
-                       }
-             </pre>
-            
-             @return an Asn1Object
-        </member>
-        <member name="P:Org.BouncyCastle.Asn1.IsisMtt.X509.DeclarationOfMajority.NotYoungerThan">
-            @return notYoungerThan if that's what we are, -1 otherwise
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.IsisMtt.X509.MonetaryLimit">
-            Monetary limit for transactions. The QcEuMonetaryLimit QC statement MUST be
-            used in new certificates in place of the extension/attribute MonetaryLimit
-            since January 1, 2004. For the sake of backward compatibility with
-            certificates already in use, components SHOULD support MonetaryLimit (as well
-            as QcEuLimitValue).
-            <p/>
-            Indicates a monetary limit within which the certificate holder is authorized
-            to act. (This value DOES NOT express a limit on the liability of the
-            certification authority).
-            <p/>
-            <pre>
-               MonetaryLimitSyntax ::= SEQUENCE
-               {
-                 currency PrintableString (SIZE(3)),
-                 amount INTEGER,
-                 exponent INTEGER
-               }
-            </pre>
-            <p/>
-            currency must be the ISO code.
-            <p/>
-            value = amount�10*exponent
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.IsisMtt.X509.MonetaryLimit.#ctor(System.String,System.Int32,System.Int32)">
-             Constructor from a given details.
-             <p/>
-             <p/>
-             value = amount�10^exponent
-            
-             @param currency The currency. Must be the ISO code.
-             @param amount   The amount
-             @param exponent The exponent
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.IsisMtt.X509.MonetaryLimit.ToAsn1Object">
-             Produce an object suitable for an Asn1OutputStream.
-             <p/>
-             Returns:
-             <p/>
-             <pre>
-                MonetaryLimitSyntax ::= SEQUENCE
-                {
-                  currency PrintableString (SIZE(3)),
-                  amount INTEGER,
-                  exponent INTEGER
-                }
-             </pre>
-            
-             @return an Asn1Object
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.IsisMtt.X509.NamingAuthority">
-            Names of authorities which are responsible for the administration of title
-            registers.
-            
-            <pre>
-                        NamingAuthority ::= SEQUENCE 
-                        {
-                          namingAuthorityID OBJECT IDENTIFIER OPTIONAL,
-                          namingAuthorityUrl IA5String OPTIONAL,
-                          namingAuthorityText DirectoryString(SIZE(1..128)) OPTIONAL
-                        }
-            </pre>
-            @see Org.BouncyCastle.Asn1.IsisMtt.X509.AdmissionSyntax
-            
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.IsisMtt.X509.NamingAuthority.IdIsisMttATNamingAuthoritiesRechtWirtschaftSteuern">
-            Profession OIDs should always be defined under the OID branch of the
-            responsible naming authority. At the time of this writing, the work group
-            �Recht, Wirtschaft, Steuern� (�Law, Economy, Taxes�) is registered as the
-            first naming authority under the OID id-isismtt-at-namingAuthorities.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.IsisMtt.X509.NamingAuthority.#ctor(Org.BouncyCastle.Asn1.Asn1Sequence)">
-             Constructor from Asn1Sequence.
-             <p/>
-             <p/>
-             <pre>
-                         NamingAuthority ::= SEQUENCE
-                         {
-                           namingAuthorityID OBJECT IDENTIFIER OPTIONAL,
-                           namingAuthorityUrl IA5String OPTIONAL,
-                           namingAuthorityText DirectoryString(SIZE(1..128)) OPTIONAL
-                         }
-             </pre>
-            
-             @param seq The ASN.1 sequence.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.IsisMtt.X509.NamingAuthority.#ctor(Org.BouncyCastle.Asn1.DerObjectIdentifier,System.String,Org.BouncyCastle.Asn1.X500.DirectoryString)">
-             Constructor from given details.
-             <p/>
-             All parameters can be combined.
-            
-             @param namingAuthorityID   ObjectIdentifier for naming authority.
-             @param namingAuthorityUrl  URL for naming authority.
-             @param namingAuthorityText Textual representation of naming authority.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.IsisMtt.X509.NamingAuthority.ToAsn1Object">
-             Produce an object suitable for an Asn1OutputStream.
-             <p/>
-             Returns:
-             <p/>
-             <pre>
-                         NamingAuthority ::= SEQUENCE
-                         {
-                           namingAuthorityID OBJECT IDENTIFIER OPTIONAL,
-                           namingAuthorityUrl IA5String OPTIONAL,
-                           namingAuthorityText DirectoryString(SIZE(1..128)) OPTIONAL
-                         }
-             </pre>
-            
-             @return an Asn1Object
-        </member>
-        <member name="P:Org.BouncyCastle.Asn1.IsisMtt.X509.NamingAuthority.NamingAuthorityID">
-            @return Returns the namingAuthorityID.
-        </member>
-        <member name="P:Org.BouncyCastle.Asn1.IsisMtt.X509.NamingAuthority.NamingAuthorityText">
-            @return Returns the namingAuthorityText.
-        </member>
-        <member name="P:Org.BouncyCastle.Asn1.IsisMtt.X509.NamingAuthority.NamingAuthorityUrl">
-            @return Returns the namingAuthorityUrl.
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.IsisMtt.X509.ProcurationSyntax">
-            Attribute to indicate that the certificate holder may sign in the name of a
-            third person.
-            <p>
-            ISIS-MTT PROFILE: The corresponding ProcurationSyntax contains either the
-            name of the person who is represented (subcomponent thirdPerson) or a
-            reference to his/her base certificate (in the component signingFor,
-            subcomponent certRef), furthermore the optional components country and
-            typeSubstitution to indicate the country whose laws apply, and respectively
-            the type of procuration (e.g. manager, procuration, custody).
-            </p>
-            <p>
-            ISIS-MTT PROFILE: The GeneralName MUST be of type directoryName and MAY only
-            contain: - RFC3039 attributes, except pseudonym (countryName, commonName,
-            surname, givenName, serialNumber, organizationName, organizationalUnitName,
-            stateOrProvincename, localityName, postalAddress) and - SubjectDirectoryName
-            attributes (title, dateOfBirth, placeOfBirth, gender, countryOfCitizenship,
-            countryOfResidence and NameAtBirth).
-            </p>
-            <pre>
-                          ProcurationSyntax ::= SEQUENCE {
-                            country [1] EXPLICIT PrintableString(SIZE(2)) OPTIONAL,
-                            typeOfSubstitution [2] EXPLICIT DirectoryString (SIZE(1..128)) OPTIONAL,
-                            signingFor [3] EXPLICIT SigningFor 
-                          }
-                          
-                          SigningFor ::= CHOICE 
-                          { 
-                            thirdPerson GeneralName,
-                            certRef IssuerSerial 
-                          }
-            </pre>
-            
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.IsisMtt.X509.ProcurationSyntax.#ctor(Org.BouncyCastle.Asn1.Asn1Sequence)">
-             Constructor from Asn1Sequence.
-             <p/>
-             The sequence is of type ProcurationSyntax:
-             <p/>
-             <pre>
-                           ProcurationSyntax ::= SEQUENCE {
-                             country [1] EXPLICIT PrintableString(SIZE(2)) OPTIONAL,
-                             typeOfSubstitution [2] EXPLICIT DirectoryString (SIZE(1..128)) OPTIONAL,
-                             signingFor [3] EXPLICIT SigningFor
-                           }
-             <p/>
-                           SigningFor ::= CHOICE
-                           {
-                             thirdPerson GeneralName,
-                             certRef IssuerSerial
-                           }
-             </pre>
-            
-             @param seq The ASN.1 sequence.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.IsisMtt.X509.ProcurationSyntax.#ctor(System.String,Org.BouncyCastle.Asn1.X500.DirectoryString,Org.BouncyCastle.Asn1.X509.IssuerSerial)">
-             Constructor from a given details.
-             <p/>
-             <p/>
-             Either <code>generalName</code> or <code>certRef</code> MUST be
-             <code>null</code>.
-            
-             @param country            The country code whose laws apply.
-             @param typeOfSubstitution The type of procuration.
-             @param certRef            Reference to certificate of the person who is represented.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.IsisMtt.X509.ProcurationSyntax.#ctor(System.String,Org.BouncyCastle.Asn1.X500.DirectoryString,Org.BouncyCastle.Asn1.X509.GeneralName)">
-             Constructor from a given details.
-             <p/>
-             <p/>
-             Either <code>generalName</code> or <code>certRef</code> MUST be
-             <code>null</code>.
-            
-             @param country            The country code whose laws apply.
-             @param typeOfSubstitution The type of procuration.
-             @param thirdPerson        The GeneralName of the person who is represented.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.IsisMtt.X509.ProcurationSyntax.ToAsn1Object">
-             Produce an object suitable for an Asn1OutputStream.
-             <p/>
-             Returns:
-             <p/>
-             <pre>
-                           ProcurationSyntax ::= SEQUENCE {
-                             country [1] EXPLICIT PrintableString(SIZE(2)) OPTIONAL,
-                             typeOfSubstitution [2] EXPLICIT DirectoryString (SIZE(1..128)) OPTIONAL,
-                             signingFor [3] EXPLICIT SigningFor
-                           }
-             <p/>
-                           SigningFor ::= CHOICE
-                           {
-                             thirdPerson GeneralName,
-                             certRef IssuerSerial
-                           }
-             </pre>
-            
-             @return an Asn1Object
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.IsisMtt.X509.ProfessionInfo">
-            Professions, specializations, disciplines, fields of activity, etc.
-            
-            <pre>
-                          ProfessionInfo ::= SEQUENCE 
-                          {
-                            namingAuthority [0] EXPLICIT NamingAuthority OPTIONAL,
-                            professionItems SEQUENCE OF DirectoryString (SIZE(1..128)),
-                            professionOids SEQUENCE OF OBJECT IDENTIFIER OPTIONAL,
-                            registrationNumber PrintableString(SIZE(1..128)) OPTIONAL,
-                            addProfessionInfo OCTET STRING OPTIONAL 
-                          }
-            </pre>
-            
-            @see Org.BouncyCastle.Asn1.IsisMtt.X509.AdmissionSyntax
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.IsisMtt.X509.ProfessionInfo.Rechtsanwltin">
-            Rechtsanw�ltin
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.IsisMtt.X509.ProfessionInfo.Rechtsanwalt">
-            Rechtsanwalt
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.IsisMtt.X509.ProfessionInfo.Rechtsbeistand">
-            Rechtsbeistand
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.IsisMtt.X509.ProfessionInfo.Steuerberaterin">
-            Steuerberaterin
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.IsisMtt.X509.ProfessionInfo.Steuerberater">
-            Steuerberater
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.IsisMtt.X509.ProfessionInfo.Steuerbevollmchtigte">
-            Steuerbevollm�chtigte
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.IsisMtt.X509.ProfessionInfo.Steuerbevollmchtigter">
-            Steuerbevollm�chtigter
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.IsisMtt.X509.ProfessionInfo.Notarin">
-            Notarin
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.IsisMtt.X509.ProfessionInfo.Notar">
-            Notar
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.IsisMtt.X509.ProfessionInfo.Notarvertreterin">
-            Notarvertreterin
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.IsisMtt.X509.ProfessionInfo.Notarvertreter">
-            Notarvertreter
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.IsisMtt.X509.ProfessionInfo.Notariatsverwalterin">
-            Notariatsverwalterin
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.IsisMtt.X509.ProfessionInfo.Notariatsverwalter">
-            Notariatsverwalter
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.IsisMtt.X509.ProfessionInfo.Wirtschaftsprferin">
-            Wirtschaftspr�ferin
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.IsisMtt.X509.ProfessionInfo.Wirtschaftsprfer">
-            Wirtschaftspr�fer
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.IsisMtt.X509.ProfessionInfo.VereidigteBuchprferin">
-            Vereidigte Buchpr�ferin
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.IsisMtt.X509.ProfessionInfo.VereidigterBuchprfer">
-            Vereidigter Buchpr�fer
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.IsisMtt.X509.ProfessionInfo.Patentanwltin">
-            Patentanw�ltin
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.IsisMtt.X509.ProfessionInfo.Patentanwalt">
-            Patentanwalt
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.IsisMtt.X509.ProfessionInfo.#ctor(Org.BouncyCastle.Asn1.Asn1Sequence)">
-             Constructor from Asn1Sequence.
-             <p/>
-             <p/>
-             <pre>
-                           ProfessionInfo ::= SEQUENCE
-                           {
-                             namingAuthority [0] EXPLICIT NamingAuthority OPTIONAL,
-                             professionItems SEQUENCE OF DirectoryString (SIZE(1..128)),
-                             professionOids SEQUENCE OF OBJECT IDENTIFIER OPTIONAL,
-                             registrationNumber PrintableString(SIZE(1..128)) OPTIONAL,
-                             addProfessionInfo OCTET STRING OPTIONAL
-                           }
-             </pre>
-            
-             @param seq The ASN.1 sequence.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.IsisMtt.X509.ProfessionInfo.#ctor(Org.BouncyCastle.Asn1.IsisMtt.X509.NamingAuthority,Org.BouncyCastle.Asn1.X500.DirectoryString[],Org.BouncyCastle.Asn1.DerObjectIdentifier[],System.String,Org.BouncyCastle.Asn1.Asn1OctetString)">
-             Constructor from given details.
-             <p/>
-             <code>professionItems</code> is mandatory, all other parameters are
-             optional.
-            
-             @param namingAuthority    The naming authority.
-             @param professionItems    Directory strings of the profession.
-             @param professionOids     DERObjectIdentfier objects for the
-                                       profession.
-             @param registrationNumber Registration number.
-             @param addProfessionInfo  Additional infos in encoded form.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.IsisMtt.X509.ProfessionInfo.ToAsn1Object">
-             Produce an object suitable for an Asn1OutputStream.
-             <p/>
-             Returns:
-             <p/>
-             <pre>
-                           ProfessionInfo ::= SEQUENCE
-                           {
-                             namingAuthority [0] EXPLICIT NamingAuthority OPTIONAL,
-                             professionItems SEQUENCE OF DirectoryString (SIZE(1..128)),
-                             professionOids SEQUENCE OF OBJECT IDENTIFIER OPTIONAL,
-                             registrationNumber PrintableString(SIZE(1..128)) OPTIONAL,
-                             addProfessionInfo OCTET STRING OPTIONAL
-                           }
-             </pre>
-            
-             @return an Asn1Object
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.IsisMtt.X509.ProfessionInfo.GetProfessionItems">
-            @return Returns the professionItems.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.IsisMtt.X509.ProfessionInfo.GetProfessionOids">
-            @return Returns the professionOids.
-        </member>
-        <member name="P:Org.BouncyCastle.Asn1.IsisMtt.X509.ProfessionInfo.AddProfessionInfo">
-            @return Returns the addProfessionInfo.
-        </member>
-        <member name="P:Org.BouncyCastle.Asn1.IsisMtt.X509.ProfessionInfo.NamingAuthority">
-            @return Returns the namingAuthority.
-        </member>
-        <member name="P:Org.BouncyCastle.Asn1.IsisMtt.X509.ProfessionInfo.RegistrationNumber">
-            @return Returns the registrationNumber.
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.IsisMtt.X509.Restriction">
-            Some other restriction regarding the usage of this certificate.
-            <p/>
-            <pre>
-             RestrictionSyntax ::= DirectoryString (SIZE(1..1024))
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.IsisMtt.X509.Restriction.#ctor(Org.BouncyCastle.Asn1.X500.DirectoryString)">
-             Constructor from DirectoryString.
-             <p/>
-             The DirectoryString is of type RestrictionSyntax:
-             <p/>
-             <pre>
-                  RestrictionSyntax ::= DirectoryString (SIZE(1..1024))
-             </pre>
-            
-             @param restriction A IAsn1String.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.IsisMtt.X509.Restriction.#ctor(System.String)">
-             Constructor from a given details.
-            
-             @param restriction The description of the restriction.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.IsisMtt.X509.Restriction.ToAsn1Object">
-             Produce an object suitable for an Asn1OutputStream.
-             <p/>
-             Returns:
-             <p/>
-             <pre>
-                  RestrictionSyntax ::= DirectoryString (SIZE(1..1024))
-             <p/>
-             </pre>
-            
-             @return an Asn1Object
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Misc.Cast5CbcParameters.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-            cast5CBCParameters ::= Sequence {
-                                      iv         OCTET STRING DEFAULT 0,
-                                             -- Initialization vector
-                                      keyLength  Integer
-                                             -- Key length, in bits
-                                 }
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Misc.IdeaCbcPar.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-            IDEA-CBCPar ::= Sequence {
-                                 iv    OCTET STRING OPTIONAL -- exactly 8 octets
-                             }
-            </pre>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.Misc.NetscapeCertType">
-            The NetscapeCertType object.
-            <pre>
-               NetscapeCertType ::= BIT STRING {
-                    SSLClient               (0),
-                    SSLServer               (1),
-                    S/MIME                  (2),
-                    Object Signing          (3),
-                    Reserved                (4),
-                    SSL CA                  (5),
-                    S/MIME CA               (6),
-                    Object Signing CA       (7) }
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Misc.NetscapeCertType.#ctor(System.Int32)">
-             Basic constructor.
-            
-             @param usage - the bitwise OR of the Key Usage flags giving the
-             allowed uses for the key.
-             e.g. (X509NetscapeCertType.sslCA | X509NetscapeCertType.smimeCA)
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.Mozilla.PublicKeyAndChallenge">
-             This is designed to parse
-             the PublicKeyAndChallenge created by the KEYGEN tag included by
-             Mozilla based browsers.
-              <pre>
-              PublicKeyAndChallenge ::= SEQUENCE {
-                spki SubjectPublicKeyInfo,
-                challenge IA5STRING
-              }
-            
-              </pre>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.Nist.NistNamedCurves">
-            Utility class for fetching curves using their NIST names as published in FIPS-PUB 186-2
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Nist.NistNamedCurves.GetByOid(Org.BouncyCastle.Asn1.DerObjectIdentifier)">
-             return the X9ECParameters object for the named curve represented by
-             the passed in object identifier. Null if the curve isn't present.
-            
-             @param oid an object identifier representing a named curve, if present.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Nist.NistNamedCurves.GetOid(System.String)">
-             return the object identifier signified by the passed in name. Null
-             if there is no object identifier associated with name.
-            
-             @return the object identifier associated with name, if present.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Nist.NistNamedCurves.GetName(Org.BouncyCastle.Asn1.DerObjectIdentifier)">
-            return the named curve name represented by the given object identifier.
-        </member>
-        <member name="P:Org.BouncyCastle.Asn1.Nist.NistNamedCurves.Names">
-            returns an enumeration containing the name strings for curves
-            contained in this structure.
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.Ntt.NttObjectIdentifiers">
-            <summary>From RFC 3657</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Ocsp.BasicOcspResponse.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-            BasicOcspResponse       ::= Sequence {
-                 tbsResponseData      ResponseData,
-                 signatureAlgorithm   AlgorithmIdentifier,
-                 signature            BIT STRING,
-                 certs                [0] EXPLICIT Sequence OF Certificate OPTIONAL }
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Ocsp.CertID.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-            CertID          ::=     Sequence {
-                hashAlgorithm       AlgorithmIdentifier,
-                issuerNameHash      OCTET STRING, -- Hash of Issuer's DN
-                issuerKeyHash       OCTET STRING, -- Hash of Issuers public key
-                serialNumber        CertificateSerialNumber }
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Ocsp.CertStatus.#ctor">
-            create a CertStatus object with a tag of zero.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Ocsp.CertStatus.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-             CertStatus ::= CHOICE {
-                             good        [0]     IMPLICIT Null,
-                             revoked     [1]     IMPLICIT RevokedInfo,
-                             unknown     [2]     IMPLICIT UnknownInfo }
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Ocsp.CrlID.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-            CrlID ::= Sequence {
-                crlUrl               [0]     EXPLICIT IA5String OPTIONAL,
-                crlNum               [1]     EXPLICIT Integer OPTIONAL,
-                crlTime              [2]     EXPLICIT GeneralizedTime OPTIONAL }
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Ocsp.OcspRequest.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-            OcspRequest     ::=     Sequence {
-                tbsRequest                  TBSRequest,
-                optionalSignature   [0]     EXPLICIT Signature OPTIONAL }
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Ocsp.OcspResponse.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-            OcspResponse ::= Sequence {
-                responseStatus         OcspResponseStatus,
-                responseBytes          [0] EXPLICIT ResponseBytes OPTIONAL }
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Ocsp.OcspResponseStatus.#ctor(System.Int32)">
-            The OcspResponseStatus enumeration.
-            <pre>
-            OcspResponseStatus ::= Enumerated {
-                successful            (0),  --Response has valid confirmations
-                malformedRequest      (1),  --Illegal confirmation request
-                internalError         (2),  --Internal error in issuer
-                tryLater              (3),  --Try again later
-                                            --(4) is not used
-                sigRequired           (5),  --Must sign the request
-                unauthorized          (6)   --Request unauthorized
-            }
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Ocsp.Request.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-            Request         ::=     Sequence {
-                reqCert                     CertID,
-                singleRequestExtensions     [0] EXPLICIT Extensions OPTIONAL }
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Ocsp.ResponderID.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-            ResponderID ::= CHOICE {
-                 byName          [1] Name,
-                 byKey           [2] KeyHash }
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Ocsp.ResponseBytes.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-            ResponseBytes ::=       Sequence {
-                responseType   OBJECT IDENTIFIER,
-                response       OCTET STRING }
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Ocsp.ResponseData.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-            ResponseData ::= Sequence {
-                version              [0] EXPLICIT Version DEFAULT v1,
-                responderID              ResponderID,
-                producedAt               GeneralizedTime,
-                responses                Sequence OF SingleResponse,
-                responseExtensions   [1] EXPLICIT Extensions OPTIONAL }
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Ocsp.RevokedInfo.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-            RevokedInfo ::= Sequence {
-                 revocationTime              GeneralizedTime,
-                 revocationReason    [0]     EXPLICIT CRLReason OPTIONAL }
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Ocsp.ServiceLocator.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-            ServiceLocator ::= Sequence {
-                issuer    Name,
-                locator   AuthorityInfoAccessSyntax OPTIONAL }
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Ocsp.Signature.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-            Signature       ::=     Sequence {
-                signatureAlgorithm      AlgorithmIdentifier,
-                signature               BIT STRING,
-                certs               [0] EXPLICIT Sequence OF Certificate OPTIONAL}
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Ocsp.SingleResponse.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-             SingleResponse ::= Sequence {
-                     certID                       CertID,
-                     certStatus                   CertStatus,
-                     thisUpdate                   GeneralizedTime,
-                     nextUpdate         [0]       EXPLICIT GeneralizedTime OPTIONAL,
-                     singleExtensions   [1]       EXPLICIT Extensions OPTIONAL }
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Ocsp.TbsRequest.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-            TBSRequest      ::=     Sequence {
-                version             [0]     EXPLICIT Version DEFAULT v1,
-                requestorName       [1]     EXPLICIT GeneralName OPTIONAL,
-                requestList                 Sequence OF Request,
-                requestExtensions   [2]     EXPLICIT Extensions OPTIONAL }
-            </pre>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.OidTokenizer">
-            class for breaking up an Oid into it's component tokens, ala
-            java.util.StringTokenizer. We need this class as some of the
-            lightweight Java environment don't support classes like
-            StringTokenizer.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Pkcs.AttributePkcs.GetInstance(System.Object)">
-             return an Attribute object from the given object.
-            
-             @param o the object we want converted.
-             @exception ArgumentException if the object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Pkcs.AttributePkcs.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-            Attr ::= Sequence {
-                attrType OBJECT IDENTIFIER,
-                attrValues Set OF AttributeValue
-            }
-            </pre>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.Pkcs.CertificationRequest">
-            Pkcs10 Certfication request object.
-            <pre>
-            CertificationRequest ::= Sequence {
-              certificationRequestInfo  CertificationRequestInfo,
-              signatureAlgorithm        AlgorithmIdentifier{{ SignatureAlgorithms }},
-              signature                 BIT STRING
-            }
-            </pre>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.Pkcs.CertificationRequestInfo">
-             Pkcs10 CertificationRequestInfo object.
-             <pre>
-              CertificationRequestInfo ::= Sequence {
-               version             Integer { v1(0) } (v1,...),
-               subject             Name,
-               subjectPKInfo   SubjectPublicKeyInfo{{ PKInfoAlgorithms }},
-               attributes          [0] Attributes{{ CRIAttributes }}
-              }
-            
-              Attributes { ATTRIBUTE:IOSet } ::= Set OF Attr{{ IOSet }}
-            
-              Attr { ATTRIBUTE:IOSet } ::= Sequence {
-                type    ATTRIBUTE.&amp;id({IOSet}),
-                values  Set SIZE(1..MAX) OF ATTRIBUTE.&amp;Type({IOSet}{\@type})
-              }
-             </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Pkcs.ContentInfo.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-            ContentInfo ::= Sequence {
-                     contentType ContentType,
-                     content
-                     [0] EXPLICIT ANY DEFINED BY contentType OPTIONAL }
-            </pre>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.Pkcs.EncryptedData">
-             The EncryptedData object.
-             <pre>
-                  EncryptedData ::= Sequence {
-                       version Version,
-                       encryptedContentInfo EncryptedContentInfo
-                  }
-            
-            
-                  EncryptedContentInfo ::= Sequence {
-                      contentType ContentType,
-                      contentEncryptionAlgorithm  ContentEncryptionAlgorithmIdentifier,
-                      encryptedContent [0] IMPLICIT EncryptedContent OPTIONAL
-                }
-            
-                EncryptedContent ::= OCTET STRING
-             </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Pkcs.EncryptedPrivateKeyInfo.ToAsn1Object">
-             Produce an object suitable for an Asn1OutputStream.
-             <pre>
-             EncryptedPrivateKeyInfo ::= Sequence {
-                  encryptionAlgorithm AlgorithmIdentifier {{KeyEncryptionAlgorithms}},
-                  encryptedData EncryptedData
-             }
-            
-             EncryptedData ::= OCTET STRING
-            
-             KeyEncryptionAlgorithms ALGORITHM-IDENTIFIER ::= {
-                      ... -- For local profiles
-             }
-             </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.AlgorithmIdentifier.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-                 AlgorithmIdentifier ::= Sequence {
-                                       algorithm OBJECT IDENTIFIER,
-                                       parameters ANY DEFINED BY algorithm OPTIONAL }
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Pkcs.MacData.ToAsn1Object">
-            <pre>
-            MacData ::= SEQUENCE {
-                mac      DigestInfo,
-                macSalt  OCTET STRING,
-                iterations INTEGER DEFAULT 1
-                -- Note: The default is for historic reasons and its use is deprecated. A
-                -- higher value, like 1024 is recommended.
-            </pre>
-            @return the basic DERObject construction.
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.Pkcs.Pfx">
-            the infamous Pfx from Pkcs12
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Pkcs.PrivateKeyInfo.ToAsn1Object">
-             write out an RSA private key with its associated information
-             as described in Pkcs8.
-             <pre>
-                  PrivateKeyInfo ::= Sequence {
-                                          version Version,
-                                          privateKeyAlgorithm AlgorithmIdentifier {{PrivateKeyAlgorithms}},
-                                          privateKey PrivateKey,
-                                          attributes [0] IMPLICIT Attributes OPTIONAL
-                                      }
-                  Version ::= Integer {v1(0)} (v1,...)
-            
-                  PrivateKey ::= OCTET STRING
-            
-                  Attributes ::= Set OF Attr
-             </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Pkcs.RsaesOaepParameters.#ctor">
-            The default version
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Pkcs.RsaesOaepParameters.ToAsn1Object">
-             <pre>
-              RSAES-OAEP-params ::= SEQUENCE {
-                 hashAlgorithm      [0] OAEP-PSSDigestAlgorithms     DEFAULT sha1,
-                 maskGenAlgorithm   [1] PKCS1MGFAlgorithms  DEFAULT mgf1SHA1,
-                 pSourceAlgorithm   [2] PKCS1PSourceAlgorithms  DEFAULT pSpecifiedEmpty
-               }
-            
-               OAEP-PSSDigestAlgorithms    ALGORITHM-IDENTIFIER ::= {
-                 { OID id-sha1 PARAMETERS NULL   }|
-                 { OID id-sha256 PARAMETERS NULL }|
-                 { OID id-sha384 PARAMETERS NULL }|
-                 { OID id-sha512 PARAMETERS NULL },
-                 ...  -- Allows for future expansion --
-               }
-               PKCS1MGFAlgorithms    ALGORITHM-IDENTIFIER ::= {
-                 { OID id-mgf1 PARAMETERS OAEP-PSSDigestAlgorithms },
-                ...  -- Allows for future expansion --
-               }
-               PKCS1PSourceAlgorithms    ALGORITHM-IDENTIFIER ::= {
-                 { OID id-pSpecified PARAMETERS OCTET STRING },
-                 ...  -- Allows for future expansion --
-              }
-             </pre>
-             @return the asn1 primitive representing the parameters.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Pkcs.RsaPrivateKeyStructure.ToAsn1Object">
-             This outputs the key in Pkcs1v2 format.
-             <pre>
-                  RsaPrivateKey ::= Sequence {
-                                      version Version,
-                                      modulus Integer, -- n
-                                      publicExponent Integer, -- e
-                                      privateExponent Integer, -- d
-                                      prime1 Integer, -- p
-                                      prime2 Integer, -- q
-                                      exponent1 Integer, -- d mod (p-1)
-                                      exponent2 Integer, -- d mod (q-1)
-                                      coefficient Integer -- (inverse of q) mod p
-                                  }
-            
-                  Version ::= Integer
-             </pre>
-             <p>This routine is written to output Pkcs1 version 0, private keys.</p>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Pkcs.RsassaPssParameters.#ctor">
-            The default version
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Pkcs.RsassaPssParameters.ToAsn1Object">
-             <pre>
-             RSASSA-PSS-params ::= SEQUENCE {
-               hashAlgorithm      [0] OAEP-PSSDigestAlgorithms  DEFAULT sha1,
-                maskGenAlgorithm   [1] PKCS1MGFAlgorithms  DEFAULT mgf1SHA1,
-                saltLength         [2] INTEGER  DEFAULT 20,
-                trailerField       [3] TrailerField  DEFAULT trailerFieldBC
-              }
-            
-             OAEP-PSSDigestAlgorithms    ALGORITHM-IDENTIFIER ::= {
-                { OID id-sha1 PARAMETERS NULL   }|
-                { OID id-sha256 PARAMETERS NULL }|
-                { OID id-sha384 PARAMETERS NULL }|
-                { OID id-sha512 PARAMETERS NULL },
-                ...  -- Allows for future expansion --
-             }
-            
-             PKCS1MGFAlgorithms    ALGORITHM-IDENTIFIER ::= {
-               { OID id-mgf1 PARAMETERS OAEP-PSSDigestAlgorithms },
-                ...  -- Allows for future expansion --
-             }
-            
-             TrailerField ::= INTEGER { trailerFieldBC(1) }
-             </pre>
-             @return the asn1 primitive representing the parameters.
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.Pkcs.SignedData">
-            a Pkcs#7 signed data object.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Pkcs.SignedData.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-             SignedData ::= Sequence {
-                 version Version,
-                 digestAlgorithms DigestAlgorithmIdentifiers,
-                 contentInfo ContentInfo,
-                 certificates
-                     [0] IMPLICIT ExtendedCertificatesAndCertificates
-                              OPTIONAL,
-                 crls
-                     [1] IMPLICIT CertificateRevocationLists OPTIONAL,
-                 signerInfos SignerInfos }
-            </pre>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.Pkcs.SignerInfo">
-            a Pkcs#7 signer info object.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Pkcs.SignerInfo.ToAsn1Object">
-             Produce an object suitable for an Asn1OutputStream.
-             <pre>
-              SignerInfo ::= Sequence {
-                  version Version,
-                  issuerAndSerialNumber IssuerAndSerialNumber,
-                  digestAlgorithm DigestAlgorithmIdentifier,
-                  authenticatedAttributes [0] IMPLICIT Attributes OPTIONAL,
-                  digestEncryptionAlgorithm DigestEncryptionAlgorithmIdentifier,
-                  encryptedDigest EncryptedDigest,
-                  unauthenticatedAttributes [1] IMPLICIT Attributes OPTIONAL
-              }
-            
-              EncryptedDigest ::= OCTET STRING
-            
-              DigestAlgorithmIdentifier ::= AlgorithmIdentifier
-            
-              DigestEncryptionAlgorithmIdentifier ::= AlgorithmIdentifier
-             </pre>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.Sec.ECPrivateKeyStructure">
-            the elliptic curve private key object from SEC 1
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Sec.ECPrivateKeyStructure.ToAsn1Object">
-            ECPrivateKey ::= SEQUENCE {
-                version INTEGER { ecPrivkeyVer1(1) } (ecPrivkeyVer1),
-                privateKey OCTET STRING,
-                parameters [0] Parameters OPTIONAL,
-                publicKey [1] BIT STRING OPTIONAL }
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Sec.SecNamedCurves.GetByOid(Org.BouncyCastle.Asn1.DerObjectIdentifier)">
-             return the X9ECParameters object for the named curve represented by
-             the passed in object identifier. Null if the curve isn't present.
-            
-             @param oid an object identifier representing a named curve, if present.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Sec.SecNamedCurves.GetOid(System.String)">
-             return the object identifier signified by the passed in name. Null
-             if there is no object identifier associated with name.
-            
-             @return the object identifier associated with name, if present.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Sec.SecNamedCurves.GetName(Org.BouncyCastle.Asn1.DerObjectIdentifier)">
-            return the named curve name represented by the given object identifier.
-        </member>
-        <member name="P:Org.BouncyCastle.Asn1.Sec.SecNamedCurves.Names">
-            returns an enumeration containing the name strings for curves
-            contained in this structure.
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.Sec.SecObjectIdentifiers.EllipticCurve">
-            EllipticCurve OBJECT IDENTIFIER ::= {
-                  iso(1) identified-organization(3) certicom(132) curve(0)
-            }
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.Smime.SmimeCapabilities">
-            Handler class for dealing with S/MIME Capabilities
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.Smime.SmimeCapabilities.PreferSignedData">
-            general preferences
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.Smime.SmimeCapabilities.DesCbc">
-            encryption algorithms preferences
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Smime.SmimeCapabilities.GetInstance(System.Object)">
-             return an Attr object from the given object.
-            
-             @param o the object we want converted.
-             @exception ArgumentException if the object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Smime.SmimeCapabilities.GetCapabilitiesForOid(Org.BouncyCastle.Asn1.DerObjectIdentifier)">
-            returns an ArrayList with 0 or more objects of all the capabilities
-            matching the passed in capability Oid. If the Oid passed is null the
-            entire set is returned.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Smime.SmimeCapabilities.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-            SMIMECapabilities ::= Sequence OF SMIMECapability
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.AttributeX509.GetInstance(System.Object)">
-             return an Attr object from the given object.
-            
-             @param o the object we want converted.
-             @exception ArgumentException if the object cannot be converted.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.AttributeX509.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-            Attr ::= Sequence {
-                attrType OBJECT IDENTIFIER,
-                attrValues Set OF AttributeValue
-            }
-            </pre>
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.Smime.SmimeCapability.PreferSignedData">
-            general preferences
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.Smime.SmimeCapability.DesCbc">
-            encryption algorithms preferences
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Smime.SmimeCapability.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-            SMIMECapability ::= Sequence {
-                capabilityID OBJECT IDENTIFIER,
-                parameters ANY DEFINED BY capabilityID OPTIONAL
-            }
-            </pre>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.Smime.SmimeCapabilityVector">
-            Handler for creating a vector S/MIME Capabilities
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.Smime.SmimeEncryptionKeyPreferenceAttribute">
-            The SmimeEncryptionKeyPreference object.
-            <pre>
-            SmimeEncryptionKeyPreference ::= CHOICE {
-                issuerAndSerialNumber   [0] IssuerAndSerialNumber,
-                receipentKeyId          [1] RecipientKeyIdentifier,
-                subjectAltKeyIdentifier [2] SubjectKeyIdentifier
-            }
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Smime.SmimeEncryptionKeyPreferenceAttribute.#ctor(Org.BouncyCastle.Asn1.Asn1OctetString)">
-            @param sKeyId the subjectKeyIdentifier value (normally the X.509 one)
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.TeleTrust.TeleTrusTNamedCurves">
-            elliptic curves defined in "ECC Brainpool Standard Curves and Curve Generation"
-            http://www.ecc-brainpool.org/download/draft_pkix_additional_ecc_dp.txt
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.TeleTrust.TeleTrusTNamedCurves.GetByOid(Org.BouncyCastle.Asn1.DerObjectIdentifier)">
-             return the X9ECParameters object for the named curve represented by
-             the passed in object identifier. Null if the curve isn't present.
-            
-             @param oid an object identifier representing a named curve, if present.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.TeleTrust.TeleTrusTNamedCurves.GetOid(System.String)">
-             return the object identifier signified by the passed in name. Null
-             if there is no object identifier associated with name.
-            
-             @return the object identifier associated with name, if present.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.TeleTrust.TeleTrusTNamedCurves.GetName(Org.BouncyCastle.Asn1.DerObjectIdentifier)">
-            return the named curve name represented by the given object identifier.
-        </member>
-        <member name="P:Org.BouncyCastle.Asn1.TeleTrust.TeleTrusTNamedCurves.Names">
-            returns an enumeration containing the name strings for curves
-            contained in this structure.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Tsp.Accuracy.ToAsn1Object">
-            <pre>
-            Accuracy ::= SEQUENCE {
-                        seconds        INTEGER              OPTIONAL,
-                        millis     [0] INTEGER  (1..999)    OPTIONAL,
-                        micros     [1] INTEGER  (1..999)    OPTIONAL
-                        }
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Tsp.MessageImprint.GetInstance(System.Object)">
-            @param o
-            @return a MessageImprint object.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Tsp.MessageImprint.ToAsn1Object">
-            <pre>
-               MessageImprint ::= SEQUENCE  {
-                  hashAlgorithm                AlgorithmIdentifier,
-                  hashedMessage                OCTET STRING  }
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Tsp.TimeStampReq.ToAsn1Object">
-            <pre>
-            TimeStampReq ::= SEQUENCE  {
-             version                      INTEGER  { v1(1) },
-             messageImprint               MessageImprint,
-               --a hash algorithm OID and the hash value of the data to be
-               --time-stamped
-             reqPolicy             TSAPolicyId              OPTIONAL,
-             nonce                 INTEGER                  OPTIONAL,
-             certReq               BOOLEAN                  DEFAULT FALSE,
-             extensions            [0] IMPLICIT Extensions  OPTIONAL
-            }
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Tsp.TimeStampResp.ToAsn1Object">
-            <pre>
-            TimeStampResp ::= SEQUENCE  {
-              status                  PkiStatusInfo,
-              timeStampToken          TimeStampToken     OPTIONAL  }
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Tsp.TstInfo.ToAsn1Object">
-             <pre>
-            
-                 TstInfo ::= SEQUENCE  {
-                    version                      INTEGER  { v1(1) },
-                    policy                       TSAPolicyId,
-                    messageImprint               MessageImprint,
-                      -- MUST have the same value as the similar field in
-                      -- TimeStampReq
-                    serialNumber                 INTEGER,
-                     -- Time-Stamping users MUST be ready to accommodate integers
-                     -- up to 160 bits.
-                    genTime                      GeneralizedTime,
-                    accuracy                     Accuracy                 OPTIONAL,
-                    ordering                     BOOLEAN             DEFAULT FALSE,
-                    nonce                        INTEGER                  OPTIONAL,
-                      -- MUST be present if the similar field was present
-                      -- in TimeStampReq.  In that case it MUST have the same value.
-                    tsa                          [0] GeneralName          OPTIONAL,
-                    extensions                   [1] IMPLICIT Extensions   OPTIONAL  }
-            
-             </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Utilities.Asn1Dump.AsString(System.String,System.Boolean,Org.BouncyCastle.Asn1.Asn1Object,System.Text.StringBuilder)">
-             dump a Der object as a formatted string with indentation
-            
-             @param obj the Asn1Object to be dumped out.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Utilities.Asn1Dump.DumpAsString(Org.BouncyCastle.Asn1.Asn1Encodable)">
-             dump out a DER object as a formatted string, in non-verbose mode
-            
-             @param obj the Asn1Encodable to be dumped out.
-             @return  the resulting string.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.Utilities.Asn1Dump.DumpAsString(Org.BouncyCastle.Asn1.Asn1Encodable,System.Boolean)">
-             Dump out the object as a string
-            
-             @param obj the Asn1Encodable to be dumped out.
-             @param verbose  if true, dump out the contents of octet and bit strings.
-             @return  the resulting string.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X500.DirectoryString.ToAsn1Object">
-            <pre>
-             DirectoryString ::= CHOICE {
-               teletexString               TeletexString (SIZE (1..MAX)),
-               printableString             PrintableString (SIZE (1..MAX)),
-               universalString             UniversalString (SIZE (1..MAX)),
-               utf8String                  UTF8String (SIZE (1..MAX)),
-               bmpString                   BMPString (SIZE (1..MAX))  }
-            </pre>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.AccessDescription">
-            The AccessDescription object.
-            <pre>
-            AccessDescription  ::=  SEQUENCE {
-                  accessMethod          OBJECT IDENTIFIER,
-                  accessLocation        GeneralName  }
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.AccessDescription.#ctor(Org.BouncyCastle.Asn1.DerObjectIdentifier,Org.BouncyCastle.Asn1.X509.GeneralName)">
-            create an AccessDescription with the oid and location provided.
-        </member>
-        <member name="P:Org.BouncyCastle.Asn1.X509.AccessDescription.AccessMethod">
-            
-             @return the access method.
-        </member>
-        <member name="P:Org.BouncyCastle.Asn1.X509.AccessDescription.AccessLocation">
-            
-             @return the access location
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.AttCertIssuer.#ctor(Org.BouncyCastle.Asn1.X509.GeneralNames)">
-            <summary>
-            Don't use this one if you are trying to be RFC 3281 compliant.
-            Use it for v1 attribute certificates only.
-            </summary>
-            <param name="names">Our GeneralNames structure</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.AttCertIssuer.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-             AttCertIssuer ::= CHOICE {
-                  v1Form   GeneralNames,  -- MUST NOT be used in this
-                                          -- profile
-                  v2Form   [0] V2Form     -- v2 only
-             }
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.AttCertValidityPeriod.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-             AttCertValidityPeriod  ::= Sequence {
-                  notBeforeTime  GeneralizedTime,
-                  notAfterTime   GeneralizedTime
-             }
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.AttributeCertificate.GetInstance(System.Object)">
-            @param obj
-            @return
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.AttributeCertificate.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-             AttributeCertificate ::= Sequence {
-                  acinfo               AttributeCertificateInfo,
-                  signatureAlgorithm   AlgorithmIdentifier,
-                  signatureValue       BIT STRING
-             }
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.AttributeCertificateInfo.ToAsn1Object">
-             Produce an object suitable for an Asn1OutputStream.
-             <pre>
-              AttributeCertificateInfo ::= Sequence {
-                   version              AttCertVersion -- version is v2,
-                   holder               Holder,
-                   issuer               AttCertIssuer,
-                   signature            AlgorithmIdentifier,
-                   serialNumber         CertificateSerialNumber,
-                   attrCertValidityPeriod   AttCertValidityPeriod,
-                   attributes           Sequence OF Attr,
-                   issuerUniqueID       UniqueIdentifier OPTIONAL,
-                   extensions           Extensions OPTIONAL
-              }
-            
-              AttCertVersion ::= Integer { v2(1) }
-             </pre>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.AuthorityInformationAccess">
-             The AuthorityInformationAccess object.
-             <pre>
-             id-pe-authorityInfoAccess OBJECT IDENTIFIER ::= { id-pe 1 }
-            
-             AuthorityInfoAccessSyntax  ::=
-                  Sequence SIZE (1..MAX) OF AccessDescription
-             AccessDescription  ::=  Sequence {
-                   accessMethod          OBJECT IDENTIFIER,
-                   accessLocation        GeneralName  }
-            
-             id-ad OBJECT IDENTIFIER ::= { id-pkix 48 }
-             id-ad-caIssuers OBJECT IDENTIFIER ::= { id-ad 2 }
-             id-ad-ocsp OBJECT IDENTIFIER ::= { id-ad 1 }
-             </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.AuthorityInformationAccess.#ctor(Org.BouncyCastle.Asn1.DerObjectIdentifier,Org.BouncyCastle.Asn1.X509.GeneralName)">
-            create an AuthorityInformationAccess with the oid and location provided.
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.AuthorityKeyIdentifier">
-             The AuthorityKeyIdentifier object.
-             <pre>
-             id-ce-authorityKeyIdentifier OBJECT IDENTIFIER ::=  { id-ce 35 }
-            
-               AuthorityKeyIdentifier ::= Sequence {
-                  keyIdentifier             [0] IMPLICIT KeyIdentifier           OPTIONAL,
-                  authorityCertIssuer       [1] IMPLICIT GeneralNames            OPTIONAL,
-                  authorityCertSerialNumber [2] IMPLICIT CertificateSerialNumber OPTIONAL  }
-            
-               KeyIdentifier ::= OCTET STRING
-             </pre>
-            
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.AuthorityKeyIdentifier.#ctor(Org.BouncyCastle.Asn1.X509.SubjectPublicKeyInfo)">
-                     *
-                     * Calulates the keyidentifier using a SHA1 hash over the BIT STRING
-                     * from SubjectPublicKeyInfo as defined in RFC2459.
-                     *
-                     * Example of making a AuthorityKeyIdentifier:
-                     * <pre>
-            	     *   SubjectPublicKeyInfo apki = new SubjectPublicKeyInfo((ASN1Sequence)new ASN1InputStream(
-            		 *       publicKey.getEncoded()).readObject());
-                     *   AuthorityKeyIdentifier aki = new AuthorityKeyIdentifier(apki);
-                     * </pre>
-                     *
-                     *
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.AuthorityKeyIdentifier.#ctor(Org.BouncyCastle.Asn1.X509.SubjectPublicKeyInfo,Org.BouncyCastle.Asn1.X509.GeneralNames,Org.BouncyCastle.Math.BigInteger)">
-            create an AuthorityKeyIdentifier with the GeneralNames tag and
-            the serial number provided as well.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.AuthorityKeyIdentifier.#ctor(Org.BouncyCastle.Asn1.X509.GeneralNames,Org.BouncyCastle.Math.BigInteger)">
-            create an AuthorityKeyIdentifier with the GeneralNames tag and
-            the serial number provided.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.AuthorityKeyIdentifier.#ctor(System.Byte[])">
-            create an AuthorityKeyIdentifier with a precomputed key identifier
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.AuthorityKeyIdentifier.#ctor(System.Byte[],Org.BouncyCastle.Asn1.X509.GeneralNames,Org.BouncyCastle.Math.BigInteger)">
-            create an AuthorityKeyIdentifier with a precomupted key identifier
-            and the GeneralNames tag and the serial number provided as well.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.AuthorityKeyIdentifier.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.BasicConstraints.#ctor(System.Int32)">
-             create a cA=true object for the given path length constraint.
-            
-             @param pathLenConstraint
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.BasicConstraints.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-            BasicConstraints := Sequence {
-               cA                  Boolean DEFAULT FALSE,
-               pathLenConstraint   Integer (0..MAX) OPTIONAL
-            }
-            </pre>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.CertificateList">
-             PKIX RFC-2459
-            
-             The X.509 v2 CRL syntax is as follows.  For signature calculation,
-             the data that is to be signed is ASN.1 Der encoded.
-            
-             <pre>
-             CertificateList  ::=  Sequence  {
-                  tbsCertList          TbsCertList,
-                  signatureAlgorithm   AlgorithmIdentifier,
-                  signatureValue       BIT STRING  }
-             </pre>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.CertificatePair">
-             This class helps to support crossCerfificatePairs in a LDAP directory
-             according RFC 2587
-            
-             <pre>
-                 crossCertificatePairATTRIBUTE::={
-                   WITH SYNTAX   CertificatePair
-                   EQUALITY MATCHING RULE certificatePairExactMatch
-                   ID joint-iso-ccitt(2) ds(5) attributeType(4) crossCertificatePair(40)}
-             </pre>
-            
-             <blockquote> The forward elements of the crossCertificatePair attribute of a
-             CA's directory entry shall be used to store all, except self-issued
-             certificates issued to this CA. Optionally, the reverse elements of the
-             crossCertificatePair attribute, of a CA's directory entry may contain a
-             subset of certificates issued by this CA to other CAs. When both the forward
-             and the reverse elements are present in a single attribute value, issuer name
-             in one certificate shall match the subject name in the other and vice versa,
-             and the subject public key in one certificate shall be capable of verifying
-             the digital signature on the other certificate and vice versa.
-            
-             When a reverse element is present, the forward element value and the reverse
-             element value need not be stored in the same attribute value; in other words,
-             they can be stored in either a single attribute value or two attribute
-             values. </blockquote>
-            
-             <pre>
-                   CertificatePair ::= SEQUENCE {
-                     forward		[0]	Certificate OPTIONAL,
-                     reverse		[1]	Certificate OPTIONAL,
-                     -- at least one of the pair shall be present -- }
-             </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.CertificatePair.#ctor(Org.BouncyCastle.Asn1.Asn1Sequence)">
-             Constructor from Asn1Sequence.
-             <p/>
-             The sequence is of type CertificatePair:
-             <p/>
-             <pre>
-                   CertificatePair ::= SEQUENCE {
-                     forward		[0]	Certificate OPTIONAL,
-                     reverse		[1]	Certificate OPTIONAL,
-                     -- at least one of the pair shall be present -- }
-             </pre>
-            
-             @param seq The ASN.1 sequence.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.CertificatePair.#ctor(Org.BouncyCastle.Asn1.X509.X509CertificateStructure,Org.BouncyCastle.Asn1.X509.X509CertificateStructure)">
-             Constructor from a given details.
-            
-             @param forward Certificates issued to this CA.
-             @param reverse Certificates issued by this CA to other CAs.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.CertificatePair.ToAsn1Object">
-             Produce an object suitable for an Asn1OutputStream.
-             <p/>
-             Returns:
-             <p/>
-             <pre>
-                   CertificatePair ::= SEQUENCE {
-                     forward		[0]	Certificate OPTIONAL,
-                     reverse		[1]	Certificate OPTIONAL,
-                     -- at least one of the pair shall be present -- }
-             </pre>
-            
-             @return a DERObject
-        </member>
-        <member name="P:Org.BouncyCastle.Asn1.X509.CertificatePair.Forward">
-            @return Returns the forward.
-        </member>
-        <member name="P:Org.BouncyCastle.Asn1.X509.CertificatePair.Reverse">
-            @return Returns the reverse.
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.CertPolicyID">
-             CertPolicyId, used in the CertificatePolicies and PolicyMappings
-             X509V3 Extensions.
-            
-             <pre>
-                 CertPolicyId ::= OBJECT IDENTIFIER
-             </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.CrlDistPoint.GetDistributionPoints">
-             Return the distribution points making up the sequence.
-            
-             @return DistributionPoint[]
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.CrlDistPoint.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-            CrlDistPoint ::= Sequence SIZE {1..MAX} OF DistributionPoint
-            </pre>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.CrlNumber">
-            The CRLNumber object.
-            <pre>
-            CRLNumber::= Integer(0..MAX)
-            </pre>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.CrlReason">
-            The CRLReason enumeration.
-            <pre>
-            CRLReason ::= Enumerated {
-             unspecified             (0),
-             keyCompromise           (1),
-             cACompromise            (2),
-             affiliationChanged      (3),
-             superseded              (4),
-             cessationOfOperation    (5),
-             certificateHold         (6),
-             removeFromCRL           (8),
-             privilegeWithdrawn      (9),
-             aACompromise           (10)
-            }
-            </pre>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.DigestInfo">
-            The DigestInfo object.
-            <pre>
-            DigestInfo::=Sequence{
-                     digestAlgorithm  AlgorithmIdentifier,
-                     digest OCTET STRING }
-            </pre>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.DisplayText">
-             <code>DisplayText</code> class, used in
-             <code>CertificatePolicies</code> X509 V3 extensions (in policy qualifiers).
-            
-             <p>It stores a string in a chosen encoding.
-             <pre>
-             DisplayText ::= CHOICE {
-                  ia5String        IA5String      (SIZE (1..200)),
-                  visibleString    VisibleString  (SIZE (1..200)),
-                  bmpString        BMPString      (SIZE (1..200)),
-                  utf8String       UTF8String     (SIZE (1..200)) }
-             </pre></p>
-             @see PolicyQualifierInfo
-             @see PolicyInformation
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.DisplayText.ContentTypeIA5String">
-             Constant corresponding to ia5String encoding.
-            
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.DisplayText.ContentTypeBmpString">
-             Constant corresponding to bmpString encoding.
-            
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.DisplayText.ContentTypeUtf8String">
-             Constant corresponding to utf8String encoding.
-            
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.DisplayText.ContentTypeVisibleString">
-             Constant corresponding to visibleString encoding.
-            
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.DisplayText.DisplayTextMaximumSize">
-             Describe constant <code>DisplayTextMaximumSize</code> here.
-            
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.DisplayText.#ctor(System.Int32,System.String)">
-             Creates a new <code>DisplayText</code> instance.
-            
-             @param type the desired encoding type for the text.
-             @param text the text to store. Strings longer than 200
-             characters are truncated.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.DisplayText.#ctor(System.String)">
-             Creates a new <code>DisplayText</code> instance.
-            
-             @param text the text to encapsulate. Strings longer than 200
-             characters are truncated.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.DisplayText.#ctor(Org.BouncyCastle.Asn1.IAsn1String)">
-             Creates a new <code>DisplayText</code> instance.
-             <p>Useful when reading back a <code>DisplayText</code> class
-             from it's Asn1Encodable form.</p>
-            
-             @param contents an <code>Asn1Encodable</code> instance.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.DisplayText.GetString">
-             Returns the stored <code>string</code> object.
-            
-             @return the stored text as a <code>string</code>.
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.DistributionPoint">
-            The DistributionPoint object.
-            <pre>
-            DistributionPoint ::= Sequence {
-                 distributionPoint [0] DistributionPointName OPTIONAL,
-                 reasons           [1] ReasonFlags OPTIONAL,
-                 cRLIssuer         [2] GeneralNames OPTIONAL
-            }
-            </pre>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.DistributionPointName">
-            The DistributionPointName object.
-            <pre>
-            DistributionPointName ::= CHOICE {
-                fullName                 [0] GeneralNames,
-                nameRelativeToCRLIssuer  [1] RDN
-            }
-            </pre>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.ExtendedKeyUsage">
-            The extendedKeyUsage object.
-            <pre>
-                 extendedKeyUsage ::= Sequence SIZE (1..MAX) OF KeyPurposeId
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.ExtendedKeyUsage.GetAllUsages">
-            Returns all extended key usages.
-            The returned ArrayList contains DerObjectIdentifier instances.
-            @return An ArrayList with all key purposes.
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.GeneralName">
-             The GeneralName object.
-             <pre>
-             GeneralName ::= CHOICE {
-                  otherName                       [0]     OtherName,
-                  rfc822Name                      [1]     IA5String,
-                  dNSName                         [2]     IA5String,
-                  x400Address                     [3]     ORAddress,
-                  directoryName                   [4]     Name,
-                  ediPartyName                    [5]     EDIPartyName,
-                  uniformResourceIdentifier       [6]     IA5String,
-                  iPAddress                       [7]     OCTET STRING,
-                  registeredID                    [8]     OBJECT IDENTIFIER}
-            
-             OtherName ::= Sequence {
-                  type-id    OBJECT IDENTIFIER,
-                  value      [0] EXPLICIT ANY DEFINED BY type-id }
-            
-             EDIPartyName ::= Sequence {
-                  nameAssigner            [0]     DirectoryString OPTIONAL,
-                  partyName               [1]     DirectoryString }
-             </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.GeneralName.#ctor(Org.BouncyCastle.Asn1.Asn1Object,System.Int32)">
-             When the subjectAltName extension contains an Internet mail address,
-             the address MUST be included as an rfc822Name. The format of an
-             rfc822Name is an "addr-spec" as defined in RFC 822 [RFC 822].
-            
-             When the subjectAltName extension contains a domain name service
-             label, the domain name MUST be stored in the dNSName (an IA5String).
-             The name MUST be in the "preferred name syntax," as specified by RFC
-             1034 [RFC 1034].
-            
-             When the subjectAltName extension contains a URI, the name MUST be
-             stored in the uniformResourceIdentifier (an IA5String). The name MUST
-             be a non-relative URL, and MUST follow the URL syntax and encoding
-             rules specified in [RFC 1738].  The name must include both a scheme
-             (e.g., "http" or "ftp") and a scheme-specific-part.  The scheme-
-             specific-part must include a fully qualified domain name or IP
-             address as the host.
-            
-             When the subjectAltName extension contains a iPAddress, the address
-             MUST be stored in the octet string in "network byte order," as
-             specified in RFC 791 [RFC 791]. The least significant bit (LSB) of
-             each octet is the LSB of the corresponding byte in the network
-             address. For IP Version 4, as specified in RFC 791, the octet string
-             MUST contain exactly four octets.  For IP Version 6, as specified in
-             RFC 1883, the octet string MUST contain exactly sixteen octets [RFC
-             1883].
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.GeneralName.#ctor(System.Int32,System.String)">
-             Create a GeneralName for the given tag from the passed in string.
-             <p>
-             This constructor can handle:
-             <ul>
-             <li>rfc822Name</li>
-             <li>iPAddress</li>
-             <li>directoryName</li>
-             <li>dNSName</li>
-             <li>uniformResourceIdentifier</li>
-             <li>registeredID</li>
-             </ul>
-             For x400Address, otherName and ediPartyName there is no common string
-             format defined.
-             </p><p>
-             Note: A directory name can be encoded in different ways into a byte
-             representation. Be aware of this if the byte representation is used for
-             comparing results.
-             </p>
-            
-             @param tag tag number
-             @param name string representation of name
-             @throws ArgumentException if the string encoding is not correct or
-                         not supported.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.GeneralNames.#ctor(Org.BouncyCastle.Asn1.X509.GeneralName)">
-            <summary>Construct a GeneralNames object containing one GeneralName.</summary>
-            <param name="name">The name to be contained.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.GeneralNames.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-            GeneralNames ::= Sequence SIZE {1..MAX} OF GeneralName
-            </pre>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.GeneralSubtree">
-             Class for containing a restriction object subtrees in NameConstraints. See
-             RFC 3280.
-            
-             <pre>
-            
-                   GeneralSubtree ::= SEQUENCE
-                   {
-                     baseName                    GeneralName,
-                     minimum         [0]     BaseDistance DEFAULT 0,
-                     maximum         [1]     BaseDistance OPTIONAL
-                   }
-             </pre>
-            
-             @see org.bouncycastle.asn1.x509.NameConstraints
-            
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.GeneralSubtree.#ctor(Org.BouncyCastle.Asn1.X509.GeneralName,Org.BouncyCastle.Math.BigInteger,Org.BouncyCastle.Math.BigInteger)">
-             Constructor from a given details.
-            
-             According RFC 3280, the minimum and maximum fields are not used with any
-             name forms, thus minimum MUST be zero, and maximum MUST be absent.
-             <p>
-             If minimum is <code>null</code>, zero is assumed, if
-             maximum is <code>null</code>, maximum is absent.</p>
-            
-             @param baseName
-                        A restriction.
-             @param minimum
-                        Minimum
-            
-             @param maximum
-                        Maximum
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.GeneralSubtree.ToAsn1Object">
-             Produce an object suitable for an Asn1OutputStream.
-            
-             Returns:
-            
-             <pre>
-                   GeneralSubtree ::= SEQUENCE
-                   {
-                     baseName                    GeneralName,
-                     minimum         [0]     BaseDistance DEFAULT 0,
-                     maximum         [1]     BaseDistance OPTIONAL
-                   }
-             </pre>
-            
-             @return a DERObject
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.Holder">
-            The Holder object.
-            <p>
-            For an v2 attribute certificate this is:
-            
-            <pre>
-                       Holder ::= SEQUENCE {
-                             baseCertificateID   [0] IssuerSerial OPTIONAL,
-                                      -- the issuer and serial number of
-                                      -- the holder's Public Key Certificate
-                             entityName          [1] GeneralNames OPTIONAL,
-                                      -- the name of the claimant or role
-                             objectDigestInfo    [2] ObjectDigestInfo OPTIONAL
-                                      -- used to directly authenticate the holder,
-                                      -- for example, an executable
-                       }
-            </pre>
-            </p>
-            <p>
-            For an v1 attribute certificate this is:
-            
-            <pre>
-                    subject CHOICE {
-                     baseCertificateID [0] IssuerSerial,
-                     -- associated with a Public Key Certificate
-                     subjectName [1] GeneralNames },
-                     -- associated with a name
-            </pre>
-            </p>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.Holder.#ctor(Org.BouncyCastle.Asn1.Asn1TaggedObject)">
-            Constructor for a holder for an v1 attribute certificate.
-            
-            @param tagObj The ASN.1 tagged holder object.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.Holder.#ctor(Org.BouncyCastle.Asn1.Asn1Sequence)">
-            Constructor for a holder for an v2 attribute certificate. *
-            
-            @param seq The ASN.1 sequence.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.Holder.#ctor(Org.BouncyCastle.Asn1.X509.IssuerSerial,System.Int32)">
-            Constructs a holder from a IssuerSerial.
-            @param baseCertificateID The IssuerSerial.
-            @param version The version of the attribute certificate. 
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.Holder.#ctor(Org.BouncyCastle.Asn1.X509.GeneralNames)">
-            Constructs a holder with an entityName for v2 attribute certificates or
-            with a subjectName for v1 attribute certificates.
-            
-            @param entityName The entity or subject name.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.Holder.#ctor(Org.BouncyCastle.Asn1.X509.GeneralNames,System.Int32)">
-            Constructs a holder with an entityName for v2 attribute certificates or
-            with a subjectName for v1 attribute certificates.
-            
-            @param entityName The entity or subject name.
-            @param version The version of the attribute certificate. 
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.Holder.#ctor(Org.BouncyCastle.Asn1.X509.ObjectDigestInfo)">
-            Constructs a holder from an object digest info.
-            
-            @param objectDigestInfo The object digest info object.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.Holder.ToAsn1Object">
-            The Holder object.
-            <pre>
-             Holder ::= Sequence {
-                   baseCertificateID   [0] IssuerSerial OPTIONAL,
-                            -- the issuer and serial number of
-                            -- the holder's Public Key Certificate
-                   entityName          [1] GeneralNames OPTIONAL,
-                            -- the name of the claimant or role
-                   objectDigestInfo    [2] ObjectDigestInfo OPTIONAL
-                            -- used to directly authenticate the holder,
-                            -- for example, an executable
-             }
-            </pre>
-        </member>
-        <member name="P:Org.BouncyCastle.Asn1.X509.Holder.Version">
-            Returns 1 for v2 attribute certificates or 0 for v1 attribute
-            certificates. 
-            @return The version of the attribute certificate.
-        </member>
-        <member name="P:Org.BouncyCastle.Asn1.X509.Holder.EntityName">
-            Returns the entityName for an v2 attribute certificate or the subjectName
-            for an v1 attribute certificate.
-            
-            @return The entityname or subjectname.
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.IetfAttrSyntax">
-            Implementation of <code>IetfAttrSyntax</code> as specified by RFC3281.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.IetfAttrSyntax.#ctor(Org.BouncyCastle.Asn1.Asn1Sequence)">
-            
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.IetfAttrSyntax.ToAsn1Object">
-            
-             <pre>
-            
-              IetfAttrSyntax ::= Sequence {
-                policyAuthority [0] GeneralNames OPTIONAL,
-                values Sequence OF CHOICE {
-                  octets OCTET STRING,
-                  oid OBJECT IDENTIFIER,
-                  string UTF8String
-                }
-              }
-            
-             </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.IssuerSerial.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-             IssuerSerial  ::=  Sequence {
-                  issuer         GeneralNames,
-                  serial         CertificateSerialNumber,
-                  issuerUid      UniqueIdentifier OPTIONAL
-             }
-            </pre>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.IssuingDistributionPoint">
-            <pre>
-            IssuingDistributionPoint ::= SEQUENCE { 
-              distributionPoint          [0] DistributionPointName OPTIONAL, 
-              onlyContainsUserCerts      [1] BOOLEAN DEFAULT FALSE, 
-              onlyContainsCACerts        [2] BOOLEAN DEFAULT FALSE, 
-              onlySomeReasons            [3] ReasonFlags OPTIONAL, 
-              indirectCRL                [4] BOOLEAN DEFAULT FALSE,
-              onlyContainsAttributeCerts [5] BOOLEAN DEFAULT FALSE }
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.IssuingDistributionPoint.#ctor(Org.BouncyCastle.Asn1.X509.DistributionPointName,System.Boolean,System.Boolean,Org.BouncyCastle.Asn1.X509.ReasonFlags,System.Boolean,System.Boolean)">
-            Constructor from given details.
-            
-            @param distributionPoint
-                       May contain an URI as pointer to most current CRL.
-            @param onlyContainsUserCerts Covers revocation information for end certificates.
-            @param onlyContainsCACerts Covers revocation information for CA certificates.
-            
-            @param onlySomeReasons
-                       Which revocation reasons does this point cover.
-            @param indirectCRL
-                       If <code>true</code> then the CRL contains revocation
-                       information about certificates ssued by other CAs.
-            @param onlyContainsAttributeCerts Covers revocation information for attribute certificates.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.IssuingDistributionPoint.#ctor(Org.BouncyCastle.Asn1.Asn1Sequence)">
-            Constructor from Asn1Sequence
-        </member>
-        <member name="P:Org.BouncyCastle.Asn1.X509.IssuingDistributionPoint.DistributionPoint">
-            @return Returns the distributionPoint.
-        </member>
-        <member name="P:Org.BouncyCastle.Asn1.X509.IssuingDistributionPoint.OnlySomeReasons">
-            @return Returns the onlySomeReasons.
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.KeyPurposeID">
-            The KeyPurposeID object.
-            <pre>
-                KeyPurposeID ::= OBJECT IDENTIFIER
-            </pre>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.KeyUsage">
-             The KeyUsage object.
-             <pre>
-                id-ce-keyUsage OBJECT IDENTIFIER ::=  { id-ce 15 }
-            
-                KeyUsage ::= BIT STRING {
-                     digitalSignature        (0),
-                     nonRepudiation          (1),
-                     keyEncipherment         (2),
-                     dataEncipherment        (3),
-                     keyAgreement            (4),
-                     keyCertSign             (5),
-                     cRLSign                 (6),
-                     encipherOnly            (7),
-                     decipherOnly            (8) }
-             </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.KeyUsage.#ctor(System.Int32)">
-             Basic constructor.
-            
-             @param usage - the bitwise OR of the Key Usage flags giving the
-             allowed uses for the key.
-             e.g. (KeyUsage.keyEncipherment | KeyUsage.dataEncipherment)
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.NameConstraints.#ctor(System.Collections.IList,System.Collections.IList)">
-             Constructor from a given details.
-            
-             <p>permitted and excluded are Vectors of GeneralSubtree objects.</p>
-            
-             @param permitted Permitted subtrees
-             @param excluded Excluded subtrees
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.NoticeReference">
-             <code>NoticeReference</code> class, used in
-             <code>CertificatePolicies</code> X509 V3 extensions
-             (in policy qualifiers).
-            
-             <pre>
-              NoticeReference ::= Sequence {
-                  organization     DisplayText,
-                  noticeNumbers    Sequence OF Integer }
-            
-             </pre>
-            
-             @see PolicyQualifierInfo
-             @see PolicyInformation
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.NoticeReference.#ctor(System.String,System.Collections.IList)">
-             Creates a new <code>NoticeReference</code> instance.
-            
-             @param orgName a <code>string</code> value
-             @param numbers a <code>ArrayList</code> value
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.NoticeReference.#ctor(System.String,Org.BouncyCastle.Asn1.Asn1Sequence)">
-             Creates a new <code>NoticeReference</code> instance.
-            
-             @param orgName a <code>string</code> value
-             @param numbers an <code>Asn1Sequence</code> value
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.NoticeReference.#ctor(System.Int32,System.String,Org.BouncyCastle.Asn1.Asn1Sequence)">
-             Creates a new <code>NoticeReference</code> instance.
-            
-             @param displayTextType an <code>int</code> value
-             @param orgName a <code>string</code> value
-             @param numbers an <code>Asn1Sequence</code> value
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.NoticeReference.#ctor(Org.BouncyCastle.Asn1.Asn1Sequence)">
-             Creates a new <code>NoticeReference</code> instance.
-             <p>Useful for reconstructing a <code>NoticeReference</code>
-             instance from its encodable/encoded form.</p>
-            
-             @param as an <code>Asn1Sequence</code> value obtained from either
-             calling @{link ToAsn1Object()} for a <code>NoticeReference</code>
-             instance or from parsing it from a Der-encoded stream.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.NoticeReference.ToAsn1Object">
-             Describe <code>ToAsn1Object</code> method here.
-            
-             @return a <code>Asn1Object</code> value
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.ObjectDigestInfo">
-            ObjectDigestInfo ASN.1 structure used in v2 attribute certificates.
-            
-            <pre>
-             
-               ObjectDigestInfo ::= SEQUENCE {
-                    digestedObjectType  ENUMERATED {
-                            publicKey            (0),
-                            publicKeyCert        (1),
-                            otherObjectTypes     (2) },
-                                    -- otherObjectTypes MUST NOT
-                                    -- be used in this profile
-                    otherObjectTypeID   OBJECT IDENTIFIER OPTIONAL,
-                    digestAlgorithm     AlgorithmIdentifier,
-                    objectDigest        BIT STRING
-               }
-              
-            </pre>
-            
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.ObjectDigestInfo.PublicKey">
-            The public key is hashed.
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.ObjectDigestInfo.PublicKeyCert">
-            The public key certificate is hashed.
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.ObjectDigestInfo.OtherObjectDigest">
-            An other object is hashed.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.ObjectDigestInfo.#ctor(System.Int32,System.String,Org.BouncyCastle.Asn1.X509.AlgorithmIdentifier,System.Byte[])">
-            Constructor from given details.
-            <p>
-            If <code>digestedObjectType</code> is not {@link #publicKeyCert} or
-            {@link #publicKey} <code>otherObjectTypeID</code> must be given,
-            otherwise it is ignored.</p>
-            
-            @param digestedObjectType The digest object type.
-            @param otherObjectTypeID The object type ID for
-                       <code>otherObjectDigest</code>.
-            @param digestAlgorithm The algorithm identifier for the hash.
-            @param objectDigest The hash value.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.ObjectDigestInfo.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            
-            <pre>
-             
-               ObjectDigestInfo ::= SEQUENCE {
-                    digestedObjectType  ENUMERATED {
-                            publicKey            (0),
-                            publicKeyCert        (1),
-                            otherObjectTypes     (2) },
-                                    -- otherObjectTypes MUST NOT
-                                    -- be used in this profile
-                    otherObjectTypeID   OBJECT IDENTIFIER OPTIONAL,
-                    digestAlgorithm     AlgorithmIdentifier,
-                    objectDigest        BIT STRING
-               }
-              
-            </pre>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.PolicyMappings">
-             PolicyMappings V3 extension, described in RFC3280.
-             <pre>
-                PolicyMappings ::= Sequence SIZE (1..MAX) OF Sequence {
-                  issuerDomainPolicy      CertPolicyId,
-                  subjectDomainPolicy     CertPolicyId }
-             </pre>
-            
-             @see <a href="http://www.faqs.org/rfc/rfc3280.txt">RFC 3280, section 4.2.1.6</a>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.PolicyMappings.#ctor(Org.BouncyCastle.Asn1.Asn1Sequence)">
-             Creates a new <code>PolicyMappings</code> instance.
-            
-             @param seq an <code>Asn1Sequence</code> constructed as specified
-             in RFC 3280
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.PolicyMappings.#ctor(System.Collections.IDictionary)">
-             Creates a new <code>PolicyMappings</code> instance.
-            
-             @param mappings a <code>HashMap</code> value that maps
-             <code>string</code> oids
-             to other <code>string</code> oids.
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.PolicyQualifierID">
-             PolicyQualifierId, used in the CertificatePolicies
-             X509V3 extension.
-            
-             <pre>
-                id-qt          OBJECT IDENTIFIER ::=  { id-pkix 2 }
-                id-qt-cps      OBJECT IDENTIFIER ::=  { id-qt 1 }
-                id-qt-unotice  OBJECT IDENTIFIER ::=  { id-qt 2 }
-              PolicyQualifierId ::=
-                   OBJECT IDENTIFIER ( id-qt-cps | id-qt-unotice )
-             </pre>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.PolicyQualifierInfo">
-             Policy qualifiers, used in the X509V3 CertificatePolicies
-             extension.
-            
-             <pre>
-               PolicyQualifierInfo ::= Sequence {
-                   policyQualifierId  PolicyQualifierId,
-                   qualifier          ANY DEFINED BY policyQualifierId }
-             </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.PolicyQualifierInfo.#ctor(Org.BouncyCastle.Asn1.DerObjectIdentifier,Org.BouncyCastle.Asn1.Asn1Encodable)">
-             Creates a new <code>PolicyQualifierInfo</code> instance.
-            
-             @param policyQualifierId a <code>PolicyQualifierId</code> value
-             @param qualifier the qualifier, defined by the above field.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.PolicyQualifierInfo.#ctor(System.String)">
-             Creates a new <code>PolicyQualifierInfo</code> containing a
-             cPSuri qualifier.
-            
-             @param cps the CPS (certification practice statement) uri as a
-             <code>string</code>.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.PolicyQualifierInfo.#ctor(Org.BouncyCastle.Asn1.Asn1Sequence)">
-             Creates a new <code>PolicyQualifierInfo</code> instance.
-            
-             @param as <code>PolicyQualifierInfo</code> X509 structure
-             encoded as an Asn1Sequence.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.PolicyQualifierInfo.ToAsn1Object">
-             Returns a Der-encodable representation of this instance.
-            
-             @return a <code>Asn1Object</code> value
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.PrivateKeyUsagePeriod">
-            <remarks>
-            <pre>
-            PrivateKeyUsagePeriod ::= SEQUENCE
-            {
-            notBefore       [0]     GeneralizedTime OPTIONAL,
-            notAfter        [1]     GeneralizedTime OPTIONAL }
-            </pre>
-            </remarks>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.Qualified.BiometricData">
-            The BiometricData object.
-            <pre>
-            BiometricData  ::=  SEQUENCE {
-                  typeOfBiometricData  TypeOfBiometricData,
-                  hashAlgorithm        AlgorithmIdentifier,
-                  biometricDataHash    OCTET STRING,
-                  sourceDataUri        IA5String OPTIONAL  }
-            </pre>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.Qualified.Iso4217CurrencyCode">
-            The Iso4217CurrencyCode object.
-            <pre>
-            Iso4217CurrencyCode  ::=  CHOICE {
-                  alphabetic              PrintableString (SIZE 3), --Recommended
-                  numeric              INTEGER (1..999) }
-            -- Alphabetic or numeric currency code as defined in ISO 4217
-            -- It is recommended that the Alphabetic form is used
-            </pre>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.Qualified.MonetaryValue">
-            The MonetaryValue object.
-            <pre>
-            MonetaryValue  ::=  SEQUENCE {
-                  currency              Iso4217CurrencyCode,
-                  amount               INTEGER,
-                  exponent             INTEGER }
-            -- value = amount * 10^exponent
-            </pre>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.Qualified.QCStatement">
-            The QCStatement object.
-            <pre>
-            QCStatement ::= SEQUENCE {
-              statementId        OBJECT IDENTIFIER,
-              statementInfo      ANY DEFINED BY statementId OPTIONAL}
-            </pre>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.Qualified.SemanticsInformation">
-             The SemanticsInformation object.
-             <pre>
-                   SemanticsInformation ::= SEQUENCE {
-                     semanticsIdentifier        OBJECT IDENTIFIER   OPTIONAL,
-                     nameRegistrationAuthorities NameRegistrationAuthorities
-                                                                     OPTIONAL }
-                     (WITH COMPONENTS {..., semanticsIdentifier PRESENT}|
-                      WITH COMPONENTS {..., nameRegistrationAuthorities PRESENT})
-            
-                 NameRegistrationAuthorities ::=  SEQUENCE SIZE (1..MAX) OF
-                     GeneralName
-             </pre>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.Qualified.TypeOfBiometricData">
-             The TypeOfBiometricData object.
-             <pre>
-             TypeOfBiometricData ::= CHOICE {
-               predefinedBiometricType   PredefinedBiometricType,
-               biometricDataOid          OBJECT IDENTIFIER }
-            
-             PredefinedBiometricType ::= INTEGER {
-               picture(0),handwritten-signature(1)}
-               (picture|handwritten-signature)
-             </pre>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.ReasonFlags">
-            The ReasonFlags object.
-            <pre>
-            ReasonFlags ::= BIT STRING {
-               unused(0),
-               keyCompromise(1),
-               cACompromise(2),
-               affiliationChanged(3),
-               superseded(4),
-               cessationOfOperation(5),
-               certficateHold(6)
-            }
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.ReasonFlags.#ctor(System.Int32)">
-            @param reasons - the bitwise OR of the Key Reason flags giving the
-            allowed uses for the key.
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.RoleSyntax">
-             Implementation of the RoleSyntax object as specified by the RFC3281.
-            
-             <pre>
-             RoleSyntax ::= SEQUENCE {
-                             roleAuthority  [0] GeneralNames OPTIONAL,
-                             roleName       [1] GeneralName
-                       }
-             </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.RoleSyntax.GetInstance(System.Object)">
-            RoleSyntax factory method.
-            @param obj the object used to construct an instance of <code>
-            RoleSyntax</code>. It must be an instance of <code>RoleSyntax
-            </code> or <code>Asn1Sequence</code>.
-            @return the instance of <code>RoleSyntax</code> built from the
-            supplied object.
-            @throws java.lang.ArgumentException if the object passed
-            to the factory is not an instance of <code>RoleSyntax</code> or
-            <code>Asn1Sequence</code>.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.RoleSyntax.#ctor(Org.BouncyCastle.Asn1.X509.GeneralNames,Org.BouncyCastle.Asn1.X509.GeneralName)">
-            Constructor.
-            @param roleAuthority the role authority of this RoleSyntax.
-            @param roleName    the role name of this RoleSyntax.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.RoleSyntax.#ctor(Org.BouncyCastle.Asn1.X509.GeneralName)">
-            Constructor. Invoking this constructor is the same as invoking
-            <code>new RoleSyntax(null, roleName)</code>.
-            @param roleName    the role name of this RoleSyntax.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.RoleSyntax.#ctor(System.String)">
-            Utility constructor. Takes a <code>string</code> argument representing
-            the role name, builds a <code>GeneralName</code> to hold the role name
-            and calls the constructor that takes a <code>GeneralName</code>.
-            @param roleName
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.RoleSyntax.#ctor(Org.BouncyCastle.Asn1.Asn1Sequence)">
-            Constructor that builds an instance of <code>RoleSyntax</code> by
-            extracting the encoded elements from the <code>Asn1Sequence</code>
-            object supplied.
-            @param seq    an instance of <code>Asn1Sequence</code> that holds
-            the encoded elements used to build this <code>RoleSyntax</code>.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.RoleSyntax.GetRoleNameAsString">
-            Gets the role name as a <code>java.lang.string</code> object.
-            @return    the role name of this RoleSyntax represented as a
-            <code>string</code> object.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.RoleSyntax.GetRoleAuthorityAsString">
-            Gets the role authority as a <code>string[]</code> object.
-            @return the role authority of this RoleSyntax represented as a
-            <code>string[]</code> array.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.RoleSyntax.ToAsn1Object">
-             Implementation of the method <code>ToAsn1Object</code> as
-             required by the superclass <code>ASN1Encodable</code>.
-            
-             <pre>
-             RoleSyntax ::= SEQUENCE {
-                             roleAuthority  [0] GeneralNames OPTIONAL,
-                             roleName       [1] GeneralName
-                       }
-             </pre>
-        </member>
-        <member name="P:Org.BouncyCastle.Asn1.X509.RoleSyntax.RoleAuthority">
-            Gets the role authority of this RoleSyntax.
-            @return    an instance of <code>GeneralNames</code> holding the
-            role authority of this RoleSyntax.
-        </member>
-        <member name="P:Org.BouncyCastle.Asn1.X509.RoleSyntax.RoleName">
-            Gets the role name of this RoleSyntax.
-            @return    an instance of <code>GeneralName</code> holding the
-            role name of this RoleSyntax.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.RsaPublicKeyStructure.ToAsn1Object">
-            This outputs the key in Pkcs1v2 format.
-            <pre>
-                 RSAPublicKey ::= Sequence {
-                                     modulus Integer, -- n
-                                     publicExponent Integer, -- e
-                                 }
-            </pre>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.SigI.NameOrPseudonym">
-            Structure for a name or pseudonym.
-            
-            <pre>
-                  NameOrPseudonym ::= CHOICE {
-                	   surAndGivenName SEQUENCE {
-                	     surName DirectoryString,
-                	     givenName SEQUENCE OF DirectoryString 
-                    },
-                	   pseudonym DirectoryString 
-                  }
-            </pre>
-            
-            @see org.bouncycastle.asn1.x509.sigi.PersonalData
-            
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.SigI.NameOrPseudonym.#ctor(Org.BouncyCastle.Asn1.X500.DirectoryString)">
-            Constructor from DERString.
-            <p/>
-            The sequence is of type NameOrPseudonym:
-            <p/>
-            <pre>
-                  NameOrPseudonym ::= CHOICE {
-                	   surAndGivenName SEQUENCE {
-                	     surName DirectoryString,
-                	     givenName SEQUENCE OF DirectoryString
-                    },
-                	   pseudonym DirectoryString
-                  }
-            </pre>
-            @param pseudonym pseudonym value to use.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.SigI.NameOrPseudonym.#ctor(Org.BouncyCastle.Asn1.Asn1Sequence)">
-             Constructor from Asn1Sequence.
-             <p/>
-             The sequence is of type NameOrPseudonym:
-             <p/>
-             <pre>
-                   NameOrPseudonym ::= CHOICE {
-                 	   surAndGivenName SEQUENCE {
-                 	     surName DirectoryString,
-                 	     givenName SEQUENCE OF DirectoryString
-                     },
-                 	   pseudonym DirectoryString
-                   }
-             </pre>
-            
-             @param seq The ASN.1 sequence.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.SigI.NameOrPseudonym.#ctor(System.String)">
-             Constructor from a given details.
-            
-             @param pseudonym The pseudonym.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.SigI.NameOrPseudonym.#ctor(Org.BouncyCastle.Asn1.X500.DirectoryString,Org.BouncyCastle.Asn1.Asn1Sequence)">
-             Constructor from a given details.
-            
-             @param surname   The surname.
-             @param givenName A sequence of directory strings making up the givenName
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.SigI.NameOrPseudonym.ToAsn1Object">
-             Produce an object suitable for an Asn1OutputStream.
-             <p/>
-             Returns:
-             <p/>
-             <pre>
-                   NameOrPseudonym ::= CHOICE {
-                 	   surAndGivenName SEQUENCE {
-                 	     surName DirectoryString,
-                 	     givenName SEQUENCE OF DirectoryString
-                     },
-                 	   pseudonym DirectoryString
-                   }
-             </pre>
-            
-             @return an Asn1Object
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.SigI.PersonalData">
-             Contains personal data for the otherName field in the subjectAltNames
-             extension.
-             <p/>
-             <pre>
-                 PersonalData ::= SEQUENCE {
-                   nameOrPseudonym NameOrPseudonym,
-                   nameDistinguisher [0] INTEGER OPTIONAL,
-                   dateOfBirth [1] GeneralizedTime OPTIONAL,
-                   placeOfBirth [2] DirectoryString OPTIONAL,
-                   gender [3] PrintableString OPTIONAL,
-                   postalAddress [4] DirectoryString OPTIONAL
-                   }
-             </pre>
-            
-             @see org.bouncycastle.asn1.x509.sigi.NameOrPseudonym
-             @see org.bouncycastle.asn1.x509.sigi.SigIObjectIdentifiers
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.SigI.PersonalData.#ctor(Org.BouncyCastle.Asn1.Asn1Sequence)">
-             Constructor from Asn1Sequence.
-             <p/>
-             The sequence is of type NameOrPseudonym:
-             <p/>
-             <pre>
-                 PersonalData ::= SEQUENCE {
-                   nameOrPseudonym NameOrPseudonym,
-                   nameDistinguisher [0] INTEGER OPTIONAL,
-                   dateOfBirth [1] GeneralizedTime OPTIONAL,
-                   placeOfBirth [2] DirectoryString OPTIONAL,
-                   gender [3] PrintableString OPTIONAL,
-                   postalAddress [4] DirectoryString OPTIONAL
-                   }
-             </pre>
-            
-             @param seq The ASN.1 sequence.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.SigI.PersonalData.#ctor(Org.BouncyCastle.Asn1.X509.SigI.NameOrPseudonym,Org.BouncyCastle.Math.BigInteger,Org.BouncyCastle.Asn1.DerGeneralizedTime,Org.BouncyCastle.Asn1.X500.DirectoryString,System.String,Org.BouncyCastle.Asn1.X500.DirectoryString)">
-             Constructor from a given details.
-            
-             @param nameOrPseudonym  Name or pseudonym.
-             @param nameDistinguisher Name distinguisher.
-             @param dateOfBirth      Date of birth.
-             @param placeOfBirth     Place of birth.
-             @param gender           Gender.
-             @param postalAddress    Postal Address.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.SigI.PersonalData.ToAsn1Object">
-             Produce an object suitable for an Asn1OutputStream.
-             <p/>
-             Returns:
-             <p/>
-             <pre>
-                 PersonalData ::= SEQUENCE {
-                   nameOrPseudonym NameOrPseudonym,
-                   nameDistinguisher [0] INTEGER OPTIONAL,
-                   dateOfBirth [1] GeneralizedTime OPTIONAL,
-                   placeOfBirth [2] DirectoryString OPTIONAL,
-                   gender [3] PrintableString OPTIONAL,
-                   postalAddress [4] DirectoryString OPTIONAL
-                   }
-             </pre>
-            
-             @return an Asn1Object
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.SigI.SigIObjectIdentifiers">
-            Object Identifiers of SigI specifciation (German Signature Law
-            Interoperability specification).
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.SigI.SigIObjectIdentifiers.IdSigIKP">
-            Key purpose IDs for German SigI (Signature Interoperability
-            Specification)
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.SigI.SigIObjectIdentifiers.IdSigICP">
-            Certificate policy IDs for German SigI (Signature Interoperability
-            Specification)
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.SigI.SigIObjectIdentifiers.IdSigION">
-            Other Name IDs for German SigI (Signature Interoperability Specification)
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.SigI.SigIObjectIdentifiers.IdSigIKPDirectoryService">
-            To be used for for the generation of directory service certificates.
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.SigI.SigIObjectIdentifiers.IdSigIONPersonalData">
-            ID for PersonalData
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.SigI.SigIObjectIdentifiers.IdSigICPSigConform">
-            Certificate is conform to german signature law.
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.SubjectDirectoryAttributes">
-             This extension may contain further X.500 attributes of the subject. See also
-             RFC 3039.
-            
-             <pre>
-                 SubjectDirectoryAttributes ::= Attributes
-                 Attributes ::= SEQUENCE SIZE (1..MAX) OF Attribute
-                 Attribute ::= SEQUENCE
-                 {
-                   type AttributeType
-                   values SET OF AttributeValue
-                 }
-            
-                 AttributeType ::= OBJECT IDENTIFIER
-                 AttributeValue ::= ANY DEFINED BY AttributeType
-             </pre>
-            
-             @see org.bouncycastle.asn1.x509.X509Name for AttributeType ObjectIdentifiers.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.SubjectDirectoryAttributes.#ctor(Org.BouncyCastle.Asn1.Asn1Sequence)">
-             Constructor from Asn1Sequence.
-            
-             The sequence is of type SubjectDirectoryAttributes:
-            
-             <pre>
-                  SubjectDirectoryAttributes ::= Attributes
-                  Attributes ::= SEQUENCE SIZE (1..MAX) OF Attribute
-                  Attribute ::= SEQUENCE
-                  {
-                    type AttributeType
-                    values SET OF AttributeValue
-                  }
-            
-                  AttributeType ::= OBJECT IDENTIFIER
-                  AttributeValue ::= ANY DEFINED BY AttributeType
-             </pre>
-            
-             @param seq
-                        The ASN.1 sequence.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.SubjectDirectoryAttributes.#ctor(System.Collections.IList)">
-             Constructor from an ArrayList of attributes.
-            
-             The ArrayList consists of attributes of type {@link Attribute Attribute}
-            
-             @param attributes The attributes.
-            
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.SubjectDirectoryAttributes.ToAsn1Object">
-             Produce an object suitable for an Asn1OutputStream.
-            
-             Returns:
-            
-             <pre>
-                  SubjectDirectoryAttributes ::= Attributes
-                  Attributes ::= SEQUENCE SIZE (1..MAX) OF Attribute
-                  Attribute ::= SEQUENCE
-                  {
-                    type AttributeType
-                    values SET OF AttributeValue
-                  }
-            
-                  AttributeType ::= OBJECT IDENTIFIER
-                  AttributeValue ::= ANY DEFINED BY AttributeType
-             </pre>
-            
-             @return a DERObject
-        </member>
-        <member name="P:Org.BouncyCastle.Asn1.X509.SubjectDirectoryAttributes.Attributes">
-            @return Returns the attributes.
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.SubjectKeyIdentifier">
-            The SubjectKeyIdentifier object.
-            <pre>
-            SubjectKeyIdentifier::= OCTET STRING
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.SubjectKeyIdentifier.#ctor(Org.BouncyCastle.Asn1.X509.SubjectPublicKeyInfo)">
-             Calculates the keyIdentifier using a SHA1 hash over the BIT STRING
-             from SubjectPublicKeyInfo as defined in RFC3280.
-            
-             @param spki the subject public key info.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.SubjectKeyIdentifier.CreateSha1KeyIdentifier(Org.BouncyCastle.Asn1.X509.SubjectPublicKeyInfo)">
-            Return a RFC 3280 type 1 key identifier. As in:
-            <pre>
-            (1) The keyIdentifier is composed of the 160-bit SHA-1 hash of the
-            value of the BIT STRING subjectPublicKey (excluding the tag,
-            length, and number of unused bits).
-            </pre>
-            @param keyInfo the key info object containing the subjectPublicKey field.
-            @return the key identifier.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.SubjectKeyIdentifier.CreateTruncatedSha1KeyIdentifier(Org.BouncyCastle.Asn1.X509.SubjectPublicKeyInfo)">
-            Return a RFC 3280 type 2 key identifier. As in:
-            <pre>
-            (2) The keyIdentifier is composed of a four bit type field with
-            the value 0100 followed by the least significant 60 bits of the
-            SHA-1 hash of the value of the BIT STRING subjectPublicKey.
-            </pre>
-            @param keyInfo the key info object containing the subjectPublicKey field.
-            @return the key identifier.
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.SubjectPublicKeyInfo">
-            The object that contains the public key stored in a certficate.
-            <p>
-            The GetEncoded() method in the public keys in the JCE produces a DER
-            encoded one of these.</p>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.SubjectPublicKeyInfo.GetPublicKey">
-             for when the public key is an encoded object - if the bitstring
-             can't be decoded this routine raises an IOException.
-            
-             @exception IOException - if the bit string doesn't represent a Der
-             encoded object.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.SubjectPublicKeyInfo.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-            SubjectPublicKeyInfo ::= Sequence {
-                                     algorithm AlgorithmIdentifier,
-                                     publicKey BIT STRING }
-            </pre>
-        </member>
-        <member name="P:Org.BouncyCastle.Asn1.X509.SubjectPublicKeyInfo.PublicKeyData">
-            for when the public key is raw bits...
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.Target">
-            Target structure used in target information extension for attribute
-            certificates from RFC 3281.
-            
-            <pre>
-                Target  ::= CHOICE {
-                  targetName          [0] GeneralName,
-                  targetGroup         [1] GeneralName,
-                  targetCert          [2] TargetCert
-                }
-            </pre>
-            
-            <p>
-            The targetCert field is currently not supported and must not be used
-            according to RFC 3281.</p>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.Target.GetInstance(System.Object)">
-            Creates an instance of a Target from the given object.
-            <p>
-            <code>obj</code> can be a Target or a {@link Asn1TaggedObject}</p>
-            
-            @param obj The object.
-            @return A Target instance.
-            @throws ArgumentException if the given object cannot be
-                        interpreted as Target.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.Target.#ctor(Org.BouncyCastle.Asn1.Asn1TaggedObject)">
-            Constructor from Asn1TaggedObject.
-            
-            @param tagObj The tagged object.
-            @throws ArgumentException if the encoding is wrong.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.Target.#ctor(Org.BouncyCastle.Asn1.X509.Target.Choice,Org.BouncyCastle.Asn1.X509.GeneralName)">
-             Constructor from given details.
-             <p>
-             Exactly one of the parameters must be not <code>null</code>.</p>
-            
-             @param type the choice type to apply to the name.
-             @param name the general name.
-             @throws ArgumentException if type is invalid.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.Target.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            
-            Returns:
-            
-            <pre>
-                Target  ::= CHOICE {
-                  targetName          [0] GeneralName,
-                  targetGroup         [1] GeneralName,
-                  targetCert          [2] TargetCert
-                }
-            </pre>
-            
-            @return an Asn1Object
-        </member>
-        <member name="P:Org.BouncyCastle.Asn1.X509.Target.TargetGroup">
-            @return Returns the targetGroup.
-        </member>
-        <member name="P:Org.BouncyCastle.Asn1.X509.Target.TargetName">
-            @return Returns the targetName.
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.TargetInformation">
-            Target information extension for attributes certificates according to RFC
-            3281.
-            
-            <pre>
-                      SEQUENCE OF Targets
-            </pre>
-            
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.TargetInformation.GetInstance(System.Object)">
-            Creates an instance of a TargetInformation from the given object.
-            <p>
-            <code>obj</code> can be a TargetInformation or a {@link Asn1Sequence}</p>
-            
-            @param obj The object.
-            @return A TargetInformation instance.
-            @throws ArgumentException if the given object cannot be interpreted as TargetInformation.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.TargetInformation.#ctor(Org.BouncyCastle.Asn1.Asn1Sequence)">
-            Constructor from a Asn1Sequence.
-            
-            @param seq The Asn1Sequence.
-            @throws ArgumentException if the sequence does not contain
-                        correctly encoded Targets elements.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.TargetInformation.GetTargetsObjects">
-            Returns the targets in this target information extension.
-            <p>
-            The ArrayList is cloned before it is returned.</p>
-            
-            @return Returns the targets.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.TargetInformation.#ctor(Org.BouncyCastle.Asn1.X509.Targets)">
-            Constructs a target information from a single targets element. 
-            According to RFC 3281 only one targets element must be produced.
-            
-            @param targets A Targets instance.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.TargetInformation.#ctor(Org.BouncyCastle.Asn1.X509.Target[])">
-             According to RFC 3281 only one targets element must be produced. If
-             multiple targets are given they must be merged in
-             into one targets element.
-            
-             @param targets An array with {@link Targets}.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.TargetInformation.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            
-            Returns:
-            
-            <pre>
-                     SEQUENCE OF Targets
-            </pre>
-            
-            <p>
-            According to RFC 3281 only one targets element must be produced. If
-            multiple targets are given in the constructor they are merged into one
-            targets element. If this was produced from a
-            {@link Org.BouncyCastle.Asn1.Asn1Sequence} the encoding is kept.</p>
-            
-            @return an Asn1Object
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.Targets">
-            Targets structure used in target information extension for attribute
-            certificates from RFC 3281.
-            
-            <pre>
-                       Targets ::= SEQUENCE OF Target
-                      
-                       Target  ::= CHOICE {
-                         targetName          [0] GeneralName,
-                         targetGroup         [1] GeneralName,
-                         targetCert          [2] TargetCert
-                       }
-                      
-                       TargetCert  ::= SEQUENCE {
-                         targetCertificate    IssuerSerial,
-                         targetName           GeneralName OPTIONAL,
-                         certDigestInfo       ObjectDigestInfo OPTIONAL
-                       }
-            </pre>
-            
-            @see org.bouncycastle.asn1.x509.Target
-            @see org.bouncycastle.asn1.x509.TargetInformation
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.Targets.GetInstance(System.Object)">
-            Creates an instance of a Targets from the given object.
-            <p>
-            <code>obj</code> can be a Targets or a {@link Asn1Sequence}</p>
-            
-            @param obj The object.
-            @return A Targets instance.
-            @throws ArgumentException if the given object cannot be interpreted as Target.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.Targets.#ctor(Org.BouncyCastle.Asn1.Asn1Sequence)">
-            Constructor from Asn1Sequence.
-            
-            @param targets The ASN.1 SEQUENCE.
-            @throws ArgumentException if the contents of the sequence are
-                        invalid.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.Targets.#ctor(Org.BouncyCastle.Asn1.X509.Target[])">
-            Constructor from given targets.
-            <p>
-            The ArrayList is copied.</p>
-            
-            @param targets An <code>ArrayList</code> of {@link Target}s.
-            @see Target
-            @throws ArgumentException if the ArrayList contains not only Targets.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.Targets.GetTargets">
-            Returns the targets in an <code>ArrayList</code>.
-            <p>
-            The ArrayList is cloned before it is returned.</p>
-            
-            @return Returns the targets.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.Targets.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            
-            Returns:
-            
-            <pre>
-                       Targets ::= SEQUENCE OF Target
-            </pre>
-            
-            @return an Asn1Object
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.TbsCertificateStructure">
-            The TbsCertificate object.
-            <pre>
-            TbsCertificate ::= Sequence {
-                 version          [ 0 ]  Version DEFAULT v1(0),
-                 serialNumber            CertificateSerialNumber,
-                 signature               AlgorithmIdentifier,
-                 issuer                  Name,
-                 validity                Validity,
-                 subject                 Name,
-                 subjectPublicKeyInfo    SubjectPublicKeyInfo,
-                 issuerUniqueID    [ 1 ] IMPLICIT UniqueIdentifier OPTIONAL,
-                 subjectUniqueID   [ 2 ] IMPLICIT UniqueIdentifier OPTIONAL,
-                 extensions        [ 3 ] Extensions OPTIONAL
-                 }
-            </pre>
-            <p>
-            Note: issuerUniqueID and subjectUniqueID are both deprecated by the IETF. This class
-            will parse them, but you really shouldn't be creating new ones.</p>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.TbsCertificateList">
-            PKIX RFC-2459 - TbsCertList object.
-            <pre>
-            TbsCertList  ::=  Sequence  {
-                 version                 Version OPTIONAL,
-                                              -- if present, shall be v2
-                 signature               AlgorithmIdentifier,
-                 issuer                  Name,
-                 thisUpdate              Time,
-                 nextUpdate              Time OPTIONAL,
-                 revokedCertificates     Sequence OF Sequence  {
-                      userCertificate         CertificateSerialNumber,
-                      revocationDate          Time,
-                      crlEntryExtensions      Extensions OPTIONAL
-                                                    -- if present, shall be v2
-                                           }  OPTIONAL,
-                 crlExtensions           [0]  EXPLICIT Extensions OPTIONAL
-                                                    -- if present, shall be v2
-                                           }
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.Time.#ctor(System.DateTime)">
-            creates a time object from a given date - if the date is between 1950
-            and 2049 a UTCTime object is Generated, otherwise a GeneralizedTime
-            is used.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.Time.ToDateTime">
-            <summary>
-            Return our time as DateTime.
-            </summary>
-            <returns>A date time.</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.Time.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-            Time ::= CHOICE {
-                        utcTime        UTCTime,
-                        generalTime    GeneralizedTime }
-            </pre>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.UserNotice">
-             <code>UserNotice</code> class, used in
-             <code>CertificatePolicies</code> X509 extensions (in policy
-             qualifiers).
-             <pre>
-             UserNotice ::= Sequence {
-                  noticeRef        NoticeReference OPTIONAL,
-                  explicitText     DisplayText OPTIONAL}
-            
-             </pre>
-            
-             @see PolicyQualifierId
-             @see PolicyInformation
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.UserNotice.#ctor(Org.BouncyCastle.Asn1.X509.NoticeReference,Org.BouncyCastle.Asn1.X509.DisplayText)">
-             Creates a new <code>UserNotice</code> instance.
-            
-             @param noticeRef a <code>NoticeReference</code> value
-             @param explicitText a <code>DisplayText</code> value
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.UserNotice.#ctor(Org.BouncyCastle.Asn1.X509.NoticeReference,System.String)">
-             Creates a new <code>UserNotice</code> instance.
-            
-             @param noticeRef a <code>NoticeReference</code> value
-             @param str the explicitText field as a string.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.UserNotice.#ctor(Org.BouncyCastle.Asn1.Asn1Sequence)">
-             Creates a new <code>UserNotice</code> instance.
-             <p>Useful from reconstructing a <code>UserNotice</code> instance
-             from its encodable/encoded form.
-            
-             @param as an <code>ASN1Sequence</code> value obtained from either
-             calling @{link toASN1Object()} for a <code>UserNotice</code>
-             instance or from parsing it from a DER-encoded stream.</p>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.V1TbsCertificateGenerator">
-             Generator for Version 1 TbsCertificateStructures.
-             <pre>
-             TbsCertificate ::= Sequence {
-                  version          [ 0 ]  Version DEFAULT v1(0),
-                  serialNumber            CertificateSerialNumber,
-                  signature               AlgorithmIdentifier,
-                  issuer                  Name,
-                  validity                Validity,
-                  subject                 Name,
-                  subjectPublicKeyInfo    SubjectPublicKeyInfo,
-                  }
-             </pre>
-            
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.V2AttributeCertificateInfoGenerator">
-             Generator for Version 2 AttributeCertificateInfo
-             <pre>
-             AttributeCertificateInfo ::= Sequence {
-                   version              AttCertVersion -- version is v2,
-                   holder               Holder,
-                   issuer               AttCertIssuer,
-                   signature            AlgorithmIdentifier,
-                   serialNumber         CertificateSerialNumber,
-                   attrCertValidityPeriod   AttCertValidityPeriod,
-                   attributes           Sequence OF Attr,
-                   issuerUniqueID       UniqueIdentifier OPTIONAL,
-                   extensions           Extensions OPTIONAL
-             }
-             </pre>
-            
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.V2AttributeCertificateInfoGenerator.AddAttribute(Org.BouncyCastle.Asn1.X509.AttributeX509)">
-            @param attribute
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.V2Form.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-             V2Form ::= Sequence {
-                  issuerName            GeneralNames  OPTIONAL,
-                  baseCertificateID     [0] IssuerSerial  OPTIONAL,
-                  objectDigestInfo      [1] ObjectDigestInfo  OPTIONAL
-                    -- issuerName MUST be present in this profile
-                    -- baseCertificateID and objectDigestInfo MUST NOT
-                    -- be present in this profile
-             }
-            </pre>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.V2TbsCertListGenerator">
-             Generator for Version 2 TbsCertList structures.
-             <pre>
-              TbsCertList  ::=  Sequence  {
-                   version                 Version OPTIONAL,
-                                                -- if present, shall be v2
-                   signature               AlgorithmIdentifier,
-                   issuer                  Name,
-                   thisUpdate              Time,
-                   nextUpdate              Time OPTIONAL,
-                   revokedCertificates     Sequence OF Sequence  {
-                        userCertificate         CertificateSerialNumber,
-                        revocationDate          Time,
-                        crlEntryExtensions      Extensions OPTIONAL
-                                                      -- if present, shall be v2
-                                             }  OPTIONAL,
-                   crlExtensions           [0]  EXPLICIT Extensions OPTIONAL
-                                                      -- if present, shall be v2
-                                             }
-             </pre>
-            
-             <b>Note: This class may be subject to change</b>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.V3TbsCertificateGenerator">
-             Generator for Version 3 TbsCertificateStructures.
-             <pre>
-             TbsCertificate ::= Sequence {
-                  version          [ 0 ]  Version DEFAULT v1(0),
-                  serialNumber            CertificateSerialNumber,
-                  signature               AlgorithmIdentifier,
-                  issuer                  Name,
-                  validity                Validity,
-                  subject                 Name,
-                  subjectPublicKeyInfo    SubjectPublicKeyInfo,
-                  issuerUniqueID    [ 1 ] IMPLICIT UniqueIdentifier OPTIONAL,
-                  subjectUniqueID   [ 2 ] IMPLICIT UniqueIdentifier OPTIONAL,
-                  extensions        [ 3 ] Extensions OPTIONAL
-                  }
-             </pre>
-            
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.X509CertificateStructure">
-            an X509Certificate structure.
-            <pre>
-             Certificate ::= Sequence {
-                 tbsCertificate          TbsCertificate,
-                 signatureAlgorithm      AlgorithmIdentifier,
-                 signature               BIT STRING
-             }
-            </pre>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.X509DefaultEntryConverter">
-            The default converter for X509 DN entries when going from their
-            string value to ASN.1 strings.
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.X509NameEntryConverter">
-                 * It turns out that the number of standard ways the fields in a DN should be
-                 * encoded into their ASN.1 counterparts is rapidly approaching the
-                 * number of machines on the internet. By default the X509Name class
-                 * will produce UTF8Strings in line with the current recommendations (RFC 3280).
-                 * <p>
-                 * An example of an encoder look like below:
-                 * <pre>
-                 * public class X509DirEntryConverter
-                 *     : X509NameEntryConverter
-                 * {
-                 *     public Asn1Object GetConvertedValue(
-                 *         DerObjectIdentifier  oid,
-                 *         string               value)
-                 *     {
-                 *         if (str.Length() != 0 &amp;&amp; str.charAt(0) == '#')
-                 *         {
-                 *             return ConvertHexEncoded(str, 1);
-                 *         }
-                 *         if (oid.Equals(EmailAddress))
-                 *         {
-                 *             return new DerIA5String(str);
-                 *         }
-                 *         else if (CanBePrintable(str))
-                 *         {
-                 *             return new DerPrintableString(str);
-                 *         }
-                 *         else if (CanBeUTF8(str))
-                 *         {
-                 *             return new DerUtf8String(str);
-                 *         }
-                 *         else
-                 *         {
-                 *             return new DerBmpString(str);
-                 *         }
-                 *     }
-                 * }
-            	 * </pre>
-            	 * </p>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.X509NameEntryConverter.ConvertHexEncoded(System.String,System.Int32)">
-             Convert an inline encoded hex string rendition of an ASN.1
-             object back into its corresponding ASN.1 object.
-            
-             @param str the hex encoded object
-             @param off the index at which the encoding starts
-             @return the decoded object
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.X509NameEntryConverter.CanBePrintable(System.String)">
-            return true if the passed in string can be represented without
-            loss as a PrintableString, false otherwise.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.X509NameEntryConverter.GetConvertedValue(Org.BouncyCastle.Asn1.DerObjectIdentifier,System.String)">
-             Convert the passed in string value into the appropriate ASN.1
-             encoded object.
-            
-             @param oid the oid associated with the value in the DN.
-             @param value the value of the particular DN component.
-             @return the ASN.1 equivalent for the value.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.X509DefaultEntryConverter.GetConvertedValue(Org.BouncyCastle.Asn1.DerObjectIdentifier,System.String)">
-             Apply default conversion for the given value depending on the oid
-             and the character range of the value.
-            
-             @param oid the object identifier for the DN entry
-             @param value the value associated with it
-             @return the ASN.1 equivalent for the string value.
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.X509Extension">
-            an object for the elements in the X.509 V3 extension block.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.X509Extension.ConvertValueToObject(Org.BouncyCastle.Asn1.X509.X509Extension)">
-            <sumary>Convert the value of the passed in extension to an object.</sumary>
-            <param name="ext">The extension to parse.</param>
-            <returns>The object the value string contains.</returns>
-            <exception cref="T:System.ArgumentException">If conversion is not possible.</exception>
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Extensions.SubjectDirectoryAttributes">
-            Subject Directory Attributes
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Extensions.SubjectKeyIdentifier">
-            Subject Key Identifier
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Extensions.KeyUsage">
-            Key Usage
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Extensions.PrivateKeyUsagePeriod">
-            Private Key Usage Period
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Extensions.SubjectAlternativeName">
-            Subject Alternative Name
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Extensions.IssuerAlternativeName">
-            Issuer Alternative Name
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Extensions.BasicConstraints">
-            Basic Constraints
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Extensions.CrlNumber">
-            CRL Number
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Extensions.ReasonCode">
-            Reason code
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Extensions.InstructionCode">
-            Hold Instruction Code
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Extensions.InvalidityDate">
-            Invalidity Date
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Extensions.DeltaCrlIndicator">
-            Delta CRL indicator
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Extensions.IssuingDistributionPoint">
-            Issuing Distribution Point
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Extensions.CertificateIssuer">
-            Certificate Issuer
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Extensions.NameConstraints">
-            Name Constraints
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Extensions.CrlDistributionPoints">
-            CRL Distribution Points
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Extensions.CertificatePolicies">
-            Certificate Policies
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Extensions.PolicyMappings">
-            Policy Mappings
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Extensions.AuthorityKeyIdentifier">
-            Authority Key Identifier
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Extensions.PolicyConstraints">
-            Policy Constraints
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Extensions.ExtendedKeyUsage">
-            Extended Key Usage
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Extensions.FreshestCrl">
-            Freshest CRL
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Extensions.InhibitAnyPolicy">
-            Inhibit Any Policy
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Extensions.AuthorityInfoAccess">
-            Authority Info Access
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Extensions.SubjectInfoAccess">
-            Subject Info Access
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Extensions.LogoType">
-            Logo Type
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Extensions.BiometricInfo">
-            BiometricInfo
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Extensions.QCStatements">
-            QCStatements
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Extensions.AuditIdentity">
-            Audit identity extension in attribute certificates.
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Extensions.NoRevAvail">
-            NoRevAvail extension in attribute certificates.
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Extensions.TargetInformation">
-            TargetInformation extension in attribute certificates.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.X509Extensions.#ctor(Org.BouncyCastle.Asn1.Asn1Sequence)">
-             Constructor from Asn1Sequence.
-            
-             the extensions are a list of constructed sequences, either with (Oid, OctetString) or (Oid, Boolean, OctetString)
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.X509Extensions.#ctor(System.Collections.IDictionary)">
-            constructor from a table of extensions.
-            <p>
-            it's is assumed the table contains Oid/string pairs.</p>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.X509Extensions.#ctor(System.Collections.IList,System.Collections.IDictionary)">
-            Constructor from a table of extensions with ordering.
-            <p>
-            It's is assumed the table contains Oid/string pairs.</p>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.X509Extensions.#ctor(System.Collections.IList,System.Collections.IList)">
-             Constructor from two vectors
-            
-             @param objectIDs an ArrayList of the object identifiers.
-             @param values an ArrayList of the extension values.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.X509Extensions.GetExtension(Org.BouncyCastle.Asn1.DerObjectIdentifier)">
-             return the extension represented by the object identifier
-             passed in.
-            
-             @return the extension if it's present, null otherwise.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.X509Extensions.ToAsn1Object">
-             <pre>
-                 Extensions        ::=   SEQUENCE SIZE (1..MAX) OF Extension
-            
-                 Extension         ::=   SEQUENCE {
-                    extnId            EXTENSION.&amp;id ({ExtensionSet}),
-                    critical          BOOLEAN DEFAULT FALSE,
-                    extnValue         OCTET STRING }
-             </pre>
-        </member>
-        <member name="P:Org.BouncyCastle.Asn1.X509.X509Extensions.ExtensionOids">
-            return an Enumeration of the extension field's object ids.
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.X509ExtensionsGenerator">
-            <remarks>Generator for X.509 extensions</remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.X509ExtensionsGenerator.Reset">
-            <summary>Reset the generator</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.X509ExtensionsGenerator.AddExtension(Org.BouncyCastle.Asn1.DerObjectIdentifier,System.Boolean,Org.BouncyCastle.Asn1.Asn1Encodable)">
-            <summary>
-            Add an extension with the given oid and the passed in value to be included
-            in the OCTET STRING associated with the extension.
-            </summary>
-            <param name="oid">OID for the extension.</param>
-            <param name="critical">True if critical, false otherwise.</param>
-            <param name="extValue">The ASN.1 object to be included in the extension.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.X509ExtensionsGenerator.AddExtension(Org.BouncyCastle.Asn1.DerObjectIdentifier,System.Boolean,System.Byte[])">
-            <summary>
-            Add an extension with the given oid and the passed in byte array to be wrapped
-            in the OCTET STRING associated with the extension.
-            </summary>
-            <param name="oid">OID for the extension.</param>
-            <param name="critical">True if critical, false otherwise.</param>
-            <param name="extValue">The byte array to be wrapped.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.X509ExtensionsGenerator.Generate">
-            <summary>Generate an X509Extensions object based on the current state of the generator.</summary>
-            <returns>An <c>X509Extensions</c> object</returns>
-        </member>
-        <member name="P:Org.BouncyCastle.Asn1.X509.X509ExtensionsGenerator.IsEmpty">
-            <summary>Return true if there are no extension present in this generator.</summary>
-            <returns>True if empty, false otherwise</returns>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.X509Name">
-             <pre>
-                 RDNSequence ::= SEQUENCE OF RelativeDistinguishedName
-            
-                 RelativeDistinguishedName ::= SET SIZE (1..MAX) OF AttributeTypeAndValue
-            
-                 AttributeTypeAndValue ::= SEQUENCE {
-                                               type  OBJECT IDENTIFIER,
-                                               value ANY }
-             </pre>
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Name.C">
-            country code - StringType(SIZE(2))
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Name.O">
-            organization - StringType(SIZE(1..64))
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Name.OU">
-            organizational unit name - StringType(SIZE(1..64))
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Name.T">
-            Title
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Name.CN">
-            common name - StringType(SIZE(1..64))
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Name.Street">
-            street - StringType(SIZE(1..64))
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Name.SerialNumber">
-            device serial number name - StringType(SIZE(1..64))
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Name.L">
-            locality name - StringType(SIZE(1..64))
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Name.ST">
-            state, or province name - StringType(SIZE(1..64))
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Name.Surname">
-            Naming attributes of type X520name
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Name.BusinessCategory">
-            businessCategory - DirectoryString(SIZE(1..128)
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Name.PostalCode">
-            postalCode - DirectoryString(SIZE(1..40)
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Name.DnQualifier">
-            dnQualifier - DirectoryString(SIZE(1..64)
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Name.Pseudonym">
-            RFC 3039 Pseudonym - DirectoryString(SIZE(1..64)
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Name.DateOfBirth">
-            RFC 3039 DateOfBirth - GeneralizedTime - YYYYMMDD000000Z
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Name.PlaceOfBirth">
-            RFC 3039 PlaceOfBirth - DirectoryString(SIZE(1..128)
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Name.Gender">
-            RFC 3039 DateOfBirth - PrintableString (SIZE(1)) -- "M", "F", "m" or "f"
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Name.CountryOfCitizenship">
-            RFC 3039 CountryOfCitizenship - PrintableString (SIZE (2)) -- ISO 3166
-            codes only
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Name.CountryOfResidence">
-            RFC 3039 CountryOfCitizenship - PrintableString (SIZE (2)) -- ISO 3166
-            codes only
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Name.NameAtBirth">
-            ISIS-MTT NameAtBirth - DirectoryString(SIZE(1..64)
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Name.PostalAddress">
-            RFC 3039 PostalAddress - SEQUENCE SIZE (1..6) OF
-            DirectoryString(SIZE(1..30))
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Name.DmdName">
-            RFC 2256 dmdName
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Name.TelephoneNumber">
-            id-at-telephoneNumber
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Name.Name">
-            id-at-name
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Name.EmailAddress">
-            Email address (RSA PKCS#9 extension) - IA5String.
-            <p>Note: if you're trying to be ultra orthodox, don't use this! It shouldn't be in here.</p>
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Name.UnstructuredName">
-            more from PKCS#9
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Name.E">
-            email address in Verisign certificates
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Name.UID">
-            LDAP User id.
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Name.DefaultSymbols">
-            default look up table translating OID values into their common symbols following
-            the convention in RFC 2253 with a few extras
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Name.RFC2253Symbols">
-            look up table translating OID values into their common symbols following the convention in RFC 2253
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Name.RFC1779Symbols">
-             look up table translating OID values into their common symbols following the convention in RFC 1779
-            
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X509.X509Name.DefaultLookup">
-            look up table translating common symbols into their OIDS.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.X509Name.GetInstance(Org.BouncyCastle.Asn1.Asn1TaggedObject,System.Boolean)">
-             Return a X509Name based on the passed in tagged object.
-            
-             @param obj tag object holding name.
-             @param explicitly true if explicitly tagged false otherwise.
-             @return the X509Name
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.X509Name.#ctor(Org.BouncyCastle.Asn1.Asn1Sequence)">
-             Constructor from Asn1Sequence
-            
-             the principal will be a list of constructed sets, each containing an (OID, string) pair.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.X509Name.#ctor(System.Collections.IList,System.Collections.IDictionary)">
-            Constructor from a table of attributes with ordering.
-            <p>
-            it's is assumed the table contains OID/string pairs, and the contents
-            of the table are copied into an internal table as part of the
-            construction process. The ordering ArrayList should contain the OIDs
-            in the order they are meant to be encoded or printed in ToString.</p>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.X509Name.#ctor(System.Collections.IList,System.Collections.IDictionary,Org.BouncyCastle.Asn1.X509.X509NameEntryConverter)">
-            Constructor from a table of attributes with ordering.
-            <p>
-            it's is assumed the table contains OID/string pairs, and the contents
-            of the table are copied into an internal table as part of the
-            construction process. The ordering ArrayList should contain the OIDs
-            in the order they are meant to be encoded or printed in ToString.</p>
-            <p>
-            The passed in converter will be used to convert the strings into their
-            ASN.1 counterparts.</p>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.X509Name.#ctor(System.Collections.IList,System.Collections.IList)">
-            Takes two vectors one of the oids and the other of the values.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.X509Name.#ctor(System.Collections.IList,System.Collections.IList,Org.BouncyCastle.Asn1.X509.X509NameEntryConverter)">
-            Takes two vectors one of the oids and the other of the values.
-            <p>
-            The passed in converter will be used to convert the strings into their
-            ASN.1 counterparts.</p>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.X509Name.#ctor(System.String)">
-            Takes an X509 dir name as a string of the format "C=AU, ST=Victoria", or
-            some such, converting it into an ordered set of name attributes.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.X509Name.#ctor(System.String,Org.BouncyCastle.Asn1.X509.X509NameEntryConverter)">
-            Takes an X509 dir name as a string of the format "C=AU, ST=Victoria", or
-            some such, converting it into an ordered set of name attributes with each
-            string value being converted to its associated ASN.1 type using the passed
-            in converter.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.X509Name.#ctor(System.Boolean,System.String)">
-            Takes an X509 dir name as a string of the format "C=AU, ST=Victoria", or
-            some such, converting it into an ordered set of name attributes. If reverse
-            is true, create the encoded version of the sequence starting from the
-            last element in the string.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.X509Name.#ctor(System.Boolean,System.String,Org.BouncyCastle.Asn1.X509.X509NameEntryConverter)">
-            Takes an X509 dir name as a string of the format "C=AU, ST=Victoria", or
-            some such, converting it into an ordered set of name attributes with each
-            string value being converted to its associated ASN.1 type using the passed
-            in converter. If reverse is true the ASN.1 sequence representing the DN will
-            be built by starting at the end of the string, rather than the start.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.X509Name.#ctor(System.Boolean,System.Collections.IDictionary,System.String)">
-            Takes an X509 dir name as a string of the format "C=AU, ST=Victoria", or
-            some such, converting it into an ordered set of name attributes. lookUp
-            should provide a table of lookups, indexed by lowercase only strings and
-            yielding a DerObjectIdentifier, other than that OID. and numeric oids
-            will be processed automatically.
-            <br/>
-            If reverse is true, create the encoded version of the sequence
-            starting from the last element in the string.
-            @param reverse true if we should start scanning from the end (RFC 2553).
-            @param lookUp table of names and their oids.
-            @param dirName the X.500 string to be parsed.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.X509Name.#ctor(System.Boolean,System.Collections.IDictionary,System.String,Org.BouncyCastle.Asn1.X509.X509NameEntryConverter)">
-            Takes an X509 dir name as a string of the format "C=AU, ST=Victoria", or
-            some such, converting it into an ordered set of name attributes. lookUp
-            should provide a table of lookups, indexed by lowercase only strings and
-            yielding a DerObjectIdentifier, other than that OID. and numeric oids
-            will be processed automatically. The passed in converter is used to convert the
-            string values to the right of each equals sign to their ASN.1 counterparts.
-            <br/>
-            @param reverse true if we should start scanning from the end, false otherwise.
-            @param lookUp table of names and oids.
-            @param dirName the string dirName
-            @param converter the converter to convert string values into their ASN.1 equivalents
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.X509Name.GetOidList">
-            return an IList of the oids in the name, in the order they were found.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.X509Name.GetValueList">
-            return an IList of the values found in the name, in the order they
-            were found.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.X509Name.GetValueList(Org.BouncyCastle.Asn1.DerObjectIdentifier)">
-            return an IList of the values found in the name, in the order they
-            were found, with the DN label corresponding to passed in oid.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.X509Name.Equivalent(Org.BouncyCastle.Asn1.X509.X509Name,System.Boolean)">
-            <param name="other">The X509Name object to test equivalency against.</param>
-            <param name="inOrder">If true, the order of elements must be the same,
-            as well as the values associated with each element.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.X509Name.Equivalent(Org.BouncyCastle.Asn1.X509.X509Name)">
-            test for equivalence - note: case is ignored.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X509.X509Name.ToString(System.Boolean,System.Collections.IDictionary)">
-             convert the structure to a string - if reverse is true the
-             oids and values are listed out starting with the last element
-             in the sequence (ala RFC 2253), otherwise the string will begin
-             with the first element of the structure. If no string definition
-             for the oid is found in oidSymbols the string value of the oid is
-             added. Two standard symbol tables are provided DefaultSymbols, and
-             RFC2253Symbols as part of this class.
-            
-             @param reverse if true start at the end of the sequence and work back.
-             @param oidSymbols look up table strings for oids.
-        </member>
-        <member name="P:Org.BouncyCastle.Asn1.X509.X509Name.DefaultReverse">
-            determines whether or not strings should be processed and printed
-            from back to front.
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X509.X509NameTokenizer">
-            class for breaking up an X500 Name into it's component tokens, ala
-            java.util.StringTokenizer. We need this class as some of the
-            lightweight Java environment don't support classes like
-            StringTokenizer.
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X9.KeySpecificInfo">
-            ASN.1 def for Diffie-Hellman key exchange KeySpecificInfo structure. See
-            RFC 2631, or X9.42, for further details.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X9.KeySpecificInfo.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-             KeySpecificInfo ::= Sequence {
-                 algorithm OBJECT IDENTIFIER,
-                 counter OCTET STRING SIZE (4..4)
-             }
-            </pre>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X9.OtherInfo">
-            ANS.1 def for Diffie-Hellman key exchange OtherInfo structure. See
-            RFC 2631, or X9.42, for further details.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X9.OtherInfo.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-             OtherInfo ::= Sequence {
-                 keyInfo KeySpecificInfo,
-                 partyAInfo [0] OCTET STRING OPTIONAL,
-                 suppPubInfo [2] OCTET STRING
-             }
-            </pre>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X9.X962NamedCurves">
-            table of the current named curves defined in X.962 EC-DSA.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X9.X962NamedCurves.GetByOid(Org.BouncyCastle.Asn1.DerObjectIdentifier)">
-             return the X9ECParameters object for the named curve represented by
-             the passed in object identifier. Null if the curve isn't present.
-            
-             @param oid an object identifier representing a named curve, if present.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X9.X962NamedCurves.GetOid(System.String)">
-             return the object identifier signified by the passed in name. Null
-             if there is no object identifier associated with name.
-            
-             @return the object identifier associated with name, if present.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X9.X962NamedCurves.GetName(Org.BouncyCastle.Asn1.DerObjectIdentifier)">
-            return the named curve name represented by the given object identifier.
-        </member>
-        <member name="P:Org.BouncyCastle.Asn1.X9.X962NamedCurves.Names">
-            returns an enumeration containing the name strings for curves
-            contained in this structure.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X9.X962Parameters.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-            Parameters ::= CHOICE {
-               ecParameters ECParameters,
-               namedCurve   CURVES.&amp;id({CurveNames}),
-               implicitlyCA Null
-            }
-            </pre>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X9.X9Curve">
-            ASN.1 def for Elliptic-Curve Curve structure. See
-            X9.62, for further details.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X9.X9Curve.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-             Curve ::= Sequence {
-                 a               FieldElement,
-                 b               FieldElement,
-                 seed            BIT STRING      OPTIONAL
-             }
-            </pre>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X9.X9ECParameters">
-            ASN.1 def for Elliptic-Curve ECParameters structure. See
-            X9.62, for further details.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X9.X9ECParameters.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-             ECParameters ::= Sequence {
-                 version         Integer { ecpVer1(1) } (ecpVer1),
-                 fieldID         FieldID {{FieldTypes}},
-                 curve           X9Curve,
-                 base            X9ECPoint,
-                 order           Integer,
-                 cofactor        Integer OPTIONAL
-             }
-            </pre>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X9.X9ECPoint">
-            class for describing an ECPoint as a Der object.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X9.X9ECPoint.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-             ECPoint ::= OCTET STRING
-            </pre>
-            <p>
-            Octet string produced using ECPoint.GetEncoded().</p>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X9.X9FieldElement">
-            Class for processing an ECFieldElement as a DER object.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X9.X9FieldElement.ToAsn1Object">
-            Produce an object suitable for an Asn1OutputStream.
-            <pre>
-             FieldElement ::= OCTET STRING
-            </pre>
-            <p>
-            <ol>
-            <li> if <i>q</i> is an odd prime then the field element is
-            processed as an Integer and converted to an octet string
-            according to x 9.62 4.3.1.</li>
-            <li> if <i>q</i> is 2<sup>m</sup> then the bit string
-            contained in the field element is converted into an octet
-            string with the same ordering padded at the front if necessary.
-            </li>
-            </ol>
-            </p>
-        </member>
-        <member name="T:Org.BouncyCastle.Asn1.X9.X9FieldID">
-            ASN.1 def for Elliptic-Curve Field ID structure. See
-            X9.62, for further details.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X9.X9FieldID.#ctor(Org.BouncyCastle.Math.BigInteger)">
-            Constructor for elliptic curves over prime fields
-            <code>F<sub>2</sub></code>.
-            @param primeP The prime <code>p</code> defining the prime field.
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X9.X9FieldID.#ctor(System.Int32,System.Int32,System.Int32,System.Int32)">
-            Constructor for elliptic curves over binary fields
-            <code>F<sub>2<sup>m</sup></sub></code>.
-            @param m  The exponent <code>m</code> of
-            <code>F<sub>2<sup>m</sup></sub></code>.
-            @param k1 The integer <code>k1</code> where <code>x<sup>m</sup> +
-            x<sup>k3</sup> + x<sup>k2</sup> + x<sup>k1</sup> + 1</code>
-            represents the reduction polynomial <code>f(z)</code>.
-            @param k2 The integer <code>k2</code> where <code>x<sup>m</sup> +
-            x<sup>k3</sup> + x<sup>k2</sup> + x<sup>k1</sup> + 1</code>
-            represents the reduction polynomial <code>f(z)</code>.
-            @param k3 The integer <code>k3</code> where <code>x<sup>m</sup> +
-            x<sup>k3</sup> + x<sup>k2</sup> + x<sup>k1</sup> + 1</code>
-            represents the reduction polynomial <code>f(z)</code>..
-        </member>
-        <member name="M:Org.BouncyCastle.Asn1.X9.X9FieldID.ToAsn1Object">
-            Produce a Der encoding of the following structure.
-            <pre>
-             FieldID ::= Sequence {
-                 fieldType       FIELD-ID.&amp;id({IOSet}),
-                 parameters      FIELD-ID.&amp;Type({IOSet}{&#64;fieldType})
-             }
-            </pre>
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X9.X9ObjectIdentifiers.AnsiX942">
-            X9.42
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X9.X9ObjectIdentifiers.IdDsaWithSha1">
-            id-dsa-with-sha1 OBJECT IDENTIFIER ::=  { iso(1) member-body(2)
-                  us(840) x9-57 (10040) x9cm(4) 3 }
-        </member>
-        <member name="F:Org.BouncyCastle.Asn1.X9.X9ObjectIdentifiers.X9x63Scheme">
-            X9.63
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.ArmoredInputStream">
-            reader for Base64 armored objects - read the headers and then start returning
-            bytes when the data is reached. An IOException is thrown if the CRC check
-            fails.
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.ArmoredInputStream.Decode(System.Int32,System.Int32,System.Int32,System.Int32,System.Int32[])">
-             decode the base 64 encoded input data.
-            
-             @return the offset the data starts in out.
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.ArmoredInputStream.#ctor(System.IO.Stream)">
-             Create a stream for reading a PGP armoured message, parsing up to a header
-             and then reading the data that follows.
-            
-             @param input
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.ArmoredInputStream.#ctor(System.IO.Stream,System.Boolean)">
-             Create an armoured input stream which will assume the data starts
-             straight away, or parse for headers first depending on the value of
-             hasHeaders.
-            
-             @param input
-             @param hasHeaders true if headers are to be looked for, false otherwise.
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.ArmoredInputStream.IsClearText">
-            @return true if we are inside the clear text section of a PGP
-            signed message.
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.ArmoredInputStream.IsEndOfStream">
-            @return true if the stream is actually at end of file.
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.ArmoredInputStream.GetArmorHeaderLine">
-            Return the armor header line (if there is one)
-            @return the armor header line, null if none present.
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.ArmoredInputStream.GetArmorHeaders">
-            Return the armor headers (the lines after the armor header line),
-            @return an array of armor headers, null if there aren't any.
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.ArmoredOutputStream">
-            Basic output stream.
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.ArmoredOutputStream.Encode(System.IO.Stream,System.Int32[],System.Int32)">
-            encode the input data producing a base 64 encoded byte array.
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.ArmoredOutputStream.SetHeader(System.String,System.String)">
-             Set an additional header entry.
-            
-             @param name the name of the header entry.
-             @param v the value of the header entry.
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.ArmoredOutputStream.ResetHeaders">
-            Reset the headers to only contain a Version string.
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.ArmoredOutputStream.BeginClearText(Org.BouncyCastle.Bcpg.HashAlgorithmTag)">
-            Start a clear text signed message.
-            @param hashAlgorithm
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.ArmoredOutputStream.Dispose(System.Boolean)">
-            <b>Note</b>: Dispose does nor Dispose the underlying stream. So it is possible to write
-            multiple objects using armoring to a single stream.
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.Attr.ImageAttrib">
-            <remarks>Basic type for a image attribute packet.</remarks>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.UserAttributeSubpacket">
-            Basic type for a user attribute sub-packet.
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.UserAttributeSubpacket.GetData">
-            return the generic data making up the packet.
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.BcpgInputStream">
-            <remarks>Reader for PGP objects.</remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.BcpgInputStream.NextPacketTag">
-            <summary>Returns the next packet tag in the stream.</summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.BcpgInputStream.PartialInputStream">
-            <summary>
-            A stream that overlays our input stream, allowing the user to only read a segment of it.
-            NB: dataLength will be negative if the segment length is in the upper range above 2**31.
-            </summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.BcpgObject">
-            <remarks>Base class for a PGP object.</remarks>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.BcpgOutputStream">
-            <remarks>Basic output stream.</remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.BcpgOutputStream.#ctor(System.IO.Stream)">
-            <summary>Create a stream representing a general packet.</summary>
-            <param name="outStr">Output stream to write to.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.BcpgOutputStream.#ctor(System.IO.Stream,Org.BouncyCastle.Bcpg.PacketTag)">
-            <summary>Create a stream representing an old style partial object.</summary>
-            <param name="outStr">Output stream to write to.</param>
-            <param name="tag">The packet tag for the object.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.BcpgOutputStream.#ctor(System.IO.Stream,Org.BouncyCastle.Bcpg.PacketTag,System.Int64,System.Boolean)">
-            <summary>Create a stream representing a general packet.</summary>
-            <param name="outStr">Output stream to write to.</param>
-            <param name="tag">Packet tag.</param>
-            <param name="length">Size of chunks making up the packet.</param>
-            <param name="oldFormat">If true, the header is written out in old format.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.BcpgOutputStream.#ctor(System.IO.Stream,Org.BouncyCastle.Bcpg.PacketTag,System.Int64)">
-            <summary>Create a new style partial input stream buffered into chunks.</summary>
-            <param name="outStr">Output stream to write to.</param>
-            <param name="tag">Packet tag.</param>
-            <param name="length">Size of chunks making up the packet.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.BcpgOutputStream.#ctor(System.IO.Stream,Org.BouncyCastle.Bcpg.PacketTag,System.Byte[])">
-            <summary>Create a new style partial input stream buffered into chunks.</summary>
-            <param name="outStr">Output stream to write to.</param>
-            <param name="tag">Packet tag.</param>
-            <param name="buffer">Buffer to use for collecting chunks.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.BcpgOutputStream.Flush">
-            <summary>Flush the underlying stream.</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.BcpgOutputStream.Finish">
-            <summary>Finish writing out the current packet without closing the underlying stream.</summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.CompressedDataPacket">
-            <remarks>Generic compressed data object.</remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.InputStreamPacket.GetInputStream">
-            <summary>Note: you can only read from this once...</summary>
-        </member>
-        <member name="P:Org.BouncyCastle.Bcpg.CompressedDataPacket.Algorithm">
-            <summary>The algorithm tag value.</summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.CompressionAlgorithmTag">
-            <remarks>Basic tags for compression algorithms.</remarks>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.ContainedPacket">
-            <remarks>Basic type for a PGP packet.</remarks>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.DsaPublicBcpgKey">
-            <remarks>Base class for a DSA public key.</remarks>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.IBcpgKey">
-            <remarks>Base interface for a PGP key.</remarks>
-        </member>
-        <member name="P:Org.BouncyCastle.Bcpg.IBcpgKey.Format">
-            <summary>
-            The base format for this key - in the case of the symmetric keys it will generally
-            be raw indicating that the key is just a straight byte representation, for an asymmetric
-            key the format will be PGP, indicating the key is a string of MPIs encoded in PGP format.
-            </summary>
-            <returns>"RAW" or "PGP".</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.DsaPublicBcpgKey.#ctor(Org.BouncyCastle.Bcpg.BcpgInputStream)">
-            <param name="bcpgIn">The stream to read the packet from.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.DsaPublicBcpgKey.GetEncoded">
-            <summary>Return the standard PGP encoding of the key.</summary>
-        </member>
-        <member name="P:Org.BouncyCastle.Bcpg.DsaPublicBcpgKey.Format">
-            <summary>The format, as a string, always "PGP".</summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.DsaSecretBcpgKey">
-            <remarks>Base class for a DSA secret key.</remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.DsaSecretBcpgKey.#ctor(Org.BouncyCastle.Bcpg.BcpgInputStream)">
-            @param in
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.DsaSecretBcpgKey.GetEncoded">
-            <summary>Return the standard PGP encoding of the key.</summary>
-        </member>
-        <member name="P:Org.BouncyCastle.Bcpg.DsaSecretBcpgKey.Format">
-            <summary>The format, as a string, always "PGP".</summary>
-        </member>
-        <member name="P:Org.BouncyCastle.Bcpg.DsaSecretBcpgKey.X">
-            @return x
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.ElGamalPublicBcpgKey">
-            <remarks>Base class for an ElGamal public key.</remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.ElGamalPublicBcpgKey.GetEncoded">
-            <summary>Return the standard PGP encoding of the key.</summary>
-        </member>
-        <member name="P:Org.BouncyCastle.Bcpg.ElGamalPublicBcpgKey.Format">
-            <summary>The format, as a string, always "PGP".</summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.ElGamalSecretBcpgKey">
-            <remarks>Base class for an ElGamal secret key.</remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.ElGamalSecretBcpgKey.#ctor(Org.BouncyCastle.Bcpg.BcpgInputStream)">
-            @param in
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.ElGamalSecretBcpgKey.#ctor(Org.BouncyCastle.Math.BigInteger)">
-            @param x
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.ElGamalSecretBcpgKey.GetEncoded">
-            <summary>Return the standard PGP encoding of the key.</summary>
-        </member>
-        <member name="P:Org.BouncyCastle.Bcpg.ElGamalSecretBcpgKey.Format">
-            <summary>The format, as a string, always "PGP".</summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.ExperimentalPacket">
-            <remarks>Basic packet for an experimental packet.</remarks>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.HashAlgorithmTag">
-            <remarks>Basic tags for hash algorithms.</remarks>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.LiteralDataPacket">
-            <remarks>Generic literal data packet.</remarks>
-        </member>
-        <member name="P:Org.BouncyCastle.Bcpg.LiteralDataPacket.Format">
-            <summary>The format tag value.</summary>
-        </member>
-        <member name="P:Org.BouncyCastle.Bcpg.LiteralDataPacket.ModificationTime">
-            <summary>The modification time of the file in milli-seconds (since Jan 1, 1970 UTC)</summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.MarkerPacket">
-            <remarks>Basic type for a marker packet.</remarks>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.ModDetectionCodePacket">
-            <remarks>Basic packet for a modification detection code packet.</remarks>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.MPInteger">
-            <remarks>A multiple precision integer</remarks>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.OnePassSignaturePacket">
-            <remarks>Generic signature object</remarks>
-        </member>
-        <member name="P:Org.BouncyCastle.Bcpg.OnePassSignaturePacket.KeyAlgorithm">
-            <summary>The encryption algorithm tag.</summary>
-        </member>
-        <member name="P:Org.BouncyCastle.Bcpg.OnePassSignaturePacket.HashAlgorithm">
-            <summary>The hash algorithm tag.</summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.PacketTag">
-            <remarks>Basic PGP packet tag types.</remarks>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.PublicKeyAlgorithmTag">
-            <remarks>Public Key Algorithm tag numbers.</remarks>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.PublicKeyEncSessionPacket">
-            <remarks>Basic packet for a PGP public key.</remarks>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.PublicKeyPacket">
-            <remarks>Basic packet for a PGP public key.</remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.PublicKeyPacket.#ctor(Org.BouncyCastle.Bcpg.PublicKeyAlgorithmTag,System.DateTime,Org.BouncyCastle.Bcpg.IBcpgKey)">
-            <summary>Construct a version 4 public key packet.</summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.PublicSubkeyPacket">
-            <remarks>Basic packet for a PGP public subkey</remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.PublicSubkeyPacket.#ctor(Org.BouncyCastle.Bcpg.PublicKeyAlgorithmTag,System.DateTime,Org.BouncyCastle.Bcpg.IBcpgKey)">
-            <summary>Construct a version 4 public subkey packet.</summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.RsaPublicBcpgKey">
-            <remarks>Base class for an RSA public key.</remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.RsaPublicBcpgKey.#ctor(Org.BouncyCastle.Bcpg.BcpgInputStream)">
-            <summary>Construct an RSA public key from the passed in stream.</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.RsaPublicBcpgKey.#ctor(Org.BouncyCastle.Math.BigInteger,Org.BouncyCastle.Math.BigInteger)">
-            <param name="n">The modulus.</param>
-            <param name="e">The public exponent.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.RsaPublicBcpgKey.GetEncoded">
-            <summary>Return the standard PGP encoding of the key.</summary>
-        </member>
-        <member name="P:Org.BouncyCastle.Bcpg.RsaPublicBcpgKey.Format">
-            <summary>The format, as a string, always "PGP".</summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.RsaSecretBcpgKey">
-            <remarks>Base class for an RSA secret (or priate) key.</remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.RsaSecretBcpgKey.GetEncoded">
-            <summary>Return the standard PGP encoding of the key.</summary>
-        </member>
-        <member name="P:Org.BouncyCastle.Bcpg.RsaSecretBcpgKey.Format">
-            <summary>The format, as a string, always "PGP".</summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.S2k">
-            <remarks>The string to key specifier class.</remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.S2k.GetIV">
-            <summary>The IV for the key generation algorithm.</summary>
-        </member>
-        <member name="P:Org.BouncyCastle.Bcpg.S2k.HashAlgorithm">
-            <summary>The hash algorithm.</summary>
-        </member>
-        <member name="P:Org.BouncyCastle.Bcpg.S2k.IterationCount">
-            <summary>The iteration count</summary>
-        </member>
-        <member name="P:Org.BouncyCastle.Bcpg.S2k.ProtectionMode">
-            <summary>The protection mode - only if GnuDummyS2K</summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.SecretKeyPacket">
-            <remarks>Basic packet for a PGP secret key.</remarks>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.SecretSubkeyPacket">
-            <remarks>Basic packet for a PGP secret key.</remarks>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.SignaturePacket">
-            <remarks>Generic signature packet.</remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.SignaturePacket.#ctor(System.Int32,System.Int64,Org.BouncyCastle.Bcpg.PublicKeyAlgorithmTag,Org.BouncyCastle.Bcpg.HashAlgorithmTag,Org.BouncyCastle.Bcpg.SignatureSubpacket[],Org.BouncyCastle.Bcpg.SignatureSubpacket[],System.Byte[],Org.BouncyCastle.Bcpg.MPInteger[])">
-             Generate a version 4 signature packet.
-            
-             @param signatureType
-             @param keyAlgorithm
-             @param hashAlgorithm
-             @param hashedData
-             @param unhashedData
-             @param fingerprint
-             @param signature
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.SignaturePacket.#ctor(System.Int32,System.Int32,System.Int64,Org.BouncyCastle.Bcpg.PublicKeyAlgorithmTag,Org.BouncyCastle.Bcpg.HashAlgorithmTag,System.Int64,System.Byte[],Org.BouncyCastle.Bcpg.MPInteger[])">
-             Generate a version 2/3 signature packet.
-            
-             @param signatureType
-             @param keyAlgorithm
-             @param hashAlgorithm
-             @param fingerprint
-             @param signature
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.SignaturePacket.GetSignatureTrailer">
-             return the signature trailer that must be included with the data
-             to reconstruct the signature
-            
-             @return byte[]
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.SignaturePacket.GetSignature">
-            		* return the signature as a set of integers - note this is normalised to be the
-                    * ASN.1 encoding of what appears in the signature packet.
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.SignaturePacket.GetSignatureBytes">
-            Return the byte encoding of the signature section.
-            @return uninterpreted signature bytes.
-        </member>
-        <member name="P:Org.BouncyCastle.Bcpg.SignaturePacket.KeyId">
-            return the keyId
-            @return the keyId that created the signature.
-        </member>
-        <member name="P:Org.BouncyCastle.Bcpg.SignaturePacket.CreationTime">
-            <summary>Return the creation time in milliseconds since 1 Jan., 1970 UTC.</summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.SignatureSubpacket">
-            <remarks>Basic type for a PGP Signature sub-packet.</remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.SignatureSubpacket.GetData">
-            <summary>Return the generic data making up the packet.</summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.SignatureSubpacketsParser">
-            reader for signature sub-packets
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.SignatureSubpacketTag">
-            Basic PGP signature sub-packet tag types.
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.Sig.EmbeddedSignature">
-            Packet embedded signature
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.Sig.Exportable">
-            packet giving signature creation time.
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.Sig.IssuerKeyId">
-            packet giving signature creation time.
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.Sig.KeyExpirationTime">
-            packet giving time after creation at which the key expires.
-        </member>
-        <member name="P:Org.BouncyCastle.Bcpg.Sig.KeyExpirationTime.Time">
-             Return the number of seconds after creation time a key is valid for.
-            
-             @return second count for key validity.
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.Sig.KeyFlags">
-            Packet holding the key flag values.
-        </member>
-        <member name="P:Org.BouncyCastle.Bcpg.Sig.KeyFlags.Flags">
-            <summary>
-            Return the flag values contained in the first 4 octets (note: at the moment
-            the standard only uses the first one).
-            </summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.Sig.NotationData">
-            Class provided a NotationData object according to
-            RFC2440, Chapter 5.2.3.15. Notation Data
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.Sig.PreferredAlgorithms">
-            packet giving signature creation time.
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.Sig.PrimaryUserId">
-            packet giving whether or not the signature is signed using the primary user ID for the key.
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.Sig.Revocable">
-            packet giving whether or not is revocable.
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.RevocationKey">
-            <summary>
-            Represents revocation key OpenPGP signature sub packet.
-            </summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.RevocationReason">
-            <summary>
-            Represents revocation reason OpenPGP signature sub packet.
-            </summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.Sig.SignatureCreationTime">
-            packet giving signature creation time.
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.Sig.SignatureExpirationTime">
-            packet giving signature expiration time.
-        </member>
-        <member name="P:Org.BouncyCastle.Bcpg.Sig.SignatureExpirationTime.Time">
-            return time in seconds before signature expires after creation time.
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.Sig.SignerUserId">
-            packet giving the User ID of the signer.
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.Sig.TrustSignature">
-            packet giving trust.
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.SymmetricEncDataPacket">
-            <remarks>Basic type for a symmetric key encrypted packet.</remarks>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.SymmetricKeyAlgorithmTag">
-            Basic tags for symmetric key algorithms
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.SymmetricKeyEncSessionPacket">
-            Basic type for a symmetric encrypted session key packet
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.SymmetricKeyEncSessionPacket.GetSecKeyData">
-            @return byte[]
-        </member>
-        <member name="P:Org.BouncyCastle.Bcpg.SymmetricKeyEncSessionPacket.EncAlgorithm">
-            @return int
-        </member>
-        <member name="P:Org.BouncyCastle.Bcpg.SymmetricKeyEncSessionPacket.S2k">
-            @return S2k
-        </member>
-        <member name="P:Org.BouncyCastle.Bcpg.SymmetricKeyEncSessionPacket.Version">
-            @return int
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.TrustPacket">
-            <summary>Basic type for a trust packet.</summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.UserAttributePacket">
-            Basic type for a user attribute packet.
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.UserAttributeSubpacketsParser">
-            reader for user attribute sub-packets
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.UserAttributeSubpacketTag">
-            Basic PGP user attribute sub-packet tag types.
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.UserIdPacket">
-            Basic type for a user ID packet.
-        </member>
-        <member name="T:Org.BouncyCastle.Cms.CmsAttributeTableParameter">
-            <remarks>
-            The 'Signature' parameter is only available when generating unsigned attributes.
-            </remarks>
-        </member>
-        <member name="T:Org.BouncyCastle.Cms.CmsAuthenticatedData">
-            containing class for an CMS Authenticated Data object
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsAuthenticatedData.GetRecipientInfos">
-            return a store of the intended recipients for this message
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsAuthenticatedData.GetAuthAttrs">
-            return a table of the digested attributes indexed by
-            the OID of the attribute.
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsAuthenticatedData.GetUnauthAttrs">
-            return a table of the undigested attributes indexed by
-            the OID of the attribute.
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsAuthenticatedData.GetEncoded">
-            return the ASN.1 encoded representation of this object.
-        </member>
-        <member name="P:Org.BouncyCastle.Cms.CmsAuthenticatedData.MacAlgOid">
-            return the object identifier for the content MAC algorithm.
-        </member>
-        <member name="P:Org.BouncyCastle.Cms.CmsAuthenticatedData.ContentInfo">
-            return the ContentInfo 
-        </member>
-        <member name="T:Org.BouncyCastle.Cms.CmsAuthenticatedDataGenerator">
-             General class for generating a CMS authenticated-data message.
-            
-             A simple example of usage.
-            
-             <pre>
-                  CMSAuthenticatedDataGenerator  fact = new CMSAuthenticatedDataGenerator();
-            
-                  fact.addKeyTransRecipient(cert);
-            
-                  CMSAuthenticatedData         data = fact.generate(content, algorithm, "BC");
-             </pre>
-        </member>
-        <member name="T:Org.BouncyCastle.Cms.CmsEnvelopedGenerator">
-             General class for generating a CMS enveloped-data message.
-            
-             A simple example of usage.
-            
-             <pre>
-                  CMSEnvelopedDataGenerator  fact = new CMSEnvelopedDataGenerator();
-            
-                  fact.addKeyTransRecipient(cert);
-            
-                  CMSEnvelopedData         data = fact.generate(content, algorithm, "BC");
-             </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsEnvelopedGenerator.#ctor(Org.BouncyCastle.Security.SecureRandom)">
-            <summary>Constructor allowing specific source of randomness</summary>
-            <param name="rand">Instance of <c>SecureRandom</c> to use.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsEnvelopedGenerator.AddKeyTransRecipient(Org.BouncyCastle.X509.X509Certificate)">
-             add a recipient.
-            
-             @param cert recipient's public key certificate
-             @exception ArgumentException if there is a problem with the certificate
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsEnvelopedGenerator.AddKeyTransRecipient(Org.BouncyCastle.Crypto.AsymmetricKeyParameter,System.Byte[])">
-             add a recipient
-            
-             @param key the public key used by the recipient
-             @param subKeyId the identifier for the recipient's public key
-             @exception ArgumentException if there is a problem with the key
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsEnvelopedGenerator.AddKekRecipient(System.String,Org.BouncyCastle.Crypto.Parameters.KeyParameter,System.Byte[])">
-            add a KEK recipient.
-            @param key the secret key to use for wrapping
-            @param keyIdentifier the byte string that identifies the key
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsEnvelopedGenerator.AddKekRecipient(System.String,Org.BouncyCastle.Crypto.Parameters.KeyParameter,Org.BouncyCastle.Asn1.Cms.KekIdentifier)">
-            add a KEK recipient.
-            @param key the secret key to use for wrapping
-            @param keyIdentifier the byte string that identifies the key
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsEnvelopedGenerator.AddKeyAgreementRecipient(System.String,Org.BouncyCastle.Crypto.AsymmetricKeyParameter,Org.BouncyCastle.Crypto.AsymmetricKeyParameter,Org.BouncyCastle.X509.X509Certificate,System.String)">
-             Add a key agreement based recipient.
-            
-             @param agreementAlgorithm key agreement algorithm to use.
-             @param senderPrivateKey private key to initialise sender side of agreement with.
-             @param senderPublicKey sender public key to include with message.
-             @param recipientCert recipient's public key certificate.
-             @param cekWrapAlgorithm OID for key wrapping algorithm to use.
-             @exception SecurityUtilityException if the algorithm requested cannot be found
-             @exception InvalidKeyException if the keys are inappropriate for the algorithm specified
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsEnvelopedGenerator.AddKeyAgreementRecipients(System.String,Org.BouncyCastle.Crypto.AsymmetricKeyParameter,Org.BouncyCastle.Crypto.AsymmetricKeyParameter,System.Collections.ICollection,System.String)">
-             Add multiple key agreement based recipients (sharing a single KeyAgreeRecipientInfo structure).
-            
-             @param agreementAlgorithm key agreement algorithm to use.
-             @param senderPrivateKey private key to initialise sender side of agreement with.
-             @param senderPublicKey sender public key to include with message.
-             @param recipientCerts recipients' public key certificates.
-             @param cekWrapAlgorithm OID for key wrapping algorithm to use.
-             @exception SecurityUtilityException if the algorithm requested cannot be found
-             @exception InvalidKeyException if the keys are inappropriate for the algorithm specified
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsAuthenticatedGenerator.#ctor">
-            base constructor
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsAuthenticatedGenerator.#ctor(Org.BouncyCastle.Security.SecureRandom)">
-             constructor allowing specific source of randomness
-            
-             @param rand instance of SecureRandom to use
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsAuthenticatedDataGenerator.#ctor">
-            base constructor
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsAuthenticatedDataGenerator.#ctor(Org.BouncyCastle.Security.SecureRandom)">
-            constructor allowing specific source of randomness
-            @param rand instance of SecureRandom to use
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsAuthenticatedDataGenerator.Generate(Org.BouncyCastle.Cms.CmsProcessable,System.String,Org.BouncyCastle.Crypto.CipherKeyGenerator)">
-            generate an enveloped object that contains an CMS Enveloped Data
-            object using the given provider and the passed in key generator.
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsAuthenticatedDataGenerator.Generate(Org.BouncyCastle.Cms.CmsProcessable,System.String)">
-            generate an authenticated object that contains an CMS Authenticated Data object
-        </member>
-        <member name="T:Org.BouncyCastle.Cms.CmsAuthenticatedDataParser">
-             Parsing class for an CMS Authenticated Data object from an input stream.
-             <p>
-             Note: that because we are in a streaming mode only one recipient can be tried and it is important
-             that the methods on the parser are called in the appropriate order.
-             </p>
-             <p>
-             Example of use - assuming the first recipient matches the private key we have.
-             <pre>
-                  CMSAuthenticatedDataParser     ad = new CMSAuthenticatedDataParser(inputStream);
-            
-                  RecipientInformationStore  recipients = ad.getRecipientInfos();
-            
-                  Collection  c = recipients.getRecipients();
-                  Iterator    it = c.iterator();
-            
-                  if (it.hasNext())
-                  {
-                      RecipientInformation   recipient = (RecipientInformation)it.next();
-            
-                      CMSTypedStream recData = recipient.getContentStream(privateKey, "BC");
-            
-                      processDataStream(recData.getContentStream());
-            
-                      if (!Arrays.equals(ad.getMac(), recipient.getMac())
-                      {
-                          System.err.println("Data corrupted!!!!");
-                      }
-                  }
-              </pre>
-              Note: this class does not introduce buffering - if you are processing large files you should create
-              the parser with:
-              <pre>
-                      CMSAuthenticatedDataParser     ep = new CMSAuthenticatedDataParser(new BufferedInputStream(inputStream, bufSize));
-              </pre>
-              where bufSize is a suitably large buffer size.
-             </p>
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsContentInfoParser.Close">
-            Close the underlying data stream.
-            @throws IOException if the close fails.
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsAuthenticatedDataParser.GetRecipientInfos">
-            return a store of the intended recipients for this message
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsAuthenticatedDataParser.GetAuthAttrs">
-            return a table of the unauthenticated attributes indexed by
-            the OID of the attribute.
-            @exception java.io.IOException
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsAuthenticatedDataParser.GetUnauthAttrs">
-            return a table of the unauthenticated attributes indexed by
-            the OID of the attribute.
-            @exception java.io.IOException
-        </member>
-        <member name="P:Org.BouncyCastle.Cms.CmsAuthenticatedDataParser.MacAlgOid">
-            return the object identifier for the mac algorithm.
-        </member>
-        <member name="P:Org.BouncyCastle.Cms.CmsAuthenticatedDataParser.MacAlgParams">
-            return the ASN.1 encoded encryption algorithm parameters, or null if
-            there aren't any.
-        </member>
-        <member name="T:Org.BouncyCastle.Cms.CmsAuthenticatedDataStreamGenerator">
-             General class for generating a CMS authenticated-data message stream.
-             <p>
-             A simple example of usage.
-             <pre>
-                  CMSAuthenticatedDataStreamGenerator edGen = new CMSAuthenticatedDataStreamGenerator();
-            
-                  edGen.addKeyTransRecipient(cert);
-            
-                  ByteArrayOutputStream  bOut = new ByteArrayOutputStream();
-            
-                  OutputStream out = edGen.open(
-                                          bOut, CMSAuthenticatedDataGenerator.AES128_CBC, "BC");*
-                  out.write(data);
-            
-                  out.close();
-             </pre>
-             </p>
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsAuthenticatedDataStreamGenerator.#ctor">
-            base constructor
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsAuthenticatedDataStreamGenerator.#ctor(Org.BouncyCastle.Security.SecureRandom)">
-            constructor allowing specific source of randomness
-            @param rand instance of SecureRandom to use
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsAuthenticatedDataStreamGenerator.SetBufferSize(System.Int32)">
-             Set the underlying string size for encapsulated data
-            
-             @param bufferSize length of octet strings to buffer the data.
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsAuthenticatedDataStreamGenerator.SetBerEncodeRecipients(System.Boolean)">
-            Use a BER Set to store the recipient information
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsAuthenticatedDataStreamGenerator.Open(System.IO.Stream,System.String,Org.BouncyCastle.Crypto.CipherKeyGenerator)">
-            generate an enveloped object that contains an CMS Enveloped Data
-            object using the given provider and the passed in key generator.
-            @throws java.io.IOException
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsAuthenticatedDataStreamGenerator.Open(System.IO.Stream,System.String)">
-            generate an enveloped object that contains an CMS Enveloped Data object
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsAuthenticatedDataStreamGenerator.Open(System.IO.Stream,System.String,System.Int32)">
-            generate an enveloped object that contains an CMS Enveloped Data object
-        </member>
-        <member name="T:Org.BouncyCastle.Cms.CmsAuthEnvelopedData">
-            containing class for an CMS AuthEnveloped Data object
-        </member>
-        <member name="T:Org.BouncyCastle.Cms.CmsCompressedData">
-            containing class for an CMS Compressed Data object
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsCompressedData.GetContent">
-             Return the uncompressed content.
-            
-             @return the uncompressed content
-             @throws CmsException if there is an exception uncompressing the data.
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsCompressedData.GetContent(System.Int32)">
-             Return the uncompressed content, throwing an exception if the data size
-             is greater than the passed in limit. If the content is exceeded getCause()
-             on the CMSException will contain a StreamOverflowException
-            
-             @param limit maximum number of bytes to read
-             @return the content read
-             @throws CMSException if there is an exception uncompressing the data.
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsCompressedData.GetEncoded">
-            return the ASN.1 encoded representation of this object.
-        </member>
-        <member name="P:Org.BouncyCastle.Cms.CmsCompressedData.ContentInfo">
-            return the ContentInfo 
-        </member>
-        <member name="T:Org.BouncyCastle.Cms.CmsCompressedDataGenerator">
-                * General class for generating a compressed CMS message.
-                * <p>
-                * A simple example of usage.</p>
-                * <p>
-                * <pre>
-                *      CMSCompressedDataGenerator fact = new CMSCompressedDataGenerator();
-                *      CMSCompressedData data = fact.Generate(content, algorithm);
-                * </pre>
-            	* </p>
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsCompressedDataGenerator.Generate(Org.BouncyCastle.Cms.CmsProcessable,System.String)">
-            Generate an object that contains an CMS Compressed Data
-        </member>
-        <member name="T:Org.BouncyCastle.Cms.CmsCompressedDataParser">
-             Class for reading a CMS Compressed Data stream.
-             <pre>
-                 CMSCompressedDataParser cp = new CMSCompressedDataParser(inputStream);
-            
-                 process(cp.GetContent().GetContentStream());
-             </pre>
-              Note: this class does not introduce buffering - if you are processing large files you should create
-              the parser with:
-              <pre>
-                  CMSCompressedDataParser     ep = new CMSCompressedDataParser(new BufferedInputStream(inputStream, bufSize));
-              </pre>
-              where bufSize is a suitably large buffer size.
-        </member>
-        <member name="T:Org.BouncyCastle.Cms.CmsCompressedDataStreamGenerator">
-             General class for generating a compressed CMS message stream.
-             <p>
-             A simple example of usage.
-             </p>
-             <pre>
-                  CMSCompressedDataStreamGenerator gen = new CMSCompressedDataStreamGenerator();
-            
-                  Stream cOut = gen.Open(outputStream, CMSCompressedDataStreamGenerator.ZLIB);
-            
-                  cOut.Write(data);
-            
-                  cOut.Close();
-             </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsCompressedDataStreamGenerator.#ctor">
-            base constructor
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsCompressedDataStreamGenerator.SetBufferSize(System.Int32)">
-             Set the underlying string size for encapsulated data
-            
-             @param bufferSize length of octet strings to buffer the data.
-        </member>
-        <member name="T:Org.BouncyCastle.Cms.CmsEnvelopedData">
-            containing class for an CMS Enveloped Data object
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsEnvelopedData.GetRecipientInfos">
-            return a store of the intended recipients for this message
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsEnvelopedData.GetUnprotectedAttributes">
-            return a table of the unprotected attributes indexed by
-            the OID of the attribute.
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsEnvelopedData.GetEncoded">
-            return the ASN.1 encoded representation of this object.
-        </member>
-        <member name="P:Org.BouncyCastle.Cms.CmsEnvelopedData.EncryptionAlgOid">
-            return the object identifier for the content encryption algorithm.
-        </member>
-        <member name="P:Org.BouncyCastle.Cms.CmsEnvelopedData.ContentInfo">
-            return the ContentInfo 
-        </member>
-        <member name="T:Org.BouncyCastle.Cms.CmsEnvelopedDataGenerator">
-             <remarks>
-             General class for generating a CMS enveloped-data message.
-            
-             A simple example of usage.
-            
-             <pre>
-                  CmsEnvelopedDataGenerator  fact = new CmsEnvelopedDataGenerator();
-            
-                  fact.AddKeyTransRecipient(cert);
-            
-                  CmsEnvelopedData         data = fact.Generate(content, algorithm);
-             </pre>
-             </remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsEnvelopedDataGenerator.#ctor(Org.BouncyCastle.Security.SecureRandom)">
-            <summary>Constructor allowing specific source of randomness</summary>
-            <param name="rand">Instance of <c>SecureRandom</c> to use.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsEnvelopedDataGenerator.Generate(Org.BouncyCastle.Cms.CmsProcessable,System.String,Org.BouncyCastle.Crypto.CipherKeyGenerator)">
-            <summary>
-            Generate an enveloped object that contains a CMS Enveloped Data
-            object using the passed in key generator.
-            </summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsEnvelopedDataGenerator.Generate(Org.BouncyCastle.Cms.CmsProcessable,System.String)">
-            <summary>Generate an enveloped object that contains an CMS Enveloped Data object.</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsEnvelopedDataGenerator.Generate(Org.BouncyCastle.Cms.CmsProcessable,System.String,System.Int32)">
-            <summary>Generate an enveloped object that contains an CMS Enveloped Data object.</summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Cms.CmsEnvelopedDataParser">
-             Parsing class for an CMS Enveloped Data object from an input stream.
-             <p>
-             Note: that because we are in a streaming mode only one recipient can be tried and it is important
-             that the methods on the parser are called in the appropriate order.
-             </p>
-             <p>
-             Example of use - assuming the first recipient matches the private key we have.
-             <pre>
-                  CmsEnvelopedDataParser     ep = new CmsEnvelopedDataParser(inputStream);
-            
-                  RecipientInformationStore  recipients = ep.GetRecipientInfos();
-            
-                  Collection  c = recipients.getRecipients();
-                  Iterator    it = c.iterator();
-            
-                  if (it.hasNext())
-                  {
-                      RecipientInformation   recipient = (RecipientInformation)it.next();
-            
-                      CMSTypedStream recData = recipient.getContentStream(privateKey);
-            
-                      processDataStream(recData.getContentStream());
-                  }
-              </pre>
-              Note: this class does not introduce buffering - if you are processing large files you should create
-              the parser with:
-              <pre>
-                      CmsEnvelopedDataParser     ep = new CmsEnvelopedDataParser(new BufferedInputStream(inputStream, bufSize));
-              </pre>
-              where bufSize is a suitably large buffer size.
-             </p>
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsEnvelopedDataParser.GetRecipientInfos">
-            return a store of the intended recipients for this message
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsEnvelopedDataParser.GetUnprotectedAttributes">
-            return a table of the unprotected attributes indexed by
-            the OID of the attribute.
-            @throws IOException
-        </member>
-        <member name="P:Org.BouncyCastle.Cms.CmsEnvelopedDataParser.EncryptionAlgOid">
-            return the object identifier for the content encryption algorithm.
-        </member>
-        <member name="P:Org.BouncyCastle.Cms.CmsEnvelopedDataParser.EncryptionAlgParams">
-            return the ASN.1 encoded encryption algorithm parameters, or null if
-            there aren't any.
-        </member>
-        <member name="T:Org.BouncyCastle.Cms.CmsEnvelopedDataStreamGenerator">
-             General class for generating a CMS enveloped-data message stream.
-             <p>
-             A simple example of usage.
-             <pre>
-                  CmsEnvelopedDataStreamGenerator edGen = new CmsEnvelopedDataStreamGenerator();
-            
-                  edGen.AddKeyTransRecipient(cert);
-            
-                  MemoryStream  bOut = new MemoryStream();
-            
-                  Stream out = edGen.Open(
-                                          bOut, CMSEnvelopedDataGenerator.AES128_CBC);*
-                  out.Write(data);
-            
-                  out.Close();
-             </pre>
-             </p>
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsEnvelopedDataStreamGenerator.#ctor(Org.BouncyCastle.Security.SecureRandom)">
-            <summary>Constructor allowing specific source of randomness</summary>
-            <param name="rand">Instance of <c>SecureRandom</c> to use.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsEnvelopedDataStreamGenerator.SetBufferSize(System.Int32)">
-            <summary>Set the underlying string size for encapsulated data.</summary>
-            <param name="bufferSize">Length of octet strings to buffer the data.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsEnvelopedDataStreamGenerator.SetBerEncodeRecipients(System.Boolean)">
-            <summary>Use a BER Set to store the recipient information.</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsEnvelopedDataStreamGenerator.Open(System.IO.Stream,System.String,Org.BouncyCastle.Crypto.CipherKeyGenerator)">
-            <summary>
-            Generate an enveloped object that contains an CMS Enveloped Data
-            object using the passed in key generator.
-            </summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsEnvelopedDataStreamGenerator.Open(System.IO.Stream,System.String)">
-            generate an enveloped object that contains an CMS Enveloped Data object
-            @throws IOException
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsEnvelopedDataStreamGenerator.Open(System.IO.Stream,System.String,System.Int32)">
-            generate an enveloped object that contains an CMS Enveloped Data object
-            @throws IOException
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.ICipherParameters">
-            all parameter classes implement this.
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsProcessable.Write(System.IO.Stream)">
-            <summary>
-            Generic routine to copy out the data we want processed.
-            </summary>
-            <remarks>
-            This routine may be called multiple times.
-            </remarks>
-        </member>
-        <member name="T:Org.BouncyCastle.Cms.CmsProcessableByteArray">
-            a holding class for a byte array of data to be processed.
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsProcessableByteArray.GetContent">
-            <returns>A clone of the byte array</returns>
-        </member>
-        <member name="T:Org.BouncyCastle.Cms.CmsSignedData">
-             general class for handling a pkcs7-signature message.
-            
-             A simple example of usage - note, in the example below the validity of
-             the certificate isn't verified, just the fact that one of the certs
-             matches the given signer...
-            
-             <pre>
-              IX509Store              certs = s.GetCertificates();
-              SignerInformationStore  signers = s.GetSignerInfos();
-            
-              foreach (SignerInformation signer in signers.GetSigners())
-              {
-                  ArrayList       certList = new ArrayList(certs.GetMatches(signer.SignerID));
-                  X509Certificate cert = (X509Certificate) certList[0];
-            
-                  if (signer.Verify(cert.GetPublicKey()))
-                  {
-                      verified++;
-                  }
-              }
-             </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsSignedData.#ctor(System.Collections.IDictionary,System.Byte[])">
-             Content with detached signature, digests precomputed
-            
-             @param hashes a map of precomputed digests for content indexed by name of hash.
-             @param sigBlock the signature object.
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsSignedData.#ctor(Org.BouncyCastle.Cms.CmsProcessable,System.IO.Stream)">
-             base constructor - content with detached signature.
-            
-             @param signedContent the content that was signed.
-             @param sigData the signature object.
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsSignedData.#ctor(System.IO.Stream)">
-            base constructor - with encapsulated content
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsSignedData.GetSignerInfos">
-            return the collection of signers that are associated with the
-            signatures for the message.
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsSignedData.GetAttributeCertificates(System.String)">
-             return a X509Store containing the attribute certificates, if any, contained
-             in this message.
-            
-             @param type type of store to create
-             @return a store of attribute certificates
-             @exception NoSuchStoreException if the store type isn't available.
-             @exception CmsException if a general exception prevents creation of the X509Store
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsSignedData.GetCertificates(System.String)">
-             return a X509Store containing the public key certificates, if any, contained
-             in this message.
-            
-             @param type type of store to create
-             @return a store of public key certificates
-             @exception NoSuchStoreException if the store type isn't available.
-             @exception CmsException if a general exception prevents creation of the X509Store
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsSignedData.GetCrls(System.String)">
-             return a X509Store containing CRLs, if any, contained
-             in this message.
-            
-             @param type type of store to create
-             @return a store of CRLs
-             @exception NoSuchStoreException if the store type isn't available.
-             @exception CmsException if a general exception prevents creation of the X509Store
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsSignedData.GetEncoded">
-            return the ASN.1 encoded representation of this object.
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsSignedData.ReplaceSigners(Org.BouncyCastle.Cms.CmsSignedData,Org.BouncyCastle.Cms.SignerInformationStore)">
-             Replace the signerinformation store associated with this
-             CmsSignedData object with the new one passed in. You would
-             probably only want to do this if you wanted to change the unsigned
-             attributes associated with a signer, or perhaps delete one.
-            
-             @param signedData the signed data object to be used as a base.
-             @param signerInformationStore the new signer information store to use.
-             @return a new signed data object.
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsSignedData.ReplaceCertificatesAndCrls(Org.BouncyCastle.Cms.CmsSignedData,Org.BouncyCastle.X509.Store.IX509Store,Org.BouncyCastle.X509.Store.IX509Store,Org.BouncyCastle.X509.Store.IX509Store)">
-             Replace the certificate and CRL information associated with this
-             CmsSignedData object with the new one passed in.
-            
-             @param signedData the signed data object to be used as a base.
-             @param x509Certs the new certificates to be used.
-             @param x509Crls the new CRLs to be used.
-             @return a new signed data object.
-             @exception CmsException if there is an error processing the stores
-        </member>
-        <member name="P:Org.BouncyCastle.Cms.CmsSignedData.Version">
-            <summary>Return the version number for this object.</summary>
-        </member>
-        <member name="P:Org.BouncyCastle.Cms.CmsSignedData.SignedContentType">
-            <summary>
-            Return the <c>DerObjectIdentifier</c> associated with the encapsulated
-            content info structure carried in the signed data.
-            </summary>
-        </member>
-        <member name="P:Org.BouncyCastle.Cms.CmsSignedData.ContentInfo">
-            return the ContentInfo
-        </member>
-        <member name="T:Org.BouncyCastle.Cms.CmsSignedDataGenerator">
-                 * general class for generating a pkcs7-signature message.
-                 * <p>
-                 * A simple example of usage.
-                 *
-                 * <pre>
-                 *      IX509Store certs...
-                 *      IX509Store crls...
-                 *      CmsSignedDataGenerator gen = new CmsSignedDataGenerator();
-                 *
-                 *      gen.AddSigner(privKey, cert, CmsSignedGenerator.DigestSha1);
-                 *      gen.AddCertificates(certs);
-                 *      gen.AddCrls(crls);
-                 *
-                 *      CmsSignedData data = gen.Generate(content);
-                 * </pre>
-            	 * </p>
-        </member>
-        <member name="F:Org.BouncyCastle.Cms.CmsSignedGenerator.Data">
-            Default type for the signed data.
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsSignedGenerator.#ctor(Org.BouncyCastle.Security.SecureRandom)">
-            <summary>Constructor allowing specific source of randomness</summary>
-            <param name="rand">Instance of <c>SecureRandom</c> to use.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsSignedGenerator.AddAttributeCertificates(Org.BouncyCastle.X509.Store.IX509Store)">
-             Add the attribute certificates contained in the passed in store to the
-             generator.
-            
-             @param store a store of Version 2 attribute certificates
-             @throws CmsException if an error occurse processing the store.
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsSignedGenerator.AddSigners(Org.BouncyCastle.Cms.SignerInformationStore)">
-             Add a store of precalculated signers to the generator.
-            
-             @param signerStore store of signers
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsSignedGenerator.GetGeneratedDigests">
-             Return a map of oids and byte arrays representing the digests calculated on the content during
-             the last generate.
-            
-             @return a map of oids (as String objects) and byte[] representing digests.
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsSignedDataGenerator.#ctor(Org.BouncyCastle.Security.SecureRandom)">
-            <summary>Constructor allowing specific source of randomness</summary>
-            <param name="rand">Instance of <c>SecureRandom</c> to use.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsSignedDataGenerator.AddSigner(Org.BouncyCastle.Crypto.AsymmetricKeyParameter,Org.BouncyCastle.X509.X509Certificate,System.String)">
-                    * add a signer - no attributes other than the default ones will be
-                    * provided here.
-            		*
-            		* @param key signing key to use
-            		* @param cert certificate containing corresponding public key
-            		* @param digestOID digest algorithm OID
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsSignedDataGenerator.AddSigner(Org.BouncyCastle.Crypto.AsymmetricKeyParameter,Org.BouncyCastle.X509.X509Certificate,System.String,System.String)">
-             add a signer, specifying the digest encryption algorithm to use - no attributes other than the default ones will be
-             provided here.
-            
-             @param key signing key to use
-             @param cert certificate containing corresponding public key
-             @param encryptionOID digest encryption algorithm OID
-             @param digestOID digest algorithm OID
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsSignedDataGenerator.AddSigner(Org.BouncyCastle.Crypto.AsymmetricKeyParameter,System.Byte[],System.String)">
-            add a signer - no attributes other than the default ones will be
-            provided here.
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsSignedDataGenerator.AddSigner(Org.BouncyCastle.Crypto.AsymmetricKeyParameter,System.Byte[],System.String,System.String)">
-            add a signer, specifying the digest encryption algorithm to use - no attributes other than the default ones will be
-            provided here.
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsSignedDataGenerator.AddSigner(Org.BouncyCastle.Crypto.AsymmetricKeyParameter,Org.BouncyCastle.X509.X509Certificate,System.String,Org.BouncyCastle.Asn1.Cms.AttributeTable,Org.BouncyCastle.Asn1.Cms.AttributeTable)">
-                    * add a signer with extra signed/unsigned attributes.
-            		*
-            		* @param key signing key to use
-            		* @param cert certificate containing corresponding public key
-            		* @param digestOID digest algorithm OID
-            		* @param signedAttr table of attributes to be included in signature
-            		* @param unsignedAttr table of attributes to be included as unsigned
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsSignedDataGenerator.AddSigner(Org.BouncyCastle.Crypto.AsymmetricKeyParameter,Org.BouncyCastle.X509.X509Certificate,System.String,System.String,Org.BouncyCastle.Asn1.Cms.AttributeTable,Org.BouncyCastle.Asn1.Cms.AttributeTable)">
-             add a signer, specifying the digest encryption algorithm, with extra signed/unsigned attributes.
-            
-             @param key signing key to use
-             @param cert certificate containing corresponding public key
-             @param encryptionOID digest encryption algorithm OID
-             @param digestOID digest algorithm OID
-             @param signedAttr table of attributes to be included in signature
-             @param unsignedAttr table of attributes to be included as unsigned
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsSignedDataGenerator.AddSigner(Org.BouncyCastle.Crypto.AsymmetricKeyParameter,System.Byte[],System.String,Org.BouncyCastle.Asn1.Cms.AttributeTable,Org.BouncyCastle.Asn1.Cms.AttributeTable)">
-            	     * add a signer with extra signed/unsigned attributes.
-            		 *
-            		 * @param key signing key to use
-            		 * @param subjectKeyID subjectKeyID of corresponding public key
-            		 * @param digestOID digest algorithm OID
-            		 * @param signedAttr table of attributes to be included in signature
-            		 * @param unsignedAttr table of attributes to be included as unsigned
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsSignedDataGenerator.AddSigner(Org.BouncyCastle.Crypto.AsymmetricKeyParameter,System.Byte[],System.String,System.String,Org.BouncyCastle.Asn1.Cms.AttributeTable,Org.BouncyCastle.Asn1.Cms.AttributeTable)">
-             add a signer, specifying the digest encryption algorithm, with extra signed/unsigned attributes.
-            
-             @param key signing key to use
-             @param subjectKeyID subjectKeyID of corresponding public key
-             @param encryptionOID digest encryption algorithm OID
-             @param digestOID digest algorithm OID
-             @param signedAttr table of attributes to be included in signature
-             @param unsignedAttr table of attributes to be included as unsigned
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsSignedDataGenerator.AddSigner(Org.BouncyCastle.Crypto.AsymmetricKeyParameter,Org.BouncyCastle.X509.X509Certificate,System.String,Org.BouncyCastle.Cms.CmsAttributeTableGenerator,Org.BouncyCastle.Cms.CmsAttributeTableGenerator)">
-            add a signer with extra signed/unsigned attributes based on generators.
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsSignedDataGenerator.AddSigner(Org.BouncyCastle.Crypto.AsymmetricKeyParameter,Org.BouncyCastle.X509.X509Certificate,System.String,System.String,Org.BouncyCastle.Cms.CmsAttributeTableGenerator,Org.BouncyCastle.Cms.CmsAttributeTableGenerator)">
-            add a signer, specifying the digest encryption algorithm, with extra signed/unsigned attributes based on generators.
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsSignedDataGenerator.AddSigner(Org.BouncyCastle.Crypto.AsymmetricKeyParameter,System.Byte[],System.String,Org.BouncyCastle.Cms.CmsAttributeTableGenerator,Org.BouncyCastle.Cms.CmsAttributeTableGenerator)">
-            add a signer with extra signed/unsigned attributes based on generators.
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsSignedDataGenerator.AddSigner(Org.BouncyCastle.Crypto.AsymmetricKeyParameter,System.Byte[],System.String,System.String,Org.BouncyCastle.Cms.CmsAttributeTableGenerator,Org.BouncyCastle.Cms.CmsAttributeTableGenerator)">
-            add a signer, including digest encryption algorithm, with extra signed/unsigned attributes based on generators.
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsSignedDataGenerator.Generate(Org.BouncyCastle.Cms.CmsProcessable)">
-            generate a signed object that for a CMS Signed Data object
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsSignedDataGenerator.Generate(System.String,Org.BouncyCastle.Cms.CmsProcessable,System.Boolean)">
-            generate a signed object that for a CMS Signed Data
-            object  - if encapsulate is true a copy
-            of the message will be included in the signature. The content type
-            is set according to the OID represented by the string signedContentType.
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsSignedDataGenerator.Generate(Org.BouncyCastle.Cms.CmsProcessable,System.Boolean)">
-            generate a signed object that for a CMS Signed Data
-            object - if encapsulate is true a copy
-            of the message will be included in the signature with the
-            default content type "data".
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsSignedDataGenerator.GenerateCounterSigners(Org.BouncyCastle.Cms.SignerInformation)">
-             generate a set of one or more SignerInformation objects representing counter signatures on
-             the passed in SignerInformation object.
-            
-             @param signer the signer to be countersigned
-             @param sigProvider the provider to be used for counter signing.
-             @return a store containing the signers.
-        </member>
-        <member name="T:Org.BouncyCastle.Cms.CmsSignedDataParser">
-             Parsing class for an CMS Signed Data object from an input stream.
-             <p>
-             Note: that because we are in a streaming mode only one signer can be tried and it is important
-             that the methods on the parser are called in the appropriate order.
-             </p>
-             <p>
-             A simple example of usage for an encapsulated signature.
-             </p>
-             <p>
-             Two notes: first, in the example below the validity of
-             the certificate isn't verified, just the fact that one of the certs
-             matches the given signer, and, second, because we are in a streaming
-             mode the order of the operations is important.
-             </p>
-             <pre>
-                  CmsSignedDataParser     sp = new CmsSignedDataParser(encapSigData);
-            
-                  sp.GetSignedContent().Drain();
-            
-                  IX509Store              certs = sp.GetCertificates();
-                  SignerInformationStore  signers = sp.GetSignerInfos();
-            
-                  foreach (SignerInformation signer in signers.GetSigners())
-                  {
-                      ArrayList       certList = new ArrayList(certs.GetMatches(signer.SignerID));
-                      X509Certificate cert = (X509Certificate) certList[0];
-            
-                      Console.WriteLine("verify returns: " + signer.Verify(cert));
-                  }
-             </pre>
-              Note also: this class does not introduce buffering - if you are processing large files you should create
-              the parser with:
-              <pre>
-                      CmsSignedDataParser     ep = new CmsSignedDataParser(new BufferedInputStream(encapSigData, bufSize));
-              </pre>
-              where bufSize is a suitably large buffer size.
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsSignedDataParser.#ctor(System.IO.Stream)">
-            base constructor - with encapsulated content
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsSignedDataParser.#ctor(Org.BouncyCastle.Cms.CmsTypedStream,System.IO.Stream)">
-             base constructor
-            
-             @param signedContent the content that was signed.
-             @param sigData the signature object.
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsSignedDataParser.GetSignerInfos">
-            return the collection of signers that are associated with the
-            signatures for the message.
-            @throws CmsException
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsSignedDataParser.GetAttributeCertificates(System.String)">
-             return a X509Store containing the attribute certificates, if any, contained
-             in this message.
-            
-             @param type type of store to create
-             @return a store of attribute certificates
-             @exception org.bouncycastle.x509.NoSuchStoreException if the store type isn't available.
-             @exception CmsException if a general exception prevents creation of the X509Store
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsSignedDataParser.GetCertificates(System.String)">
-             return a X509Store containing the public key certificates, if any, contained
-             in this message.
-            
-             @param type type of store to create
-             @return a store of public key certificates
-             @exception NoSuchStoreException if the store type isn't available.
-             @exception CmsException if a general exception prevents creation of the X509Store
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsSignedDataParser.GetCrls(System.String)">
-             return a X509Store containing CRLs, if any, contained
-             in this message.
-            
-             @param type type of store to create
-             @return a store of CRLs
-             @exception NoSuchStoreException if the store type isn't available.
-             @exception CmsException if a general exception prevents creation of the X509Store
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsSignedDataParser.ReplaceSigners(System.IO.Stream,Org.BouncyCastle.Cms.SignerInformationStore,System.IO.Stream)">
-            Replace the signerinformation store associated with the passed
-            in message contained in the stream original with the new one passed in.
-            You would probably only want to do this if you wanted to change the unsigned
-            attributes associated with a signer, or perhaps delete one.
-            <p>
-            The output stream is returned unclosed.
-            </p>
-            @param original the signed data stream to be used as a base.
-            @param signerInformationStore the new signer information store to use.
-            @param out the stream to Write the new signed data object to.
-            @return out.
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsSignedDataParser.ReplaceCertificatesAndCrls(System.IO.Stream,Org.BouncyCastle.X509.Store.IX509Store,Org.BouncyCastle.X509.Store.IX509Store,Org.BouncyCastle.X509.Store.IX509Store,System.IO.Stream)">
-            Replace the certificate and CRL information associated with this
-            CMSSignedData object with the new one passed in.
-            <p>
-            The output stream is returned unclosed.
-            </p>
-            @param original the signed data stream to be used as a base.
-            @param certsAndCrls the new certificates and CRLs to be used.
-            @param out the stream to Write the new signed data object to.
-            @return out.
-            @exception CmsException if there is an error processing the CertStore
-        </member>
-        <member name="P:Org.BouncyCastle.Cms.CmsSignedDataParser.Version">
-             Return the version number for the SignedData object
-            
-             @return the version number
-        </member>
-        <member name="P:Org.BouncyCastle.Cms.CmsSignedDataParser.SignedContentType">
-            <summary>
-            Return the <c>DerObjectIdentifier</c> associated with the encapsulated
-            content info structure carried in the signed data.
-            </summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Cms.CmsSignedDataStreamGenerator">
-             General class for generating a pkcs7-signature message stream.
-             <p>
-             A simple example of usage.
-             </p>
-             <pre>
-                  IX509Store                   certs...
-                  CmsSignedDataStreamGenerator gen = new CmsSignedDataStreamGenerator();
-            
-                  gen.AddSigner(privateKey, cert, CmsSignedDataStreamGenerator.DIGEST_SHA1);
-            
-                  gen.AddCertificates(certs);
-            
-                  Stream sigOut = gen.Open(bOut);
-            
-                  sigOut.Write(Encoding.UTF8.GetBytes("Hello World!"));
-            
-                  sigOut.Close();
-             </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsSignedDataStreamGenerator.#ctor(Org.BouncyCastle.Security.SecureRandom)">
-            <summary>Constructor allowing specific source of randomness</summary>
-            <param name="rand">Instance of <c>SecureRandom</c> to use.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsSignedDataStreamGenerator.SetBufferSize(System.Int32)">
-             Set the underlying string size for encapsulated data
-            
-             @param bufferSize length of octet strings to buffer the data.
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsSignedDataStreamGenerator.AddSigner(Org.BouncyCastle.Crypto.AsymmetricKeyParameter,Org.BouncyCastle.X509.X509Certificate,System.String)">
-            add a signer - no attributes other than the default ones will be
-            provided here.
-            @throws NoSuchAlgorithmException
-            @throws InvalidKeyException
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsSignedDataStreamGenerator.AddSigner(Org.BouncyCastle.Crypto.AsymmetricKeyParameter,Org.BouncyCastle.X509.X509Certificate,System.String,System.String)">
-            add a signer, specifying the digest encryption algorithm - no attributes other than the default ones will be
-            provided here.
-            @throws NoSuchProviderException
-            @throws NoSuchAlgorithmException
-            @throws InvalidKeyException
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsSignedDataStreamGenerator.AddSigner(Org.BouncyCastle.Crypto.AsymmetricKeyParameter,Org.BouncyCastle.X509.X509Certificate,System.String,Org.BouncyCastle.Asn1.Cms.AttributeTable,Org.BouncyCastle.Asn1.Cms.AttributeTable)">
-            add a signer with extra signed/unsigned attributes.
-            @throws NoSuchAlgorithmException
-            @throws InvalidKeyException
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsSignedDataStreamGenerator.AddSigner(Org.BouncyCastle.Crypto.AsymmetricKeyParameter,Org.BouncyCastle.X509.X509Certificate,System.String,System.String,Org.BouncyCastle.Asn1.Cms.AttributeTable,Org.BouncyCastle.Asn1.Cms.AttributeTable)">
-            add a signer with extra signed/unsigned attributes - specifying digest
-            encryption algorithm.
-            @throws NoSuchProviderException
-            @throws NoSuchAlgorithmException
-            @throws InvalidKeyException
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsSignedDataStreamGenerator.AddSigner(Org.BouncyCastle.Crypto.AsymmetricKeyParameter,System.Byte[],System.String)">
-            add a signer - no attributes other than the default ones will be
-            provided here.
-            @throws NoSuchAlgorithmException
-            @throws InvalidKeyException
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsSignedDataStreamGenerator.AddSigner(Org.BouncyCastle.Crypto.AsymmetricKeyParameter,System.Byte[],System.String,System.String)">
-            add a signer - no attributes other than the default ones will be
-            provided here.
-            @throws NoSuchProviderException
-            @throws NoSuchAlgorithmException
-            @throws InvalidKeyException
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsSignedDataStreamGenerator.AddSigner(Org.BouncyCastle.Crypto.AsymmetricKeyParameter,System.Byte[],System.String,Org.BouncyCastle.Asn1.Cms.AttributeTable,Org.BouncyCastle.Asn1.Cms.AttributeTable)">
-            add a signer with extra signed/unsigned attributes.
-            @throws NoSuchAlgorithmException
-            @throws InvalidKeyException
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsSignedDataStreamGenerator.Open(System.IO.Stream)">
-            generate a signed object that for a CMS Signed Data object
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsSignedDataStreamGenerator.Open(System.IO.Stream,System.Boolean)">
-            generate a signed object that for a CMS Signed Data
-            object - if encapsulate is true a copy
-            of the message will be included in the signature with the
-            default content type "data".
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsSignedDataStreamGenerator.Open(System.IO.Stream,System.Boolean,System.IO.Stream)">
-            generate a signed object that for a CMS Signed Data
-            object using the given provider - if encapsulate is true a copy
-            of the message will be included in the signature with the
-            default content type "data". If dataOutputStream is non null the data
-            being signed will be written to the stream as it is processed.
-            @param out stream the CMS object is to be written to.
-            @param encapsulate true if data should be encapsulated.
-            @param dataOutputStream output stream to copy the data being signed to.
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsSignedDataStreamGenerator.Open(System.IO.Stream,System.String,System.Boolean)">
-            generate a signed object that for a CMS Signed Data
-            object - if encapsulate is true a copy
-            of the message will be included in the signature. The content type
-            is set according to the OID represented by the string signedContentType.
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsSignedDataStreamGenerator.Open(System.IO.Stream,System.String,System.Boolean,System.IO.Stream)">
-            generate a signed object that for a CMS Signed Data
-            object using the given provider - if encapsulate is true a copy
-            of the message will be included in the signature. The content type
-            is set according to the OID represented by the string signedContentType.
-            @param out stream the CMS object is to be written to.
-            @param signedContentType OID for data to be signed.
-            @param encapsulate true if data should be encapsulated.
-            @param dataOutputStream output stream to copy the data being signed to.
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsSignedHelper.GetDigestAlgName(System.String)">
-            Return the digest algorithm using one of the standard JCA string
-            representations rather than the algorithm identifier (if possible).
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.CmsSignedHelper.GetEncryptionAlgName(System.String)">
-            Return the digest encryption algorithm using one of the standard
-            JCA string representations rather than the algorithm identifier (if
-            possible).
-        </member>
-        <member name="T:Org.BouncyCastle.Cms.DefaultAuthenticatedAttributeTableGenerator">
-            Default authenticated attributes generator.
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.DefaultAuthenticatedAttributeTableGenerator.#ctor">
-            Initialise to use all defaults
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.DefaultAuthenticatedAttributeTableGenerator.#ctor(Org.BouncyCastle.Asn1.Cms.AttributeTable)">
-             Initialise with some extra attributes or overrides.
-            
-             @param attributeTable initial attribute table to use.
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.DefaultAuthenticatedAttributeTableGenerator.CreateStandardAttributeTable(System.Collections.IDictionary)">
-             Create a standard attribute table from the passed in parameters - this will
-             normally include contentType and messageDigest. If the constructor
-             using an AttributeTable was used, entries in it for contentType and
-             messageDigest will override the generated ones.
-            
-             @param parameters source parameters for table generation.
-            
-             @return a filled in IDictionary of attributes.
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.DefaultAuthenticatedAttributeTableGenerator.GetAttributes(System.Collections.IDictionary)">
-            @param parameters source parameters
-            @return the populated attribute table
-        </member>
-        <member name="T:Org.BouncyCastle.Cms.DefaultSignedAttributeTableGenerator">
-            Default signed attributes generator.
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.DefaultSignedAttributeTableGenerator.#ctor">
-            Initialise to use all defaults
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.DefaultSignedAttributeTableGenerator.#ctor(Org.BouncyCastle.Asn1.Cms.AttributeTable)">
-             Initialise with some extra attributes or overrides.
-            
-             @param attributeTable initial attribute table to use.
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.DefaultSignedAttributeTableGenerator.createStandardAttributeTable(System.Collections.IDictionary)">
-             Create a standard attribute table from the passed in parameters - this will
-             normally include contentType, signingTime, and messageDigest. If the constructor
-             using an AttributeTable was used, entries in it for contentType, signingTime, and
-             messageDigest will override the generated ones.
-            
-             @param parameters source parameters for table generation.
-            
-             @return a filled in Hashtable of attributes.
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.DefaultSignedAttributeTableGenerator.GetAttributes(System.Collections.IDictionary)">
-            @param parameters source parameters
-            @return the populated attribute table
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.RecipientInfoGenerator.Generate(Org.BouncyCastle.Crypto.Parameters.KeyParameter,Org.BouncyCastle.Security.SecureRandom)">
-            <summary>
-            Generate a RecipientInfo object for the given key.
-            </summary>
-            <param name="contentEncryptionKey">
-            A <see cref="T:Org.BouncyCastle.Crypto.Parameters.KeyParameter"/>
-            </param>
-            <param name="random">
-            A <see cref="T:Org.BouncyCastle.Security.SecureRandom"/>
-            </param>
-            <returns>
-            A <see cref="T:Org.BouncyCastle.Asn1.Cms.RecipientInfo"/>
-            </returns>
-            <exception cref="T:Org.BouncyCastle.Security.GeneralSecurityException"></exception>
-        </member>
-        <member name="T:Org.BouncyCastle.Cms.KekRecipientInformation">
-            the RecipientInfo class for a recipient who has been sent a message
-            encrypted using a secret key known to the other side.
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.RecipientInformation.GetMac">
-             Return the MAC calculated for the content stream. Note: this call is only meaningful once all
-             the content has been read.
-            
-             @return  byte array containing the mac.
-        </member>
-        <member name="P:Org.BouncyCastle.Cms.RecipientInformation.KeyEncryptionAlgOid">
-                    * return the object identifier for the key encryption algorithm.
-                    * 
-            		* @return OID for key encryption algorithm.
-        </member>
-        <member name="P:Org.BouncyCastle.Cms.RecipientInformation.KeyEncryptionAlgParams">
-                    * return the ASN.1 encoded key encryption algorithm parameters, or null if
-                    * there aren't any.
-                    * 
-            		* @return ASN.1 encoding of key encryption algorithm parameters.
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.KekRecipientInformation.GetContentStream(Org.BouncyCastle.Crypto.ICipherParameters)">
-            decrypt the content and return an input stream.
-        </member>
-        <member name="T:Org.BouncyCastle.Cms.KeyAgreeRecipientInformation">
-            the RecipientInfo class for a recipient who has been sent a message
-            encrypted using key agreement.
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.KeyAgreeRecipientInformation.GetContentStream(Org.BouncyCastle.Crypto.ICipherParameters)">
-            decrypt the content and return an input stream.
-        </member>
-        <member name="T:Org.BouncyCastle.Cms.KeyTransRecipientInformation">
-            the KeyTransRecipientInformation class for a recipient who has been sent a secret
-            key encrypted using their public key that needs to be used to
-            extract the message.
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.KeyTransRecipientInformation.GetContentStream(Org.BouncyCastle.Crypto.ICipherParameters)">
-            decrypt the content and return it as a byte array.
-        </member>
-        <member name="T:Org.BouncyCastle.Cms.OriginatorID">
-            a basic index for an originator.
-        </member>
-        <member name="P:Org.BouncyCastle.X509.Store.X509CertStoreSelector.Policy">
-            <summary>
-            An <code>ISet</code> of <code>DerObjectIdentifier</code> objects.
-            </summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Cms.PasswordRecipientInformation">
-            the RecipientInfo class for a recipient who has been sent a message
-            encrypted using a password.
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.PasswordRecipientInformation.GetContentStream(Org.BouncyCastle.Crypto.ICipherParameters)">
-            decrypt the content and return an input stream.
-        </member>
-        <member name="P:Org.BouncyCastle.Cms.PasswordRecipientInformation.KeyDerivationAlgorithm">
-             return the object identifier for the key derivation algorithm, or null
-             if there is none present.
-            
-             @return OID for key derivation algorithm, if present.
-        </member>
-        <member name="T:Org.BouncyCastle.Cms.Pkcs5Scheme2PbeKey">
-            <summary>
-            PKCS5 scheme-2 - password converted to bytes assuming ASCII.
-            </summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Cms.Pkcs5Scheme2Utf8PbeKey">
-            PKCS5 scheme-2 - password converted to bytes using UTF-8.
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.RecipientInformationStore.GetFirstRecipient(Org.BouncyCastle.Cms.RecipientID)">
-             Return the first RecipientInformation object that matches the
-             passed in selector. Null if there are no matches.
-            
-             @param selector to identify a recipient
-             @return a single RecipientInformation object. Null if none matches.
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.RecipientInformationStore.GetRecipients">
-             Return all recipients in the collection
-            
-             @return a collection of recipients.
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.RecipientInformationStore.GetRecipients(Org.BouncyCastle.Cms.RecipientID)">
-             Return possible empty collection with recipients matching the passed in RecipientID
-            
-             @param selector a recipient id to select against.
-             @return a collection of RecipientInformation objects.
-        </member>
-        <member name="P:Org.BouncyCastle.Cms.RecipientInformationStore.Count">
-             Return the number of recipients in the collection.
-            
-             @return number of recipients identified.
-        </member>
-        <member name="T:Org.BouncyCastle.Cms.SignerID">
-            a basic index for a signer.
-        </member>
-        <member name="T:Org.BouncyCastle.Cms.SignerInformation">
-            an expanded SignerInfo block from a CMS Signed message
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.SignerInformation.GetContentDigest">
-            return the content digest that was calculated during verification.
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.SignerInformation.GetSignature">
-            return the encoded signature
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.SignerInformation.GetCounterSignatures">
-            Return a SignerInformationStore containing the counter signatures attached to this
-            signer. If no counter signatures are present an empty store is returned.
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.SignerInformation.GetEncodedSignedAttributes">
-            return the DER encoding of the signed attributes.
-            @throws IOException if an encoding error occurs.
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.SignerInformation.Verify(Org.BouncyCastle.Crypto.AsymmetricKeyParameter)">
-            verify that the given public key successfully handles and confirms the
-            signature associated with this signer.
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.SignerInformation.Verify(Org.BouncyCastle.X509.X509Certificate)">
-            verify that the given certificate successfully handles and confirms
-            the signature associated with this signer and, if a signingTime
-            attribute is available, that the certificate was valid at the time the
-            signature was generated.
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.SignerInformation.ToSignerInfo">
-             Return the base ASN.1 CMS structure that this object contains.
-            
-             @return an object containing a CMS SignerInfo structure.
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.SignerInformation.ReplaceUnsignedAttributes(Org.BouncyCastle.Cms.SignerInformation,Org.BouncyCastle.Asn1.Cms.AttributeTable)">
-             Return a signer information object with the passed in unsigned
-             attributes replacing the ones that are current associated with
-             the object passed in.
-            
-             @param signerInformation the signerInfo to be used as the basis.
-             @param unsignedAttributes the unsigned attributes to add.
-             @return a copy of the original SignerInformationObject with the changed attributes.
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.SignerInformation.AddCounterSigners(Org.BouncyCastle.Cms.SignerInformation,Org.BouncyCastle.Cms.SignerInformationStore)">
-             Return a signer information object with passed in SignerInformationStore representing counter
-             signatures attached as an unsigned attribute.
-            
-             @param signerInformation the signerInfo to be used as the basis.
-             @param counterSigners signer info objects carrying counter signature.
-             @return a copy of the original SignerInformationObject with the changed attributes.
-        </member>
-        <member name="P:Org.BouncyCastle.Cms.SignerInformation.Version">
-            return the version number for this objects underlying SignerInfo structure.
-        </member>
-        <member name="P:Org.BouncyCastle.Cms.SignerInformation.DigestAlgOid">
-            return the object identifier for the signature.
-        </member>
-        <member name="P:Org.BouncyCastle.Cms.SignerInformation.DigestAlgParams">
-            return the signature parameters, or null if there aren't any.
-        </member>
-        <member name="P:Org.BouncyCastle.Cms.SignerInformation.EncryptionAlgOid">
-            return the object identifier for the signature.
-        </member>
-        <member name="P:Org.BouncyCastle.Cms.SignerInformation.EncryptionAlgParams">
-            return the signature/encryption algorithm parameters, or null if
-            there aren't any.
-        </member>
-        <member name="P:Org.BouncyCastle.Cms.SignerInformation.SignedAttributes">
-            return a table of the signed attributes - indexed by
-            the OID of the attribute.
-        </member>
-        <member name="P:Org.BouncyCastle.Cms.SignerInformation.UnsignedAttributes">
-            return a table of the unsigned attributes indexed by
-            the OID of the attribute.
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.SignerInformationStore.GetFirstSigner(Org.BouncyCastle.Cms.SignerID)">
-             Return the first SignerInformation object that matches the
-             passed in selector. Null if there are no matches.
-            
-             @param selector to identify a signer
-             @return a single SignerInformation object. Null if none matches.
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.SignerInformationStore.GetSigners">
-            <returns>An ICollection of all signers in the collection</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Cms.SignerInformationStore.GetSigners(Org.BouncyCastle.Cms.SignerID)">
-             Return possible empty collection with signers matching the passed in SignerID
-            
-             @param selector a signer id to select against.
-             @return a collection of SignerInformation objects.
-        </member>
-        <member name="P:Org.BouncyCastle.Cms.SignerInformationStore.Count">
-            <summary>The number of signers in the collection.</summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Cms.SimpleAttributeTableGenerator">
-            Basic generator that just returns a preconstructed attribute table
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Agreement.DHAgreement">
-            a Diffie-Hellman key exchange engine.
-            <p>
-            note: This uses MTI/A0 key agreement in order to make the key agreement
-            secure against passive attacks. If you're doing Diffie-Hellman and both
-            parties have long term public keys you should look at using this. For
-            further information have a look at RFC 2631.</p>
-            <p>
-            It's possible to extend this to more than two parties as well, for the moment
-            that is left as an exercise for the reader.</p>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Agreement.DHAgreement.CalculateMessage">
-            calculate our initial message.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Agreement.DHAgreement.CalculateAgreement(Org.BouncyCastle.Crypto.Parameters.DHPublicKeyParameters,Org.BouncyCastle.Math.BigInteger)">
-            given a message from a given party and the corresponding public key
-            calculate the next message in the agreement sequence. In this case
-            this will represent the shared secret.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Agreement.DHBasicAgreement">
-            a Diffie-Hellman key agreement class.
-            <p>
-            note: This is only the basic algorithm, it doesn't take advantage of
-            long term public keys if they are available. See the DHAgreement class
-            for a "better" implementation.</p>
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.IBasicAgreement">
-            The basic interface that basic Diffie-Hellman implementations
-            conforms to.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.IBasicAgreement.Init(Org.BouncyCastle.Crypto.ICipherParameters)">
-            initialise the agreement engine.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.IBasicAgreement.CalculateAgreement(Org.BouncyCastle.Crypto.ICipherParameters)">
-            given a public key from a given party calculate the next
-            message in the agreement sequence.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Agreement.DHBasicAgreement.CalculateAgreement(Org.BouncyCastle.Crypto.ICipherParameters)">
-            given a short term public key from a given party calculate the next
-            message in the agreement sequence.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Agreement.ECDHBasicAgreement">
-             P1363 7.2.1 ECSVDP-DH
-            
-             ECSVDP-DH is Elliptic Curve Secret Value Derivation Primitive,
-             Diffie-Hellman version. It is based on the work of [DH76], [Mil86],
-             and [Kob87]. This primitive derives a shared secret value from one
-             party's private key and another party's public key, where both have
-             the same set of EC domain parameters. If two parties correctly
-             execute this primitive, they will produce the same output. This
-             primitive can be invoked by a scheme to derive a shared secret key;
-             specifically, it may be used with the schemes ECKAS-DH1 and
-             DL/ECKAS-DH2. It assumes that the input keys are valid (see also
-             Section 7.2.2).
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Agreement.ECDHCBasicAgreement">
-             P1363 7.2.2 ECSVDP-DHC
-            
-             ECSVDP-DHC is Elliptic Curve Secret Value Derivation Primitive,
-             Diffie-Hellman version with cofactor multiplication. It is based on
-             the work of [DH76], [Mil86], [Kob87], [LMQ98] and [Kal98a]. This
-             primitive derives a shared secret value from one party's private key
-             and another party's public key, where both have the same set of EC
-             domain parameters. If two parties correctly execute this primitive,
-             they will produce the same output. This primitive can be invoked by a
-             scheme to derive a shared secret key; specifically, it may be used
-             with the schemes ECKAS-DH1 and DL/ECKAS-DH2. It does not assume the
-             validity of the input public key (see also Section 7.2.1).
-             <p>
-             Note: As stated P1363 compatibility mode with ECDH can be preset, and
-             in this case the implementation doesn't have a ECDH compatibility mode
-             (if you want that just use ECDHBasicAgreement and note they both implement
-             BasicAgreement!).</p>
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.IDerivationParameters">
-            Parameters for key/byte stream derivation classes
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Agreement.Kdf.DHKekGenerator">
-            RFC 2631 Diffie-hellman KEK derivation function.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.IDerivationFunction">
-            base interface for general purpose byte derivation functions.
-        </member>
-        <member name="P:Org.BouncyCastle.Crypto.IDerivationFunction.Digest">
-            return the message digest used as the basis for the function
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Agreement.Kdf.ECDHKekGenerator">
-            X9.63 based key derivation function for ECDH CMS.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Agreement.Srp.Srp6Client">
-            Implements the client side SRP-6a protocol. Note that this class is stateful, and therefore NOT threadsafe.
-            This implementation of SRP is based on the optimized message sequence put forth by Thomas Wu in the paper
-            "SRP-6: Improvements and Refinements to the Secure Remote Password Protocol, 2002"
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Agreement.Srp.Srp6Client.Init(Org.BouncyCastle.Math.BigInteger,Org.BouncyCastle.Math.BigInteger,Org.BouncyCastle.Crypto.IDigest,Org.BouncyCastle.Security.SecureRandom)">
-            Initialises the client to begin new authentication attempt
-            @param N The safe prime associated with the client's verifier
-            @param g The group parameter associated with the client's verifier
-            @param digest The digest algorithm associated with the client's verifier
-            @param random For key generation
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Agreement.Srp.Srp6Client.GenerateClientCredentials(System.Byte[],System.Byte[],System.Byte[])">
-            Generates client's credentials given the client's salt, identity and password
-            @param salt The salt used in the client's verifier.
-            @param identity The user's identity (eg. username)
-            @param password The user's password
-            @return Client's public value to send to server
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Agreement.Srp.Srp6Client.CalculateSecret(Org.BouncyCastle.Math.BigInteger)">
-            Generates client's verification message given the server's credentials
-            @param serverB The server's credentials
-            @return Client's verification message for the server
-            @throws CryptoException If server's credentials are invalid
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Agreement.Srp.Srp6Server">
-            Implements the server side SRP-6a protocol. Note that this class is stateful, and therefore NOT threadsafe.
-            This implementation of SRP is based on the optimized message sequence put forth by Thomas Wu in the paper
-            "SRP-6: Improvements and Refinements to the Secure Remote Password Protocol, 2002"
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Agreement.Srp.Srp6Server.Init(Org.BouncyCastle.Math.BigInteger,Org.BouncyCastle.Math.BigInteger,Org.BouncyCastle.Math.BigInteger,Org.BouncyCastle.Crypto.IDigest,Org.BouncyCastle.Security.SecureRandom)">
-            Initialises the server to accept a new client authentication attempt
-            @param N The safe prime associated with the client's verifier
-            @param g The group parameter associated with the client's verifier
-            @param v The client's verifier
-            @param digest The digest algorithm associated with the client's verifier
-            @param random For key generation
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Agreement.Srp.Srp6Server.GenerateServerCredentials">
-            Generates the server's credentials that are to be sent to the client.
-            @return The server's public value to the client
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Agreement.Srp.Srp6Server.CalculateSecret(Org.BouncyCastle.Math.BigInteger)">
-            Processes the client's credentials. If valid the shared secret is generated and returned.
-            @param clientA The client's credentials
-            @return A shared secret BigInteger
-            @throws CryptoException If client's credentials are invalid
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Agreement.Srp.Srp6VerifierGenerator">
-            Generates new SRP verifier for user
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Agreement.Srp.Srp6VerifierGenerator.Init(Org.BouncyCastle.Math.BigInteger,Org.BouncyCastle.Math.BigInteger,Org.BouncyCastle.Crypto.IDigest)">
-            Initialises generator to create new verifiers
-            @param N The safe prime to use (see DHParametersGenerator)
-            @param g The group parameter to use (see DHParametersGenerator)
-            @param digest The digest to use. The same digest type will need to be used later for the actual authentication
-            attempt. Also note that the final session key size is dependent on the chosen digest.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Agreement.Srp.Srp6VerifierGenerator.GenerateVerifier(System.Byte[],System.Byte[],System.Byte[])">
-            Creates a new SRP verifier
-            @param salt The salt to use, generally should be large and random
-            @param identity The user's identifying information (eg. username)
-            @param password The user's password
-            @return A new verifier for use in future SRP authentication
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.AsymmetricCipherKeyPair">
-            a holding class for public/private parameter pairs.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.AsymmetricCipherKeyPair.#ctor(Org.BouncyCastle.Crypto.AsymmetricKeyParameter,Org.BouncyCastle.Crypto.AsymmetricKeyParameter)">
-             basic constructor.
-            
-             @param publicParam a public key parameters object.
-             @param privateParam the corresponding private key parameters.
-        </member>
-        <member name="P:Org.BouncyCastle.Crypto.AsymmetricCipherKeyPair.Public">
-             return the public key parameters.
-            
-             @return the public key parameters.
-        </member>
-        <member name="P:Org.BouncyCastle.Crypto.AsymmetricCipherKeyPair.Private">
-             return the private key parameters.
-            
-             @return the private key parameters.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.BufferedAeadBlockCipher">
-            The AEAD block ciphers already handle buffering internally, so this class
-            just takes care of implementing IBufferedCipher methods.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.IBufferedCipher">
-            <remarks>Block cipher engines are expected to conform to this interface.</remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.IBufferedCipher.Init(System.Boolean,Org.BouncyCastle.Crypto.ICipherParameters)">
-            <summary>Initialise the cipher.</summary>
-            <param name="forEncryption">If true the cipher is initialised for encryption,
-            if false for decryption.</param>
-            <param name="parameters">The key and other data required by the cipher.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.IBufferedCipher.Reset">
-            <summary>
-            Reset the cipher. After resetting the cipher is in the same state
-            as it was after the last init (if there was one).
-            </summary>
-        </member>
-        <member name="P:Org.BouncyCastle.Crypto.IBufferedCipher.AlgorithmName">
-            <summary>The name of the algorithm this cipher implements.</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.BufferedAeadBlockCipher.Init(System.Boolean,Org.BouncyCastle.Crypto.ICipherParameters)">
-             initialise the cipher.
-            
-             @param forEncryption if true the cipher is initialised for
-              encryption, if false for decryption.
-             @param param the key and other data required by the cipher.
-             @exception ArgumentException if the parameters argument is
-             inappropriate.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.BufferedAeadBlockCipher.GetBlockSize">
-             return the blocksize for the underlying cipher.
-            
-             @return the blocksize for the underlying cipher.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.BufferedAeadBlockCipher.GetUpdateOutputSize(System.Int32)">
-             return the size of the output buffer required for an update
-             an input of len bytes.
-            
-             @param len the length of the input.
-             @return the space required to accommodate a call to update
-             with len bytes of input.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.BufferedAeadBlockCipher.GetOutputSize(System.Int32)">
-             return the size of the output buffer required for an update plus a
-             doFinal with an input of len bytes.
-            
-             @param len the length of the input.
-             @return the space required to accommodate a call to update and doFinal
-             with len bytes of input.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.BufferedAeadBlockCipher.ProcessByte(System.Byte,System.Byte[],System.Int32)">
-             process a single byte, producing an output block if neccessary.
-            
-             @param in the input byte.
-             @param out the space for any output that might be produced.
-             @param outOff the offset from which the output will be copied.
-             @return the number of output bytes copied to out.
-             @exception DataLengthException if there isn't enough space in out.
-             @exception InvalidOperationException if the cipher isn't initialised.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.BufferedAeadBlockCipher.ProcessBytes(System.Byte[],System.Int32,System.Int32,System.Byte[],System.Int32)">
-             process an array of bytes, producing output if necessary.
-            
-             @param in the input byte array.
-             @param inOff the offset at which the input data starts.
-             @param len the number of bytes to be copied out of the input array.
-             @param out the space for any output that might be produced.
-             @param outOff the offset from which the output will be copied.
-             @return the number of output bytes copied to out.
-             @exception DataLengthException if there isn't enough space in out.
-             @exception InvalidOperationException if the cipher isn't initialised.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.BufferedAeadBlockCipher.DoFinal(System.Byte[],System.Int32)">
-             Process the last block in the buffer.
-            
-             @param out the array the block currently being held is copied into.
-             @param outOff the offset at which the copying starts.
-             @return the number of output bytes copied to out.
-             @exception DataLengthException if there is insufficient space in out for
-             the output, or the input is not block size aligned and should be.
-             @exception InvalidOperationException if the underlying cipher is not
-             initialised.
-             @exception InvalidCipherTextException if padding is expected and not found.
-             @exception DataLengthException if the input is not block size
-             aligned.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.BufferedAeadBlockCipher.Reset">
-            Reset the buffer and cipher. After resetting the object is in the same
-            state as it was after the last init (if there was one).
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.BufferedAsymmetricBlockCipher">
-            a buffer wrapper for an asymmetric block cipher, allowing input
-            to be accumulated in a piecemeal fashion until final processing.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.BufferedAsymmetricBlockCipher.#ctor(Org.BouncyCastle.Crypto.IAsymmetricBlockCipher)">
-             base constructor.
-            
-             @param cipher the cipher this buffering object wraps.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.BufferedAsymmetricBlockCipher.GetBufferPosition">
-             return the amount of data sitting in the buffer.
-            
-             @return the amount of data sitting in the buffer.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.BufferedAsymmetricBlockCipher.Init(System.Boolean,Org.BouncyCastle.Crypto.ICipherParameters)">
-             initialise the buffer and the underlying cipher.
-            
-             @param forEncryption if true the cipher is initialised for
-              encryption, if false for decryption.
-             @param param the key and other data required by the cipher.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.BufferedAsymmetricBlockCipher.DoFinal">
-             process the contents of the buffer using the underlying
-             cipher.
-            
-             @return the result of the encryption/decryption process on the
-             buffer.
-             @exception InvalidCipherTextException if we are given a garbage block.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.BufferedAsymmetricBlockCipher.Reset">
-            <summary>Reset the buffer</summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.BufferedBlockCipher">
-            A wrapper class that allows block ciphers to be used to process data in
-            a piecemeal fashion. The BufferedBlockCipher outputs a block only when the
-            buffer is full and more data is being added, or on a doFinal.
-            <p>
-            Note: in the case where the underlying cipher is either a CFB cipher or an
-            OFB one the last block may not be a multiple of the block size.
-            </p>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.BufferedBlockCipher.#ctor">
-            constructor for subclasses
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.BufferedBlockCipher.#ctor(Org.BouncyCastle.Crypto.IBlockCipher)">
-             Create a buffered block cipher without padding.
-            
-             @param cipher the underlying block cipher this buffering object wraps.
-             false otherwise.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.BufferedBlockCipher.Init(System.Boolean,Org.BouncyCastle.Crypto.ICipherParameters)">
-             initialise the cipher.
-            
-             @param forEncryption if true the cipher is initialised for
-              encryption, if false for decryption.
-             @param param the key and other data required by the cipher.
-             @exception ArgumentException if the parameters argument is
-             inappropriate.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.BufferedBlockCipher.GetBlockSize">
-             return the blocksize for the underlying cipher.
-            
-             @return the blocksize for the underlying cipher.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.BufferedBlockCipher.GetUpdateOutputSize(System.Int32)">
-             return the size of the output buffer required for an update
-             an input of len bytes.
-            
-             @param len the length of the input.
-             @return the space required to accommodate a call to update
-             with len bytes of input.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.BufferedBlockCipher.GetOutputSize(System.Int32)">
-             return the size of the output buffer required for an update plus a
-             doFinal with an input of len bytes.
-            
-             @param len the length of the input.
-             @return the space required to accommodate a call to update and doFinal
-             with len bytes of input.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.BufferedBlockCipher.ProcessByte(System.Byte,System.Byte[],System.Int32)">
-             process a single byte, producing an output block if neccessary.
-            
-             @param in the input byte.
-             @param out the space for any output that might be produced.
-             @param outOff the offset from which the output will be copied.
-             @return the number of output bytes copied to out.
-             @exception DataLengthException if there isn't enough space in out.
-             @exception InvalidOperationException if the cipher isn't initialised.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.BufferedBlockCipher.ProcessBytes(System.Byte[],System.Int32,System.Int32,System.Byte[],System.Int32)">
-             process an array of bytes, producing output if necessary.
-            
-             @param in the input byte array.
-             @param inOff the offset at which the input data starts.
-             @param len the number of bytes to be copied out of the input array.
-             @param out the space for any output that might be produced.
-             @param outOff the offset from which the output will be copied.
-             @return the number of output bytes copied to out.
-             @exception DataLengthException if there isn't enough space in out.
-             @exception InvalidOperationException if the cipher isn't initialised.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.BufferedBlockCipher.DoFinal(System.Byte[],System.Int32)">
-             Process the last block in the buffer.
-            
-             @param out the array the block currently being held is copied into.
-             @param outOff the offset at which the copying starts.
-             @return the number of output bytes copied to out.
-             @exception DataLengthException if there is insufficient space in out for
-             the output, or the input is not block size aligned and should be.
-             @exception InvalidOperationException if the underlying cipher is not
-             initialised.
-             @exception InvalidCipherTextException if padding is expected and not found.
-             @exception DataLengthException if the input is not block size
-             aligned.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.BufferedBlockCipher.Reset">
-            Reset the buffer and cipher. After resetting the object is in the same
-            state as it was after the last init (if there was one).
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.CipherKeyGenerator">
-            The base class for symmetric, or secret, cipher key generators.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.CipherKeyGenerator.Init(Org.BouncyCastle.Crypto.KeyGenerationParameters)">
-             initialise the key generator.
-            
-             @param param the parameters to be used for key generation
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.CipherKeyGenerator.GenerateKey">
-             Generate a secret key.
-            
-             @return a byte array containing the key value.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.DataLengthException">
-            this exception is thrown if a buffer that is meant to have output
-            copied into it turns out to be too short, or if we've been given
-            insufficient input. In general this exception will Get thrown rather
-            than an ArrayOutOfBounds exception.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.DataLengthException.#ctor">
-            base constructor.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.DataLengthException.#ctor(System.String)">
-             create a DataLengthException with the given message.
-            
-             @param message the message to be carried with the exception.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Digests.GeneralDigest">
-            base implementation of MD4 family style digest as outlined in
-            "Handbook of Applied Cryptography", pages 344 - 347.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.IDigest">
-            interface that a message digest conforms to.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.IDigest.GetDigestSize">
-             return the size, in bytes, of the digest produced by this message digest.
-            
-             @return the size, in bytes, of the digest produced by this message digest.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.IDigest.GetByteLength">
-             return the size, in bytes, of the internal buffer used by this digest.
-            
-             @return the size, in bytes, of the internal buffer used by this digest.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.IDigest.Update(System.Byte)">
-             update the message digest with a single byte.
-            
-             @param inByte the input byte to be entered.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.IDigest.BlockUpdate(System.Byte[],System.Int32,System.Int32)">
-             update the message digest with a block of bytes.
-            
-             @param input the byte array containing the data.
-             @param inOff the offset into the byte array where the data starts.
-             @param len the length of the data.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.IDigest.DoFinal(System.Byte[],System.Int32)">
-             Close the digest, producing the final digest value. The doFinal
-             call leaves the digest reset.
-            
-             @param output the array the digest is to be copied into.
-             @param outOff the offset into the out array the digest is to start at.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.IDigest.Reset">
-            reset the digest back to it's initial state.
-        </member>
-        <member name="P:Org.BouncyCastle.Crypto.IDigest.AlgorithmName">
-             return the algorithm name
-            
-             @return the algorithm name
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Digests.Gost3411Digest">
-            implementation of GOST R 34.11-94
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Digests.Gost3411Digest.#ctor">
-            Standard constructor
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Digests.Gost3411Digest.#ctor(System.Byte[])">
-            Constructor to allow use of a particular sbox with GOST28147
-            @see GOST28147Engine#getSBox(String)
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Digests.Gost3411Digest.#ctor(Org.BouncyCastle.Crypto.Digests.Gost3411Digest)">
-            Copy constructor.  This will copy the state of the provided
-            message digest.
-        </member>
-        <member name="F:Org.BouncyCastle.Crypto.Digests.Gost3411Digest.C2">
-            reset the chaining variables to the IV values.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Digests.LongDigest">
-            Base class for SHA-384 and SHA-512.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Digests.LongDigest.#ctor">
-            Constructor for variable length word
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Digests.LongDigest.#ctor(Org.BouncyCastle.Crypto.Digests.LongDigest)">
-            Copy constructor.  We are using copy constructors in place
-            of the object.Clone() interface as this interface is not
-            supported by J2ME.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Digests.LongDigest.AdjustByteCounts">
-            adjust the byte counts so that byteCount2 represents the
-            upper long (less 3 bits) word of the byte count.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Digests.MD2Digest">
-            implementation of MD2
-            as outlined in RFC1319 by B.Kaliski from RSA Laboratories April 1992
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Digests.MD2Digest.DoFinal(System.Byte[],System.Int32)">
-             Close the digest, producing the final digest value. The doFinal
-             call leaves the digest reset.
-            
-             @param out the array the digest is to be copied into.
-             @param outOff the offset into the out array the digest is to start at.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Digests.MD2Digest.Reset">
-            reset the digest back to it's initial state.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Digests.MD2Digest.Update(System.Byte)">
-             update the message digest with a single byte.
-            
-             @param in the input byte to be entered.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Digests.MD2Digest.BlockUpdate(System.Byte[],System.Int32,System.Int32)">
-             update the message digest with a block of bytes.
-            
-             @param in the byte array containing the data.
-             @param inOff the offset into the byte array where the data starts.
-             @param len the length of the data.
-        </member>
-        <member name="P:Org.BouncyCastle.Crypto.Digests.MD2Digest.AlgorithmName">
-             return the algorithm name
-            
-             @return the algorithm name
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Digests.MD4Digest">
-            implementation of MD4 as RFC 1320 by R. Rivest, MIT Laboratory for
-            Computer Science and RSA Data Security, Inc.
-            <p>
-            <b>NOTE</b>: This algorithm is only included for backwards compatibility
-            with legacy applications, it's not secure, don't use it for anything new!</p>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Digests.MD4Digest.#ctor">
-            Standard constructor
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Digests.MD4Digest.#ctor(Org.BouncyCastle.Crypto.Digests.MD4Digest)">
-            Copy constructor.  This will copy the state of the provided
-            message digest.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Digests.MD4Digest.Reset">
-            reset the chaining variables to the IV values.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Digests.MD5Digest">
-            implementation of MD5 as outlined in "Handbook of Applied Cryptography", pages 346 - 347.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Digests.MD5Digest.#ctor(Org.BouncyCastle.Crypto.Digests.MD5Digest)">
-            Copy constructor.  This will copy the state of the provided
-            message digest.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Digests.MD5Digest.Reset">
-            reset the chaining variables to the IV values.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Digests.RipeMD128Digest">
-            implementation of RipeMD128
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Digests.RipeMD128Digest.#ctor">
-            Standard constructor
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Digests.RipeMD128Digest.#ctor(Org.BouncyCastle.Crypto.Digests.RipeMD128Digest)">
-            Copy constructor.  This will copy the state of the provided
-            message digest.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Digests.RipeMD128Digest.Reset">
-            reset the chaining variables to the IV values.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Digests.RipeMD160Digest">
-            implementation of RipeMD see,
-            http://www.esat.kuleuven.ac.be/~bosselae/ripemd160.html
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Digests.RipeMD160Digest.#ctor">
-            Standard constructor
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Digests.RipeMD160Digest.#ctor(Org.BouncyCastle.Crypto.Digests.RipeMD160Digest)">
-            Copy constructor.  This will copy the state of the provided
-            message digest.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Digests.RipeMD160Digest.Reset">
-            reset the chaining variables to the IV values.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Digests.RipeMD256Digest">
-            <remarks>
-            <p>Implementation of RipeMD256.</p>
-            <p><b>Note:</b> this algorithm offers the same level of security as RipeMD128.</p>
-            </remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Digests.RipeMD256Digest.#ctor">
-            <summary> Standard constructor</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Digests.RipeMD256Digest.#ctor(Org.BouncyCastle.Crypto.Digests.RipeMD256Digest)">
-            <summary> Copy constructor.  This will copy the state of the provided
-            message digest.
-            </summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Digests.RipeMD256Digest.Reset">
-            <summary> reset the chaining variables to the IV values.</summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Digests.RipeMD320Digest">
-            <remarks>
-            <p>Implementation of RipeMD 320.</p>
-            <p><b>Note:</b> this algorithm offers the same level of security as RipeMD160.</p>
-            </remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Digests.RipeMD320Digest.#ctor">
-            <summary> Standard constructor</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Digests.RipeMD320Digest.#ctor(Org.BouncyCastle.Crypto.Digests.RipeMD320Digest)">
-            <summary> Copy constructor.  This will copy the state of the provided
-            message digest.
-            </summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Digests.RipeMD320Digest.Reset">
-            <summary> reset the chaining variables to the IV values.</summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Digests.Sha1Digest">
-             implementation of SHA-1 as outlined in "Handbook of Applied Cryptography", pages 346 - 349.
-            
-             It is interesting to ponder why the, apart from the extra IV, the other difference here from MD5
-             is the "endienness" of the word processing!
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Digests.Sha1Digest.#ctor(Org.BouncyCastle.Crypto.Digests.Sha1Digest)">
-            Copy constructor.  This will copy the state of the provided
-            message digest.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Digests.Sha1Digest.Reset">
-            reset the chaining variables
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Digests.Sha224Digest">
-            SHA-224 as described in RFC 3874
-            <pre>
-                    block  word  digest
-            SHA-1   512    32    160
-            SHA-224 512    32    224
-            SHA-256 512    32    256
-            SHA-384 1024   64    384
-            SHA-512 1024   64    512
-            </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Digests.Sha224Digest.#ctor">
-            Standard constructor
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Digests.Sha224Digest.#ctor(Org.BouncyCastle.Crypto.Digests.Sha224Digest)">
-            Copy constructor.  This will copy the state of the provided
-            message digest.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Digests.Sha224Digest.Reset">
-            reset the chaining variables
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Digests.Sha256Digest">
-             Draft FIPS 180-2 implementation of SHA-256. <b>Note:</b> As this is
-             based on a draft this implementation is subject to change.
-            
-             <pre>
-                     block  word  digest
-             SHA-1   512    32    160
-             SHA-256 512    32    256
-             SHA-384 1024   64    384
-             SHA-512 1024   64    512
-             </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Digests.Sha256Digest.#ctor(Org.BouncyCastle.Crypto.Digests.Sha256Digest)">
-            Copy constructor.  This will copy the state of the provided
-            message digest.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Digests.Sha256Digest.Reset">
-            reset the chaining variables
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Digests.Sha384Digest">
-             Draft FIPS 180-2 implementation of SHA-384. <b>Note:</b> As this is
-             based on a draft this implementation is subject to change.
-            
-             <pre>
-                     block  word  digest
-             SHA-1   512    32    160
-             SHA-256 512    32    256
-             SHA-384 1024   64    384
-             SHA-512 1024   64    512
-             </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Digests.Sha384Digest.#ctor(Org.BouncyCastle.Crypto.Digests.Sha384Digest)">
-            Copy constructor.  This will copy the state of the provided
-            message digest.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Digests.Sha384Digest.Reset">
-            reset the chaining variables
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Digests.Sha512Digest">
-             Draft FIPS 180-2 implementation of SHA-512. <b>Note:</b> As this is
-             based on a draft this implementation is subject to change.
-            
-             <pre>
-                     block  word  digest
-             SHA-1   512    32    160
-             SHA-256 512    32    256
-             SHA-384 1024   64    384
-             SHA-512 1024   64    512
-             </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Digests.Sha512Digest.#ctor(Org.BouncyCastle.Crypto.Digests.Sha512Digest)">
-            Copy constructor.  This will copy the state of the provided
-            message digest.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Digests.Sha512Digest.Reset">
-            reset the chaining variables
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Digests.ShortenedDigest">
-            Wrapper class that reduces the output length of a particular digest to
-            only the first n bytes of the digest function.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Digests.ShortenedDigest.#ctor(Org.BouncyCastle.Crypto.IDigest,System.Int32)">
-             Base constructor.
-            
-             @param baseDigest underlying digest to use.
-             @param length length in bytes of the output of doFinal.
-             @exception ArgumentException if baseDigest is null, or length is greater than baseDigest.GetDigestSize().
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Digests.TigerDigest">
-            implementation of Tiger based on:
-            <a href="http://www.cs.technion.ac.il/~biham/Reports/Tiger">
-             http://www.cs.technion.ac.il/~biham/Reports/Tiger</a>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Digests.TigerDigest.#ctor">
-            Standard constructor
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Digests.TigerDigest.#ctor(Org.BouncyCastle.Crypto.Digests.TigerDigest)">
-            Copy constructor.  This will copy the state of the provided
-            message digest.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Digests.TigerDigest.Reset">
-            reset the chaining variables
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Digests.WhirlpoolDigest">
-             Implementation of WhirlpoolDigest, based on Java source published by Barreto
-             and Rijmen.
-            
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Digests.WhirlpoolDigest.#ctor(Org.BouncyCastle.Crypto.Digests.WhirlpoolDigest)">
-            Copy constructor. This will copy the state of the provided message
-            digest.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Digests.WhirlpoolDigest.Reset">
-            Reset the chaining variables
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Encodings.ISO9796d1Encoding">
-            ISO 9796-1 padding. Note in the light of recent results you should
-            only use this with RSA (rather than the "simpler" Rabin keys) and you
-            should never use it with anything other than a hash (ie. even if the
-            message is small don't sign the message, sign it's hash) or some "random"
-            value. See your favorite search engine for details.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.IAsymmetricBlockCipher">
-            <remarks>Base interface for a public/private key block cipher.</remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.IAsymmetricBlockCipher.Init(System.Boolean,Org.BouncyCastle.Crypto.ICipherParameters)">
-            <summary>Initialise the cipher.</summary>
-            <param name="forEncryption">Initialise for encryption if true, for decryption if false.</param>
-            <param name="parameters">The key or other data required by the cipher.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.IAsymmetricBlockCipher.GetInputBlockSize">
-            <returns>The maximum size, in bytes, an input block may be.</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.IAsymmetricBlockCipher.GetOutputBlockSize">
-            <returns>The maximum size, in bytes, an output block will be.</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.IAsymmetricBlockCipher.ProcessBlock(System.Byte[],System.Int32,System.Int32)">
-            <summary>Process a block.</summary>
-            <param name="inBuf">The input buffer.</param>
-            <param name="inOff">The offset into <paramref>inBuf</paramref> that the input block begins.</param>
-            <param name="inLen">The length of the input block.</param>
-            <exception cref="T:Org.BouncyCastle.Crypto.InvalidCipherTextException">Input decrypts improperly.</exception>
-            <exception cref="T:Org.BouncyCastle.Crypto.DataLengthException">Input is too large for the cipher.</exception>
-        </member>
-        <member name="P:Org.BouncyCastle.Crypto.IAsymmetricBlockCipher.AlgorithmName">
-            <summary>The name of the algorithm this cipher implements.</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Encodings.ISO9796d1Encoding.GetInputBlockSize">
-            return the input block size. The largest message we can process
-            is (key_size_in_bits + 3)/16, which in our world comes to
-            key_size_in_bytes / 2.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Encodings.ISO9796d1Encoding.GetOutputBlockSize">
-            return the maximum possible size for the output.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Encodings.ISO9796d1Encoding.SetPadBits(System.Int32)">
-            set the number of bits in the next message to be treated as
-            pad bits.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Encodings.ISO9796d1Encoding.GetPadBits">
-            retrieve the number of pad bits in the last decoded message.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Encodings.ISO9796d1Encoding.DecodeBlock(System.Byte[],System.Int32,System.Int32)">
-            @exception InvalidCipherTextException if the decrypted block is not a valid ISO 9796 bit string
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Encodings.OaepEncoding">
-            Optimal Asymmetric Encryption Padding (OAEP) - see PKCS 1 V 2.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Encodings.OaepEncoding.decodeBlock(System.Byte[],System.Int32,System.Int32)">
-            @exception InvalidCipherTextException if the decrypted block turns out to
-            be badly formatted.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Encodings.OaepEncoding.ItoOSP(System.Int32,System.Byte[])">
-            int to octet string.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Encodings.OaepEncoding.maskGeneratorFunction1(System.Byte[],System.Int32,System.Int32,System.Int32)">
-            mask generator function, as described in PKCS1v2.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Encodings.Pkcs1Encoding">
-            this does your basic Pkcs 1 v1.5 padding - whether or not you should be using this
-            depends on your application - see Pkcs1 Version 2 for details.
-        </member>
-        <member name="F:Org.BouncyCastle.Crypto.Encodings.Pkcs1Encoding.StrictLengthEnabledProperty">
-            some providers fail to include the leading zero in PKCS1 encoded blocks. If you need to
-            work with one of these set the system property Org.BouncyCastle.Pkcs1.Strict to false.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Encodings.Pkcs1Encoding.#ctor(Org.BouncyCastle.Crypto.IAsymmetricBlockCipher)">
-            Basic constructor.
-            @param cipher
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Encodings.Pkcs1Encoding.DecodeBlock(System.Byte[],System.Int32,System.Int32)">
-            @exception InvalidCipherTextException if the decrypted block is not in Pkcs1 format.
-        </member>
-        <member name="P:Org.BouncyCastle.Crypto.Encodings.Pkcs1Encoding.StrictLengthEnabled">
-            The same effect can be achieved by setting the static property directly
-            <p>
-            The static property is checked during construction of the encoding object, it is set to
-            true by default.
-            </p>
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Engines.AesEngine">
-             an implementation of the AES (Rijndael), from FIPS-197.
-             <p>
-             For further details see: <a href="http://csrc.nist.gov/encryption/aes/">http://csrc.nist.gov/encryption/aes/</a>.
-            
-             This implementation is based on optimizations from Dr. Brian Gladman's paper and C code at
-             <a href="http://fp.gladman.plus.com/cryptography_technology/rijndael/">http://fp.gladman.plus.com/cryptography_technology/rijndael/</a>
-            
-             There are three levels of tradeoff of speed vs memory
-             Because java has no preprocessor, they are written as three separate classes from which to choose
-            
-             The fastest uses 8Kbytes of static tables to precompute round calculations, 4 256 word tables for encryption
-             and 4 for decryption.
-            
-             The middle performance version uses only one 256 word table for each, for a total of 2Kbytes,
-             adding 12 rotate operations per round to compute the values contained in the other tables from
-             the contents of the first.
-            
-             The slowest version uses no static tables at all and computes the values in each round.
-             </p>
-             <p>
-             This file contains the middle performance version with 2Kbytes of static tables for round precomputation.
-             </p>
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.IBlockCipher">
-            <remarks>Base interface for a symmetric key block cipher.</remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.IBlockCipher.Init(System.Boolean,Org.BouncyCastle.Crypto.ICipherParameters)">
-            <summary>Initialise the cipher.</summary>
-            <param name="forEncryption">Initialise for encryption if true, for decryption if false.</param>
-            <param name="parameters">The key or other data required by the cipher.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.IBlockCipher.GetBlockSize">
-            <returns>The block size for this cipher, in bytes.</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.IBlockCipher.ProcessBlock(System.Byte[],System.Int32,System.Byte[],System.Int32)">
-            <summary>Process a block.</summary>
-            <param name="inBuf">The input buffer.</param>
-            <param name="inOff">The offset into <paramref>inBuf</paramref> that the input block begins.</param>
-            <param name="outBuf">The output buffer.</param>
-            <param name="outOff">The offset into <paramref>outBuf</paramref> to write the output block.</param>
-            <exception cref="T:Org.BouncyCastle.Crypto.DataLengthException">If input block is wrong size, or outBuf too small.</exception>
-            <returns>The number of bytes processed and produced.</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.IBlockCipher.Reset">
-            <summary>
-            Reset the cipher to the same state as it was after the last init (if there was one).
-            </summary>
-        </member>
-        <member name="P:Org.BouncyCastle.Crypto.IBlockCipher.AlgorithmName">
-            <summary>The name of the algorithm this cipher implements.</summary>
-        </member>
-        <member name="P:Org.BouncyCastle.Crypto.IBlockCipher.IsPartialBlockOkay">
-            <summary>Indicates whether this cipher can handle partial blocks.</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.AesEngine.GenerateWorkingKey(System.Byte[],System.Boolean)">
-            Calculate the necessary round keys
-            The number of calculations depends on key size and block size
-            AES specified a fixed block size of 128 bits and key sizes 128/192/256 bits
-            This code is written assuming those are the only possible values
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.AesEngine.#ctor">
-            default constructor - 128 bit block size.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.AesEngine.Init(System.Boolean,Org.BouncyCastle.Crypto.ICipherParameters)">
-             initialise an AES cipher.
-            
-             @param forEncryption whether or not we are for encryption.
-             @param parameters the parameters required to set up the cipher.
-             @exception ArgumentException if the parameters argument is
-             inappropriate.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Engines.AesFastEngine">
-             an implementation of the AES (Rijndael)), from FIPS-197.
-             <p>
-             For further details see: <a href="http://csrc.nist.gov/encryption/aes/">http://csrc.nist.gov/encryption/aes/</a>.
-            
-             This implementation is based on optimizations from Dr. Brian Gladman's paper and C code at
-             <a href="http://fp.gladman.plus.com/cryptography_technology/rijndael/">http://fp.gladman.plus.com/cryptography_technology/rijndael/</a>
-            
-             There are three levels of tradeoff of speed vs memory
-             Because java has no preprocessor), they are written as three separate classes from which to choose
-            
-             The fastest uses 8Kbytes of static tables to precompute round calculations), 4 256 word tables for encryption
-             and 4 for decryption.
-            
-             The middle performance version uses only one 256 word table for each), for a total of 2Kbytes),
-             adding 12 rotate operations per round to compute the values contained in the other tables from
-             the contents of the first
-            
-             The slowest version uses no static tables at all and computes the values in each round
-             </p>
-             <p>
-             This file contains the fast version with 8Kbytes of static tables for round precomputation
-             </p>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.AesFastEngine.GenerateWorkingKey(System.Byte[],System.Boolean)">
-            Calculate the necessary round keys
-            The number of calculations depends on key size and block size
-            AES specified a fixed block size of 128 bits and key sizes 128/192/256 bits
-            This code is written assuming those are the only possible values
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.AesFastEngine.#ctor">
-            default constructor - 128 bit block size.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.AesFastEngine.Init(System.Boolean,Org.BouncyCastle.Crypto.ICipherParameters)">
-             initialise an AES cipher.
-            
-             @param forEncryption whether or not we are for encryption.
-             @param parameters the parameters required to set up the cipher.
-             @exception ArgumentException if the parameters argument is
-             inappropriate.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Engines.AesLightEngine">
-             an implementation of the AES (Rijndael), from FIPS-197.
-             <p>
-             For further details see: <a href="http://csrc.nist.gov/encryption/aes/">http://csrc.nist.gov/encryption/aes/</a>.
-            
-             This implementation is based on optimizations from Dr. Brian Gladman's paper and C code at
-             <a href="http://fp.gladman.plus.com/cryptography_technology/rijndael/">http://fp.gladman.plus.com/cryptography_technology/rijndael/</a>
-            
-             There are three levels of tradeoff of speed vs memory
-             Because java has no preprocessor, they are written as three separate classes from which to choose
-            
-             The fastest uses 8Kbytes of static tables to precompute round calculations, 4 256 word tables for encryption
-             and 4 for decryption.
-            
-             The middle performance version uses only one 256 word table for each, for a total of 2Kbytes,
-             adding 12 rotate operations per round to compute the values contained in the other tables from
-             the contents of the first
-            
-             The slowest version uses no static tables at all and computes the values
-             in each round.
-             </p>
-             <p>
-             This file contains the slowest performance version with no static tables
-             for round precomputation, but it has the smallest foot print.
-             </p>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.AesLightEngine.GenerateWorkingKey(System.Byte[],System.Boolean)">
-            Calculate the necessary round keys
-            The number of calculations depends on key size and block size
-            AES specified a fixed block size of 128 bits and key sizes 128/192/256 bits
-            This code is written assuming those are the only possible values
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.AesLightEngine.#ctor">
-            default constructor - 128 bit block size.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.AesLightEngine.Init(System.Boolean,Org.BouncyCastle.Crypto.ICipherParameters)">
-             initialise an AES cipher.
-            
-             @param forEncryption whether or not we are for encryption.
-             @param parameters the parameters required to set up the cipher.
-             @exception ArgumentException if the parameters argument is
-             inappropriate.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Engines.AesWrapEngine">
-            <remarks>
-            An implementation of the AES Key Wrapper from the NIST Key Wrap Specification.
-            <p/>
-            For further details see: <a href="http://csrc.nist.gov/encryption/kms/key-wrap.pdf">http://csrc.nist.gov/encryption/kms/key-wrap.pdf</a>.
-            </remarks>
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Engines.Rfc3394WrapEngine">
-            <remarks>
-            An implementation of the AES Key Wrapper from the NIST Key Wrap
-            Specification as described in RFC 3394.
-            <p/>
-            For further details see: <a href="http://www.ietf.org/rfc/rfc3394.txt">http://www.ietf.org/rfc/rfc3394.txt</a>
-            and  <a href="http://csrc.nist.gov/encryption/kms/key-wrap.pdf">http://csrc.nist.gov/encryption/kms/key-wrap.pdf</a>.
-            </remarks>
-        </member>
-        <member name="P:Org.BouncyCastle.Crypto.IWrapper.AlgorithmName">
-            <summary>The name of the algorithm this cipher implements.</summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Engines.BlowfishEngine">
-            A class that provides Blowfish key encryption operations,
-            such as encoding data and generating keys.
-            All the algorithms herein are from Applied Cryptography
-            and implement a simplified cryptography interface.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.BlowfishEngine.Init(System.Boolean,Org.BouncyCastle.Crypto.ICipherParameters)">
-             initialise a Blowfish cipher.
-            
-             @param forEncryption whether or not we are for encryption.
-             @param parameters the parameters required to set up the cipher.
-             @exception ArgumentException if the parameters argument is
-             inappropriate.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.BlowfishEngine.ProcessTable(System.UInt32,System.UInt32,System.UInt32[])">
-            apply the encryption cycle to each value pair in the table.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.BlowfishEngine.EncryptBlock(System.Byte[],System.Int32,System.Byte[],System.Int32)">
-            Encrypt the given input starting at the given offset and place
-            the result in the provided buffer starting at the given offset.
-            The input will be an exact multiple of our blocksize.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.BlowfishEngine.DecryptBlock(System.Byte[],System.Int32,System.Byte[],System.Int32)">
-            Decrypt the given input starting at the given offset and place
-            the result in the provided buffer starting at the given offset.
-            The input will be an exact multiple of our blocksize.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Engines.CamelliaEngine">
-            Camellia - based on RFC 3713.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Engines.CamelliaLightEngine">
-            Camellia - based on RFC 3713, smaller implementation, about half the size of CamelliaEngine.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Engines.CamelliaWrapEngine">
-            <remarks>
-            An implementation of the Camellia key wrapper based on RFC 3657/RFC 3394.
-            <p/>
-            For further details see: <a href="http://www.ietf.org/rfc/rfc3657.txt">http://www.ietf.org/rfc/rfc3657.txt</a>.
-            </remarks>
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Engines.Cast5Engine">
-             A class that provides CAST key encryption operations,
-             such as encoding data and generating keys.
-            
-             All the algorithms herein are from the Internet RFC's
-            
-             RFC2144 - Cast5 (64bit block, 40-128bit key)
-             RFC2612 - CAST6 (128bit block, 128-256bit key)
-            
-             and implement a simplified cryptography interface.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.Cast5Engine.Init(System.Boolean,Org.BouncyCastle.Crypto.ICipherParameters)">
-             initialise a CAST cipher.
-            
-             @param forEncryption whether or not we are for encryption.
-             @param parameters the parameters required to set up the cipher.
-             @exception ArgumentException if the parameters argument is
-             inappropriate.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.Cast5Engine.EncryptBlock(System.Byte[],System.Int32,System.Byte[],System.Int32)">
-             Encrypt the given input starting at the given offset and place
-             the result in the provided buffer starting at the given offset.
-            
-             @param src        The plaintext buffer
-             @param srcIndex    An offset into src
-             @param dst        The ciphertext buffer
-             @param dstIndex    An offset into dst
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.Cast5Engine.DecryptBlock(System.Byte[],System.Int32,System.Byte[],System.Int32)">
-             Decrypt the given input starting at the given offset and place
-             the result in the provided buffer starting at the given offset.
-            
-             @param src        The plaintext buffer
-             @param srcIndex    An offset into src
-             @param dst        The ciphertext buffer
-             @param dstIndex    An offset into dst
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.Cast5Engine.F1(System.UInt32,System.UInt32,System.Int32)">
-             The first of the three processing functions for the
-             encryption and decryption.
-            
-             @param D            the input to be processed
-             @param Kmi        the mask to be used from Km[n]
-             @param Kri        the rotation value to be used
-            
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.Cast5Engine.F2(System.UInt32,System.UInt32,System.Int32)">
-             The second of the three processing functions for the
-             encryption and decryption.
-            
-             @param D            the input to be processed
-             @param Kmi        the mask to be used from Km[n]
-             @param Kri        the rotation value to be used
-            
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.Cast5Engine.F3(System.UInt32,System.UInt32,System.Int32)">
-             The third of the three processing functions for the
-             encryption and decryption.
-            
-             @param D            the input to be processed
-             @param Kmi        the mask to be used from Km[n]
-             @param Kri        the rotation value to be used
-            
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.Cast5Engine.CAST_Encipher(System.UInt32,System.UInt32,System.UInt32[])">
-             Does the 16 rounds to encrypt the block.
-            
-             @param L0    the LH-32bits of the plaintext block
-             @param R0    the RH-32bits of the plaintext block
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Engines.Cast6Engine">
-             A class that provides CAST6 key encryption operations,
-             such as encoding data and generating keys.
-            
-             All the algorithms herein are from the Internet RFC
-            
-             RFC2612 - CAST6 (128bit block, 128-256bit key)
-            
-             and implement a simplified cryptography interface.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.Cast6Engine.EncryptBlock(System.Byte[],System.Int32,System.Byte[],System.Int32)">
-             Encrypt the given input starting at the given offset and place
-             the result in the provided buffer starting at the given offset.
-            
-             @param src        The plaintext buffer
-             @param srcIndex    An offset into src
-             @param dst        The ciphertext buffer
-             @param dstIndex    An offset into dst
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.Cast6Engine.DecryptBlock(System.Byte[],System.Int32,System.Byte[],System.Int32)">
-             Decrypt the given input starting at the given offset and place
-             the result in the provided buffer starting at the given offset.
-            
-             @param src        The plaintext buffer
-             @param srcIndex    An offset into src
-             @param dst        The ciphertext buffer
-             @param dstIndex    An offset into dst
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.Cast6Engine.CAST_Encipher(System.UInt32,System.UInt32,System.UInt32,System.UInt32,System.UInt32[])">
-             Does the 12 quad rounds rounds to encrypt the block.
-            
-             @param A    the 00-31  bits of the plaintext block
-             @param B    the 32-63  bits of the plaintext block
-             @param C    the 64-95  bits of the plaintext block
-             @param D    the 96-127 bits of the plaintext block
-             @param result the resulting ciphertext
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.Cast6Engine.CAST_Decipher(System.UInt32,System.UInt32,System.UInt32,System.UInt32,System.UInt32[])">
-             Does the 12 quad rounds rounds to decrypt the block.
-            
-             @param A    the 00-31  bits of the ciphertext block
-             @param B    the 32-63  bits of the ciphertext block
-             @param C    the 64-95  bits of the ciphertext block
-             @param D    the 96-127 bits of the ciphertext block
-             @param result the resulting plaintext
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Engines.DesEdeEngine">
-            <remarks>A class that provides a basic DESede (or Triple DES) engine.</remarks>
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Engines.DesEngine">
-            <remarks>A class that provides a basic DES engine.</remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.DesEngine.Init(System.Boolean,Org.BouncyCastle.Crypto.ICipherParameters)">
-             initialise a DES cipher.
-            
-             @param forEncryption whether or not we are for encryption.
-             @param parameters the parameters required to set up the cipher.
-             @exception ArgumentException if the parameters argument is
-             inappropriate.
-        </member>
-        <member name="F:Org.BouncyCastle.Crypto.Engines.DesEngine.bytebit">
-            what follows is mainly taken from "Applied Cryptography", by
-            Bruce Schneier, however it also bears great resemblance to Richard
-            Outerbridge's D3DES...
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.DesEngine.GenerateWorkingKey(System.Boolean,System.Byte[])">
-             Generate an integer based working key based on our secret key
-             and what we processing we are planning to do.
-            
-             Acknowledgements for this routine go to James Gillogly and Phil Karn.
-                     (whoever, and wherever they are!).
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.DesEngine.DesFunc(System.Int32[],System.Byte[],System.Int32,System.Byte[],System.Int32)">
-            the DES engine.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.DesEdeEngine.Init(System.Boolean,Org.BouncyCastle.Crypto.ICipherParameters)">
-             initialise a DESede cipher.
-            
-             @param forEncryption whether or not we are for encryption.
-             @param parameters the parameters required to set up the cipher.
-             @exception ArgumentException if the parameters argument is
-             inappropriate.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Engines.DesEdeWrapEngine">
-                * Wrap keys according to
-                * <a href="http://www.ietf.org/internet-drafts/draft-ietf-smime-key-wrap-01.txt">
-                * draft-ietf-smime-key-wrap-01.txt</a>.
-                * <p>
-                * Note:
-                * <ul>
-                * <li>this is based on a draft, and as such is subject to change - don't use this class for anything requiring long term storage.</li>
-                * <li>if you are using this to wrap triple-des keys you need to set the
-                * parity bits on the key and, if it's a two-key triple-des key, pad it
-                * yourself.</li>
-                * </ul>
-            	* </p>
-        </member>
-        <member name="F:Org.BouncyCastle.Crypto.Engines.DesEdeWrapEngine.engine">
-            Field engine 
-        </member>
-        <member name="F:Org.BouncyCastle.Crypto.Engines.DesEdeWrapEngine.param">
-            Field param 
-        </member>
-        <member name="F:Org.BouncyCastle.Crypto.Engines.DesEdeWrapEngine.paramPlusIV">
-            Field paramPlusIV 
-        </member>
-        <member name="F:Org.BouncyCastle.Crypto.Engines.DesEdeWrapEngine.iv">
-            Field iv 
-        </member>
-        <member name="F:Org.BouncyCastle.Crypto.Engines.DesEdeWrapEngine.forWrapping">
-            Field forWrapping 
-        </member>
-        <member name="F:Org.BouncyCastle.Crypto.Engines.DesEdeWrapEngine.IV2">
-            Field IV2           
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.DesEdeWrapEngine.Init(System.Boolean,Org.BouncyCastle.Crypto.ICipherParameters)">
-             Method init
-            
-             @param forWrapping
-             @param param
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.DesEdeWrapEngine.Wrap(System.Byte[],System.Int32,System.Int32)">
-             Method wrap
-            
-             @param in
-             @param inOff
-             @param inLen
-             @return
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.DesEdeWrapEngine.Unwrap(System.Byte[],System.Int32,System.Int32)">
-             Method unwrap
-            
-             @param in
-             @param inOff
-             @param inLen
-             @return
-             @throws InvalidCipherTextException
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.DesEdeWrapEngine.CalculateCmsKeyChecksum(System.Byte[])">
-             Some key wrap algorithms make use of the Key Checksum defined
-             in CMS [CMS-Algorithms]. This is used to provide an integrity
-             check value for the key being wrapped. The algorithm is
-            
-             - Compute the 20 octet SHA-1 hash on the key being wrapped.
-             - Use the first 8 octets of this hash as the checksum value.
-            
-             @param key
-             @return
-             @throws Exception
-             @see http://www.w3.org/TR/xmlenc-core/#sec-CMSKeyChecksum
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.DesEdeWrapEngine.CheckCmsKeyChecksum(System.Byte[],System.Byte[])">
-            @param key
-            @param checksum
-            @return
-            @see http://www.w3.org/TR/xmlenc-core/#sec-CMSKeyChecksum
-        </member>
-        <member name="P:Org.BouncyCastle.Crypto.Engines.DesEdeWrapEngine.AlgorithmName">
-             Method GetAlgorithmName
-            
-             @return
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Engines.ElGamalEngine">
-            this does your basic ElGamal algorithm.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.ElGamalEngine.Init(System.Boolean,Org.BouncyCastle.Crypto.ICipherParameters)">
-             initialise the ElGamal engine.
-            
-             @param forEncryption true if we are encrypting, false otherwise.
-             @param param the necessary ElGamal key parameters.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.ElGamalEngine.GetInputBlockSize">
-             Return the maximum size for an input block to this engine.
-             For ElGamal this is always one byte less than the size of P on
-             encryption, and twice the length as the size of P on decryption.
-            
-             @return maximum size for an input block.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.ElGamalEngine.GetOutputBlockSize">
-             Return the maximum size for an output block to this engine.
-             For ElGamal this is always one byte less than the size of P on
-             decryption, and twice the length as the size of P on encryption.
-            
-             @return maximum size for an output block.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.ElGamalEngine.ProcessBlock(System.Byte[],System.Int32,System.Int32)">
-             Process a single block using the basic ElGamal algorithm.
-            
-             @param in the input array.
-             @param inOff the offset into the input buffer where the data starts.
-             @param length the length of the data to be processed.
-             @return the result of the ElGamal process.
-             @exception DataLengthException the input block is too large.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Engines.Gost28147Engine">
-            implementation of GOST 28147-89
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.Gost28147Engine.#ctor">
-            standard constructor.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.Gost28147Engine.Init(System.Boolean,Org.BouncyCastle.Crypto.ICipherParameters)">
-             initialise an Gost28147 cipher.
-            
-             @param forEncryption whether or not we are for encryption.
-             @param parameters the parameters required to set up the cipher.
-             @exception ArgumentException if the parameters argument is inappropriate.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.Gost28147Engine.GetSBox(System.String)">
-            Return the S-Box associated with SBoxName
-            @param sBoxName name of the S-Box
-            @return byte array representing the S-Box
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Engines.HC128Engine">
-             HC-128 is a software-efficient stream cipher created by Hongjun Wu. It
-             generates keystream from a 128-bit secret key and a 128-bit initialization
-             vector.
-             <p>
-             http://www.ecrypt.eu.org/stream/p3ciphers/hc/hc128_p3.pdf
-             </p><p>
-             It is a third phase candidate in the eStream contest, and is patent-free.
-             No attacks are known as of today (April 2007). See
-            
-             http://www.ecrypt.eu.org/stream/hcp3.html
-             </p>
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.IStreamCipher">
-            <summary>The interface stream ciphers conform to.</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.IStreamCipher.Init(System.Boolean,Org.BouncyCastle.Crypto.ICipherParameters)">
-            <summary>Initialise the cipher.</summary>
-            <param name="forEncryption">If true the cipher is initialised for encryption,
-            if false for decryption.</param>
-            <param name="parameters">The key and other data required by the cipher.</param>
-            <exception cref="T:System.ArgumentException">
-            If the parameters argument is inappropriate.
-            </exception>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.IStreamCipher.ReturnByte(System.Byte)">
-            <summary>encrypt/decrypt a single byte returning the result.</summary>
-            <param name="input">the byte to be processed.</param>
-            <returns>the result of processing the input byte.</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.IStreamCipher.ProcessBytes(System.Byte[],System.Int32,System.Int32,System.Byte[],System.Int32)">
-            <summary>
-            Process a block of bytes from <c>input</c> putting the result into <c>output</c>.
-            </summary>
-            <param name="input">The input byte array.</param>
-            <param name="inOff">
-            The offset into <c>input</c> where the data to be processed starts.
-            </param>
-            <param name="length">The number of bytes to be processed.</param>
-            <param name="output">The output buffer the processed bytes go into.</param>
-            <param name="outOff">
-            The offset into <c>output</c> the processed data starts at.
-            </param>
-            <exception cref="T:Org.BouncyCastle.Crypto.DataLengthException">If the output buffer is too small.</exception>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.IStreamCipher.Reset">
-            <summary>
-            Reset the cipher to the same state as it was after the last init (if there was one).
-            </summary>
-        </member>
-        <member name="P:Org.BouncyCastle.Crypto.IStreamCipher.AlgorithmName">
-            <summary>The name of the algorithm this cipher implements.</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.HC128Engine.Init(System.Boolean,Org.BouncyCastle.Crypto.ICipherParameters)">
-             Initialise a HC-128 cipher.
-            
-             @param forEncryption whether or not we are for encryption. Irrelevant, as
-                                  encryption and decryption are the same.
-             @param params        the parameters required to set up the cipher.
-             @throws ArgumentException if the params argument is
-                                              inappropriate (ie. the key is not 128 bit long).
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Engines.HC256Engine">
-            HC-256 is a software-efficient stream cipher created by Hongjun Wu. It 
-            generates keystream from a 256-bit secret key and a 256-bit initialization 
-            vector.
-            <p>
-            http://www.ecrypt.eu.org/stream/p3ciphers/hc/hc256_p3.pdf
-            </p><p>
-            Its brother, HC-128, is a third phase candidate in the eStream contest.
-            The algorithm is patent-free. No attacks are known as of today (April 2007). 
-            See
-            
-            http://www.ecrypt.eu.org/stream/hcp3.html
-            </p>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.HC256Engine.Init(System.Boolean,Org.BouncyCastle.Crypto.ICipherParameters)">
-             Initialise a HC-256 cipher.
-            
-             @param forEncryption whether or not we are for encryption. Irrelevant, as
-                                  encryption and decryption are the same.
-             @param params        the parameters required to set up the cipher.
-             @throws ArgumentException if the params argument is
-                                              inappropriate (ie. the key is not 256 bit long).
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Engines.IesEngine">
-            support class for constructing intergrated encryption ciphers
-            for doing basic message exchanges on top of key agreement ciphers
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.IesEngine.#ctor(Org.BouncyCastle.Crypto.IBasicAgreement,Org.BouncyCastle.Crypto.IDerivationFunction,Org.BouncyCastle.Crypto.IMac)">
-             set up for use with stream mode, where the key derivation function
-             is used to provide a stream of bytes to xor with the message.
-            
-             @param agree the key agreement used as the basis for the encryption
-             @param kdf the key derivation function used for byte generation
-             @param mac the message authentication code generator for the message
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.IesEngine.#ctor(Org.BouncyCastle.Crypto.IBasicAgreement,Org.BouncyCastle.Crypto.IDerivationFunction,Org.BouncyCastle.Crypto.IMac,Org.BouncyCastle.Crypto.BufferedBlockCipher)">
-             set up for use in conjunction with a block cipher to handle the
-             message.
-            
-             @param agree the key agreement used as the basis for the encryption
-             @param kdf the key derivation function used for byte generation
-             @param mac the message authentication code generator for the message
-             @param cipher the cipher to used for encrypting the message
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.IesEngine.Init(System.Boolean,Org.BouncyCastle.Crypto.ICipherParameters,Org.BouncyCastle.Crypto.ICipherParameters,Org.BouncyCastle.Crypto.ICipherParameters)">
-             Initialise the encryptor.
-            
-             @param forEncryption whether or not this is encryption/decryption.
-             @param privParam our private key parameters
-             @param pubParam the recipient's/sender's public key parameters
-             @param param encoding and derivation parameters.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Engines.IsaacEngine">
-            Implementation of Bob Jenkin's ISAAC (Indirection Shift Accumulate Add and Count).
-            see: http://www.burtleburtle.net/bob/rand/isaacafa.html
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.IsaacEngine.Init(System.Boolean,Org.BouncyCastle.Crypto.ICipherParameters)">
-             initialise an ISAAC cipher.
-            
-             @param forEncryption whether or not we are for encryption.
-             @param params the parameters required to set up the cipher.
-             @exception ArgumentException if the params argument is
-             inappropriate.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Engines.NaccacheSternEngine">
-            NaccacheStern Engine. For details on this cipher, please see
-            http://www.gemplus.com/smart/rd/publications/pdf/NS98pkcs.pdf
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.NaccacheSternEngine.Init(System.Boolean,Org.BouncyCastle.Crypto.ICipherParameters)">
-             Initializes this algorithm. Must be called before all other Functions.
-            
-             @see org.bouncycastle.crypto.AsymmetricBlockCipher#init(bool,
-                  org.bouncycastle.crypto.CipherParameters)
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.NaccacheSternEngine.GetInputBlockSize">
-             Returns the input block size of this algorithm.
-            
-             @see org.bouncycastle.crypto.AsymmetricBlockCipher#GetInputBlockSize()
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.NaccacheSternEngine.GetOutputBlockSize">
-             Returns the output block size of this algorithm.
-            
-             @see org.bouncycastle.crypto.AsymmetricBlockCipher#GetOutputBlockSize()
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.NaccacheSternEngine.ProcessBlock(System.Byte[],System.Int32,System.Int32)">
-             Process a single Block using the Naccache-Stern algorithm.
-            
-             @see org.bouncycastle.crypto.AsymmetricBlockCipher#ProcessBlock(byte[],
-                  int, int)
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.NaccacheSternEngine.Encrypt(Org.BouncyCastle.Math.BigInteger)">
-             Encrypts a BigInteger aka Plaintext with the public key.
-            
-             @param plain
-                        The BigInteger to encrypt
-             @return The byte[] representation of the encrypted BigInteger (i.e.
-                     crypted.toByteArray())
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.NaccacheSternEngine.AddCryptedBlocks(System.Byte[],System.Byte[])">
-             Adds the contents of two encrypted blocks mod sigma
-            
-             @param block1
-                        the first encrypted block
-             @param block2
-                        the second encrypted block
-             @return encrypt((block1 + block2) mod sigma)
-             @throws InvalidCipherTextException
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.NaccacheSternEngine.ProcessData(System.Byte[])">
-             Convenience Method for data exchange with the cipher.
-            
-             Determines blocksize and splits data to blocksize.
-            
-             @param data the data to be processed
-             @return the data after it went through the NaccacheSternEngine.
-             @throws InvalidCipherTextException
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.NaccacheSternEngine.chineseRemainder(System.Collections.IList,System.Collections.IList)">
-             Computes the integer x that is expressed through the given primes and the
-             congruences with the chinese remainder theorem (CRT).
-            
-             @param congruences
-                        the congruences c_i
-             @param primes
-                        the primes p_i
-             @return an integer x for that x % p_i == c_i
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Engines.NoekeonEngine">
-            A Noekeon engine, using direct-key mode.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.NoekeonEngine.#ctor">
-            Create an instance of the Noekeon encryption algorithm
-            and set some defaults
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.NoekeonEngine.Init(System.Boolean,Org.BouncyCastle.Crypto.ICipherParameters)">
-             initialise
-            
-             @param forEncryption whether or not we are for encryption.
-             @param params the parameters required to set up the cipher.
-             @exception ArgumentException if the params argument is
-             inappropriate.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.NoekeonEngine.setKey(System.Byte[])">
-             Re-key the cipher.
-            
-             @param  key  the key to be used
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Engines.NullEngine">
-            The no-op engine that just copies bytes through, irrespective of whether encrypting and decrypting.
-            Provided for the sake of completeness.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Engines.RC2Engine">
-            an implementation of RC2 as described in RFC 2268
-                 "A Description of the RC2(r) Encryption Algorithm" R. Rivest.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.RC2Engine.Init(System.Boolean,Org.BouncyCastle.Crypto.ICipherParameters)">
-             initialise a RC2 cipher.
-            
-             @param forEncryption whether or not we are for encryption.
-             @param parameters the parameters required to set up the cipher.
-             @exception ArgumentException if the parameters argument is
-             inappropriate.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.RC2Engine.RotateWordLeft(System.Int32,System.Int32)">
-            return the result rotating the 16 bit number in x left by y
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Engines.RC2WrapEngine">
-            Wrap keys according to RFC 3217 - RC2 mechanism
-        </member>
-        <member name="F:Org.BouncyCastle.Crypto.Engines.RC2WrapEngine.engine">
-            Field engine 
-        </member>
-        <member name="F:Org.BouncyCastle.Crypto.Engines.RC2WrapEngine.parameters">
-            Field param 
-        </member>
-        <member name="F:Org.BouncyCastle.Crypto.Engines.RC2WrapEngine.paramPlusIV">
-            Field paramPlusIV 
-        </member>
-        <member name="F:Org.BouncyCastle.Crypto.Engines.RC2WrapEngine.iv">
-            Field iv 
-        </member>
-        <member name="F:Org.BouncyCastle.Crypto.Engines.RC2WrapEngine.forWrapping">
-            Field forWrapping 
-        </member>
-        <member name="F:Org.BouncyCastle.Crypto.Engines.RC2WrapEngine.IV2">
-            Field IV2           
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.RC2WrapEngine.Init(System.Boolean,Org.BouncyCastle.Crypto.ICipherParameters)">
-             Method init
-            
-             @param forWrapping
-             @param param
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.RC2WrapEngine.Wrap(System.Byte[],System.Int32,System.Int32)">
-             Method wrap
-            
-             @param in
-             @param inOff
-             @param inLen
-             @return
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.RC2WrapEngine.Unwrap(System.Byte[],System.Int32,System.Int32)">
-             Method unwrap
-            
-             @param in
-             @param inOff
-             @param inLen
-             @return
-             @throws InvalidCipherTextException
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.RC2WrapEngine.CalculateCmsKeyChecksum(System.Byte[])">
-             Some key wrap algorithms make use of the Key Checksum defined
-             in CMS [CMS-Algorithms]. This is used to provide an integrity
-             check value for the key being wrapped. The algorithm is
-            
-             - Compute the 20 octet SHA-1 hash on the key being wrapped.
-             - Use the first 8 octets of this hash as the checksum value.
-            
-             @param key
-             @return
-             @throws Exception
-             @see http://www.w3.org/TR/xmlenc-core/#sec-CMSKeyChecksum
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.RC2WrapEngine.CheckCmsKeyChecksum(System.Byte[],System.Byte[])">
-            @param key
-            @param checksum
-            @return
-            @see http://www.w3.org/TR/xmlenc-core/#sec-CMSKeyChecksum
-        </member>
-        <member name="P:Org.BouncyCastle.Crypto.Engines.RC2WrapEngine.AlgorithmName">
-             Method GetAlgorithmName
-            
-             @return
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.RC4Engine.Init(System.Boolean,Org.BouncyCastle.Crypto.ICipherParameters)">
-             initialise a RC4 cipher.
-            
-             @param forEncryption whether or not we are for encryption.
-             @param parameters the parameters required to set up the cipher.
-             @exception ArgumentException if the parameters argument is
-             inappropriate.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Engines.RC532Engine">
-            The specification for RC5 came from the <code>RC5 Encryption Algorithm</code>
-            publication in RSA CryptoBytes, Spring of 1995.
-            <em>http://www.rsasecurity.com/rsalabs/cryptobytes</em>.
-            <p>
-            This implementation has a word size of 32 bits.</p>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.RC532Engine.#ctor">
-            Create an instance of the RC5 encryption algorithm
-            and set some defaults
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.RC532Engine.Init(System.Boolean,Org.BouncyCastle.Crypto.ICipherParameters)">
-             initialise a RC5-32 cipher.
-            
-             @param forEncryption whether or not we are for encryption.
-             @param parameters the parameters required to set up the cipher.
-             @exception ArgumentException if the parameters argument is
-             inappropriate.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.RC532Engine.SetKey(System.Byte[])">
-             Re-key the cipher.
-            
-             @param  key  the key to be used
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.RC532Engine.EncryptBlock(System.Byte[],System.Int32,System.Byte[],System.Int32)">
-             Encrypt the given block starting at the given offset and place
-             the result in the provided buffer starting at the given offset.
-            
-             @param  in     in byte buffer containing data to encrypt
-             @param  inOff  offset into src buffer
-             @param  out     out buffer where encrypted data is written
-             @param  outOff  offset into out buffer
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.RC532Engine.RotateLeft(System.Int32,System.Int32)">
-             Perform a left "spin" of the word. The rotation of the given
-             word <em>x</em> is rotated left by <em>y</em> bits.
-             Only the <em>lg(32)</em> low-order bits of <em>y</em>
-             are used to determine the rotation amount. Here it is
-             assumed that the wordsize used is a power of 2.
-            
-             @param  x  word to rotate
-             @param  y    number of bits to rotate % 32
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.RC532Engine.RotateRight(System.Int32,System.Int32)">
-             Perform a right "spin" of the word. The rotation of the given
-             word <em>x</em> is rotated left by <em>y</em> bits.
-             Only the <em>lg(32)</em> low-order bits of <em>y</em>
-             are used to determine the rotation amount. Here it is
-             assumed that the wordsize used is a power of 2.
-            
-             @param  x  word to rotate
-             @param  y    number of bits to rotate % 32
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Engines.RC564Engine">
-            The specification for RC5 came from the <code>RC5 Encryption Algorithm</code>
-            publication in RSA CryptoBytes, Spring of 1995.
-            <em>http://www.rsasecurity.com/rsalabs/cryptobytes</em>.
-            <p>
-            This implementation is set to work with a 64 bit word size.</p>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.RC564Engine.#ctor">
-            Create an instance of the RC5 encryption algorithm
-            and set some defaults
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.RC564Engine.Init(System.Boolean,Org.BouncyCastle.Crypto.ICipherParameters)">
-             initialise a RC5-64 cipher.
-            
-             @param forEncryption whether or not we are for encryption.
-             @param parameters the parameters required to set up the cipher.
-             @exception ArgumentException if the parameters argument is
-             inappropriate.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.RC564Engine.SetKey(System.Byte[])">
-             Re-key the cipher.
-            
-             @param  key  the key to be used
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.RC564Engine.EncryptBlock(System.Byte[],System.Int32,System.Byte[],System.Int32)">
-             Encrypt the given block starting at the given offset and place
-             the result in the provided buffer starting at the given offset.
-            
-             @param  in      in byte buffer containing data to encrypt
-             @param  inOff   offset into src buffer
-             @param  out     out buffer where encrypted data is written
-             @param  outOff  offset into out buffer
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.RC564Engine.RotateLeft(System.Int64,System.Int64)">
-             Perform a left "spin" of the word. The rotation of the given
-             word <em>x</em> is rotated left by <em>y</em> bits.
-             Only the <em>lg(wordSize)</em> low-order bits of <em>y</em>
-             are used to determine the rotation amount. Here it is
-             assumed that the wordsize used is a power of 2.
-            
-             @param  x  word to rotate
-             @param  y    number of bits to rotate % wordSize
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.RC564Engine.RotateRight(System.Int64,System.Int64)">
-             Perform a right "spin" of the word. The rotation of the given
-             word <em>x</em> is rotated left by <em>y</em> bits.
-             Only the <em>lg(wordSize)</em> low-order bits of <em>y</em>
-             are used to determine the rotation amount. Here it is
-             assumed that the wordsize used is a power of 2.
-            
-             @param x word to rotate
-             @param y number of bits to rotate % wordSize
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Engines.RC6Engine">
-            An RC6 engine.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.RC6Engine.#ctor">
-            Create an instance of the RC6 encryption algorithm
-            and set some defaults
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.RC6Engine.Init(System.Boolean,Org.BouncyCastle.Crypto.ICipherParameters)">
-             initialise a RC5-32 cipher.
-            
-             @param forEncryption whether or not we are for encryption.
-             @param parameters the parameters required to set up the cipher.
-             @exception ArgumentException if the parameters argument is
-             inappropriate.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.RC6Engine.SetKey(System.Byte[])">
-             Re-key the cipher.
-            
-             @param inKey the key to be used
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.RC6Engine.RotateLeft(System.Int32,System.Int32)">
-             Perform a left "spin" of the word. The rotation of the given
-             word <em>x</em> is rotated left by <em>y</em> bits.
-             Only the <em>lg(wordSize)</em> low-order bits of <em>y</em>
-             are used to determine the rotation amount. Here it is
-             assumed that the wordsize used is a power of 2.
-            
-             @param x word to rotate
-             @param y number of bits to rotate % wordSize
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.RC6Engine.RotateRight(System.Int32,System.Int32)">
-             Perform a right "spin" of the word. The rotation of the given
-             word <em>x</em> is rotated left by <em>y</em> bits.
-             Only the <em>lg(wordSize)</em> low-order bits of <em>y</em>
-             are used to determine the rotation amount. Here it is
-             assumed that the wordsize used is a power of 2.
-            
-             @param x word to rotate
-             @param y number of bits to rotate % wordSize
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Engines.Rfc3211WrapEngine">
-            an implementation of the RFC 3211 Key Wrap
-            Specification.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Engines.RijndaelEngine">
-            an implementation of Rijndael, based on the documentation and reference implementation
-            by Paulo Barreto, Vincent Rijmen, for v2.0 August '99.
-            <p>
-            Note: this implementation is based on information prior to readonly NIST publication.
-            </p>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.RijndaelEngine.Mul0x2(System.Int32)">
-            multiply two elements of GF(2^m)
-            needed for MixColumn and InvMixColumn
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.RijndaelEngine.KeyAddition(System.Int64[])">
-            xor corresponding text input and round key input bytes
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.RijndaelEngine.ShiftRow(System.Byte[])">
-            Row 0 remains unchanged
-            The other three rows are shifted a variable amount
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.RijndaelEngine.Substitution(System.Byte[])">
-            Replace every byte of the input by the byte at that place
-            in the nonlinear S-box
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.RijndaelEngine.MixColumn">
-            Mix the bytes of every column in a linear way
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.RijndaelEngine.InvMixColumn">
-            Mix the bytes of every column in a linear way
-            This is the opposite operation of Mixcolumn
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.RijndaelEngine.GenerateWorkingKey(System.Byte[])">
-            Calculate the necessary round keys
-            The number of calculations depends on keyBits and blockBits
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.RijndaelEngine.#ctor">
-            default constructor - 128 bit block size.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.RijndaelEngine.#ctor(System.Int32)">
-             basic constructor - set the cipher up for a given blocksize
-            
-             @param blocksize the blocksize in bits, must be 128, 192, or 256.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.RijndaelEngine.Init(System.Boolean,Org.BouncyCastle.Crypto.ICipherParameters)">
-             initialise a Rijndael cipher.
-            
-             @param forEncryption whether or not we are for encryption.
-             @param parameters the parameters required to set up the cipher.
-             @exception ArgumentException if the parameters argument is
-             inappropriate.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Engines.RsaBlindedEngine">
-            this does your basic RSA algorithm with blinding
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.RsaBlindedEngine.Init(System.Boolean,Org.BouncyCastle.Crypto.ICipherParameters)">
-             initialise the RSA engine.
-            
-             @param forEncryption true if we are encrypting, false otherwise.
-             @param param the necessary RSA key parameters.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.RsaBlindedEngine.GetInputBlockSize">
-             Return the maximum size for an input block to this engine.
-             For RSA this is always one byte less than the key size on
-             encryption, and the same length as the key size on decryption.
-            
-             @return maximum size for an input block.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.RsaBlindedEngine.GetOutputBlockSize">
-             Return the maximum size for an output block to this engine.
-             For RSA this is always one byte less than the key size on
-             decryption, and the same length as the key size on encryption.
-            
-             @return maximum size for an output block.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.RsaBlindedEngine.ProcessBlock(System.Byte[],System.Int32,System.Int32)">
-             Process a single block using the basic RSA algorithm.
-            
-             @param inBuf the input array.
-             @param inOff the offset into the input buffer where the data starts.
-             @param inLen the length of the data to be processed.
-             @return the result of the RSA process.
-             @exception DataLengthException the input block is too large.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Engines.RsaBlindingEngine">
-            This does your basic RSA Chaum's blinding and unblinding as outlined in
-            "Handbook of Applied Cryptography", page 475. You need to use this if you are
-            trying to get another party to generate signatures without them being aware
-            of the message they are signing.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.RsaBlindingEngine.Init(System.Boolean,Org.BouncyCastle.Crypto.ICipherParameters)">
-             Initialise the blinding engine.
-            
-             @param forEncryption true if we are encrypting (blinding), false otherwise.
-             @param param         the necessary RSA key parameters.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.RsaBlindingEngine.GetInputBlockSize">
-             Return the maximum size for an input block to this engine.
-             For RSA this is always one byte less than the key size on
-             encryption, and the same length as the key size on decryption.
-            
-             @return maximum size for an input block.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.RsaBlindingEngine.GetOutputBlockSize">
-             Return the maximum size for an output block to this engine.
-             For RSA this is always one byte less than the key size on
-             decryption, and the same length as the key size on encryption.
-            
-             @return maximum size for an output block.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.RsaBlindingEngine.ProcessBlock(System.Byte[],System.Int32,System.Int32)">
-             Process a single block using the RSA blinding algorithm.
-            
-             @param in    the input array.
-             @param inOff the offset into the input buffer where the data starts.
-             @param inLen the length of the data to be processed.
-             @return the result of the RSA process.
-             @throws DataLengthException the input block is too large.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Engines.RsaCoreEngine">
-            this does your basic RSA algorithm.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.RsaCoreEngine.Init(System.Boolean,Org.BouncyCastle.Crypto.ICipherParameters)">
-             initialise the RSA engine.
-            
-             @param forEncryption true if we are encrypting, false otherwise.
-             @param param the necessary RSA key parameters.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.RsaCoreEngine.GetInputBlockSize">
-             Return the maximum size for an input block to this engine.
-             For RSA this is always one byte less than the key size on
-             encryption, and the same length as the key size on decryption.
-            
-             @return maximum size for an input block.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.RsaCoreEngine.GetOutputBlockSize">
-             Return the maximum size for an output block to this engine.
-             For RSA this is always one byte less than the key size on
-             decryption, and the same length as the key size on encryption.
-            
-             @return maximum size for an output block.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Engines.RsaEngine">
-            this does your basic RSA algorithm.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.RsaEngine.Init(System.Boolean,Org.BouncyCastle.Crypto.ICipherParameters)">
-             initialise the RSA engine.
-            
-             @param forEncryption true if we are encrypting, false otherwise.
-             @param param the necessary RSA key parameters.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.RsaEngine.GetInputBlockSize">
-             Return the maximum size for an input block to this engine.
-             For RSA this is always one byte less than the key size on
-             encryption, and the same length as the key size on decryption.
-            
-             @return maximum size for an input block.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.RsaEngine.GetOutputBlockSize">
-             Return the maximum size for an output block to this engine.
-             For RSA this is always one byte less than the key size on
-             decryption, and the same length as the key size on encryption.
-            
-             @return maximum size for an output block.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.RsaEngine.ProcessBlock(System.Byte[],System.Int32,System.Int32)">
-             Process a single block using the basic RSA algorithm.
-            
-             @param inBuf the input array.
-             @param inOff the offset into the input buffer where the data starts.
-             @param inLen the length of the data to be processed.
-             @return the result of the RSA process.
-             @exception DataLengthException the input block is too large.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Engines.Salsa20Engine">
-            Implementation of Daniel J. Bernstein's Salsa20 stream cipher, Snuffle 2005
-        </member>
-        <member name="F:Org.BouncyCastle.Crypto.Engines.Salsa20Engine.StateSize">
-            Constants 
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.Salsa20Engine.Init(System.Boolean,Org.BouncyCastle.Crypto.ICipherParameters)">
-             initialise a Salsa20 cipher.
-            
-             @param forEncryption whether or not we are for encryption.
-             @param params the parameters required to set up the cipher.
-             @exception ArgumentException if the params argument is
-             inappropriate.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Engines.SeedEngine">
-            Implementation of the SEED algorithm as described in RFC 4009
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Engines.SeedWrapEngine">
-            <remarks>
-            An implementation of the SEED key wrapper based on RFC 4010/RFC 3394.
-            <p/>
-            For further details see: <a href="http://www.ietf.org/rfc/rfc4010.txt">http://www.ietf.org/rfc/rfc4010.txt</a>.
-            </remarks>
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Engines.SerpentEngine">
-                * Serpent is a 128-bit 32-round block cipher with variable key lengths,
-                * including 128, 192 and 256 bit keys conjectured to be at least as
-                * secure as three-key triple-DES.
-                * <p>
-                * Serpent was designed by Ross Anderson, Eli Biham and Lars Knudsen as a
-                * candidate algorithm for the NIST AES Quest.>
-            	* </p>
-                * <p>
-                * For full details see the <a href="http://www.cl.cam.ac.uk/~rja14/serpent.html">The Serpent home page</a>
-            	* </p>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.SerpentEngine.Init(System.Boolean,Org.BouncyCastle.Crypto.ICipherParameters)">
-             initialise a Serpent cipher.
-            
-             @param forEncryption whether or not we are for encryption.
-             @param parameters the parameters required to set up the cipher.
-             @exception ArgumentException if the parameters argument is
-             inappropriate.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.SerpentEngine.ProcessBlock(System.Byte[],System.Int32,System.Byte[],System.Int32)">
-             Process one block of input from the array in and write it to
-             the out array.
-            
-             @param in the array containing the input data.
-             @param inOff offset into the in array the data starts at.
-             @param out the array the output data will be copied into.
-             @param outOff the offset into the out array the output will start at.
-             @exception DataLengthException if there isn't enough data in in, or
-             space in out.
-             @exception InvalidOperationException if the cipher isn't initialised.
-             @return the number of bytes processed and produced.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.SerpentEngine.MakeWorkingKey(System.Byte[])">
-             Expand a user-supplied key material into a session key.
-            
-             @param key  The user-key bytes (multiples of 4) to use.
-             @exception ArgumentException
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.SerpentEngine.EncryptBlock(System.Byte[],System.Int32,System.Byte[],System.Int32)">
-             Encrypt one block of plaintext.
-            
-             @param in the array containing the input data.
-             @param inOff offset into the in array the data starts at.
-             @param out the array the output data will be copied into.
-             @param outOff the offset into the out array the output will start at.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.SerpentEngine.DecryptBlock(System.Byte[],System.Int32,System.Byte[],System.Int32)">
-             Decrypt one block of ciphertext.
-            
-             @param in the array containing the input data.
-             @param inOff offset into the in array the data starts at.
-             @param out the array the output data will be copied into.
-             @param outOff the offset into the out array the output will start at.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.SerpentEngine.Sb0(System.Int32,System.Int32,System.Int32,System.Int32)">
-            S0 - { 3, 8,15, 1,10, 6, 5,11,14,13, 4, 2, 7, 0, 9,12 } - 15 terms.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.SerpentEngine.Ib0(System.Int32,System.Int32,System.Int32,System.Int32)">
-            InvSO - {13, 3,11, 0,10, 6, 5,12, 1,14, 4, 7,15, 9, 8, 2 } - 15 terms.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.SerpentEngine.Sb1(System.Int32,System.Int32,System.Int32,System.Int32)">
-            S1 - {15,12, 2, 7, 9, 0, 5,10, 1,11,14, 8, 6,13, 3, 4 } - 14 terms.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.SerpentEngine.Ib1(System.Int32,System.Int32,System.Int32,System.Int32)">
-            InvS1 - { 5, 8, 2,14,15, 6,12, 3,11, 4, 7, 9, 1,13,10, 0 } - 14 steps.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.SerpentEngine.Sb2(System.Int32,System.Int32,System.Int32,System.Int32)">
-            S2 - { 8, 6, 7, 9, 3,12,10,15,13, 1,14, 4, 0,11, 5, 2 } - 16 terms.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.SerpentEngine.Ib2(System.Int32,System.Int32,System.Int32,System.Int32)">
-            InvS2 - {12, 9,15, 4,11,14, 1, 2, 0, 3, 6,13, 5, 8,10, 7 } - 16 steps.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.SerpentEngine.Sb3(System.Int32,System.Int32,System.Int32,System.Int32)">
-            S3 - { 0,15,11, 8,12, 9, 6, 3,13, 1, 2, 4,10, 7, 5,14 } - 16 terms.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.SerpentEngine.Ib3(System.Int32,System.Int32,System.Int32,System.Int32)">
-            InvS3 - { 0, 9,10, 7,11,14, 6,13, 3, 5,12, 2, 4, 8,15, 1 } - 15 terms
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.SerpentEngine.Sb4(System.Int32,System.Int32,System.Int32,System.Int32)">
-            S4 - { 1,15, 8, 3,12, 0,11, 6, 2, 5, 4,10, 9,14, 7,13 } - 15 terms.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.SerpentEngine.Ib4(System.Int32,System.Int32,System.Int32,System.Int32)">
-            InvS4 - { 5, 0, 8, 3,10, 9, 7,14, 2,12,11, 6, 4,15,13, 1 } - 15 terms.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.SerpentEngine.Sb5(System.Int32,System.Int32,System.Int32,System.Int32)">
-            S5 - {15, 5, 2,11, 4,10, 9,12, 0, 3,14, 8,13, 6, 7, 1 } - 16 terms.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.SerpentEngine.Ib5(System.Int32,System.Int32,System.Int32,System.Int32)">
-            InvS5 - { 8,15, 2, 9, 4, 1,13,14,11, 6, 5, 3, 7,12,10, 0 } - 16 terms.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.SerpentEngine.Sb6(System.Int32,System.Int32,System.Int32,System.Int32)">
-            S6 - { 7, 2,12, 5, 8, 4, 6,11,14, 9, 1,15,13, 3,10, 0 } - 15 terms.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.SerpentEngine.Ib6(System.Int32,System.Int32,System.Int32,System.Int32)">
-            InvS6 - {15,10, 1,13, 5, 3, 6, 0, 4, 9,14, 7, 2,12, 8,11 } - 15 terms.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.SerpentEngine.Sb7(System.Int32,System.Int32,System.Int32,System.Int32)">
-            S7 - { 1,13,15, 0,14, 8, 2,11, 7, 4,12,10, 9, 3, 5, 6 } - 16 terms.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.SerpentEngine.Ib7(System.Int32,System.Int32,System.Int32,System.Int32)">
-            InvS7 - { 3, 0, 6,13, 9,14,15, 8, 5,12,11, 7,10, 1, 4, 2 } - 17 terms.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.SerpentEngine.LT">
-            Apply the linear transformation to the register set.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.SerpentEngine.InverseLT">
-            Apply the inverse of the linear transformation to the register set.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Engines.SkipjackEngine">
-            a class that provides a basic SKIPJACK engine.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.SkipjackEngine.Init(System.Boolean,Org.BouncyCastle.Crypto.ICipherParameters)">
-             initialise a SKIPJACK cipher.
-            
-             @param forEncryption whether or not we are for encryption.
-             @param parameters the parameters required to set up the cipher.
-             @exception ArgumentException if the parameters argument is
-             inappropriate.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.SkipjackEngine.G(System.Int32,System.Int32)">
-            The G permutation
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.SkipjackEngine.H(System.Int32,System.Int32)">
-            the inverse of the G permutation.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Engines.TeaEngine">
-            An TEA engine.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.TeaEngine.#ctor">
-            Create an instance of the TEA encryption algorithm
-            and set some defaults
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.TeaEngine.Init(System.Boolean,Org.BouncyCastle.Crypto.ICipherParameters)">
-             initialise
-            
-             @param forEncryption whether or not we are for encryption.
-             @param params the parameters required to set up the cipher.
-             @exception ArgumentException if the params argument is
-             inappropriate.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.TeaEngine.setKey(System.Byte[])">
-             Re-key the cipher.
-            
-             @param  key  the key to be used
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Engines.TwofishEngine">
-             A class that provides Twofish encryption operations.
-            
-             This Java implementation is based on the Java reference
-             implementation provided by Bruce Schneier and developed
-             by Raif S. Naffah.
-        </member>
-        <member name="F:Org.BouncyCastle.Crypto.Engines.TwofishEngine.P_00">
-            Define the fixed p0/p1 permutations used in keyed S-box lookup.
-            By changing the following constant definitions, the S-boxes will
-            automatically Get changed in the Twofish engine.
-        </member>
-        <member name="F:Org.BouncyCastle.Crypto.Engines.TwofishEngine.gSubKeys">
-            gSubKeys[] and gSBox[] are eventually used in the
-            encryption and decryption methods.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.TwofishEngine.Init(System.Boolean,Org.BouncyCastle.Crypto.ICipherParameters)">
-             initialise a Twofish cipher.
-            
-             @param forEncryption whether or not we are for encryption.
-             @param parameters the parameters required to set up the cipher.
-             @exception ArgumentException if the parameters argument is
-             inappropriate.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.TwofishEngine.EncryptBlock(System.Byte[],System.Int32,System.Byte[],System.Int32)">
-             Encrypt the given input starting at the given offset and place
-             the result in the provided buffer starting at the given offset.
-             The input will be an exact multiple of our blocksize.
-            
-             encryptBlock uses the pre-calculated gSBox[] and subKey[]
-             arrays.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.TwofishEngine.DecryptBlock(System.Byte[],System.Int32,System.Byte[],System.Int32)">
-            Decrypt the given input starting at the given offset and place
-            the result in the provided buffer starting at the given offset.
-            The input will be an exact multiple of our blocksize.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.TwofishEngine.RS_MDS_Encode(System.Int32,System.Int32)">
-             Use (12, 8) Reed-Solomon code over GF(256) to produce
-             a key S-box 32-bit entity from 2 key material 32-bit
-             entities.
-            
-             @param    k0 first 32-bit entity
-             @param    k1 second 32-bit entity
-             @return     Remainder polynomial Generated using RS code
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.TwofishEngine.RS_rem(System.Int32)">
-                    * Reed-Solomon code parameters: (12,8) reversible code:
-            		* <p>
-                    * <pre>
-                    * G(x) = x^4 + (a+1/a)x^3 + ax^2 + (a+1/a)x + 1
-                    * </pre>
-                    * where a = primitive root of field generator 0x14D
-            		* </p>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.VmpcEngine.Init(System.Boolean,Org.BouncyCastle.Crypto.ICipherParameters)">
-            initialise a VMPC cipher.
-            
-            @param forEncryption
-               whether or not we are for encryption.
-            @param params
-               the parameters required to set up the cipher.
-            @exception ArgumentException
-               if the params argument is inappropriate.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Engines.XteaEngine">
-            An XTEA engine.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.XteaEngine.#ctor">
-            Create an instance of the TEA encryption algorithm
-            and set some defaults
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.XteaEngine.Init(System.Boolean,Org.BouncyCastle.Crypto.ICipherParameters)">
-             initialise
-            
-             @param forEncryption whether or not we are for encryption.
-             @param params the parameters required to set up the cipher.
-             @exception ArgumentException if the params argument is
-             inappropriate.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Engines.XteaEngine.setKey(System.Byte[])">
-             Re-key the cipher.
-            
-             @param  key  the key to be used
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Generators.BaseKdfBytesGenerator">
-            Basic KDF generator for derived keys and ivs as defined by IEEE P1363a/ISO 18033
-            <br/>
-            This implementation is based on ISO 18033/P1363a.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Generators.BaseKdfBytesGenerator.#ctor(System.Int32,Org.BouncyCastle.Crypto.IDigest)">
-             Construct a KDF Parameters generator.
-            
-             @param counterStart value of counter.
-             @param digest the digest to be used as the source of derived keys.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Generators.BaseKdfBytesGenerator.GenerateBytes(System.Byte[],System.Int32,System.Int32)">
-             fill len bytes of the output buffer with bytes generated from
-             the derivation function.
-            
-             @throws ArgumentException if the size of the request will cause an overflow.
-             @throws DataLengthException if the out buffer is too small.
-        </member>
-        <member name="P:Org.BouncyCastle.Crypto.Generators.BaseKdfBytesGenerator.Digest">
-            return the underlying digest.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Generators.DesKeyGenerator.engineInit(Org.BouncyCastle.Crypto.KeyGenerationParameters)">
-             initialise the key generator - if strength is set to zero
-             the key generated will be 64 bits in size, otherwise
-             strength can be 64 or 56 bits (if you don't count the parity bits).
-            
-             @param param the parameters to be used for key generation
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Generators.DesEdeKeyGenerator.engineInit(Org.BouncyCastle.Crypto.KeyGenerationParameters)">
-             initialise the key generator - if strength is set to zero
-             the key Generated will be 192 bits in size, otherwise
-             strength can be 128 or 192 (or 112 or 168 if you don't count
-             parity bits), depending on whether you wish to do 2-key or 3-key
-             triple DES.
-            
-             @param param the parameters to be used for key generation
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Generators.DHBasicKeyPairGenerator">
-             a basic Diffie-Hellman key pair generator.
-            
-             This generates keys consistent for use with the basic algorithm for
-             Diffie-Hellman.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.IAsymmetricCipherKeyPairGenerator">
-            interface that a public/private key pair generator should conform to.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.IAsymmetricCipherKeyPairGenerator.Init(Org.BouncyCastle.Crypto.KeyGenerationParameters)">
-             intialise the key pair generator.
-            
-             @param the parameters the key pair is to be initialised with.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.IAsymmetricCipherKeyPairGenerator.GenerateKeyPair">
-             return an AsymmetricCipherKeyPair containing the Generated keys.
-            
-             @return an AsymmetricCipherKeyPair containing the Generated keys.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Generators.DHKeyPairGenerator">
-             a Diffie-Hellman key pair generator.
-            
-             This generates keys consistent for use in the MTI/A0 key agreement protocol
-             as described in "Handbook of Applied Cryptography", Pages 516-519.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Generators.DHParametersGenerator.GenerateParameters">
-            which Generates the p and g values from the given parameters,
-            returning the DHParameters object.
-            <p>
-            Note: can take a while...</p>
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Generators.DsaKeyPairGenerator">
-                 * a DSA key pair generator.
-                 *
-                 * This Generates DSA keys in line with the method described
-            	 * in <i>FIPS 186-3 B.1 FFC Key Pair Generation</i>.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Generators.DsaParametersGenerator">
-            Generate suitable parameters for DSA, in line with FIPS 186-2.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Generators.DsaParametersGenerator.Init(System.Int32,System.Int32,Org.BouncyCastle.Security.SecureRandom)">
-             initialise the key generator.
-            
-             @param size size of the key (range 2^512 -> 2^1024 - 64 bit increments)
-             @param certainty measure of robustness of prime (for FIPS 186-2 compliance this should be at least 80).
-             @param random random byte source.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Generators.DsaParametersGenerator.GenerateParameters">
-            which Generates the p and g values from the given parameters,
-            returning the DsaParameters object.
-            <p>
-            Note: can take a while...</p>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Generators.DsaParametersGenerator.GenerateParameters_FIPS186_3">
-            generate suitable parameters for DSA, in line with
-            <i>FIPS 186-3 A.1 Generation of the FFC Primes p and q</i>.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Generators.ECKeyPairGenerator.GenerateKeyPair">
-            Given the domain parameters this routine Generates an EC key
-            pair in accordance with X9.62 section 5.2.1 pages 26, 27.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Generators.ElGamalKeyPairGenerator">
-            a ElGamal key pair generator.
-            <p>
-            This Generates keys consistent for use with ElGamal as described in
-            page 164 of "Handbook of Applied Cryptography".</p>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Generators.ElGamalParametersGenerator.GenerateParameters">
-                     * which Generates the p and g values from the given parameters,
-                     * returning the ElGamalParameters object.
-                     * <p>
-                     * Note: can take a while...
-            		 * </p>
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Generators.Gost3410KeyPairGenerator">
-            a GOST3410 key pair generator.
-            This generates GOST3410 keys in line with the method described
-            in GOST R 34.10-94.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Generators.Gost3410ParametersGenerator">
-            generate suitable parameters for GOST3410.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Generators.Gost3410ParametersGenerator.Init(System.Int32,System.Int32,Org.BouncyCastle.Security.SecureRandom)">
-             initialise the key generator.
-            
-             @param size size of the key
-             @param typeProcedure type procedure A,B = 1;  A',B' - else
-             @param random random byte source.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Generators.Gost3410ParametersGenerator.procedure_C(Org.BouncyCastle.Math.BigInteger,Org.BouncyCastle.Math.BigInteger)">
-            Procedure C
-            procedure generates the a value from the given p,q,
-            returning the a value.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Generators.Gost3410ParametersGenerator.GenerateParameters">
-            which generates the p , q and a values from the given parameters,
-            returning the Gost3410Parameters object.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Generators.Kdf1BytesGenerator">
-            KFD2 generator for derived keys and ivs as defined by IEEE P1363a/ISO 18033
-            <br/>
-            This implementation is based on IEEE P1363/ISO 18033.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Generators.Kdf1BytesGenerator.#ctor(Org.BouncyCastle.Crypto.IDigest)">
-             Construct a KDF1 byte generator.
-            
-             @param digest the digest to be used as the source of derived keys.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Generators.Kdf2BytesGenerator">
-            KDF2 generator for derived keys and ivs as defined by IEEE P1363a/ISO 18033
-            <br/>
-            This implementation is based on IEEE P1363/ISO 18033.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Generators.Kdf2BytesGenerator.#ctor(Org.BouncyCastle.Crypto.IDigest)">
-             Construct a KDF2 bytes generator. Generates key material
-             according to IEEE P1363 or ISO 18033 depending on the initialisation.
-            
-             @param digest the digest to be used as the source of derived keys.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Generators.Mgf1BytesGenerator">
-            Generator for MGF1 as defined in Pkcs 1v2
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Generators.Mgf1BytesGenerator.#ctor(Org.BouncyCastle.Crypto.IDigest)">
-            @param digest the digest to be used as the source of Generated bytes
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Generators.Mgf1BytesGenerator.ItoOSP(System.Int32,System.Byte[])">
-            int to octet string.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Generators.Mgf1BytesGenerator.GenerateBytes(System.Byte[],System.Int32,System.Int32)">
-             fill len bytes of the output buffer with bytes Generated from
-             the derivation function.
-            
-             @throws DataLengthException if the out buffer is too small.
-        </member>
-        <member name="P:Org.BouncyCastle.Crypto.Generators.Mgf1BytesGenerator.Digest">
-            return the underlying digest.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Generators.NaccacheSternKeyPairGenerator">
-             Key generation parameters for NaccacheStern cipher. For details on this cipher, please see
-            
-             http://www.gemplus.com/smart/rd/publications/pdf/NS98pkcs.pdf
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Generators.NaccacheSternKeyPairGenerator.permuteList(System.Collections.IList,Org.BouncyCastle.Security.SecureRandom)">
-             Generates a permuted ArrayList from the original one. The original List
-             is not modified
-            
-             @param arr
-                        the ArrayList to be permuted
-             @param rand
-                        the source of Randomness for permutation
-             @return a new ArrayList with the permuted elements.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Generators.NaccacheSternKeyPairGenerator.findFirstPrimes(System.Int32)">
-             Finds the first 'count' primes starting with 3
-            
-             @param count
-                        the number of primes to find
-             @return a vector containing the found primes as Integer
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Generators.OpenSslPbeParametersGenerator">
-            Generator for PBE derived keys and ivs as usd by OpenSSL.
-            <p>
-            The scheme is a simple extension of PKCS 5 V2.0 Scheme 1 using MD5 with an
-            iteration count of 1.
-            </p>
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.PbeParametersGenerator">
-            super class for all Password Based Encyrption (Pbe) parameter generator classes.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.PbeParametersGenerator.#ctor">
-            base constructor.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.PbeParametersGenerator.Init(System.Byte[],System.Byte[],System.Int32)">
-             initialise the Pbe generator.
-            
-             @param password the password converted into bytes (see below).
-             @param salt the salt to be mixed with the password.
-             @param iterationCount the number of iterations the "mixing" function
-             is to be applied for.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.PbeParametersGenerator.GetPassword">
-             return the password byte array.
-            
-             @return the password byte array.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.PbeParametersGenerator.GetSalt">
-             return the salt byte array.
-            
-             @return the salt byte array.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.PbeParametersGenerator.GenerateDerivedParameters(System.Int32)">
-             Generate derived parameters for a key of length keySize.
-            
-             @param keySize the length, in bits, of the key required.
-             @return a parameters object representing a key.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.PbeParametersGenerator.GenerateDerivedParameters(System.Int32,System.Int32)">
-             Generate derived parameters for a key of length keySize, and
-             an initialisation vector (IV) of length ivSize.
-            
-             @param keySize the length, in bits, of the key required.
-             @param ivSize the length, in bits, of the iv required.
-             @return a parameters object representing a key and an IV.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.PbeParametersGenerator.GenerateDerivedMacParameters(System.Int32)">
-             Generate derived parameters for a key of length keySize, specifically
-             for use with a MAC.
-            
-             @param keySize the length, in bits, of the key required.
-             @return a parameters object representing a key.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.PbeParametersGenerator.Pkcs5PasswordToBytes(System.Char[])">
-             converts a password to a byte array according to the scheme in
-             Pkcs5 (ascii, no padding)
-            
-             @param password a character array representing the password.
-             @return a byte array representing the password.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.PbeParametersGenerator.Pkcs5PasswordToUtf8Bytes(System.Char[])">
-             converts a password to a byte array according to the scheme in
-             PKCS5 (UTF-8, no padding)
-            
-             @param password a character array representing the password.
-             @return a byte array representing the password.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.PbeParametersGenerator.Pkcs12PasswordToBytes(System.Char[])">
-             converts a password to a byte array according to the scheme in
-             Pkcs12 (unicode, big endian, 2 zero pad bytes at the end).
-            
-             @param password a character array representing the password.
-             @return a byte array representing the password.
-        </member>
-        <member name="P:Org.BouncyCastle.Crypto.PbeParametersGenerator.IterationCount">
-             return the iteration count.
-            
-             @return the iteration count.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Generators.OpenSslPbeParametersGenerator.#ctor">
-            Construct a OpenSSL Parameters generator. 
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Generators.OpenSslPbeParametersGenerator.Init(System.Byte[],System.Byte[])">
-            Initialise - note the iteration count for this algorithm is fixed at 1.
-            
-            @param password password to use.
-            @param salt salt to use.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Generators.OpenSslPbeParametersGenerator.GenerateDerivedKey(System.Int32)">
-            the derived key function, the ith hash of the password and the salt.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Generators.OpenSslPbeParametersGenerator.GenerateDerivedParameters(System.Int32)">
-             Generate a key parameter derived from the password, salt, and iteration
-             count we are currently initialised with.
-            
-             @param keySize the size of the key we want (in bits)
-             @return a KeyParameter object.
-             @exception ArgumentException if the key length larger than the base hash size.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Generators.OpenSslPbeParametersGenerator.GenerateDerivedParameters(System.Int32,System.Int32)">
-             Generate a key with initialisation vector parameter derived from
-             the password, salt, and iteration count we are currently initialised
-             with.
-            
-             @param keySize the size of the key we want (in bits)
-             @param ivSize the size of the iv we want (in bits)
-             @return a ParametersWithIV object.
-             @exception ArgumentException if keySize + ivSize is larger than the base hash size.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Generators.OpenSslPbeParametersGenerator.GenerateDerivedMacParameters(System.Int32)">
-             Generate a key parameter for use with a MAC derived from the password,
-             salt, and iteration count we are currently initialised with.
-            
-             @param keySize the size of the key we want (in bits)
-             @return a KeyParameter object.
-             @exception ArgumentException if the key length larger than the base hash size.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Generators.Pkcs12ParametersGenerator">
-            Generator for Pbe derived keys and ivs as defined by Pkcs 12 V1.0.
-            <p>
-            The document this implementation is based on can be found at
-            <a href="http://www.rsasecurity.com/rsalabs/pkcs/pkcs-12/index.html">
-            RSA's Pkcs12 Page</a>
-            </p>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Generators.Pkcs12ParametersGenerator.#ctor(Org.BouncyCastle.Crypto.IDigest)">
-             Construct a Pkcs 12 Parameters generator.
-            
-             @param digest the digest to be used as the source of derived keys.
-             @exception ArgumentException if an unknown digest is passed in.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Generators.Pkcs12ParametersGenerator.Adjust(System.Byte[],System.Int32,System.Byte[])">
-            add a + b + 1, returning the result in a. The a value is treated
-            as a BigInteger of length (b.Length * 8) bits. The result is
-            modulo 2^b.Length in case of overflow.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Generators.Pkcs12ParametersGenerator.GenerateDerivedKey(System.Int32,System.Int32)">
-            generation of a derived key ala Pkcs12 V1.0.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Generators.Pkcs12ParametersGenerator.GenerateDerivedParameters(System.Int32)">
-             Generate a key parameter derived from the password, salt, and iteration
-             count we are currently initialised with.
-            
-             @param keySize the size of the key we want (in bits)
-             @return a KeyParameter object.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Generators.Pkcs12ParametersGenerator.GenerateDerivedParameters(System.Int32,System.Int32)">
-             Generate a key with initialisation vector parameter derived from
-             the password, salt, and iteration count we are currently initialised
-             with.
-            
-             @param keySize the size of the key we want (in bits)
-             @param ivSize the size of the iv we want (in bits)
-             @return a ParametersWithIV object.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Generators.Pkcs12ParametersGenerator.GenerateDerivedMacParameters(System.Int32)">
-             Generate a key parameter for use with a MAC derived from the password,
-             salt, and iteration count we are currently initialised with.
-            
-             @param keySize the size of the key we want (in bits)
-             @return a KeyParameter object.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Generators.Pkcs5S1ParametersGenerator">
-            Generator for Pbe derived keys and ivs as defined by Pkcs 5 V2.0 Scheme 1.
-            Note this generator is limited to the size of the hash produced by the
-            digest used to drive it.
-            <p>
-            The document this implementation is based on can be found at
-            <a href="http://www.rsasecurity.com/rsalabs/pkcs/pkcs-5/index.html">
-            RSA's Pkcs5 Page</a>
-            </p>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Generators.Pkcs5S1ParametersGenerator.#ctor(Org.BouncyCastle.Crypto.IDigest)">
-             Construct a Pkcs 5 Scheme 1 Parameters generator.
-            
-             @param digest the digest to be used as the source of derived keys.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Generators.Pkcs5S1ParametersGenerator.GenerateDerivedKey">
-            the derived key function, the ith hash of the mPassword and the mSalt.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Generators.Pkcs5S1ParametersGenerator.GenerateDerivedParameters(System.Int32)">
-             Generate a key parameter derived from the mPassword, mSalt, and iteration
-             count we are currently initialised with.
-            
-             @param keySize the size of the key we want (in bits)
-             @return a KeyParameter object.
-             @exception ArgumentException if the key length larger than the base hash size.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Generators.Pkcs5S1ParametersGenerator.GenerateDerivedParameters(System.Int32,System.Int32)">
-             Generate a key with initialisation vector parameter derived from
-             the mPassword, mSalt, and iteration count we are currently initialised
-             with.
-            
-             @param keySize the size of the key we want (in bits)
-             @param ivSize the size of the iv we want (in bits)
-             @return a ParametersWithIV object.
-             @exception ArgumentException if keySize + ivSize is larger than the base hash size.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Generators.Pkcs5S1ParametersGenerator.GenerateDerivedMacParameters(System.Int32)">
-             Generate a key parameter for use with a MAC derived from the mPassword,
-             mSalt, and iteration count we are currently initialised with.
-            
-             @param keySize the size of the key we want (in bits)
-             @return a KeyParameter object.
-             @exception ArgumentException if the key length larger than the base hash size.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Generators.Pkcs5S2ParametersGenerator">
-            Generator for Pbe derived keys and ivs as defined by Pkcs 5 V2.0 Scheme 2.
-            This generator uses a SHA-1 HMac as the calculation function.
-            <p>
-            The document this implementation is based on can be found at
-            <a href="http://www.rsasecurity.com/rsalabs/pkcs/pkcs-5/index.html">
-            RSA's Pkcs5 Page</a></p>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Generators.Pkcs5S2ParametersGenerator.#ctor">
-            construct a Pkcs5 Scheme 2 Parameters generator.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Generators.Pkcs5S2ParametersGenerator.GenerateDerivedParameters(System.Int32)">
-             Generate a key parameter derived from the password, salt, and iteration
-             count we are currently initialised with.
-            
-             @param keySize the size of the key we want (in bits)
-             @return a KeyParameter object.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Generators.Pkcs5S2ParametersGenerator.GenerateDerivedParameters(System.Int32,System.Int32)">
-             Generate a key with initialisation vector parameter derived from
-             the password, salt, and iteration count we are currently initialised
-             with.
-            
-             @param keySize the size of the key we want (in bits)
-             @param ivSize the size of the iv we want (in bits)
-             @return a ParametersWithIV object.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Generators.Pkcs5S2ParametersGenerator.GenerateDerivedMacParameters(System.Int32)">
-             Generate a key parameter for use with a MAC derived from the password,
-             salt, and iteration count we are currently initialised with.
-            
-             @param keySize the size of the key we want (in bits)
-             @return a KeyParameter object.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Generators.RsaBlindingFactorGenerator">
-            Generate a random factor suitable for use with RSA blind signatures
-            as outlined in Chaum's blinding and unblinding as outlined in
-            "Handbook of Applied Cryptography", page 475.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Generators.RsaBlindingFactorGenerator.Init(Org.BouncyCastle.Crypto.ICipherParameters)">
-             Initialise the factor generator
-            
-             @param param the necessary RSA key parameters.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Generators.RsaBlindingFactorGenerator.GenerateBlindingFactor">
-             Generate a suitable blind factor for the public key the generator was initialised with.
-            
-             @return a random blind factor
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Generators.RsaKeyPairGenerator">
-            an RSA key pair generator.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.IDsa">
-            interface for classes implementing the Digital Signature Algorithm
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.IDsa.Init(System.Boolean,Org.BouncyCastle.Crypto.ICipherParameters)">
-             initialise the signer for signature generation or signature
-             verification.
-            
-             @param forSigning true if we are generating a signature, false
-             otherwise.
-             @param param key parameters for signature generation.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.IDsa.GenerateSignature(System.Byte[])">
-             sign the passed in message (usually the output of a hash function).
-            
-             @param message the message to be signed.
-             @return two big integers representing the r and s values respectively.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.IDsa.VerifySignature(System.Byte[],Org.BouncyCastle.Math.BigInteger,Org.BouncyCastle.Math.BigInteger)">
-             verify the message message against the signature values r and s.
-            
-             @param message the message that was supposed to have been signed.
-             @param r the r signature value.
-             @param s the s signature value.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.IMac">
-            The base interface for implementations of message authentication codes (MACs).
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.IMac.Init(Org.BouncyCastle.Crypto.ICipherParameters)">
-             Initialise the MAC.
-            
-             @param param the key and other data required by the MAC.
-             @exception ArgumentException if the parameters argument is
-             inappropriate.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.IMac.GetMacSize">
-             Return the block size for this MAC (in bytes).
-            
-             @return the block size for this MAC in bytes.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.IMac.Update(System.Byte)">
-             add a single byte to the mac for processing.
-            
-             @param in the byte to be processed.
-             @exception InvalidOperationException if the MAC is not initialised.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.IMac.BlockUpdate(System.Byte[],System.Int32,System.Int32)">
-            @param in the array containing the input.
-            @param inOff the index in the array the data begins at.
-            @param len the length of the input starting at inOff.
-            @exception InvalidOperationException if the MAC is not initialised.
-            @exception DataLengthException if there isn't enough data in in.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.IMac.DoFinal(System.Byte[],System.Int32)">
-            Compute the final stage of the MAC writing the output to the out
-            parameter.
-            <p>
-            doFinal leaves the MAC in the same state it was after the last init.
-            </p>
-            @param out the array the MAC is to be output to.
-            @param outOff the offset into the out buffer the output is to start at.
-            @exception DataLengthException if there isn't enough space in out.
-            @exception InvalidOperationException if the MAC is not initialised.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.IMac.Reset">
-            Reset the MAC. At the end of resetting the MAC should be in the
-            in the same state it was after the last init (if there was one).
-        </member>
-        <member name="P:Org.BouncyCastle.Crypto.IMac.AlgorithmName">
-             Return the name of the algorithm the MAC implements.
-            
-             @return the name of the algorithm the MAC implements.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.InvalidCipherTextException">
-            this exception is thrown whenever we find something we don't expect in a
-            message.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.InvalidCipherTextException.#ctor">
-            base constructor.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.InvalidCipherTextException.#ctor(System.String)">
-             create a InvalidCipherTextException with the given message.
-            
-             @param message the message to be carried with the exception.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.ISigner.Init(System.Boolean,Org.BouncyCastle.Crypto.ICipherParameters)">
-             Initialise the signer for signing or verification.
-            
-             @param forSigning true if for signing, false otherwise
-             @param param necessary parameters.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.ISigner.Update(System.Byte)">
-            update the internal digest with the byte b
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.ISigner.BlockUpdate(System.Byte[],System.Int32,System.Int32)">
-            update the internal digest with the byte array in
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.ISigner.GenerateSignature">
-            Generate a signature for the message we've been loaded with using
-            the key we were initialised with.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.ISigner.VerifySignature(System.Byte[])">
-            return true if the internal state represents the signature described
-            in the passed in array.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.ISigner.Reset">
-            reset the internal state
-        </member>
-        <member name="P:Org.BouncyCastle.Crypto.ISigner.AlgorithmName">
-             Return the name of the algorithm the signer implements.
-            
-             @return the name of the algorithm the signer implements.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.ISignerWithRecovery">
-            Signer with message recovery.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.ISignerWithRecovery.HasFullMessage">
-             Returns true if the signer has recovered the full message as
-             part of signature verification.
-            
-             @return true if full message recovered.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.ISignerWithRecovery.GetRecoveredMessage">
-             Returns a reference to what message was recovered (if any).
-            
-             @return full/partial message, null if nothing.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.ISignerWithRecovery.UpdateWithRecoveredMessage(System.Byte[])">
-             Perform an update with the recovered message before adding any other data. This must
-             be the first update method called, and calling it will result in the signer assuming
-             that further calls to update will include message content past what is recoverable.
-            
-             @param signature the signature that we are in the process of verifying.
-             @throws IllegalStateException
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.KeyGenerationParameters">
-            The base class for parameters to key generators.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.KeyGenerationParameters.#ctor(Org.BouncyCastle.Security.SecureRandom,System.Int32)">
-             initialise the generator with a source of randomness
-             and a strength (in bits).
-            
-             @param random the random byte source.
-             @param strength the size, in bits, of the keys we want to produce.
-        </member>
-        <member name="P:Org.BouncyCastle.Crypto.KeyGenerationParameters.Random">
-             return the random source associated with this
-             generator.
-            
-             @return the generators random source.
-        </member>
-        <member name="P:Org.BouncyCastle.Crypto.KeyGenerationParameters.Strength">
-             return the bit strength for keys produced by this generator,
-            
-             @return the strength of the keys this generator produces (in bits).
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Macs.CbcBlockCipherMac">
-            standard CBC Block Cipher MAC - if no padding is specified the default of
-            pad of zeroes is used.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Macs.CbcBlockCipherMac.#ctor(Org.BouncyCastle.Crypto.IBlockCipher)">
-             create a standard MAC based on a CBC block cipher. This will produce an
-             authentication code half the length of the block size of the cipher.
-            
-             @param cipher the cipher to be used as the basis of the MAC generation.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Macs.CbcBlockCipherMac.#ctor(Org.BouncyCastle.Crypto.IBlockCipher,Org.BouncyCastle.Crypto.Paddings.IBlockCipherPadding)">
-             create a standard MAC based on a CBC block cipher. This will produce an
-             authentication code half the length of the block size of the cipher.
-            
-             @param cipher the cipher to be used as the basis of the MAC generation.
-             @param padding the padding to be used to complete the last block.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Macs.CbcBlockCipherMac.#ctor(Org.BouncyCastle.Crypto.IBlockCipher,System.Int32)">
-            create a standard MAC based on a block cipher with the size of the
-            MAC been given in bits. This class uses CBC mode as the basis for the
-            MAC generation.
-            <p>
-            Note: the size of the MAC must be at least 24 bits (FIPS Publication 81),
-            or 16 bits if being used as a data authenticator (FIPS Publication 113),
-            and in general should be less than the size of the block cipher as it reduces
-            the chance of an exhaustive attack (see Handbook of Applied Cryptography).
-            </p>
-            @param cipher the cipher to be used as the basis of the MAC generation.
-            @param macSizeInBits the size of the MAC in bits, must be a multiple of 8.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Macs.CbcBlockCipherMac.#ctor(Org.BouncyCastle.Crypto.IBlockCipher,System.Int32,Org.BouncyCastle.Crypto.Paddings.IBlockCipherPadding)">
-            create a standard MAC based on a block cipher with the size of the
-            MAC been given in bits. This class uses CBC mode as the basis for the
-            MAC generation.
-            <p>
-            Note: the size of the MAC must be at least 24 bits (FIPS Publication 81),
-            or 16 bits if being used as a data authenticator (FIPS Publication 113),
-            and in general should be less than the size of the block cipher as it reduces
-            the chance of an exhaustive attack (see Handbook of Applied Cryptography).
-            </p>
-            @param cipher the cipher to be used as the basis of the MAC generation.
-            @param macSizeInBits the size of the MAC in bits, must be a multiple of 8.
-            @param padding the padding to be used to complete the last block.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Macs.CbcBlockCipherMac.Reset">
-            Reset the mac generator.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Macs.MacCFBBlockCipher">
-            implements a Cipher-FeedBack (CFB) mode on top of a simple cipher.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Macs.MacCFBBlockCipher.#ctor(Org.BouncyCastle.Crypto.IBlockCipher,System.Int32)">
-             Basic constructor.
-            
-             @param cipher the block cipher to be used as the basis of the
-             feedback mode.
-             @param blockSize the block size in bits (note: a multiple of 8)
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Macs.MacCFBBlockCipher.Init(System.Boolean,Org.BouncyCastle.Crypto.ICipherParameters)">
-             Initialise the cipher and, possibly, the initialisation vector (IV).
-             If an IV isn't passed as part of the parameter, the IV will be all zeros.
-             An IV which is too short is handled in FIPS compliant fashion.
-            
-             @param param the key and other data required by the cipher.
-             @exception ArgumentException if the parameters argument is
-             inappropriate.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Macs.MacCFBBlockCipher.GetBlockSize">
-             return the block size we are operating at.
-            
-             @return the block size we are operating at (in bytes).
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Macs.MacCFBBlockCipher.ProcessBlock(System.Byte[],System.Int32,System.Byte[],System.Int32)">
-             Process one block of input from the array in and write it to
-             the out array.
-            
-             @param in the array containing the input data.
-             @param inOff offset into the in array the data starts at.
-             @param out the array the output data will be copied into.
-             @param outOff the offset into the out array the output will start at.
-             @exception DataLengthException if there isn't enough data in in, or
-             space in out.
-             @exception InvalidOperationException if the cipher isn't initialised.
-             @return the number of bytes processed and produced.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Macs.MacCFBBlockCipher.Reset">
-            reset the chaining vector back to the IV and reset the underlying
-            cipher.
-        </member>
-        <member name="P:Org.BouncyCastle.Crypto.Macs.MacCFBBlockCipher.AlgorithmName">
-             return the algorithm name and mode.
-            
-             @return the name of the underlying algorithm followed by "/CFB"
-             and the block size in bits.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Macs.CfbBlockCipherMac.#ctor(Org.BouncyCastle.Crypto.IBlockCipher)">
-             create a standard MAC based on a CFB block cipher. This will produce an
-             authentication code half the length of the block size of the cipher, with
-             the CFB mode set to 8 bits.
-            
-             @param cipher the cipher to be used as the basis of the MAC generation.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Macs.CfbBlockCipherMac.#ctor(Org.BouncyCastle.Crypto.IBlockCipher,Org.BouncyCastle.Crypto.Paddings.IBlockCipherPadding)">
-             create a standard MAC based on a CFB block cipher. This will produce an
-             authentication code half the length of the block size of the cipher, with
-             the CFB mode set to 8 bits.
-            
-             @param cipher the cipher to be used as the basis of the MAC generation.
-             @param padding the padding to be used.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Macs.CfbBlockCipherMac.#ctor(Org.BouncyCastle.Crypto.IBlockCipher,System.Int32,System.Int32)">
-            create a standard MAC based on a block cipher with the size of the
-            MAC been given in bits. This class uses CFB mode as the basis for the
-            MAC generation.
-            <p>
-            Note: the size of the MAC must be at least 24 bits (FIPS Publication 81),
-            or 16 bits if being used as a data authenticator (FIPS Publication 113),
-            and in general should be less than the size of the block cipher as it reduces
-            the chance of an exhaustive attack (see Handbook of Applied Cryptography).
-            </p>
-            @param cipher the cipher to be used as the basis of the MAC generation.
-            @param cfbBitSize the size of an output block produced by the CFB mode.
-            @param macSizeInBits the size of the MAC in bits, must be a multiple of 8.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Macs.CfbBlockCipherMac.#ctor(Org.BouncyCastle.Crypto.IBlockCipher,System.Int32,System.Int32,Org.BouncyCastle.Crypto.Paddings.IBlockCipherPadding)">
-            create a standard MAC based on a block cipher with the size of the
-            MAC been given in bits. This class uses CFB mode as the basis for the
-            MAC generation.
-            <p>
-            Note: the size of the MAC must be at least 24 bits (FIPS Publication 81),
-            or 16 bits if being used as a data authenticator (FIPS Publication 113),
-            and in general should be less than the size of the block cipher as it reduces
-            the chance of an exhaustive attack (see Handbook of Applied Cryptography).
-            </p>
-            @param cipher the cipher to be used as the basis of the MAC generation.
-            @param cfbBitSize the size of an output block produced by the CFB mode.
-            @param macSizeInBits the size of the MAC in bits, must be a multiple of 8.
-            @param padding a padding to be used.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Macs.CfbBlockCipherMac.Reset">
-            Reset the mac generator.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Macs.CMac">
-            CMAC - as specified at www.nuee.nagoya-u.ac.jp/labs/tiwata/omac/omac.html
-            <p>
-            CMAC is analogous to OMAC1 - see also en.wikipedia.org/wiki/CMAC
-            </p><p>
-            CMAC is a NIST recomendation - see 
-            csrc.nist.gov/CryptoToolkit/modes/800-38_Series_Publications/SP800-38B.pdf
-            </p><p>
-            CMAC/OMAC1 is a blockcipher-based message authentication code designed and
-            analyzed by Tetsu Iwata and Kaoru Kurosawa.
-            </p><p>
-            CMAC/OMAC1 is a simple variant of the CBC MAC (Cipher Block Chaining Message 
-            Authentication Code). OMAC stands for One-Key CBC MAC.
-            </p><p>
-            It supports 128- or 64-bits block ciphers, with any key size, and returns
-            a MAC with dimension less or equal to the block size of the underlying 
-            cipher.
-            </p>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Macs.CMac.#ctor(Org.BouncyCastle.Crypto.IBlockCipher)">
-             create a standard MAC based on a CBC block cipher (64 or 128 bit block).
-             This will produce an authentication code the length of the block size
-             of the cipher.
-            
-             @param cipher the cipher to be used as the basis of the MAC generation.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Macs.CMac.#ctor(Org.BouncyCastle.Crypto.IBlockCipher,System.Int32)">
-             create a standard MAC based on a block cipher with the size of the
-             MAC been given in bits.
-             <p/>
-             Note: the size of the MAC must be at least 24 bits (FIPS Publication 81),
-             or 16 bits if being used as a data authenticator (FIPS Publication 113),
-             and in general should be less than the size of the block cipher as it reduces
-             the chance of an exhaustive attack (see Handbook of Applied Cryptography).
-            
-             @param cipher        the cipher to be used as the basis of the MAC generation.
-             @param macSizeInBits the size of the MAC in bits, must be a multiple of 8 and @lt;= 128.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Macs.CMac.Reset">
-            Reset the mac generator.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Macs.Gost28147Mac">
-            implementation of GOST 28147-89 MAC
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Macs.HMac">
-             HMAC implementation based on RFC2104
-            
-             H(K XOR opad, H(K XOR ipad, text))
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Macs.HMac.Reset">
-            Reset the mac generator.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Macs.ISO9797Alg3Mac">
-             DES based CBC Block Cipher MAC according to ISO9797, algorithm 3 (ANSI X9.19 Retail MAC)
-            
-             This could as well be derived from CBCBlockCipherMac, but then the property mac in the base
-             class must be changed to protected
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Macs.ISO9797Alg3Mac.#ctor(Org.BouncyCastle.Crypto.IBlockCipher)">
-             create a Retail-MAC based on a CBC block cipher. This will produce an
-             authentication code of the length of the block size of the cipher.
-            
-             @param cipher the cipher to be used as the basis of the MAC generation. This must
-             be DESEngine.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Macs.ISO9797Alg3Mac.#ctor(Org.BouncyCastle.Crypto.IBlockCipher,Org.BouncyCastle.Crypto.Paddings.IBlockCipherPadding)">
-             create a Retail-MAC based on a CBC block cipher. This will produce an
-             authentication code of the length of the block size of the cipher.
-            
-             @param cipher the cipher to be used as the basis of the MAC generation.
-             @param padding the padding to be used to complete the last block.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Macs.ISO9797Alg3Mac.#ctor(Org.BouncyCastle.Crypto.IBlockCipher,System.Int32)">
-            create a Retail-MAC based on a block cipher with the size of the
-            MAC been given in bits. This class uses single DES CBC mode as the basis for the
-            MAC generation.
-            <p>
-            Note: the size of the MAC must be at least 24 bits (FIPS Publication 81),
-            or 16 bits if being used as a data authenticator (FIPS Publication 113),
-            and in general should be less than the size of the block cipher as it reduces
-            the chance of an exhaustive attack (see Handbook of Applied Cryptography).
-            </p>
-            @param cipher the cipher to be used as the basis of the MAC generation.
-            @param macSizeInBits the size of the MAC in bits, must be a multiple of 8.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Macs.ISO9797Alg3Mac.#ctor(Org.BouncyCastle.Crypto.IBlockCipher,System.Int32,Org.BouncyCastle.Crypto.Paddings.IBlockCipherPadding)">
-            create a standard MAC based on a block cipher with the size of the
-            MAC been given in bits. This class uses single DES CBC mode as the basis for the
-            MAC generation. The final block is decrypted and then encrypted using the
-            middle and right part of the key.
-            <p>
-            Note: the size of the MAC must be at least 24 bits (FIPS Publication 81),
-            or 16 bits if being used as a data authenticator (FIPS Publication 113),
-            and in general should be less than the size of the block cipher as it reduces
-            the chance of an exhaustive attack (see Handbook of Applied Cryptography).
-            </p>
-            @param cipher the cipher to be used as the basis of the MAC generation.
-            @param macSizeInBits the size of the MAC in bits, must be a multiple of 8.
-            @param padding the padding to be used to complete the last block.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Macs.ISO9797Alg3Mac.Reset">
-            Reset the mac generator.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.MaxBytesExceededException">
-            <summary>
-            This exception is thrown whenever a cipher requires a change of key, iv
-            or similar after x amount of bytes enciphered
-            </summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Modes.CbcBlockCipher">
-            implements Cipher-Block-Chaining (CBC) mode on top of a simple cipher.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.CbcBlockCipher.#ctor(Org.BouncyCastle.Crypto.IBlockCipher)">
-             Basic constructor.
-            
-             @param cipher the block cipher to be used as the basis of chaining.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.CbcBlockCipher.GetUnderlyingCipher">
-             return the underlying block cipher that we are wrapping.
-            
-             @return the underlying block cipher that we are wrapping.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.CbcBlockCipher.Init(System.Boolean,Org.BouncyCastle.Crypto.ICipherParameters)">
-             Initialise the cipher and, possibly, the initialisation vector (IV).
-             If an IV isn't passed as part of the parameter, the IV will be all zeros.
-            
-             @param forEncryption if true the cipher is initialised for
-              encryption, if false for decryption.
-             @param param the key and other data required by the cipher.
-             @exception ArgumentException if the parameters argument is
-             inappropriate.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.CbcBlockCipher.GetBlockSize">
-             return the block size of the underlying cipher.
-            
-             @return the block size of the underlying cipher.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.CbcBlockCipher.ProcessBlock(System.Byte[],System.Int32,System.Byte[],System.Int32)">
-             Process one block of input from the array in and write it to
-             the out array.
-            
-             @param in the array containing the input data.
-             @param inOff offset into the in array the data starts at.
-             @param out the array the output data will be copied into.
-             @param outOff the offset into the out array the output will start at.
-             @exception DataLengthException if there isn't enough data in in, or
-             space in out.
-             @exception InvalidOperationException if the cipher isn't initialised.
-             @return the number of bytes processed and produced.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.CbcBlockCipher.Reset">
-            reset the chaining vector back to the IV and reset the underlying
-            cipher.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.CbcBlockCipher.EncryptBlock(System.Byte[],System.Int32,System.Byte[],System.Int32)">
-             Do the appropriate chaining step for CBC mode encryption.
-            
-             @param in the array containing the data to be encrypted.
-             @param inOff offset into the in array the data starts at.
-             @param out the array the encrypted data will be copied into.
-             @param outOff the offset into the out array the output will start at.
-             @exception DataLengthException if there isn't enough data in in, or
-             space in out.
-             @exception InvalidOperationException if the cipher isn't initialised.
-             @return the number of bytes processed and produced.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.CbcBlockCipher.DecryptBlock(System.Byte[],System.Int32,System.Byte[],System.Int32)">
-             Do the appropriate chaining step for CBC mode decryption.
-            
-             @param in the array containing the data to be decrypted.
-             @param inOff offset into the in array the data starts at.
-             @param out the array the decrypted data will be copied into.
-             @param outOff the offset into the out array the output will start at.
-             @exception DataLengthException if there isn't enough data in in, or
-             space in out.
-             @exception InvalidOperationException if the cipher isn't initialised.
-             @return the number of bytes processed and produced.
-        </member>
-        <member name="P:Org.BouncyCastle.Crypto.Modes.CbcBlockCipher.AlgorithmName">
-             return the algorithm name and mode.
-            
-             @return the name of the underlying algorithm followed by "/CBC".
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Modes.CcmBlockCipher">
-                * Implements the Counter with Cipher Block Chaining mode (CCM) detailed in
-                * NIST Special Publication 800-38C.
-                * <p>
-                * <b>Note</b>: this mode is a packet mode - it needs all the data up front.
-            	* </p>
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Modes.IAeadBlockCipher">
-            <summary>
-            A block cipher mode that includes authenticated encryption with a streaming mode
-            and optional associated data.</summary>
-            <see cref="T:Org.BouncyCastle.Crypto.Parameters.AeadParameters"/>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.IAeadBlockCipher.Init(System.Boolean,Org.BouncyCastle.Crypto.ICipherParameters)">
-            <summary>Initialise the cipher.</summary>
-            <remarks>Parameter can either be an AeadParameters or a ParametersWithIV object.</remarks>
-            <param name="forEncryption">Initialise for encryption if true, for decryption if false.</param>
-            <param name="parameters">The key or other data required by the cipher.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.IAeadBlockCipher.GetBlockSize">
-            <returns>The block size for this cipher, in bytes.</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.IAeadBlockCipher.ProcessByte(System.Byte,System.Byte[],System.Int32)">
-             Encrypt/decrypt a single byte.
-            
-             @param input the byte to be processed.
-             @param outBytes the output buffer the processed byte goes into.
-             @param outOff the offset into the output byte array the processed data starts at.
-             @return the number of bytes written to out.
-             @exception DataLengthException if the output buffer is too small.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.IAeadBlockCipher.ProcessBytes(System.Byte[],System.Int32,System.Int32,System.Byte[],System.Int32)">
-             Process a block of bytes from in putting the result into out.
-            
-             @param inBytes the input byte array.
-             @param inOff the offset into the in array where the data to be processed starts.
-             @param len the number of bytes to be processed.
-             @param outBytes the output buffer the processed bytes go into.
-             @param outOff the offset into the output byte array the processed data starts at.
-             @return the number of bytes written to out.
-             @exception DataLengthException if the output buffer is too small.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.IAeadBlockCipher.DoFinal(System.Byte[],System.Int32)">
-             Finish the operation either appending or verifying the MAC at the end of the data.
-            
-             @param outBytes space for any resulting output data.
-             @param outOff offset into out to start copying the data at.
-             @return number of bytes written into out.
-             @throws InvalidOperationException if the cipher is in an inappropriate state.
-             @throws InvalidCipherTextException if the MAC fails to match.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.IAeadBlockCipher.GetMac">
-             Return the value of the MAC associated with the last stream processed.
-            
-             @return MAC for plaintext data.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.IAeadBlockCipher.GetUpdateOutputSize(System.Int32)">
-             Return the size of the output buffer required for a ProcessBytes
-             an input of len bytes.
-            
-             @param len the length of the input.
-             @return the space required to accommodate a call to ProcessBytes
-             with len bytes of input.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.IAeadBlockCipher.GetOutputSize(System.Int32)">
-             Return the size of the output buffer required for a ProcessBytes plus a
-             DoFinal with an input of len bytes.
-            
-             @param len the length of the input.
-             @return the space required to accommodate a call to ProcessBytes and DoFinal
-             with len bytes of input.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.IAeadBlockCipher.Reset">
-            <summary>
-            Reset the cipher to the same state as it was after the last init (if there was one).
-            </summary>
-        </member>
-        <member name="P:Org.BouncyCastle.Crypto.Modes.IAeadBlockCipher.AlgorithmName">
-            <summary>The name of the algorithm this cipher implements.</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.CcmBlockCipher.#ctor(Org.BouncyCastle.Crypto.IBlockCipher)">
-             Basic constructor.
-            
-             @param cipher the block cipher to be used.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.CcmBlockCipher.GetUnderlyingCipher">
-             return the underlying block cipher that we are wrapping.
-            
-             @return the underlying block cipher that we are wrapping.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.CcmBlockCipher.GetMac">
-             Returns a byte array containing the mac calculated as part of the
-             last encrypt or decrypt operation.
-            
-             @return the last mac calculated.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Modes.CfbBlockCipher">
-            implements a Cipher-FeedBack (CFB) mode on top of a simple cipher.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.CfbBlockCipher.#ctor(Org.BouncyCastle.Crypto.IBlockCipher,System.Int32)">
-             Basic constructor.
-            
-             @param cipher the block cipher to be used as the basis of the
-             feedback mode.
-             @param blockSize the block size in bits (note: a multiple of 8)
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.CfbBlockCipher.GetUnderlyingCipher">
-             return the underlying block cipher that we are wrapping.
-            
-             @return the underlying block cipher that we are wrapping.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.CfbBlockCipher.Init(System.Boolean,Org.BouncyCastle.Crypto.ICipherParameters)">
-             Initialise the cipher and, possibly, the initialisation vector (IV).
-             If an IV isn't passed as part of the parameter, the IV will be all zeros.
-             An IV which is too short is handled in FIPS compliant fashion.
-            
-             @param forEncryption if true the cipher is initialised for
-              encryption, if false for decryption.
-             @param param the key and other data required by the cipher.
-             @exception ArgumentException if the parameters argument is
-             inappropriate.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.CfbBlockCipher.GetBlockSize">
-             return the block size we are operating at.
-            
-             @return the block size we are operating at (in bytes).
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.CfbBlockCipher.ProcessBlock(System.Byte[],System.Int32,System.Byte[],System.Int32)">
-             Process one block of input from the array in and write it to
-             the out array.
-            
-             @param in the array containing the input data.
-             @param inOff offset into the in array the data starts at.
-             @param out the array the output data will be copied into.
-             @param outOff the offset into the out array the output will start at.
-             @exception DataLengthException if there isn't enough data in in, or
-             space in out.
-             @exception InvalidOperationException if the cipher isn't initialised.
-             @return the number of bytes processed and produced.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.CfbBlockCipher.EncryptBlock(System.Byte[],System.Int32,System.Byte[],System.Int32)">
-             Do the appropriate processing for CFB mode encryption.
-            
-             @param in the array containing the data to be encrypted.
-             @param inOff offset into the in array the data starts at.
-             @param out the array the encrypted data will be copied into.
-             @param outOff the offset into the out array the output will start at.
-             @exception DataLengthException if there isn't enough data in in, or
-             space in out.
-             @exception InvalidOperationException if the cipher isn't initialised.
-             @return the number of bytes processed and produced.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.CfbBlockCipher.DecryptBlock(System.Byte[],System.Int32,System.Byte[],System.Int32)">
-             Do the appropriate processing for CFB mode decryption.
-            
-             @param in the array containing the data to be decrypted.
-             @param inOff offset into the in array the data starts at.
-             @param out the array the encrypted data will be copied into.
-             @param outOff the offset into the out array the output will start at.
-             @exception DataLengthException if there isn't enough data in in, or
-             space in out.
-             @exception InvalidOperationException if the cipher isn't initialised.
-             @return the number of bytes processed and produced.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.CfbBlockCipher.Reset">
-            reset the chaining vector back to the IV and reset the underlying
-            cipher.
-        </member>
-        <member name="P:Org.BouncyCastle.Crypto.Modes.CfbBlockCipher.AlgorithmName">
-             return the algorithm name and mode.
-            
-             @return the name of the underlying algorithm followed by "/CFB"
-             and the block size in bits.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Modes.CtsBlockCipher">
-            A Cipher Text Stealing (CTS) mode cipher. CTS allows block ciphers to
-            be used to produce cipher text which is the same outLength as the plain text.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.CtsBlockCipher.#ctor(Org.BouncyCastle.Crypto.IBlockCipher)">
-             Create a buffered block cipher that uses Cipher Text Stealing
-            
-             @param cipher the underlying block cipher this buffering object wraps.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.CtsBlockCipher.GetUpdateOutputSize(System.Int32)">
-             return the size of the output buffer required for an update of 'length' bytes.
-            
-             @param length the outLength of the input.
-             @return the space required to accommodate a call to update
-             with length bytes of input.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.CtsBlockCipher.GetOutputSize(System.Int32)">
-             return the size of the output buffer required for an update plus a
-             doFinal with an input of length bytes.
-            
-             @param length the outLength of the input.
-             @return the space required to accommodate a call to update and doFinal
-             with length bytes of input.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.CtsBlockCipher.ProcessByte(System.Byte,System.Byte[],System.Int32)">
-             process a single byte, producing an output block if neccessary.
-            
-             @param in the input byte.
-             @param out the space for any output that might be produced.
-             @param outOff the offset from which the output will be copied.
-             @return the number of output bytes copied to out.
-             @exception DataLengthException if there isn't enough space in out.
-             @exception InvalidOperationException if the cipher isn't initialised.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.CtsBlockCipher.ProcessBytes(System.Byte[],System.Int32,System.Int32,System.Byte[],System.Int32)">
-             process an array of bytes, producing output if necessary.
-            
-             @param in the input byte array.
-             @param inOff the offset at which the input data starts.
-             @param length the number of bytes to be copied out of the input array.
-             @param out the space for any output that might be produced.
-             @param outOff the offset from which the output will be copied.
-             @return the number of output bytes copied to out.
-             @exception DataLengthException if there isn't enough space in out.
-             @exception InvalidOperationException if the cipher isn't initialised.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.CtsBlockCipher.DoFinal(System.Byte[],System.Int32)">
-             Process the last block in the buffer.
-            
-             @param out the array the block currently being held is copied into.
-             @param outOff the offset at which the copying starts.
-             @return the number of output bytes copied to out.
-             @exception DataLengthException if there is insufficient space in out for
-             the output.
-             @exception InvalidOperationException if the underlying cipher is not
-             initialised.
-             @exception InvalidCipherTextException if cipher text decrypts wrongly (in
-             case the exception will never Get thrown).
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Modes.EaxBlockCipher">
-            A Two-Pass Authenticated-Encryption Scheme Optimized for Simplicity and 
-            Efficiency - by M. Bellare, P. Rogaway, D. Wagner.
-            
-            http://www.cs.ucdavis.edu/~rogaway/papers/eax.pdf
-            
-            EAX is an AEAD scheme based on CTR and OMAC1/CMAC, that uses a single block 
-            cipher to encrypt and authenticate data. It's on-line (the length of a 
-            message isn't needed to begin processing it), has good performances, it's
-            simple and provably secure (provided the underlying block cipher is secure).
-            
-            Of course, this implementations is NOT thread-safe.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.EaxBlockCipher.#ctor(Org.BouncyCastle.Crypto.IBlockCipher)">
-             Constructor that accepts an instance of a block cipher engine.
-            
-             @param cipher the engine to use
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Modes.GcmBlockCipher">
-            <summary>
-            Implements the Galois/Counter mode (GCM) detailed in
-            NIST Special Publication 800-38D.
-            </summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Modes.GOfbBlockCipher">
-            implements the GOST 28147 OFB counter mode (GCTR).
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.GOfbBlockCipher.#ctor(Org.BouncyCastle.Crypto.IBlockCipher)">
-             Basic constructor.
-            
-             @param cipher the block cipher to be used as the basis of the
-             counter mode (must have a 64 bit block size).
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.GOfbBlockCipher.GetUnderlyingCipher">
-             return the underlying block cipher that we are wrapping.
-            
-             @return the underlying block cipher that we are wrapping.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.GOfbBlockCipher.Init(System.Boolean,Org.BouncyCastle.Crypto.ICipherParameters)">
-             Initialise the cipher and, possibly, the initialisation vector (IV).
-             If an IV isn't passed as part of the parameter, the IV will be all zeros.
-             An IV which is too short is handled in FIPS compliant fashion.
-            
-             @param encrypting if true the cipher is initialised for
-              encryption, if false for decryption.
-             @param parameters the key and other data required by the cipher.
-             @exception ArgumentException if the parameters argument is inappropriate.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.GOfbBlockCipher.GetBlockSize">
-             return the block size we are operating at (in bytes).
-            
-             @return the block size we are operating at (in bytes).
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.GOfbBlockCipher.ProcessBlock(System.Byte[],System.Int32,System.Byte[],System.Int32)">
-             Process one block of input from the array in and write it to
-             the out array.
-            
-             @param in the array containing the input data.
-             @param inOff offset into the in array the data starts at.
-             @param out the array the output data will be copied into.
-             @param outOff the offset into the out array the output will start at.
-             @exception DataLengthException if there isn't enough data in in, or
-             space in out.
-             @exception InvalidOperationException if the cipher isn't initialised.
-             @return the number of bytes processed and produced.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.GOfbBlockCipher.Reset">
-            reset the feedback vector back to the IV and reset the underlying
-            cipher.
-        </member>
-        <member name="P:Org.BouncyCastle.Crypto.Modes.GOfbBlockCipher.AlgorithmName">
-             return the algorithm name and mode.
-            
-             @return the name of the underlying algorithm followed by "/GCTR"
-             and the block size in bits
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Modes.OfbBlockCipher">
-            implements a Output-FeedBack (OFB) mode on top of a simple cipher.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.OfbBlockCipher.#ctor(Org.BouncyCastle.Crypto.IBlockCipher,System.Int32)">
-             Basic constructor.
-            
-             @param cipher the block cipher to be used as the basis of the
-             feedback mode.
-             @param blockSize the block size in bits (note: a multiple of 8)
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.OfbBlockCipher.GetUnderlyingCipher">
-             return the underlying block cipher that we are wrapping.
-            
-             @return the underlying block cipher that we are wrapping.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.OfbBlockCipher.Init(System.Boolean,Org.BouncyCastle.Crypto.ICipherParameters)">
-             Initialise the cipher and, possibly, the initialisation vector (IV).
-             If an IV isn't passed as part of the parameter, the IV will be all zeros.
-             An IV which is too short is handled in FIPS compliant fashion.
-            
-             @param forEncryption if true the cipher is initialised for
-              encryption, if false for decryption.
-             @param param the key and other data required by the cipher.
-             @exception ArgumentException if the parameters argument is
-             inappropriate.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.OfbBlockCipher.GetBlockSize">
-             return the block size we are operating at (in bytes).
-            
-             @return the block size we are operating at (in bytes).
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.OfbBlockCipher.ProcessBlock(System.Byte[],System.Int32,System.Byte[],System.Int32)">
-             Process one block of input from the array in and write it to
-             the out array.
-            
-             @param in the array containing the input data.
-             @param inOff offset into the in array the data starts at.
-             @param out the array the output data will be copied into.
-             @param outOff the offset into the out array the output will start at.
-             @exception DataLengthException if there isn't enough data in in, or
-             space in out.
-             @exception InvalidOperationException if the cipher isn't initialised.
-             @return the number of bytes processed and produced.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.OfbBlockCipher.Reset">
-            reset the feedback vector back to the IV and reset the underlying
-            cipher.
-        </member>
-        <member name="P:Org.BouncyCastle.Crypto.Modes.OfbBlockCipher.AlgorithmName">
-             return the algorithm name and mode.
-            
-             @return the name of the underlying algorithm followed by "/OFB"
-             and the block size in bits
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Modes.OpenPgpCfbBlockCipher">
-                * Implements OpenPGP's rather strange version of Cipher-FeedBack (CFB) mode
-                * on top of a simple cipher. This class assumes the IV has been prepended
-                * to the data stream already, and just accomodates the reset after
-                * (blockSize + 2) bytes have been read.
-                * <p>
-                * For further info see <a href="http://www.ietf.org/rfc/rfc2440.html">RFC 2440</a>.
-            	* </p>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.OpenPgpCfbBlockCipher.#ctor(Org.BouncyCastle.Crypto.IBlockCipher)">
-             Basic constructor.
-            
-             @param cipher the block cipher to be used as the basis of the
-             feedback mode.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.OpenPgpCfbBlockCipher.GetUnderlyingCipher">
-             return the underlying block cipher that we are wrapping.
-            
-             @return the underlying block cipher that we are wrapping.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.OpenPgpCfbBlockCipher.GetBlockSize">
-             return the block size we are operating at.
-            
-             @return the block size we are operating at (in bytes).
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.OpenPgpCfbBlockCipher.ProcessBlock(System.Byte[],System.Int32,System.Byte[],System.Int32)">
-             Process one block of input from the array in and write it to
-             the out array.
-            
-             @param in the array containing the input data.
-             @param inOff offset into the in array the data starts at.
-             @param out the array the output data will be copied into.
-             @param outOff the offset into the out array the output will start at.
-             @exception DataLengthException if there isn't enough data in in, or
-             space in out.
-             @exception InvalidOperationException if the cipher isn't initialised.
-             @return the number of bytes processed and produced.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.OpenPgpCfbBlockCipher.Reset">
-            reset the chaining vector back to the IV and reset the underlying
-            cipher.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.OpenPgpCfbBlockCipher.Init(System.Boolean,Org.BouncyCastle.Crypto.ICipherParameters)">
-             Initialise the cipher and, possibly, the initialisation vector (IV).
-             If an IV isn't passed as part of the parameter, the IV will be all zeros.
-             An IV which is too short is handled in FIPS compliant fashion.
-            
-             @param forEncryption if true the cipher is initialised for
-              encryption, if false for decryption.
-             @param parameters the key and other data required by the cipher.
-             @exception ArgumentException if the parameters argument is
-             inappropriate.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.OpenPgpCfbBlockCipher.EncryptByte(System.Byte,System.Int32)">
-            Encrypt one byte of data according to CFB mode.
-            @param data the byte to encrypt
-            @param blockOff offset in the current block
-            @returns the encrypted byte
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.OpenPgpCfbBlockCipher.EncryptBlock(System.Byte[],System.Int32,System.Byte[],System.Int32)">
-             Do the appropriate processing for CFB IV mode encryption.
-            
-             @param in the array containing the data to be encrypted.
-             @param inOff offset into the in array the data starts at.
-             @param out the array the encrypted data will be copied into.
-             @param outOff the offset into the out array the output will start at.
-             @exception DataLengthException if there isn't enough data in in, or
-             space in out.
-             @exception InvalidOperationException if the cipher isn't initialised.
-             @return the number of bytes processed and produced.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.OpenPgpCfbBlockCipher.DecryptBlock(System.Byte[],System.Int32,System.Byte[],System.Int32)">
-             Do the appropriate processing for CFB IV mode decryption.
-            
-             @param in the array containing the data to be decrypted.
-             @param inOff offset into the in array the data starts at.
-             @param out the array the encrypted data will be copied into.
-             @param outOff the offset into the out array the output will start at.
-             @exception DataLengthException if there isn't enough data in in, or
-             space in out.
-             @exception InvalidOperationException if the cipher isn't initialised.
-             @return the number of bytes processed and produced.
-        </member>
-        <member name="P:Org.BouncyCastle.Crypto.Modes.OpenPgpCfbBlockCipher.AlgorithmName">
-             return the algorithm name and mode.
-            
-             @return the name of the underlying algorithm followed by "/PGPCFB"
-             and the block size in bits.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Modes.SicBlockCipher">
-            Implements the Segmented Integer Counter (SIC) mode on top of a simple
-            block cipher.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.SicBlockCipher.#ctor(Org.BouncyCastle.Crypto.IBlockCipher)">
-             Basic constructor.
-            
-             @param c the block cipher to be used.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Modes.SicBlockCipher.GetUnderlyingCipher">
-             return the underlying block cipher that we are wrapping.
-            
-             @return the underlying block cipher that we are wrapping.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Paddings.IBlockCipherPadding">
-            Block cipher padders are expected to conform to this interface
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Paddings.IBlockCipherPadding.Init(Org.BouncyCastle.Security.SecureRandom)">
-             Initialise the padder.
-            
-             @param param parameters, if any required.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Paddings.IBlockCipherPadding.AddPadding(System.Byte[],System.Int32)">
-            add the pad bytes to the passed in block, returning the
-            number of bytes added.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Paddings.IBlockCipherPadding.PadCount(System.Byte[])">
-            return the number of pad bytes present in the block.
-            @exception InvalidCipherTextException if the padding is badly formed
-            or invalid.
-        </member>
-        <member name="P:Org.BouncyCastle.Crypto.Paddings.IBlockCipherPadding.PaddingName">
-             Return the name of the algorithm the cipher implements.
-            
-             @return the name of the algorithm the cipher implements.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Paddings.ISO10126d2Padding">
-            A padder that adds ISO10126-2 padding to a block.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Paddings.ISO10126d2Padding.Init(Org.BouncyCastle.Security.SecureRandom)">
-             Initialise the padder.
-            
-             @param random a SecureRandom if available.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Paddings.ISO10126d2Padding.AddPadding(System.Byte[],System.Int32)">
-            add the pad bytes to the passed in block, returning the
-            number of bytes added.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Paddings.ISO10126d2Padding.PadCount(System.Byte[])">
-            return the number of pad bytes present in the block.
-        </member>
-        <member name="P:Org.BouncyCastle.Crypto.Paddings.ISO10126d2Padding.PaddingName">
-             Return the name of the algorithm the cipher implements.
-            
-             @return the name of the algorithm the cipher implements.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Paddings.ISO7816d4Padding">
-            A padder that adds the padding according to the scheme referenced in
-            ISO 7814-4 - scheme 2 from ISO 9797-1. The first byte is 0x80, rest is 0x00
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Paddings.ISO7816d4Padding.Init(Org.BouncyCastle.Security.SecureRandom)">
-             Initialise the padder.
-            
-             @param random - a SecureRandom if available.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Paddings.ISO7816d4Padding.AddPadding(System.Byte[],System.Int32)">
-            add the pad bytes to the passed in block, returning the
-            number of bytes added.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Paddings.ISO7816d4Padding.PadCount(System.Byte[])">
-            return the number of pad bytes present in the block.
-        </member>
-        <member name="P:Org.BouncyCastle.Crypto.Paddings.ISO7816d4Padding.PaddingName">
-             Return the name of the algorithm the padder implements.
-            
-             @return the name of the algorithm the padder implements.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Paddings.PaddedBufferedBlockCipher">
-            A wrapper class that allows block ciphers to be used to process data in
-            a piecemeal fashion with padding. The PaddedBufferedBlockCipher
-            outputs a block only when the buffer is full and more data is being added,
-            or on a doFinal (unless the current block in the buffer is a pad block).
-            The default padding mechanism used is the one outlined in Pkcs5/Pkcs7.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Paddings.PaddedBufferedBlockCipher.#ctor(Org.BouncyCastle.Crypto.IBlockCipher,Org.BouncyCastle.Crypto.Paddings.IBlockCipherPadding)">
-             Create a buffered block cipher with the desired padding.
-            
-             @param cipher the underlying block cipher this buffering object wraps.
-             @param padding the padding type.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Paddings.PaddedBufferedBlockCipher.#ctor(Org.BouncyCastle.Crypto.IBlockCipher)">
-             Create a buffered block cipher Pkcs7 padding
-            
-             @param cipher the underlying block cipher this buffering object wraps.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Paddings.PaddedBufferedBlockCipher.Init(System.Boolean,Org.BouncyCastle.Crypto.ICipherParameters)">
-             initialise the cipher.
-            
-             @param forEncryption if true the cipher is initialised for
-              encryption, if false for decryption.
-             @param param the key and other data required by the cipher.
-             @exception ArgumentException if the parameters argument is
-             inappropriate.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Paddings.PaddedBufferedBlockCipher.GetOutputSize(System.Int32)">
-             return the minimum size of the output buffer required for an update
-             plus a doFinal with an input of len bytes.
-            
-             @param len the length of the input.
-             @return the space required to accommodate a call to update and doFinal
-             with len bytes of input.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Paddings.PaddedBufferedBlockCipher.GetUpdateOutputSize(System.Int32)">
-             return the size of the output buffer required for an update
-             an input of len bytes.
-            
-             @param len the length of the input.
-             @return the space required to accommodate a call to update
-             with len bytes of input.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Paddings.PaddedBufferedBlockCipher.ProcessByte(System.Byte,System.Byte[],System.Int32)">
-             process a single byte, producing an output block if neccessary.
-            
-             @param in the input byte.
-             @param out the space for any output that might be produced.
-             @param outOff the offset from which the output will be copied.
-             @return the number of output bytes copied to out.
-             @exception DataLengthException if there isn't enough space in out.
-             @exception InvalidOperationException if the cipher isn't initialised.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Paddings.PaddedBufferedBlockCipher.ProcessBytes(System.Byte[],System.Int32,System.Int32,System.Byte[],System.Int32)">
-             process an array of bytes, producing output if necessary.
-            
-             @param in the input byte array.
-             @param inOff the offset at which the input data starts.
-             @param len the number of bytes to be copied out of the input array.
-             @param out the space for any output that might be produced.
-             @param outOff the offset from which the output will be copied.
-             @return the number of output bytes copied to out.
-             @exception DataLengthException if there isn't enough space in out.
-             @exception InvalidOperationException if the cipher isn't initialised.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Paddings.PaddedBufferedBlockCipher.DoFinal(System.Byte[],System.Int32)">
-             Process the last block in the buffer. If the buffer is currently
-             full and padding needs to be added a call to doFinal will produce
-             2 * GetBlockSize() bytes.
-            
-             @param out the array the block currently being held is copied into.
-             @param outOff the offset at which the copying starts.
-             @return the number of output bytes copied to out.
-             @exception DataLengthException if there is insufficient space in out for
-             the output or we are decrypting and the input is not block size aligned.
-             @exception InvalidOperationException if the underlying cipher is not
-             initialised.
-             @exception InvalidCipherTextException if padding is expected and not found.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Paddings.Pkcs7Padding">
-            A padder that adds Pkcs7/Pkcs5 padding to a block.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Paddings.Pkcs7Padding.Init(Org.BouncyCastle.Security.SecureRandom)">
-             Initialise the padder.
-            
-             @param random - a SecureRandom if available.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Paddings.Pkcs7Padding.AddPadding(System.Byte[],System.Int32)">
-            add the pad bytes to the passed in block, returning the
-            number of bytes added.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Paddings.Pkcs7Padding.PadCount(System.Byte[])">
-            return the number of pad bytes present in the block.
-        </member>
-        <member name="P:Org.BouncyCastle.Crypto.Paddings.Pkcs7Padding.PaddingName">
-             Return the name of the algorithm the cipher implements.
-            
-             @return the name of the algorithm the cipher implements.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Paddings.TbcPadding">
-            <summary> A padder that adds Trailing-Bit-Compliment padding to a block.
-            <p>
-            This padding pads the block out compliment of the last bit
-            of the plain text.
-            </p>
-            </summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Paddings.TbcPadding.Init(Org.BouncyCastle.Security.SecureRandom)">
-            <summary> Initialise the padder.</summary>
-            <param name="random">- a SecureRandom if available.
-            </param>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Paddings.TbcPadding.AddPadding(System.Byte[],System.Int32)">
-            <summary> add the pad bytes to the passed in block, returning the
-            number of bytes added.
-            <p>
-            Note: this assumes that the last block of plain text is always
-            passed to it inside in. i.e. if inOff is zero, indicating the
-            entire block is to be overwritten with padding the value of in
-            should be the same as the last block of plain text.
-            </p>
-            </summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Paddings.TbcPadding.PadCount(System.Byte[])">
-            <summary> return the number of pad bytes present in the block.</summary>
-        </member>
-        <member name="P:Org.BouncyCastle.Crypto.Paddings.TbcPadding.PaddingName">
-            <summary> Return the name of the algorithm the cipher implements.</summary>
-            <returns> the name of the algorithm the cipher implements.
-            </returns>
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Paddings.X923Padding">
-            A padder that adds X9.23 padding to a block - if a SecureRandom is
-            passed in random padding is assumed, otherwise padding with zeros is used.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Paddings.X923Padding.Init(Org.BouncyCastle.Security.SecureRandom)">
-             Initialise the padder.
-            
-             @param random a SecureRandom if one is available.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Paddings.X923Padding.AddPadding(System.Byte[],System.Int32)">
-            add the pad bytes to the passed in block, returning the
-            number of bytes added.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Paddings.X923Padding.PadCount(System.Byte[])">
-            return the number of pad bytes present in the block.
-        </member>
-        <member name="P:Org.BouncyCastle.Crypto.Paddings.X923Padding.PaddingName">
-             Return the name of the algorithm the cipher implements.
-            
-             @return the name of the algorithm the cipher implements.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Paddings.ZeroBytePadding">
-            <summary> A padder that adds Null byte padding to a block.</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Paddings.ZeroBytePadding.Init(Org.BouncyCastle.Security.SecureRandom)">
-             <summary> Initialise the padder.
-            
-             </summary>
-             <param name="random">- a SecureRandom if available.
-             </param>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Paddings.ZeroBytePadding.AddPadding(System.Byte[],System.Int32)">
-            <summary> add the pad bytes to the passed in block, returning the
-            number of bytes added.
-            </summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Paddings.ZeroBytePadding.PadCount(System.Byte[])">
-            <summary> return the number of pad bytes present in the block.</summary>
-        </member>
-        <member name="P:Org.BouncyCastle.Crypto.Paddings.ZeroBytePadding.PaddingName">
-             <summary> Return the name of the algorithm the cipher implements.
-            
-             </summary>
-             <returns> the name of the algorithm the cipher implements.
-             </returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Parameters.AeadParameters.#ctor(Org.BouncyCastle.Crypto.Parameters.KeyParameter,System.Int32,System.Byte[],System.Byte[])">
-             Base constructor.
-            
-             @param key key to be used by underlying cipher
-             @param macSize macSize in bits
-             @param nonce nonce to be used
-             @param associatedText associated text, if any
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Parameters.CcmParameters.#ctor(Org.BouncyCastle.Crypto.Parameters.KeyParameter,System.Int32,System.Byte[],System.Byte[])">
-            Base constructor.
-            
-            @param key key to be used by underlying cipher
-            @param macSize macSize in bits
-            @param nonce nonce to be used
-            @param associatedText associated text, if any
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Parameters.DesParameters.IsWeakKey(System.Byte[],System.Int32)">
-            DES has 16 weak keys.  This method will check
-            if the given DES key material is weak or semi-weak.
-            Key material that is too short is regarded as weak.
-            <p>
-            See <a href="http://www.counterpane.com/applied.html">"Applied
-            Cryptography"</a> by Bruce Schneier for more information.
-            </p>
-            @return true if the given DES key material is weak or semi-weak,
-                false otherwise.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Parameters.DesParameters.SetOddParity(System.Byte[])">
-             DES Keys use the LSB as the odd parity bit.  This can
-             be used to check for corrupt keys.
-            
-             @param bytes the byte array to set the parity on.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Parameters.DesEdeParameters.IsWeakKey(System.Byte[],System.Int32,System.Int32)">
-             return true if the passed in key is a DES-EDE weak key.
-            
-             @param key bytes making up the key
-             @param offset offset into the byte array the key starts at
-             @param length number of bytes making up the key
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Parameters.DesEdeParameters.IsWeakKey(System.Byte[],System.Int32)">
-             return true if the passed in key is a DES-EDE weak key.
-            
-             @param key bytes making up the key
-             @param offset offset into the byte array the key starts at
-        </member>
-        <member name="P:Org.BouncyCastle.Crypto.Parameters.DHParameters.M">
-            <summary>The minimum bitlength of the private value.</summary>
-        </member>
-        <member name="P:Org.BouncyCastle.Crypto.Parameters.DHParameters.L">
-            <summary>The bitlength of the private value.</summary>
-        </member>
-        <member name="P:Org.BouncyCastle.Crypto.Parameters.ElGamalParameters.G">
-            return the generator - g
-        </member>
-        <member name="P:Org.BouncyCastle.Crypto.Parameters.ElGamalParameters.L">
-            return private value limit - l
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Parameters.IesParameters">
-            parameters for using an integrated cipher in stream mode.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Parameters.IesParameters.#ctor(System.Byte[],System.Byte[],System.Int32)">
-            @param derivation the derivation parameter for the KDF function.
-            @param encoding the encoding parameter for the KDF function.
-            @param macKeySize the size of the MAC key (in bits).
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Parameters.IesWithCipherParameters.#ctor(System.Byte[],System.Byte[],System.Int32,System.Int32)">
-            @param derivation the derivation parameter for the KDF function.
-            @param encoding the encoding parameter for the KDF function.
-            @param macKeySize the size of the MAC key (in bits).
-            @param cipherKeySize the size of the associated Cipher key (in bits).
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Parameters.Iso18033KdfParameters">
-            parameters for Key derivation functions for ISO-18033
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Parameters.KdfParameters">
-            parameters for Key derivation functions for IEEE P1363a
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Parameters.MgfParameters">
-            <remarks>Parameters for mask derivation functions.</remarks>
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Parameters.NaccacheSternKeyGenerationParameters">
-             Parameters for NaccacheStern public private key generation. For details on
-             this cipher, please see
-            
-             http://www.gemplus.com/smart/rd/publications/pdf/NS98pkcs.pdf
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Parameters.NaccacheSternKeyGenerationParameters.#ctor(Org.BouncyCastle.Security.SecureRandom,System.Int32,System.Int32,System.Int32)">
-             Parameters for generating a NaccacheStern KeyPair.
-            
-             @param random
-                        The source of randomness
-             @param strength
-                        The desired strength of the Key in Bits
-             @param certainty
-                        the probability that the generated primes are not really prime
-                        as integer: 2^(-certainty) is then the probability
-             @param countSmallPrimes
-                        How many small key factors are desired
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Parameters.NaccacheSternKeyGenerationParameters.#ctor(Org.BouncyCastle.Security.SecureRandom,System.Int32,System.Int32,System.Int32,System.Boolean)">
-             Parameters for a NaccacheStern KeyPair.
-            
-             @param random
-                        The source of randomness
-             @param strength
-                        The desired strength of the Key in Bits
-             @param certainty
-                        the probability that the generated primes are not really prime
-                        as integer: 2^(-certainty) is then the probability
-             @param cntSmallPrimes
-                        How many small key factors are desired
-             @param debug
-                        Turn debugging on or off (reveals secret information, use with
-                        caution)
-        </member>
-        <member name="P:Org.BouncyCastle.Crypto.Parameters.NaccacheSternKeyGenerationParameters.Certainty">
-            @return Returns the certainty.
-        </member>
-        <member name="P:Org.BouncyCastle.Crypto.Parameters.NaccacheSternKeyGenerationParameters.CountSmallPrimes">
-            @return Returns the countSmallPrimes.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Parameters.NaccacheSternKeyParameters">
-             Public key parameters for NaccacheStern cipher. For details on this cipher,
-             please see
-            
-             http://www.gemplus.com/smart/rd/publications/pdf/NS98pkcs.pdf
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Parameters.NaccacheSternKeyParameters.#ctor(System.Boolean,Org.BouncyCastle.Math.BigInteger,Org.BouncyCastle.Math.BigInteger,System.Int32)">
-            @param privateKey
-        </member>
-        <member name="P:Org.BouncyCastle.Crypto.Parameters.NaccacheSternKeyParameters.G">
-            @return Returns the g.
-        </member>
-        <member name="P:Org.BouncyCastle.Crypto.Parameters.NaccacheSternKeyParameters.LowerSigmaBound">
-            @return Returns the lowerSigmaBound.
-        </member>
-        <member name="P:Org.BouncyCastle.Crypto.Parameters.NaccacheSternKeyParameters.Modulus">
-            @return Returns the n.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Parameters.NaccacheSternPrivateKeyParameters">
-             Private key parameters for NaccacheStern cipher. For details on this cipher,
-             please see
-            
-             http://www.gemplus.com/smart/rd/publications/pdf/NS98pkcs.pdf
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Parameters.NaccacheSternPrivateKeyParameters.#ctor(Org.BouncyCastle.Math.BigInteger,Org.BouncyCastle.Math.BigInteger,System.Int32,System.Collections.IList,Org.BouncyCastle.Math.BigInteger)">
-             Constructs a NaccacheSternPrivateKey
-            
-             @param g
-                        the public enryption parameter g
-             @param n
-                        the public modulus n = p*q
-             @param lowerSigmaBound
-                        the public lower sigma bound up to which data can be encrypted
-             @param smallPrimes
-                        the small primes, of which sigma is constructed in the right
-                        order
-             @param phi_n
-                        the private modulus phi(n) = (p-1)(q-1)
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Parameters.ParametersWithSalt">
-            <summary> Cipher parameters with a fixed salt value associated with them.</summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Prng.DigestRandomGenerator">
-            Random generation based on the digest with counter. Calling AddSeedMaterial will
-            always increase the entropy of the hash.
-            <p>
-            Internal access to the digest is synchronized so a single one of these can be shared.
-            </p>
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Prng.IRandomGenerator">
-            <remarks>Generic interface for objects generating random bytes.</remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Prng.IRandomGenerator.AddSeedMaterial(System.Byte[])">
-            <summary>Add more seed material to the generator.</summary>
-            <param name="seed">A byte array to be mixed into the generator's state.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Prng.IRandomGenerator.AddSeedMaterial(System.Int64)">
-            <summary>Add more seed material to the generator.</summary>
-            <param name="seed">A long value to be mixed into the generator's state.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Prng.IRandomGenerator.NextBytes(System.Byte[])">
-            <summary>Fill byte array with random values.</summary>
-            <param name="bytes">Array to be filled.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Prng.IRandomGenerator.NextBytes(System.Byte[],System.Int32,System.Int32)">
-            <summary>Fill byte array with random values.</summary>
-            <param name="bytes">Array to receive bytes.</param>
-            <param name="start">Index to start filling at.</param>
-            <param name="len">Length of segment to fill.</param>
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Prng.ReversedWindowGenerator">
-            <remarks>
-            Takes bytes generated by an underling RandomGenerator and reverses the order in
-            each small window (of configurable size).
-            <p>
-            Access to internals is synchronized so a single one of these can be shared.
-            </p>
-            </remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Prng.ReversedWindowGenerator.AddSeedMaterial(System.Byte[])">
-            <summary>Add more seed material to the generator.</summary>
-            <param name="seed">A byte array to be mixed into the generator's state.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Prng.ReversedWindowGenerator.AddSeedMaterial(System.Int64)">
-            <summary>Add more seed material to the generator.</summary>
-            <param name="seed">A long value to be mixed into the generator's state.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Prng.ReversedWindowGenerator.NextBytes(System.Byte[])">
-            <summary>Fill byte array with random values.</summary>
-            <param name="bytes">Array to be filled.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Prng.ReversedWindowGenerator.NextBytes(System.Byte[],System.Int32,System.Int32)">
-            <summary>Fill byte array with random values.</summary>
-            <param name="bytes">Array to receive bytes.</param>
-            <param name="start">Index to start filling at.</param>
-            <param name="len">Length of segment to fill.</param>
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Prng.ThreadedSeedGenerator">
-            A thread based seed generator - one source of randomness.
-            <p>
-            Based on an idea from Marcus Lippert.
-            </p>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Prng.ThreadedSeedGenerator.GenerateSeed(System.Int32,System.Boolean)">
-            Generate seed bytes. Set fast to false for best quality.
-            <p>
-            If fast is set to true, the code should be round about 8 times faster when
-            generating a long sequence of random bytes. 20 bytes of random values using
-            the fast mode take less than half a second on a Nokia e70. If fast is set to false,
-            it takes round about 2500 ms.
-            </p>
-            @param numBytes the number of bytes to generate
-            @param fast true if fast mode should be used
-        </member>
-        <member name="F:Org.BouncyCastle.Crypto.Prng.VmpcRandomGenerator.P">
-            <remarks>
-            Permutation generated by code:
-            <code>
-            // First 1850 fractional digit of Pi number. 
-            byte[] key = new BigInteger("14159265358979323846...5068006422512520511").ToByteArray();
-            s = 0;
-            P = new byte[256];
-            for (int i = 0; i &lt; 256; i++) 
-            {
-                P[i] = (byte) i;
-            }
-            for (int m = 0; m &lt; 768; m++) 
-            {
-                s = P[(s + P[m &amp; 0xff] + key[m % key.length]) &amp; 0xff];
-                byte temp = P[m &amp; 0xff];
-                P[m &amp; 0xff] = P[s &amp; 0xff];
-                P[s &amp; 0xff] = temp;
-            } </code>
-            </remarks>
-        </member>
-        <member name="F:Org.BouncyCastle.Crypto.Prng.VmpcRandomGenerator.s">
-            <remarks>Value generated in the same way as <c>P</c>.</remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.DsaDigestSigner.Update(System.Byte)">
-            update the internal digest with the byte b
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.DsaDigestSigner.BlockUpdate(System.Byte[],System.Int32,System.Int32)">
-            update the internal digest with the byte array in
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.DsaDigestSigner.GenerateSignature">
-            Generate a signature for the message we've been loaded with using
-            the key we were initialised with.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.DsaDigestSigner.VerifySignature(System.Byte[])">
-            <returns>true if the internal state represents the signature described in the passed in array.</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.DsaDigestSigner.Reset">
-            <summary>Reset the internal state</summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Signers.DsaSigner">
-            The Digital Signature Algorithm - as described in "Handbook of Applied
-            Cryptography", pages 452 - 453.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.DsaSigner.GenerateSignature(System.Byte[])">
-             Generate a signature for the given message using the key we were
-             initialised with. For conventional DSA the message should be a SHA-1
-             hash of the message of interest.
-            
-             @param message the message that will be verified later.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.DsaSigner.VerifySignature(System.Byte[],Org.BouncyCastle.Math.BigInteger,Org.BouncyCastle.Math.BigInteger)">
-            return true if the value r and s represent a DSA signature for
-            the passed in message for standard DSA the message should be a
-            SHA-1 hash of the real message to be verified.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Signers.ECDsaSigner">
-            EC-DSA as described in X9.62
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.ECDsaSigner.GenerateSignature(System.Byte[])">
-             Generate a signature for the given message using the key we were
-             initialised with. For conventional DSA the message should be a SHA-1
-             hash of the message of interest.
-            
-             @param message the message that will be verified later.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.ECDsaSigner.VerifySignature(System.Byte[],Org.BouncyCastle.Math.BigInteger,Org.BouncyCastle.Math.BigInteger)">
-            return true if the value r and s represent a DSA signature for
-            the passed in message (for standard DSA the message should be
-            a SHA-1 hash of the real message to be verified).
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Signers.ECGost3410Signer">
-            GOST R 34.10-2001 Signature Algorithm
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.ECGost3410Signer.GenerateSignature(System.Byte[])">
-             generate a signature for the given message using the key we were
-             initialised with. For conventional GOST3410 the message should be a GOST3411
-             hash of the message of interest.
-            
-             @param message the message that will be verified later.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.ECGost3410Signer.VerifySignature(System.Byte[],Org.BouncyCastle.Math.BigInteger,Org.BouncyCastle.Math.BigInteger)">
-            return true if the value r and s represent a GOST3410 signature for
-            the passed in message (for standard GOST3410 the message should be
-            a GOST3411 hash of the real message to be verified).
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Signers.ECNRSigner">
-            EC-NR as described in IEEE 1363-2000
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.ECNRSigner.GenerateSignature(System.Byte[])">
-             generate a signature for the given message using the key we were
-             initialised with.  Generally, the order of the curve should be at
-             least as long as the hash of the message of interest, and with
-             ECNR it *must* be at least as long.
-            
-             @param digest  the digest to be signed.
-             @exception DataLengthException if the digest is longer than the key allows
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.ECNRSigner.VerifySignature(System.Byte[],Org.BouncyCastle.Math.BigInteger,Org.BouncyCastle.Math.BigInteger)">
-             return true if the value r and s represent a signature for the
-             message passed in. Generally, the order of the curve should be at
-             least as long as the hash of the message of interest, and with
-             ECNR, it *must* be at least as long.  But just in case the signer
-             applied mod(n) to the longer digest, this implementation will
-             apply mod(n) during verification.
-            
-             @param digest  the digest to be verified.
-             @param r       the r value of the signature.
-             @param s       the s value of the signature.
-             @exception DataLengthException if the digest is longer than the key allows
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.GenericSigner.Init(System.Boolean,Org.BouncyCastle.Crypto.ICipherParameters)">
-             initialise the signer for signing or verification.
-            
-             @param forSigning
-                        true if for signing, false otherwise
-             @param parameters
-                        necessary parameters.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.GenericSigner.Update(System.Byte)">
-            update the internal digest with the byte b
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.GenericSigner.BlockUpdate(System.Byte[],System.Int32,System.Int32)">
-            update the internal digest with the byte array in
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.GenericSigner.GenerateSignature">
-            Generate a signature for the message we've been loaded with using the key
-            we were initialised with.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.GenericSigner.VerifySignature(System.Byte[])">
-            return true if the internal state represents the signature described in
-            the passed in array.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.Gost3410DigestSigner.Update(System.Byte)">
-            update the internal digest with the byte b
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.Gost3410DigestSigner.BlockUpdate(System.Byte[],System.Int32,System.Int32)">
-            update the internal digest with the byte array in
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.Gost3410DigestSigner.GenerateSignature">
-            Generate a signature for the message we've been loaded with using
-            the key we were initialised with.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.Gost3410DigestSigner.VerifySignature(System.Byte[])">
-            <returns>true if the internal state represents the signature described in the passed in array.</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.Gost3410DigestSigner.Reset">
-            <summary>Reset the internal state</summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Signers.Gost3410Signer">
-            Gost R 34.10-94 Signature Algorithm
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.Gost3410Signer.GenerateSignature(System.Byte[])">
-             generate a signature for the given message using the key we were
-             initialised with. For conventional Gost3410 the message should be a Gost3411
-             hash of the message of interest.
-            
-             @param message the message that will be verified later.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.Gost3410Signer.VerifySignature(System.Byte[],Org.BouncyCastle.Math.BigInteger,Org.BouncyCastle.Math.BigInteger)">
-            return true if the value r and s represent a Gost3410 signature for
-            the passed in message for standard Gost3410 the message should be a
-            Gost3411 hash of the real message to be verified.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Signers.Iso9796d2PssSigner">
-            <summary> ISO9796-2 - mechanism using a hash function with recovery (scheme 2 and 3).
-            <p>
-            Note: the usual length for the salt is the length of the hash
-            function used in bytes.</p>
-            </summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.Iso9796d2PssSigner.GetRecoveredMessage">
-            <summary>
-            Return a reference to the recoveredMessage message.
-            </summary>
-            <returns>The full/partial recoveredMessage message.</returns>
-            <seealso cref="M:Org.BouncyCastle.Crypto.ISignerWithRecovery.GetRecoveredMessage"/>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.Iso9796d2PssSigner.#ctor(Org.BouncyCastle.Crypto.IAsymmetricBlockCipher,Org.BouncyCastle.Crypto.IDigest,System.Int32,System.Boolean)">
-            <summary>
-            Generate a signer for the with either implicit or explicit trailers
-            for ISO9796-2, scheme 2 or 3.
-            </summary>
-            <param name="cipher">base cipher to use for signature creation/verification</param>
-            <param name="digest">digest to use.</param>
-            <param name="saltLength">length of salt in bytes.</param>
-            <param name="isImplicit">whether or not the trailer is implicit or gives the hash.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.Iso9796d2PssSigner.#ctor(Org.BouncyCastle.Crypto.IAsymmetricBlockCipher,Org.BouncyCastle.Crypto.IDigest,System.Int32)">
-             <summary> Constructor for a signer with an explicit digest trailer.
-            
-             </summary>
-             <param name="cipher">cipher to use.
-             </param>
-             <param name="digest">digest to sign with.
-             </param>
-             <param name="saltLength">length of salt in bytes.
-             </param>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.Iso9796d2PssSigner.Init(System.Boolean,Org.BouncyCastle.Crypto.ICipherParameters)">
-            <summary>Initialise the signer.</summary>
-            <param name="forSigning">true if for signing, false if for verification.</param>
-            <param name="parameters">parameters for signature generation/verification. If the
-            parameters are for generation they should be a ParametersWithRandom,
-            a ParametersWithSalt, or just an RsaKeyParameters object. If RsaKeyParameters
-            are passed in a SecureRandom will be created.
-            </param>
-            <exception cref="T:System.ArgumentException">if wrong parameter type or a fixed
-            salt is passed in which is the wrong length.
-            </exception>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.Iso9796d2PssSigner.IsSameAs(System.Byte[],System.Byte[])">
-            <summary> compare two byte arrays - constant time.</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.Iso9796d2PssSigner.ClearBlock(System.Byte[])">
-            <summary> clear possible sensitive data</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.Iso9796d2PssSigner.Update(System.Byte)">
-            <summary> update the internal digest with the byte b</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.Iso9796d2PssSigner.BlockUpdate(System.Byte[],System.Int32,System.Int32)">
-            <summary> update the internal digest with the byte array in</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.Iso9796d2PssSigner.Reset">
-            <summary> reset the internal state</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.Iso9796d2PssSigner.GenerateSignature">
-            <summary> Generate a signature for the loaded message using the key we were
-            initialised with.
-            </summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.Iso9796d2PssSigner.VerifySignature(System.Byte[])">
-            <summary> return true if the signature represents a ISO9796-2 signature
-            for the passed in message.
-            </summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.Iso9796d2PssSigner.HasFullMessage">
-            <summary>
-            Return true if the full message was recoveredMessage.
-            </summary>
-            <returns>true on full message recovery, false otherwise, or if not sure.</returns>
-            <seealso cref="M:Org.BouncyCastle.Crypto.ISignerWithRecovery.HasFullMessage"/>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.Iso9796d2PssSigner.ItoOSP(System.Int32,System.Byte[])">
-            <summary> int to octet string.</summary>
-            <summary> int to octet string.</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.Iso9796d2PssSigner.LtoOSP(System.Int64,System.Byte[])">
-            <summary> long to octet string.</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.Iso9796d2PssSigner.MaskGeneratorFunction1(System.Byte[],System.Int32,System.Int32,System.Int32)">
-            <summary> mask generator function, as described in Pkcs1v2.</summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Signers.Iso9796d2Signer">
-            <summary> ISO9796-2 - mechanism using a hash function with recovery (scheme 1)</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.Iso9796d2Signer.GetRecoveredMessage">
-            <summary>
-            Return a reference to the recoveredMessage message.
-            </summary>
-            <returns>The full/partial recoveredMessage message.</returns>
-            <seealso cref="M:Org.BouncyCastle.Crypto.ISignerWithRecovery.GetRecoveredMessage"/>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.Iso9796d2Signer.#ctor(Org.BouncyCastle.Crypto.IAsymmetricBlockCipher,Org.BouncyCastle.Crypto.IDigest,System.Boolean)">
-            <summary>
-            Generate a signer for the with either implicit or explicit trailers
-            for ISO9796-2.
-            </summary>
-            <param name="cipher">base cipher to use for signature creation/verification</param>
-            <param name="digest">digest to use.</param>
-            <param name="isImplicit">whether or not the trailer is implicit or gives the hash.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.Iso9796d2Signer.#ctor(Org.BouncyCastle.Crypto.IAsymmetricBlockCipher,Org.BouncyCastle.Crypto.IDigest)">
-             <summary> Constructor for a signer with an explicit digest trailer.
-            
-             </summary>
-             <param name="cipher">cipher to use.
-             </param>
-             <param name="digest">digest to sign with.
-             </param>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.Iso9796d2Signer.IsSameAs(System.Byte[],System.Byte[])">
-            <summary> compare two byte arrays - constant time.</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.Iso9796d2Signer.ClearBlock(System.Byte[])">
-            <summary> clear possible sensitive data</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.Iso9796d2Signer.Update(System.Byte)">
-            <summary> update the internal digest with the byte b</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.Iso9796d2Signer.BlockUpdate(System.Byte[],System.Int32,System.Int32)">
-            <summary> update the internal digest with the byte array in</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.Iso9796d2Signer.Reset">
-            <summary> reset the internal state</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.Iso9796d2Signer.GenerateSignature">
-            <summary> Generate a signature for the loaded message using the key we were
-            initialised with.
-            </summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.Iso9796d2Signer.VerifySignature(System.Byte[])">
-            <summary> return true if the signature represents a ISO9796-2 signature
-            for the passed in message.
-            </summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.Iso9796d2Signer.HasFullMessage">
-            <summary>
-            Return true if the full message was recoveredMessage.
-            </summary>
-            <returns> true on full message recovery, false otherwise.</returns>
-            <seealso cref="M:Org.BouncyCastle.Crypto.ISignerWithRecovery.HasFullMessage"/>
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Signers.PssSigner">
-            <summary> RSA-PSS as described in Pkcs# 1 v 2.1.
-            <p>
-            Note: the usual value for the salt length is the number of
-            bytes in the hash function.</p>
-            </summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.PssSigner.#ctor(Org.BouncyCastle.Crypto.IAsymmetricBlockCipher,Org.BouncyCastle.Crypto.IDigest,System.Int32)">
-            <summary>Basic constructor</summary>
-            <param name="cipher">the asymmetric cipher to use.</param>
-            <param name="digest">the digest to use.</param>
-            <param name="saltLen">the length of the salt to use (in bytes).</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.PssSigner.ClearBlock(System.Byte[])">
-            <summary> clear possible sensitive data</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.PssSigner.Update(System.Byte)">
-            <summary> update the internal digest with the byte b</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.PssSigner.BlockUpdate(System.Byte[],System.Int32,System.Int32)">
-            <summary> update the internal digest with the byte array in</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.PssSigner.Reset">
-            <summary> reset the internal state</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.PssSigner.GenerateSignature">
-            <summary> Generate a signature for the message we've been loaded with using
-            the key we were initialised with.
-            </summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.PssSigner.VerifySignature(System.Byte[])">
-            <summary> return true if the internal state represents the signature described
-            in the passed in array.
-            </summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.PssSigner.ItoOSP(System.Int32,System.Byte[])">
-            <summary> int to octet string.</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.PssSigner.MaskGeneratorFunction1(System.Byte[],System.Int32,System.Int32,System.Int32)">
-            <summary> mask generator function, as described in Pkcs1v2.</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.RsaDigestSigner.#cctor">
-            <summary>
-            Load oid table.
-            </summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.RsaDigestSigner.Init(System.Boolean,Org.BouncyCastle.Crypto.ICipherParameters)">
-             Initialise the signer for signing or verification.
-            
-             @param forSigning true if for signing, false otherwise
-             @param param necessary parameters.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.RsaDigestSigner.Update(System.Byte)">
-            update the internal digest with the byte b
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.RsaDigestSigner.BlockUpdate(System.Byte[],System.Int32,System.Int32)">
-            update the internal digest with the byte array in
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.RsaDigestSigner.GenerateSignature">
-            Generate a signature for the message we've been loaded with using
-            the key we were initialised with.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Signers.RsaDigestSigner.VerifySignature(System.Byte[])">
-            return true if the internal state represents the signature described
-            in the passed in array.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.StreamBlockCipher">
-            a wrapper for block ciphers with a single byte block size, so that they
-            can be treated like stream ciphers.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.StreamBlockCipher.#ctor(Org.BouncyCastle.Crypto.IBlockCipher)">
-             basic constructor.
-            
-             @param cipher the block cipher to be wrapped.
-             @exception ArgumentException if the cipher has a block size other than
-             one.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.StreamBlockCipher.Init(System.Boolean,Org.BouncyCastle.Crypto.ICipherParameters)">
-             initialise the underlying cipher.
-            
-             @param forEncryption true if we are setting up for encryption, false otherwise.
-             @param param the necessary parameters for the underlying cipher to be initialised.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.StreamBlockCipher.ReturnByte(System.Byte)">
-             encrypt/decrypt a single byte returning the result.
-            
-             @param in the byte to be processed.
-             @return the result of processing the input byte.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.StreamBlockCipher.ProcessBytes(System.Byte[],System.Int32,System.Int32,System.Byte[],System.Int32)">
-             process a block of bytes from in putting the result into out.
-            
-             @param in the input byte array.
-             @param inOff the offset into the in array where the data to be processed starts.
-             @param len the number of bytes to be processed.
-             @param out the output buffer the processed bytes go into.
-             @param outOff the offset into the output byte array the processed data stars at.
-             @exception DataLengthException if the output buffer is too small.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.StreamBlockCipher.Reset">
-            reset the underlying cipher. This leaves it in the same state
-            it was at after the last init (if there was one).
-        </member>
-        <member name="P:Org.BouncyCastle.Crypto.StreamBlockCipher.AlgorithmName">
-             return the name of the algorithm we are wrapping.
-            
-             @return the name of the algorithm we are wrapping.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Tls.AlertDescription">
-            <summary>
-            RFC 2246 7.2
-            </summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Tls.AlertLevel">
-            <summary>
-            RFC 2246 7.2
-            </summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Tls.AlwaysValidVerifyer">
-            <remarks>
-            A certificate verifyer, that will always return true.
-            <pre>
-            DO NOT USE THIS FILE UNLESS YOU KNOW EXACTLY WHAT YOU ARE DOING.
-            </pre>
-            </remarks>
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Tls.ICertificateVerifyer">
-            <remarks>
-            This should be implemented by any class which can find out, if a given
-            certificate chain is being accepted by an client.
-            </remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.ICertificateVerifyer.IsValid(Org.BouncyCastle.Asn1.X509.X509CertificateStructure[])">
-            <param name="certs">The certs, which are part of the chain.</param>
-            <returns>True, if the chain is accepted, false otherwise</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.AlwaysValidVerifyer.IsValid(Org.BouncyCastle.Asn1.X509.X509CertificateStructure[])">
-            <summary>Return true.</summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Tls.ByteQueue">
-            <remarks>
-            A queue for bytes.
-            <p>
-            This file could be more optimized.
-            </p>
-            </remarks>
-        </member>
-        <member name="F:Org.BouncyCastle.Crypto.Tls.ByteQueue.InitBufSize">
-            The initial size for our buffer.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.ByteQueue.NextTwoPow(System.Int32)">
-            <returns>The smallest number which can be written as 2^x which is bigger than i.</returns>
-        </member>
-        <member name="F:Org.BouncyCastle.Crypto.Tls.ByteQueue.databuf">
-            The buffer where we store our data.
-        </member>
-        <member name="F:Org.BouncyCastle.Crypto.Tls.ByteQueue.skipped">
-            How many bytes at the beginning of the buffer are skipped.
-        </member>
-        <member name="F:Org.BouncyCastle.Crypto.Tls.ByteQueue.available">
-            How many bytes in the buffer are valid data.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.ByteQueue.Read(System.Byte[],System.Int32,System.Int32,System.Int32)">
-            <summary>Read data from the buffer.</summary>
-            <param name="buf">The buffer where the read data will be copied to.</param>
-            <param name="offset">How many bytes to skip at the beginning of buf.</param>
-            <param name="len">How many bytes to read at all.</param>
-            <param name="skip">How many bytes from our data to skip.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.ByteQueue.AddData(System.Byte[],System.Int32,System.Int32)">
-            <summary>Add some data to our buffer.</summary>
-            <param name="data">A byte-array to read data from.</param>
-            <param name="offset">How many bytes to skip at the beginning of the array.</param>
-            <param name="len">How many bytes to read from the array.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.ByteQueue.RemoveData(System.Int32)">
-            <summary>Remove some bytes from our data from the beginning.</summary>
-            <param name="i">How many bytes to remove.</param>
-        </member>
-        <member name="P:Org.BouncyCastle.Crypto.Tls.ByteQueue.Available">
-            <summary>The number of bytes which are available in this buffer.</summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Tls.Certificate">
-            A representation for a certificate chain.
-        </member>
-        <member name="F:Org.BouncyCastle.Crypto.Tls.Certificate.certs">
-            The certificates.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.Certificate.Parse(System.IO.Stream)">
-             Parse the ServerCertificate message.
-            
-             @param inStr The stream where to parse from.
-             @return A Certificate object with the certs, the server has sended.
-             @throws IOException If something goes wrong during parsing.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.Certificate.Encode(System.IO.Stream)">
-             Encodes version of the ClientCertificate message
-            
-             @param outStr stream to write the message to
-             @throws IOException If something goes wrong
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.Certificate.#ctor(Org.BouncyCastle.Asn1.X509.X509CertificateStructure[])">
-             Private constructor from a cert array.
-            
-             @param certs The certs the chain should contain.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.Certificate.GetCerts">
-            <returns>An array which contains the certs, this chain contains.</returns>
-        </member>
-        <member name="P:Org.BouncyCastle.Crypto.Tls.CertificateRequest.CertificateAuthorities">
-            <returns>A <see cref="T:System.Collections.IList"/> of X509Name</returns>
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Tls.CipherSuite">
-            <summary>
-            RFC 2246 A.5
-            </summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Tls.ClientCertificateType">
-            <summary>
-            RFC 2246 7.4.4
-            </summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Tls.CombinedHash">
-            <remarks>A combined hash, which implements md5(m) || sha1(m).</remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.CombinedHash.GetByteLength">
-            <seealso cref="M:Org.BouncyCastle.Crypto.IDigest.GetByteLength"/>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.CombinedHash.GetDigestSize">
-            <seealso cref="M:Org.BouncyCastle.Crypto.IDigest.GetDigestSize"/>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.CombinedHash.Update(System.Byte)">
-            <seealso cref="M:Org.BouncyCastle.Crypto.IDigest.Update(System.Byte)"/>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.CombinedHash.BlockUpdate(System.Byte[],System.Int32,System.Int32)">
-            <seealso cref="M:Org.BouncyCastle.Crypto.IDigest.BlockUpdate(System.Byte[],System.Int32,System.Int32)"/>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.CombinedHash.DoFinal(System.Byte[],System.Int32)">
-            <seealso cref="M:Org.BouncyCastle.Crypto.IDigest.DoFinal(System.Byte[],System.Int32)"/>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.CombinedHash.Reset">
-            <seealso cref="M:Org.BouncyCastle.Crypto.IDigest.Reset"/>
-        </member>
-        <member name="P:Org.BouncyCastle.Crypto.Tls.CombinedHash.AlgorithmName">
-            <seealso cref="P:Org.BouncyCastle.Crypto.IDigest.AlgorithmName"/>
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Tls.CompressionMethod">
-            <summary>
-            RFC 2246 6.1
-            </summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Tls.ContentType">
-            <summary>
-            RFC 2246 6.2.1
-            </summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.TlsAgreementCredentials.GenerateAgreement(Org.BouncyCastle.Crypto.AsymmetricKeyParameter)">
-            <exception cref="T:System.IO.IOException"></exception>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.TlsCipherFactory.CreateCipher(Org.BouncyCastle.Crypto.Tls.TlsClientContext,Org.BouncyCastle.Crypto.Tls.EncryptionAlgorithm,Org.BouncyCastle.Crypto.Tls.DigestAlgorithm)">
-            <exception cref="T:System.IO.IOException"></exception>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.DefaultTlsCipherFactory.CreateAesCipher(Org.BouncyCastle.Crypto.Tls.TlsClientContext,System.Int32,Org.BouncyCastle.Crypto.Tls.DigestAlgorithm)">
-            <exception cref="T:System.IO.IOException"></exception>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.DefaultTlsCipherFactory.CreateDesEdeCipher(Org.BouncyCastle.Crypto.Tls.TlsClientContext,System.Int32,Org.BouncyCastle.Crypto.Tls.DigestAlgorithm)">
-            <exception cref="T:System.IO.IOException"></exception>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.DefaultTlsCipherFactory.CreateDigest(Org.BouncyCastle.Crypto.Tls.DigestAlgorithm)">
-            <exception cref="T:System.IO.IOException"></exception>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.TlsClient.Init(Org.BouncyCastle.Crypto.Tls.TlsClientContext)">
-            <summary>
-            Called at the start of a new TLS session, before any other methods.
-            </summary>
-            <param name="context">
-            A <see cref="T:Org.BouncyCastle.Crypto.Tls.TlsProtocolHandler"/>
-            </param>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.TlsClient.GetCipherSuites">
-            <summary>
-            Get the list of cipher suites that this client supports.
-            </summary>
-            <returns>
-            An array of <see cref="T:Org.BouncyCastle.Crypto.Tls.CipherSuite"/>, each specifying a supported cipher suite.
-            </returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.TlsClient.GetCompressionMethods">
-            <summary>
-            Get the list of compression methods that this client supports.
-            </summary>
-            <returns>
-            An array of <see cref="T:Org.BouncyCastle.Crypto.Tls.CompressionMethod"/>, each specifying a supported compression method.
-            </returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.TlsClient.GetClientExtensions">
-            <summary>
-            Get the (optional) table of client extensions to be included in (extended) client hello.
-            </summary>
-            <returns>
-            A <see cref="T:System.Collections.IDictionary"/> (<see cref="T:Org.BouncyCastle.Crypto.Tls.ExtensionType"/> -&gt; byte[]). May be null.
-            </returns>
-            <exception cref="T:System.IO.IOException"></exception>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.TlsClient.NotifySessionID(System.Byte[])">
-            <summary>
-            Reports the session ID once it has been determined.
-            </summary>
-            <param name="sessionID">
-            A <see cref="T:System.Byte"/>
-            </param>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.TlsClient.NotifySelectedCipherSuite(Org.BouncyCastle.Crypto.Tls.CipherSuite)">
-            <summary>
-            Report the cipher suite that was selected by the server.
-            </summary>
-            <remarks>
-            The protocol handler validates this value against the offered cipher suites
-            <seealso cref="M:Org.BouncyCastle.Crypto.Tls.TlsClient.GetCipherSuites"/>
-            </remarks>
-            <param name="selectedCipherSuite">
-            A <see cref="T:Org.BouncyCastle.Crypto.Tls.CipherSuite"/>
-            </param>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.TlsClient.NotifySelectedCompressionMethod(Org.BouncyCastle.Crypto.Tls.CompressionMethod)">
-            <summary>
-            Report the compression method that was selected by the server.
-            </summary>
-            <remarks>
-            The protocol handler validates this value against the offered compression methods
-            <seealso cref="M:Org.BouncyCastle.Crypto.Tls.TlsClient.GetCompressionMethods"/>
-            </remarks>
-            <param name="selectedCompressionMethod">
-            A <see cref="T:Org.BouncyCastle.Crypto.Tls.CompressionMethod"/>
-            </param>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.TlsClient.NotifySecureRenegotiation(System.Boolean)">
-            <summary>
-            Report whether the server supports secure renegotiation
-            </summary>
-            <remarks>
-            The protocol handler automatically processes the relevant extensions
-            </remarks>
-            <param name="secureRenegotiation">
-            A <see cref="T:System.Boolean"/>, true if the server supports secure renegotiation
-            </param>
-            <exception cref="T:System.IO.IOException"></exception>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.TlsClient.ProcessServerExtensions(System.Collections.IDictionary)">
-            <summary>
-            Report the extensions from an extended server hello.
-            </summary>
-            <remarks>
-            Will only be called if we returned a non-null result from <see cref="M:Org.BouncyCastle.Crypto.Tls.TlsClient.GetClientExtensions"/>.
-            </remarks>
-            <param name="serverExtensions">
-            A <see cref="T:System.Collections.IDictionary"/>  (<see cref="T:Org.BouncyCastle.Crypto.Tls.ExtensionType"/> -&gt; byte[])
-            </param>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.TlsClient.GetKeyExchange">
-            <summary>
-            Return an implementation of <see cref="T:Org.BouncyCastle.Crypto.Tls.TlsKeyExchange"/> to negotiate the key exchange
-            part of the protocol.
-            </summary>
-            <returns>
-            A <see cref="T:Org.BouncyCastle.Crypto.Tls.TlsKeyExchange"/>
-            </returns>
-            <exception cref="T:System.IO.IOException"/>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.TlsClient.GetAuthentication">
-            <summary>
-            Return an implementation of <see cref="T:Org.BouncyCastle.Crypto.Tls.TlsAuthentication"/> to handle authentication
-            part of the protocol.
-            </summary>
-            <exception cref="T:System.IO.IOException"/>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.TlsClient.GetCompression">
-            <summary>
-            Return an implementation of <see cref="T:Org.BouncyCastle.Crypto.Tls.TlsCompression"/> to handle record compression.
-            </summary>
-            <exception cref="T:System.IO.IOException"/>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.TlsClient.GetCipher">
-            <summary>
-            Return an implementation of <see cref="T:Org.BouncyCastle.Crypto.Tls.TlsCipher"/> to use for encryption/decryption.
-            </summary>
-            <returns>
-            A <see cref="T:Org.BouncyCastle.Crypto.Tls.TlsCipher"/>
-            </returns>
-            <exception cref="T:System.IO.IOException"/>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.TlsSignerCredentials.GenerateCertificateSignature(System.Byte[])">
-            <exception cref="T:System.IO.IOException"></exception>
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Tls.ECCurveType">
-            <summary>
-            RFC 4492 5.4
-            </summary>
-        </member>
-        <member name="F:Org.BouncyCastle.Crypto.Tls.ECCurveType.explicit_prime">
-            Indicates the elliptic curve domain parameters are conveyed verbosely, and the
-            underlying finite field is a prime field.
-        </member>
-        <member name="F:Org.BouncyCastle.Crypto.Tls.ECCurveType.explicit_char2">
-            Indicates the elliptic curve domain parameters are conveyed verbosely, and the
-            underlying finite field is a characteristic-2 field.
-        </member>
-        <member name="F:Org.BouncyCastle.Crypto.Tls.ECCurveType.named_curve">
-            Indicates that a named curve is used. This option SHOULD be used when applicable.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Tls.ECPointFormat">
-            <summary>
-            RFC 4492 5.1.2
-            </summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Tls.ExtensionType">
-            <summary>
-            RFC 4366 2.3
-            </summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Tls.HandshakeType">
-            <summary>
-            RFC 2246 7.4
-            </summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Tls.LegacyTlsAuthentication">
-            <summary>
-            A temporary class to wrap old CertificateVerifyer stuff for new TlsAuthentication.
-            </summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.TlsAuthentication.NotifyServerCertificate(Org.BouncyCastle.Crypto.Tls.Certificate)">
-            <summary>
-            Called by the protocol handler to report the server certificate.
-            </summary>
-            <remarks>
-            This method is responsible for certificate verification and validation
-            </remarks>
-            <param name="serverCertificate">The server <see cref="T:Org.BouncyCastle.Crypto.Tls.Certificate"/> received</param>
-            <exception cref="T:System.IO.IOException"></exception>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.TlsAuthentication.GetClientCredentials(Org.BouncyCastle.Crypto.Tls.CertificateRequest)">
-            <summary>
-            Return client credentials in response to server's certificate request
-            </summary>
-            <param name="certificateRequest">
-            A <see cref="T:Org.BouncyCastle.Crypto.Tls.CertificateRequest"/> containing server certificate request details
-            </param>
-            <returns>
-            A <see cref="T:Org.BouncyCastle.Crypto.Tls.TlsCredentials"/> to be used for client authentication
-            (or <c>null</c> for no client authentication)
-            </returns>
-            <exception cref="T:System.IO.IOException"></exception>
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Tls.LegacyTlsClient">
-            <summary>
-            A temporary class to use LegacyTlsAuthentication 
-            </summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Tls.NamedCurve">
-            <summary>
-            RFC 4492 5.1.1
-            The named curves defined here are those specified in SEC 2 [13]. Note that many of
-            these curves are also recommended in ANSI X9.62 [7] and FIPS 186-2 [11]. Values 0xFE00
-            through 0xFEFF are reserved for private use. Values 0xFF01 and 0xFF02 indicate that the
-            client supports arbitrary prime and characteristic-2 curves, respectively (the curve
-            parameters must be encoded explicitly in ECParameters).
-            </summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Tls.RecordStream">
-            <remarks>An implementation of the TLS 1.0 record layer.</remarks>
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Tls.Ssl3Mac">
-            HMAC implementation based on original internet draft for HMAC (RFC 2104)
-            
-            The difference is that padding is concatentated versus XORed with the key
-            
-            H(K + opad, H(K + ipad, text))
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.Ssl3Mac.#ctor(Org.BouncyCastle.Crypto.IDigest)">
-            Base constructor for one of the standard digest algorithms that the byteLength of
-            the algorithm is know for. Behaviour is undefined for digests other than MD5 or SHA1.
-            
-            @param digest the digest.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.Ssl3Mac.Reset">
-            Reset the mac generator.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Tls.TlsBlockCipher">
-            <summary>
-            A generic TLS 1.0 block cipher. This can be used for AES or 3DES for example.
-            </summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.TlsCipher.EncodePlaintext(Org.BouncyCastle.Crypto.Tls.ContentType,System.Byte[],System.Int32,System.Int32)">
-            <exception cref="T:System.IO.IOException"></exception>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.TlsCipher.DecodeCiphertext(Org.BouncyCastle.Crypto.Tls.ContentType,System.Byte[],System.Int32,System.Int32)">
-            <exception cref="T:System.IO.IOException"></exception>
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Tls.TlsDHKeyExchange">
-            <summary>
-            TLS 1.0 DH key exchange.
-            </summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Tls.TlsKeyExchange">
-            <summary>
-            A generic interface for key exchange implementations in TLS 1.0.
-            </summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.TlsKeyExchange.SkipServerCertificate">
-            <exception cref="T:System.IO.IOException"/>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.TlsKeyExchange.ProcessServerCertificate(Org.BouncyCastle.Crypto.Tls.Certificate)">
-            <exception cref="T:System.IO.IOException"/>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.TlsKeyExchange.SkipServerKeyExchange">
-            <exception cref="T:System.IO.IOException"/>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.TlsKeyExchange.ProcessServerKeyExchange(System.IO.Stream)">
-            <exception cref="T:System.IO.IOException"/>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.TlsKeyExchange.ValidateCertificateRequest(Org.BouncyCastle.Crypto.Tls.CertificateRequest)">
-            <exception cref="T:System.IO.IOException"/>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.TlsKeyExchange.SkipClientCredentials">
-            <exception cref="T:System.IO.IOException"/>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.TlsKeyExchange.ProcessClientCredentials(Org.BouncyCastle.Crypto.Tls.TlsCredentials)">
-            <exception cref="T:System.IO.IOException"/>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.TlsKeyExchange.GenerateClientKeyExchange(System.IO.Stream)">
-            <exception cref="T:System.IO.IOException"/>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.TlsKeyExchange.GeneratePremasterSecret">
-            <exception cref="T:System.IO.IOException"/>
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Tls.TlsECDheKeyExchange">
-            ECDHE key exchange (see RFC 4492)
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Tls.TlsECDHKeyExchange">
-            ECDH key exchange (see RFC 4492)
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Tls.TlsMac">
-            <remarks>
-            A generic TLS MAC implementation, which can be used with any kind of
-            IDigest to act as an HMAC.
-            </remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.TlsMac.#ctor(Org.BouncyCastle.Crypto.IDigest,System.Byte[],System.Int32,System.Int32)">
-             Generate a new instance of an TlsMac.
-            
-             @param digest    The digest to use.
-             @param key_block A byte-array where the key for this mac is located.
-             @param offset    The number of bytes to skip, before the key starts in the buffer.
-             @param len       The length of the key.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.TlsMac.GetMacSecret">
-            @return the MAC write secret
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.TlsMac.IncSequenceNumber">
-            Increment the current write sequence number
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.TlsMac.CalculateMac(Org.BouncyCastle.Crypto.Tls.ContentType,System.Byte[],System.Int32,System.Int32)">
-             Calculate the mac for some given data.
-             <p/>
-             TlsMac will keep track of the sequence number internally.
-            
-             @param type    The message type of the message.
-             @param message A byte-buffer containing the message.
-             @param offset  The number of bytes to skip, before the message starts.
-             @param len     The length of the message.
-             @return A new byte-buffer containing the mac value.
-        </member>
-        <member name="P:Org.BouncyCastle.Crypto.Tls.TlsMac.SequenceNumber">
-            @return the current write sequence number
-        </member>
-        <member name="P:Org.BouncyCastle.Crypto.Tls.TlsMac.Size">
-            @return The Keysize of the mac.
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Tls.TlsNullCipher">
-            <summary>
-            A NULL cipher suite, for use during handshake.
-            </summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Tls.TlsProtocolHandler">
-            <remarks>An implementation of all high level protocols in TLS 1.0.</remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.TlsProtocolHandler.#ctor(System.IO.Stream,System.IO.Stream)">
-            <remarks>Both streams can be the same object</remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.TlsProtocolHandler.#ctor(System.IO.Stream,System.IO.Stream,Org.BouncyCastle.Security.SecureRandom)">
-            <remarks>Both streams can be the same object</remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.TlsProtocolHandler.ProcessChangeCipherSpec">
-             This method is called, when a change cipher spec message is received.
-            
-             @throws IOException If the message has an invalid content or the
-                                 handshake is not in the correct state.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.TlsProtocolHandler.Connect(Org.BouncyCastle.Crypto.Tls.ICertificateVerifyer)">
-            <summary>Connects to the remote system.</summary>
-            <param name="verifyer">Will be used when a certificate is received to verify
-            that this certificate is accepted by the client.</param>
-            <exception cref="T:System.IO.IOException">If handshake was not successful</exception>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.TlsProtocolHandler.ReadApplicationData(System.Byte[],System.Int32,System.Int32)">
-             Read data from the network. The method will return immediately, if there is
-             still some data left in the buffer, or block until some application
-             data has been read from the network.
-            
-             @param buf    The buffer where the data will be copied to.
-             @param offset The position where the data will be placed in the buffer.
-             @param len    The maximum number of bytes to read.
-             @return The number of bytes read.
-             @throws IOException If something goes wrong during reading data.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.TlsProtocolHandler.WriteData(System.Byte[],System.Int32,System.Int32)">
-             Send some application data to the remote system.
-             <p/>
-             The method will handle fragmentation internally.
-            
-             @param buf    The buffer with the data.
-             @param offset The position in the buffer where the data is placed.
-             @param len    The length of the data.
-             @throws IOException If something goes wrong during sending.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.TlsProtocolHandler.FailWithError(Org.BouncyCastle.Crypto.Tls.AlertLevel,Org.BouncyCastle.Crypto.Tls.AlertDescription)">
-             Terminate this connection with an alert.
-             <p/>
-             Can be used for normal closure too.
-            
-             @param alertLevel       The level of the alert, an be AlertLevel.fatal or AL_warning.
-             @param alertDescription The exact alert message.
-             @throws IOException If alert was fatal.
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.TlsProtocolHandler.Close">
-            <summary>Closes this connection</summary>
-            <exception cref="T:System.IO.IOException">If something goes wrong during closing.</exception>
-        </member>
-        <member name="M:Org.BouncyCastle.Crypto.Tls.TlsProtocolHandler.AssertEmpty(System.IO.MemoryStream)">
-             Make sure the Stream is now empty. Fail otherwise.
-            
-             @param is The Stream to check.
-             @throws IOException If is is not empty.
-        </member>
-        <member name="P:Org.BouncyCastle.Crypto.Tls.TlsProtocolHandler.OutputStream">
-            <summary>A Stream which can be used to send data.</summary>
-        </member>
-        <member name="P:Org.BouncyCastle.Crypto.Tls.TlsProtocolHandler.InputStream">
-            <summary>A Stream which can be used to read data.</summary>
-        </member>
-        <member name="P:Org.BouncyCastle.Crypto.Tls.TlsProtocolHandler.Stream">
-            <summary>The secure bidirectional stream for this connection</summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Tls.TlsRsaKeyExchange">
-            <summary>
-            TLS 1.0 RSA key exchange.
-            </summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Tls.TlsSrpKeyExchange">
-            <summary>
-            TLS 1.1 SRP key exchange.
-            </summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Crypto.Tls.TlsUtilities">
-            <remarks>Some helper fuctions for MicroTLS.</remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Math.BigInteger.AddMagnitudes(System.Int32[],System.Int32[])">
-            return a = a + b - b preserved.
-        </member>
-        <member name="M:Org.BouncyCastle.Math.BigInteger.CompareTo(System.Int32,System.Int32[],System.Int32,System.Int32[])">
-            unsigned comparison on two arrays - note the arrays may
-            start with leading zeros.
-        </member>
-        <member name="M:Org.BouncyCastle.Math.BigInteger.Divide(System.Int32[],System.Int32[])">
-            return z = x / y - done in place (z value preserved, x contains the
-            remainder)
-        </member>
-        <member name="M:Org.BouncyCastle.Math.BigInteger.IsProbablePrime(System.Int32)">
-            return whether or not a BigInteger is probably prime with a
-            probability of 1 - (1/2)**certainty.
-            <p>From Knuth Vol 2, pg 395.</p>
-        </member>
-        <member name="M:Org.BouncyCastle.Math.BigInteger.ExtEuclid(Org.BouncyCastle.Math.BigInteger,Org.BouncyCastle.Math.BigInteger,Org.BouncyCastle.Math.BigInteger@)">
-             Calculate the numbers u1, u2, and u3 such that:
-            
-             u1 * a + u2 * b = u3
-            
-             where u3 is the greatest common divider of a and b.
-             a and b using the extended Euclid algorithm (refer p. 323
-             of The Art of Computer Programming vol 2, 2nd ed).
-             This also seems to have the side effect of calculating
-             some form of multiplicative inverse.
-            
-             @param a    First number to calculate gcd for
-             @param b    Second number to calculate gcd for
-             @param u1Out      the return object for the u1 value
-             @param u2Out      the return object for the u2 value
-             @return     The greatest common divisor of a and b
-        </member>
-        <member name="M:Org.BouncyCastle.Math.BigInteger.Square(System.Int32[],System.Int32[])">
-            return w with w = x * x - w is assumed to have enough space.
-        </member>
-        <member name="M:Org.BouncyCastle.Math.BigInteger.Multiply(System.Int32[],System.Int32[],System.Int32[])">
-            return x with x = y * z - x is assumed to have enough space.
-        </member>
-        <member name="M:Org.BouncyCastle.Math.BigInteger.GetMQuote">
-            Calculate mQuote = -m^(-1) mod b with b = 2^32 (32 = word size)
-        </member>
-        <member name="M:Org.BouncyCastle.Math.BigInteger.MultiplyMonty(System.Int32[],System.Int32[],System.Int32[],System.Int32[],System.Int64)">
-            Montgomery multiplication: a = x * y * R^(-1) mod m
-            <br/>
-            Based algorithm 14.36 of Handbook of Applied Cryptography.
-            <br/>
-            <li> m, x, y should have length n </li>
-            <li> a should have length (n + 1) </li>
-            <li> b = 2^32, R = b^n </li>
-            <br/>
-            The result is put in x
-            <br/>
-            NOTE: the indices of x, y, m, a different in HAC and in Java
-        </member>
-        <member name="M:Org.BouncyCastle.Math.BigInteger.Remainder(System.Int32[],System.Int32[])">
-            return x = x % y - done in place (y value preserved)
-        </member>
-        <member name="M:Org.BouncyCastle.Math.BigInteger.ShiftLeft(System.Int32[],System.Int32)">
-            do a left shift - this returns a new array.
-        </member>
-        <member name="M:Org.BouncyCastle.Math.BigInteger.ShiftRightInPlace(System.Int32,System.Int32[],System.Int32)">
-            do a right shift - this does it in place.
-        </member>
-        <member name="M:Org.BouncyCastle.Math.BigInteger.ShiftRightOneInPlace(System.Int32,System.Int32[])">
-            do a right shift by one - this does it in place.
-        </member>
-        <member name="M:Org.BouncyCastle.Math.BigInteger.Subtract(System.Int32,System.Int32[],System.Int32,System.Int32[])">
-            returns x = x - y - we assume x is >= y
-        </member>
-        <member name="T:Org.BouncyCastle.Math.EC.Abc.SimpleBigDecimal">
-            Class representing a simple version of a big decimal. A
-            <code>SimpleBigDecimal</code> is basically a
-            {@link java.math.BigInteger BigInteger} with a few digits on the right of
-            the decimal point. The number of (binary) digits on the right of the decimal
-            point is called the <code>scale</code> of the <code>SimpleBigDecimal</code>.
-            Unlike in {@link java.math.BigDecimal BigDecimal}, the scale is not adjusted
-            automatically, but must be set manually. All <code>SimpleBigDecimal</code>s
-            taking part in the same arithmetic operation must have equal scale. The
-            result of a multiplication of two <code>SimpleBigDecimal</code>s returns a
-            <code>SimpleBigDecimal</code> with double scale.
-        </member>
-        <member name="M:Org.BouncyCastle.Math.EC.Abc.SimpleBigDecimal.GetInstance(Org.BouncyCastle.Math.BigInteger,System.Int32)">
-            Returns a <code>SimpleBigDecimal</code> representing the same numerical
-            value as <code>value</code>.
-            @param value The value of the <code>SimpleBigDecimal</code> to be
-            created. 
-            @param scale The scale of the <code>SimpleBigDecimal</code> to be
-            created. 
-            @return The such created <code>SimpleBigDecimal</code>.
-        </member>
-        <member name="M:Org.BouncyCastle.Math.EC.Abc.SimpleBigDecimal.#ctor(Org.BouncyCastle.Math.BigInteger,System.Int32)">
-            Constructor for <code>SimpleBigDecimal</code>. The value of the
-            constructed <code>SimpleBigDecimal</code> Equals <code>bigInt / 
-            2<sup>scale</sup></code>.
-            @param bigInt The <code>bigInt</code> value parameter.
-            @param scale The scale of the constructed <code>SimpleBigDecimal</code>.
-        </member>
-        <member name="T:Org.BouncyCastle.Math.EC.Abc.Tnaf">
-            Class holding methods for point multiplication based on the window
-            &#964;-adic nonadjacent form (WTNAF). The algorithms are based on the
-            paper "Improved Algorithms for Arithmetic on Anomalous Binary Curves"
-            by Jerome A. Solinas. The paper first appeared in the Proceedings of
-            Crypto 1997.
-        </member>
-        <member name="F:Org.BouncyCastle.Math.EC.Abc.Tnaf.Width">
-            The window width of WTNAF. The standard value of 4 is slightly less
-            than optimal for running time, but keeps space requirements for
-            precomputation low. For typical curves, a value of 5 or 6 results in
-            a better running time. When changing this value, the
-            <code>&#945;<sub>u</sub></code>'s must be computed differently, see
-            e.g. "Guide to Elliptic Curve Cryptography", Darrel Hankerson,
-            Alfred Menezes, Scott Vanstone, Springer-Verlag New York Inc., 2004,
-            p. 121-122
-        </member>
-        <member name="F:Org.BouncyCastle.Math.EC.Abc.Tnaf.Pow2Width">
-            2<sup>4</sup>
-        </member>
-        <member name="F:Org.BouncyCastle.Math.EC.Abc.Tnaf.Alpha0">
-            The <code>&#945;<sub>u</sub></code>'s for <code>a=0</code> as an array
-            of <code>ZTauElement</code>s.
-        </member>
-        <member name="F:Org.BouncyCastle.Math.EC.Abc.Tnaf.Alpha0Tnaf">
-            The <code>&#945;<sub>u</sub></code>'s for <code>a=0</code> as an array
-            of TNAFs.
-        </member>
-        <member name="F:Org.BouncyCastle.Math.EC.Abc.Tnaf.Alpha1">
-            The <code>&#945;<sub>u</sub></code>'s for <code>a=1</code> as an array
-            of <code>ZTauElement</code>s.
-        </member>
-        <member name="F:Org.BouncyCastle.Math.EC.Abc.Tnaf.Alpha1Tnaf">
-            The <code>&#945;<sub>u</sub></code>'s for <code>a=1</code> as an array
-            of TNAFs.
-        </member>
-        <member name="M:Org.BouncyCastle.Math.EC.Abc.Tnaf.Norm(System.SByte,Org.BouncyCastle.Math.EC.Abc.ZTauElement)">
-            Computes the norm of an element <code>&#955;</code> of
-            <code><b>Z</b>[&#964;]</code>.
-            @param mu The parameter <code>&#956;</code> of the elliptic curve.
-            @param lambda The element <code>&#955;</code> of
-            <code><b>Z</b>[&#964;]</code>.
-            @return The norm of <code>&#955;</code>.
-        </member>
-        <member name="M:Org.BouncyCastle.Math.EC.Abc.Tnaf.Norm(System.SByte,Org.BouncyCastle.Math.EC.Abc.SimpleBigDecimal,Org.BouncyCastle.Math.EC.Abc.SimpleBigDecimal)">
-            Computes the norm of an element <code>&#955;</code> of
-            <code><b>R</b>[&#964;]</code>, where <code>&#955; = u + v&#964;</code>
-            and <code>u</code> and <code>u</code> are real numbers (elements of
-            <code><b>R</b></code>). 
-            @param mu The parameter <code>&#956;</code> of the elliptic curve.
-            @param u The real part of the element <code>&#955;</code> of
-            <code><b>R</b>[&#964;]</code>.
-            @param v The <code>&#964;</code>-adic part of the element
-            <code>&#955;</code> of <code><b>R</b>[&#964;]</code>.
-            @return The norm of <code>&#955;</code>.
-        </member>
-        <member name="M:Org.BouncyCastle.Math.EC.Abc.Tnaf.Round(Org.BouncyCastle.Math.EC.Abc.SimpleBigDecimal,Org.BouncyCastle.Math.EC.Abc.SimpleBigDecimal,System.SByte)">
-            Rounds an element <code>&#955;</code> of <code><b>R</b>[&#964;]</code>
-            to an element of <code><b>Z</b>[&#964;]</code>, such that their difference
-            has minimal norm. <code>&#955;</code> is given as
-            <code>&#955; = &#955;<sub>0</sub> + &#955;<sub>1</sub>&#964;</code>.
-            @param lambda0 The component <code>&#955;<sub>0</sub></code>.
-            @param lambda1 The component <code>&#955;<sub>1</sub></code>.
-            @param mu The parameter <code>&#956;</code> of the elliptic curve. Must
-            equal 1 or -1.
-            @return The rounded element of <code><b>Z</b>[&#964;]</code>.
-            @throws ArgumentException if <code>lambda0</code> and
-            <code>lambda1</code> do not have same scale.
-        </member>
-        <member name="M:Org.BouncyCastle.Math.EC.Abc.Tnaf.ApproximateDivisionByN(Org.BouncyCastle.Math.BigInteger,Org.BouncyCastle.Math.BigInteger,Org.BouncyCastle.Math.BigInteger,System.SByte,System.Int32,System.Int32)">
-            Approximate division by <code>n</code>. For an integer
-            <code>k</code>, the value <code>&#955; = s k / n</code> is
-            computed to <code>c</code> bits of accuracy.
-            @param k The parameter <code>k</code>.
-            @param s The curve parameter <code>s<sub>0</sub></code> or
-            <code>s<sub>1</sub></code>.
-            @param vm The Lucas Sequence element <code>V<sub>m</sub></code>.
-            @param a The parameter <code>a</code> of the elliptic curve.
-            @param m The bit length of the finite field
-            <code><b>F</b><sub>m</sub></code>.
-            @param c The number of bits of accuracy, i.e. the scale of the returned
-            <code>SimpleBigDecimal</code>.
-            @return The value <code>&#955; = s k / n</code> computed to
-            <code>c</code> bits of accuracy.
-        </member>
-        <member name="M:Org.BouncyCastle.Math.EC.Abc.Tnaf.TauAdicNaf(System.SByte,Org.BouncyCastle.Math.EC.Abc.ZTauElement)">
-            Computes the <code>&#964;</code>-adic NAF (non-adjacent form) of an
-            element <code>&#955;</code> of <code><b>Z</b>[&#964;]</code>.
-            @param mu The parameter <code>&#956;</code> of the elliptic curve.
-            @param lambda The element <code>&#955;</code> of
-            <code><b>Z</b>[&#964;]</code>.
-            @return The <code>&#964;</code>-adic NAF of <code>&#955;</code>.
-        </member>
-        <member name="M:Org.BouncyCastle.Math.EC.Abc.Tnaf.Tau(Org.BouncyCastle.Math.EC.F2mPoint)">
-            Applies the operation <code>&#964;()</code> to an
-            <code>F2mPoint</code>. 
-            @param p The F2mPoint to which <code>&#964;()</code> is applied.
-            @return <code>&#964;(p)</code>
-        </member>
-        <member name="M:Org.BouncyCastle.Math.EC.Abc.Tnaf.GetMu(Org.BouncyCastle.Math.EC.F2mCurve)">
-            Returns the parameter <code>&#956;</code> of the elliptic curve.
-            @param curve The elliptic curve from which to obtain <code>&#956;</code>.
-            The curve must be a Koblitz curve, i.e. <code>a</code> Equals
-            <code>0</code> or <code>1</code> and <code>b</code> Equals
-            <code>1</code>. 
-            @return <code>&#956;</code> of the elliptic curve.
-            @throws ArgumentException if the given ECCurve is not a Koblitz
-            curve.
-        </member>
-        <member name="M:Org.BouncyCastle.Math.EC.Abc.Tnaf.GetLucas(System.SByte,System.Int32,System.Boolean)">
-            Calculates the Lucas Sequence elements <code>U<sub>k-1</sub></code> and
-            <code>U<sub>k</sub></code> or <code>V<sub>k-1</sub></code> and
-            <code>V<sub>k</sub></code>.
-            @param mu The parameter <code>&#956;</code> of the elliptic curve.
-            @param k The index of the second element of the Lucas Sequence to be
-            returned.
-            @param doV If set to true, computes <code>V<sub>k-1</sub></code> and
-            <code>V<sub>k</sub></code>, otherwise <code>U<sub>k-1</sub></code> and
-            <code>U<sub>k</sub></code>.
-            @return An array with 2 elements, containing <code>U<sub>k-1</sub></code>
-            and <code>U<sub>k</sub></code> or <code>V<sub>k-1</sub></code>
-            and <code>V<sub>k</sub></code>.
-        </member>
-        <member name="M:Org.BouncyCastle.Math.EC.Abc.Tnaf.GetTw(System.SByte,System.Int32)">
-            Computes the auxiliary value <code>t<sub>w</sub></code>. If the width is
-            4, then for <code>mu = 1</code>, <code>t<sub>w</sub> = 6</code> and for
-            <code>mu = -1</code>, <code>t<sub>w</sub> = 10</code> 
-            @param mu The parameter <code>&#956;</code> of the elliptic curve.
-            @param w The window width of the WTNAF.
-            @return the auxiliary value <code>t<sub>w</sub></code>
-        </member>
-        <member name="M:Org.BouncyCastle.Math.EC.Abc.Tnaf.GetSi(Org.BouncyCastle.Math.EC.F2mCurve)">
-            Computes the auxiliary values <code>s<sub>0</sub></code> and
-            <code>s<sub>1</sub></code> used for partial modular reduction. 
-            @param curve The elliptic curve for which to compute
-            <code>s<sub>0</sub></code> and <code>s<sub>1</sub></code>.
-            @throws ArgumentException if <code>curve</code> is not a
-            Koblitz curve (Anomalous Binary Curve, ABC).
-        </member>
-        <member name="M:Org.BouncyCastle.Math.EC.Abc.Tnaf.PartModReduction(Org.BouncyCastle.Math.BigInteger,System.Int32,System.SByte,Org.BouncyCastle.Math.BigInteger[],System.SByte,System.SByte)">
-            Partial modular reduction modulo
-            <code>(&#964;<sup>m</sup> - 1)/(&#964; - 1)</code>.
-            @param k The integer to be reduced.
-            @param m The bitlength of the underlying finite field.
-            @param a The parameter <code>a</code> of the elliptic curve.
-            @param s The auxiliary values <code>s<sub>0</sub></code> and
-            <code>s<sub>1</sub></code>.
-            @param mu The parameter &#956; of the elliptic curve.
-            @param c The precision (number of bits of accuracy) of the partial
-            modular reduction.
-            @return <code>&#961; := k partmod (&#964;<sup>m</sup> - 1)/(&#964; - 1)</code>
-        </member>
-        <member name="M:Org.BouncyCastle.Math.EC.Abc.Tnaf.MultiplyRTnaf(Org.BouncyCastle.Math.EC.F2mPoint,Org.BouncyCastle.Math.BigInteger)">
-            Multiplies a {@link org.bouncycastle.math.ec.F2mPoint F2mPoint}
-            by a <code>BigInteger</code> using the reduced <code>&#964;</code>-adic
-            NAF (RTNAF) method.
-            @param p The F2mPoint to Multiply.
-            @param k The <code>BigInteger</code> by which to Multiply <code>p</code>.
-            @return <code>k * p</code>
-        </member>
-        <member name="M:Org.BouncyCastle.Math.EC.Abc.Tnaf.MultiplyTnaf(Org.BouncyCastle.Math.EC.F2mPoint,Org.BouncyCastle.Math.EC.Abc.ZTauElement)">
-            Multiplies a {@link org.bouncycastle.math.ec.F2mPoint F2mPoint}
-            by an element <code>&#955;</code> of <code><b>Z</b>[&#964;]</code>
-            using the <code>&#964;</code>-adic NAF (TNAF) method.
-            @param p The F2mPoint to Multiply.
-            @param lambda The element <code>&#955;</code> of
-            <code><b>Z</b>[&#964;]</code>.
-            @return <code>&#955; * p</code>
-        </member>
-        <member name="M:Org.BouncyCastle.Math.EC.Abc.Tnaf.MultiplyFromTnaf(Org.BouncyCastle.Math.EC.F2mPoint,System.SByte[])">
-            Multiplies a {@link org.bouncycastle.math.ec.F2mPoint F2mPoint}
-            by an element <code>&#955;</code> of <code><b>Z</b>[&#964;]</code>
-            using the <code>&#964;</code>-adic NAF (TNAF) method, given the TNAF
-            of <code>&#955;</code>.
-            @param p The F2mPoint to Multiply.
-            @param u The the TNAF of <code>&#955;</code>..
-            @return <code>&#955; * p</code>
-        </member>
-        <member name="M:Org.BouncyCastle.Math.EC.Abc.Tnaf.TauAdicWNaf(System.SByte,Org.BouncyCastle.Math.EC.Abc.ZTauElement,System.SByte,Org.BouncyCastle.Math.BigInteger,Org.BouncyCastle.Math.BigInteger,Org.BouncyCastle.Math.EC.Abc.ZTauElement[])">
-            Computes the <code>[&#964;]</code>-adic window NAF of an element
-            <code>&#955;</code> of <code><b>Z</b>[&#964;]</code>.
-            @param mu The parameter &#956; of the elliptic curve.
-            @param lambda The element <code>&#955;</code> of
-            <code><b>Z</b>[&#964;]</code> of which to compute the
-            <code>[&#964;]</code>-adic NAF.
-            @param width The window width of the resulting WNAF.
-            @param pow2w 2<sup>width</sup>.
-            @param tw The auxiliary value <code>t<sub>w</sub></code>.
-            @param alpha The <code>&#945;<sub>u</sub></code>'s for the window width.
-            @return The <code>[&#964;]</code>-adic window NAF of
-            <code>&#955;</code>.
-        </member>
-        <member name="M:Org.BouncyCastle.Math.EC.Abc.Tnaf.GetPreComp(Org.BouncyCastle.Math.EC.F2mPoint,System.SByte)">
-            Does the precomputation for WTNAF multiplication.
-            @param p The <code>ECPoint</code> for which to do the precomputation.
-            @param a The parameter <code>a</code> of the elliptic curve.
-            @return The precomputation array for <code>p</code>. 
-        </member>
-        <member name="T:Org.BouncyCastle.Math.EC.Abc.ZTauElement">
-            Class representing an element of <code><b>Z</b>[&#964;]</code>. Let
-            <code>&#955;</code> be an element of <code><b>Z</b>[&#964;]</code>. Then
-            <code>&#955;</code> is given as <code>&#955; = u + v&#964;</code>. The
-            components <code>u</code> and <code>v</code> may be used directly, there
-            are no accessor methods.
-            Immutable class.
-        </member>
-        <member name="F:Org.BouncyCastle.Math.EC.Abc.ZTauElement.u">
-            The &quot;real&quot; part of <code>&#955;</code>.
-        </member>
-        <member name="F:Org.BouncyCastle.Math.EC.Abc.ZTauElement.v">
-            The &quot;<code>&#964;</code>-adic&quot; part of <code>&#955;</code>.
-        </member>
-        <member name="M:Org.BouncyCastle.Math.EC.Abc.ZTauElement.#ctor(Org.BouncyCastle.Math.BigInteger,Org.BouncyCastle.Math.BigInteger)">
-            Constructor for an element <code>&#955;</code> of
-            <code><b>Z</b>[&#964;]</code>.
-            @param u The &quot;real&quot; part of <code>&#955;</code>.
-            @param v The &quot;<code>&#964;</code>-adic&quot; part of
-            <code>&#955;</code>.
-        </member>
-        <member name="T:Org.BouncyCastle.Math.EC.ECCurve">
-            <remarks>Base class for an elliptic curve.</remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Math.EC.ECCurveBase.DecodePoint(System.Byte[])">
-            Decode a point on this curve from its ASN.1 encoding. The different
-            encodings are taken account of, including point compression for
-            <code>F<sub>p</sub></code> (X9.62 s 4.2.1 pg 17).
-            @return The decoded point.
-        </member>
-        <member name="T:Org.BouncyCastle.Math.EC.FpCurve">
-            Elliptic curve over Fp
-        </member>
-        <member name="T:Org.BouncyCastle.Math.EC.F2mCurve">
-            Elliptic curves over F2m. The Weierstrass equation is given by
-            <code>y<sup>2</sup> + xy = x<sup>3</sup> + ax<sup>2</sup> + b</code>.
-        </member>
-        <member name="F:Org.BouncyCastle.Math.EC.F2mCurve.m">
-            The exponent <code>m</code> of <code>F<sub>2<sup>m</sup></sub></code>.
-        </member>
-        <member name="F:Org.BouncyCastle.Math.EC.F2mCurve.k1">
-            TPB: The integer <code>k</code> where <code>x<sup>m</sup> +
-            x<sup>k</sup> + 1</code> represents the reduction polynomial
-            <code>f(z)</code>.<br/>
-            PPB: The integer <code>k1</code> where <code>x<sup>m</sup> +
-            x<sup>k3</sup> + x<sup>k2</sup> + x<sup>k1</sup> + 1</code>
-            represents the reduction polynomial <code>f(z)</code>.<br/>
-        </member>
-        <member name="F:Org.BouncyCastle.Math.EC.F2mCurve.k2">
-            TPB: Always set to <code>0</code><br/>
-            PPB: The integer <code>k2</code> where <code>x<sup>m</sup> +
-            x<sup>k3</sup> + x<sup>k2</sup> + x<sup>k1</sup> + 1</code>
-            represents the reduction polynomial <code>f(z)</code>.<br/>
-        </member>
-        <member name="F:Org.BouncyCastle.Math.EC.F2mCurve.k3">
-            TPB: Always set to <code>0</code><br/>
-            PPB: The integer <code>k3</code> where <code>x<sup>m</sup> +
-            x<sup>k3</sup> + x<sup>k2</sup> + x<sup>k1</sup> + 1</code>
-            represents the reduction polynomial <code>f(z)</code>.<br/>
-        </member>
-        <member name="F:Org.BouncyCastle.Math.EC.F2mCurve.n">
-            The order of the base point of the curve.
-        </member>
-        <member name="F:Org.BouncyCastle.Math.EC.F2mCurve.h">
-            The cofactor of the curve.
-        </member>
-        <member name="F:Org.BouncyCastle.Math.EC.F2mCurve.infinity">
-            The point at infinity on this curve.
-        </member>
-        <member name="F:Org.BouncyCastle.Math.EC.F2mCurve.mu">
-            The parameter <code>&#956;</code> of the elliptic curve if this is
-            a Koblitz curve.
-        </member>
-        <member name="F:Org.BouncyCastle.Math.EC.F2mCurve.si">
-            The auxiliary values <code>s<sub>0</sub></code> and
-            <code>s<sub>1</sub></code> used for partial modular reduction for
-            Koblitz curves.
-        </member>
-        <member name="M:Org.BouncyCastle.Math.EC.F2mCurve.#ctor(System.Int32,System.Int32,Org.BouncyCastle.Math.BigInteger,Org.BouncyCastle.Math.BigInteger)">
-            Constructor for Trinomial Polynomial Basis (TPB).
-            @param m  The exponent <code>m</code> of
-            <code>F<sub>2<sup>m</sup></sub></code>.
-            @param k The integer <code>k</code> where <code>x<sup>m</sup> +
-            x<sup>k</sup> + 1</code> represents the reduction
-            polynomial <code>f(z)</code>.
-            @param a The coefficient <code>a</code> in the Weierstrass equation
-            for non-supersingular elliptic curves over
-            <code>F<sub>2<sup>m</sup></sub></code>.
-            @param b The coefficient <code>b</code> in the Weierstrass equation
-            for non-supersingular elliptic curves over
-            <code>F<sub>2<sup>m</sup></sub></code>.
-        </member>
-        <member name="M:Org.BouncyCastle.Math.EC.F2mCurve.#ctor(System.Int32,System.Int32,Org.BouncyCastle.Math.BigInteger,Org.BouncyCastle.Math.BigInteger,Org.BouncyCastle.Math.BigInteger,Org.BouncyCastle.Math.BigInteger)">
-            Constructor for Trinomial Polynomial Basis (TPB).
-            @param m  The exponent <code>m</code> of
-            <code>F<sub>2<sup>m</sup></sub></code>.
-            @param k The integer <code>k</code> where <code>x<sup>m</sup> +
-            x<sup>k</sup> + 1</code> represents the reduction
-            polynomial <code>f(z)</code>.
-            @param a The coefficient <code>a</code> in the Weierstrass equation
-            for non-supersingular elliptic curves over
-            <code>F<sub>2<sup>m</sup></sub></code>.
-            @param b The coefficient <code>b</code> in the Weierstrass equation
-            for non-supersingular elliptic curves over
-            <code>F<sub>2<sup>m</sup></sub></code>.
-            @param n The order of the main subgroup of the elliptic curve.
-            @param h The cofactor of the elliptic curve, i.e.
-            <code>#E<sub>a</sub>(F<sub>2<sup>m</sup></sub>) = h * n</code>.
-        </member>
-        <member name="M:Org.BouncyCastle.Math.EC.F2mCurve.#ctor(System.Int32,System.Int32,System.Int32,System.Int32,Org.BouncyCastle.Math.BigInteger,Org.BouncyCastle.Math.BigInteger)">
-            Constructor for Pentanomial Polynomial Basis (PPB).
-            @param m  The exponent <code>m</code> of
-            <code>F<sub>2<sup>m</sup></sub></code>.
-            @param k1 The integer <code>k1</code> where <code>x<sup>m</sup> +
-            x<sup>k3</sup> + x<sup>k2</sup> + x<sup>k1</sup> + 1</code>
-            represents the reduction polynomial <code>f(z)</code>.
-            @param k2 The integer <code>k2</code> where <code>x<sup>m</sup> +
-            x<sup>k3</sup> + x<sup>k2</sup> + x<sup>k1</sup> + 1</code>
-            represents the reduction polynomial <code>f(z)</code>.
-            @param k3 The integer <code>k3</code> where <code>x<sup>m</sup> +
-            x<sup>k3</sup> + x<sup>k2</sup> + x<sup>k1</sup> + 1</code>
-            represents the reduction polynomial <code>f(z)</code>.
-            @param a The coefficient <code>a</code> in the Weierstrass equation
-            for non-supersingular elliptic curves over
-            <code>F<sub>2<sup>m</sup></sub></code>.
-            @param b The coefficient <code>b</code> in the Weierstrass equation
-            for non-supersingular elliptic curves over
-            <code>F<sub>2<sup>m</sup></sub></code>.
-        </member>
-        <member name="M:Org.BouncyCastle.Math.EC.F2mCurve.#ctor(System.Int32,System.Int32,System.Int32,System.Int32,Org.BouncyCastle.Math.BigInteger,Org.BouncyCastle.Math.BigInteger,Org.BouncyCastle.Math.BigInteger,Org.BouncyCastle.Math.BigInteger)">
-            Constructor for Pentanomial Polynomial Basis (PPB).
-            @param m  The exponent <code>m</code> of
-            <code>F<sub>2<sup>m</sup></sub></code>.
-            @param k1 The integer <code>k1</code> where <code>x<sup>m</sup> +
-            x<sup>k3</sup> + x<sup>k2</sup> + x<sup>k1</sup> + 1</code>
-            represents the reduction polynomial <code>f(z)</code>.
-            @param k2 The integer <code>k2</code> where <code>x<sup>m</sup> +
-            x<sup>k3</sup> + x<sup>k2</sup> + x<sup>k1</sup> + 1</code>
-            represents the reduction polynomial <code>f(z)</code>.
-            @param k3 The integer <code>k3</code> where <code>x<sup>m</sup> +
-            x<sup>k3</sup> + x<sup>k2</sup> + x<sup>k1</sup> + 1</code>
-            represents the reduction polynomial <code>f(z)</code>.
-            @param a The coefficient <code>a</code> in the Weierstrass equation
-            for non-supersingular elliptic curves over
-            <code>F<sub>2<sup>m</sup></sub></code>.
-            @param b The coefficient <code>b</code> in the Weierstrass equation
-            for non-supersingular elliptic curves over
-            <code>F<sub>2<sup>m</sup></sub></code>.
-            @param n The order of the main subgroup of the elliptic curve.
-            @param h The cofactor of the elliptic curve, i.e.
-            <code>#E<sub>a</sub>(F<sub>2<sup>m</sup></sub>) = h * n</code>.
-        </member>
-        <member name="M:Org.BouncyCastle.Math.EC.F2mCurve.GetMu">
-            Returns the parameter <code>&#956;</code> of the elliptic curve.
-            @return <code>&#956;</code> of the elliptic curve.
-            @throws ArgumentException if the given ECCurve is not a
-            Koblitz curve.
-        </member>
-        <member name="M:Org.BouncyCastle.Math.EC.F2mCurve.GetSi">
-            @return the auxiliary values <code>s<sub>0</sub></code> and
-            <code>s<sub>1</sub></code> used for partial modular reduction for
-            Koblitz curves.
-        </member>
-        <member name="M:Org.BouncyCastle.Math.EC.F2mCurve.solveQuadradicEquation(Org.BouncyCastle.Math.EC.ECFieldElement)">
-             Solves a quadratic equation <code>z<sup>2</sup> + z = beta</code>(X9.62
-             D.1.6) The other solution is <code>z + 1</code>.
-            
-             @param beta
-                        The value to solve the qradratic equation for.
-             @return the solution for <code>z<sup>2</sup> + z = beta</code> or
-                     <code>null</code> if no solution exists.
-        </member>
-        <member name="M:Org.BouncyCastle.Math.EC.F2mCurve.IsTrinomial">
-             Return true if curve uses a Trinomial basis.
-            
-             @return true if curve Trinomial, false otherwise.
-        </member>
-        <member name="P:Org.BouncyCastle.Math.EC.F2mCurve.IsKoblitz">
-            Returns true if this is a Koblitz curve (ABC curve).
-            @return true if this is a Koblitz curve (ABC curve), false otherwise
-        </member>
-        <member name="M:Org.BouncyCastle.Math.EC.FpFieldElement.Sqrt">
-            return a sqrt root - the routine verifies that the calculation
-            returns the right value - if none exists it returns null.
-        </member>
-        <member name="P:Org.BouncyCastle.Math.EC.FpFieldElement.FieldName">
-             return the field name for this field.
-            
-             @return the string "Fp".
-        </member>
-        <member name="T:Org.BouncyCastle.Math.EC.F2mFieldElement">
-            Class representing the Elements of the finite field
-            <code>F<sub>2<sup>m</sup></sub></code> in polynomial basis (PB)
-            representation. Both trinomial (Tpb) and pentanomial (Ppb) polynomial
-            basis representations are supported. Gaussian normal basis (GNB)
-            representation is not supported.
-        </member>
-        <member name="F:Org.BouncyCastle.Math.EC.F2mFieldElement.Gnb">
-            Indicates gaussian normal basis representation (GNB). Number chosen
-            according to X9.62. GNB is not implemented at present.
-        </member>
-        <member name="F:Org.BouncyCastle.Math.EC.F2mFieldElement.Tpb">
-            Indicates trinomial basis representation (Tpb). Number chosen
-            according to X9.62.
-        </member>
-        <member name="F:Org.BouncyCastle.Math.EC.F2mFieldElement.Ppb">
-            Indicates pentanomial basis representation (Ppb). Number chosen
-            according to X9.62.
-        </member>
-        <member name="F:Org.BouncyCastle.Math.EC.F2mFieldElement.representation">
-            Tpb or Ppb.
-        </member>
-        <member name="F:Org.BouncyCastle.Math.EC.F2mFieldElement.m">
-            The exponent <code>m</code> of <code>F<sub>2<sup>m</sup></sub></code>.
-        </member>
-        <member name="F:Org.BouncyCastle.Math.EC.F2mFieldElement.k1">
-            Tpb: The integer <code>k</code> where <code>x<sup>m</sup> +
-            x<sup>k</sup> + 1</code> represents the reduction polynomial
-            <code>f(z)</code>.<br/>
-            Ppb: The integer <code>k1</code> where <code>x<sup>m</sup> +
-            x<sup>k3</sup> + x<sup>k2</sup> + x<sup>k1</sup> + 1</code>
-            represents the reduction polynomial <code>f(z)</code>.<br/>
-        </member>
-        <member name="F:Org.BouncyCastle.Math.EC.F2mFieldElement.k2">
-            Tpb: Always set to <code>0</code><br/>
-            Ppb: The integer <code>k2</code> where <code>x<sup>m</sup> +
-            x<sup>k3</sup> + x<sup>k2</sup> + x<sup>k1</sup> + 1</code>
-            represents the reduction polynomial <code>f(z)</code>.<br/>
-        </member>
-        <member name="F:Org.BouncyCastle.Math.EC.F2mFieldElement.k3">
-            Tpb: Always set to <code>0</code><br/>
-            Ppb: The integer <code>k3</code> where <code>x<sup>m</sup> +
-            x<sup>k3</sup> + x<sup>k2</sup> + x<sup>k1</sup> + 1</code>
-            represents the reduction polynomial <code>f(z)</code>.<br/>
-        </member>
-        <member name="F:Org.BouncyCastle.Math.EC.F2mFieldElement.x">
-            The <code>IntArray</code> holding the bits.
-        </member>
-        <member name="F:Org.BouncyCastle.Math.EC.F2mFieldElement.t">
-            The number of <code>int</code>s required to hold <code>m</code> bits.
-        </member>
-        <member name="M:Org.BouncyCastle.Math.EC.F2mFieldElement.#ctor(System.Int32,System.Int32,System.Int32,System.Int32,Org.BouncyCastle.Math.BigInteger)">
-            Constructor for Ppb.
-            @param m  The exponent <code>m</code> of
-            <code>F<sub>2<sup>m</sup></sub></code>.
-            @param k1 The integer <code>k1</code> where <code>x<sup>m</sup> +
-            x<sup>k3</sup> + x<sup>k2</sup> + x<sup>k1</sup> + 1</code>
-            represents the reduction polynomial <code>f(z)</code>.
-            @param k2 The integer <code>k2</code> where <code>x<sup>m</sup> +
-            x<sup>k3</sup> + x<sup>k2</sup> + x<sup>k1</sup> + 1</code>
-            represents the reduction polynomial <code>f(z)</code>.
-            @param k3 The integer <code>k3</code> where <code>x<sup>m</sup> +
-            x<sup>k3</sup> + x<sup>k2</sup> + x<sup>k1</sup> + 1</code>
-            represents the reduction polynomial <code>f(z)</code>.
-            @param x The BigInteger representing the value of the field element.
-        </member>
-        <member name="M:Org.BouncyCastle.Math.EC.F2mFieldElement.#ctor(System.Int32,System.Int32,Org.BouncyCastle.Math.BigInteger)">
-            Constructor for Tpb.
-            @param m  The exponent <code>m</code> of
-            <code>F<sub>2<sup>m</sup></sub></code>.
-            @param k The integer <code>k</code> where <code>x<sup>m</sup> +
-            x<sup>k</sup> + 1</code> represents the reduction
-            polynomial <code>f(z)</code>.
-            @param x The BigInteger representing the value of the field element.
-        </member>
-        <member name="M:Org.BouncyCastle.Math.EC.F2mFieldElement.CheckFieldElements(Org.BouncyCastle.Math.EC.ECFieldElement,Org.BouncyCastle.Math.EC.ECFieldElement)">
-            Checks, if the ECFieldElements <code>a</code> and <code>b</code>
-            are elements of the same field <code>F<sub>2<sup>m</sup></sub></code>
-            (having the same representation).
-            @param a field element.
-            @param b field element to be compared.
-            @throws ArgumentException if <code>a</code> and <code>b</code>
-            are not elements of the same field
-            <code>F<sub>2<sup>m</sup></sub></code> (having the same
-            representation).
-        </member>
-        <member name="P:Org.BouncyCastle.Math.EC.F2mFieldElement.Representation">
-            @return the representation of the field
-            <code>F<sub>2<sup>m</sup></sub></code>, either of
-            {@link F2mFieldElement.Tpb} (trinomial
-            basis representation) or
-            {@link F2mFieldElement.Ppb} (pentanomial
-            basis representation).
-        </member>
-        <member name="P:Org.BouncyCastle.Math.EC.F2mFieldElement.M">
-            @return the degree <code>m</code> of the reduction polynomial
-            <code>f(z)</code>.
-        </member>
-        <member name="P:Org.BouncyCastle.Math.EC.F2mFieldElement.K1">
-            @return Tpb: The integer <code>k</code> where <code>x<sup>m</sup> +
-            x<sup>k</sup> + 1</code> represents the reduction polynomial
-            <code>f(z)</code>.<br/>
-            Ppb: The integer <code>k1</code> where <code>x<sup>m</sup> +
-            x<sup>k3</sup> + x<sup>k2</sup> + x<sup>k1</sup> + 1</code>
-            represents the reduction polynomial <code>f(z)</code>.<br/>
-        </member>
-        <member name="P:Org.BouncyCastle.Math.EC.F2mFieldElement.K2">
-            @return Tpb: Always returns <code>0</code><br/>
-            Ppb: The integer <code>k2</code> where <code>x<sup>m</sup> +
-            x<sup>k3</sup> + x<sup>k2</sup> + x<sup>k1</sup> + 1</code>
-            represents the reduction polynomial <code>f(z)</code>.<br/>
-        </member>
-        <member name="P:Org.BouncyCastle.Math.EC.F2mFieldElement.K3">
-            @return Tpb: Always set to <code>0</code><br/>
-            Ppb: The integer <code>k3</code> where <code>x<sup>m</sup> +
-            x<sup>k3</sup> + x<sup>k2</sup> + x<sup>k1</sup> + 1</code>
-            represents the reduction polynomial <code>f(z)</code>.<br/>
-        </member>
-        <member name="T:Org.BouncyCastle.Math.EC.ECPoint">
-            base class for points on elliptic curves.
-        </member>
-        <member name="M:Org.BouncyCastle.Math.EC.ECPoint.SetPreCompInfo(Org.BouncyCastle.Math.EC.Multiplier.PreCompInfo)">
-            Sets the <code>PreCompInfo</code>. Used by <code>ECMultiplier</code>s
-            to save the precomputation for this <code>ECPoint</code> to store the
-            precomputation result for use by subsequent multiplication.
-            @param preCompInfo The values precomputed by the
-            <code>ECMultiplier</code>.
-        </member>
-        <member name="M:Org.BouncyCastle.Math.EC.ECPoint.AssertECMultiplier">
-            Sets the appropriate <code>ECMultiplier</code>, unless already set. 
-        </member>
-        <member name="M:Org.BouncyCastle.Math.EC.ECPointBase.GetEncoded">
-            return the field element encoded with point compression. (S 4.3.6)
-        </member>
-        <member name="M:Org.BouncyCastle.Math.EC.ECPointBase.Multiply(Org.BouncyCastle.Math.BigInteger)">
-            Multiplies this <code>ECPoint</code> by the given number.
-            @param k The multiplicator.
-            @return <code>k * this</code>.
-        </member>
-        <member name="T:Org.BouncyCastle.Math.EC.FpPoint">
-            Elliptic curve points over Fp
-        </member>
-        <member name="M:Org.BouncyCastle.Math.EC.FpPoint.#ctor(Org.BouncyCastle.Math.EC.ECCurve,Org.BouncyCastle.Math.EC.ECFieldElement,Org.BouncyCastle.Math.EC.ECFieldElement)">
-             Create a point which encodes with point compression.
-            
-             @param curve the curve to use
-             @param x affine x co-ordinate
-             @param y affine y co-ordinate
-        </member>
-        <member name="M:Org.BouncyCastle.Math.EC.FpPoint.#ctor(Org.BouncyCastle.Math.EC.ECCurve,Org.BouncyCastle.Math.EC.ECFieldElement,Org.BouncyCastle.Math.EC.ECFieldElement,System.Boolean)">
-             Create a point that encodes with or without point compresion.
-            
-             @param curve the curve to use
-             @param x affine x co-ordinate
-             @param y affine y co-ordinate
-             @param withCompression if true encode with point compression
-        </member>
-        <member name="M:Org.BouncyCastle.Math.EC.FpPoint.AssertECMultiplier">
-            Sets the default <code>ECMultiplier</code>, unless already set. 
-        </member>
-        <member name="T:Org.BouncyCastle.Math.EC.F2mPoint">
-            Elliptic curve points over F2m
-        </member>
-        <member name="M:Org.BouncyCastle.Math.EC.F2mPoint.#ctor(Org.BouncyCastle.Math.EC.ECCurve,Org.BouncyCastle.Math.EC.ECFieldElement,Org.BouncyCastle.Math.EC.ECFieldElement)">
-            @param curve base curve
-            @param x x point
-            @param y y point
-        </member>
-        <member name="M:Org.BouncyCastle.Math.EC.F2mPoint.#ctor(Org.BouncyCastle.Math.EC.ECCurve,Org.BouncyCastle.Math.EC.ECFieldElement,Org.BouncyCastle.Math.EC.ECFieldElement,System.Boolean)">
-            @param curve base curve
-            @param x x point
-            @param y y point
-            @param withCompression true if encode with point compression.
-        </member>
-        <member name="M:Org.BouncyCastle.Math.EC.F2mPoint.#ctor(Org.BouncyCastle.Math.EC.ECCurve)">
-            Constructor for point at infinity
-        </member>
-        <member name="M:Org.BouncyCastle.Math.EC.F2mPoint.CheckPoints(Org.BouncyCastle.Math.EC.ECPoint,Org.BouncyCastle.Math.EC.ECPoint)">
-            Check, if two <code>ECPoint</code>s can be added or subtracted.
-            @param a The first <code>ECPoint</code> to check.
-            @param b The second <code>ECPoint</code> to check.
-            @throws IllegalArgumentException if <code>a</code> and <code>b</code>
-            cannot be added.
-        </member>
-        <member name="M:Org.BouncyCastle.Math.EC.F2mPoint.AddSimple(Org.BouncyCastle.Math.EC.F2mPoint)">
-            Adds another <code>ECPoints.F2m</code> to <code>this</code> without
-            checking if both points are on the same curve. Used by multiplication
-            algorithms, because there all points are a multiple of the same point
-            and hence the checks can be omitted.
-            @param b The other <code>ECPoints.F2m</code> to add to
-            <code>this</code>.
-            @return <code>this + b</code>
-        </member>
-        <member name="M:Org.BouncyCastle.Math.EC.F2mPoint.SubtractSimple(Org.BouncyCastle.Math.EC.F2mPoint)">
-            Subtracts another <code>ECPoints.F2m</code> from <code>this</code>
-            without checking if both points are on the same curve. Used by
-            multiplication algorithms, because there all points are a multiple
-            of the same point and hence the checks can be omitted.
-            @param b The other <code>ECPoints.F2m</code> to subtract from
-            <code>this</code>.
-            @return <code>this - b</code>
-        </member>
-        <member name="M:Org.BouncyCastle.Math.EC.F2mPoint.AssertECMultiplier">
-            Sets the appropriate <code>ECMultiplier</code>, unless already set. 
-        </member>
-        <member name="T:Org.BouncyCastle.Math.EC.Multiplier.ECMultiplier">
-            Interface for classes encapsulating a point multiplication algorithm
-            for <code>ECPoint</code>s.
-        </member>
-        <member name="M:Org.BouncyCastle.Math.EC.Multiplier.ECMultiplier.Multiply(Org.BouncyCastle.Math.EC.ECPoint,Org.BouncyCastle.Math.BigInteger,Org.BouncyCastle.Math.EC.Multiplier.PreCompInfo)">
-            Multiplies the <code>ECPoint p</code> by <code>k</code>, i.e.
-            <code>p</code> is added <code>k</code> times to itself.
-            @param p The <code>ECPoint</code> to be multiplied.
-            @param k The factor by which <code>p</code> i multiplied.
-            @return <code>p</code> multiplied by <code>k</code>.
-        </member>
-        <member name="T:Org.BouncyCastle.Math.EC.Multiplier.FpNafMultiplier">
-            Class implementing the NAF (Non-Adjacent Form) multiplication algorithm.
-        </member>
-        <member name="M:Org.BouncyCastle.Math.EC.Multiplier.FpNafMultiplier.Multiply(Org.BouncyCastle.Math.EC.ECPoint,Org.BouncyCastle.Math.BigInteger,Org.BouncyCastle.Math.EC.Multiplier.PreCompInfo)">
-            D.3.2 pg 101
-            @see org.bouncycastle.math.ec.multiplier.ECMultiplier#multiply(org.bouncycastle.math.ec.ECPoint, java.math.BigInteger)
-        </member>
-        <member name="T:Org.BouncyCastle.Math.EC.Multiplier.PreCompInfo">
-            Interface for classes storing precomputation data for multiplication
-            algorithms. Used as a Memento (see GOF patterns) for
-            <code>WNafMultiplier</code>.
-        </member>
-        <member name="M:Org.BouncyCastle.Math.EC.Multiplier.ReferenceMultiplier.Multiply(Org.BouncyCastle.Math.EC.ECPoint,Org.BouncyCastle.Math.BigInteger,Org.BouncyCastle.Math.EC.Multiplier.PreCompInfo)">
-            Simple shift-and-add multiplication. Serves as reference implementation
-            to verify (possibly faster) implementations in
-            {@link org.bouncycastle.math.ec.ECPoint ECPoint}.
-            
-            @param p The point to multiply.
-            @param k The factor by which to multiply.
-            @return The result of the point multiplication <code>k * p</code>.
-        </member>
-        <member name="T:Org.BouncyCastle.Math.EC.Multiplier.WNafMultiplier">
-            Class implementing the WNAF (Window Non-Adjacent Form) multiplication
-            algorithm.
-        </member>
-        <member name="M:Org.BouncyCastle.Math.EC.Multiplier.WNafMultiplier.WindowNaf(System.SByte,Org.BouncyCastle.Math.BigInteger)">
-            Computes the Window NAF (non-adjacent Form) of an integer.
-            @param width The width <code>w</code> of the Window NAF. The width is
-            defined as the minimal number <code>w</code>, such that for any
-            <code>w</code> consecutive digits in the resulting representation, at
-            most one is non-zero.
-            @param k The integer of which the Window NAF is computed.
-            @return The Window NAF of the given width, such that the following holds:
-            <code>k = &#8722;<sub>i=0</sub><sup>l-1</sup> k<sub>i</sub>2<sup>i</sup>
-            </code>, where the <code>k<sub>i</sub></code> denote the elements of the
-            returned <code>sbyte[]</code>.
-        </member>
-        <member name="M:Org.BouncyCastle.Math.EC.Multiplier.WNafMultiplier.Multiply(Org.BouncyCastle.Math.EC.ECPoint,Org.BouncyCastle.Math.BigInteger,Org.BouncyCastle.Math.EC.Multiplier.PreCompInfo)">
-            Multiplies <code>this</code> by an integer <code>k</code> using the
-            Window NAF method.
-            @param k The integer by which <code>this</code> is multiplied.
-            @return A new <code>ECPoint</code> which equals <code>this</code>
-            multiplied by <code>k</code>.
-        </member>
-        <member name="T:Org.BouncyCastle.Math.EC.Multiplier.WNafPreCompInfo">
-            Class holding precomputation data for the WNAF (Window Non-Adjacent Form)
-            algorithm.
-        </member>
-        <member name="F:Org.BouncyCastle.Math.EC.Multiplier.WNafPreCompInfo.preComp">
-            Array holding the precomputed <code>ECPoint</code>s used for the Window
-            NAF multiplication in <code>
-            {@link org.bouncycastle.math.ec.multiplier.WNafMultiplier.multiply()
-            WNafMultiplier.multiply()}</code>.
-        </member>
-        <member name="F:Org.BouncyCastle.Math.EC.Multiplier.WNafPreCompInfo.twiceP">
-            Holds an <code>ECPoint</code> representing twice(this). Used for the
-            Window NAF multiplication in <code>
-            {@link org.bouncycastle.math.ec.multiplier.WNafMultiplier.multiply()
-            WNafMultiplier.multiply()}</code>.
-        </member>
-        <member name="T:Org.BouncyCastle.Math.EC.Multiplier.WTauNafMultiplier">
-            Class implementing the WTNAF (Window
-            <code>&#964;</code>-adic Non-Adjacent Form) algorithm.
-        </member>
-        <member name="M:Org.BouncyCastle.Math.EC.Multiplier.WTauNafMultiplier.Multiply(Org.BouncyCastle.Math.EC.ECPoint,Org.BouncyCastle.Math.BigInteger,Org.BouncyCastle.Math.EC.Multiplier.PreCompInfo)">
-            Multiplies a {@link org.bouncycastle.math.ec.F2mPoint F2mPoint}
-            by <code>k</code> using the reduced <code>&#964;</code>-adic NAF (RTNAF)
-            method.
-            @param p The F2mPoint to multiply.
-            @param k The integer by which to multiply <code>k</code>.
-            @return <code>p</code> multiplied by <code>k</code>.
-        </member>
-        <member name="M:Org.BouncyCastle.Math.EC.Multiplier.WTauNafMultiplier.MultiplyWTnaf(Org.BouncyCastle.Math.EC.F2mPoint,Org.BouncyCastle.Math.EC.Abc.ZTauElement,Org.BouncyCastle.Math.EC.Multiplier.PreCompInfo,System.SByte,System.SByte)">
-            Multiplies a {@link org.bouncycastle.math.ec.F2mPoint F2mPoint}
-            by an element <code>&#955;</code> of <code><b>Z</b>[&#964;]</code> using
-            the <code>&#964;</code>-adic NAF (TNAF) method.
-            @param p The F2mPoint to multiply.
-            @param lambda The element <code>&#955;</code> of
-            <code><b>Z</b>[&#964;]</code> of which to compute the
-            <code>[&#964;]</code>-adic NAF.
-            @return <code>p</code> multiplied by <code>&#955;</code>.
-        </member>
-        <member name="M:Org.BouncyCastle.Math.EC.Multiplier.WTauNafMultiplier.MultiplyFromWTnaf(Org.BouncyCastle.Math.EC.F2mPoint,System.SByte[],Org.BouncyCastle.Math.EC.Multiplier.PreCompInfo)">
-            Multiplies a {@link org.bouncycastle.math.ec.F2mPoint F2mPoint}
-            by an element <code>&#955;</code> of <code><b>Z</b>[&#964;]</code>
-            using the window <code>&#964;</code>-adic NAF (TNAF) method, given the
-            WTNAF of <code>&#955;</code>.
-            @param p The F2mPoint to multiply.
-            @param u The the WTNAF of <code>&#955;</code>..
-            @return <code>&#955; * p</code>
-        </member>
-        <member name="T:Org.BouncyCastle.Math.EC.Multiplier.WTauNafPreCompInfo">
-            Class holding precomputation data for the WTNAF (Window
-            <code>&#964;</code>-adic Non-Adjacent Form) algorithm.
-        </member>
-        <member name="F:Org.BouncyCastle.Math.EC.Multiplier.WTauNafPreCompInfo.preComp">
-            Array holding the precomputed <code>F2mPoint</code>s used for the
-            WTNAF multiplication in <code>
-            {@link org.bouncycastle.math.ec.multiplier.WTauNafMultiplier.multiply()
-            WTauNafMultiplier.multiply()}</code>.
-        </member>
-        <member name="M:Org.BouncyCastle.Math.EC.Multiplier.WTauNafPreCompInfo.#ctor(Org.BouncyCastle.Math.EC.F2mPoint[])">
-            Constructor for <code>WTauNafPreCompInfo</code>
-            @param preComp Array holding the precomputed <code>F2mPoint</code>s
-            used for the WTNAF multiplication in <code>
-            {@link org.bouncycastle.math.ec.multiplier.WTauNafMultiplier.multiply()
-            WTauNafMultiplier.multiply()}</code>.
-        </member>
-        <member name="M:Org.BouncyCastle.Math.EC.Multiplier.WTauNafPreCompInfo.GetPreComp">
-            @return the array holding the precomputed <code>F2mPoint</code>s
-            used for the WTNAF multiplication in <code>
-            {@link org.bouncycastle.math.ec.multiplier.WTauNafMultiplier.multiply()
-            WTauNafMultiplier.multiply()}</code>.
-        </member>
-        <member name="T:Org.BouncyCastle.Ocsp.BasicOcspResp">
-            <remarks>
-            <code>
-            BasicOcspResponse ::= SEQUENCE {
-            	tbsResponseData		ResponseData,
-            	signatureAlgorithm	AlgorithmIdentifier,
-            	signature			BIT STRING,
-            	certs				[0] EXPLICIT SEQUENCE OF Certificate OPTIONAL
-            }
-            </code>
-            </remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.IX509Extension.GetCriticalExtensionOids">
-            <summary>
-            Get all critical extension values, by oid
-            </summary>
-            <returns>IDictionary with string (OID) keys and Asn1OctetString values</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.IX509Extension.GetNonCriticalExtensionOids">
-            <summary>
-            Get all non-critical extension values, by oid
-            </summary>
-            <returns>IDictionary with string (OID) keys and Asn1OctetString values</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509ExtensionBase.GetNonCriticalExtensionOids">
-            <summary>
-            Get non critical extensions.
-            </summary>
-            <returns>A set of non critical extension oids.</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509ExtensionBase.GetCriticalExtensionOids">
-            <summary>
-            Get any critical extensions.
-            </summary>
-            <returns>A sorted list of critical entension.</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509ExtensionBase.GetExtensionValue(System.String)">
-            <summary>
-            Get the value of a given extension.
-            </summary>
-            <param name="oid">The object ID of the extension. </param>
-            <returns>An Asn1OctetString object if that extension is found or null if not.</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Ocsp.BasicOcspResp.GetTbsResponseData">
-            <returns>The DER encoding of the tbsResponseData field.</returns>
-            <exception cref="T:Org.BouncyCastle.Ocsp.OcspException">In the event of an encoding error.</exception>
-        </member>
-        <member name="M:Org.BouncyCastle.Ocsp.BasicOcspResp.GetCertificates(System.String)">
-            <returns>The certificates, if any, associated with the response.</returns>
-            <exception cref="T:Org.BouncyCastle.Ocsp.OcspException">In the event of an encoding error.</exception>
-        </member>
-        <member name="M:Org.BouncyCastle.Ocsp.BasicOcspResp.Verify(Org.BouncyCastle.Crypto.AsymmetricKeyParameter)">
-            <summary>
-            Verify the signature against the tbsResponseData object we contain.
-            </summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Ocsp.BasicOcspResp.GetEncoded">
-            <returns>The ASN.1 encoded representation of this object.</returns>
-        </member>
-        <member name="T:Org.BouncyCastle.Ocsp.BasicOcspRespGenerator">
-            Generator for basic OCSP response objects.
-        </member>
-        <member name="M:Org.BouncyCastle.Ocsp.BasicOcspRespGenerator.#ctor(Org.BouncyCastle.Ocsp.RespID)">
-            basic constructor
-        </member>
-        <member name="M:Org.BouncyCastle.Ocsp.BasicOcspRespGenerator.#ctor(Org.BouncyCastle.Crypto.AsymmetricKeyParameter)">
-            construct with the responderID to be the SHA-1 keyHash of the passed in public key.
-        </member>
-        <member name="M:Org.BouncyCastle.Ocsp.BasicOcspRespGenerator.AddResponse(Org.BouncyCastle.Ocsp.CertificateID,Org.BouncyCastle.Ocsp.CertificateStatus)">
-             Add a response for a particular Certificate ID.
-            
-             @param certID certificate ID details
-             @param certStatus status of the certificate - null if okay
-        </member>
-        <member name="M:Org.BouncyCastle.Ocsp.BasicOcspRespGenerator.AddResponse(Org.BouncyCastle.Ocsp.CertificateID,Org.BouncyCastle.Ocsp.CertificateStatus,Org.BouncyCastle.Asn1.X509.X509Extensions)">
-             Add a response for a particular Certificate ID.
-            
-             @param certID certificate ID details
-             @param certStatus status of the certificate - null if okay
-             @param singleExtensions optional extensions
-        </member>
-        <member name="M:Org.BouncyCastle.Ocsp.BasicOcspRespGenerator.AddResponse(Org.BouncyCastle.Ocsp.CertificateID,Org.BouncyCastle.Ocsp.CertificateStatus,System.DateTime,Org.BouncyCastle.Asn1.X509.X509Extensions)">
-             Add a response for a particular Certificate ID.
-            
-             @param certID certificate ID details
-             @param nextUpdate date when next update should be requested
-             @param certStatus status of the certificate - null if okay
-             @param singleExtensions optional extensions
-        </member>
-        <member name="M:Org.BouncyCastle.Ocsp.BasicOcspRespGenerator.AddResponse(Org.BouncyCastle.Ocsp.CertificateID,Org.BouncyCastle.Ocsp.CertificateStatus,System.DateTime,System.DateTime,Org.BouncyCastle.Asn1.X509.X509Extensions)">
-             Add a response for a particular Certificate ID.
-            
-             @param certID certificate ID details
-             @param thisUpdate date this response was valid on
-             @param nextUpdate date when next update should be requested
-             @param certStatus status of the certificate - null if okay
-             @param singleExtensions optional extensions
-        </member>
-        <member name="M:Org.BouncyCastle.Ocsp.BasicOcspRespGenerator.SetResponseExtensions(Org.BouncyCastle.Asn1.X509.X509Extensions)">
-             Set the extensions for the response.
-            
-             @param responseExtensions the extension object to carry.
-        </member>
-        <member name="P:Org.BouncyCastle.Ocsp.BasicOcspRespGenerator.SignatureAlgNames">
-             Return an IEnumerable of the signature names supported by the generator.
-            
-             @return an IEnumerable containing recognised names.
-        </member>
-        <member name="M:Org.BouncyCastle.Ocsp.CertificateID.#ctor(System.String,Org.BouncyCastle.X509.X509Certificate,Org.BouncyCastle.Math.BigInteger)">
-            create from an issuer certificate and the serial number of the
-            certificate it signed.
-            @exception OcspException if any problems occur creating the id fields.
-        </member>
-        <member name="M:Org.BouncyCastle.Ocsp.CertificateID.DeriveCertificateID(Org.BouncyCastle.Ocsp.CertificateID,Org.BouncyCastle.Math.BigInteger)">
-             Create a new CertificateID for a new serial number derived from a previous one
-             calculated for the same CA certificate.
-            
-             @param original the previously calculated CertificateID for the CA.
-             @param newSerialNumber the serial number for the new certificate of interest.
-            
-             @return a new CertificateID for newSerialNumber
-        </member>
-        <member name="P:Org.BouncyCastle.Ocsp.CertificateID.SerialNumber">
-            return the serial number for the certificate associated
-            with this request.
-        </member>
-        <member name="T:Org.BouncyCastle.Ocsp.OcspReq">
-             <pre>
-             OcspRequest     ::=     SEQUENCE {
-                   tbsRequest                  TBSRequest,
-                   optionalSignature   [0]     EXPLICIT Signature OPTIONAL }
-            
-               TBSRequest      ::=     SEQUENCE {
-                   version             [0]     EXPLICIT Version DEFAULT v1,
-                   requestorName       [1]     EXPLICIT GeneralName OPTIONAL,
-                   requestList                 SEQUENCE OF Request,
-                   requestExtensions   [2]     EXPLICIT Extensions OPTIONAL }
-            
-               Signature       ::=     SEQUENCE {
-                   signatureAlgorithm      AlgorithmIdentifier,
-                   signature               BIT STRING,
-                   certs               [0] EXPLICIT SEQUENCE OF Certificate OPTIONAL}
-            
-               Version         ::=             INTEGER  {  v1(0) }
-            
-               Request         ::=     SEQUENCE {
-                   reqCert                     CertID,
-                   singleRequestExtensions     [0] EXPLICIT Extensions OPTIONAL }
-            
-               CertID          ::=     SEQUENCE {
-                   hashAlgorithm       AlgorithmIdentifier,
-                   issuerNameHash      OCTET STRING, -- Hash of Issuer's DN
-                   issuerKeyHash       OCTET STRING, -- Hash of Issuers public key
-                   serialNumber        CertificateSerialNumber }
-             </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.Ocsp.OcspReq.GetTbsRequest">
-            Return the DER encoding of the tbsRequest field.
-            @return DER encoding of tbsRequest
-            @throws OcspException in the event of an encoding error.
-        </member>
-        <member name="M:Org.BouncyCastle.Ocsp.OcspReq.GetCertificates(System.String)">
-             If the request is signed return a possibly empty CertStore containing the certificates in the
-             request. If the request is not signed the method returns null.
-            
-             @return null if not signed, a CertStore otherwise
-             @throws OcspException
-        </member>
-        <member name="M:Org.BouncyCastle.Ocsp.OcspReq.Verify(Org.BouncyCastle.Crypto.AsymmetricKeyParameter)">
-            Verify the signature against the TBSRequest object we contain.
-        </member>
-        <member name="M:Org.BouncyCastle.Ocsp.OcspReq.GetEncoded">
-            return the ASN.1 encoded representation of this object.
-        </member>
-        <member name="P:Org.BouncyCastle.Ocsp.OcspReq.SignatureAlgOid">
-            return the object identifier representing the signature algorithm
-        </member>
-        <member name="P:Org.BouncyCastle.Ocsp.OcspReq.IsSigned">
-             Return whether or not this request is signed.
-            
-             @return true if signed false otherwise.
-        </member>
-        <member name="M:Org.BouncyCastle.Ocsp.OcspReqGenerator.AddRequest(Org.BouncyCastle.Ocsp.CertificateID)">
-             Add a request for the given CertificateID.
-            
-             @param certId certificate ID of interest
-        </member>
-        <member name="M:Org.BouncyCastle.Ocsp.OcspReqGenerator.AddRequest(Org.BouncyCastle.Ocsp.CertificateID,Org.BouncyCastle.Asn1.X509.X509Extensions)">
-             Add a request with extensions
-            
-             @param certId certificate ID of interest
-             @param singleRequestExtensions the extensions to attach to the request
-        </member>
-        <member name="M:Org.BouncyCastle.Ocsp.OcspReqGenerator.SetRequestorName(Org.BouncyCastle.Asn1.X509.X509Name)">
-             Set the requestor name to the passed in X509Principal
-            
-             @param requestorName a X509Principal representing the requestor name.
-        </member>
-        <member name="M:Org.BouncyCastle.Ocsp.OcspReqGenerator.Generate">
-             Generate an unsigned request
-            
-             @return the OcspReq
-             @throws OcspException
-        </member>
-        <member name="P:Org.BouncyCastle.Ocsp.OcspReqGenerator.SignatureAlgNames">
-             Return an IEnumerable of the signature names supported by the generator.
-            
-             @return an IEnumerable containing recognised names.
-        </member>
-        <member name="M:Org.BouncyCastle.Ocsp.OcspResp.GetEncoded">
-            return the ASN.1 encoded representation of this object.
-        </member>
-        <member name="T:Org.BouncyCastle.Ocsp.OCSPRespGenerator">
-            base generator for an OCSP response - at the moment this only supports the
-            generation of responses containing BasicOCSP responses.
-        </member>
-        <member name="F:Org.BouncyCastle.Ocsp.OcspRespStatus.Successful">
-            note 4 is not used.
-        </member>
-        <member name="T:Org.BouncyCastle.Ocsp.RespID">
-            Carrier for a ResponderID.
-        </member>
-        <member name="T:Org.BouncyCastle.Ocsp.RevokedStatus">
-            wrapper for the RevokedInfo object
-        </member>
-        <member name="P:Org.BouncyCastle.Ocsp.RevokedStatus.RevocationReason">
-            return the revocation reason. Note: this field is optional, test for it
-            with hasRevocationReason() first.
-            @exception InvalidOperationException if a reason is asked for and none is avaliable
-        </member>
-        <member name="M:Org.BouncyCastle.Ocsp.SingleResp.GetCertStatus">
-             Return the status object for the response - null indicates good.
-            
-             @return the status object for the response, null if it is good.
-        </member>
-        <member name="P:Org.BouncyCastle.Ocsp.SingleResp.NextUpdate">
-             return the NextUpdate value - note: this is an optional field so may
-             be returned as null.
-            
-             @return nextUpdate, or null if not present.
-        </member>
-        <member name="T:Org.BouncyCastle.Ocsp.UnknownStatus">
-            wrapper for the UnknownInfo object
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.OpenPgp.PgpCompressedData">
-            <remarks>Compressed data objects</remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpCompressedData.GetInputStream">
-            <summary>Get the raw input stream contained in the object.</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpCompressedData.GetDataStream">
-            <summary>Return an uncompressed input stream which allows reading of the compressed data.</summary>
-        </member>
-        <member name="P:Org.BouncyCastle.Bcpg.OpenPgp.PgpCompressedData.Algorithm">
-            <summary>The algorithm used for compression</summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.OpenPgp.PgpCompressedDataGenerator">
-            <remarks>Class for producing compressed data packets.</remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpCompressedDataGenerator.Open(System.IO.Stream)">
-            <summary>
-            <p>
-            Return an output stream which will save the data being written to
-            the compressed object.
-            </p>
-            <p>
-            The stream created can be closed off by either calling Close()
-            on the stream or Close() on the generator. Closing the returned
-            stream does not close off the Stream parameter <c>outStr</c>.
-            </p>
-            </summary>
-            <param name="outStr">Stream to be used for output.</param>
-            <returns>A Stream for output of the compressed data.</returns>
-            <exception cref="T:System.ArgumentNullException"></exception>
-            <exception cref="T:System.InvalidOperationException"></exception>
-            <exception cref="T:System.IO.IOException"></exception>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpCompressedDataGenerator.Open(System.IO.Stream,System.Byte[])">
-            <summary>
-            <p>
-            Return an output stream which will compress the data as it is written to it.
-            The stream will be written out in chunks according to the size of the passed in buffer.
-            </p>
-            <p>
-            The stream created can be closed off by either calling Close()
-            on the stream or Close() on the generator. Closing the returned
-            stream does not close off the Stream parameter <c>outStr</c>.
-            </p>
-            <p>
-            <b>Note</b>: if the buffer is not a power of 2 in length only the largest power of 2
-            bytes worth of the buffer will be used.
-            </p>
-            <p>
-            <b>Note</b>: using this may break compatibility with RFC 1991 compliant tools.
-            Only recent OpenPGP implementations are capable of accepting these streams.
-            </p>
-            </summary>
-            <param name="outStr">Stream to be used for output.</param>
-            <param name="buffer">The buffer to use.</param>
-            <returns>A Stream for output of the compressed data.</returns>
-            <exception cref="T:System.ArgumentNullException"></exception>
-            <exception cref="T:System.InvalidOperationException"></exception>
-            <exception cref="T:System.IO.IOException"></exception>
-            <exception cref="T:Org.BouncyCastle.Bcpg.OpenPgp.PgpException"></exception>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpCompressedDataGenerator.Close">
-            <summary>Close the compressed object.</summary>summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.OpenPgp.PgpDataValidationException">
-            <remarks>
-            Thrown if the IV at the start of a data stream indicates the wrong key is being used.
-            </remarks>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.OpenPgp.PgpException">
-            <remarks>Generic exception class for PGP encoding/decoding problems.</remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpEncryptedData.GetInputStream">
-            <summary>Return the raw input stream for the data stream.</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpEncryptedData.IsIntegrityProtected">
-            <summary>Return true if the message is integrity protected.</summary>
-            <returns>True, if there is a modification detection code namespace associated
-            with this stream.</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpEncryptedData.Verify">
-            <summary>Note: This can only be called after the message has been read.</summary>
-            <returns>True, if the message verifies, false otherwise</returns>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.OpenPgp.PgpEncryptedDataGenerator">
-            <remarks>Generator for encrypted objects.</remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpEncryptedDataGenerator.#ctor(Org.BouncyCastle.Bcpg.SymmetricKeyAlgorithmTag,Org.BouncyCastle.Security.SecureRandom)">
-            <summary>Existing SecureRandom constructor.</summary>
-            <param name="encAlgorithm">The symmetric algorithm to use.</param>
-            <param name="rand">Source of randomness.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpEncryptedDataGenerator.#ctor(Org.BouncyCastle.Bcpg.SymmetricKeyAlgorithmTag,System.Boolean,Org.BouncyCastle.Security.SecureRandom)">
-            <summary>Creates a cipher stream which will have an integrity packet associated with it.</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpEncryptedDataGenerator.#ctor(Org.BouncyCastle.Bcpg.SymmetricKeyAlgorithmTag,Org.BouncyCastle.Security.SecureRandom,System.Boolean)">
-            <summary>Base constructor.</summary>
-            <param name="encAlgorithm">The symmetric algorithm to use.</param>
-            <param name="rand">Source of randomness.</param>
-            <param name="oldFormat">PGP 2.6.x compatibility required.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpEncryptedDataGenerator.AddMethod(System.Char[])">
-            <summary>
-            Add a PBE encryption method to the encrypted object using the default algorithm (S2K_SHA1).
-            </summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpEncryptedDataGenerator.AddMethod(System.Char[],Org.BouncyCastle.Bcpg.HashAlgorithmTag)">
-            <summary>Add a PBE encryption method to the encrypted object.</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpEncryptedDataGenerator.AddMethod(Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKey)">
-            <summary>Add a public key encrypted session key to the encrypted object.</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpEncryptedDataGenerator.Open(System.IO.Stream,System.Int64,System.Byte[])">
-            <summary>
-            <p>
-            If buffer is non null stream assumed to be partial, otherwise the length will be used
-            to output a fixed length packet.
-            </p>
-            <p>
-            The stream created can be closed off by either calling Close()
-            on the stream or Close() on the generator. Closing the returned
-            stream does not close off the Stream parameter <c>outStr</c>.
-            </p>
-            </summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpEncryptedDataGenerator.Open(System.IO.Stream,System.Int64)">
-            <summary>
-            <p>
-            Return an output stream which will encrypt the data as it is written to it.
-            </p>
-            <p>
-            The stream created can be closed off by either calling Close()
-            on the stream or Close() on the generator. Closing the returned
-            stream does not close off the Stream parameter <c>outStr</c>.
-            </p>
-            </summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpEncryptedDataGenerator.Open(System.IO.Stream,System.Byte[])">
-            <summary>
-            <p>
-            Return an output stream which will encrypt the data as it is written to it.
-            The stream will be written out in chunks according to the size of the passed in buffer.
-            </p>
-            <p>
-            The stream created can be closed off by either calling Close()
-            on the stream or Close() on the generator. Closing the returned
-            stream does not close off the Stream parameter <c>outStr</c>.
-            </p>
-            <p>
-            <b>Note</b>: if the buffer is not a power of 2 in length only the largest power of 2
-            bytes worth of the buffer will be used.
-            </p>
-            </summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpEncryptedDataGenerator.Close">
-            <summary>
-            <p>
-            Close off the encrypted object - this is equivalent to calling Close() on the stream
-            returned by the Open() method.
-            </p>
-            <p>
-            <b>Note</b>: This does not close the underlying output stream, only the stream on top of
-            it created by the Open() method.
-            </p>
-            </summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.OpenPgp.PgpEncryptedDataList">
-            <remarks>A holder for a list of PGP encryption method packets.</remarks>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.OpenPgp.PgpKeyFlags">
-            <remarks>Key flag values for the KeyFlags subpacket.</remarks>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.OpenPgp.PgpKeyPair">
-            <remarks>
-            General class to handle JCA key pairs and convert them into OpenPGP ones.
-            <p>
-            A word for the unwary, the KeyId for an OpenPGP public key is calculated from
-            a hash that includes the time of creation, if you pass a different date to the
-            constructor below with the same public private key pair the KeyIs will not be the
-            same as for previous generations of the key, so ideally you only want to do
-            this once.
-            </p>
-            </remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpKeyPair.#ctor(Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKey,Org.BouncyCastle.Bcpg.OpenPgp.PgpPrivateKey)">
-            <summary>Create a key pair from a PgpPrivateKey and a PgpPublicKey.</summary>
-            <param name="pub">The public key.</param>
-            <param name="priv">The private key.</param>
-        </member>
-        <member name="P:Org.BouncyCastle.Bcpg.OpenPgp.PgpKeyPair.KeyId">
-            <summary>The keyId associated with this key pair.</summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.OpenPgp.PgpKeyRingGenerator">
-            <remarks>
-            Generator for a PGP master and subkey ring.
-            This class will generate both the secret and public key rings
-            </remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpKeyRingGenerator.#ctor(System.Int32,Org.BouncyCastle.Bcpg.OpenPgp.PgpKeyPair,System.String,Org.BouncyCastle.Bcpg.SymmetricKeyAlgorithmTag,System.Char[],Org.BouncyCastle.Bcpg.OpenPgp.PgpSignatureSubpacketVector,Org.BouncyCastle.Bcpg.OpenPgp.PgpSignatureSubpacketVector,Org.BouncyCastle.Security.SecureRandom)">
-            <summary>
-            Create a new key ring generator using old style checksumming. It is recommended to use
-            SHA1 checksumming where possible.
-            </summary>
-            <param name="certificationLevel">The certification level for keys on this ring.</param>
-            <param name="masterKey">The master key pair.</param>
-            <param name="id">The id to be associated with the ring.</param>
-            <param name="encAlgorithm">The algorithm to be used to protect secret keys.</param>
-            <param name="passPhrase">The passPhrase to be used to protect secret keys.</param>
-            <param name="hashedPackets">Packets to be included in the certification hash.</param>
-            <param name="unhashedPackets">Packets to be attached unhashed to the certification.</param>
-            <param name="rand">input secured random.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpKeyRingGenerator.#ctor(System.Int32,Org.BouncyCastle.Bcpg.OpenPgp.PgpKeyPair,System.String,Org.BouncyCastle.Bcpg.SymmetricKeyAlgorithmTag,System.Char[],System.Boolean,Org.BouncyCastle.Bcpg.OpenPgp.PgpSignatureSubpacketVector,Org.BouncyCastle.Bcpg.OpenPgp.PgpSignatureSubpacketVector,Org.BouncyCastle.Security.SecureRandom)">
-            <summary>
-            Create a new key ring generator.
-            </summary>
-            <param name="certificationLevel">The certification level for keys on this ring.</param>
-            <param name="masterKey">The master key pair.</param>
-            <param name="id">The id to be associated with the ring.</param>
-            <param name="encAlgorithm">The algorithm to be used to protect secret keys.</param>
-            <param name="passPhrase">The passPhrase to be used to protect secret keys.</param>
-            <param name="useSha1">Checksum the secret keys with SHA1 rather than the older 16 bit checksum.</param>
-            <param name="hashedPackets">Packets to be included in the certification hash.</param>
-            <param name="unhashedPackets">Packets to be attached unhashed to the certification.</param>
-            <param name="rand">input secured random.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpKeyRingGenerator.AddSubKey(Org.BouncyCastle.Bcpg.OpenPgp.PgpKeyPair)">
-            <summary>Add a subkey to the key ring to be generated with default certification.</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpKeyRingGenerator.AddSubKey(Org.BouncyCastle.Bcpg.OpenPgp.PgpKeyPair,Org.BouncyCastle.Bcpg.OpenPgp.PgpSignatureSubpacketVector,Org.BouncyCastle.Bcpg.OpenPgp.PgpSignatureSubpacketVector)">
-            <summary>
-            Add a subkey with specific hashed and unhashed packets associated with it and
-            default certification.
-            </summary>
-            <param name="keyPair">Public/private key pair.</param>
-            <param name="hashedPackets">Hashed packet values to be included in certification.</param>
-            <param name="unhashedPackets">Unhashed packets values to be included in certification.</param>
-            <exception cref="T:Org.BouncyCastle.Bcpg.OpenPgp.PgpException"></exception>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpKeyRingGenerator.GenerateSecretKeyRing">
-            <summary>Return the secret key ring.</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpKeyRingGenerator.GeneratePublicKeyRing">
-            <summary>Return the public key ring that corresponds to the secret key ring.</summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.OpenPgp.PgpKeyValidationException">
-            <remarks>
-            Thrown if the key checksum is invalid.
-            </remarks>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.OpenPgp.PgpLiteralData">
-            <summary>Class for processing literal data objects.</summary>
-        </member>
-        <member name="F:Org.BouncyCastle.Bcpg.OpenPgp.PgpLiteralData.Console">
-            <summary>The special name indicating a "for your eyes only" packet.</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpLiteralData.GetRawFileName">
-            Return the file name as an unintrepreted byte array.
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpLiteralData.GetInputStream">
-            <summary>The raw input stream for the data stream.</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpLiteralData.GetDataStream">
-            <summary>The input stream representing the data stream.</summary>
-        </member>
-        <member name="P:Org.BouncyCastle.Bcpg.OpenPgp.PgpLiteralData.Format">
-            <summary>The format of the data stream - Binary or Text</summary>
-        </member>
-        <member name="P:Org.BouncyCastle.Bcpg.OpenPgp.PgpLiteralData.FileName">
-            <summary>The file name that's associated with the data stream.</summary>
-        </member>
-        <member name="P:Org.BouncyCastle.Bcpg.OpenPgp.PgpLiteralData.ModificationTime">
-            <summary>The modification time for the file.</summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.OpenPgp.PgpLiteralDataGenerator">
-            <remarks>Class for producing literal data packets.</remarks>
-        </member>
-        <member name="F:Org.BouncyCastle.Bcpg.OpenPgp.PgpLiteralDataGenerator.Console">
-            <summary>The special name indicating a "for your eyes only" packet.</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpLiteralDataGenerator.#ctor(System.Boolean)">
-            <summary>
-            Generates literal data objects in the old format.
-            This is important if you need compatibility with PGP 2.6.x.
-            </summary>
-            <param name="oldFormat">If true, uses old format.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpLiteralDataGenerator.Open(System.IO.Stream,System.Char,System.String,System.Int64,System.DateTime)">
-            <summary>
-            <p>
-            Open a literal data packet, returning a stream to store the data inside the packet.
-            </p>
-            <p>
-            The stream created can be closed off by either calling Close()
-            on the stream or Close() on the generator. Closing the returned
-            stream does not close off the Stream parameter <c>outStr</c>.
-            </p>
-            </summary>
-            <param name="outStr">The stream we want the packet in.</param>
-            <param name="format">The format we are using.</param>
-            <param name="name">The name of the 'file'.</param>
-            <param name="length">The length of the data we will write.</param>
-            <param name="modificationTime">The time of last modification we want stored.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpLiteralDataGenerator.Open(System.IO.Stream,System.Char,System.String,System.DateTime,System.Byte[])">
-            <summary>
-            <p>
-            Open a literal data packet, returning a stream to store the data inside the packet,
-            as an indefinite length stream. The stream is written out as a series of partial
-            packets with a chunk size determined by the size of the passed in buffer.
-            </p>
-            <p>
-            The stream created can be closed off by either calling Close()
-            on the stream or Close() on the generator. Closing the returned
-            stream does not close off the Stream parameter <c>outStr</c>.
-            </p>
-            <p>
-            <b>Note</b>: if the buffer is not a power of 2 in length only the largest power of 2
-            bytes worth of the buffer will be used.</p>
-            </summary>
-            <param name="outStr">The stream we want the packet in.</param>
-            <param name="format">The format we are using.</param>
-            <param name="name">The name of the 'file'.</param>
-            <param name="modificationTime">The time of last modification we want stored.</param>
-            <param name="buffer">The buffer to use for collecting data to put into chunks.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpLiteralDataGenerator.Close">
-            <summary>
-            Close the literal data packet - this is equivalent to calling Close()
-            on the stream returned by the Open() method.
-            </summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.OpenPgp.PgpMarker">
-            <remarks>
-            A PGP marker packet - in general these should be ignored other than where
-            the idea is to preserve the original input stream.
-            </remarks>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.OpenPgp.PgpObjectFactory">
-            <remarks>
-            General class for reading a PGP object stream.
-            <p>
-            Note: if this class finds a PgpPublicKey or a PgpSecretKey it
-            will create a PgpPublicKeyRing, or a PgpSecretKeyRing for each
-            key found. If all you are trying to do is read a key ring file use
-            either PgpPublicKeyRingBundle or PgpSecretKeyRingBundle.</p>
-            </remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpObjectFactory.NextPgpObject">
-            <summary>Return the next object in the stream, or null if the end is reached.</summary>
-            <exception cref="T:System.IO.IOException">On a parse error</exception>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpObjectFactory.AllPgpObjects">
-            <summary>
-            Return all available objects in a list.
-            </summary>
-            <returns>An <c>IList</c> containing all objects from this factory, in order.</returns>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.OpenPgp.PgpOnePassSignature">
-            <remarks>A one pass signature object.</remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpOnePassSignature.InitVerify(Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKey)">
-            <summary>Initialise the signature object for verification.</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpOnePassSignature.Verify(Org.BouncyCastle.Bcpg.OpenPgp.PgpSignature)">
-            <summary>Verify the calculated signature against the passed in PgpSignature.</summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.OpenPgp.PgpOnePassSignatureList">
-            <remarks>Holder for a list of PgpOnePassSignature objects.</remarks>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.OpenPgp.PgpPbeEncryptedData">
-            <remarks>A password based encryption object.</remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpPbeEncryptedData.GetInputStream">
-            <summary>Return the raw input stream for the data stream.</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpPbeEncryptedData.GetDataStream(System.Char[])">
-            <summary>Return the decrypted input stream, using the passed in passphrase.</summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.OpenPgp.PgpPrivateKey">
-            <remarks>General class to contain a private key for use with other OpenPGP objects.</remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpPrivateKey.#ctor(Org.BouncyCastle.Crypto.AsymmetricKeyParameter,System.Int64)">
-            <summary>
-            Create a PgpPrivateKey from a regular private key and the ID of its
-            associated public key.
-            </summary>
-            <param name="privateKey">Private key to use.</param>
-            <param name="keyId">ID of the corresponding public key.</param>
-        </member>
-        <member name="P:Org.BouncyCastle.Bcpg.OpenPgp.PgpPrivateKey.KeyId">
-            <summary>The keyId associated with the contained private key.</summary>
-        </member>
-        <member name="P:Org.BouncyCastle.Bcpg.OpenPgp.PgpPrivateKey.Key">
-            <summary>The contained private key.</summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKey">
-            <remarks>General class to handle a PGP public key object.</remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKey.#ctor(Org.BouncyCastle.Bcpg.PublicKeyAlgorithmTag,Org.BouncyCastle.Crypto.AsymmetricKeyParameter,System.DateTime)">
-            <summary>
-            Create a PgpPublicKey from the passed in lightweight one.
-            </summary>
-            <remarks>
-            Note: the time passed in affects the value of the key's keyId, so you probably only want
-            to do this once for a lightweight key, or make sure you keep track of the time you used.
-            </remarks>
-            <param name="algorithm">Asymmetric algorithm type representing the public key.</param>
-            <param name="pubKey">Actual public key to associate.</param>
-            <param name="time">Date of creation.</param>
-            <exception cref="T:System.ArgumentException">If <c>pubKey</c> is not public.</exception>
-            <exception cref="T:Org.BouncyCastle.Bcpg.OpenPgp.PgpException">On key creation problem.</exception>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKey.#ctor(Org.BouncyCastle.Bcpg.PublicKeyPacket,Org.BouncyCastle.Bcpg.TrustPacket,System.Collections.IList)">
-            <summary>Constructor for a sub-key.</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKey.#ctor(Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKey)">
-            <summary>Copy constructor.</summary>
-            <param name="pubKey">The public key to copy.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKey.GetTrustData">
-            <summary>Return the trust data associated with the public key, if present.</summary>
-            <returns>A byte array with trust data, null otherwise.</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKey.GetValidSeconds">
-            <summary>The number of valid seconds from creation time - zero means no expiry.</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKey.GetFingerprint">
-            <summary>The fingerprint of the key</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKey.GetKey">
-            <summary>The public key contained in the object.</summary>
-            <returns>A lightweight public key.</returns>
-            <exception cref="T:Org.BouncyCastle.Bcpg.OpenPgp.PgpException">If the key algorithm is not recognised.</exception>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKey.GetUserIds">
-            <summary>Allows enumeration of any user IDs associated with the key.</summary>
-            <returns>An <c>IEnumerable</c> of <c>string</c> objects.</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKey.GetUserAttributes">
-            <summary>Allows enumeration of any user attribute vectors associated with the key.</summary>
-            <returns>An <c>IEnumerable</c> of <c>PgpUserAttributeSubpacketVector</c> objects.</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKey.GetSignaturesForId(System.String)">
-            <summary>Allows enumeration of any signatures associated with the passed in id.</summary>
-            <param name="id">The ID to be matched.</param>
-            <returns>An <c>IEnumerable</c> of <c>PgpSignature</c> objects.</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKey.GetSignaturesForUserAttribute(Org.BouncyCastle.Bcpg.OpenPgp.PgpUserAttributeSubpacketVector)">
-            <summary>Allows enumeration of signatures associated with the passed in user attributes.</summary>
-            <param name="userAttributes">The vector of user attributes to be matched.</param>
-            <returns>An <c>IEnumerable</c> of <c>PgpSignature</c> objects.</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKey.GetSignaturesOfType(System.Int32)">
-            <summary>Allows enumeration of signatures of the passed in type that are on this key.</summary>
-            <param name="signatureType">The type of the signature to be returned.</param>
-            <returns>An <c>IEnumerable</c> of <c>PgpSignature</c> objects.</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKey.GetSignatures">
-            <summary>Allows enumeration of all signatures/certifications associated with this key.</summary>
-            <returns>An <c>IEnumerable</c> with all signatures/certifications.</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKey.IsRevoked">
-            <summary>Check whether this (sub)key has a revocation signature on it.</summary>
-            <returns>True, if this (sub)key has been revoked.</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKey.AddCertification(Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKey,System.String,Org.BouncyCastle.Bcpg.OpenPgp.PgpSignature)">
-            <summary>Add a certification for an id to the given public key.</summary>
-            <param name="key">The key the certification is to be added to.</param>
-            <param name="id">The ID the certification is associated with.</param>
-            <param name="certification">The new certification.</param>
-            <returns>The re-certified key.</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKey.AddCertification(Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKey,Org.BouncyCastle.Bcpg.OpenPgp.PgpUserAttributeSubpacketVector,Org.BouncyCastle.Bcpg.OpenPgp.PgpSignature)">
-            <summary>Add a certification for the given UserAttributeSubpackets to the given public key.</summary>
-            <param name="key">The key the certification is to be added to.</param>
-            <param name="userAttributes">The attributes the certification is associated with.</param>
-            <param name="certification">The new certification.</param>
-            <returns>The re-certified key.</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKey.RemoveCertification(Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKey,Org.BouncyCastle.Bcpg.OpenPgp.PgpUserAttributeSubpacketVector)">
-            <summary>
-            Remove any certifications associated with a user attribute subpacket on a key.
-            </summary>
-            <param name="key">The key the certifications are to be removed from.</param>
-            <param name="userAttributes">The attributes to be removed.</param>
-            <returns>
-            The re-certified key, or null if the user attribute subpacket was not found on the key.
-            </returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKey.RemoveCertification(Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKey,System.String)">
-            <summary>Remove any certifications associated with a given ID on a key.</summary>
-            <param name="key">The key the certifications are to be removed from.</param>
-            <param name="id">The ID that is to be removed.</param>
-            <returns>The re-certified key, or null if the ID was not found on the key.</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKey.RemoveCertification(Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKey,System.String,Org.BouncyCastle.Bcpg.OpenPgp.PgpSignature)">
-            <summary>Remove a certification associated with a given ID on a key.</summary>
-            <param name="key">The key the certifications are to be removed from.</param>
-            <param name="id">The ID that the certfication is to be removed from.</param>
-            <param name="certification">The certfication to be removed.</param>
-            <returns>The re-certified key, or null if the certification was not found.</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKey.RemoveCertification(Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKey,Org.BouncyCastle.Bcpg.OpenPgp.PgpUserAttributeSubpacketVector,Org.BouncyCastle.Bcpg.OpenPgp.PgpSignature)">
-            <summary>Remove a certification associated with a given user attributes on a key.</summary>
-            <param name="key">The key the certifications are to be removed from.</param>
-            <param name="userAttributes">The user attributes that the certfication is to be removed from.</param>
-            <param name="certification">The certification to be removed.</param>
-            <returns>The re-certified key, or null if the certification was not found.</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKey.AddCertification(Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKey,Org.BouncyCastle.Bcpg.OpenPgp.PgpSignature)">
-            <summary>Add a revocation or some other key certification to a key.</summary>
-            <param name="key">The key the revocation is to be added to.</param>
-            <param name="certification">The key signature to be added.</param>
-            <returns>The new changed public key object.</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKey.RemoveCertification(Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKey,Org.BouncyCastle.Bcpg.OpenPgp.PgpSignature)">
-            <summary>Remove a certification from the key.</summary>
-            <param name="key">The key the certifications are to be removed from.</param>
-            <param name="certification">The certfication to be removed.</param>
-            <returns>The modified key, null if the certification was not found.</returns>
-        </member>
-        <member name="P:Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKey.Version">
-            <summary>The version of this key.</summary>
-        </member>
-        <member name="P:Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKey.CreationTime">
-            <summary>The creation time of this key.</summary>
-        </member>
-        <member name="P:Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKey.ValidDays">
-            <summary>The number of valid days from creation time - zero means no expiry.</summary>
-        </member>
-        <member name="P:Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKey.KeyId">
-            <summary>The keyId associated with the public key.</summary>
-        </member>
-        <member name="P:Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKey.IsEncryptionKey">
-            <summary>
-            Check if this key has an algorithm type that makes it suitable to use for encryption.
-            </summary>
-            <remarks>
-            Note: with version 4 keys KeyFlags subpackets should also be considered when present for
-            determining the preferred use of the key.
-            </remarks>
-            <returns>
-            <c>true</c> if this key algorithm is suitable for encryption.
-            </returns>
-        </member>
-        <member name="P:Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKey.IsMasterKey">
-            <summary>True, if this is a master key.</summary>
-        </member>
-        <member name="P:Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKey.Algorithm">
-            <summary>The algorithm code associated with the public key.</summary>
-        </member>
-        <member name="P:Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKey.BitStrength">
-            <summary>The strength of the key in bits.</summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKeyEncryptedData">
-            <remarks>A public key encrypted data object.</remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKeyEncryptedData.GetSymmetricAlgorithm(Org.BouncyCastle.Bcpg.OpenPgp.PgpPrivateKey)">
-            <summary>
-            Return the algorithm code for the symmetric algorithm used to encrypt the data.
-            </summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKeyEncryptedData.GetDataStream(Org.BouncyCastle.Bcpg.OpenPgp.PgpPrivateKey)">
-            <summary>Return the decrypted data stream for the packet.</summary>
-        </member>
-        <member name="P:Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKeyEncryptedData.KeyId">
-            <summary>The key ID for the key used to encrypt the data.</summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKeyRing">
-            <remarks>
-            Class to hold a single master public key and its subkeys.
-            <p>
-            Often PGP keyring files consist of multiple master keys, if you are trying to process
-            or construct one of these you should use the <c>PgpPublicKeyRingBundle</c> class.
-            </p>
-            </remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKeyRing.GetPublicKey">
-            <summary>Return the first public key in the ring.</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKeyRing.GetPublicKey(System.Int64)">
-            <summary>Return the public key referred to by the passed in key ID if it is present.</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKeyRing.GetPublicKeys">
-            <summary>Allows enumeration of all the public keys.</summary>
-            <returns>An <c>IEnumerable</c> of <c>PgpPublicKey</c> objects.</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKeyRing.InsertPublicKey(Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKeyRing,Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKey)">
-            <summary>
-            Returns a new key ring with the public key passed in either added or
-            replacing an existing one.
-            </summary>
-            <param name="pubRing">The public key ring to be modified.</param>
-            <param name="pubKey">The public key to be inserted.</param>
-            <returns>A new <c>PgpPublicKeyRing</c></returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKeyRing.RemovePublicKey(Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKeyRing,Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKey)">
-            <summary>Returns a new key ring with the public key passed in removed from the key ring.</summary>
-            <param name="pubRing">The public key ring to be modified.</param>
-            <param name="pubKey">The public key to be removed.</param>
-            <returns>A new <c>PgpPublicKeyRing</c>, or null if pubKey is not found.</returns>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKeyRingBundle">
-            <remarks>
-            Often a PGP key ring file is made up of a succession of master/sub-key key rings.
-            If you want to read an entire public key file in one hit this is the class for you.
-            </remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKeyRingBundle.#ctor(System.IO.Stream)">
-            <summary>Build a PgpPublicKeyRingBundle from the passed in input stream.</summary>
-            <param name="inputStream">Input stream containing data.</param>
-            <exception cref="T:System.IO.IOException">If a problem parsing the stream occurs.</exception>
-            <exception cref="T:Org.BouncyCastle.Bcpg.OpenPgp.PgpException">If an object is encountered which isn't a PgpPublicKeyRing.</exception>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKeyRingBundle.GetKeyRings">
-            <summary>Allow enumeration of the public key rings making up this collection.</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKeyRingBundle.GetKeyRings(System.String)">
-            <summary>Allow enumeration of the key rings associated with the passed in userId.</summary>
-            <param name="userId">The user ID to be matched.</param>
-            <returns>An <c>IEnumerable</c> of key rings which matched (possibly none).</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKeyRingBundle.GetKeyRings(System.String,System.Boolean)">
-            <summary>Allow enumeration of the key rings associated with the passed in userId.</summary>
-            <param name="userId">The user ID to be matched.</param>
-            <param name="matchPartial">If true, userId need only be a substring of an actual ID string to match.</param>
-            <returns>An <c>IEnumerable</c> of key rings which matched (possibly none).</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKeyRingBundle.GetKeyRings(System.String,System.Boolean,System.Boolean)">
-            <summary>Allow enumeration of the key rings associated with the passed in userId.</summary>
-            <param name="userId">The user ID to be matched.</param>
-            <param name="matchPartial">If true, userId need only be a substring of an actual ID string to match.</param>
-            <param name="ignoreCase">If true, case is ignored in user ID comparisons.</param>
-            <returns>An <c>IEnumerable</c> of key rings which matched (possibly none).</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKeyRingBundle.GetPublicKey(System.Int64)">
-            <summary>Return the PGP public key associated with the given key id.</summary>
-            <param name="keyId">The ID of the public key to return.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKeyRingBundle.GetPublicKeyRing(System.Int64)">
-            <summary>Return the public key ring which contains the key referred to by keyId</summary>
-            <param name="keyId">key ID to match against</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKeyRingBundle.Contains(System.Int64)">
-            <summary>
-            Return true if a key matching the passed in key ID is present, false otherwise.
-            </summary>
-            <param name="keyID">key ID to look for.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKeyRingBundle.AddPublicKeyRing(Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKeyRingBundle,Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKeyRing)">
-            <summary>
-            Return a new bundle containing the contents of the passed in bundle and
-            the passed in public key ring.
-            </summary>
-            <param name="bundle">The <c>PgpPublicKeyRingBundle</c> the key ring is to be added to.</param>
-            <param name="publicKeyRing">The key ring to be added.</param>
-            <returns>A new <c>PgpPublicKeyRingBundle</c> merging the current one with the passed in key ring.</returns>
-            <exception cref="T:System.ArgumentException">If the keyId for the passed in key ring is already present.</exception>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKeyRingBundle.RemovePublicKeyRing(Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKeyRingBundle,Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKeyRing)">
-            <summary>
-            Return a new bundle containing the contents of the passed in bundle with
-            the passed in public key ring removed.
-            </summary>
-            <param name="bundle">The <c>PgpPublicKeyRingBundle</c> the key ring is to be removed from.</param>
-            <param name="publicKeyRing">The key ring to be removed.</param>
-            <returns>A new <c>PgpPublicKeyRingBundle</c> not containing the passed in key ring.</returns>
-            <exception cref="T:System.ArgumentException">If the keyId for the passed in key ring is not present.</exception>
-        </member>
-        <member name="P:Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKeyRingBundle.Count">
-            <summary>Return the number of key rings in this collection.</summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.OpenPgp.PgpSecretKey">
-            <remarks>General class to handle a PGP secret key object.</remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpSecretKey.ExtractPrivateKey(System.Char[])">
-            <summary>Extract a <c>PgpPrivateKey</c> from this secret key's encrypted contents.</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpSecretKey.CopyWithNewPassword(Org.BouncyCastle.Bcpg.OpenPgp.PgpSecretKey,System.Char[],System.Char[],Org.BouncyCastle.Bcpg.SymmetricKeyAlgorithmTag,Org.BouncyCastle.Security.SecureRandom)">
-            <summary>
-            Return a copy of the passed in secret key, encrypted using a new password
-            and the passed in algorithm.
-            </summary>
-            <param name="key">The PgpSecretKey to be copied.</param>
-            <param name="oldPassPhrase">The current password for the key.</param>
-            <param name="newPassPhrase">The new password for the key.</param>
-            <param name="newEncAlgorithm">The algorithm to be used for the encryption.</param>
-            <param name="rand">Source of randomness.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpSecretKey.ReplacePublicKey(Org.BouncyCastle.Bcpg.OpenPgp.PgpSecretKey,Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKey)">
-            <summary>Replace the passed the public key on the passed in secret key.</summary>
-            <param name="secretKey">Secret key to change.</param>
-            <param name="publicKey">New public key.</param>
-            <returns>A new secret key.</returns>
-            <exception cref="T:System.ArgumentException">If KeyId's do not match.</exception>
-        </member>
-        <member name="P:Org.BouncyCastle.Bcpg.OpenPgp.PgpSecretKey.IsSigningKey">
-            <summary>
-            Check if this key has an algorithm type that makes it suitable to use for signing.
-            </summary>
-            <remarks>
-            Note: with version 4 keys KeyFlags subpackets should also be considered when present for
-            determining the preferred use of the key.
-            </remarks>
-            <returns>
-            <c>true</c> if this key algorithm is suitable for use with signing.
-            </returns>
-        </member>
-        <member name="P:Org.BouncyCastle.Bcpg.OpenPgp.PgpSecretKey.IsMasterKey">
-            <summary>True, if this is a master key.</summary>
-        </member>
-        <member name="P:Org.BouncyCastle.Bcpg.OpenPgp.PgpSecretKey.KeyEncryptionAlgorithm">
-            <summary>The algorithm the key is encrypted with.</summary>
-        </member>
-        <member name="P:Org.BouncyCastle.Bcpg.OpenPgp.PgpSecretKey.KeyId">
-            <summary>The key ID of the public key associated with this key.</summary>
-        </member>
-        <member name="P:Org.BouncyCastle.Bcpg.OpenPgp.PgpSecretKey.PublicKey">
-            <summary>The public key associated with this key.</summary>
-        </member>
-        <member name="P:Org.BouncyCastle.Bcpg.OpenPgp.PgpSecretKey.UserIds">
-            <summary>Allows enumeration of any user IDs associated with the key.</summary>
-            <returns>An <c>IEnumerable</c> of <c>string</c> objects.</returns>
-        </member>
-        <member name="P:Org.BouncyCastle.Bcpg.OpenPgp.PgpSecretKey.UserAttributes">
-            <summary>Allows enumeration of any user attribute vectors associated with the key.</summary>
-            <returns>An <c>IEnumerable</c> of <c>string</c> objects.</returns>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.OpenPgp.PgpSecretKeyRing">
-            <remarks>
-            Class to hold a single master secret key and its subkeys.
-            <p>
-            Often PGP keyring files consist of multiple master keys, if you are trying to process
-            or construct one of these you should use the <c>PgpSecretKeyRingBundle</c> class.
-            </p>
-            </remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpSecretKeyRing.GetPublicKey">
-            <summary>Return the public key for the master key.</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpSecretKeyRing.GetSecretKey">
-            <summary>Return the master private key.</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpSecretKeyRing.GetSecretKeys">
-            <summary>Allows enumeration of the secret keys.</summary>
-            <returns>An <c>IEnumerable</c> of <c>PgpSecretKey</c> objects.</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpSecretKeyRing.GetExtraPublicKeys">
-            <summary>
-            Return an iterator of the public keys in the secret key ring that
-            have no matching private key. At the moment only personal certificate data
-            appears in this fashion.
-            </summary>
-            <returns>An <c>IEnumerable</c> of unattached, or extra, public keys.</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpSecretKeyRing.ReplacePublicKeys(Org.BouncyCastle.Bcpg.OpenPgp.PgpSecretKeyRing,Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKeyRing)">
-            <summary>
-            Replace the public key set on the secret ring with the corresponding key off the public ring.
-            </summary>
-            <param name="secretRing">Secret ring to be changed.</param>
-            <param name="publicRing">Public ring containing the new public key set.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpSecretKeyRing.CopyWithNewPassword(Org.BouncyCastle.Bcpg.OpenPgp.PgpSecretKeyRing,System.Char[],System.Char[],Org.BouncyCastle.Bcpg.SymmetricKeyAlgorithmTag,Org.BouncyCastle.Security.SecureRandom)">
-            <summary>
-            Return a copy of the passed in secret key ring, with the master key and sub keys encrypted
-            using a new password and the passed in algorithm.
-            </summary>
-            <param name="ring">The <c>PgpSecretKeyRing</c> to be copied.</param>
-            <param name="oldPassPhrase">The current password for key.</param>
-            <param name="newPassPhrase">The new password for the key.</param>
-            <param name="newEncAlgorithm">The algorithm to be used for the encryption.</param>
-            <param name="rand">Source of randomness.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpSecretKeyRing.InsertSecretKey(Org.BouncyCastle.Bcpg.OpenPgp.PgpSecretKeyRing,Org.BouncyCastle.Bcpg.OpenPgp.PgpSecretKey)">
-            <summary>
-            Returns a new key ring with the secret key passed in either added or
-            replacing an existing one with the same key ID.
-            </summary>
-            <param name="secRing">The secret key ring to be modified.</param>
-            <param name="secKey">The secret key to be inserted.</param>
-            <returns>A new <c>PgpSecretKeyRing</c></returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpSecretKeyRing.RemoveSecretKey(Org.BouncyCastle.Bcpg.OpenPgp.PgpSecretKeyRing,Org.BouncyCastle.Bcpg.OpenPgp.PgpSecretKey)">
-            <summary>Returns a new key ring with the secret key passed in removed from the key ring.</summary>
-            <param name="secRing">The secret key ring to be modified.</param>
-            <param name="secKey">The secret key to be removed.</param>
-            <returns>A new <c>PgpSecretKeyRing</c>, or null if secKey is not found.</returns>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.OpenPgp.PgpSecretKeyRingBundle">
-            <remarks>
-            Often a PGP key ring file is made up of a succession of master/sub-key key rings.
-            If you want to read an entire secret key file in one hit this is the class for you.
-            </remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpSecretKeyRingBundle.#ctor(System.IO.Stream)">
-            <summary>Build a PgpSecretKeyRingBundle from the passed in input stream.</summary>
-            <param name="inputStream">Input stream containing data.</param>
-            <exception cref="T:System.IO.IOException">If a problem parsing the stream occurs.</exception>
-            <exception cref="T:Org.BouncyCastle.Bcpg.OpenPgp.PgpException">If an object is encountered which isn't a PgpSecretKeyRing.</exception>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpSecretKeyRingBundle.GetKeyRings">
-            <summary>Allow enumeration of the secret key rings making up this collection.</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpSecretKeyRingBundle.GetKeyRings(System.String)">
-            <summary>Allow enumeration of the key rings associated with the passed in userId.</summary>
-            <param name="userId">The user ID to be matched.</param>
-            <returns>An <c>IEnumerable</c> of key rings which matched (possibly none).</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpSecretKeyRingBundle.GetKeyRings(System.String,System.Boolean)">
-            <summary>Allow enumeration of the key rings associated with the passed in userId.</summary>
-            <param name="userId">The user ID to be matched.</param>
-            <param name="matchPartial">If true, userId need only be a substring of an actual ID string to match.</param>
-            <returns>An <c>IEnumerable</c> of key rings which matched (possibly none).</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpSecretKeyRingBundle.GetKeyRings(System.String,System.Boolean,System.Boolean)">
-            <summary>Allow enumeration of the key rings associated with the passed in userId.</summary>
-            <param name="userId">The user ID to be matched.</param>
-            <param name="matchPartial">If true, userId need only be a substring of an actual ID string to match.</param>
-            <param name="ignoreCase">If true, case is ignored in user ID comparisons.</param>
-            <returns>An <c>IEnumerable</c> of key rings which matched (possibly none).</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpSecretKeyRingBundle.GetSecretKey(System.Int64)">
-            <summary>Return the PGP secret key associated with the given key id.</summary>
-            <param name="keyId">The ID of the secret key to return.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpSecretKeyRingBundle.GetSecretKeyRing(System.Int64)">
-            <summary>Return the secret key ring which contains the key referred to by keyId</summary>
-            <param name="keyId">The ID of the secret key</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpSecretKeyRingBundle.Contains(System.Int64)">
-            <summary>
-            Return true if a key matching the passed in key ID is present, false otherwise.
-            </summary>
-            <param name="keyID">key ID to look for.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpSecretKeyRingBundle.AddSecretKeyRing(Org.BouncyCastle.Bcpg.OpenPgp.PgpSecretKeyRingBundle,Org.BouncyCastle.Bcpg.OpenPgp.PgpSecretKeyRing)">
-            <summary>
-            Return a new bundle containing the contents of the passed in bundle and
-            the passed in secret key ring.
-            </summary>
-            <param name="bundle">The <c>PgpSecretKeyRingBundle</c> the key ring is to be added to.</param>
-            <param name="secretKeyRing">The key ring to be added.</param>
-            <returns>A new <c>PgpSecretKeyRingBundle</c> merging the current one with the passed in key ring.</returns>
-            <exception cref="T:System.ArgumentException">If the keyId for the passed in key ring is already present.</exception>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpSecretKeyRingBundle.RemoveSecretKeyRing(Org.BouncyCastle.Bcpg.OpenPgp.PgpSecretKeyRingBundle,Org.BouncyCastle.Bcpg.OpenPgp.PgpSecretKeyRing)">
-            <summary>
-            Return a new bundle containing the contents of the passed in bundle with
-            the passed in secret key ring removed.
-            </summary>
-            <param name="bundle">The <c>PgpSecretKeyRingBundle</c> the key ring is to be removed from.</param>
-            <param name="secretKeyRing">The key ring to be removed.</param>
-            <returns>A new <c>PgpSecretKeyRingBundle</c> not containing the passed in key ring.</returns>
-            <exception cref="T:System.ArgumentException">If the keyId for the passed in key ring is not present.</exception>
-        </member>
-        <member name="P:Org.BouncyCastle.Bcpg.OpenPgp.PgpSecretKeyRingBundle.Count">
-            <summary>Return the number of rings in this collection.</summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.OpenPgp.PgpSignature">
-            <remarks>A PGP signature object.</remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpSignature.VerifyCertification(Org.BouncyCastle.Bcpg.OpenPgp.PgpUserAttributeSubpacketVector,Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKey)">
-            <summary>
-            Verify the signature as certifying the passed in public key as associated
-            with the passed in user attributes.
-            </summary>
-            <param name="userAttributes">User attributes the key was stored under.</param>
-            <param name="key">The key to be verified.</param>
-            <returns>True, if the signature matches, false otherwise.</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpSignature.VerifyCertification(System.String,Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKey)">
-            <summary>
-            Verify the signature as certifying the passed in public key as associated
-            with the passed in ID.
-            </summary>
-            <param name="id">ID the key was stored under.</param>
-            <param name="key">The key to be verified.</param>
-            <returns>True, if the signature matches, false otherwise.</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpSignature.VerifyCertification(Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKey,Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKey)">
-            <summary>Verify a certification for the passed in key against the passed in master key.</summary>
-            <param name="masterKey">The key we are verifying against.</param>
-            <param name="pubKey">The key we are verifying.</param>
-            <returns>True, if the certification is valid, false otherwise.</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpSignature.VerifyCertification(Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKey)">
-            <summary>Verify a key certification, such as revocation, for the passed in key.</summary>
-            <param name="pubKey">The key we are checking.</param>
-            <returns>True, if the certification is valid, false otherwise.</returns>
-        </member>
-        <member name="P:Org.BouncyCastle.Bcpg.OpenPgp.PgpSignature.Version">
-            <summary>The OpenPGP version number for this signature.</summary>
-        </member>
-        <member name="P:Org.BouncyCastle.Bcpg.OpenPgp.PgpSignature.KeyAlgorithm">
-            <summary>The key algorithm associated with this signature.</summary>
-        </member>
-        <member name="P:Org.BouncyCastle.Bcpg.OpenPgp.PgpSignature.HashAlgorithm">
-            <summary>The hash algorithm associated with this signature.</summary>
-        </member>
-        <member name="P:Org.BouncyCastle.Bcpg.OpenPgp.PgpSignature.KeyId">
-            <summary>The ID of the key that created the signature.</summary>
-        </member>
-        <member name="P:Org.BouncyCastle.Bcpg.OpenPgp.PgpSignature.CreationTime">
-            <summary>The creation time of this signature.</summary>
-        </member>
-        <member name="P:Org.BouncyCastle.Bcpg.OpenPgp.PgpSignature.HasSubpackets">
-            <summary>
-            Return true if the signature has either hashed or unhashed subpackets.
-            </summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.OpenPgp.PgpSignatureGenerator">
-            <remarks>Generator for PGP signatures.</remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpSignatureGenerator.#ctor(Org.BouncyCastle.Bcpg.PublicKeyAlgorithmTag,Org.BouncyCastle.Bcpg.HashAlgorithmTag)">
-            <summary>Create a generator for the passed in keyAlgorithm and hashAlgorithm codes.</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpSignatureGenerator.InitSign(System.Int32,Org.BouncyCastle.Bcpg.OpenPgp.PgpPrivateKey)">
-            <summary>Initialise the generator for signing.</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpSignatureGenerator.InitSign(System.Int32,Org.BouncyCastle.Bcpg.OpenPgp.PgpPrivateKey,Org.BouncyCastle.Security.SecureRandom)">
-            <summary>Initialise the generator for signing.</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpSignatureGenerator.GenerateOnePassVersion(System.Boolean)">
-            <summary>Return the one pass header associated with the current signature.</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpSignatureGenerator.Generate">
-            <summary>Return a signature object containing the current signature state.</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpSignatureGenerator.GenerateCertification(System.String,Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKey)">
-            <summary>Generate a certification for the passed in ID and key.</summary>
-            <param name="id">The ID we are certifying against the public key.</param>
-            <param name="pubKey">The key we are certifying against the ID.</param>
-            <returns>The certification.</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpSignatureGenerator.GenerateCertification(Org.BouncyCastle.Bcpg.OpenPgp.PgpUserAttributeSubpacketVector,Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKey)">
-            <summary>Generate a certification for the passed in userAttributes.</summary>
-            <param name="userAttributes">The ID we are certifying against the public key.</param>
-            <param name="pubKey">The key we are certifying against the ID.</param>
-            <returns>The certification.</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpSignatureGenerator.GenerateCertification(Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKey,Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKey)">
-            <summary>Generate a certification for the passed in key against the passed in master key.</summary>
-            <param name="masterKey">The key we are certifying against.</param>
-            <param name="pubKey">The key we are certifying.</param>
-            <returns>The certification.</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpSignatureGenerator.GenerateCertification(Org.BouncyCastle.Bcpg.OpenPgp.PgpPublicKey)">
-            <summary>Generate a certification, such as a revocation, for the passed in key.</summary>
-            <param name="pubKey">The key we are certifying.</param>
-            <returns>The certification.</returns>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.OpenPgp.PgpSignatureList">
-            <remarks>A list of PGP signatures - normally in the signature block after literal data.</remarks>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.OpenPgp.PgpSignatureSubpacketGenerator">
-            <remarks>Generator for signature subpackets.</remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpSignatureSubpacketGenerator.SetTrust(System.Boolean,System.Int32,System.Int32)">
-            <summary>
-            Add a TrustSignature packet to the signature. The values for depth and trust are largely
-            installation dependent but there are some guidelines in RFC 4880 - 5.2.3.13.
-            </summary>
-            <param name="isCritical">true if the packet is critical.</param>
-            <param name="depth">depth level.</param>
-            <param name="trustAmount">trust amount.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpSignatureSubpacketGenerator.SetKeyExpirationTime(System.Boolean,System.Int64)">
-            <summary>
-            Set the number of seconds a key is valid for after the time of its creation.
-            A value of zero means the key never expires.
-            </summary>
-            <param name="isCritical">True, if should be treated as critical, false otherwise.</param>
-            <param name="seconds">The number of seconds the key is valid, or zero if no expiry.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpSignatureSubpacketGenerator.SetSignatureExpirationTime(System.Boolean,System.Int64)">
-            <summary>
-            Set the number of seconds a signature is valid for after the time of its creation.
-            A value of zero means the signature never expires.
-            </summary>
-            <param name="isCritical">True, if should be treated as critical, false otherwise.</param>
-            <param name="seconds">The number of seconds the signature is valid, or zero if no expiry.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpSignatureSubpacketGenerator.SetSignatureCreationTime(System.Boolean,System.DateTime)">
-            <summary>
-            Set the creation time for the signature.
-            <p>
-            Note: this overrides the generation of a creation time when the signature
-            is generated.</p>
-            </summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpSignatureSubpacketGenerator.SetRevocationReason(System.Boolean,Org.BouncyCastle.Bcpg.RevocationReasonTag,System.String)">
-            <summary>
-            Sets revocation reason sub packet
-            </summary>	    
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpSignatureSubpacketGenerator.SetRevocationKey(System.Boolean,Org.BouncyCastle.Bcpg.PublicKeyAlgorithmTag,System.Byte[])">
-            <summary>
-            Sets revocation key sub packet
-            </summary>	
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpSignatureSubpacketGenerator.SetIssuerKeyID(System.Boolean,System.Int64)">
-            <summary>
-            Sets issuer key sub packet
-            </summary>	
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.OpenPgp.PgpSignatureSubpacketVector">
-            <remarks>Container for a list of signature subpackets.</remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpSignatureSubpacketVector.HasSubpacket(Org.BouncyCastle.Bcpg.SignatureSubpacketTag)">
-             Return true if a particular subpacket type exists.
-            
-             @param type type to look for.
-             @return true if present, false otherwise.
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpSignatureSubpacketVector.GetSubpackets(Org.BouncyCastle.Bcpg.SignatureSubpacketTag)">
-            Return all signature subpackets of the passed in type.
-            @param type subpacket type code
-            @return an array of zero or more matching subpackets.
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpSignatureSubpacketVector.GetSignatureExpirationTime">
-            <summary>
-            Return the number of seconds a signature is valid for after its creation date.
-            A value of zero means the signature never expires.
-            </summary>
-            <returns>Seconds a signature is valid for.</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpSignatureSubpacketVector.GetKeyExpirationTime">
-            <summary>
-            Return the number of seconds a key is valid for after its creation date.
-            A value of zero means the key never expires.
-            </summary>
-            <returns>Seconds a signature is valid for.</returns>
-        </member>
-        <member name="P:Org.BouncyCastle.Bcpg.OpenPgp.PgpSignatureSubpacketVector.Count">
-            <summary>Return the number of packets this vector contains.</summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.OpenPgp.PgpUserAttributeSubpacketVector">
-            <remarks>Container for a list of user attribute subpackets.</remarks>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.OpenPgp.PgpUtilities">
-            <remarks>Basic utility class.</remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpUtilities.GetDecoderStream(System.IO.Stream)">
-            <summary>
-            Return either an ArmoredInputStream or a BcpgInputStream based on whether
-            the initial characters of the stream are binary PGP encodings or not.
-            </summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Bcpg.OpenPgp.PgpV3SignatureGenerator">
-            <remarks>Generator for old style PGP V3 Signatures.</remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpV3SignatureGenerator.#ctor(Org.BouncyCastle.Bcpg.PublicKeyAlgorithmTag,Org.BouncyCastle.Bcpg.HashAlgorithmTag)">
-            <summary>Create a generator for the passed in keyAlgorithm and hashAlgorithm codes.</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpV3SignatureGenerator.InitSign(System.Int32,Org.BouncyCastle.Bcpg.OpenPgp.PgpPrivateKey)">
-            <summary>Initialise the generator for signing.</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpV3SignatureGenerator.InitSign(System.Int32,Org.BouncyCastle.Bcpg.OpenPgp.PgpPrivateKey,Org.BouncyCastle.Security.SecureRandom)">
-            <summary>Initialise the generator for signing.</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpV3SignatureGenerator.GenerateOnePassVersion(System.Boolean)">
-            <summary>Return the one pass header associated with the current signature.</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Bcpg.OpenPgp.PgpV3SignatureGenerator.Generate">
-            <summary>Return a V3 signature object containing the current signature state.</summary>
-        </member>
-        <member name="T:Org.BouncyCastle.OpenSsl.MiscPemGenerator">
-            PEM generator for the original set of PEM objects used in Open SSL.
-        </member>
-        <member name="M:Org.BouncyCastle.Utilities.IO.Pem.PemObjectGenerator.Generate">
-            <returns>
-            A <see cref="T:Org.BouncyCastle.Utilities.IO.Pem.PemObject"/>
-            </returns>
-            <exception cref="T:Org.BouncyCastle.Utilities.IO.Pem.PemGenerationException"></exception>
-        </member>
-        <member name="T:Org.BouncyCastle.OpenSsl.PemReader">
-            Class for reading OpenSSL PEM encoded streams containing 
-            X509 certificates, PKCS8 encoded keys and PKCS7 objects.
-            <p>
-            In the case of PKCS7 objects the reader will return a CMS ContentInfo object. Keys and
-            Certificates will be returned using the appropriate java.security type.</p>
-        </member>
-        <member name="M:Org.BouncyCastle.Utilities.IO.Pem.PemReader.ReadPemObject">
-            <returns>
-            A <see cref="T:Org.BouncyCastle.Utilities.IO.Pem.PemObject"/>
-            </returns>
-            <exception cref="T:System.IO.IOException"></exception>
-        </member>
-        <member name="M:Org.BouncyCastle.OpenSsl.PemReader.#ctor(System.IO.TextReader)">
-             Create a new PemReader
-            
-             @param reader the Reader
-        </member>
-        <member name="M:Org.BouncyCastle.OpenSsl.PemReader.#ctor(System.IO.TextReader,Org.BouncyCastle.OpenSsl.IPasswordFinder)">
-             Create a new PemReader with a password finder
-            
-             @param reader the Reader
-             @param pFinder the password finder
-        </member>
-        <member name="M:Org.BouncyCastle.OpenSsl.PemReader.ReadCertificate(Org.BouncyCastle.Utilities.IO.Pem.PemObject)">
-             Reads in a X509Certificate.
-            
-             @return the X509Certificate
-             @throws IOException if an I/O error occured
-        </member>
-        <member name="M:Org.BouncyCastle.OpenSsl.PemReader.ReadCrl(Org.BouncyCastle.Utilities.IO.Pem.PemObject)">
-             Reads in a X509CRL.
-            
-             @return the X509Certificate
-             @throws IOException if an I/O error occured
-        </member>
-        <member name="M:Org.BouncyCastle.OpenSsl.PemReader.ReadCertificateRequest(Org.BouncyCastle.Utilities.IO.Pem.PemObject)">
-             Reads in a PKCS10 certification request.
-            
-             @return the certificate request.
-             @throws IOException if an I/O error occured
-        </member>
-        <member name="M:Org.BouncyCastle.OpenSsl.PemReader.ReadAttributeCertificate(Org.BouncyCastle.Utilities.IO.Pem.PemObject)">
-             Reads in a X509 Attribute Certificate.
-            
-             @return the X509 Attribute Certificate
-             @throws IOException if an I/O error occured
-        </member>
-        <member name="M:Org.BouncyCastle.OpenSsl.PemReader.ReadPkcs7(Org.BouncyCastle.Utilities.IO.Pem.PemObject)">
-             Reads in a PKCS7 object. This returns a ContentInfo object suitable for use with the CMS
-             API.
-            
-             @return the X509Certificate
-             @throws IOException if an I/O error occured
-        </member>
-        <member name="M:Org.BouncyCastle.OpenSsl.PemReader.ReadPrivateKey(Org.BouncyCastle.Utilities.IO.Pem.PemObject)">
-            Read a Key Pair
-        </member>
-        <member name="T:Org.BouncyCastle.OpenSsl.PemWriter">
-            <remarks>General purpose writer for OpenSSL PEM objects.</remarks>
-        </member>
-        <member name="T:Org.BouncyCastle.Utilities.IO.Pem.PemWriter">
-            A generic PEM writer, based on RFC 1421
-        </member>
-        <member name="M:Org.BouncyCastle.Utilities.IO.Pem.PemWriter.#ctor(System.IO.TextWriter)">
-             Base constructor.
-            
-             @param out output stream to use.
-        </member>
-        <member name="M:Org.BouncyCastle.Utilities.IO.Pem.PemWriter.GetOutputSize(Org.BouncyCastle.Utilities.IO.Pem.PemObject)">
-             Return the number of bytes or characters required to contain the
-             passed in object if it is PEM encoded.
-            
-             @param obj pem object to be output
-             @return an estimate of the number of bytes
-        </member>
-        <member name="M:Org.BouncyCastle.OpenSsl.PemWriter.#ctor(System.IO.TextWriter)">
-            <param name="writer">The TextWriter object to write the output to.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.OpenSsl.Pkcs8Generator.#ctor(Org.BouncyCastle.Crypto.AsymmetricKeyParameter)">
-             Constructor for an unencrypted private key PEM object.
-            
-             @param key private key to be encoded.
-        </member>
-        <member name="M:Org.BouncyCastle.OpenSsl.Pkcs8Generator.#ctor(Org.BouncyCastle.Crypto.AsymmetricKeyParameter,System.String)">
-             Constructor for an encrypted private key PEM object.
-            
-             @param key       private key to be encoded
-             @param algorithm encryption algorithm to use
-             @param provider  provider to use
-             @throws NoSuchAlgorithmException if algorithm/mode cannot be found
-        </member>
-        <member name="T:Org.BouncyCastle.Pkcs.Pkcs10CertificationRequest">
-             <remarks>
-             A class for verifying and creating Pkcs10 Certification requests.
-             </remarks>
-             <code>
-             CertificationRequest ::= Sequence {
-               certificationRequestInfo  CertificationRequestInfo,
-               signatureAlgorithm        AlgorithmIdentifier{{ SignatureAlgorithms }},
-               signature                 BIT STRING
-             }
-            
-             CertificationRequestInfo ::= Sequence {
-               version             Integer { v1(0) } (v1,...),
-               subject             Name,
-               subjectPKInfo   SubjectPublicKeyInfo{{ PKInfoAlgorithms }},
-               attributes          [0] Attributes{{ CRIAttributes }}
-              }
-            
-              Attributes { ATTRIBUTE:IOSet } ::= Set OF Attr{{ IOSet }}
-            
-              Attr { ATTRIBUTE:IOSet } ::= Sequence {
-                type    ATTRIBUTE.&amp;id({IOSet}),
-                values  Set SIZE(1..MAX) OF ATTRIBUTE.&amp;Type({IOSet}{\@type})
-              }
-             </code>
-             see <a href="http://www.rsasecurity.com/rsalabs/node.asp?id=2132"/>
-        </member>
-        <member name="M:Org.BouncyCastle.Pkcs.Pkcs10CertificationRequest.#ctor(System.String,Org.BouncyCastle.Asn1.X509.X509Name,Org.BouncyCastle.Crypto.AsymmetricKeyParameter,Org.BouncyCastle.Asn1.Asn1Set,Org.BouncyCastle.Crypto.AsymmetricKeyParameter)">
-             <summary>
-             Instantiate a Pkcs10CertificationRequest object with the necessary credentials.
-             </summary>
-            <param name="signatureAlgorithm">Name of Sig Alg.</param>
-             <param name="subject">X509Name of subject eg OU="My unit." O="My Organisatioin" C="au" </param>
-             <param name="publicKey">Public Key to be included in cert reqest.</param>
-             <param name="attributes">ASN1Set of Attributes.</param>
-             <param name="signingKey">Matching Private key for nominated (above) public key to be used to sign the request.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Pkcs.Pkcs10CertificationRequest.GetPublicKey">
-            <summary>
-            Get the public key.
-            </summary>
-            <returns>The public key.</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Pkcs.Pkcs10CertificationRequest.Verify">
-            <summary>
-            Verify Pkcs10 Cert Request is valid.
-            </summary>
-            <returns>true = valid.</returns>
-        </member>
-        <member name="T:Org.BouncyCastle.Pkcs.Pkcs10CertificationRequestDelaySigned">
-             <remarks>
-             A class for creating and verifying Pkcs10 Certification requests (this is an extension on <see cref="T:Org.BouncyCastle.Pkcs.Pkcs10CertificationRequest"/>).
-             The requests are made using delay signing. This is useful for situations where
-             the private key is in another environment and not directly accessible (e.g. HSM)
-             So the first step creates the request, then the signing is done outside this
-             object and the signature is then used to complete the request.
-             </remarks>
-             <code>
-             CertificationRequest ::= Sequence {
-               certificationRequestInfo  CertificationRequestInfo,
-               signatureAlgorithm        AlgorithmIdentifier{{ SignatureAlgorithms }},
-               signature                 BIT STRING
-             }
-            
-             CertificationRequestInfo ::= Sequence {
-               version             Integer { v1(0) } (v1,...),
-               subject             Name,
-               subjectPKInfo   SubjectPublicKeyInfo{{ PKInfoAlgorithms }},
-               attributes          [0] Attributes{{ CRIAttributes }}
-              }
-            
-              Attributes { ATTRIBUTE:IOSet } ::= Set OF Attr{{ IOSet }}
-            
-              Attr { ATTRIBUTE:IOSet } ::= Sequence {
-                type    ATTRIBUTE.&amp;id({IOSet}),
-                values  Set SIZE(1..MAX) OF ATTRIBUTE.&amp;Type({IOSet}{\@type})
-              }
-             </code>
-             see <a href="http://www.rsasecurity.com/rsalabs/node.asp?id=2132"/>
-        </member>
-        <member name="M:Org.BouncyCastle.Pkcs.Pkcs10CertificationRequestDelaySigned.#ctor(System.String,Org.BouncyCastle.Asn1.X509.X509Name,Org.BouncyCastle.Crypto.AsymmetricKeyParameter,Org.BouncyCastle.Asn1.Asn1Set)">
-            <summary>
-            Instantiate a Pkcs10CertificationRequest object with the necessary credentials.
-            </summary>
-            <param name="signatureAlgorithm">Name of Sig Alg.</param>
-            <param name="subject">X509Name of subject eg OU="My unit." O="My Organisatioin" C="au" </param>
-            <param name="publicKey">Public Key to be included in cert reqest.</param>
-            <param name="attributes">ASN1Set of Attributes.</param>
-            <remarks>
-            After the object is constructed use the <see cref="M:Org.BouncyCastle.Pkcs.Pkcs10CertificationRequestDelaySigned.GetDataToSign"/> and finally the
-            SignRequest methods to finalize the request.
-            </remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Pkcs.Pkcs12Store.GetCertificate(System.String)">
-            simply return the cert entry for the private key
-        </member>
-        <member name="T:Org.BouncyCastle.Pkcs.Pkcs12Utilities">
-            Utility class for reencoding PKCS#12 files to definite length.
-        </member>
-        <member name="M:Org.BouncyCastle.Pkcs.Pkcs12Utilities.ConvertToDefiniteLength(System.Byte[])">
-             Just re-encode the outer layer of the PKCS#12 file to definite length encoding.
-            
-             @param berPKCS12File - original PKCS#12 file
-             @return a byte array representing the DER encoding of the PFX structure
-             @throws IOException
-        </member>
-        <member name="M:Org.BouncyCastle.Pkcs.Pkcs12Utilities.ConvertToDefiniteLength(System.Byte[],System.Char[])">
-             Re-encode the PKCS#12 structure to definite length encoding at the inner layer
-             as well, recomputing the MAC accordingly.
-            
-             @param berPKCS12File - original PKCS12 file.
-             @param provider - provider to use for MAC calculation.
-             @return a byte array representing the DER encoding of the PFX structure.
-             @throws IOException on parsing, encoding errors.
-        </member>
-        <member name="P:Org.BouncyCastle.Pkix.CertStatus.RevocationDate">
-            <summary>
-            Returns the revocationDate.
-            </summary>
-        </member>
-        <member name="P:Org.BouncyCastle.Pkix.CertStatus.Status">
-            <summary>
-            Returns the certStatus.
-            </summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixAttrCertChecker.GetSupportedExtensions">
-            Returns an immutable <code>Set</code> of X.509 attribute certificate
-            extensions that this <code>PkixAttrCertChecker</code> supports or
-            <code>null</code> if no extensions are supported.
-            <p>
-            Each element of the set is a <code>String</code> representing the
-            Object Identifier (OID) of the X.509 extension that is supported.
-            </p>
-            <p>
-            All X.509 attribute certificate extensions that a
-            <code>PkixAttrCertChecker</code> might possibly be able to process
-            should be included in the set.
-            </p>
-            
-            @return an immutable <code>Set</code> of X.509 extension OIDs (in
-                    <code>String</code> format) supported by this
-                    <code>PkixAttrCertChecker</code>, or <code>null</code> if no
-                    extensions are supported
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixAttrCertChecker.Check(Org.BouncyCastle.X509.IX509AttributeCertificate,Org.BouncyCastle.Pkix.PkixCertPath,Org.BouncyCastle.Pkix.PkixCertPath,System.Collections.ICollection)">
-            Performs checks on the specified attribute certificate. Every handled
-            extension is rmeoved from the <code>unresolvedCritExts</code>
-            collection.
-            
-            @param attrCert The attribute certificate to be checked.
-            @param certPath The certificate path which belongs to the attribute
-                       certificate issuer public key certificate.
-            @param holderCertPath The certificate path which belongs to the holder
-                       certificate.
-            @param unresolvedCritExts a <code>Collection</code> of OID strings
-                       representing the current set of unresolved critical extensions
-            @throws CertPathValidatorException if the specified attribute certificate
-                        does not pass the check.
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixAttrCertChecker.Clone">
-            Returns a clone of this object.
-            
-            @return a copy of this <code>PkixAttrCertChecker</code>
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixAttrCertPathBuilder.Build(Org.BouncyCastle.Pkix.PkixBuilderParameters)">
-             Build and validate a CertPath using the given parameter.
-            
-             @param params PKIXBuilderParameters object containing all information to
-                        build the CertPath
-        </member>
-        <member name="T:Org.BouncyCastle.Pkix.PkixAttrCertPathValidator">
-            CertPathValidatorSpi implementation for X.509 Attribute Certificates la RFC 3281.
-            
-            @see org.bouncycastle.x509.ExtendedPkixParameters
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixAttrCertPathValidator.Validate(Org.BouncyCastle.Pkix.PkixCertPath,Org.BouncyCastle.Pkix.PkixParameters)">
-            Validates an attribute certificate with the given certificate path.
-            
-            <p>
-            <code>params</code> must be an instance of
-            <code>ExtendedPkixParameters</code>.
-            </p><p>
-            The target constraints in the <code>params</code> must be an
-            <code>X509AttrCertStoreSelector</code> with at least the attribute
-            certificate criterion set. Obey that also target informations may be
-            necessary to correctly validate this attribute certificate.
-            </p><p>
-            The attribute certificate issuer must be added to the trusted attribute
-            issuers with {@link ExtendedPkixParameters#setTrustedACIssuers(Set)}.
-            </p>
-            @param certPath The certificate path which belongs to the attribute
-                       certificate issuer public key certificate.
-            @param params The PKIX parameters.
-            @return A <code>PKIXCertPathValidatorResult</code> of the result of
-                    validating the <code>certPath</code>.
-            @throws InvalidAlgorithmParameterException if <code>params</code> is
-                        inappropriate for this validator.
-            @throws CertPathValidatorException if the verification fails.
-        </member>
-        <member name="T:Org.BouncyCastle.Pkix.PkixBuilderParameters">
-            <summary>
-            Summary description for PkixBuilderParameters.
-            </summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Pkix.PkixParameters">
-            <summary>
-            Summary description for PkixParameters.
-            </summary>
-        </member>
-        <member name="F:Org.BouncyCastle.Pkix.PkixParameters.PkixValidityModel">
-            This is the default PKIX validity model. Actually there are two variants
-            of this: The PKIX model and the modified PKIX model. The PKIX model
-            verifies that all involved certificates must have been valid at the
-            current time. The modified PKIX model verifies that all involved
-            certificates were valid at the signing time. Both are indirectly choosen
-            with the {@link PKIXParameters#setDate(java.util.Date)} method, so this
-            methods sets the Date when <em>all</em> certificates must have been
-            valid.
-        </member>
-        <member name="F:Org.BouncyCastle.Pkix.PkixParameters.ChainValidityModel">
-            This model uses the following validity model. Each certificate must have
-            been valid at the moment where is was used. That means the end
-            certificate must have been valid at the time the signature was done. The
-            CA certificate which signed the end certificate must have been valid,
-            when the end certificate was signed. The CA (or Root CA) certificate must
-            have been valid, when the CA certificate was signed and so on. So the
-            {@link PKIXParameters#setDate(java.util.Date)} method sets the time, when
-            the <em>end certificate</em> must have been valid. <p/> It is used e.g.
-            in the German signature law.
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixParameters.#ctor(Org.BouncyCastle.Utilities.Collections.ISet)">
-             Creates an instance of PKIXParameters with the specified Set of
-             most-trusted CAs. Each element of the set is a TrustAnchor.<br />
-             <br />
-             Note that the Set is copied to protect against subsequent modifications.
-            
-             @param trustAnchors
-                        a Set of TrustAnchors
-            
-             @exception InvalidAlgorithmParameterException
-                            if the specified Set is empty
-                            <code>(trustAnchors.isEmpty() == true)</code>
-             @exception NullPointerException
-                            if the specified Set is <code>null</code>
-             @exception ClassCastException
-                            if any of the elements in the Set are not of type
-                            <code>java.security.cert.TrustAnchor</code>
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixParameters.GetTargetCertConstraints">
-             Returns the required constraints on the target certificate. The
-             constraints are returned as an instance of CertSelector. If
-             <code>null</code>, no constraints are defined.<br />
-             <br />
-             Note that the CertSelector returned is cloned to protect against
-             subsequent modifications.
-            
-             @return a CertSelector specifying the constraints on the target
-                     certificate (or <code>null</code>)
-            
-             @see #setTargetCertConstraints(CertSelector)
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixParameters.SetTargetCertConstraints(Org.BouncyCastle.X509.Store.IX509Selector)">
-             Sets the required constraints on the target certificate. The constraints
-             are specified as an instance of CertSelector. If null, no constraints are
-             defined.<br />
-             <br />
-             Note that the CertSelector specified is cloned to protect against
-             subsequent modifications.
-            
-             @param selector
-                        a CertSelector specifying the constraints on the target
-                        certificate (or <code>null</code>)
-            
-             @see #getTargetCertConstraints()
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixParameters.GetInitialPolicies">
-             Returns an immutable Set of initial policy identifiers (OID strings),
-             indicating that any one of these policies would be acceptable to the
-             certificate user for the purposes of certification path processing. The
-             default return value is an empty <code>Set</code>, which is
-             interpreted as meaning that any policy would be acceptable.
-            
-             @return an immutable <code>Set</code> of initial policy OIDs in String
-                     format, or an empty <code>Set</code> (implying any policy is
-                     acceptable). Never returns <code>null</code>.
-            
-             @see #setInitialPolicies(java.util.Set)
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixParameters.SetInitialPolicies(Org.BouncyCastle.Utilities.Collections.ISet)">
-             Sets the <code>Set</code> of initial policy identifiers (OID strings),
-             indicating that any one of these policies would be acceptable to the
-             certificate user for the purposes of certification path processing. By
-             default, any policy is acceptable (i.e. all policies), so a user that
-             wants to allow any policy as acceptable does not need to call this
-             method, or can call it with an empty <code>Set</code> (or
-             <code>null</code>).<br />
-             <br />
-             Note that the Set is copied to protect against subsequent modifications.<br />
-             <br />
-            
-             @param initialPolicies
-                        a Set of initial policy OIDs in String format (or
-                        <code>null</code>)
-            
-             @exception ClassCastException
-                            if any of the elements in the set are not of type String
-            
-             @see #getInitialPolicies()
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixParameters.SetCertPathCheckers(System.Collections.IList)">
-             Sets a <code>List</code> of additional certification path checkers. If
-             the specified List contains an object that is not a PKIXCertPathChecker,
-             it is ignored.<br />
-             <br />
-             Each <code>PKIXCertPathChecker</code> specified implements additional
-             checks on a certificate. Typically, these are checks to process and
-             verify private extensions contained in certificates. Each
-             <code>PKIXCertPathChecker</code> should be instantiated with any
-             initialization parameters needed to execute the check.<br />
-             <br />
-             This method allows sophisticated applications to extend a PKIX
-             <code>CertPathValidator</code> or <code>CertPathBuilder</code>. Each
-             of the specified PKIXCertPathCheckers will be called, in turn, by a PKIX
-             <code>CertPathValidator</code> or <code>CertPathBuilder</code> for
-             each certificate processed or validated.<br />
-             <br />
-             Regardless of whether these additional PKIXCertPathCheckers are set, a
-             PKIX <code>CertPathValidator</code> or <code>CertPathBuilder</code>
-             must perform all of the required PKIX checks on each certificate. The one
-             exception to this rule is if the RevocationEnabled flag is set to false
-             (see the {@link #setRevocationEnabled(boolean) setRevocationEnabled}
-             method).<br />
-             <br />
-             Note that the List supplied here is copied and each PKIXCertPathChecker
-             in the list is cloned to protect against subsequent modifications.
-            
-             @param checkers
-                        a List of PKIXCertPathCheckers. May be null, in which case no
-                        additional checkers will be used.
-             @exception ClassCastException
-                            if any of the elements in the list are not of type
-                            <code>java.security.cert.PKIXCertPathChecker</code>
-             @see #getCertPathCheckers()
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixParameters.GetCertPathCheckers">
-             Returns the List of certification path checkers. Each PKIXCertPathChecker
-             in the returned IList is cloned to protect against subsequent modifications.
-            
-             @return an immutable List of PKIXCertPathCheckers (may be empty, but not
-                     <code>null</code>)
-            
-             @see #setCertPathCheckers(java.util.List)
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixParameters.AddCertPathChecker(Org.BouncyCastle.Pkix.PkixCertPathChecker)">
-             Adds a <code>PKIXCertPathChecker</code> to the list of certification
-             path checkers. See the {@link #setCertPathCheckers setCertPathCheckers}
-             method for more details.
-             <p>
-             Note that the <code>PKIXCertPathChecker</code> is cloned to protect
-             against subsequent modifications.</p>
-            
-             @param checker a <code>PKIXCertPathChecker</code> to add to the list of
-             checks. If <code>null</code>, the checker is ignored (not added to list).
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixParameters.SetParams(Org.BouncyCastle.Pkix.PkixParameters)">
-             Method to support <code>Clone()</code> under J2ME.
-             <code>super.Clone()</code> does not exist and fields are not copied.
-            
-             @param params Parameters to set. If this are
-                        <code>ExtendedPkixParameters</code> they are copied to.
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixParameters.SetStores(System.Collections.IList)">
-             Sets the Bouncy Castle Stores for finding CRLs, certificates, attribute
-             certificates or cross certificates.
-             <p>
-             The <code>IList</code> is cloned.
-             </p>
-            
-             @param stores A list of stores to use.
-             @see #getStores
-             @throws ClassCastException if an element of <code>stores</code> is not
-                         a {@link Store}.
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixParameters.AddStore(Org.BouncyCastle.X509.Store.IX509Store)">
-             Adds a Bouncy Castle {@link Store} to find CRLs, certificates, attribute
-             certificates or cross certificates.
-             <p>
-             This method should be used to add local stores, like collection based
-             X.509 stores, if available. Local stores should be considered first,
-             before trying to use additional (remote) locations, because they do not
-             need possible additional network traffic.
-             </p><p>
-             If <code>store</code> is <code>null</code> it is ignored.
-             </p>
-            
-             @param store The store to add.
-             @see #getStores
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixParameters.AddAdditionalStore(Org.BouncyCastle.X509.Store.IX509Store)">
-             Adds an additional Bouncy Castle {@link Store} to find CRLs, certificates,
-             attribute certificates or cross certificates.
-             <p>
-             You should not use this method. This method is used for adding additional
-             X.509 stores, which are used to add (remote) locations, e.g. LDAP, found
-             during X.509 object processing, e.g. in certificates or CRLs. This method
-             is used in PKIX certification path processing.
-             </p><p>
-             If <code>store</code> is <code>null</code> it is ignored.
-             </p>
-            
-             @param store The store to add.
-             @see #getStores()
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixParameters.GetAdditionalStores">
-             Returns an <code>IList</code> of additional Bouncy Castle
-             <code>Store</code>s used for finding CRLs, certificates, attribute
-             certificates or cross certificates.
-            
-             @return an immutable <code>IList</code> of additional Bouncy Castle
-                     <code>Store</code>s. Never <code>null</code>.
-            
-             @see #addAddionalStore(Store)
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixParameters.GetStores">
-             Returns an <code>IList</code> of Bouncy Castle
-             <code>Store</code>s used for finding CRLs, certificates, attribute
-             certificates or cross certificates.
-            
-             @return an immutable <code>IList</code> of Bouncy Castle
-                     <code>Store</code>s. Never <code>null</code>.
-            
-             @see #setStores(IList)
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixParameters.SetAdditionalLocationsEnabled(System.Boolean)">
-             Sets if additional {@link X509Store}s for locations like LDAP found in
-             certificates or CRLs should be used.
-            
-             @param enabled <code>true</code> if additional stores are used.
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixParameters.GetTargetConstraints">
-             Returns the required constraints on the target certificate or attribute
-             certificate. The constraints are returned as an instance of
-             <code>IX509Selector</code>. If <code>null</code>, no constraints are
-             defined.
-            
-             <p>
-             The target certificate in a PKIX path may be a certificate or an
-             attribute certificate.
-             </p><p>
-             Note that the <code>IX509Selector</code> returned is cloned to protect
-             against subsequent modifications.
-             </p>
-             @return a <code>IX509Selector</code> specifying the constraints on the
-                     target certificate or attribute certificate (or <code>null</code>)
-             @see #setTargetConstraints
-             @see X509CertStoreSelector
-             @see X509AttributeCertStoreSelector
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixParameters.SetTargetConstraints(Org.BouncyCastle.X509.Store.IX509Selector)">
-             Sets the required constraints on the target certificate or attribute
-             certificate. The constraints are specified as an instance of
-             <code>IX509Selector</code>. If <code>null</code>, no constraints are
-             defined.
-             <p>
-             The target certificate in a PKIX path may be a certificate or an
-             attribute certificate.
-             </p><p>
-             Note that the <code>IX509Selector</code> specified is cloned to protect
-             against subsequent modifications.
-             </p>
-            
-             @param selector a <code>IX509Selector</code> specifying the constraints on
-                        the target certificate or attribute certificate (or
-                        <code>null</code>)
-             @see #getTargetConstraints
-             @see X509CertStoreSelector
-             @see X509AttributeCertStoreSelector
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixParameters.GetTrustedACIssuers">
-             Returns the trusted attribute certificate issuers. If attribute
-             certificates is verified the trusted AC issuers must be set.
-             <p>
-             The returned <code>ISet</code> consists of <code>TrustAnchor</code>s.
-             </p><p>
-             The returned <code>ISet</code> is immutable. Never <code>null</code>
-             </p>
-            
-             @return Returns an immutable set of the trusted AC issuers.
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixParameters.SetTrustedACIssuers(Org.BouncyCastle.Utilities.Collections.ISet)">
-             Sets the trusted attribute certificate issuers. If attribute certificates
-             is verified the trusted AC issuers must be set.
-             <p>
-             The <code>trustedACIssuers</code> must be a <code>ISet</code> of
-             <code>TrustAnchor</code>
-             </p><p>
-             The given set is cloned.
-             </p>
-            
-             @param trustedACIssuers The trusted AC issuers to set. Is never
-                        <code>null</code>.
-             @throws ClassCastException if an element of <code>stores</code> is not
-                         a <code>TrustAnchor</code>.
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixParameters.GetNecessaryACAttributes">
-             Returns the neccessary attributes which must be contained in an attribute
-             certificate.
-             <p>
-             The returned <code>ISet</code> is immutable and contains
-             <code>String</code>s with the OIDs.
-             </p>
-            
-             @return Returns the necessary AC attributes.
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixParameters.SetNecessaryACAttributes(Org.BouncyCastle.Utilities.Collections.ISet)">
-             Sets the neccessary which must be contained in an attribute certificate.
-             <p>
-             The <code>ISet</code> must contain <code>String</code>s with the
-             OIDs.
-             </p><p>
-             The set is cloned.
-             </p>
-            
-             @param necessaryACAttributes The necessary AC attributes to set.
-             @throws ClassCastException if an element of
-                         <code>necessaryACAttributes</code> is not a
-                         <code>String</code>.
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixParameters.GetProhibitedACAttributes">
-             Returns the attribute certificates which are not allowed.
-             <p>
-             The returned <code>ISet</code> is immutable and contains
-             <code>String</code>s with the OIDs.
-             </p>
-            
-             @return Returns the prohibited AC attributes. Is never <code>null</code>.
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixParameters.SetProhibitedACAttributes(Org.BouncyCastle.Utilities.Collections.ISet)">
-             Sets the attribute certificates which are not allowed.
-             <p>
-             The <code>ISet</code> must contain <code>String</code>s with the
-             OIDs.
-             </p><p>
-             The set is cloned.
-             </p>
-            
-             @param prohibitedACAttributes The prohibited AC attributes to set.
-             @throws ClassCastException if an element of
-                         <code>prohibitedACAttributes</code> is not a
-                         <code>String</code>.
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixParameters.GetAttrCertCheckers">
-             Returns the attribute certificate checker. The returned set contains
-             {@link PKIXAttrCertChecker}s and is immutable.
-            
-             @return Returns the attribute certificate checker. Is never
-                     <code>null</code>.
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixParameters.SetAttrCertCheckers(Org.BouncyCastle.Utilities.Collections.ISet)">
-             Sets the attribute certificate checkers.
-             <p>
-             All elements in the <code>ISet</code> must a {@link PKIXAttrCertChecker}.
-             </p>
-             <p>
-             The given set is cloned.
-             </p>
-            
-             @param attrCertCheckers The attribute certificate checkers to set. Is
-                        never <code>null</code>.
-             @throws ClassCastException if an element of <code>attrCertCheckers</code>
-                         is not a <code>PKIXAttrCertChecker</code>.
-        </member>
-        <member name="P:Org.BouncyCastle.Pkix.PkixParameters.IsUseDeltasEnabled">
-            Whether delta CRLs should be used for checking the revocation status.
-            Defaults to <code>false</code>.
-        </member>
-        <member name="P:Org.BouncyCastle.Pkix.PkixParameters.ValidityModel">
-            The validity model.
-            @see #CHAIN_VALIDITY_MODEL
-            @see #PKIX_VALIDITY_MODEL
-        </member>
-        <member name="P:Org.BouncyCastle.Pkix.PkixParameters.IsAdditionalLocationsEnabled">
-             Returns if additional {@link X509Store}s for locations like LDAP found
-             in certificates or CRLs should be used.
-            
-             @return Returns <code>true</code> if additional stores are used.
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixBuilderParameters.GetInstance(Org.BouncyCastle.Pkix.PkixParameters)">
-             Returns an instance of <code>PkixBuilderParameters</code>.
-             <p>
-             This method can be used to get a copy from other
-             <code>PKIXBuilderParameters</code>, <code>PKIXParameters</code>,
-             and <code>ExtendedPKIXParameters</code> instances.
-             </p>
-            
-             @param pkixParams The PKIX parameters to create a copy of.
-             @return An <code>PkixBuilderParameters</code> instance.
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixBuilderParameters.GetExcludedCerts">
-            <summary>
-            Excluded certificates are not used for building a certification path.
-            </summary>
-            <returns>the excluded certificates.</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixBuilderParameters.SetExcludedCerts(Org.BouncyCastle.Utilities.Collections.ISet)">
-            <summary>
-            Sets the excluded certificates which are not used for building a
-            certification path. If the <code>ISet</code> is <code>null</code> an
-            empty set is assumed.
-            </summary>
-            <remarks>
-            The given set is cloned to protect it against subsequent modifications.
-            </remarks>
-            <param name="excludedCerts">The excluded certificates to set.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixBuilderParameters.SetParams(Org.BouncyCastle.Pkix.PkixParameters)">
-            Can alse handle <code>ExtendedPKIXBuilderParameters</code> and
-            <code>PKIXBuilderParameters</code>.
-            
-            @param params Parameters to set.
-            @see org.bouncycastle.x509.ExtendedPKIXParameters#setParams(java.security.cert.PKIXParameters)
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixBuilderParameters.Clone">
-             Makes a copy of this <code>PKIXParameters</code> object. Changes to the
-             copy will not affect the original and vice versa.
-            
-             @return a copy of this <code>PKIXParameters</code> object
-        </member>
-        <member name="T:Org.BouncyCastle.Pkix.PkixCertPath">
-             An immutable sequence of certificates (a certification path).<br />
-             <br />
-             This is an abstract class that defines the methods common to all CertPaths.
-             Subclasses can handle different kinds of certificates (X.509, PGP, etc.).<br />
-             <br />
-             All CertPath objects have a type, a list of Certificates, and one or more
-             supported encodings. Because the CertPath class is immutable, a CertPath
-             cannot change in any externally visible way after being constructed. This
-             stipulation applies to all public fields and methods of this class and any
-             added or overridden by subclasses.<br />
-             <br />
-             The type is a string that identifies the type of Certificates in the
-             certification path. For each certificate cert in a certification path
-             certPath, cert.getType().equals(certPath.getType()) must be true.<br />
-             <br />
-             The list of Certificates is an ordered List of zero or more Certificates.
-             This List and all of the Certificates contained in it must be immutable.<br />
-             <br />
-             Each CertPath object must support one or more encodings so that the object
-             can be translated into a byte array for storage or transmission to other
-             parties. Preferably, these encodings should be well-documented standards
-             (such as PKCS#7). One of the encodings supported by a CertPath is considered
-             the default encoding. This encoding is used if no encoding is explicitly
-             requested (for the {@link #getEncoded()} method, for instance).<br />
-             <br />
-             All CertPath objects are also Serializable. CertPath objects are resolved
-             into an alternate {@link CertPathRep} object during serialization. This
-             allows a CertPath object to be serialized into an equivalent representation
-             regardless of its underlying implementation.<br />
-             <br />
-             CertPath objects can be created with a CertificateFactory or they can be
-             returned by other classes, such as a CertPathBuilder.<br />
-             <br />
-             By convention, X.509 CertPaths (consisting of X509Certificates), are ordered
-             starting with the target certificate and ending with a certificate issued by
-             the trust anchor. That is, the issuer of one certificate is the subject of
-             the following one. The certificate representing the
-             {@link TrustAnchor TrustAnchor} should not be included in the certification
-             path. Unvalidated X.509 CertPaths may not follow these conventions. PKIX
-             CertPathValidators will detect any departure from these conventions that
-             cause the certification path to be invalid and throw a
-             CertPathValidatorException.<br />
-             <br />
-             <strong>Concurrent Access</strong><br />
-             <br />
-             All CertPath objects must be thread-safe. That is, multiple threads may
-             concurrently invoke the methods defined in this class on a single CertPath
-             object (or more than one) with no ill effects. This is also true for the List
-             returned by CertPath.getCertificates.<br />
-             <br />
-             Requiring CertPath objects to be immutable and thread-safe allows them to be
-             passed around to various pieces of code without worrying about coordinating
-             access. Providing this thread-safety is generally not difficult, since the
-             CertPath and List objects in question are immutable.
-            
-             @see CertificateFactory
-             @see CertPathBuilder
-            <summary>
-            CertPath implementation for X.509 certificates.
-            </summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixCertPath.SortCerts(System.Collections.IList)">
-            @param certs
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixCertPath.#ctor(System.Collections.ICollection)">
-             Creates a CertPath of the specified type.
-             This constructor is protected because most users should use
-             a CertificateFactory to create CertPaths.
-             @param type the standard name of the type of Certificatesin this path
-            
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixCertPath.#ctor(System.IO.Stream,System.String)">
-             Creates a CertPath of the specified type.
-             This constructor is protected because most users should use
-             a CertificateFactory to create CertPaths.
-            
-             @param type the standard name of the type of Certificatesin this path
-            
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixCertPath.Equals(System.Object)">
-             Compares this certification path for equality with the specified object.
-             Two CertPaths are equal if and only if their types are equal and their
-             certificate Lists (and by implication the Certificates in those Lists)
-             are equal. A CertPath is never equal to an object that is not a CertPath.<br />
-             <br />
-             This algorithm is implemented by this method. If it is overridden, the
-             behavior specified here must be maintained.
-            
-             @param other
-                        the object to test for equality with this certification path
-            
-             @return true if the specified object is equal to this certification path,
-                     false otherwise
-            
-             @see Object#hashCode() Object.hashCode()
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixCertPath.GetEncoded">
-             Returns the encoded form of this certification path, using
-             the default encoding.
-            
-             @return the encoded bytes
-             @exception CertificateEncodingException if an encoding error occurs
-            
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixCertPath.GetEncoded(System.String)">
-             Returns the encoded form of this certification path, using
-             the specified encoding.
-            
-             @param encoding the name of the encoding to use
-             @return the encoded bytes
-             @exception CertificateEncodingException if an encoding error
-             occurs or the encoding requested is not supported
-            
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixCertPath.ToAsn1Object(Org.BouncyCastle.X509.X509Certificate)">
-             Return a DERObject containing the encoded certificate.
-            
-             @param cert the X509Certificate object to be encoded
-            
-             @return the DERObject
-            
-        </member>
-        <member name="P:Org.BouncyCastle.Pkix.PkixCertPath.Encodings">
-             Returns an iteration of the encodings supported by this
-             certification path, with the default encoding
-             first. Attempts to modify the returned Iterator via its
-             remove method result in an UnsupportedOperationException.
-            
-             @return an Iterator over the names of the supported encodings (as Strings)
-            
-        </member>
-        <member name="P:Org.BouncyCastle.Pkix.PkixCertPath.Certificates">
-            <summary>
-            Returns the list of certificates in this certification
-            path.
-            </summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Pkix.PkixCertPathBuilder">
-             Implements the PKIX CertPathBuilding algorithm for BouncyCastle.
-            
-             @see CertPathBuilderSpi
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixCertPathBuilder.Build(Org.BouncyCastle.Pkix.PkixBuilderParameters)">
-             Build and validate a CertPath using the given parameter.
-            
-             @param params PKIXBuilderParameters object containing all information to
-                        build the CertPath
-        </member>
-        <member name="T:Org.BouncyCastle.Pkix.PkixCertPathBuilderException">
-            <summary>
-            Summary description for PkixCertPathBuilderException.
-            </summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Pkix.PkixCertPathBuilderResult">
-            <summary>
-            Summary description for PkixCertPathBuilderResult.
-            </summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Pkix.PkixCertPathValidatorResult">
-            <summary>
-            Summary description for PkixCertPathValidatorResult.
-            </summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixCertPathChecker.Init(System.Boolean)">
-                     * Initializes the internal state of this <code>PKIXCertPathChecker</code>.
-                     * <p>
-                     * The <code>forward</code> flag specifies the order that certificates
-                     * will be passed to the {@link #check check} method (forward or reverse). A
-                     * <code>PKIXCertPathChecker</code> <b>must</b> support reverse checking
-                     * and <b>may</b> support forward checking.
-            		 * </p>
-                     * 
-                     * @param forward
-                     *            the order that certificates are presented to the
-                     *            <code>check</code> method. If <code>true</code>,
-                     *            certificates are presented from target to most-trusted CA
-                     *            (forward); if <code>false</code>, from most-trusted CA to
-                     *            target (reverse).
-                     * @exception CertPathValidatorException
-                     *                if this <code>PKIXCertPathChecker</code> is unable to
-                     *                check certificates in the specified order; it should never
-                     *                be thrown if the forward flag is false since reverse
-                     *                checking must be supported
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixCertPathChecker.IsForwardCheckingSupported">
-            Indicates if forward checking is supported. Forward checking refers to
-            the ability of the <code>PKIXCertPathChecker</code> to perform its
-            checks when certificates are presented to the <code>check</code> method
-            in the forward direction (from target to most-trusted CA).
-            
-            @return <code>true</code> if forward checking is supported,
-                    <code>false</code> otherwise
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixCertPathChecker.GetSupportedExtensions">
-                     * Returns an immutable <code>Set</code> of X.509 certificate extensions
-                     * that this <code>PKIXCertPathChecker</code> supports (i.e. recognizes,
-                     * is able to process), or <code>null</code> if no extensions are
-                     * supported.
-                     * <p>
-                     * Each element of the set is a <code>String</code> representing the
-                     * Object Identifier (OID) of the X.509 extension that is supported. The OID
-                     * is represented by a set of nonnegative integers separated by periods.
-                     * </p><p>
-                     * All X.509 certificate extensions that a <code>PKIXCertPathChecker</code>
-                     * might possibly be able to process should be included in the set.
-            		 * </p>
-                     * 
-                     * @return an immutable <code>Set</code> of X.509 extension OIDs (in
-                     *         <code>String</code> format) supported by this
-                     *         <code>PKIXCertPathChecker</code>, or <code>null</code> if no
-                     *         extensions are supported
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixCertPathChecker.Check(Org.BouncyCastle.X509.X509Certificate,System.Collections.ICollection)">
-            Performs the check(s) on the specified certificate using its internal
-            state and removes any critical extensions that it processes from the
-            specified collection of OID strings that represent the unresolved
-            critical extensions. The certificates are presented in the order
-            specified by the <code>init</code> method.
-            
-            @param cert
-                       the <code>Certificate</code> to be checked
-            @param unresolvedCritExts
-                       a <code>Collection</code> of OID strings representing the
-                       current set of unresolved critical extensions
-            @exception CertPathValidatorException
-                           if the specified certificate does not pass the check
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixCertPathChecker.Clone">
-            Returns a clone of this object. Calls the <code>Object.clone()</code>
-            method. All subclasses which maintain state must support and override
-            this method, if necessary.
-            
-            @return a copy of this <code>PKIXCertPathChecker</code>
-        </member>
-        <member name="T:Org.BouncyCastle.Pkix.PkixCertPathValidator">
-            The <i>Service Provider Interface</i> (<b>SPI</b>)
-            for the {@link CertPathValidator CertPathValidator} class. All
-            <code>CertPathValidator</code> implementations must include a class (the
-            SPI class) that extends this class (<code>CertPathValidatorSpi</code>)
-            and implements all of its methods. In general, instances of this class
-            should only be accessed through the <code>CertPathValidator</code> class.
-            For details, see the Java Cryptography Architecture.<br />
-            <br />
-            <b>Concurrent Access</b><br />
-            <br />
-            Instances of this class need not be protected against concurrent
-            access from multiple threads. Threads that need to access a single
-            <code>CertPathValidatorSpi</code> instance concurrently should synchronize
-            amongst themselves and provide the necessary locking before calling the
-            wrapping <code>CertPathValidator</code> object.<br />
-            <br />
-            However, implementations of <code>CertPathValidatorSpi</code> may still
-            encounter concurrency issues, since multiple threads each
-            manipulating a different <code>CertPathValidatorSpi</code> instance need not
-            synchronize.
-            <summary>
-            CertPathValidatorSpi implementation for X.509 Certificate validation a la RFC
-            3280.
-            </summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Pkix.PkixCertPathValidatorException">
-             An exception indicating one of a variety of problems encountered when 
-             validating a certification path. <br />
-             <br />
-             A <code>CertPathValidatorException</code> provides support for wrapping
-             exceptions. The {@link #getCause getCause} method returns the throwable, 
-             if any, that caused this exception to be thrown. <br />
-             <br />
-             A <code>CertPathValidatorException</code> may also include the 
-             certification path that was being validated when the exception was thrown 
-             and the index of the certificate in the certification path that caused the 
-             exception to be thrown. Use the {@link #getCertPath getCertPath} and
-             {@link #getIndex getIndex} methods to retrieve this information.<br />
-             <br />
-             <b>Concurrent Access</b><br />
-             <br />
-             Unless otherwise specified, the methods defined in this class are not
-             thread-safe. Multiple threads that need to access a single
-             object concurrently should synchronize amongst themselves and
-             provide the necessary locking. Multiple threads each manipulating
-             separate objects need not synchronize.
-            
-             @see CertPathValidator
-            
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixCertPathValidatorException.#ctor(System.String)">
-            <summary>
-            Creates a <code>PkixCertPathValidatorException</code> with the given detail
-            message. A detail message is a <code>String</code> that describes this
-            particular exception. 
-            </summary>
-            <param name="message">the detail message</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixCertPathValidatorException.#ctor(System.String,System.Exception)">
-            <summary>
-            Creates a <code>PkixCertPathValidatorException</code> with the specified
-            detail message and cause.
-            </summary>
-            <param name="message">the detail message</param>
-            <param name="cause">the cause (which is saved for later retrieval by the
-            {@link #getCause getCause()} method). (A <code>null</code>
-            value is permitted, and indicates that the cause is
-            nonexistent or unknown.)</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixCertPathValidatorException.#ctor(System.String,System.Exception,Org.BouncyCastle.Pkix.PkixCertPath,System.Int32)">
-            <summary>
-            Creates a <code>PkixCertPathValidatorException</code> with the specified
-            detail message, cause, certification path, and index.
-            </summary>
-            <param name="message">the detail message (or <code>null</code> if none)</param>
-            <param name="cause">the cause (or <code>null</code> if none)</param>
-            <param name="certPath">the certification path that was in the process of being
-            validated when the error was encountered</param>
-            <param name="index">the index of the certificate in the certification path that</param>																																																																																   * 
-        </member>
-        <member name="P:Org.BouncyCastle.Pkix.PkixCertPathValidatorException.Message">
-            <summary>
-            Returns the detail message for this <code>CertPathValidatorException</code>.
-            </summary>
-            <returns>the detail message, or <code>null</code> if neither the message nor cause were specified</returns>
-        </member>
-        <member name="P:Org.BouncyCastle.Pkix.PkixCertPathValidatorException.CertPath">
-            Returns the certification path that was being validated when the
-            exception was thrown.
-            
-            @return the <code>CertPath</code> that was being validated when the
-                    exception was thrown (or <code>null</code> if not specified)
-        </member>
-        <member name="P:Org.BouncyCastle.Pkix.PkixCertPathValidatorException.Index">
-            Returns the index of the certificate in the certification path that
-            caused the exception to be thrown. Note that the list of certificates in
-            a <code>CertPath</code> is zero based. If no index has been set, -1 is
-            returned.
-            
-            @return the index that has been set, or -1 if none has been set
-        </member>
-        <member name="T:Org.BouncyCastle.Pkix.PkixCertPathValidatorUtilities">
-            <summary>
-            Summary description for PkixCertPathValidatorUtilities.
-            </summary>
-        </member>
-        <member name="F:Org.BouncyCastle.Pkix.PkixCertPathValidatorUtilities.KEY_CERT_SIGN">
-            <summary>
-            key usage bits
-            </summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixCertPathValidatorUtilities.FindTrustAnchor(Org.BouncyCastle.X509.X509Certificate,Org.BouncyCastle.Utilities.Collections.ISet)">
-            <summary>
-            Search the given Set of TrustAnchor's for one that is the
-            issuer of the given X509 certificate.
-            </summary>
-            <param name="cert">the X509 certificate</param>
-            <param name="trustAnchors">a Set of TrustAnchor's</param>
-            <returns>the <code>TrustAnchor</code> object if found or
-            <code>null</code> if not.
-            </returns>
-            @exception
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixCertPathValidatorUtilities.GetIssuerPrincipal(System.Object)">
-            <summary>
-            Returns the issuer of an attribute certificate or certificate.
-            </summary>
-            <param name="cert">The attribute certificate or certificate.</param>
-            <returns>The issuer as <code>X500Principal</code>.</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixCertPathValidatorUtilities.GetNextWorkingKey(System.Collections.IList,System.Int32)">
-             Return the next working key inheriting DSA parameters if necessary.
-             <p>
-             This methods inherits DSA parameters from the indexed certificate or
-             previous certificates in the certificate chain to the returned
-             <code>PublicKey</code>. The list is searched upwards, meaning the end
-             certificate is at position 0 and previous certificates are following.
-             </p>
-             <p>
-             If the indexed certificate does not contain a DSA key this method simply
-             returns the public key. If the DSA key already contains DSA parameters
-             the key is also only returned.
-             </p>
-            
-             @param certs The certification path.
-             @param index The index of the certificate which contains the public key
-                        which should be extended with DSA parameters.
-             @return The public key of the certificate in list position
-                     <code>index</code> extended with DSA parameters if applicable.
-             @throws Exception if DSA parameters cannot be inherited.
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixCertPathValidatorUtilities.FindCertificates(Org.BouncyCastle.X509.Store.X509CertStoreSelector,System.Collections.IList)">
-            <summary>
-            Return a Collection of all certificates or attribute certificates found
-            in the X509Store's that are matching the certSelect criteriums.
-            </summary>
-            <param name="certSelect">a {@link Selector} object that will be used to select
-            the certificates</param>
-            <param name="certStores">a List containing only X509Store objects. These
-            are used to search for certificates.</param>
-            <returns>a Collection of all found <see cref="T:Org.BouncyCastle.X509.X509Certificate"/> or
-            org.bouncycastle.x509.X509AttributeCertificate objects.
-            May be empty but never <code>null</code>.</returns>
-            <exception cref="T:System.Exception"></exception>
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixCertPathValidatorUtilities.GetCrlIssuersFromDistributionPoint(Org.BouncyCastle.Asn1.X509.DistributionPoint,System.Collections.ICollection,Org.BouncyCastle.X509.Store.X509CrlStoreSelector,Org.BouncyCastle.Pkix.PkixParameters)">
-             Add the CRL issuers from the cRLIssuer field of the distribution point or
-             from the certificate if not given to the issuer criterion of the
-             <code>selector</code>.
-             <p>
-             The <code>issuerPrincipals</code> are a collection with a single
-             <code>X500Principal</code> for <code>X509Certificate</code>s. For
-             {@link X509AttributeCertificate}s the issuer may contain more than one
-             <code>X500Principal</code>.
-             </p>
-            
-             @param dp The distribution point.
-             @param issuerPrincipals The issuers of the certificate or attribute
-                        certificate which contains the distribution point.
-             @param selector The CRL selector.
-             @param pkixParams The PKIX parameters containing the cert stores.
-             @throws Exception if an exception occurs while processing.
-             @throws ClassCastException if <code>issuerPrincipals</code> does not
-             contain only <code>X500Principal</code>s.
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixCertPathValidatorUtilities.GetCompleteCrls(Org.BouncyCastle.Asn1.X509.DistributionPoint,System.Object,System.DateTime,Org.BouncyCastle.Pkix.PkixParameters)">
-             Fetches complete CRLs according to RFC 3280.
-            
-             @param dp The distribution point for which the complete CRL
-             @param cert The <code>X509Certificate</code> or
-                        {@link org.bouncycastle.x509.X509AttributeCertificate} for
-                        which the CRL should be searched.
-             @param currentDate The date for which the delta CRLs must be valid.
-             @param paramsPKIX The extended PKIX parameters.
-             @return A <code>Set</code> of <code>X509CRL</code>s with complete
-                     CRLs.
-             @throws Exception if an exception occurs while picking the CRLs
-                         or no CRLs are found.
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixCertPathValidatorUtilities.GetDeltaCrls(System.DateTime,Org.BouncyCastle.Pkix.PkixParameters,Org.BouncyCastle.X509.X509Crl)">
-             Fetches delta CRLs according to RFC 3280 section 5.2.4.
-            
-             @param currentDate The date for which the delta CRLs must be valid.
-             @param paramsPKIX The extended PKIX parameters.
-             @param completeCRL The complete CRL the delta CRL is for.
-             @return A <code>Set</code> of <code>X509CRL</code>s with delta CRLs.
-             @throws Exception if an exception occurs while picking the delta
-                         CRLs.
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixCertPathValidatorUtilities.FindIssuerCerts(Org.BouncyCastle.X509.X509Certificate,Org.BouncyCastle.Pkix.PkixBuilderParameters)">
-             Find the issuer certificates of a given certificate.
-            
-             @param cert
-                        The certificate for which an issuer should be found.
-             @param pkixParams
-             @return A <code>Collection</code> object containing the issuer
-                     <code>X509Certificate</code>s. Never <code>null</code>.
-            
-             @exception Exception
-                            if an error occurs.
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixCertPathValidatorUtilities.GetExtensionValue(Org.BouncyCastle.X509.IX509Extension,Org.BouncyCastle.Asn1.DerObjectIdentifier)">
-            <summary>
-            Extract the value of the given extension, if it exists.
-            </summary>
-            <param name="ext">The extension object.</param>
-            <param name="oid">The object identifier to obtain.</param>
-            <returns>Asn1Object</returns>
-            <exception cref="T:System.Exception">if the extension cannot be read.</exception>
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixCrlUtilities.FindCrls(Org.BouncyCastle.X509.Store.X509CrlStoreSelector,System.Collections.IList)">
-            <summary>
-            crl checking
-            Return a Collection of all CRLs found in the X509Store's that are
-            matching the crlSelect criteriums.
-            </summary>
-            <param name="crlSelect">a {@link X509CRLStoreSelector} object that will be used
-            to select the CRLs</param>
-            <param name="crlStores">a List containing only {@link org.bouncycastle.x509.X509Store
-            X509Store} objects. These are used to search for CRLs</param>
-            <returns>a Collection of all found {@link X509CRL X509CRL} objects. May be
-            empty but never <code>null</code>.
-            </returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixNameConstraintValidator.IntersectIP(Org.BouncyCastle.Utilities.Collections.ISet,Org.BouncyCastle.Utilities.Collections.ISet)">
-             Returns the intersection of the permitted IP ranges in
-             <code>permitted</code> with <code>ip</code>.
-            
-             @param permitted A <code>Set</code> of permitted IP addresses with
-                              their subnet mask as byte arrays.
-             @param ips       The IP address with its subnet mask.
-             @return The <code>Set</code> of permitted IP ranges intersected with
-                     <code>ip</code>.
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixNameConstraintValidator.UnionIP(Org.BouncyCastle.Utilities.Collections.ISet,System.Byte[])">
-             Returns the union of the excluded IP ranges in <code>excluded</code>
-             with <code>ip</code>.
-            
-             @param excluded A <code>Set</code> of excluded IP addresses with their
-                             subnet mask as byte arrays.
-             @param ip       The IP address with its subnet mask.
-             @return The <code>Set</code> of excluded IP ranges unified with
-                     <code>ip</code> as byte arrays.
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixNameConstraintValidator.UnionIPRange(System.Byte[],System.Byte[])">
-             Calculates the union if two IP ranges.
-            
-             @param ipWithSubmask1 The first IP address with its subnet mask.
-             @param ipWithSubmask2 The second IP address with its subnet mask.
-             @return A <code>Set</code> with the union of both addresses.
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixNameConstraintValidator.IntersectIPRange(System.Byte[],System.Byte[])">
-             Calculates the interesction if two IP ranges.
-            
-             @param ipWithSubmask1 The first IP address with its subnet mask.
-             @param ipWithSubmask2 The second IP address with its subnet mask.
-             @return A <code>Set</code> with the single IP address with its subnet
-                     mask as a byte array or an empty <code>Set</code>.
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixNameConstraintValidator.IpWithSubnetMask(System.Byte[],System.Byte[])">
-             Concatenates the IP address with its subnet mask.
-            
-             @param ip         The IP address.
-             @param subnetMask Its subnet mask.
-             @return The concatenated IP address with its subnet mask.
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixNameConstraintValidator.ExtractIPsAndSubnetMasks(System.Byte[],System.Byte[])">
-             Splits the IP addresses and their subnet mask.
-            
-             @param ipWithSubmask1 The first IP address with the subnet mask.
-             @param ipWithSubmask2 The second IP address with the subnet mask.
-             @return An array with two elements. Each element contains the IP address
-                     and the subnet mask in this order.
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixNameConstraintValidator.MinMaxIPs(System.Byte[],System.Byte[],System.Byte[],System.Byte[])">
-             Based on the two IP addresses and their subnet masks the IP range is
-             computed for each IP address - subnet mask pair and returned as the
-             minimum IP address and the maximum address of the range.
-            
-             @param ip1         The first IP address.
-             @param subnetmask1 The subnet mask of the first IP address.
-             @param ip2         The second IP address.
-             @param subnetmask2 The subnet mask of the second IP address.
-             @return A array with two elements. The first/second element contains the
-                     min and max IP address of the first/second IP address and its
-                     subnet mask.
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixNameConstraintValidator.CheckPermittedIP(Org.BouncyCastle.Utilities.Collections.ISet,System.Byte[])">
-             Checks if the IP <code>ip</code> is included in the permitted ISet
-             <code>permitted</code>.
-            
-             @param permitted A <code>Set</code> of permitted IP addresses with
-                              their subnet mask as byte arrays.
-             @param ip        The IP address.
-             @throws PkixNameConstraintValidatorException
-                      if the IP is not permitted.
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixNameConstraintValidator.checkExcludedIP(Org.BouncyCastle.Utilities.Collections.ISet,System.Byte[])">
-             Checks if the IP <code>ip</code> is included in the excluded ISet
-             <code>excluded</code>.
-            
-             @param excluded A <code>Set</code> of excluded IP addresses with their
-                             subnet mask as byte arrays.
-             @param ip       The IP address.
-             @throws PkixNameConstraintValidatorException
-                      if the IP is excluded.
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixNameConstraintValidator.IsIPConstrained(System.Byte[],System.Byte[])">
-             Checks if the IP address <code>ip</code> is constrained by
-             <code>constraint</code>.
-            
-             @param ip         The IP address.
-             @param constraint The constraint. This is an IP address concatenated with
-                               its subnetmask.
-             @return <code>true</code> if constrained, <code>false</code>
-                     otherwise.
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixNameConstraintValidator.unionEmail(System.String,System.String,Org.BouncyCastle.Utilities.Collections.ISet)">
-             The common part of <code>email1</code> and <code>email2</code> is
-             added to the union <code>union</code>. If <code>email1</code> and
-             <code>email2</code> have nothing in common they are added both.
-            
-             @param email1 Email address constraint 1.
-             @param email2 Email address constraint 2.
-             @param union  The union.
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixNameConstraintValidator.intersectEmail(System.String,System.String,Org.BouncyCastle.Utilities.Collections.ISet)">
-             The most restricting part from <code>email1</code> and
-             <code>email2</code> is added to the intersection <code>intersect</code>.
-            
-             @param email1    Email address constraint 1.
-             @param email2    Email address constraint 2.
-             @param intersect The intersection.
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixNameConstraintValidator.checkPermitted(Org.BouncyCastle.Asn1.X509.GeneralName)">
-             Checks if the given GeneralName is in the permitted ISet.
-            
-             @param name The GeneralName
-             @throws PkixNameConstraintValidatorException
-                      If the <code>name</code>
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixNameConstraintValidator.checkExcluded(Org.BouncyCastle.Asn1.X509.GeneralName)">
-             Check if the given GeneralName is contained in the excluded ISet.
-            
-             @param name The GeneralName.
-             @throws PkixNameConstraintValidatorException
-                      If the <code>name</code> is
-                      excluded.
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixNameConstraintValidator.IntersectPermittedSubtree(Org.BouncyCastle.Asn1.Asn1Sequence)">
-             Updates the permitted ISet of these name constraints with the intersection
-             with the given subtree.
-            
-             @param permitted The permitted subtrees
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixNameConstraintValidator.AddExcludedSubtree(Org.BouncyCastle.Asn1.X509.GeneralSubtree)">
-             Adds a subtree to the excluded ISet of these name constraints.
-            
-             @param subtree A subtree with an excluded GeneralName.
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixNameConstraintValidator.Max(System.Byte[],System.Byte[])">
-             Returns the maximum IP address.
-            
-             @param ip1 The first IP address.
-             @param ip2 The second IP address.
-             @return The maximum IP address.
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixNameConstraintValidator.Min(System.Byte[],System.Byte[])">
-             Returns the minimum IP address.
-            
-             @param ip1 The first IP address.
-             @param ip2 The second IP address.
-             @return The minimum IP address.
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixNameConstraintValidator.CompareTo(System.Byte[],System.Byte[])">
-             Compares IP address <code>ip1</code> with <code>ip2</code>. If ip1
-             is equal to ip2 0 is returned. If ip1 is bigger 1 is returned, -1
-             otherwise.
-            
-             @param ip1 The first IP address.
-             @param ip2 The second IP address.
-             @return 0 if ip1 is equal to ip2, 1 if ip1 is bigger, -1 otherwise.
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixNameConstraintValidator.Or(System.Byte[],System.Byte[])">
-             Returns the logical OR of the IP addresses <code>ip1</code> and
-             <code>ip2</code>.
-            
-             @param ip1 The first IP address.
-             @param ip2 The second IP address.
-             @return The OR of <code>ip1</code> and <code>ip2</code>.
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixNameConstraintValidator.StringifyIP(System.Byte[])">
-             Stringifies an IPv4 or v6 address with subnet mask.
-            
-             @param ip The IP with subnet mask.
-             @return The stringified IP address.
-        </member>
-        <member name="T:Org.BouncyCastle.Pkix.PkixPolicyNode">
-            <summary>
-            Summary description for PkixPolicyNode.
-            </summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.PkixPolicyNode.#ctor(System.Collections.IList,System.Int32,Org.BouncyCastle.Utilities.Collections.ISet,Org.BouncyCastle.Pkix.PkixPolicyNode,Org.BouncyCastle.Utilities.Collections.ISet,System.String,System.Boolean)">
-            Constructors
-        </member>
-        <member name="T:Org.BouncyCastle.Pkix.ReasonsMask">
-            <summary>
-            This class helps to handle CRL revocation reasons mask. Each CRL handles a
-            certain set of revocation reasons.
-            </summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.ReasonsMask.#ctor(System.Int32)">
-            <summary>
-            Constructs are reason mask with the reasons.
-            </summary>
-            <param name="reasons">The reasons.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.ReasonsMask.#ctor">
-            <summary>
-            A reason mask with no reason.
-            </summary>
-        </member>
-        <member name="F:Org.BouncyCastle.Pkix.ReasonsMask.AllReasons">
-            <summary>
-            A mask with all revocation reasons.
-            </summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.ReasonsMask.AddReasons(Org.BouncyCastle.Pkix.ReasonsMask)">
-             Adds all reasons from the reasons mask to this mask.
-            
-             @param mask The reasons mask to add.
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.ReasonsMask.Intersect(Org.BouncyCastle.Pkix.ReasonsMask)">
-            <summary>
-            Intersects this mask with the given reasons mask.
-            </summary>
-            <param name="mask">mask The mask to intersect with.</param>
-            <returns>The intersection of this and teh given mask.</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.ReasonsMask.HasNewReasons(Org.BouncyCastle.Pkix.ReasonsMask)">
-            <summary>
-            Returns <c>true</c> if the passed reasons mask has new reasons.
-            </summary>
-            <param name="mask">The reasons mask which should be tested for new reasons.</param>
-            <returns><c>true</c> if the passed reasons mask has new reasons.</returns>
-        </member>
-        <member name="P:Org.BouncyCastle.Pkix.ReasonsMask.IsAllReasons">
-            <summary>
-            Returns <code>true</code> if this reasons mask contains all possible
-            reasons.
-            </summary>
-            <returns>true if this reasons mask contains all possible reasons.
-            </returns>
-        </member>
-        <member name="P:Org.BouncyCastle.Pkix.ReasonsMask.Reasons">
-            <summary>
-            Returns the reasons in this mask.
-            </summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.Rfc3280CertPathUtilities.ProcessCrlB2(Org.BouncyCastle.Asn1.X509.DistributionPoint,System.Object,Org.BouncyCastle.X509.X509Crl)">
-             If the complete CRL includes an issuing distribution point (IDP) CRL
-             extension check the following:
-             <p>
-             (i) If the distribution point name is present in the IDP CRL extension
-             and the distribution field is present in the DP, then verify that one of
-             the names in the IDP matches one of the names in the DP. If the
-             distribution point name is present in the IDP CRL extension and the
-             distribution field is omitted from the DP, then verify that one of the
-             names in the IDP matches one of the names in the cRLIssuer field of the
-             DP.
-             </p>
-             <p>
-             (ii) If the onlyContainsUserCerts boolean is asserted in the IDP CRL
-             extension, verify that the certificate does not include the basic
-             constraints extension with the cA boolean asserted.
-             </p>
-             <p>
-             (iii) If the onlyContainsCACerts boolean is asserted in the IDP CRL
-             extension, verify that the certificate includes the basic constraints
-             extension with the cA boolean asserted.
-             </p>
-             <p>
-             (iv) Verify that the onlyContainsAttributeCerts boolean is not asserted.
-             </p>
-            
-             @param dp   The distribution point.
-             @param cert The certificate.
-             @param crl  The CRL.
-             @throws AnnotatedException if one of the conditions is not met or an error occurs.
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.Rfc3280CertPathUtilities.ProcessCrlB1(Org.BouncyCastle.Asn1.X509.DistributionPoint,System.Object,Org.BouncyCastle.X509.X509Crl)">
-             If the DP includes cRLIssuer, then verify that the issuer field in the
-             complete CRL matches cRLIssuer in the DP and that the complete CRL
-             contains an
-                  g distribution point extension with the indirectCRL
-             boolean asserted. Otherwise, verify that the CRL issuer matches the
-             certificate issuer.
-            
-             @param dp   The distribution point.
-             @param cert The certificate ot attribute certificate.
-             @param crl  The CRL for <code>cert</code>.
-             @throws AnnotatedException if one of the above conditions does not apply or an error
-                                        occurs.
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.Rfc3280CertPathUtilities.ProcessCrlF(Org.BouncyCastle.X509.X509Crl,System.Object,Org.BouncyCastle.X509.X509Certificate,Org.BouncyCastle.Crypto.AsymmetricKeyParameter,Org.BouncyCastle.Pkix.PkixParameters,System.Collections.IList)">
-             Obtain and validate the certification path for the complete CRL issuer.
-             If a key usage extension is present in the CRL issuer's certificate,
-             verify that the cRLSign bit is set.
-            
-             @param crl                CRL which contains revocation information for the certificate
-                                       <code>cert</code>.
-             @param cert               The attribute certificate or certificate to check if it is
-                                       revoked.
-             @param defaultCRLSignCert The issuer certificate of the certificate <code>cert</code>.
-             @param defaultCRLSignKey  The public key of the issuer certificate
-                                       <code>defaultCRLSignCert</code>.
-             @param paramsPKIX         paramsPKIX PKIX parameters.
-             @param certPathCerts      The certificates on the certification path.
-             @return A <code>Set</code> with all keys of possible CRL issuer
-                     certificates.
-             @throws AnnotatedException if the CRL is not valid or the status cannot be checked or
-                                        some error occurs.
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.Rfc3280CertPathUtilities.CheckCrl(Org.BouncyCastle.Asn1.X509.DistributionPoint,Org.BouncyCastle.Pkix.PkixParameters,Org.BouncyCastle.X509.X509Certificate,System.DateTime,Org.BouncyCastle.X509.X509Certificate,Org.BouncyCastle.Crypto.AsymmetricKeyParameter,Org.BouncyCastle.Pkix.CertStatus,Org.BouncyCastle.Pkix.ReasonsMask,System.Collections.IList)">
-             Checks a distribution point for revocation information for the
-             certificate <code>cert</code>.
-            
-             @param dp                 The distribution point to consider.
-             @param paramsPKIX         PKIX parameters.
-             @param cert               Certificate to check if it is revoked.
-             @param validDate          The date when the certificate revocation status should be
-                                       checked.
-             @param defaultCRLSignCert The issuer certificate of the certificate <code>cert</code>.
-             @param defaultCRLSignKey  The public key of the issuer certificate
-                                       <code>defaultCRLSignCert</code>.
-             @param certStatus         The current certificate revocation status.
-             @param reasonMask         The reasons mask which is already checked.
-             @param certPathCerts      The certificates of the certification path.
-             @throws AnnotatedException if the certificate is revoked or the status cannot be checked
-                                        or some error occurs.
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.Rfc3280CertPathUtilities.CheckCrls(Org.BouncyCastle.Pkix.PkixParameters,Org.BouncyCastle.X509.X509Certificate,System.DateTime,Org.BouncyCastle.X509.X509Certificate,Org.BouncyCastle.Crypto.AsymmetricKeyParameter,System.Collections.IList)">
-             Checks a certificate if it is revoked.
-            
-             @param paramsPKIX       PKIX parameters.
-             @param cert             Certificate to check if it is revoked.
-             @param validDate        The date when the certificate revocation status should be
-                                     checked.
-             @param sign             The issuer certificate of the certificate <code>cert</code>.
-             @param workingPublicKey The public key of the issuer certificate <code>sign</code>.
-             @param certPathCerts    The certificates of the certification path.
-             @throws AnnotatedException if the certificate is revoked or the status cannot be checked
-                                        or some error occurs.
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.Rfc3280CertPathUtilities.ProcessCrlC(Org.BouncyCastle.X509.X509Crl,Org.BouncyCastle.X509.X509Crl,Org.BouncyCastle.Pkix.PkixParameters)">
-             If use-deltas is set, verify the issuer and scope of the delta CRL.
-            
-             @param deltaCRL    The delta CRL.
-             @param completeCRL The complete CRL.
-             @param pkixParams  The PKIX paramaters.
-             @throws AnnotatedException if an exception occurs.
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.Rfc3281CertPathUtilities.CheckCrls(Org.BouncyCastle.X509.IX509AttributeCertificate,Org.BouncyCastle.Pkix.PkixParameters,Org.BouncyCastle.X509.X509Certificate,System.DateTime,System.Collections.IList)">
-            Checks if an attribute certificate is revoked.
-            
-            @param attrCert Attribute certificate to check if it is revoked.
-            @param paramsPKIX PKIX parameters.
-            @param issuerCert The issuer certificate of the attribute certificate
-                       <code>attrCert</code>.
-            @param validDate The date when the certificate revocation status should
-                       be checked.
-            @param certPathCerts The certificates of the certification path to be
-                       checked.
-            
-            @throws CertPathValidatorException if the certificate is revoked or the
-                        status cannot be checked or some error occurs.
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.Rfc3281CertPathUtilities.ProcessAttrCert1(Org.BouncyCastle.X509.IX509AttributeCertificate,Org.BouncyCastle.Pkix.PkixParameters)">
-            Searches for a holder public key certificate and verifies its
-            certification path.
-            
-            @param attrCert the attribute certificate.
-            @param pkixParams The PKIX parameters.
-            @return The certificate path of the holder certificate.
-            @throws Exception if
-                        <ul>
-                        <li>no public key certificate can be found although holder
-                        information is given by an entity name or a base certificate
-                        ID</li>
-                        <li>support classes cannot be created</li>
-                        <li>no certification path for the public key certificate can
-                        be built</li>
-                        </ul>
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.Rfc3281CertPathUtilities.CheckCrl(Org.BouncyCastle.Asn1.X509.DistributionPoint,Org.BouncyCastle.X509.IX509AttributeCertificate,Org.BouncyCastle.Pkix.PkixParameters,System.DateTime,Org.BouncyCastle.X509.X509Certificate,Org.BouncyCastle.Pkix.CertStatus,Org.BouncyCastle.Pkix.ReasonsMask,System.Collections.IList)">
-            
-            Checks a distribution point for revocation information for the
-            certificate <code>attrCert</code>.
-            
-            @param dp The distribution point to consider.
-            @param attrCert The attribute certificate which should be checked.
-            @param paramsPKIX PKIX parameters.
-            @param validDate The date when the certificate revocation status should
-                       be checked.
-            @param issuerCert Certificate to check if it is revoked.
-            @param reasonMask The reasons mask which is already checked.
-            @param certPathCerts The certificates of the certification path to be
-                       checked.
-            @throws Exception if the certificate is revoked or the status
-                        cannot be checked or some error occurs.
-        </member>
-        <member name="T:Org.BouncyCastle.Pkix.TrustAnchor">
-            <summary>
-            A trust anchor or most-trusted Certification Authority (CA).
-            
-            This class represents a "most-trusted CA", which is used as a trust anchor
-            for validating X.509 certification paths. A most-trusted CA includes the
-            public key of the CA, the CA's name, and any constraints upon the set of
-            paths which may be validated using this key. These parameters can be
-            specified in the form of a trusted X509Certificate or as individual
-            parameters.
-            </summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.TrustAnchor.#ctor(Org.BouncyCastle.X509.X509Certificate,System.Byte[])">
-             <summary>
-             Creates an instance of TrustAnchor with the specified X509Certificate and
-             optional name constraints, which are intended to be used as additional
-             constraints when validating an X.509 certification path.
-            	The name constraints are specified as a byte array. This byte array
-            	should contain the DER encoded form of the name constraints, as they
-            	would appear in the NameConstraints structure defined in RFC 2459 and
-            	X.509. The ASN.1 definition of this structure appears below.
-            	
-            	<pre>
-            	NameConstraints ::= SEQUENCE {
-            		permittedSubtrees       [0]     GeneralSubtrees OPTIONAL,
-            		excludedSubtrees        [1]     GeneralSubtrees OPTIONAL }
-            	   
-             GeneralSubtrees ::= SEQUENCE SIZE (1..MAX) OF GeneralSubtree
-             
-            		GeneralSubtree ::= SEQUENCE {
-            		base                    GeneralName,
-            		minimum         [0]     BaseDistance DEFAULT 0,
-            		maximum         [1]     BaseDistance OPTIONAL }
-            		
-            		BaseDistance ::= INTEGER (0..MAX)
-            
-            		GeneralName ::= CHOICE {
-            		otherName                       [0]     OtherName,
-            		rfc822Name                      [1]     IA5String,
-            		dNSName                         [2]     IA5String,
-            		x400Address                     [3]     ORAddress,
-            		directoryName                   [4]     Name,
-            		ediPartyName                    [5]     EDIPartyName,
-            		uniformResourceIdentifier       [6]     IA5String,
-            		iPAddress                       [7]     OCTET STRING,
-            		registeredID                    [8]     OBJECT IDENTIFIER}
-            	</pre>
-            	
-            	Note that the name constraints byte array supplied is cloned to protect
-            	against subsequent modifications.
-             </summary>
-             <param name="trustedCert">a trusted X509Certificate</param>
-             <param name="nameConstraints">a byte array containing the ASN.1 DER encoding of a
-             NameConstraints extension to be used for checking name
-             constraints. Only the value of the extension is included, not
-             the OID or criticality flag. Specify null to omit the
-             parameter.</param>
-             <exception cref="T:System.ArgumentNullException">if the specified X509Certificate is null</exception>
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.TrustAnchor.#ctor(Org.BouncyCastle.Asn1.X509.X509Name,Org.BouncyCastle.Crypto.AsymmetricKeyParameter,System.Byte[])">
-            <summary>
-            Creates an instance of <c>TrustAnchor</c> where the
-            most-trusted CA is specified as an X500Principal and public key.
-            </summary>
-            <remarks>
-            <p>
-            Name constraints are an optional parameter, and are intended to be used
-            as additional constraints when validating an X.509 certification path.
-            </p><p>
-            The name constraints are specified as a byte array. This byte array
-            contains the DER encoded form of the name constraints, as they
-            would appear in the NameConstraints structure defined in RFC 2459
-            and X.509. The ASN.1 notation for this structure is supplied in the
-            documentation for the other constructors.
-            </p><p>
-            Note that the name constraints byte array supplied here is cloned to
-            protect against subsequent modifications.
-            </p>
-            </remarks>
-            <param name="caPrincipal">the name of the most-trusted CA as X509Name</param>
-            <param name="pubKey">the public key of the most-trusted CA</param>
-            <param name="nameConstraints">
-            a byte array containing the ASN.1 DER encoding of a NameConstraints extension to
-            be used for checking name constraints. Only the value of the extension is included,
-            not the OID or criticality flag. Specify <c>null</c> to omit the parameter.
-            </param>
-            <exception cref="T:System.ArgumentNullException">
-            if <c>caPrincipal</c> or <c>pubKey</c> is null
-            </exception>
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.TrustAnchor.#ctor(System.String,Org.BouncyCastle.Crypto.AsymmetricKeyParameter,System.Byte[])">
-            <summary>
-            Creates an instance of <code>TrustAnchor</code> where the most-trusted
-            CA is specified as a distinguished name and public key. Name constraints
-            are an optional parameter, and are intended to be used as additional
-            constraints when validating an X.509 certification path.
-            <br/>
-            The name constraints are specified as a byte array. This byte array
-            contains the DER encoded form of the name constraints, as they would
-            appear in the NameConstraints structure defined in RFC 2459 and X.509.
-            </summary>
-            <param name="caName">the X.500 distinguished name of the most-trusted CA in RFC
-            2253 string format</param>
-            <param name="pubKey">the public key of the most-trusted CA</param>
-            <param name="nameConstraints">a byte array containing the ASN.1 DER encoding of a
-            NameConstraints extension to be used for checking name
-            constraints. Only the value of the extension is included, not 
-            the OID or criticality flag. Specify null to omit the 
-            parameter.</param>
-            throws NullPointerException, IllegalArgumentException
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.TrustAnchor.setNameConstraints(System.Byte[])">
-            <summary>
-            Decode the name constraints and clone them if not null.
-            </summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Pkix.TrustAnchor.ToString">
-            <summary>
-            Returns a formatted string describing the <code>TrustAnchor</code>.
-            </summary>
-            <returns>a formatted string describing the <code>TrustAnchor</code></returns>
-        </member>
-        <member name="P:Org.BouncyCastle.Pkix.TrustAnchor.TrustedCert">
-            <summary>
-            Returns the most-trusted CA certificate.
-            </summary>
-        </member>
-        <member name="P:Org.BouncyCastle.Pkix.TrustAnchor.CA">
-            <summary>
-            Returns the name of the most-trusted CA as an X509Name.
-            </summary>
-        </member>
-        <member name="P:Org.BouncyCastle.Pkix.TrustAnchor.CAName">
-            <summary>
-            Returns the name of the most-trusted CA in RFC 2253 string format.
-            </summary>
-        </member>
-        <member name="P:Org.BouncyCastle.Pkix.TrustAnchor.CAPublicKey">
-            <summary>
-            Returns the public key of the most-trusted CA.
-            </summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Security.AgreementUtilities">
-            <remarks>
-             Utility class for creating IBasicAgreement objects from their names/Oids
-            </remarks>
-        </member>
-        <member name="T:Org.BouncyCastle.Security.CipherUtilities">
-            <remarks>
-             Cipher Utility class contains methods that can not be specifically grouped into other classes.
-            </remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Security.CipherUtilities.GetObjectIdentifier(System.String)">
-            <summary>
-            Returns a ObjectIdentifier for a give encoding.
-            </summary>
-            <param name="mechanism">A string representation of the encoding.</param>
-            <returns>A DerObjectIdentifier, null if the Oid is not available.</returns>
-        </member>
-        <member name="T:Org.BouncyCastle.Security.DigestUtilities">
-            <remarks>
-             Utility class for creating IDigest objects from their names/Oids
-            </remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.Security.DigestUtilities.GetObjectIdentifier(System.String)">
-            <summary>
-            Returns a ObjectIdentifier for a given digest mechanism.
-            </summary>
-            <param name="mechanism">A string representation of the digest meanism.</param>
-            <returns>A DerObjectIdentifier, null if the Oid is not available.</returns>
-        </member>
-        <member name="T:Org.BouncyCastle.Security.MacUtilities">
-            <remarks>
-             Utility class for creating HMac object from their names/Oids
-            </remarks>
-        </member>
-        <member name="T:Org.BouncyCastle.Security.PbeUtilities">
-             <summary>
-            
-             </summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Security.PbeUtilities.GetObjectIdentifier(System.String)">
-            <summary>
-            Returns a ObjectIdentifier for a give encoding.
-            </summary>
-            <param name="mechanism">A string representation of the encoding.</param>
-            <returns>A DerObjectIdentifier, null if the Oid is not available.</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Security.SecureRandom.#ctor(Org.BouncyCastle.Crypto.Prng.IRandomGenerator)">
-            <summary>Use the specified instance of IRandomGenerator as random source.</summary>
-            <remarks>
-            This constructor performs no seeding of either the <c>IRandomGenerator</c> or the
-            constructed <c>SecureRandom</c>. It is the responsibility of the client to provide
-            proper seed material as necessary/appropriate for the given <c>IRandomGenerator</c>
-            implementation.
-            </remarks>
-            <param name="generator">The source to generate all random bytes from.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Security.SecurityUtilityException.#ctor">
-            base constructor.
-        </member>
-        <member name="M:Org.BouncyCastle.Security.SecurityUtilityException.#ctor(System.String)">
-             create a SecurityUtilityException with the given message.
-            
-             @param message the message to be carried with the exception.
-        </member>
-        <member name="T:Org.BouncyCastle.Security.SignerUtilities">
-            <summary>
-             Signer Utility class contains methods that can not be specifically grouped into other classes.
-            </summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Security.SignerUtilities.GetObjectIdentifier(System.String)">
-            <summary>
-            Returns a ObjectIdentifier for a give encoding.
-            </summary>
-            <param name="mechanism">A string representation of the encoding.</param>
-            <returns>A DerObjectIdentifier, null if the Oid is not available.</returns>
-        </member>
-        <member name="T:Org.BouncyCastle.Security.WrapperUtilities">
-            <remarks>
-             Utility class for creating IWrapper objects from their names/Oids
-            </remarks>
-        </member>
-        <member name="T:Org.BouncyCastle.Tsp.TimeStampRequest">
-            Base class for an RFC 3161 Time Stamp Request.
-        </member>
-        <member name="M:Org.BouncyCastle.Tsp.TimeStampRequest.#ctor(System.Byte[])">
-             Create a TimeStampRequest from the past in byte array.
-            
-             @param req byte array containing the request.
-             @throws IOException if the request is malformed.
-        </member>
-        <member name="M:Org.BouncyCastle.Tsp.TimeStampRequest.#ctor(System.IO.Stream)">
-             Create a TimeStampRequest from the past in input stream.
-            
-             @param in input stream containing the request.
-             @throws IOException if the request is malformed.
-        </member>
-        <member name="M:Org.BouncyCastle.Tsp.TimeStampRequest.Validate(System.Collections.IList,System.Collections.IList,System.Collections.IList)">
-             Validate the timestamp request, checking the digest to see if it is of an
-             accepted type and whether it is of the correct length for the algorithm specified.
-            
-             @param algorithms a set of string OIDS giving accepted algorithms.
-             @param policies if non-null a set of policies we are willing to sign under.
-             @param extensions if non-null a set of extensions we are willing to accept.
-             @throws TspException if the request is invalid, or processing fails.
-        </member>
-        <member name="M:Org.BouncyCastle.Tsp.TimeStampRequest.GetEncoded">
-            return the ASN.1 encoded representation of this object.
-        </member>
-        <member name="T:Org.BouncyCastle.Tsp.TimeStampRequestGenerator">
-            Generator for RFC 3161 Time Stamp Request objects.
-        </member>
-        <member name="M:Org.BouncyCastle.Tsp.TimeStampRequestGenerator.AddExtension(System.String,System.Boolean,Org.BouncyCastle.Asn1.Asn1Encodable)">
-            add a given extension field for the standard extensions tag (tag 3)
-            @throws IOException
-        </member>
-        <member name="M:Org.BouncyCastle.Tsp.TimeStampRequestGenerator.AddExtension(System.String,System.Boolean,System.Byte[])">
-            add a given extension field for the standard extensions tag
-            The value parameter becomes the contents of the octet string associated
-            with the extension.
-        </member>
-        <member name="M:Org.BouncyCastle.Tsp.TimeStampRequestGenerator.AddExtension(Org.BouncyCastle.Asn1.DerObjectIdentifier,System.Boolean,Org.BouncyCastle.Asn1.Asn1Encodable)">
-            add a given extension field for the standard extensions tag (tag 3)
-            @throws IOException
-        </member>
-        <member name="M:Org.BouncyCastle.Tsp.TimeStampRequestGenerator.AddExtension(Org.BouncyCastle.Asn1.DerObjectIdentifier,System.Boolean,System.Byte[])">
-            add a given extension field for the standard extensions tag
-            The value parameter becomes the contents of the octet string associated
-            with the extension.
-        </member>
-        <member name="T:Org.BouncyCastle.Tsp.TimeStampResponse">
-            Base class for an RFC 3161 Time Stamp Response object.
-        </member>
-        <member name="M:Org.BouncyCastle.Tsp.TimeStampResponse.#ctor(System.Byte[])">
-             Create a TimeStampResponse from a byte array containing an ASN.1 encoding.
-            
-             @param resp the byte array containing the encoded response.
-             @throws TspException if the response is malformed.
-             @throws IOException if the byte array doesn't represent an ASN.1 encoding.
-        </member>
-        <member name="M:Org.BouncyCastle.Tsp.TimeStampResponse.#ctor(System.IO.Stream)">
-             Create a TimeStampResponse from an input stream containing an ASN.1 encoding.
-            
-             @param input the input stream containing the encoded response.
-             @throws TspException if the response is malformed.
-             @throws IOException if the stream doesn't represent an ASN.1 encoding.
-        </member>
-        <member name="M:Org.BouncyCastle.Tsp.TimeStampResponse.Validate(Org.BouncyCastle.Tsp.TimeStampRequest)">
-             Check this response against to see if it a well formed response for
-             the passed in request. Validation will include checking the time stamp
-             token if the response status is GRANTED or GRANTED_WITH_MODS.
-            
-             @param request the request to be checked against
-             @throws TspException if the request can not match this response.
-        </member>
-        <member name="M:Org.BouncyCastle.Tsp.TimeStampResponse.GetEncoded">
-            return the ASN.1 encoded representation of this object.
-        </member>
-        <member name="T:Org.BouncyCastle.Tsp.TimeStampResponseGenerator">
-            Generator for RFC 3161 Time Stamp Responses.
-        </member>
-        <member name="M:Org.BouncyCastle.Tsp.TimeStampResponseGenerator.Generate(Org.BouncyCastle.Tsp.TimeStampRequest,Org.BouncyCastle.Math.BigInteger,Org.BouncyCastle.Utilities.Date.DateTimeObject)">
-             Return an appropriate TimeStampResponse.
-             <p>
-             If genTime is null a timeNotAvailable error response will be returned.
-            
-             @param request the request this response is for.
-             @param serialNumber serial number for the response token.
-             @param genTime generation time for the response token.
-             @param provider provider to use for signature calculation.
-             @return
-             @throws NoSuchAlgorithmException
-             @throws NoSuchProviderException
-             @throws TSPException
-             </p>
-        </member>
-        <member name="M:Org.BouncyCastle.Tsp.TimeStampResponseGenerator.GenerateFailResponse(Org.BouncyCastle.Asn1.Cmp.PkiStatus,System.Int32,System.String)">
-             Generate a TimeStampResponse with chosen status and FailInfoField.
-            
-             @param status the PKIStatus to set.
-             @param failInfoField the FailInfoField to set.
-             @param statusString an optional string describing the failure.
-             @return a TimeStampResponse with a failInfoField and optional statusString
-             @throws TSPException in case the response could not be created
-        </member>
-        <member name="M:Org.BouncyCastle.Tsp.TimeStampToken.Validate(Org.BouncyCastle.X509.X509Certificate)">
-            Validate the time stamp token.
-            <p>
-            To be valid the token must be signed by the passed in certificate and
-            the certificate must be the one referred to by the SigningCertificate
-            attribute included in the hashed attributes of the token. The
-            certificate must also have the ExtendedKeyUsageExtension with only
-            KeyPurposeID.IdKPTimeStamping and have been valid at the time the
-            timestamp was created.
-            </p>
-            <p>
-            A successful call to validate means all the above are true.
-            </p>
-        </member>
-        <member name="M:Org.BouncyCastle.Tsp.TimeStampToken.ToCmsSignedData">
-             Return the underlying CmsSignedData object.
-            
-             @return the underlying CMS structure.
-        </member>
-        <member name="M:Org.BouncyCastle.Tsp.TimeStampToken.GetEncoded">
-             Return a ASN.1 encoded byte stream representing the encoded object.
-            
-             @throws IOException if encoding fails.
-        </member>
-        <member name="M:Org.BouncyCastle.Tsp.TimeStampTokenGenerator.#ctor(Org.BouncyCastle.Crypto.AsymmetricKeyParameter,Org.BouncyCastle.X509.X509Certificate,System.String,System.String)">
-            basic creation - only the default attributes will be included here.
-        </member>
-        <member name="M:Org.BouncyCastle.Tsp.TimeStampTokenGenerator.#ctor(Org.BouncyCastle.Crypto.AsymmetricKeyParameter,Org.BouncyCastle.X509.X509Certificate,System.String,System.String,Org.BouncyCastle.Asn1.Cms.AttributeTable,Org.BouncyCastle.Asn1.Cms.AttributeTable)">
-            create with a signer with extra signed/unsigned attributes.
-        </member>
-        <member name="P:Org.BouncyCastle.Tsp.TimeStampTokenInfo.Nonce">
-            @return the nonce value, null if there isn't one.
-        </member>
-        <member name="T:Org.BouncyCastle.Tsp.TspAlgorithms">
-            Recognised hash algorithms for the time stamp protocol.
-        </member>
-        <member name="M:Org.BouncyCastle.Tsp.TspUtil.GetSignatureTimestamps(Org.BouncyCastle.Cms.SignerInformation)">
-             Fetches the signature time-stamp attributes from a SignerInformation object.
-             Checks that the MessageImprint for each time-stamp matches the signature field.
-             (see RFC 3161 Appendix A).
-            
-             @param signerInfo a SignerInformation to search for time-stamps
-             @return a collection of TimeStampToken objects
-             @throws TSPValidationException
-        </member>
-        <member name="M:Org.BouncyCastle.Tsp.TspUtil.ValidateCertificate(Org.BouncyCastle.X509.X509Certificate)">
-             Validate the passed in certificate as being of the correct type to be used
-             for time stamping. To be valid it must have an ExtendedKeyUsage extension
-             which has a key purpose identifier of id-kp-timeStamping.
-            
-             @param cert the certificate of interest.
-             @throws TspValidationException if the certicate fails on one of the check points.
-        </member>
-        <member name="M:Org.BouncyCastle.Tsp.TspUtil.GetDigestAlgName(System.String)">
-            <summary>
-            Return the digest algorithm using one of the standard JCA string
-            representations rather than the algorithm identifier (if possible).
-            </summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Tsp.TspValidationException">
-            Exception thrown if a TSP request or response fails to validate.
-            <p>
-            If a failure code is associated with the exception it can be retrieved using
-            the getFailureCode() method.</p>
-        </member>
-        <member name="P:Org.BouncyCastle.Tsp.TspValidationException.FailureCode">
-             Return the failure code associated with this exception - if one is set.
-            
-             @return the failure code if set, -1 otherwise.
-        </member>
-        <member name="T:Org.BouncyCastle.Utilities.Arrays">
-            <summary> General array utilities.</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Utilities.Arrays.AreEqual(System.Byte[],System.Byte[])">
-            <summary>
-            Are two arrays equal.
-            </summary>
-            <param name="a">Left side.</param>
-            <param name="b">Right side.</param>
-            <returns>True if equal.</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Utilities.Arrays.ConstantTimeAreEqual(System.Byte[],System.Byte[])">
-            <summary>
-            A constant time equals comparison - does not terminate early if
-            test will fail.
-            </summary>
-            <param name="a">first array</param>
-            <param name="b">second array</param>
-            <returns>true if arrays equal, false otherwise.</returns>
-        </member>
-        <member name="T:Org.BouncyCastle.Utilities.BigIntegers">
-            BigInteger utilities.
-        </member>
-        <member name="M:Org.BouncyCastle.Utilities.BigIntegers.AsUnsignedByteArray(Org.BouncyCastle.Math.BigInteger)">
-             Return the passed in value as an unsigned byte array.
-            
-             @param value value to be converted.
-             @return a byte array without a leading zero byte if present in the signed encoding.
-        </member>
-        <member name="M:Org.BouncyCastle.Utilities.BigIntegers.CreateRandomInRange(Org.BouncyCastle.Math.BigInteger,Org.BouncyCastle.Math.BigInteger,Org.BouncyCastle.Security.SecureRandom)">
-            Return a random BigInteger not less than 'min' and not greater than 'max'
-            
-            @param min the least value that may be generated
-            @param max the greatest value that may be generated
-            @param random the source of randomness
-            @return a random BigInteger value in the range [min,max]
-        </member>
-        <member name="M:Org.BouncyCastle.Utilities.Date.DateTimeUtilities.DateTimeToUnixMs(System.DateTime)">
-            <summary>
-            Return the number of milliseconds since the Unix epoch (1 Jan., 1970 UTC) for a given DateTime value.
-            </summary>
-            <param name="dateTime">A UTC DateTime value not before epoch.</param>
-            <returns>Number of whole milliseconds after epoch.</returns>
-            <exception cref="T:System.ArgumentException">'dateTime' is before epoch.</exception>
-        </member>
-        <member name="M:Org.BouncyCastle.Utilities.Date.DateTimeUtilities.UnixMsToDateTime(System.Int64)">
-            <summary>
-            Create a DateTime value from the number of milliseconds since the Unix epoch (1 Jan., 1970 UTC).
-            </summary>
-            <param name="unixMs">Number of milliseconds since the epoch.</param>
-            <returns>A UTC DateTime value</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Utilities.Date.DateTimeUtilities.CurrentUnixMs">
-            <summary>
-            Return the current number of milliseconds since the Unix epoch (1 Jan., 1970 UTC).
-            </summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Utilities.Encoders.Base64.Encode(System.Byte[])">
-             encode the input data producing a base 64 encoded byte array.
-            
-             @return a byte array containing the base 64 encoded data.
-        </member>
-        <member name="M:Org.BouncyCastle.Utilities.Encoders.Base64.Encode(System.Byte[],System.IO.Stream)">
-             Encode the byte data to base 64 writing it to the given output stream.
-            
-             @return the number of bytes produced.
-        </member>
-        <member name="M:Org.BouncyCastle.Utilities.Encoders.Base64.Encode(System.Byte[],System.Int32,System.Int32,System.IO.Stream)">
-             Encode the byte data to base 64 writing it to the given output stream.
-            
-             @return the number of bytes produced.
-        </member>
-        <member name="M:Org.BouncyCastle.Utilities.Encoders.Base64.Decode(System.Byte[])">
-             decode the base 64 encoded input data. It is assumed the input data is valid.
-            
-             @return a byte array representing the decoded data.
-        </member>
-        <member name="M:Org.BouncyCastle.Utilities.Encoders.Base64.Decode(System.String)">
-             decode the base 64 encoded string data - whitespace will be ignored.
-            
-             @return a byte array representing the decoded data.
-        </member>
-        <member name="M:Org.BouncyCastle.Utilities.Encoders.Base64.Decode(System.String,System.IO.Stream)">
-             decode the base 64 encoded string data writing it to the given output stream,
-             whitespace characters will be ignored.
-            
-             @return the number of bytes produced.
-        </member>
-        <member name="T:Org.BouncyCastle.Utilities.Encoders.IEncoder">
-            Encode and decode byte arrays (typically from binary to 7-bit ASCII
-            encodings).
-        </member>
-        <member name="M:Org.BouncyCastle.Utilities.Encoders.Base64Encoder.Encode(System.Byte[],System.Int32,System.Int32,System.IO.Stream)">
-             encode the input data producing a base 64 output stream.
-            
-             @return the number of bytes produced.
-        </member>
-        <member name="M:Org.BouncyCastle.Utilities.Encoders.Base64Encoder.Decode(System.Byte[],System.Int32,System.Int32,System.IO.Stream)">
-             decode the base 64 encoded byte data writing it to the given output stream,
-             whitespace characters will be ignored.
-            
-             @return the number of bytes produced.
-        </member>
-        <member name="M:Org.BouncyCastle.Utilities.Encoders.Base64Encoder.DecodeString(System.String,System.IO.Stream)">
-             decode the base 64 encoded string data writing it to the given output stream,
-             whitespace characters will be ignored.
-            
-             @return the number of bytes produced.
-        </member>
-        <member name="T:Org.BouncyCastle.Utilities.Encoders.BufferedDecoder">
-            <summary>
-             A buffering class to allow translation from one format to another to
-                be done in discrete chunks.
-            </summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Utilities.Encoders.BufferedDecoder.#ctor(Org.BouncyCastle.Utilities.Encoders.ITranslator,System.Int32)">
-            <summary>
-            Create a buffered Decoder.
-            </summary>
-            <param name="translator">The translater to use.</param>
-            <param name="bufferSize">The size of the buffer.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Utilities.Encoders.BufferedDecoder.ProcessByte(System.Byte,System.Byte[],System.Int32)">
-            <summary>
-            Process one byte of data.
-            </summary>
-            <param name="input">Data in.</param>
-            <param name="output">Byte array for the output.</param>
-            <param name="outOff">The offset in the output byte array to start writing from.</param>
-            <returns>The amount of output bytes.</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Utilities.Encoders.BufferedDecoder.ProcessBytes(System.Byte[],System.Int32,System.Int32,System.Byte[],System.Int32)">
-            <summary>
-            Process data from a byte array.
-            </summary>
-            <param name="input">The input data.</param>
-            <param name="inOff">Start position within input data array.</param>
-            <param name="len">Amount of data to process from input data array.</param>
-            <param name="outBytes">Array to store output.</param>
-            <param name="outOff">Position in output array to start writing from.</param>
-            <returns>The amount of output bytes.</returns>
-        </member>
-        <member name="T:Org.BouncyCastle.Utilities.Encoders.BufferedEncoder">
-            <summary>
-            A class that allows encoding of data using a specific encoder to be processed in chunks.
-            </summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Utilities.Encoders.BufferedEncoder.#ctor(Org.BouncyCastle.Utilities.Encoders.ITranslator,System.Int32)">
-            <summary>
-            Create.
-            </summary>
-            <param name="translator">The translator to use.</param>
-            <param name="bufferSize">Size of the chunks.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.Utilities.Encoders.BufferedEncoder.ProcessByte(System.Byte,System.Byte[],System.Int32)">
-            <summary>
-            Process one byte of data.
-            </summary>
-            <param name="input">The byte.</param>
-            <param name="outBytes">An array to store output in.</param>
-            <param name="outOff">Offset within output array to start writing from.</param>
-            <returns></returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Utilities.Encoders.BufferedEncoder.ProcessBytes(System.Byte[],System.Int32,System.Int32,System.Byte[],System.Int32)">
-            <summary>
-            Process data from a byte array.
-            </summary>
-            <param name="input">Input data Byte array containing data to be processed.</param>
-            <param name="inOff">Start position within input data array.</param>
-            <param name="len">Amount of input data to be processed.</param>
-            <param name="outBytes">Output data array.</param>
-            <param name="outOff">Offset within output data array to start writing to.</param>
-            <returns>The amount of data written.</returns>
-        </member>
-        <member name="T:Org.BouncyCastle.Utilities.Encoders.Hex">
-            <summary>
-            Class to decode and encode Hex.
-            </summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Utilities.Encoders.Hex.Encode(System.Byte[])">
-             encode the input data producing a Hex encoded byte array.
-            
-             @return a byte array containing the Hex encoded data.
-        </member>
-        <member name="M:Org.BouncyCastle.Utilities.Encoders.Hex.Encode(System.Byte[],System.Int32,System.Int32)">
-             encode the input data producing a Hex encoded byte array.
-            
-             @return a byte array containing the Hex encoded data.
-        </member>
-        <member name="M:Org.BouncyCastle.Utilities.Encoders.Hex.Encode(System.Byte[],System.IO.Stream)">
-             Hex encode the byte data writing it to the given output stream.
-            
-             @return the number of bytes produced.
-        </member>
-        <member name="M:Org.BouncyCastle.Utilities.Encoders.Hex.Encode(System.Byte[],System.Int32,System.Int32,System.IO.Stream)">
-             Hex encode the byte data writing it to the given output stream.
-            
-             @return the number of bytes produced.
-        </member>
-        <member name="M:Org.BouncyCastle.Utilities.Encoders.Hex.Decode(System.Byte[])">
-             decode the Hex encoded input data. It is assumed the input data is valid.
-            
-             @return a byte array representing the decoded data.
-        </member>
-        <member name="M:Org.BouncyCastle.Utilities.Encoders.Hex.Decode(System.String)">
-             decode the Hex encoded string data - whitespace will be ignored.
-            
-             @return a byte array representing the decoded data.
-        </member>
-        <member name="M:Org.BouncyCastle.Utilities.Encoders.Hex.Decode(System.String,System.IO.Stream)">
-             decode the Hex encoded string data writing it to the given output stream,
-             whitespace characters will be ignored.
-            
-             @return the number of bytes produced.
-        </member>
-        <member name="M:Org.BouncyCastle.Utilities.Encoders.HexEncoder.Encode(System.Byte[],System.Int32,System.Int32,System.IO.Stream)">
-             encode the input data producing a Hex output stream.
-            
-             @return the number of bytes produced.
-        </member>
-        <member name="M:Org.BouncyCastle.Utilities.Encoders.HexEncoder.Decode(System.Byte[],System.Int32,System.Int32,System.IO.Stream)">
-             decode the Hex encoded byte data writing it to the given output stream,
-             whitespace characters will be ignored.
-            
-             @return the number of bytes produced.
-        </member>
-        <member name="M:Org.BouncyCastle.Utilities.Encoders.HexEncoder.DecodeString(System.String,System.IO.Stream)">
-             decode the Hex encoded string data writing it to the given output stream,
-             whitespace characters will be ignored.
-            
-             @return the number of bytes produced.
-        </member>
-        <member name="T:Org.BouncyCastle.Utilities.Encoders.HexTranslator">
-            <summary>
-            A hex translator.
-            </summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Utilities.Encoders.ITranslator">
-            <summary>
-            Translator interface.
-            </summary>
-        </member>
-        <member name="M:Org.BouncyCastle.Utilities.Encoders.HexTranslator.GetEncodedBlockSize">
-            <summary>
-            Return encoded block size.
-            </summary>
-            <returns>2</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Utilities.Encoders.HexTranslator.Encode(System.Byte[],System.Int32,System.Int32,System.Byte[],System.Int32)">
-            <summary>
-            Encode some data.
-            </summary>
-            <param name="input">Input data array.</param>
-            <param name="inOff">Start position within input data array.</param>
-            <param name="length">The amount of data to process.</param>
-            <param name="outBytes">The output data array.</param>
-            <param name="outOff">The offset within the output data array to start writing from.</param>
-            <returns>Amount of data encoded.</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Utilities.Encoders.HexTranslator.GetDecodedBlockSize">
-            <summary>
-            Returns the decoded block size.
-            </summary>
-            <returns>1</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.Utilities.Encoders.HexTranslator.Decode(System.Byte[],System.Int32,System.Int32,System.Byte[],System.Int32)">
-            <summary>
-            Decode data from a byte array.
-            </summary>
-            <param name="input">The input data array.</param>
-            <param name="inOff">Start position within input data array.</param>
-            <param name="length">The amounty of data to process.</param>
-            <param name="outBytes">The output data array.</param>
-            <param name="outOff">The position within the output data array to start writing from.</param>
-            <returns>The amount of data written.</returns>
-        </member>
-        <member name="T:Org.BouncyCastle.Utilities.Encoders.UrlBase64">
-            Convert binary data to and from UrlBase64 encoding.  This is identical to
-            Base64 encoding, except that the padding character is "." and the other 
-            non-alphanumeric characters are "-" and "_" instead of "+" and "/".
-            <p>
-            The purpose of UrlBase64 encoding is to provide a compact encoding of binary
-            data that is safe for use as an URL parameter. Base64 encoding does not
-            produce encoded values that are safe for use in URLs, since "/" can be 
-            interpreted as a path delimiter; "+" is the encoded form of a space; and
-            "=" is used to separate a name from the corresponding value in an URL 
-            parameter.
-            </p>
-        </member>
-        <member name="M:Org.BouncyCastle.Utilities.Encoders.UrlBase64.Encode(System.Byte[])">
-             Encode the input data producing a URL safe base 64 encoded byte array.
-            
-             @return a byte array containing the URL safe base 64 encoded data.
-        </member>
-        <member name="M:Org.BouncyCastle.Utilities.Encoders.UrlBase64.Encode(System.Byte[],System.IO.Stream)">
-             Encode the byte data writing it to the given output stream.
-            
-             @return the number of bytes produced.
-        </member>
-        <member name="M:Org.BouncyCastle.Utilities.Encoders.UrlBase64.Decode(System.Byte[])">
-             Decode the URL safe base 64 encoded input data - white space will be ignored.
-            
-             @return a byte array representing the decoded data.
-        </member>
-        <member name="M:Org.BouncyCastle.Utilities.Encoders.UrlBase64.Decode(System.Byte[],System.IO.Stream)">
-             decode the URL safe base 64 encoded byte data writing it to the given output stream,
-             whitespace characters will be ignored.
-            
-             @return the number of bytes produced.
-        </member>
-        <member name="M:Org.BouncyCastle.Utilities.Encoders.UrlBase64.Decode(System.String)">
-             decode the URL safe base 64 encoded string data - whitespace will be ignored.
-            
-             @return a byte array representing the decoded data.
-        </member>
-        <member name="M:Org.BouncyCastle.Utilities.Encoders.UrlBase64.Decode(System.String,System.IO.Stream)">
-             Decode the URL safe base 64 encoded string data writing it to the given output stream,
-             whitespace characters will be ignored.
-            
-             @return the number of bytes produced.
-        </member>
-        <member name="T:Org.BouncyCastle.Utilities.Encoders.UrlBase64Encoder">
-            Convert binary data to and from UrlBase64 encoding.  This is identical to
-            Base64 encoding, except that the padding character is "." and the other 
-            non-alphanumeric characters are "-" and "_" instead of "+" and "/".
-            <p>
-            The purpose of UrlBase64 encoding is to provide a compact encoding of binary
-            data that is safe for use as an URL parameter. Base64 encoding does not
-            produce encoded values that are safe for use in URLs, since "/" can be 
-            interpreted as a path delimiter; "+" is the encoded form of a space; and
-            "=" is used to separate a name from the corresponding value in an URL 
-            parameter.
-            </p>
-        </member>
-        <member name="M:Org.BouncyCastle.Utilities.IO.Pem.PemObjectParser.ParseObject(Org.BouncyCastle.Utilities.IO.Pem.PemObject)">
-            <param name="obj">
-            A <see cref="T:Org.BouncyCastle.Utilities.IO.Pem.PemObject"/>
-            </param>
-            <returns>
-            A <see cref="T:System.Object"/>
-            </returns>
-            <exception cref="T:System.IO.IOException"></exception>
-        </member>
-        <member name="M:Org.BouncyCastle.Utilities.IO.Streams.PipeAllLimited(System.IO.Stream,System.Int64,System.IO.Stream)">
-            <summary>
-            Pipe all bytes from <c>inStr</c> to <c>outStr</c>, throwing <c>StreamFlowException</c> if greater
-            than <c>limit</c> bytes in <c>inStr</c>.
-            </summary>
-            <param name="inStr">
-            A <see cref="T:System.IO.Stream"/>
-            </param>
-            <param name="limit">
-            A <see cref="T:System.Int64"/>
-            </param>
-            <param name="outStr">
-            A <see cref="T:System.IO.Stream"/>
-            </param>
-            <returns>The number of bytes actually transferred, if not greater than <c>limit</c></returns>
-            <exception cref="T:System.IO.IOException"></exception>
-        </member>
-        <member name="M:Org.BouncyCastle.Utilities.Net.IPAddress.IsValid(System.String)">
-             Validate the given IPv4 or IPv6 address.
-            
-             @param address the IP address as a string.
-            
-             @return true if a valid address, false otherwise
-        </member>
-        <member name="M:Org.BouncyCastle.Utilities.Net.IPAddress.IsValidWithNetMask(System.String)">
-             Validate the given IPv4 or IPv6 address and netmask.
-            
-             @param address the IP address as a string.
-            
-             @return true if a valid address with netmask, false otherwise
-        </member>
-        <member name="M:Org.BouncyCastle.Utilities.Net.IPAddress.IsValidIPv4(System.String)">
-             Validate the given IPv4 address.
-             
-             @param address the IP address as a string.
-            
-             @return true if a valid IPv4 address, false otherwise
-        </member>
-        <member name="M:Org.BouncyCastle.Utilities.Net.IPAddress.IsValidIPv6(System.String)">
-             Validate the given IPv6 address.
-            
-             @param address the IP address as a string.
-            
-             @return true if a valid IPv4 address, false otherwise
-        </member>
-        <member name="T:Org.BouncyCastle.Utilities.Strings">
-            <summary> General string utilities.</summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Utilities.Zlib.ZDeflaterOutputStream">
-            <summary>
-            Summary description for DeflaterOutputStream.
-            </summary>
-        </member>
-        <member name="T:Org.BouncyCastle.Utilities.Zlib.ZInflaterInputStream">
-            <summary>
-            Summary description for DeflaterOutputStream.
-            </summary>
-        </member>
-        <member name="T:Org.BouncyCastle.X509.AttributeCertificateHolder">
-            <remarks>
-            The Holder object.
-            <pre>
-            Holder ::= SEQUENCE {
-            	baseCertificateID   [0] IssuerSerial OPTIONAL,
-            		-- the issuer and serial number of
-            		-- the holder's Public Key Certificate
-            	entityName          [1] GeneralNames OPTIONAL,
-            		-- the name of the claimant or role
-            	objectDigestInfo    [2] ObjectDigestInfo OPTIONAL
-            		-- used to directly authenticate the holder,
-            		-- for example, an executable
-            }
-            </pre>
-            </remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.AttributeCertificateHolder.#ctor(System.Int32,System.String,System.String,System.Byte[])">
-             Constructs a holder for v2 attribute certificates with a hash value for
-             some type of object.
-             <p>
-             <code>digestedObjectType</code> can be one of the following:
-             <ul>
-             <li>0 - publicKey - A hash of the public key of the holder must be
-             passed.</li>
-             <li>1 - publicKeyCert - A hash of the public key certificate of the
-             holder must be passed.</li>
-             <li>2 - otherObjectDigest - A hash of some other object type must be
-             passed. <code>otherObjectTypeID</code> must not be empty.</li>
-             </ul>
-             </p>
-             <p>This cannot be used if a v1 attribute certificate is used.</p>
-            
-             @param digestedObjectType The digest object type.
-             @param digestAlgorithm The algorithm identifier for the hash.
-             @param otherObjectTypeID The object type ID if
-                        <code>digestedObjectType</code> is
-                        <code>otherObjectDigest</code>.
-             @param objectDigest The hash value.
-        </member>
-        <member name="M:Org.BouncyCastle.X509.AttributeCertificateHolder.GetObjectDigest">
-             Returns the hash if an object digest info is used.
-            
-             @return The hash or <code>null</code> if no object digest info is set.
-        </member>
-        <member name="M:Org.BouncyCastle.X509.AttributeCertificateHolder.GetEntityNames">
-             Return any principal objects inside the attribute certificate holder entity names field.
-            
-             @return an array of IPrincipal objects (usually X509Name), null if no entity names field is set.
-        </member>
-        <member name="M:Org.BouncyCastle.X509.AttributeCertificateHolder.GetIssuer">
-             Return the principals associated with the issuer attached to this holder
-            
-             @return an array of principals, null if no BaseCertificateID is set.
-        </member>
-        <member name="P:Org.BouncyCastle.X509.AttributeCertificateHolder.DigestedObjectType">
-             Returns the digest object type if an object digest info is used.
-             <p>
-             <ul>
-             <li>0 - publicKey - A hash of the public key of the holder must be
-             passed.</li>
-             <li>1 - publicKeyCert - A hash of the public key certificate of the
-             holder must be passed.</li>
-             <li>2 - otherObjectDigest - A hash of some other object type must be
-             passed. <code>otherObjectTypeID</code> must not be empty.</li>
-             </ul>
-             </p>
-            
-             @return The digest object type or -1 if no object digest info is set.
-        </member>
-        <member name="P:Org.BouncyCastle.X509.AttributeCertificateHolder.DigestAlgorithm">
-             Returns the other object type ID if an object digest info is used.
-            
-             @return The other object type ID or <code>null</code> if no object
-                     digest info is set.
-        </member>
-        <member name="P:Org.BouncyCastle.X509.AttributeCertificateHolder.OtherObjectTypeID">
-             Returns the digest algorithm ID if an object digest info is used.
-            
-             @return The digest algorithm ID or <code>null</code> if no object
-                     digest info is set.
-        </member>
-        <member name="P:Org.BouncyCastle.X509.AttributeCertificateHolder.SerialNumber">
-             Return the serial number associated with the issuer attached to this holder.
-            
-             @return the certificate serial number, null if no BaseCertificateID is set.
-        </member>
-        <member name="T:Org.BouncyCastle.X509.AttributeCertificateIssuer">
-            Carrying class for an attribute certificate issuer.
-        </member>
-        <member name="M:Org.BouncyCastle.X509.AttributeCertificateIssuer.#ctor(Org.BouncyCastle.Asn1.X509.AttCertIssuer)">
-             Set the issuer directly with the ASN.1 structure.
-            
-             @param issuer The issuer
-        </member>
-        <member name="M:Org.BouncyCastle.X509.AttributeCertificateIssuer.GetPrincipals">
-            <summary>Return any principal objects inside the attribute certificate issuer object.</summary>
-            <returns>An array of IPrincipal objects (usually X509Principal).</returns>
-        </member>
-        <member name="T:Org.BouncyCastle.X509.Extension.AuthorityKeyIdentifierStructure">
-            <remarks>A high level authority key identifier.</remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.Extension.AuthorityKeyIdentifierStructure.#ctor(Org.BouncyCastle.Asn1.Asn1OctetString)">
-             Constructor which will take the byte[] returned from getExtensionValue()
-            
-             @param encodedValue a DER octet encoded string with the extension structure in it.
-             @throws IOException on parsing errors.
-        </member>
-        <member name="M:Org.BouncyCastle.X509.Extension.AuthorityKeyIdentifierStructure.#ctor(Org.BouncyCastle.X509.X509Certificate)">
-             Create an AuthorityKeyIdentifier using the passed in certificate's public
-             key, issuer and serial number.
-            
-             @param certificate the certificate providing the information.
-             @throws CertificateParsingException if there is a problem processing the certificate
-        </member>
-        <member name="M:Org.BouncyCastle.X509.Extension.AuthorityKeyIdentifierStructure.#ctor(Org.BouncyCastle.Crypto.AsymmetricKeyParameter)">
-             Create an AuthorityKeyIdentifier using just the hash of the
-             public key.
-            
-             @param pubKey the key to generate the hash from.
-             @throws InvalidKeyException if there is a problem using the key.
-        </member>
-        <member name="T:Org.BouncyCastle.X509.Extension.SubjectKeyIdentifierStructure">
-            A high level subject key identifier.
-        </member>
-        <member name="M:Org.BouncyCastle.X509.Extension.SubjectKeyIdentifierStructure.#ctor(Org.BouncyCastle.Asn1.Asn1OctetString)">
-             Constructor which will take the byte[] returned from getExtensionValue()
-            
-             @param encodedValue a DER octet encoded string with the extension structure in it.
-             @throws IOException on parsing errors.
-        </member>
-        <member name="T:Org.BouncyCastle.X509.IX509AttributeCertificate">
-            <remarks>Interface for an X.509 Attribute Certificate.</remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.IX509AttributeCertificate.GetAttributes">
-            <summary>Return the attributes contained in the attribute block in the certificate.</summary>
-            <returns>An array of attributes.</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.IX509AttributeCertificate.GetAttributes(System.String)">
-            <summary>Return the attributes with the same type as the passed in oid.</summary>
-            <param name="oid">The object identifier we wish to match.</param>
-            <returns>An array of matched attributes, null if there is no match.</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.IX509AttributeCertificate.GetEncoded">
-            <summary>Return an ASN.1 encoded byte array representing the attribute certificate.</summary>
-            <returns>An ASN.1 encoded byte array.</returns>
-            <exception cref="T:System.IO.IOException">If the certificate cannot be encoded.</exception>
-        </member>
-        <member name="P:Org.BouncyCastle.X509.IX509AttributeCertificate.Version">
-            <summary>The version number for the certificate.</summary>
-        </member>
-        <member name="P:Org.BouncyCastle.X509.IX509AttributeCertificate.SerialNumber">
-            <summary>The serial number for the certificate.</summary>
-        </member>
-        <member name="P:Org.BouncyCastle.X509.IX509AttributeCertificate.NotBefore">
-            <summary>The UTC DateTime before which the certificate is not valid.</summary>
-        </member>
-        <member name="P:Org.BouncyCastle.X509.IX509AttributeCertificate.NotAfter">
-            <summary>The UTC DateTime after which the certificate is not valid.</summary>
-        </member>
-        <member name="P:Org.BouncyCastle.X509.IX509AttributeCertificate.Holder">
-            <summary>The holder of the certificate.</summary>
-        </member>
-        <member name="P:Org.BouncyCastle.X509.IX509AttributeCertificate.Issuer">
-            <summary>The issuer details for the certificate.</summary>
-        </member>
-        <member name="T:Org.BouncyCastle.X509.PrincipalUtilities">
-            <remarks>
-            A utility class that will extract X509Principal objects from X.509 certificates.
-            <p>
-            Use this in preference to trying to recreate a principal from a string, not all
-            DNs are what they should be, so it's best to leave them encoded where they
-            can be.</p>
-            </remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.PrincipalUtilities.GetIssuerX509Principal(Org.BouncyCastle.X509.X509Certificate)">
-            <summary>Return the issuer of the given cert as an X509Principal.</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.PrincipalUtilities.GetSubjectX509Principal(Org.BouncyCastle.X509.X509Certificate)">
-            <summary>Return the subject of the given cert as an X509Principal.</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.PrincipalUtilities.GetIssuerX509Principal(Org.BouncyCastle.X509.X509Crl)">
-            <summary>Return the issuer of the given CRL as an X509Principal.</summary>
-        </member>
-        <member name="T:Org.BouncyCastle.X509.Store.X509AttrCertStoreSelector">
-             This class is an <code>Selector</code> like implementation to select
-             attribute certificates from a given set of criteria.
-            
-             @see org.bouncycastle.x509.X509AttributeCertificate
-             @see org.bouncycastle.x509.X509Store
-        </member>
-        <member name="M:Org.BouncyCastle.X509.Store.X509AttrCertStoreSelector.Match(System.Object)">
-            <summary>
-            Decides if the given attribute certificate should be selected.
-            </summary>
-            <param name="obj">The attribute certificate to be checked.</param>
-            <returns><code>true</code> if the object matches this selector.</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.Store.X509AttrCertStoreSelector.AddTargetName(Org.BouncyCastle.Asn1.X509.GeneralName)">
-             Adds a target name criterion for the attribute certificate to the target
-             information extension criteria. The <code>X509AttributeCertificate</code>
-             must contain at least one of the specified target names.
-             <p>
-             Each attribute certificate may contain a target information extension
-             limiting the servers where this attribute certificate can be used. If
-             this extension is not present, the attribute certificate is not targeted
-             and may be accepted by any server.
-             </p>
-            
-             @param name The name as a GeneralName (not <code>null</code>)
-        </member>
-        <member name="M:Org.BouncyCastle.X509.Store.X509AttrCertStoreSelector.AddTargetName(System.Byte[])">
-             Adds a target name criterion for the attribute certificate to the target
-             information extension criteria. The <code>X509AttributeCertificate</code>
-             must contain at least one of the specified target names.
-             <p>
-             Each attribute certificate may contain a target information extension
-             limiting the servers where this attribute certificate can be used. If
-             this extension is not present, the attribute certificate is not targeted
-             and may be accepted by any server.
-             </p>
-            
-             @param name a byte array containing the name in ASN.1 DER encoded form of a GeneralName
-             @throws IOException if a parsing error occurs.
-        </member>
-        <member name="M:Org.BouncyCastle.X509.Store.X509AttrCertStoreSelector.SetTargetNames(System.Collections.IEnumerable)">
-            Adds a collection with target names criteria. If <code>null</code> is
-            given any will do.
-            <p>
-            The collection consists of either GeneralName objects or byte[] arrays representing
-            DER encoded GeneralName structures.
-            </p>
-            
-            @param names A collection of target names.
-            @throws IOException if a parsing error occurs.
-            @see #AddTargetName(byte[])
-            @see #AddTargetName(GeneralName)
-        </member>
-        <member name="M:Org.BouncyCastle.X509.Store.X509AttrCertStoreSelector.GetTargetNames">
-            Gets the target names. The collection consists of <code>List</code>s
-            made up of an <code>Integer</code> in the first entry and a DER encoded
-            byte array or a <code>String</code> in the second entry.
-            <p>The returned collection is immutable.</p>
-            
-            @return The collection of target names
-            @see #setTargetNames(Collection)
-        </member>
-        <member name="M:Org.BouncyCastle.X509.Store.X509AttrCertStoreSelector.AddTargetGroup(Org.BouncyCastle.Asn1.X509.GeneralName)">
-             Adds a target group criterion for the attribute certificate to the target
-             information extension criteria. The <code>X509AttributeCertificate</code>
-             must contain at least one of the specified target groups.
-             <p>
-             Each attribute certificate may contain a target information extension
-             limiting the servers where this attribute certificate can be used. If
-             this extension is not present, the attribute certificate is not targeted
-             and may be accepted by any server.
-             </p>
-            
-             @param group The group as GeneralName form (not <code>null</code>)
-        </member>
-        <member name="M:Org.BouncyCastle.X509.Store.X509AttrCertStoreSelector.AddTargetGroup(System.Byte[])">
-             Adds a target group criterion for the attribute certificate to the target
-             information extension criteria. The <code>X509AttributeCertificate</code>
-             must contain at least one of the specified target groups.
-             <p>
-             Each attribute certificate may contain a target information extension
-             limiting the servers where this attribute certificate can be used. If
-             this extension is not present, the attribute certificate is not targeted
-             and may be accepted by any server.
-             </p>
-            
-             @param name a byte array containing the group in ASN.1 DER encoded form of a GeneralName
-             @throws IOException if a parsing error occurs.
-        </member>
-        <member name="M:Org.BouncyCastle.X509.Store.X509AttrCertStoreSelector.SetTargetGroups(System.Collections.IEnumerable)">
-             Adds a collection with target groups criteria. If <code>null</code> is
-             given any will do.
-             <p>
-             The collection consists of <code>GeneralName</code> objects or <code>byte[]</code>
-             representing DER encoded GeneralNames.
-             </p>
-            
-             @param names A collection of target groups.
-             @throws IOException if a parsing error occurs.
-             @see #AddTargetGroup(byte[])
-             @see #AddTargetGroup(GeneralName)
-        </member>
-        <member name="M:Org.BouncyCastle.X509.Store.X509AttrCertStoreSelector.GetTargetGroups">
-             Gets the target groups. The collection consists of <code>List</code>s
-             made up of an <code>Integer</code> in the first entry and a DER encoded
-             byte array or a <code>String</code> in the second entry.
-             <p>The returned collection is immutable.</p>
-            
-             @return The collection of target groups.
-             @see #setTargetGroups(Collection)
-        </member>
-        <member name="P:Org.BouncyCastle.X509.Store.X509AttrCertStoreSelector.AttributeCert">
-            <summary>The attribute certificate which must be matched.</summary>
-            <remarks>If <c>null</c> is given, any will do.</remarks>
-        </member>
-        <member name="P:Org.BouncyCastle.X509.Store.X509AttrCertStoreSelector.AttributeCertificateValid">
-            <summary>The criteria for validity</summary>
-            <remarks>If <c>null</c> is given any will do.</remarks>
-        </member>
-        <member name="P:Org.BouncyCastle.X509.Store.X509AttrCertStoreSelector.Holder">
-            <summary>The holder.</summary>
-            <remarks>If <c>null</c> is given any will do.</remarks>
-        </member>
-        <member name="P:Org.BouncyCastle.X509.Store.X509AttrCertStoreSelector.Issuer">
-            <summary>The issuer.</summary>
-            <remarks>If <c>null</c> is given any will do.</remarks>
-        </member>
-        <member name="P:Org.BouncyCastle.X509.Store.X509AttrCertStoreSelector.SerialNumber">
-            <summary>The serial number.</summary>
-            <remarks>If <c>null</c> is given any will do.</remarks>
-        </member>
-        <member name="T:Org.BouncyCastle.X509.Store.X509CertPairStoreSelector">
-            <remarks>
-            This class is an <code>IX509Selector</code> implementation to select
-            certificate pairs, which are e.g. used for cross certificates. The set of
-            criteria is given from two <code>X509CertStoreSelector</code> objects,
-            each of which, if present, must match the respective component of a pair.
-            </remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.Store.X509CertPairStoreSelector.Match(System.Object)">
-            <summary>
-            Decides if the given certificate pair should be selected. If
-            <c>obj</c> is not a <code>X509CertificatePair</code>, this method
-            returns <code>false</code>.
-            </summary>
-            <param name="obj">The <code>X509CertificatePair</code> to be tested.</param>
-            <returns><code>true</code> if the object matches this selector.</returns>
-        </member>
-        <member name="P:Org.BouncyCastle.X509.Store.X509CertPairStoreSelector.CertPair">
-            <summary>The certificate pair which is used for testing on equality.</summary>
-        </member>
-        <member name="P:Org.BouncyCastle.X509.Store.X509CertPairStoreSelector.ForwardSelector">
-            <summary>The certificate selector for the forward part.</summary>
-        </member>
-        <member name="P:Org.BouncyCastle.X509.Store.X509CertPairStoreSelector.ReverseSelector">
-            <summary>The certificate selector for the reverse part.</summary>
-        </member>
-        <member name="T:Org.BouncyCastle.X509.Store.X509CollectionStore">
-            A simple collection backed store.
-        </member>
-        <member name="M:Org.BouncyCastle.X509.Store.X509CollectionStore.#ctor(System.Collections.ICollection)">
-             Basic constructor.
-            
-             @param collection - initial contents for the store, this is copied.
-        </member>
-        <member name="M:Org.BouncyCastle.X509.Store.X509CollectionStore.GetMatches(Org.BouncyCastle.X509.Store.IX509Selector)">
-             Return the matches in the collection for the passed in selector.
-            
-             @param selector the selector to match against.
-             @return a possibly empty collection of matching objects.
-        </member>
-        <member name="T:Org.BouncyCastle.X509.Store.X509CollectionStoreParameters">
-            <remarks>This class contains a collection for collection based <code>X509Store</code>s.</remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.Store.X509CollectionStoreParameters.#ctor(System.Collections.ICollection)">
-            <summary>
-            Constructor.
-            <p>
-            The collection is copied.
-            </p>
-            </summary>
-            <param name="collection">The collection containing X.509 object types.</param>
-            <exception cref="T:System.ArgumentNullException">If collection is null.</exception>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.Store.X509CollectionStoreParameters.GetCollection">
-            <summary>Returns a copy of the <code>ICollection</code>.</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.Store.X509CollectionStoreParameters.ToString">
-            <summary>Returns a formatted string describing the parameters.</summary>
-        </member>
-        <member name="P:Org.BouncyCastle.X509.Store.X509CrlStoreSelector.Issuers">
-            <summary>
-            An <code>ICollection</code> of <code>X509Name</code> objects
-            </summary>
-        </member>
-        <member name="P:Org.BouncyCastle.X509.Store.X509CrlStoreSelector.AttrCertChecking">
-             The attribute certificate being checked. This is not a criterion.
-             Rather, it is optional information that may help a {@link X509Store} find
-             CRLs that would be relevant when checking revocation for the specified
-             attribute certificate. If <code>null</code> is specified, then no such
-             optional information is provided.
-            
-             @param attrCert the <code>IX509AttributeCertificate</code> being checked (or
-                         <code>null</code>)
-             @see #getAttrCertificateChecking()
-        </member>
-        <member name="P:Org.BouncyCastle.X509.Store.X509CrlStoreSelector.CompleteCrlEnabled">
-             If <code>true</code> only complete CRLs are returned. Defaults to
-             <code>false</code>.
-            
-             @return <code>true</code> if only complete CRLs are returned.
-        </member>
-        <member name="P:Org.BouncyCastle.X509.Store.X509CrlStoreSelector.DeltaCrlIndicatorEnabled">
-             Returns if this selector must match CRLs with the delta CRL indicator
-             extension set. Defaults to <code>false</code>.
-            
-             @return Returns <code>true</code> if only CRLs with the delta CRL
-                     indicator extension are selected.
-        </member>
-        <member name="P:Org.BouncyCastle.X509.Store.X509CrlStoreSelector.IssuingDistributionPoint">
-             The issuing distribution point.
-             <p>
-             The issuing distribution point extension is a CRL extension which
-             identifies the scope and the distribution point of a CRL. The scope
-             contains among others information about revocation reasons contained in
-             the CRL. Delta CRLs and complete CRLs must have matching issuing
-             distribution points.</p>
-             <p>
-             The byte array is cloned to protect against subsequent modifications.</p>
-             <p>
-             You must also enable or disable this criteria with
-             {@link #setIssuingDistributionPointEnabled(bool)}.</p>
-            
-             @param issuingDistributionPoint The issuing distribution point to set.
-                                             This is the DER encoded OCTET STRING extension value.
-             @see #getIssuingDistributionPoint()
-        </member>
-        <member name="P:Org.BouncyCastle.X509.Store.X509CrlStoreSelector.IssuingDistributionPointEnabled">
-             Whether the issuing distribution point criteria should be applied.
-             Defaults to <code>false</code>.
-             <p>
-             You may also set the issuing distribution point criteria if not a missing
-             issuing distribution point should be assumed.</p>
-            
-             @return Returns if the issuing distribution point check is enabled.
-        </member>
-        <member name="P:Org.BouncyCastle.X509.Store.X509CrlStoreSelector.MaxBaseCrlNumber">
-             The maximum base CRL number. Defaults to <code>null</code>.
-            
-             @return Returns the maximum base CRL number.
-             @see #setMaxBaseCRLNumber(BigInteger)
-        </member>
-        <member name="T:Org.BouncyCastle.X509.SubjectPublicKeyInfoFactory">
-            <summary>
-            A factory to produce Public Key Info Objects.
-            </summary>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.SubjectPublicKeyInfoFactory.CreateSubjectPublicKeyInfo(Org.BouncyCastle.Crypto.AsymmetricKeyParameter)">
-            <summary>
-            Create a Subject Public Key Info object for a given public key.
-            </summary>
-            <param name="key">One of ElGammalPublicKeyParameters, DSAPublicKeyParameter, DHPublicKeyParameters, RsaKeyParameters or ECPublicKeyParameters</param>
-            <returns>A subject public key info object.</returns>
-            <exception cref="T:System.Exception">Throw exception if object provided is not one of the above.</exception>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509AttrCertParser.ReadAttrCert(System.Byte[])">
-            <summary>
-            Create loading data from byte array.
-            </summary>
-            <param name="input"></param>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509AttrCertParser.ReadAttrCerts(System.Byte[])">
-            <summary>
-            Create loading data from byte array.
-            </summary>
-            <param name="input"></param>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509AttrCertParser.ReadAttrCert(System.IO.Stream)">
-            Generates a certificate object and initializes it with the data
-            read from the input stream inStream.
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509AttrCertParser.ReadAttrCerts(System.IO.Stream)">
-            Returns a (possibly empty) collection view of the certificates
-            read from the given input stream inStream.
-        </member>
-        <member name="T:Org.BouncyCastle.X509.X509Attribute">
-            Class for carrying the values in an X.509 Attribute.
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509Attribute.#ctor(Org.BouncyCastle.Asn1.Asn1Encodable)">
-            @param at an object representing an attribute.
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509Attribute.#ctor(System.String,Org.BouncyCastle.Asn1.Asn1Encodable)">
-             Create an X.509 Attribute with the type given by the passed in oid and
-             the value represented by an ASN.1 Set containing value.
-            
-             @param oid type of the attribute
-             @param value value object to go into the atribute's value set.
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509Attribute.#ctor(System.String,Org.BouncyCastle.Asn1.Asn1EncodableVector)">
-             Create an X.59 Attribute with the type given by the passed in oid and the
-             value represented by an ASN.1 Set containing the objects in value.
-            
-             @param oid type of the attribute
-             @param value vector of values to go in the attribute's value set.
-        </member>
-        <member name="T:Org.BouncyCastle.X509.X509Certificate">
-            <summary>
-            An Object representing an X509 Certificate.
-            Has static methods for loading Certificates encoded in many forms that return X509Certificate Objects.
-            </summary>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509Certificate.IsValid(System.DateTime)">
-            <summary>
-            Return true if the nominated time is within the start and end times nominated on the certificate.
-            </summary>
-            <param name="time">The time to test validity against.</param>
-            <returns>True if certificate is valid for nominated time.</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509Certificate.CheckValidity">
-            <summary>
-            Checks if the current date is within certificate's validity period.
-            </summary>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509Certificate.CheckValidity(System.DateTime)">
-            <summary>
-            Checks if the given date is within certificate's validity period.
-            </summary>
-            <exception cref="T:Org.BouncyCastle.Security.Certificates.CertificateExpiredException">if the certificate is expired by given date</exception>
-            <exception cref="T:Org.BouncyCastle.Security.Certificates.CertificateNotYetValidException">if the certificate is not yet valid on given date</exception>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509Certificate.GetTbsCertificate">
-            <summary>
-            Return the Der encoded TbsCertificate data.
-            This is the certificate component less the signature.
-            To Get the whole certificate call the GetEncoded() member.
-            </summary>
-            <returns>A byte array containing the Der encoded Certificate component.</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509Certificate.GetSignature">
-            <summary>
-            The signature.
-            </summary>
-            <returns>A byte array containg the signature of the certificate.</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509Certificate.GetSigAlgParams">
-            <summary>
-            Get the signature algorithms parameters. (EG DSA Parameters)
-            </summary>
-            <returns>A byte array containing the Der encoded version of the parameters or null if there are none.</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509Certificate.GetKeyUsage">
-            <summary>
-            Get a key usage guidlines.
-            </summary>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509Certificate.GetPublicKey">
-            <summary>
-            Get the public key of the subject of the certificate.
-            </summary>
-            <returns>The public key parameters.</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509Certificate.GetEncoded">
-            <summary>
-            Return a Der encoded version of this certificate.
-            </summary>
-            <returns>A byte array.</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509Certificate.Verify(Org.BouncyCastle.Crypto.AsymmetricKeyParameter)">
-            <summary>
-            Verify the certificate's signature using the nominated public key.
-            </summary>
-            <param name="key">An appropriate public key parameter object, RsaPublicKeyParameters, DsaPublicKeyParameters or ECDsaPublicKeyParameters</param>
-            <returns>True if the signature is valid.</returns>
-            <exception cref="T:System.Exception">If key submitted is not of the above nominated types.</exception>
-        </member>
-        <member name="P:Org.BouncyCastle.X509.X509Certificate.IsValidNow">
-            <summary>
-            Return true if the current time is within the start and end times nominated on the certificate.
-            </summary>
-            <returns>true id certificate is valid for the current time.</returns>
-        </member>
-        <member name="P:Org.BouncyCastle.X509.X509Certificate.Version">
-            <summary>
-            Return the certificate's version.
-            </summary>
-            <returns>An integer whose value Equals the version of the cerficate.</returns>
-        </member>
-        <member name="P:Org.BouncyCastle.X509.X509Certificate.SerialNumber">
-            <summary>
-            Return a <see cref="T:Org.BouncyCastle.Math.BigInteger">BigInteger</see> containing the serial number.
-            </summary>
-            <returns>The Serial number.</returns>
-        </member>
-        <member name="P:Org.BouncyCastle.X509.X509Certificate.IssuerDN">
-            <summary>
-            Get the Issuer Distinguished Name. (Who signed the certificate.)
-            </summary>
-            <returns>And X509Object containing name and value pairs.</returns>
-        </member>
-        <member name="P:Org.BouncyCastle.X509.X509Certificate.SubjectDN">
-            <summary>
-            Get the subject of this certificate.
-            </summary>
-            <returns>An X509Name object containing name and value pairs.</returns>
-        </member>
-        <member name="P:Org.BouncyCastle.X509.X509Certificate.NotBefore">
-            <summary>
-            The time that this certificate is valid from.
-            </summary>
-            <returns>A DateTime object representing that time in the local time zone.</returns>
-        </member>
-        <member name="P:Org.BouncyCastle.X509.X509Certificate.NotAfter">
-            <summary>
-            The time that this certificate is valid up to.
-            </summary>
-            <returns>A DateTime object representing that time in the local time zone.</returns>
-        </member>
-        <member name="P:Org.BouncyCastle.X509.X509Certificate.SigAlgName">
-            <summary>
-            A meaningful version of the Signature Algorithm. (EG SHA1WITHRSA)
-            </summary>
-            <returns>A sting representing the signature algorithm.</returns>
-        </member>
-        <member name="P:Org.BouncyCastle.X509.X509Certificate.SigAlgOid">
-            <summary>
-            Get the Signature Algorithms Object ID.
-            </summary>
-            <returns>A string containg a '.' separated object id.</returns>
-        </member>
-        <member name="P:Org.BouncyCastle.X509.X509Certificate.IssuerUniqueID">
-            <summary>
-            Get the issuers UID.
-            </summary>
-            <returns>A DerBitString.</returns>
-        </member>
-        <member name="P:Org.BouncyCastle.X509.X509Certificate.SubjectUniqueID">
-            <summary>
-            Get the subjects UID.
-            </summary>
-            <returns>A DerBitString.</returns>
-        </member>
-        <member name="T:Org.BouncyCastle.X509.X509CertificatePair">
-            <remarks>
-            This class contains a cross certificate pair. Cross certificates pairs may
-            contain two cross signed certificates from two CAs. A certificate from the
-            other CA to this CA is contained in the forward certificate, the certificate
-            from this CA to the other CA is contained in the reverse certificate.
-            </remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509CertificatePair.#ctor(Org.BouncyCastle.X509.X509Certificate,Org.BouncyCastle.X509.X509Certificate)">
-            <summary>Constructor</summary>
-            <param name="forward">Certificate from the other CA to this CA.</param>
-            <param name="reverse">Certificate from this CA to the other CA.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509CertificatePair.#ctor(Org.BouncyCastle.Asn1.X509.CertificatePair)">
-            <summary>Constructor from a ASN.1 CertificatePair structure.</summary>
-            <param name="pair">The <c>CertificatePair</c> ASN.1 object.</param>
-        </member>
-        <member name="P:Org.BouncyCastle.X509.X509CertificatePair.Forward">
-            <summary>Returns the certificate from the other CA to this CA.</summary>
-        </member>
-        <member name="P:Org.BouncyCastle.X509.X509CertificatePair.Reverse">
-            <summary>Returns the certificate from this CA to the other CA.</summary>
-        </member>
-        <member name="T:Org.BouncyCastle.X509.X509CertificateParser">
-            class for dealing with X509 certificates.
-            <p>
-            At the moment this will deal with "-----BEGIN CERTIFICATE-----" to "-----END CERTIFICATE-----"
-            base 64 encoded certs, as well as the BER binaries of certificates and some classes of PKCS#7
-            objects.</p>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509CertificateParser.ReadCertificate(System.Byte[])">
-            <summary>
-            Create loading data from byte array.
-            </summary>
-            <param name="input"></param>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509CertificateParser.ReadCertificates(System.Byte[])">
-            <summary>
-            Create loading data from byte array.
-            </summary>
-            <param name="input"></param>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509CertificateParser.ReadCertificate(System.IO.Stream)">
-            Generates a certificate object and initializes it with the data
-            read from the input stream inStream.
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509CertificateParser.ReadCertificates(System.IO.Stream)">
-            Returns a (possibly empty) collection view of the certificates
-            read from the given input stream inStream.
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509CertPairParser.ReadCertPair(System.Byte[])">
-            <summary>
-            Create loading data from byte array.
-            </summary>
-            <param name="input"></param>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509CertPairParser.ReadCertPairs(System.Byte[])">
-            <summary>
-            Create loading data from byte array.
-            </summary>
-            <param name="input"></param>
-        </member>
-        <member name="T:Org.BouncyCastle.X509.X509Crl">
-             The following extensions are listed in RFC 2459 as relevant to CRLs
-            
-             Authority Key Identifier
-             Issuer Alternative Name
-             CRL Number
-             Delta CRL Indicator (critical)
-             Issuing Distribution Point (critical)
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509Crl.ToString">
-             Returns a string representation of this CRL.
-            
-             @return a string representation of this CRL.
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509Crl.IsRevoked(Org.BouncyCastle.X509.X509Certificate)">
-             Checks whether the given certificate is on this CRL.
-            
-             @param cert the certificate to check for.
-             @return true if the given certificate is on this CRL,
-             false otherwise.
-        </member>
-        <member name="T:Org.BouncyCastle.X509.X509CrlEntry">
-             The following extensions are listed in RFC 2459 as relevant to CRL Entries
-            
-             ReasonCode Hode Instruction Code Invalidity Date Certificate Issuer
-             (critical)
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509CrlEntry.#ctor(Org.BouncyCastle.Asn1.X509.CrlEntry,System.Boolean,Org.BouncyCastle.Asn1.X509.X509Name)">
-             Constructor for CRLEntries of indirect CRLs. If <code>isIndirect</code>
-             is <code>false</code> {@link #getCertificateIssuer()} will always
-             return <code>null</code>, <code>previousCertificateIssuer</code> is
-             ignored. If this <code>isIndirect</code> is specified and this CrlEntry
-             has no certificate issuer CRL entry extension
-             <code>previousCertificateIssuer</code> is returned by
-             {@link #getCertificateIssuer()}.
-            
-             @param c
-                        TbsCertificateList.CrlEntry object.
-             @param isIndirect
-                        <code>true</code> if the corresponding CRL is a indirect
-                        CRL.
-             @param previousCertificateIssuer
-                        Certificate issuer of the previous CrlEntry.
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509CrlParser.ReadCrl(System.Byte[])">
-            <summary>
-            Create loading data from byte array.
-            </summary>
-            <param name="input"></param>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509CrlParser.ReadCrls(System.Byte[])">
-            <summary>
-            Create loading data from byte array.
-            </summary>
-            <param name="input"></param>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509CrlParser.ReadCrl(System.IO.Stream)">
-            Generates a certificate revocation list (CRL) object and initializes
-            it with the data read from the input stream inStream.
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509CrlParser.ReadCrls(System.IO.Stream)">
-             Returns a (possibly empty) collection view of the CRLs read from
-             the given input stream inStream.
-            
-             The inStream may contain a sequence of DER-encoded CRLs, or
-             a PKCS#7 CRL set.  This is a PKCS#7 SignedData object, with the
-             only significant field being crls.  In particular the signature
-             and the contents are ignored.
-        </member>
-        <member name="T:Org.BouncyCastle.X509.X509KeyUsage">
-             A holding class for constructing an X509 Key Usage extension.
-            
-             <pre>
-                id-ce-keyUsage OBJECT IDENTIFIER ::=  { id-ce 15 }
-            
-                KeyUsage ::= BIT STRING {
-                     digitalSignature        (0),
-                     nonRepudiation          (1),
-                     keyEncipherment         (2),
-                     dataEncipherment        (3),
-                     keyAgreement            (4),
-                     keyCertSign             (5),
-                     cRLSign                 (6),
-                     encipherOnly            (7),
-                     decipherOnly            (8) }
-             </pre>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509KeyUsage.#ctor(System.Int32)">
-             Basic constructor.
-            
-             @param usage - the bitwise OR of the Key Usage flags giving the
-             allowed uses for the key.
-             e.g. (X509KeyUsage.keyEncipherment | X509KeyUsage.dataEncipherment)
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509SignatureUtilities.GetDigestAlgName(Org.BouncyCastle.Asn1.DerObjectIdentifier)">
-            Return the digest algorithm using one of the standard JCA string
-            representations rather than the algorithm identifier (if possible).
-        </member>
-        <member name="T:Org.BouncyCastle.X509.X509V1CertificateGenerator">
-            <summary>
-            Class to Generate X509V1 Certificates.
-            </summary>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509V1CertificateGenerator.#ctor">
-            <summary>
-            Default Constructor.
-            </summary>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509V1CertificateGenerator.Reset">
-            <summary>
-            Reset the generator.
-            </summary>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509V1CertificateGenerator.SetSerialNumber(Org.BouncyCastle.Math.BigInteger)">
-            <summary>
-            Set the certificate's serial number.
-            </summary>
-            <remarks>Make serial numbers long, if you have no serial number policy make sure the number is at least 16 bytes of secure random data.
-            You will be surprised how ugly a serial number collision can get.</remarks>
-            <param name="serialNumber">The serial number.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509V1CertificateGenerator.SetIssuerDN(Org.BouncyCastle.Asn1.X509.X509Name)">
-            <summary>
-            Set the issuer distinguished name.
-            The issuer is the entity whose private key is used to sign the certificate.
-            </summary>
-            <param name="issuer">The issuers DN.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509V1CertificateGenerator.SetNotBefore(System.DateTime)">
-            <summary>
-            Set the date that this certificate is to be valid from.
-            </summary>
-            <param name="date"/>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509V1CertificateGenerator.SetNotAfter(System.DateTime)">
-            <summary>
-            Set the date after which this certificate will no longer be valid.
-            </summary>
-            <param name="date"/>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509V1CertificateGenerator.SetSubjectDN(Org.BouncyCastle.Asn1.X509.X509Name)">
-            <summary>
-            Set the subject distinguished name.
-            The subject describes the entity associated with the public key.
-            </summary>
-            <param name="subject"/>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509V1CertificateGenerator.SetPublicKey(Org.BouncyCastle.Crypto.AsymmetricKeyParameter)">
-            <summary>
-            Set the public key that this certificate identifies.
-            </summary>
-            <param name="publicKey"/>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509V1CertificateGenerator.SetSignatureAlgorithm(System.String)">
-            <summary>
-            Set the signature algorithm that will be used to sign this certificate.
-            This can be either a name or an OID, names are treated as case insensitive.
-            </summary>
-            <param name="signatureAlgorithm">string representation of the algorithm name</param>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509V1CertificateGenerator.Generate(Org.BouncyCastle.Crypto.AsymmetricKeyParameter)">
-            <summary>
-            Generate a new X509Certificate.
-            </summary>
-            <param name="privateKey">The private key of the issuer used to sign this certificate.</param>
-            <returns>An X509Certificate.</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509V1CertificateGenerator.Generate(Org.BouncyCastle.Crypto.AsymmetricKeyParameter,Org.BouncyCastle.Security.SecureRandom)">
-            <summary>
-            Generate a new X509Certificate specifying a SecureRandom instance that you would like to use.
-            </summary>
-            <param name="privateKey">The private key of the issuer used to sign this certificate.</param>
-            <param name="random">The Secure Random you want to use.</param>
-            <returns>An X509Certificate.</returns>
-        </member>
-        <member name="P:Org.BouncyCastle.X509.X509V1CertificateGenerator.SignatureAlgNames">
-            <summary>
-            Allows enumeration of the signature names supported by the generator.
-            </summary>
-        </member>
-        <member name="T:Org.BouncyCastle.X509.X509V2AttributeCertificate">
-            <summary>An implementation of a version 2 X.509 Attribute Certificate.</summary>
-        </member>
-        <member name="T:Org.BouncyCastle.X509.X509V2AttributeCertificateGenerator">
-            <remarks>Class to produce an X.509 Version 2 AttributeCertificate.</remarks>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509V2AttributeCertificateGenerator.Reset">
-            <summary>Reset the generator</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509V2AttributeCertificateGenerator.SetHolder(Org.BouncyCastle.X509.AttributeCertificateHolder)">
-            <summary>Set the Holder of this Attribute Certificate.</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509V2AttributeCertificateGenerator.SetIssuer(Org.BouncyCastle.X509.AttributeCertificateIssuer)">
-            <summary>Set the issuer.</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509V2AttributeCertificateGenerator.SetSerialNumber(Org.BouncyCastle.Math.BigInteger)">
-            <summary>Set the serial number for the certificate.</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509V2AttributeCertificateGenerator.SetSignatureAlgorithm(System.String)">
-            <summary>
-            Set the signature algorithm. This can be either a name or an OID, names
-            are treated as case insensitive.
-            </summary>
-            <param name="signatureAlgorithm">The algorithm name.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509V2AttributeCertificateGenerator.AddAttribute(Org.BouncyCastle.X509.X509Attribute)">
-            <summary>Add an attribute.</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509V2AttributeCertificateGenerator.AddExtension(System.String,System.Boolean,Org.BouncyCastle.Asn1.Asn1Encodable)">
-            <summary>Add a given extension field for the standard extensions tag.</summary>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509V2AttributeCertificateGenerator.AddExtension(System.String,System.Boolean,System.Byte[])">
-            <summary>
-            Add a given extension field for the standard extensions tag.
-            The value parameter becomes the contents of the octet string associated
-            with the extension.
-            </summary>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509V2AttributeCertificateGenerator.Generate(Org.BouncyCastle.Crypto.AsymmetricKeyParameter)">
-            <summary>
-            Generate an X509 certificate, based on the current issuer and subject.
-            </summary>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509V2AttributeCertificateGenerator.Generate(Org.BouncyCastle.Crypto.AsymmetricKeyParameter,Org.BouncyCastle.Security.SecureRandom)">
-            <summary>
-            Generate an X509 certificate, based on the current issuer and subject,
-            using the supplied source of randomness, if required.
-            </summary>
-        </member>
-        <member name="P:Org.BouncyCastle.X509.X509V2AttributeCertificateGenerator.SignatureAlgNames">
-            <summary>
-            Allows enumeration of the signature names supported by the generator.
-            </summary>
-        </member>
-        <member name="T:Org.BouncyCastle.X509.X509V2CrlGenerator">
-            class to produce an X.509 Version 2 CRL.
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509V2CrlGenerator.Reset">
-            reset the generator
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509V2CrlGenerator.SetIssuerDN(Org.BouncyCastle.Asn1.X509.X509Name)">
-            Set the issuer distinguished name - the issuer is the entity whose private key is used to sign the
-            certificate.
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509V2CrlGenerator.AddCrlEntry(Org.BouncyCastle.Math.BigInteger,System.DateTime,System.Int32)">
-             Reason being as indicated by CrlReason, i.e. CrlReason.KeyCompromise
-             or 0 if CrlReason is not to be used
-            
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509V2CrlGenerator.AddCrlEntry(Org.BouncyCastle.Math.BigInteger,System.DateTime,System.Int32,System.DateTime)">
-             Add a CRL entry with an Invalidity Date extension as well as a CrlReason extension.
-             Reason being as indicated by CrlReason, i.e. CrlReason.KeyCompromise
-             or 0 if CrlReason is not to be used
-            
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509V2CrlGenerator.AddCrlEntry(Org.BouncyCastle.Math.BigInteger,System.DateTime,Org.BouncyCastle.Asn1.X509.X509Extensions)">
-             Add a CRL entry with extensions.
-            
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509V2CrlGenerator.AddCrl(Org.BouncyCastle.X509.X509Crl)">
-             Add the CRLEntry objects contained in a previous CRL.
-            
-             @param other the X509Crl to source the other entries from.
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509V2CrlGenerator.SetSignatureAlgorithm(System.String)">
-             Set the signature algorithm. This can be either a name or an oid, names
-             are treated as case insensitive.
-            
-             @param signatureAlgorithm string representation of the algorithm name.
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509V2CrlGenerator.AddExtension(System.String,System.Boolean,Org.BouncyCastle.Asn1.Asn1Encodable)">
-            add a given extension field for the standard extensions tag (tag 0)
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509V2CrlGenerator.AddExtension(Org.BouncyCastle.Asn1.DerObjectIdentifier,System.Boolean,Org.BouncyCastle.Asn1.Asn1Encodable)">
-            add a given extension field for the standard extensions tag (tag 0)
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509V2CrlGenerator.AddExtension(System.String,System.Boolean,System.Byte[])">
-            add a given extension field for the standard extensions tag (tag 0)
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509V2CrlGenerator.AddExtension(Org.BouncyCastle.Asn1.DerObjectIdentifier,System.Boolean,System.Byte[])">
-            add a given extension field for the standard extensions tag (tag 0)
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509V2CrlGenerator.Generate(Org.BouncyCastle.Crypto.AsymmetricKeyParameter)">
-            <summary>Generate an X509 CRL, based on the current issuer and subject.</summary>
-            <param name="privateKey">The key used for signing.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509V2CrlGenerator.Generate(Org.BouncyCastle.Crypto.AsymmetricKeyParameter,Org.BouncyCastle.Security.SecureRandom)">
-            <summary>Generate an X509 CRL, based on the current issuer and subject.</summary>
-            <param name="privateKey">The key used for signing.</param>
-            <param name="random">A user-defined source of randomness.</param>
-        </member>
-        <member name="P:Org.BouncyCastle.X509.X509V2CrlGenerator.SignatureAlgNames">
-            <summary>
-            Allows enumeration of the signature names supported by the generator.
-            </summary>
-        </member>
-        <member name="T:Org.BouncyCastle.X509.X509V3CertificateGenerator">
-            <summary>
-            A class to Generate Version 3 X509Certificates.
-            </summary>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509V3CertificateGenerator.Reset">
-            <summary>
-            Reset the Generator.
-            </summary>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509V3CertificateGenerator.SetSerialNumber(Org.BouncyCastle.Math.BigInteger)">
-            <summary>
-            Set the certificate's serial number.
-            </summary>
-            <remarks>Make serial numbers long, if you have no serial number policy make sure the number is at least 16 bytes of secure random data.
-            You will be surprised how ugly a serial number collision can Get.</remarks>
-            <param name="serialNumber">The serial number.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509V3CertificateGenerator.SetIssuerDN(Org.BouncyCastle.Asn1.X509.X509Name)">
-            <summary>
-            Set the distinguished name of the issuer.
-            The issuer is the entity which is signing the certificate.
-            </summary>
-            <param name="issuer">The issuer's DN.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509V3CertificateGenerator.SetNotBefore(System.DateTime)">
-            <summary>
-            Set the date that this certificate is to be valid from.
-            </summary>
-            <param name="date"/>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509V3CertificateGenerator.SetNotAfter(System.DateTime)">
-            <summary>
-            Set the date after which this certificate will no longer be valid.
-            </summary>
-            <param name="date"/>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509V3CertificateGenerator.SetSubjectDN(Org.BouncyCastle.Asn1.X509.X509Name)">
-            <summary>
-            Set the DN of the entity that this certificate is about.
-            </summary>
-            <param name="subject"/>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509V3CertificateGenerator.SetPublicKey(Org.BouncyCastle.Crypto.AsymmetricKeyParameter)">
-            <summary>
-            Set the public key that this certificate identifies.
-            </summary>
-            <param name="publicKey"/>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509V3CertificateGenerator.SetSignatureAlgorithm(System.String)">
-            <summary>
-            Set the signature algorithm that will be used to sign this certificate.
-            </summary>
-            <param name="signatureAlgorithm"/>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509V3CertificateGenerator.SetSubjectUniqueID(System.Boolean[])">
-            <summary>
-            Set the subject unique ID - note: it is very rare that it is correct to do this.
-            </summary>
-            <param name="uniqueID"/>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509V3CertificateGenerator.SetIssuerUniqueID(System.Boolean[])">
-            <summary>
-            Set the issuer unique ID - note: it is very rare that it is correct to do this.
-            </summary>
-            <param name="uniqueID"/>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509V3CertificateGenerator.AddExtension(System.String,System.Boolean,Org.BouncyCastle.Asn1.Asn1Encodable)">
-            <summary>
-            Add a given extension field for the standard extensions tag (tag 3).
-            </summary>
-            <param name="oid">string containing a dotted decimal Object Identifier.</param>
-            <param name="critical">Is it critical.</param>
-            <param name="extensionValue">The value.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509V3CertificateGenerator.AddExtension(Org.BouncyCastle.Asn1.DerObjectIdentifier,System.Boolean,Org.BouncyCastle.Asn1.Asn1Encodable)">
-            <summary>
-            Add an extension to this certificate.
-            </summary>
-            <param name="oid">Its Object Identifier.</param>
-            <param name="critical">Is it critical.</param>
-            <param name="extensionValue">The value.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509V3CertificateGenerator.AddExtension(System.String,System.Boolean,System.Byte[])">
-            <summary>
-            Add an extension using a string with a dotted decimal OID.
-            </summary>
-            <param name="oid">string containing a dotted decimal Object Identifier.</param>
-            <param name="critical">Is it critical.</param>
-            <param name="extensionValue">byte[] containing the value of this extension.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509V3CertificateGenerator.AddExtension(Org.BouncyCastle.Asn1.DerObjectIdentifier,System.Boolean,System.Byte[])">
-            <summary>
-            Add an extension to this certificate.
-            </summary>
-            <param name="oid">Its Object Identifier.</param>
-            <param name="critical">Is it critical.</param>
-            <param name="extensionValue">byte[] containing the value of this extension.</param>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509V3CertificateGenerator.CopyAndAddExtension(System.String,System.Boolean,Org.BouncyCastle.X509.X509Certificate)">
-            <summary>
-            Add a given extension field for the standard extensions tag (tag 3),
-            copying the extension value from another certificate.
-            </summary>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509V3CertificateGenerator.CopyAndAddExtension(Org.BouncyCastle.Asn1.DerObjectIdentifier,System.Boolean,Org.BouncyCastle.X509.X509Certificate)">
-            add a given extension field for the standard extensions tag (tag 3)
-            copying the extension value from another certificate.
-            @throws CertificateParsingException if the extension cannot be extracted.
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509V3CertificateGenerator.Generate(Org.BouncyCastle.Crypto.AsymmetricKeyParameter)">
-            <summary>
-            Generate an X509Certificate.
-            </summary>
-            <param name="privateKey">The private key of the issuer that is signing this certificate.</param>
-            <returns>An X509Certificate.</returns>
-        </member>
-        <member name="M:Org.BouncyCastle.X509.X509V3CertificateGenerator.Generate(Org.BouncyCastle.Crypto.AsymmetricKeyParameter,Org.BouncyCastle.Security.SecureRandom)">
-            <summary>
-            Generate an X509Certificate using your own SecureRandom.
-            </summary>
-            <param name="privateKey">The private key of the issuer that is signing this certificate.</param>
-            <param name="random">You Secure Random instance.</param>
-            <returns>An X509Certificate.</returns>
-        </member>
-        <member name="P:Org.BouncyCastle.X509.X509V3CertificateGenerator.SignatureAlgNames">
-            <summary>
-            Allows enumeration of the signature names supported by the generator.
-            </summary>
-        </member>
-    </members>
-</doc>
diff --git a/crypto/src/asn1/DerUnknownTag.cs b/crypto/src/asn1/DerUnknownTag.cs
deleted file mode 100644
index 1e0e61495..000000000
--- a/crypto/src/asn1/DerUnknownTag.cs
+++ /dev/null
@@ -1,80 +0,0 @@
-using System;
-
-using Org.BouncyCastle.Utilities;
-
-namespace Org.BouncyCastle.Asn1
-{
-    /**
-     * We insert one of these when we find a tag we don't recognise.
-     */
-    public class DerUnknownTag
-        : Asn1Object
-    {
-		private readonly bool	isConstructed;
-        private readonly int	tag;
-        private readonly byte[]	data;
-
-        /**
-         * @param tag the tag value.
-         * @param data the contents octets.
-         */
-        public DerUnknownTag(
-            int		tag,
-            byte[]	data)
-			: this(false, tag, data)
-        {
-        }
-
-		public DerUnknownTag(
-			bool	isConstructed,
-			int		tag,
-			byte[]	data)
-		{
-			if (data == null)
-				throw new ArgumentNullException("data");
-
-			this.isConstructed = isConstructed;
-			this.tag = tag;
-			this.data = data;
-		}
-
-		public bool IsConstructed
-		{
-			get { return isConstructed; }
-		}
-
-		public int Tag
-        {
-			get { return tag; }
-        }
-
-		public byte[] GetData()
-        {
-            return data;
-        }
-
-        internal override void Encode(
-            DerOutputStream derOut)
-        {
-			derOut.WriteEncoded(isConstructed ? Asn1Tags.Constructed : 0, tag, data);
-        }
-
-		protected override bool Asn1Equals(
-			Asn1Object asn1Object)
-		{
-			DerUnknownTag other = asn1Object as DerUnknownTag;
-
-			if (other == null)
-				return false;
-
-			return this.isConstructed == other.isConstructed
-				&& this.tag == other.tag
-				&& Arrays.AreEqual(this.data, other.data);
-        }
-
-		protected override int Asn1GetHashCode()
-		{
-			return isConstructed.GetHashCode() ^ tag.GetHashCode() ^ Arrays.GetHashCode(data);
-        }
-    }
-}
diff --git a/crypto/src/cms/NullOutputStream.cs b/crypto/src/cms/NullOutputStream.cs
deleted file mode 100644
index ed937bdeb..000000000
--- a/crypto/src/cms/NullOutputStream.cs
+++ /dev/null
@@ -1,20 +0,0 @@
-using System;
-
-using Org.BouncyCastle.Utilities.IO;
-
-namespace Org.BouncyCastle.Cms
-{
-	internal class NullOutputStream
-		: BaseOutputStream
-	{
-		public override void WriteByte(byte b)
-		{
-			// do nothing
-		}
-
-		public override void Write(byte[] buffer, int offset, int count)
-		{
-			// do nothing
-		}
-	}
-}
diff --git a/crypto/src/crypto/tls/AlwaysValidVerifyer.cs b/crypto/src/crypto/tls/AlwaysValidVerifyer.cs
deleted file mode 100644
index e26c6fc3f..000000000
--- a/crypto/src/crypto/tls/AlwaysValidVerifyer.cs
+++ /dev/null
@@ -1,24 +0,0 @@
-using System;
-
-using Org.BouncyCastle.Asn1.X509;
-
-namespace Org.BouncyCastle.Crypto.Tls
-{
-	/// <remarks>
-	/// A certificate verifyer, that will always return true.
-	/// <pre>
-	/// DO NOT USE THIS FILE UNLESS YOU KNOW EXACTLY WHAT YOU ARE DOING.
-	/// </pre>
-	/// </remarks>
-	[Obsolete("Perform certificate verification in TlsAuthentication implementation")]
-	public class AlwaysValidVerifyer
-		: ICertificateVerifyer
-	{
-		/// <summary>Return true.</summary>
-		public bool IsValid(
-			X509CertificateStructure[] certs)
-		{
-			return true;
-		}
-	}
-}
diff --git a/crypto/src/crypto/tls/DigestAlgorithm.cs b/crypto/src/crypto/tls/DigestAlgorithm.cs
deleted file mode 100644
index cede6b7f8..000000000
--- a/crypto/src/crypto/tls/DigestAlgorithm.cs
+++ /dev/null
@@ -1,21 +0,0 @@
-using System;
-
-namespace Org.BouncyCastle.Crypto.Tls
-{
-	public enum DigestAlgorithm
-	{
-		/*
-		 * Note that the values here are implementation-specific and arbitrary.
-		 * It is recommended not to depend on the particular values (e.g. serialization).
-		 */
-		NULL,
-		MD5,
-		SHA,
-
-		/*
-		 * RFC 5289
-		 */
-		SHA256,
-		SHA384,
-	}
-}
diff --git a/crypto/src/crypto/tls/ICertificateVerifyer.cs b/crypto/src/crypto/tls/ICertificateVerifyer.cs
deleted file mode 100644
index df5ea51d7..000000000
--- a/crypto/src/crypto/tls/ICertificateVerifyer.cs
+++ /dev/null
@@ -1,18 +0,0 @@
-using System;
-
-using Org.BouncyCastle.Asn1.X509;
-
-namespace Org.BouncyCastle.Crypto.Tls
-{
-	/// <remarks>
-	/// This should be implemented by any class which can find out, if a given
-	/// certificate chain is being accepted by an client.
-	/// </remarks>
-	[Obsolete("Perform certificate verification in TlsAuthentication implementation")]
-	public interface ICertificateVerifyer
-	{
-		/// <param name="certs">The certs, which are part of the chain.</param>
-		/// <returns>True, if the chain is accepted, false otherwise</returns>
-		bool IsValid(X509CertificateStructure[] certs);
-	}
-}
diff --git a/crypto/src/crypto/tls/LegacyTlsAuthentication.cs b/crypto/src/crypto/tls/LegacyTlsAuthentication.cs
deleted file mode 100644
index 5da9576af..000000000
--- a/crypto/src/crypto/tls/LegacyTlsAuthentication.cs
+++ /dev/null
@@ -1,32 +0,0 @@
-#if FALSE
-using System;
-
-namespace Org.BouncyCastle.Crypto.Tls
-{
-	/// <summary>
-	/// A temporary class to wrap old CertificateVerifyer stuff for new TlsAuthentication.
-	/// </summary>
-	[Obsolete]
-	public class LegacyTlsAuthentication
-		: TlsAuthentication
-	{
-		protected ICertificateVerifyer verifyer;
-
-		public LegacyTlsAuthentication(ICertificateVerifyer verifyer)
-		{
-			this.verifyer = verifyer;
-		}
-
-		public virtual void NotifyServerCertificate(Certificate serverCertificate)
-		{
-			if (!this.verifyer.IsValid(serverCertificate.GetCerts()))
-				throw new TlsFatalAlert(AlertDescription.user_canceled);
-		}
-
-		public virtual TlsCredentials GetClientCredentials(CertificateRequest certificateRequest)
-		{
-			return null;
-		}
-	}
-}
-#endif
\ No newline at end of file
diff --git a/crypto/src/crypto/tls/LegacyTlsClient.cs b/crypto/src/crypto/tls/LegacyTlsClient.cs
deleted file mode 100644
index 98a8bcbfc..000000000
--- a/crypto/src/crypto/tls/LegacyTlsClient.cs
+++ /dev/null
@@ -1,28 +0,0 @@
-#if FALSE
-using System;
-
-namespace Org.BouncyCastle.Crypto.Tls
-{
-	/// <summary>
-	/// A temporary class to use LegacyTlsAuthentication 
-	/// </summary>
-	[Obsolete]
-	public class LegacyTlsClient
-		: DefaultTlsClient
-	{
-		[Obsolete]
-		protected ICertificateVerifyer verifyer;
-
-		[Obsolete]
-		public LegacyTlsClient(ICertificateVerifyer verifyer)
-		{
-			this.verifyer = verifyer;
-		}
-
-		public override TlsAuthentication GetAuthentication()
-		{
-			return new LegacyTlsAuthentication(verifyer);
-		}
-	}
-}
-#endif
\ No newline at end of file
diff --git a/crypto/src/crypto/tls/TlsException.cs b/crypto/src/crypto/tls/TlsException.cs
deleted file mode 100644
index fa3e73273..000000000
--- a/crypto/src/crypto/tls/TlsException.cs
+++ /dev/null
@@ -1,11 +0,0 @@
-using System;
-
-namespace Org.BouncyCastle.Crypto.Tls
-{
-	public class TlsException : Exception
-	{
-		public TlsException() : base() { }
-		public TlsException(string message) : base(message) { }
-		public TlsException(string message, Exception exception) : base(message, exception) { }
-	}
-}
diff --git a/crypto/src/math/ec/IntArray.cs b/crypto/src/math/ec/IntArray.cs
deleted file mode 100644
index 1089966a8..000000000
--- a/crypto/src/math/ec/IntArray.cs
+++ /dev/null
@@ -1,485 +0,0 @@
-using System;
-using System.Text;
-
-namespace Org.BouncyCastle.Math.EC
-{
-	internal class IntArray
-    {
-        // TODO make m fixed for the IntArray, and hence compute T once and for all
-
-		// TODO Use uint's internally?
-		private int[] m_ints;
-
-		public IntArray(int intLen)
-		{
-			m_ints = new int[intLen];
-		}
-
-		private IntArray(int[] ints)
-		{
-			m_ints = ints;
-		}
-
-		public IntArray(BigInteger bigInt)
-			: this(bigInt, 0)
-		{
-		}
-
-		public IntArray(BigInteger bigInt, int minIntLen)
-		{
-			if (bigInt.SignValue == -1)
-				throw new ArgumentException("Only positive Integers allowed", "bigint");
-
-			if (bigInt.SignValue == 0)
-			{
-				m_ints = new int[] { 0 };
-				return;
-			}
-
-			byte[] barr = bigInt.ToByteArrayUnsigned();
-			int barrLen = barr.Length;
-
-			int intLen = (barrLen + 3) / 4;
-			m_ints = new int[System.Math.Max(intLen, minIntLen)];
-
-			int rem = barrLen % 4;
-			int barrI = 0;
-
-			if (0 < rem)
-			{
-				int temp = (int) barr[barrI++];
-				while (barrI < rem)
-				{
-					temp = temp << 8 | (int) barr[barrI++];
-				}
-				m_ints[--intLen] = temp;
-			}
-
-			while (intLen > 0)
-			{
-				int temp = (int) barr[barrI++];
-				for (int i = 1; i < 4; i++)
-				{
-					temp = temp << 8 | (int) barr[barrI++];
-				}
-				m_ints[--intLen] = temp;
-			}
-		}
-
-		public int GetUsedLength()
-		{
-			int highestIntPos = m_ints.Length;
-
-			if (highestIntPos < 1)
-				return 0;
-
-			// Check if first element will act as sentinel
-			if (m_ints[0] != 0)
-			{
-				while (m_ints[--highestIntPos] == 0)
-				{
-				}
-				return highestIntPos + 1;
-			}
-
-			do
-			{
-				if (m_ints[--highestIntPos] != 0)
-				{
-					return highestIntPos + 1;
-				}
-			}
-			while (highestIntPos > 0);
-
-			return 0;
-		}
-
-		public int BitLength
-		{
-			get
-			{
-				// JDK 1.5: see Integer.numberOfLeadingZeros()
-				int intLen = GetUsedLength();
-				if (intLen == 0)
-					return 0;
-
-				int last = intLen - 1;
-				uint highest = (uint) m_ints[last];
-				int bits = (last << 5) + 1;
-
-				// A couple of binary search steps
-				if (highest > 0x0000ffff)
-				{
-					if (highest > 0x00ffffff)
-					{
-						bits += 24;
-						highest >>= 24;
-					}
-					else
-					{
-						bits += 16;
-						highest >>= 16;
-					}
-				}
-				else if (highest > 0x000000ff)
-				{
-					bits += 8;
-					highest >>= 8;
-				}
-
-				while (highest > 1)
-				{
-					++bits;
-					highest >>= 1;
-				}
-
-				return bits;
-			}
-		}
-
-		private int[] resizedInts(int newLen)
-		{
-			int[] newInts = new int[newLen];
-			int oldLen = m_ints.Length;
-			int copyLen = oldLen < newLen ? oldLen : newLen;
-			Array.Copy(m_ints, 0, newInts, 0, copyLen);
-			return newInts;
-		}
-
-		public BigInteger ToBigInteger()
-		{
-			int usedLen = GetUsedLength();
-			if (usedLen == 0)
-			{
-				return BigInteger.Zero;
-			}
-
-			int highestInt = m_ints[usedLen - 1];
-			byte[] temp = new byte[4];
-			int barrI = 0;
-			bool trailingZeroBytesDone = false;
-			for (int j = 3; j >= 0; j--)
-			{
-				byte thisByte = (byte)((int)((uint) highestInt >> (8 * j)));
-				if (trailingZeroBytesDone || (thisByte != 0))
-				{
-					trailingZeroBytesDone = true;
-					temp[barrI++] = thisByte;
-				}
-			}
-
-			int barrLen = 4 * (usedLen - 1) + barrI;
-			byte[] barr = new byte[barrLen];
-			for (int j = 0; j < barrI; j++)
-			{
-				barr[j] = temp[j];
-			}
-			// Highest value int is done now
-
-			for (int iarrJ = usedLen - 2; iarrJ >= 0; iarrJ--)
-			{
-				for (int j = 3; j >= 0; j--)
-				{
-					barr[barrI++] = (byte)((int)((uint)m_ints[iarrJ] >> (8 * j)));
-				}
-			}
-			return new BigInteger(1, barr);
-		}
-
-		public void ShiftLeft()
-		{
-			int usedLen = GetUsedLength();
-			if (usedLen == 0)
-			{
-				return;
-			}
-			if (m_ints[usedLen - 1] < 0)
-			{
-				// highest bit of highest used byte is set, so shifting left will
-				// make the IntArray one byte longer
-				usedLen++;
-				if (usedLen > m_ints.Length)
-				{
-					// make the m_ints one byte longer, because we need one more
-					// byte which is not available in m_ints
-					m_ints = resizedInts(m_ints.Length + 1);
-				}
-			}
-
-			bool carry = false;
-			for (int i = 0; i < usedLen; i++)
-			{
-				// nextCarry is true if highest bit is set
-				bool nextCarry = m_ints[i] < 0;
-				m_ints[i] <<= 1;
-				if (carry)
-				{
-					// set lowest bit
-					m_ints[i] |= 1;
-				}
-				carry = nextCarry;
-			}
-		}
-
-		public IntArray ShiftLeft(int n)
-		{
-			int usedLen = GetUsedLength();
-			if (usedLen == 0)
-			{
-				return this;
-			}
-
-			if (n == 0)
-			{
-				return this;
-			}
-
-			if (n > 31)
-			{
-				throw new ArgumentException("shiftLeft() for max 31 bits "
-					+ ", " + n + "bit shift is not possible", "n");
-			}
-
-			int[] newInts = new int[usedLen + 1];
-
-			int nm32 = 32 - n;
-			newInts[0] = m_ints[0] << n;
-			for (int i = 1; i < usedLen; i++)
-			{
-				newInts[i] = (m_ints[i] << n) | (int)((uint)m_ints[i - 1] >> nm32);
-			}
-			newInts[usedLen] = (int)((uint)m_ints[usedLen - 1] >> nm32);
-
-			return new IntArray(newInts);
-		}
-
-		public void AddShifted(IntArray other, int shift)
-		{
-			int usedLenOther = other.GetUsedLength();
-			int newMinUsedLen = usedLenOther + shift;
-			if (newMinUsedLen > m_ints.Length)
-			{
-				m_ints = resizedInts(newMinUsedLen);
-				//Console.WriteLine("Resize required");
-			}
-
-			for (int i = 0; i < usedLenOther; i++)
-			{
-				m_ints[i + shift] ^= other.m_ints[i];
-			}
-		}
-
-		public int Length
-		{
-			get { return m_ints.Length; }
-		}
-
-		public bool TestBit(int n)
-		{
-			// theInt = n / 32
-			int theInt = n >> 5;
-			// theBit = n % 32
-			int theBit = n & 0x1F;
-			int tester = 1 << theBit;
-			return ((m_ints[theInt] & tester) != 0);
-		}
-
-		public void FlipBit(int n)
-		{
-			// theInt = n / 32
-			int theInt = n >> 5;
-			// theBit = n % 32
-			int theBit = n & 0x1F;
-			int flipper = 1 << theBit;
-			m_ints[theInt] ^= flipper;
-		}
-
-		public void SetBit(int n)
-		{
-			// theInt = n / 32
-			int theInt = n >> 5;
-			// theBit = n % 32
-			int theBit = n & 0x1F;
-			int setter = 1 << theBit;
-			m_ints[theInt] |= setter;
-		}
-
-		public IntArray Multiply(IntArray other, int m)
-		{
-			// Lenght of c is 2m bits rounded up to the next int (32 bit)
-			int t = (m + 31) >> 5;
-			if (m_ints.Length < t)
-			{
-				m_ints = resizedInts(t);
-			}
-
-			IntArray b = new IntArray(other.resizedInts(other.Length + 1));
-			IntArray c = new IntArray((m + m + 31) >> 5);
-			// IntArray c = new IntArray(t + t);
-			int testBit = 1;
-			for (int k = 0; k < 32; k++)
-			{
-				for (int j = 0; j < t; j++)
-				{
-					if ((m_ints[j] & testBit) != 0)
-					{
-						// The kth bit of m_ints[j] is set
-						c.AddShifted(b, j);
-					}
-				}
-				testBit <<= 1;
-				b.ShiftLeft();
-			}
-			return c;
-		}
-
-		// public IntArray multiplyLeftToRight(IntArray other, int m) {
-		// // Lenght of c is 2m bits rounded up to the next int (32 bit)
-		// int t = (m + 31) / 32;
-		// if (m_ints.Length < t) {
-		// m_ints = resizedInts(t);
-		// }
-		//
-		// IntArray b = new IntArray(other.resizedInts(other.getLength() + 1));
-		// IntArray c = new IntArray((m + m + 31) / 32);
-		// // IntArray c = new IntArray(t + t);
-		// int testBit = 1 << 31;
-		// for (int k = 31; k >= 0; k--) {
-		// for (int j = 0; j < t; j++) {
-		// if ((m_ints[j] & testBit) != 0) {
-		// // The kth bit of m_ints[j] is set
-		// c.addShifted(b, j);
-		// }
-		// }
-		// testBit >>>= 1;
-		// if (k > 0) {
-		// c.shiftLeft();
-		// }
-		// }
-		// return c;
-		// }
-
-		// TODO note, redPol.Length must be 3 for TPB and 5 for PPB
-		public void Reduce(int m, int[] redPol)
-		{
-			for (int i = m + m - 2; i >= m; i--)
-			{
-				if (TestBit(i))
-				{
-					int bit = i - m;
-					FlipBit(bit);
-					FlipBit(i);
-					int l = redPol.Length;
-					while (--l >= 0)
-					{
-						FlipBit(redPol[l] + bit);
-					}
-				}
-			}
-			m_ints = resizedInts((m + 31) >> 5);
-		}
-
-		public IntArray Square(int m)
-		{
-			// TODO make the table static readonly
-			int[] table = { 0x0, 0x1, 0x4, 0x5, 0x10, 0x11, 0x14, 0x15, 0x40,
-									0x41, 0x44, 0x45, 0x50, 0x51, 0x54, 0x55 };
-
-			int t = (m + 31) >> 5;
-			if (m_ints.Length < t)
-			{
-				m_ints = resizedInts(t);
-			}
-
-			IntArray c = new IntArray(t + t);
-
-			// TODO twice the same code, put in separate private method
-			for (int i = 0; i < t; i++)
-			{
-				int v0 = 0;
-				for (int j = 0; j < 4; j++)
-				{
-					v0 = (int)((uint) v0 >> 8);
-					int u = (int)((uint)m_ints[i] >> (j * 4)) & 0xF;
-					int w = table[u] << 24;
-					v0 |= w;
-				}
-				c.m_ints[i + i] = v0;
-
-				v0 = 0;
-				int upper = (int)((uint) m_ints[i] >> 16);
-				for (int j = 0; j < 4; j++)
-				{
-					v0 = (int)((uint) v0 >> 8);
-					int u = (int)((uint)upper >> (j * 4)) & 0xF;
-					int w = table[u] << 24;
-					v0 |= w;
-				}
-				c.m_ints[i + i + 1] = v0;
-			}
-			return c;
-		}
-
-		public override bool Equals(object o)
-		{
-			if (!(o is IntArray))
-			{
-				return false;
-			}
-			IntArray other = (IntArray) o;
-			int usedLen = GetUsedLength();
-			if (other.GetUsedLength() != usedLen)
-			{
-				return false;
-			}
-			for (int i = 0; i < usedLen; i++)
-			{
-				if (m_ints[i] != other.m_ints[i])
-				{
-					return false;
-				}
-			}
-			return true;
-		}
-
-		public override int GetHashCode()
-		{
-			int i = GetUsedLength();
-			int hc = i;
-			while (--i >= 0)
-			{
-				hc *= 17;
-				hc ^= m_ints[i];
-			}
-			return hc;
-		}
-
-		internal IntArray Copy()
-		{
-			return new IntArray((int[]) m_ints.Clone());
-		}
-
-		public override string ToString()
-		{
-			int usedLen = GetUsedLength();
-			if (usedLen == 0)
-			{
-				return "0";
-			}
-
-			StringBuilder sb = new StringBuilder(Convert.ToString(m_ints[usedLen - 1], 2));
-			for (int iarrJ = usedLen - 2; iarrJ >= 0; iarrJ--)
-			{
-				string hexString = Convert.ToString(m_ints[iarrJ], 2);
-
-				// Add leading zeroes, except for highest significant int
-				for (int i = hexString.Length; i < 8; i++)
-				{
-					hexString = "0" + hexString;
-				}
-				sb.Append(hexString);
-			}
-			return sb.ToString();
-		}
-	}
-}
diff --git a/crypto/src/math/ec/multiplier/FpNafMultiplier.cs b/crypto/src/math/ec/multiplier/FpNafMultiplier.cs
deleted file mode 100644
index 7c034ce6e..000000000
--- a/crypto/src/math/ec/multiplier/FpNafMultiplier.cs
+++ /dev/null
@@ -1,41 +0,0 @@
-#if FALSE
-namespace Org.BouncyCastle.Math.EC.Multiplier
-{
-	/**
-	* Class implementing the NAF (Non-Adjacent Form) multiplication algorithm.
-	*/
-	internal class FpNafMultiplier
-		: ECMultiplier
-	{
-		/**
-		* D.3.2 pg 101
-		* @see org.bouncycastle.math.ec.multiplier.ECMultiplier#multiply(org.bouncycastle.math.ec.ECPoint, java.math.BigInteger)
-		*/
-		public ECPoint Multiply(ECPoint p, BigInteger k, PreCompInfo preCompInfo)
-		{
-			// TODO Probably should try to add this
-			// BigInteger e = k.Mod(n); // n == order of p
-			BigInteger e = k;
-			BigInteger h = e.Multiply(BigInteger.Three);
-
-			ECPoint neg = p.Negate();
-			ECPoint R = p;
-
-			for (int i = h.BitLength - 2; i > 0; --i)
-			{             
-				R = R.Twice();
-
-				bool hBit = h.TestBit(i);
-				bool eBit = e.TestBit(i);
-
-				if (hBit != eBit)
-				{
-					R = R.Add(hBit ? p : neg);
-				}
-			}
-
-			return R;
-		}
-	}
-}
-#endif
\ No newline at end of file
diff --git a/crypto/src/math/ec/multiplier/WNafMultiplier.cs b/crypto/src/math/ec/multiplier/WNafMultiplier.cs
deleted file mode 100644
index 484bb30e7..000000000
--- a/crypto/src/math/ec/multiplier/WNafMultiplier.cs
+++ /dev/null
@@ -1,243 +0,0 @@
-#if FALSE
-using System;
-
-namespace Org.BouncyCastle.Math.EC.Multiplier
-{
-	/**
-	* Class implementing the WNAF (Window Non-Adjacent Form) multiplication
-	* algorithm.
-	*/
-	internal class WNafMultiplier
-		: ECMultiplier 
-	{
-		/**
-		* Computes the Window NAF (non-adjacent Form) of an integer.
-		* @param width The width <code>w</code> of the Window NAF. The width is
-		* defined as the minimal number <code>w</code>, such that for any
-		* <code>w</code> consecutive digits in the resulting representation, at
-		* most one is non-zero.
-		* @param k The integer of which the Window NAF is computed.
-		* @return The Window NAF of the given width, such that the following holds:
-		* <code>k = &#8722;<sub>i=0</sub><sup>l-1</sup> k<sub>i</sub>2<sup>i</sup>
-		* </code>, where the <code>k<sub>i</sub></code> denote the elements of the
-		* returned <code>sbyte[]</code>.
-		*/
-		public sbyte[] WindowNaf(sbyte width, BigInteger k)
-		{
-			// The window NAF is at most 1 element longer than the binary
-			// representation of the integer k. sbyte can be used instead of short or
-			// int unless the window width is larger than 8. For larger width use
-			// short or int. However, a width of more than 8 is not efficient for
-			// m = log2(q) smaller than 2305 Bits. Note: Values for m larger than
-			// 1000 Bits are currently not used in practice.
-			sbyte[] wnaf = new sbyte[k.BitLength + 1];
-
-			// 2^width as short and BigInteger
-			short pow2wB = (short)(1 << width);
-			BigInteger pow2wBI = BigInteger.ValueOf(pow2wB);
-
-			int i = 0;
-
-			// The actual length of the WNAF
-			int length = 0;
-
-			// while k >= 1
-			while (k.SignValue > 0)
-			{
-				// if k is odd
-				if (k.TestBit(0))
-				{
-					// k Mod 2^width
-					BigInteger remainder = k.Mod(pow2wBI);
-
-					// if remainder > 2^(width - 1) - 1
-					if (remainder.TestBit(width - 1))
-					{
-						wnaf[i] = (sbyte)(remainder.IntValue - pow2wB);
-					}
-					else
-					{
-						wnaf[i] = (sbyte)remainder.IntValue;
-					}
-					// wnaf[i] is now in [-2^(width-1), 2^(width-1)-1]
-
-					k = k.Subtract(BigInteger.ValueOf(wnaf[i]));
-					length = i;
-				}
-				else
-				{
-					wnaf[i] = 0;
-				}
-
-				// k = k/2
-				k = k.ShiftRight(1);
-				i++;
-			}
-
-			length++;
-
-			// Reduce the WNAF array to its actual length
-			sbyte[] wnafShort = new sbyte[length];
-			Array.Copy(wnaf, 0, wnafShort, 0, length);
-			return wnafShort;
-		}
-
-		/**
-		* Multiplies <code>this</code> by an integer <code>k</code> using the
-		* Window NAF method.
-		* @param k The integer by which <code>this</code> is multiplied.
-		* @return A new <code>ECPoint</code> which equals <code>this</code>
-		* multiplied by <code>k</code>.
-		*/
-		public ECPoint Multiply(ECPoint p, BigInteger k, PreCompInfo preCompInfo)
-		{
-			WNafPreCompInfo wnafPreCompInfo;
-
-			if ((preCompInfo != null) && (preCompInfo is WNafPreCompInfo))
-			{
-				wnafPreCompInfo = (WNafPreCompInfo)preCompInfo;
-			}
-			else
-			{
-				// Ignore empty PreCompInfo or PreCompInfo of incorrect type
-				wnafPreCompInfo = new WNafPreCompInfo();
-			}
-
-			// floor(log2(k))
-			int m = k.BitLength;
-
-			// width of the Window NAF
-			sbyte width;
-
-			// Required length of precomputation array
-			int reqPreCompLen;
-
-			// Determine optimal width and corresponding length of precomputation
-			// array based on literature values
-			if (m < 13)
-			{
-				width = 2;
-				reqPreCompLen = 1;
-			}
-			else
-			{
-				if (m < 41)
-				{
-					width = 3;
-					reqPreCompLen = 2;
-				}
-				else
-				{
-					if (m < 121)
-					{
-						width = 4;
-						reqPreCompLen = 4;
-					}
-					else
-					{
-						if (m < 337)
-						{
-							width = 5;
-							reqPreCompLen = 8;
-						}
-						else
-						{
-							if (m < 897)
-							{
-								width = 6;
-								reqPreCompLen = 16;
-							}
-							else
-							{
-								if (m < 2305)
-								{
-									width = 7;
-									reqPreCompLen = 32;
-								}
-								else 
-								{
-									width = 8;
-									reqPreCompLen = 127;
-								}
-							}
-						}
-					}
-				}
-			}
-
-			// The length of the precomputation array
-			int preCompLen = 1;
-
-			ECPoint[] preComp = wnafPreCompInfo.GetPreComp();
-			ECPoint twiceP = wnafPreCompInfo.GetTwiceP();
-
-			// Check if the precomputed ECPoints already exist
-			if (preComp == null)
-			{
-				// Precomputation must be performed from scratch, create an empty
-				// precomputation array of desired length
-				preComp = new ECPoint[]{ p };
-			}
-			else
-			{
-				// Take the already precomputed ECPoints to start with
-				preCompLen = preComp.Length;
-			}
-
-			if (twiceP == null)
-			{
-				// Compute twice(p)
-				twiceP = p.Twice();
-			}
-
-			if (preCompLen < reqPreCompLen)
-			{
-				// Precomputation array must be made bigger, copy existing preComp
-				// array into the larger new preComp array
-				ECPoint[] oldPreComp = preComp;
-				preComp = new ECPoint[reqPreCompLen];
-				Array.Copy(oldPreComp, 0, preComp, 0, preCompLen);
-
-				for (int i = preCompLen; i < reqPreCompLen; i++)
-				{
-					// Compute the new ECPoints for the precomputation array.
-					// The values 1, 3, 5, ..., 2^(width-1)-1 times p are
-					// computed
-					preComp[i] = twiceP.Add(preComp[i - 1]);
-				}            
-			}
-
-			// Compute the Window NAF of the desired width
-			sbyte[] wnaf = WindowNaf(width, k);
-			int l = wnaf.Length;
-
-			// Apply the Window NAF to p using the precomputed ECPoint values.
-			ECPoint q = p.Curve.Infinity;
-			for (int i = l - 1; i >= 0; i--)
-			{
-				q = q.Twice();
-
-				if (wnaf[i] != 0)
-				{
-					if (wnaf[i] > 0)
-					{
-						q = q.Add(preComp[(wnaf[i] - 1)/2]);
-					}
-					else
-					{
-						// wnaf[i] < 0
-						q = q.Subtract(preComp[(-wnaf[i] - 1)/2]);
-					}
-				}
-			}
-
-			// Set PreCompInfo in ECPoint, such that it is available for next
-			// multiplication.
-			wnafPreCompInfo.SetPreComp(preComp);
-			wnafPreCompInfo.SetTwiceP(twiceP);
-			p.SetPreCompInfo(wnafPreCompInfo);
-			return q;
-		}
-	}
-}
-#endif
\ No newline at end of file