code: function _recipientFromAsn1(obj) {
    // validate EnvelopedData content block and capture data
    var capture = {};
    var errors = [];
    if(!asn1.validate(obj, p7.asn1.recipientInfoValidator, capture, errors)) {
      var error = new Error('Cannot read PKCS#7 RecipientInfo. ' +
        'ASN.1 object is not an PKCS#7 RecipientInfo.');
      error.errors = errors;
      throw error;
    }
  
    return {
      version: capture.version.charCodeAt(0),
      issuer: forge.pki.RDNAttributesAsArray(capture.issuer),
      serialNumber: forge.util.createBuffer(capture.serial).toHex(),
      encryptedContent: {
        algorithm: asn1.derToOid(capture.encAlgorithm),
        parameter: capture.encParameter.value,
        content: capture.encKey
      }
    };
  }
docs: Converts a single recipient from an ASN.1 object.
  
  @param obj the ASN.1 RecipientInfo.
  
  @return the recipient object.