this.version = new DERInteger(0); this.keyEncryptionAlgorithm = keyEncryptionAlgorithm; this.encryptedKey = encryptedKey;
this.version = new DERInteger(0); this.keyDerivationAlgorithm = keyDerivationAlgorithm; this.keyEncryptionAlgorithm = keyEncryptionAlgorithm; this.encryptedKey = encryptedKey;
version = (DERInteger)seq.getObjectAt(0); if (seq.getObjectAt(1) instanceof ASN1TaggedObject) { keyDerivationAlgorithm = AlgorithmIdentifier.getInstance((ASN1TaggedObject)seq.getObjectAt(1), false); keyEncryptionAlgorithm = AlgorithmIdentifier.getInstance(seq.getObjectAt(2)); encryptedKey = (ASN1OctetString)seq.getObjectAt(3); } else { keyEncryptionAlgorithm = AlgorithmIdentifier.getInstance(seq.getObjectAt(1)); encryptedKey = (ASN1OctetString)seq.getObjectAt(2); }
return encryptedKey;
return a PasswordRecipientInfo object from a tagged object.paramobj the tagged object holding the object we want.paramexplicit true if the object is meant to be explicitly tagged false otherwise.exceptionIllegalArgumentException if the object held by the tagged object cannot be converted. return getInstance(ASN1Sequence.getInstance(obj, explicit));
return getInstance(ASN1Sequence.getInstance(obj, explicit));
return a PasswordRecipientInfo object from the given object.paramobj the object we want converted.exceptionIllegalArgumentException if the object cannot be converted. if (obj == null || obj instanceof PasswordRecipientInfo) { return (PasswordRecipientInfo)obj; } if(obj instanceof ASN1Sequence) { return new PasswordRecipientInfo((ASN1Sequence)obj); } throw new IllegalArgumentException("Invalid PasswordRecipientInfo: " + obj.getClass().getName());
if (obj == null || obj instanceof PasswordRecipientInfo) { return (PasswordRecipientInfo)obj; } if(obj instanceof ASN1Sequence) { return new PasswordRecipientInfo((ASN1Sequence)obj); } throw new IllegalArgumentException("Invalid PasswordRecipientInfo: " + obj.getClass().getName());
return keyDerivationAlgorithm;
return keyEncryptionAlgorithm;
return version;
Produce an object suitable for an ASN1OutputStream. PasswordRecipientInfo ::= SEQUENCE { version CMSVersion, -- Always set to 0 keyDerivationAlgorithm [0] KeyDerivationAlgorithmIdentifier OPTIONAL, keyEncryptionAlgorithm KeyEncryptionAlgorithmIdentifier, encryptedKey EncryptedKey } ASN1EncodableVector v = new ASN1EncodableVector(); v.add(version); if (keyDerivationAlgorithm != null) { v.add(new DERTaggedObject(false, 0, keyDerivationAlgorithm)); } v.add(keyEncryptionAlgorithm); v.add(encryptedKey); return new DERSequence(v);
PasswordRecipientInfo ::= SEQUENCE { version CMSVersion, -- Always set to 0 keyDerivationAlgorithm [0] KeyDerivationAlgorithmIdentifier OPTIONAL, keyEncryptionAlgorithm KeyEncryptionAlgorithmIdentifier, encryptedKey EncryptedKey }
ASN1EncodableVector v = new ASN1EncodableVector(); v.add(version); if (keyDerivationAlgorithm != null) { v.add(new DERTaggedObject(false, 0, keyDerivationAlgorithm)); } v.add(keyEncryptionAlgorithm); v.add(encryptedKey); return new DERSequence(v);