public class SignedData extends ASN1Object
A signed data object containing multitude of SignerInfo
s.
SignedData ::= SEQUENCE { version CMSVersion, digestAlgorithms DigestAlgorithmIdentifiers, encapContentInfo EncapsulatedContentInfo, certificates [0] IMPLICIT CertificateSet OPTIONAL, crls [1] IMPLICIT CertificateRevocationLists OPTIONAL, signerInfos SignerInfos } DigestAlgorithmIdentifiers ::= SET OF DigestAlgorithmIdentifier SignerInfos ::= SET OF SignerInfo
The version calculation uses following ruleset from RFC 5652 section 5.1:
IF ((certificates is present) AND (any certificates with a type of other are present)) OR ((crls is present) AND (any crls with a type of other are present)) THEN version MUST be 5 ELSE IF (certificates is present) AND (any version 2 attribute certificates are present) THEN version MUST be 4 ELSE IF ((certificates is present) AND (any version 1 attribute certificates are present)) OR (any SignerInfo structures are version 3) OR (encapContentInfo eContentType is other than id-data) THEN version MUST be 3 ELSE version MUST be 1
Constructor and Description |
---|
SignedData(ASN1Set digestAlgorithms,
ContentInfo contentInfo,
ASN1Set certificates,
ASN1Set crls,
ASN1Set signerInfos) |
Modifier and Type | Method and Description |
---|---|
ASN1Set |
getCertificates() |
ASN1Set |
getCRLs() |
ASN1Set |
getDigestAlgorithms() |
ContentInfo |
getEncapContentInfo() |
static SignedData |
getInstance(java.lang.Object o)
Return a SignedData object from the given object.
|
ASN1Set |
getSignerInfos() |
ASN1Integer |
getVersion() |
ASN1Primitive |
toASN1Primitive()
Produce an object suitable for an ASN1OutputStream.
|
equals, getEncoded, getEncoded, hasEncodedTagValue, hashCode, toASN1Object
public SignedData(ASN1Set digestAlgorithms, ContentInfo contentInfo, ASN1Set certificates, ASN1Set crls, ASN1Set signerInfos)
public static SignedData getInstance(java.lang.Object o)
Accepted inputs:
SignedData
object
ASN1Sequence
input formats with SignedData structure inside
o
- the object we want converted.java.lang.IllegalArgumentException
- if the object cannot be converted.public ASN1Integer getVersion()
public ASN1Set getDigestAlgorithms()
public ContentInfo getEncapContentInfo()
public ASN1Set getCertificates()
public ASN1Set getCRLs()
public ASN1Set getSignerInfos()
public ASN1Primitive toASN1Primitive()
toASN1Primitive
in interface ASN1Encodable
toASN1Primitive
in class ASN1Object