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

CA认证

开发平台:

Java

  1. package org.bouncycastle.asn1.smime;
  2. import org.bouncycastle.asn1.ASN1Sequence;
  3. import org.bouncycastle.asn1.ASN1OctetString;
  4. import org.bouncycastle.asn1.DERTaggedObject;
  5. import org.bouncycastle.asn1.DERSet;
  6. import org.bouncycastle.asn1.DERSequence;
  7. import org.bouncycastle.asn1.DEREncodable;
  8. import org.bouncycastle.asn1.cms.Attribute;
  9. import org.bouncycastle.asn1.cms.IssuerAndSerialNumber;
  10. import org.bouncycastle.asn1.cms.RecipientKeyIdentifier;
  11. /**
  12.  * <pre>
  13.  * SMIMEEncryptionKeyPreference ::= CHOICE {
  14.  *  issuerAndSerialNumber   [0] IssuerAndSerialNumber,
  15.  *  receipentKeyId          [1] RecipientKeyIdentifier,
  16.  *  subjectAltKeyIdentifier [2] SubjectKeyIdentifier
  17.  * }
  18.  * </pre>
  19.  */
  20. public class SMIMEEncryptionKeyPreferenceAttribute
  21.     extends Attribute
  22. {
  23. public SMIMEEncryptionKeyPreferenceAttribute(
  24.         IssuerAndSerialNumber issAndSer)
  25.     {
  26. super(SMIMEAttributes.encrypKeyPref,
  27.                 new DERSet(new DERTaggedObject(true, 0, issAndSer)));
  28. }
  29. public SMIMEEncryptionKeyPreferenceAttribute(
  30.         RecipientKeyIdentifier rKeyId)
  31.     {
  32. super(SMIMEAttributes.encrypKeyPref, 
  33.                     new DERSet(new DERTaggedObject(true, 1, rKeyId)));
  34. }
  35.     /**
  36.      * @param sKeyId the subjectKeyIdentifier value (normally the X.509 one)
  37.      */
  38. public SMIMEEncryptionKeyPreferenceAttribute(
  39.         ASN1OctetString sKeyId)
  40.     {
  41. super(SMIMEAttributes.encrypKeyPref,
  42.                     new DERSet(new DERTaggedObject(false, 2, sKeyId)));
  43. }
  44. }