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

CA认证

开发平台:

Java

  1. package org.bouncycastle.asn1.x509;
  2. import org.bouncycastle.asn1.ASN1Sequence;
  3. import org.bouncycastle.asn1.DERSequence;
  4. import org.bouncycastle.asn1.DERTaggedObject;
  5. import org.bouncycastle.asn1.DERObject;
  6. import org.bouncycastle.asn1.DEREncodable;
  7. import org.bouncycastle.asn1.ASN1EncodableVector;
  8. public class Holder
  9.     implements DEREncodable
  10. {
  11.     IssuerSerial        baseCertificateID;
  12.     GeneralNames        entityName;
  13.     ObjectDigestInfo    objectDigestInfo;
  14.     /**
  15.      * <pre>
  16.      *  Holder ::= SEQUENCE {
  17.      *        baseCertificateID   [0] IssuerSerial OPTIONAL,
  18.      *                 -- the issuer and serial number of
  19.      *                 -- the holder's Public Key Certificate
  20.      *        entityName          [1] GeneralNames OPTIONAL,
  21.      *                 -- the name of the claimant or role
  22.      *        objectDigestInfo    [2] ObjectDigestInfo OPTIONAL
  23.      *                 -- used to directly authenticate the holder,
  24.      *                 -- for example, an executable
  25.      *  }
  26.      * </pre>
  27.      */
  28.     public DERObject getDERObject()
  29.     {
  30.         ASN1EncodableVector  v = new ASN1EncodableVector();
  31.         if (baseCertificateID != null)
  32.         {
  33.             v.add(new DERTaggedObject(false, 0, baseCertificateID));
  34.         }
  35.         if (entityName != null)
  36.         {
  37.             v.add(new DERTaggedObject(false, 1, entityName));
  38.         }
  39.         if (objectDigestInfo != null)
  40.         {
  41.             v.add(new DERTaggedObject(false, 2, objectDigestInfo));
  42.         }
  43.         return new DERSequence(v);
  44.     }
  45. }