diff options
Diffstat (limited to 'Crypto/src/x509/IX509AttributeCertificate.cs')
-rw-r--r-- | Crypto/src/x509/IX509AttributeCertificate.cs | 57 |
1 files changed, 57 insertions, 0 deletions
diff --git a/Crypto/src/x509/IX509AttributeCertificate.cs b/Crypto/src/x509/IX509AttributeCertificate.cs new file mode 100644 index 000000000..9a3004e01 --- /dev/null +++ b/Crypto/src/x509/IX509AttributeCertificate.cs @@ -0,0 +1,57 @@ +using System; +using System.IO; + +using Org.BouncyCastle.Crypto; +using Org.BouncyCastle.Math; + +namespace Org.BouncyCastle.X509 +{ + /// <remarks>Interface for an X.509 Attribute Certificate.</remarks> + public interface IX509AttributeCertificate + : IX509Extension + { + /// <summary>The version number for the certificate.</summary> + int Version { get; } + + /// <summary>The serial number for the certificate.</summary> + BigInteger SerialNumber { get; } + + /// <summary>The UTC DateTime before which the certificate is not valid.</summary> + DateTime NotBefore { get; } + + /// <summary>The UTC DateTime after which the certificate is not valid.</summary> + DateTime NotAfter { get; } + + /// <summary>The holder of the certificate.</summary> + AttributeCertificateHolder Holder { get; } + + /// <summary>The issuer details for the certificate.</summary> + AttributeCertificateIssuer Issuer { get; } + + /// <summary>Return the attributes contained in the attribute block in the certificate.</summary> + /// <returns>An array of attributes.</returns> + X509Attribute[] GetAttributes(); + + /// <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> + X509Attribute[] GetAttributes(string oid); + + bool[] GetIssuerUniqueID(); + + bool IsValidNow { get; } + bool IsValid(DateTime date); + + void CheckValidity(); + void CheckValidity(DateTime date); + + byte[] GetSignature(); + + void Verify(AsymmetricKeyParameter publicKey); + + /// <summary>Return an ASN.1 encoded byte array representing the attribute certificate.</summary> + /// <returns>An ASN.1 encoded byte array.</returns> + /// <exception cref="IOException">If the certificate cannot be encoded.</exception> + byte[] GetEncoded(); + } +} |