IssuerAndSerialNumber.java
上传用户:lior1029
上传日期:2013-05-07
资源大小:209k
文件大小:2k
源码类别:

CA认证

开发平台:

Java

  1. package org.bouncycastle.asn1.pkcs;
  2. import java.math.BigInteger;
  3. import org.bouncycastle.asn1.*;
  4. import org.bouncycastle.asn1.x509.*;
  5. public class IssuerAndSerialNumber
  6.     implements DEREncodable
  7. {
  8.     X509Name    name;
  9.     DERInteger  certSerialNumber;
  10.     public static IssuerAndSerialNumber getInstance(
  11.         Object  obj)
  12.     {
  13.         if (obj instanceof IssuerAndSerialNumber)
  14.         {
  15.             return (IssuerAndSerialNumber)obj;
  16.         }
  17.         else if (obj instanceof ASN1Sequence)
  18.         {
  19.             return new IssuerAndSerialNumber((ASN1Sequence)obj);
  20.         }
  21.         throw new IllegalArgumentException("unknown object in factory");
  22.     }
  23.     public IssuerAndSerialNumber(
  24.         ASN1Sequence    seq)
  25.     {
  26.         this.name = X509Name.getInstance(seq.getObjectAt(0));
  27.         this.certSerialNumber = (DERInteger)seq.getObjectAt(1);
  28.     }
  29.     public IssuerAndSerialNumber(
  30.         X509Name    name,
  31.         BigInteger  certSerialNumber)
  32.     {
  33.         this.name = name;
  34.         this.certSerialNumber = new DERInteger(certSerialNumber);
  35.     }
  36.     public IssuerAndSerialNumber(
  37.         X509Name    name,
  38.         DERInteger  certSerialNumber)
  39.     {
  40.         this.name = name;
  41.         this.certSerialNumber = certSerialNumber;
  42.     }
  43.     public X509Name getName()
  44.     {
  45.         return name;
  46.     }
  47.     public DERInteger getCertificateSerialNumber()
  48.     {
  49.         return certSerialNumber;
  50.     }
  51.     public DERObject getDERObject()
  52.     {
  53.         ASN1EncodableVector    v = new ASN1EncodableVector();
  54.         v.add(name);
  55.         v.add(certSerialNumber);
  56.         return new DERSequence(v);
  57.     }
  58. }