use of org.demoiselle.signer.policy.engine.asn1.etsi.SigningPeriod in project signer by demoiselle.
the class PolicyInfo method parse.
@Override
public void parse(ASN1Primitive derObject) {
ASN1Sequence derSequence = ASN1Object.getDERSequence(derObject);
ASN1Primitive firstObject = derSequence.getObjectAt(0).toASN1Primitive();
this.policyName = new DirectoryString(firstObject.toString());
ASN1Primitive secondObject = derSequence.getObjectAt(1).toASN1Primitive();
String fieldOfApplication = secondObject.toString();
this.fieldOfApplication = new DirectoryString(fieldOfApplication);
this.signingPeriod = new SigningPeriod();
this.signingPeriod.parse(derSequence.getObjectAt(2).toASN1Primitive());
int indice = 3;
ASN1Primitive revocationObject = derSequence.getObjectAt(indice).toASN1Primitive();
if (!(secondObject instanceof DERTaggedObject)) {
indice = 4;
}
if (indice == 3) {
this.revocationDate = new Time();
this.revocationDate.parse(revocationObject);
}
}
use of org.demoiselle.signer.policy.engine.asn1.etsi.SigningPeriod in project signer by demoiselle.
the class PolicyInfo method parse.
@Override
public void parse(ASN1Primitive primitive) {
ASN1Sequence sequence1 = ASN1Object.getDERSequence(primitive);
this.signingPeriod = new SigningPeriod();
this.signingPeriod.parse(sequence1.getObjectAt(0).toASN1Primitive());
int indice = 2;
ASN1Primitive secondObject = sequence1.getObjectAt(1).toASN1Primitive();
if (secondObject instanceof ASN1ObjectIdentifier) {
indice = 1;
}
if (indice == 2) {
this.revocationDate = new GeneralizedTime();
this.revocationDate.parse(secondObject);
}
this.policyOID = new ObjectIdentifier();
this.policyOID.parse(sequence1.getObjectAt(indice).toASN1Primitive());
DERIA5String policyURI = (DERIA5String) sequence1.getObjectAt(indice + 1);
this.policyURI = policyURI.getString();
ASN1Primitive policyDigest = sequence1.getObjectAt(indice + 2).toASN1Primitive();
ASN1Sequence sequence2 = ASN1Sequence.getInstance(policyDigest);
DEROctetString derOctetString = (DEROctetString) sequence2.getObjectAt(1).toASN1Primitive();
ASN1Sequence sequence3 = ASN1Object.getDERSequence(sequence2.getObjectAt(0).toASN1Primitive());
ASN1ObjectIdentifier objectIdentifier = (ASN1ObjectIdentifier) sequence3.getObjectAt(0).toASN1Primitive();
AlgorithmIdentifier algorithmIdentifier = new AlgorithmIdentifier(objectIdentifier);
this.policyDigest = new OtherHashAlgAndValue(algorithmIdentifier, derOctetString);
}
Aggregations