public SingleResponse( Asn1Sequence seq) { this.certID = CertID.GetInstance(seq[0]); this.certStatus = CertStatus.GetInstance(seq[1]); this.thisUpdate = (DerGeneralizedTime)seq[2]; if (seq.Count > 4) { this.nextUpdate = DerGeneralizedTime.GetInstance( (Asn1TaggedObject) seq[3], true); this.singleExtensions = X509Extensions.GetInstance( (Asn1TaggedObject) seq[4], true); } else if (seq.Count > 3) { Asn1TaggedObject o = (Asn1TaggedObject) seq[3]; if (o.TagNo == 0) { this.nextUpdate = DerGeneralizedTime.GetInstance(o, true); } else { this.singleExtensions = X509Extensions.GetInstance(o, true); } } }
public override void PerformTest() { DerGeneralizedTime dateOfBirth = new DerGeneralizedTime("20070315173729Z"); DeclarationOfMajority decl = new DeclarationOfMajority(dateOfBirth); checkConstruction(decl, DeclarationOfMajority.Choice.DateOfBirth, dateOfBirth, -1); decl = new DeclarationOfMajority(6); checkConstruction(decl, DeclarationOfMajority.Choice.NotYoungerThan, null, 6); decl = DeclarationOfMajority.GetInstance(null); if (decl != null) { Fail("null GetInstance() failed."); } try { DeclarationOfMajority.GetInstance(new Object()); Fail("GetInstance() failed to detect bad object."); } catch (ArgumentException) { // expected } }
public KekIdentifier( Asn1Sequence seq) { keyIdentifier = (Asn1OctetString) seq[0]; switch (seq.Count) { case 1: break; case 2: if (seq[1] is DerGeneralizedTime) { date = (DerGeneralizedTime) seq[1]; } else { other = OtherKeyAttribute.GetInstance(seq[2]); } break; case 3: date = (DerGeneralizedTime) seq[1]; other = OtherKeyAttribute.GetInstance(seq[2]); break; default: throw new ArgumentException("Invalid KekIdentifier"); } }
public ResponseData( ResponderID responderID, DerGeneralizedTime producedAt, Asn1Sequence responses, X509Extensions responseExtensions) : this(V1, responderID, producedAt, responses, responseExtensions) { }
public KekIdentifier( byte[] keyIdentifier, DerGeneralizedTime date, OtherKeyAttribute other) { this.keyIdentifier = new DerOctetString(keyIdentifier); this.date = date; this.other = other; }
public RecipientKeyIdentifier( byte[] subjectKeyIdentifier, DerGeneralizedTime date, OtherKeyAttribute other) { this.subjectKeyIdentifier = new DerOctetString(subjectKeyIdentifier); this.date = date; this.other = other; }
public RecipientKeyIdentifier( Asn1OctetString subjectKeyIdentifier, DerGeneralizedTime date, OtherKeyAttribute other) { this.subjectKeyIdentifier = subjectKeyIdentifier; this.date = date; this.other = other; }
public OcspIdentifier( ResponderID ocspResponderID, DateTime producedAt) { if (ocspResponderID == null) throw new ArgumentNullException(); this.ocspResponderID = ocspResponderID; this.producedAt = new DerGeneralizedTime(producedAt); }
public RevokedInfo( DerGeneralizedTime revocationTime, CrlReason revocationReason) { if (revocationTime == null) throw new ArgumentNullException("revocationTime"); this.revocationTime = revocationTime; this.revocationReason = revocationReason; }
private RevokedInfo( Asn1Sequence seq) { this.revocationTime = (DerGeneralizedTime) seq[0]; if (seq.Count > 1) { this.revocationReason = new CrlReason( DerEnumerated.GetInstance((Asn1TaggedObject) seq[1], true)); } }
private OcspIdentifier( Asn1Sequence seq) { if (seq == null) throw new ArgumentNullException("seq"); if (seq.Count != 2) throw new ArgumentException("Bad sequence size: " + seq.Count, "seq"); this.ocspResponderID = ResponderID.GetInstance(seq[0].ToAsn1Object()); this.producedAt = (DerGeneralizedTime) seq[1].ToAsn1Object(); }
private RevAnnContent(Asn1Sequence seq) { status = PkiStatusEncodable.GetInstance(seq[0]); certId = CertId.GetInstance(seq[1]); willBeRevokedAt = DerGeneralizedTime.GetInstance(seq[2]); badSinceDate = DerGeneralizedTime.GetInstance(seq[3]); if (seq.Count > 4) { crlDetails = X509Extensions.GetInstance(seq[4]); } }
private void checkValues( DeclarationOfMajority decl, DeclarationOfMajority.Choice type, DerGeneralizedTime dateOfBirth, int notYoungerThan) { checkMandatoryField("type", (int)type, (int)decl.Type); checkOptionalField("dateOfBirth", dateOfBirth, decl.DateOfBirth); if (notYoungerThan != -1 && notYoungerThan != decl.NotYoungerThan) { Fail("notYoungerThan mismatch"); } }
public ResponseData( DerInteger version, ResponderID responderID, DerGeneralizedTime producedAt, Asn1Sequence responses, X509Extensions responseExtensions) { this.version = version; this.responderID = responderID; this.producedAt = producedAt; this.responses = responses; this.responseExtensions = responseExtensions; }
public SingleResponse( CertID certID, CertStatus certStatus, DerGeneralizedTime thisUpdate, DerGeneralizedTime nextUpdate, X509Extensions singleExtensions) { this.certID = certID; this.certStatus = certStatus; this.thisUpdate = thisUpdate; this.nextUpdate = nextUpdate; this.singleExtensions = singleExtensions; }
private void checkValues( DeclarationOfMajority decl, DeclarationOfMajority.Choice type, DerGeneralizedTime dateOfBirth, int notYoungerThan) { checkMandatoryField("type", (int) type, (int) decl.Type); checkOptionalField("dateOfBirth", dateOfBirth, decl.DateOfBirth); if (notYoungerThan != -1 && notYoungerThan != decl.NotYoungerThan) { Fail("notYoungerThan mismatch"); } }
private PkiHeader(Asn1Sequence seq) { pvno = DerInteger.GetInstance(seq[0]); sender = GeneralName.GetInstance(seq[1]); recipient = GeneralName.GetInstance(seq[2]); for (int i = 3; i < seq.Count; i++) { Asn1TaggedObject asn1TaggedObject = (Asn1TaggedObject)seq[i]; switch (asn1TaggedObject.TagNo) { case 0: messageTime = DerGeneralizedTime.GetInstance(asn1TaggedObject, isExplicit: true); break; case 1: protectionAlg = AlgorithmIdentifier.GetInstance(asn1TaggedObject, explicitly: true); break; case 2: senderKID = Asn1OctetString.GetInstance(asn1TaggedObject, isExplicit: true); break; case 3: recipKID = Asn1OctetString.GetInstance(asn1TaggedObject, isExplicit: true); break; case 4: transactionID = Asn1OctetString.GetInstance(asn1TaggedObject, isExplicit: true); break; case 5: senderNonce = Asn1OctetString.GetInstance(asn1TaggedObject, isExplicit: true); break; case 6: recipNonce = Asn1OctetString.GetInstance(asn1TaggedObject, isExplicit: true); break; case 7: freeText = PkiFreeText.GetInstance(asn1TaggedObject, isExplicit: true); break; case 8: generalInfo = Asn1Sequence.GetInstance(asn1TaggedObject, explicitly: true); break; default: throw new ArgumentException("unknown tag number: " + asn1TaggedObject.TagNo, "seq"); } } }
public override void PerformTest() { NameOrPseudonym nameOrPseudonym = new NameOrPseudonym("pseudonym"); IBigInteger nameDistinguisher = BigInteger.ValueOf(10); DerGeneralizedTime dateOfBirth = new DerGeneralizedTime("20070315173729Z"); DirectoryString placeOfBirth = new DirectoryString("placeOfBirth"); string gender = "M"; DirectoryString postalAddress = new DirectoryString("address"); PersonalData data = new PersonalData(nameOrPseudonym, nameDistinguisher, dateOfBirth, placeOfBirth, gender, postalAddress); checkConstruction(data, nameOrPseudonym, nameDistinguisher, dateOfBirth, placeOfBirth, gender, postalAddress); data = new PersonalData(nameOrPseudonym, null, dateOfBirth, placeOfBirth, gender, postalAddress); checkConstruction(data, nameOrPseudonym, null, dateOfBirth, placeOfBirth, gender, postalAddress); data = new PersonalData(nameOrPseudonym, nameDistinguisher, null, placeOfBirth, gender, postalAddress); checkConstruction(data, nameOrPseudonym, nameDistinguisher, null, placeOfBirth, gender, postalAddress); data = new PersonalData(nameOrPseudonym, nameDistinguisher, dateOfBirth, null, gender, postalAddress); checkConstruction(data, nameOrPseudonym, nameDistinguisher, dateOfBirth, null, gender, postalAddress); data = new PersonalData(nameOrPseudonym, nameDistinguisher, dateOfBirth, placeOfBirth, null, postalAddress); checkConstruction(data, nameOrPseudonym, nameDistinguisher, dateOfBirth, placeOfBirth, null, postalAddress); data = new PersonalData(nameOrPseudonym, nameDistinguisher, dateOfBirth, placeOfBirth, gender, null); checkConstruction(data, nameOrPseudonym, nameDistinguisher, dateOfBirth, placeOfBirth, gender, null); data = PersonalData.GetInstance(null); if (data != null) { Fail("null GetInstance() failed."); } try { PersonalData.GetInstance(new Object()); Fail("GetInstance() failed to detect bad object."); } catch (ArgumentException) { // expected } }
public override void PerformTest() { NameOrPseudonym nameOrPseudonym = new NameOrPseudonym("pseudonym"); BigInteger nameDistinguisher = BigInteger.ValueOf(10); DerGeneralizedTime dateOfBirth= new DerGeneralizedTime("20070315173729Z"); DirectoryString placeOfBirth = new DirectoryString("placeOfBirth"); string gender = "M"; DirectoryString postalAddress = new DirectoryString("address"); PersonalData data = new PersonalData(nameOrPseudonym, nameDistinguisher, dateOfBirth, placeOfBirth, gender, postalAddress); checkConstruction(data, nameOrPseudonym, nameDistinguisher, dateOfBirth, placeOfBirth, gender, postalAddress); data = new PersonalData(nameOrPseudonym, null, dateOfBirth, placeOfBirth, gender, postalAddress); checkConstruction(data, nameOrPseudonym, null, dateOfBirth, placeOfBirth, gender, postalAddress); data = new PersonalData(nameOrPseudonym, nameDistinguisher, null, placeOfBirth, gender, postalAddress); checkConstruction(data, nameOrPseudonym, nameDistinguisher, null, placeOfBirth, gender, postalAddress); data = new PersonalData(nameOrPseudonym, nameDistinguisher, dateOfBirth, null, gender, postalAddress); checkConstruction(data, nameOrPseudonym, nameDistinguisher, dateOfBirth, null, gender, postalAddress); data = new PersonalData(nameOrPseudonym, nameDistinguisher, dateOfBirth, placeOfBirth, null, postalAddress); checkConstruction(data, nameOrPseudonym, nameDistinguisher, dateOfBirth, placeOfBirth, null, postalAddress); data = new PersonalData(nameOrPseudonym, nameDistinguisher, dateOfBirth, placeOfBirth, gender, null); checkConstruction(data, nameOrPseudonym, nameDistinguisher, dateOfBirth, placeOfBirth, gender, null); data = PersonalData.GetInstance(null); if (data != null) { Fail("null GetInstance() failed."); } try { PersonalData.GetInstance(new Object()); Fail("GetInstance() failed to detect bad object."); } catch (ArgumentException) { // expected } }
private PrivateKeyUsagePeriod(Asn1Sequence seq) { foreach (Asn1TaggedObject asn1TaggedObject in seq) { if (asn1TaggedObject.TagNo == 0) { this._notBefore = DerGeneralizedTime.GetInstance(asn1TaggedObject, false); } else if (asn1TaggedObject.TagNo == 1) { this._notAfter = DerGeneralizedTime.GetInstance(asn1TaggedObject, false); } } }
private PrivateKeyUsagePeriod(Asn1Sequence seq) { foreach (Asn1TaggedObject item in seq) { if (item.TagNo == 0) { _notBefore = DerGeneralizedTime.GetInstance(item, isExplicit: false); } else if (item.TagNo == 1) { _notAfter = DerGeneralizedTime.GetInstance(item, isExplicit: false); } } }
private static Asn1Encodable GetTime(Asn1Encodable time) { if (time is Asn1TaggedObject tag) { time = tag.GetObject(); } if (time is Asn1OctetString str) { time = new DerGeneralizedTime(Strings.FromAsciiByteArray(str.GetOctets())); } return(time); }
public TbsSign(Asn1Sequence seq) { var e = seq.GetEnumerator(); Version = DerInteger.GetInstance(e.Next()); EsSeal = SeSeal.GetInstance(e.Next()); TimeInfo = DerGeneralizedTime.GetInstance(e.Next()); DataHash = DerBitString.GetInstance(e.Next()); PropertyInfo = DerIA5String.GetInstance(e.Next()); if (e.MoveNext()) { ExtensionData = ExtensionData.GetInstance(e.Next()); } }
private TstInfo(Asn1Sequence seq) { //IL_00fa: Unknown result type (might be due to invalid IL or missing references) global::System.Collections.IEnumerator enumerator = seq.GetEnumerator(); enumerator.MoveNext(); version = DerInteger.GetInstance(enumerator.get_Current()); enumerator.MoveNext(); tsaPolicyId = DerObjectIdentifier.GetInstance(enumerator.get_Current()); enumerator.MoveNext(); messageImprint = MessageImprint.GetInstance(enumerator.get_Current()); enumerator.MoveNext(); serialNumber = DerInteger.GetInstance(enumerator.get_Current()); enumerator.MoveNext(); genTime = DerGeneralizedTime.GetInstance(enumerator.get_Current()); ordering = DerBoolean.False; while (enumerator.MoveNext()) { Asn1Object asn1Object = (Asn1Object)enumerator.get_Current(); if (asn1Object is Asn1TaggedObject) { DerTaggedObject derTaggedObject = (DerTaggedObject)asn1Object; switch (derTaggedObject.TagNo) { case 0: tsa = GeneralName.GetInstance(derTaggedObject, explicitly: true); break; case 1: extensions = X509Extensions.GetInstance(derTaggedObject, explicitly: false); break; default: throw new ArgumentException(string.Concat((object)"Unknown tag value ", (object)derTaggedObject.TagNo)); } } if (asn1Object is DerSequence) { accuracy = Accuracy.GetInstance(asn1Object); } if (asn1Object is DerBoolean) { ordering = DerBoolean.GetInstance(asn1Object); } if (asn1Object is DerInteger) { nonce = DerInteger.GetInstance(asn1Object); } } }
private TstInfo(Asn1Sequence seq) { IEnumerator enumerator = seq.GetEnumerator(); enumerator.MoveNext(); version = DerInteger.GetInstance(enumerator.Current); enumerator.MoveNext(); tsaPolicyId = DerObjectIdentifier.GetInstance(enumerator.Current); enumerator.MoveNext(); messageImprint = MessageImprint.GetInstance(enumerator.Current); enumerator.MoveNext(); serialNumber = DerInteger.GetInstance(enumerator.Current); enumerator.MoveNext(); genTime = DerGeneralizedTime.GetInstance(enumerator.Current); ordering = DerBoolean.False; while (enumerator.MoveNext()) { Asn1Object asn1Object = (Asn1Object)enumerator.Current; if (asn1Object is Asn1TaggedObject) { DerTaggedObject derTaggedObject = (DerTaggedObject)asn1Object; switch (derTaggedObject.TagNo) { case 0: tsa = GeneralName.GetInstance(derTaggedObject, explicitly: true); break; case 1: extensions = X509Extensions.GetInstance(derTaggedObject, explicitly: false); break; default: throw new ArgumentException("Unknown tag value " + derTaggedObject.TagNo); } } if (asn1Object is DerSequence) { accuracy = Accuracy.GetInstance(asn1Object); } if (asn1Object is DerBoolean) { ordering = DerBoolean.GetInstance(asn1Object); } if (asn1Object is DerInteger) { nonce = DerInteger.GetInstance(asn1Object); } } }
internal static DateTime GetValidCertDateFromValidityModel( PkixParameters paramsPkix, PkixCertPath certPath, int index) { if (paramsPkix.ValidityModel != PkixParameters.ChainValidityModel) { return(GetValidDate(paramsPkix)); } // if end cert use given signing/encryption/... time if (index <= 0) { return(PkixCertPathValidatorUtilities.GetValidDate(paramsPkix)); // else use time when previous cert was created } if (index - 1 == 0) { DerGeneralizedTime dateOfCertgen = null; try { X509Certificate cert = (X509Certificate)certPath.Certificates[index - 1]; Asn1OctetString extVal = cert.GetExtensionValue( IsisMttObjectIdentifiers.IdIsisMttATDateOfCertGen); dateOfCertgen = DerGeneralizedTime.GetInstance(extVal); } catch (ArgumentException) { throw new Exception( "Date of cert gen extension could not be read."); } if (dateOfCertgen != null) { try { return(dateOfCertgen.ToDateTime()); } catch (ArgumentException e) { throw new Exception( "Date from date of cert gen extension could not be parsed.", e); } } } return(((X509Certificate)certPath.Certificates[index - 1]).NotBefore); }
private OcspIdentifier(Asn1Sequence seq) { //IL_000e: Unknown result type (might be due to invalid IL or missing references) //IL_0037: Unknown result type (might be due to invalid IL or missing references) if (seq == null) { throw new ArgumentNullException("seq"); } if (seq.Count != 2) { throw new ArgumentException(string.Concat((object)"Bad sequence size: ", (object)seq.Count), "seq"); } ocspResponderID = ResponderID.GetInstance(seq[0].ToAsn1Object()); producedAt = (DerGeneralizedTime)seq[1].ToAsn1Object(); }
/** * Constructor from a given details. * * @param nameOrPseudonym Name or pseudonym. * @param nameDistinguisher Name distinguisher. * @param dateOfBirth Date of birth. * @param placeOfBirth Place of birth. * @param gender Gender. * @param postalAddress Postal Address. */ public PersonalData( NameOrPseudonym nameOrPseudonym, BigInteger nameDistinguisher, DerGeneralizedTime dateOfBirth, DirectoryString placeOfBirth, string gender, DirectoryString postalAddress) { this.nameOrPseudonym = nameOrPseudonym; this.dateOfBirth = dateOfBirth; this.gender = gender; this.nameDistinguisher = nameDistinguisher; this.postalAddress = postalAddress; this.placeOfBirth = placeOfBirth; }
/** * Constructor from a given details. * * @param nameOrPseudonym Name or pseudonym. * @param nameDistiguisher Name distinguisher. * @param dateOfBirth Date of birth. * @param placeOfBirth Place of birth. * @param gender Gender. * @param postalAddress Postal Address. */ public PersonalData( NameOrPseudonym nameOrPseudonym, BigInteger nameDistiguisher, DerGeneralizedTime dateOfBirth, string placeOfBirth, string gender, string postalAddress) { this.nameOrPseudonym = nameOrPseudonym; this.dateOfBirth = dateOfBirth; this.gender = new DerPrintableString(gender, true); this.nameDistiguisher = nameDistiguisher; this.postalAddress = new DirectoryString(postalAddress); this.placeOfBirth = new DirectoryString(placeOfBirth); }
private OcspIdentifier( Asn1Sequence seq) { if (seq == null) { throw new ArgumentNullException("seq"); } if (seq.Count != 2) { throw new ArgumentException("Bad sequence size: " + seq.Count, "seq"); } this.ocspResponderID = ResponderID.GetInstance(seq[0].ToAsn1Object()); this.producedAt = (DerGeneralizedTime)seq[1].ToAsn1Object(); }
/** * Constructor from a given details. * * @param nameOrPseudonym Name or pseudonym. * @param nameDistinguisher Name distinguisher. * @param dateOfBirth Date of birth. * @param placeOfBirth Place of birth. * @param gender Gender. * @param postalAddress Postal Address. */ public PersonalData( NameOrPseudonym nameOrPseudonym, IBigInteger nameDistinguisher, DerGeneralizedTime dateOfBirth, DirectoryString placeOfBirth, string gender, DirectoryString postalAddress) { this.nameOrPseudonym = nameOrPseudonym; this.dateOfBirth = dateOfBirth; this.gender = gender; this.nameDistinguisher = nameDistinguisher; this.postalAddress = postalAddress; this.placeOfBirth = placeOfBirth; }
private PrivateKeyUsagePeriod( Asn1Sequence seq) { foreach (Asn1TaggedObject tObj in seq) { if (tObj.TagNo == 0) { _notBefore = DerGeneralizedTime.GetInstance(tObj, false); } else if (tObj.TagNo == 1) { _notAfter = DerGeneralizedTime.GetInstance(tObj, false); } } }
public SesPropertyInfo(DerInteger type, DerUtf8String name, DerInteger certListType, SesCertCollect certList, DerGeneralizedTime createDate, DerGeneralizedTime validStart, DerGeneralizedTime validEnd) { Type = type; Name = name; CertList = certList; CertListType = certListType; CreateDate = createDate; ValidEnd = validEnd; ValidStart = validStart; }
private void checkValues( PersonalData data, NameOrPseudonym nameOrPseudonym, IBigInteger nameDistinguisher, DerGeneralizedTime dateOfBirth, DirectoryString placeOfBirth, string gender, DirectoryString postalAddress) { checkMandatoryField("nameOrPseudonym", nameOrPseudonym, data.NameOrPseudonym); checkOptionalField("nameDistinguisher", nameDistinguisher, data.NameDistinguisher); checkOptionalField("dateOfBirth", dateOfBirth, data.DateOfBirth); checkOptionalField("placeOfBirth", placeOfBirth, data.PlaceOfBirth); checkOptionalField("gender", gender, data.Gender); checkOptionalField("postalAddress", postalAddress, data.PostalAddress); }
private void CheckConstruction( DeclarationOfMajority decl, DeclarationOfMajority.Choice type, DerGeneralizedTime dateOfBirth, int notYoungerThan) { CheckValues(decl, type, dateOfBirth, notYoungerThan); decl = DeclarationOfMajority.GetInstance(decl); CheckValues(decl, type, dateOfBirth, notYoungerThan); decl = DeclarationOfMajority.GetInstance(Asn1Object.FromByteArray(decl.GetEncoded())); CheckValues(decl, type, dateOfBirth, notYoungerThan); }
/** * Constructor from Asn1Sequence. * <p/> * The sequence is of type NameOrPseudonym: * <p/> * <pre> * PersonalData ::= SEQUENCE { * nameOrPseudonym NameOrPseudonym, * nameDistinguisher [0] INTEGER OPTIONAL, * dateOfBirth [1] GeneralizedTime OPTIONAL, * placeOfBirth [2] DirectoryString OPTIONAL, * gender [3] PrintableString OPTIONAL, * postalAddress [4] DirectoryString OPTIONAL * } * </pre> * * @param seq The ASN.1 sequence. */ private PersonalData( Asn1Sequence seq) { if (seq.Count < 1) { throw new ArgumentException("Bad sequence size: " + seq.Count); } IEnumerator e = seq.GetEnumerator(); e.MoveNext(); nameOrPseudonym = NameOrPseudonym.GetInstance(e.Current); while (e.MoveNext()) { Asn1TaggedObject o = Asn1TaggedObject.GetInstance(e.Current); int tag = o.TagNo; switch (tag) { case 0: nameDistinguisher = DerInteger.GetInstance(o, false).Value; break; case 1: dateOfBirth = DerGeneralizedTime.GetInstance(o, false); break; case 2: placeOfBirth = DirectoryString.GetInstance(o, true); break; case 3: gender = DerPrintableString.GetInstance(o, false).GetString(); break; case 4: postalAddress = DirectoryString.GetInstance(o, true); break; default: throw new ArgumentException("Bad tag number: " + o.TagNo); } } }
private PkiHeader(Asn1Sequence seq) { pvno = DerInteger.GetInstance(seq[0]); sender = GeneralName.GetInstance(seq[1]); recipient = GeneralName.GetInstance(seq[2]); for (int pos = 3; pos < seq.Count; ++pos) { Asn1TaggedObject tObj = (Asn1TaggedObject)seq[pos]; switch (tObj.TagNo) { case 0: messageTime = DerGeneralizedTime.GetInstance(tObj, true); break; case 1: protectionAlg = AlgorithmIdentifier.GetInstance(tObj, true); break; case 2: senderKID = Asn1OctetString.GetInstance(tObj, true); break; case 3: recipKID = Asn1OctetString.GetInstance(tObj, true); break; case 4: transactionID = Asn1OctetString.GetInstance(tObj, true); break; case 5: senderNonce = Asn1OctetString.GetInstance(tObj, true); break; case 6: recipNonce = Asn1OctetString.GetInstance(tObj, true); break; case 7: freeText = PkiFreeText.GetInstance(tObj, true); break; case 8: generalInfo = Asn1Sequence.GetInstance(tObj, true); break; default: throw new ArgumentException("unknown tag number: " + tObj.TagNo, "seq"); } } }
public void AddCrlEntry(DerInteger userCertificate, Time revocationDate, int reason, DerGeneralizedTime invalidityDate) { IList extOids = Platform.CreateArrayList(); IList extValues = Platform.CreateArrayList(); if (reason != 0) { CrlReason crlReason = new CrlReason(reason); try { extOids.Add(X509Extensions.ReasonCode); extValues.Add(new X509Extension(false, new DerOctetString(crlReason.GetEncoded()))); } catch (IOException e) { throw new ArgumentException("error encoding reason: " + e); } } if (invalidityDate != null) { try { extOids.Add(X509Extensions.InvalidityDate); extValues.Add(new X509Extension(false, new DerOctetString(invalidityDate.GetEncoded()))); } catch (IOException e) { throw new ArgumentException("error encoding invalidityDate: " + e); } } if (extOids.Count != 0) { AddCrlEntry(userCertificate, revocationDate, new X509Extensions(extOids, extValues)); } else { AddCrlEntry(userCertificate, revocationDate, null); } }
private void checkConstruction( DeclarationOfMajority decl, DeclarationOfMajority.Choice type, DerGeneralizedTime dateOfBirth, int notYoungerThan) { checkValues(decl, type, dateOfBirth, notYoungerThan); decl = DeclarationOfMajority.GetInstance(decl); checkValues(decl, type, dateOfBirth, notYoungerThan); Asn1InputStream aIn = new Asn1InputStream(decl.ToAsn1Object().GetEncoded()); DerTaggedObject info = (DerTaggedObject) aIn.ReadObject(); decl = DeclarationOfMajority.GetInstance(info); checkValues(decl, type, dateOfBirth, notYoungerThan); }
private void checkConstruction( DeclarationOfMajority decl, DeclarationOfMajority.Choice type, DerGeneralizedTime dateOfBirth, int notYoungerThan) { checkValues(decl, type, dateOfBirth, notYoungerThan); decl = DeclarationOfMajority.GetInstance(decl); checkValues(decl, type, dateOfBirth, notYoungerThan); Asn1InputStream aIn = new Asn1InputStream(decl.ToAsn1Object().GetEncoded()); DerTaggedObject info = (DerTaggedObject)aIn.ReadObject(); decl = DeclarationOfMajority.GetInstance(info); checkValues(decl, type, dateOfBirth, notYoungerThan); }
private PersonalData(Asn1Sequence seq) { //IL_0024: Unknown result type (might be due to invalid IL or missing references) //IL_00e9: Unknown result type (might be due to invalid IL or missing references) if (seq.Count < 1) { throw new ArgumentException(string.Concat((object)"Bad sequence size: ", (object)seq.Count)); } global::System.Collections.IEnumerator enumerator = seq.GetEnumerator(); enumerator.MoveNext(); nameOrPseudonym = NameOrPseudonym.GetInstance(enumerator.get_Current()); while (enumerator.MoveNext()) { Asn1TaggedObject instance = Asn1TaggedObject.GetInstance(enumerator.get_Current()); switch (instance.TagNo) { case 0: nameDistinguisher = DerInteger.GetInstance(instance, isExplicit: false).Value; break; case 1: dateOfBirth = DerGeneralizedTime.GetInstance(instance, isExplicit: false); break; case 2: placeOfBirth = DirectoryString.GetInstance(instance, isExplicit: true); break; case 3: gender = DerPrintableString.GetInstance(instance, isExplicit: false).GetString(); break; case 4: postalAddress = DirectoryString.GetInstance(instance, isExplicit: true); break; default: throw new ArgumentException(string.Concat((object)"Bad tag number: ", (object)instance.TagNo)); } } }
private ResponseObject(CertificateID certId, CertificateStatus certStatus, DerGeneralizedTime thisUpdate, DerGeneralizedTime nextUpdate, X509Extensions extensions) { this.certId = certId; if (certStatus == null) { this.certStatus = new CertStatus(); } else if (certStatus is UnknownStatus) { this.certStatus = new CertStatus(2, DerNull.Instance); } else { RevokedStatus revokedStatus = (RevokedStatus)certStatus; CrlReason revocationReason = revokedStatus.HasRevocationReason ? new CrlReason(revokedStatus.RevocationReason) : null; this.certStatus = new CertStatus(new RevokedInfo(new DerGeneralizedTime(revokedStatus.RevocationTime), revocationReason)); } this.thisUpdate = thisUpdate; this.nextUpdate = nextUpdate; this.extensions = extensions; }
public bool IsRevoked(CertificateID id, ref DerGeneralizedTime dt, ref CrlReason reason) { if (Crl == null) { return(false); } else { X509CrlEntry ent = Crl.GetRevokedCertificate(id.SerialNumber); if (ent == null) { return(false); } else { dt = new DerGeneralizedTime(ent.RevocationDate); reason = new CrlReason(CrlReason.CessationOfOperation); return(true); } } }
// TODO Add GetInstance method(s) and amke this private? public CrlID( Asn1Sequence seq) { foreach (Asn1TaggedObject o in seq) { switch (o.TagNo) { case 0: crlUrl = DerIA5String.GetInstance(o, true); break; case 1: crlNum = DerInteger.GetInstance(o, true); break; case 2: crlTime = DerGeneralizedTime.GetInstance(o, true); break; default: throw new ArgumentException("unknown tag number: " + o.TagNo); } } }
public override void PerformTest() { for (int i = 0; i != input.Length; i++) { DerGeneralizedTime t = new DerGeneralizedTime(input[i]); if (output[i].IndexOf('G') > 0) // don't check local time the same way { if (!t.GetTime().Equals(output[i])) { Fail("failed conversion test"); } if (!t.ToDateTime().ToString(@"yyyyMMddHHmmss\Z").Equals(zOutput[i])) { Fail("failed date conversion test"); } } else { string offset = CalculateGmtOffset(t.ToDateTime()); if (!t.GetTime().Equals(output[i] + offset)) { Fail("failed conversion test"); } } } for (int i = 0; i != input.Length; i++) { DerGeneralizedTime t = new DerGeneralizedTime(input[i]); if (!t.ToDateTime().ToString(@"yyyyMMddHHmmss.fff\Z").Equals(mzOutput[i])) { Console.WriteLine("{0} != {1}", t.ToDateTime().ToString(@"yyyyMMddHHmmss.SSS\Z"), mzOutput[i]); Fail("failed long date conversion test"); } } }
internal static global::System.DateTime GetValidCertDateFromValidityModel(PkixParameters paramsPkix, PkixCertPath certPath, int index) { //IL_0065: Expected O, but got Unknown if (paramsPkix.ValidityModel != 1) { return(GetValidDate(paramsPkix)); } if (index <= 0) { return(GetValidDate(paramsPkix)); } if (index - 1 == 0) { DerGeneralizedTime derGeneralizedTime = null; try { X509Certificate x509Certificate = (X509Certificate)certPath.Certificates.get_Item(index - 1); Asn1OctetString extensionValue = x509Certificate.GetExtensionValue(IsisMttObjectIdentifiers.IdIsisMttATDateOfCertGen); derGeneralizedTime = DerGeneralizedTime.GetInstance(extensionValue); } catch (ArgumentException) { throw new global::System.Exception("Date of cert gen extension could not be read."); } if (derGeneralizedTime != null) { try { return(derGeneralizedTime.ToDateTime()); } catch (ArgumentException val2) { ArgumentException val3 = val2; throw new global::System.Exception("Date from date of cert gen extension could not be parsed.", (global::System.Exception)(object) val3); } } } return(((X509Certificate)certPath.Certificates.get_Item(index - 1)).NotBefore); }
public SingleResponse(Asn1Sequence seq) { this.certID = CertID.GetInstance(seq[0]); this.certStatus = CertStatus.GetInstance(seq[1]); this.thisUpdate = (DerGeneralizedTime)seq[2]; if (seq.Count > 4) { this.nextUpdate = DerGeneralizedTime.GetInstance((Asn1TaggedObject)seq[3], true); this.singleExtensions = X509Extensions.GetInstance((Asn1TaggedObject)seq[4], true); return; } if (seq.Count > 3) { Asn1TaggedObject asn1TaggedObject = (Asn1TaggedObject)seq[3]; if (asn1TaggedObject.TagNo == 0) { this.nextUpdate = DerGeneralizedTime.GetInstance(asn1TaggedObject, true); return; } this.singleExtensions = X509Extensions.GetInstance(asn1TaggedObject, true); } }
public TstInfo( DerObjectIdentifier tsaPolicyId, MessageImprint messageImprint, DerInteger serialNumber, DerGeneralizedTime genTime, Accuracy accuracy, DerBoolean ordering, DerInteger nonce, GeneralName tsa, X509Extensions extensions) { this.version = new DerInteger(1); this.tsaPolicyId = tsaPolicyId; this.messageImprint = messageImprint; this.serialNumber = serialNumber; this.genTime = genTime; this.accuracy = accuracy; this.ordering = ordering; this.nonce = nonce; this.tsa = tsa; this.extensions = extensions; }
private void checkConstruction( PersonalData data, NameOrPseudonym nameOrPseudonym, BigInteger nameDistinguisher, DerGeneralizedTime dateOfBirth, DirectoryString placeOfBirth, string gender, DirectoryString postalAddress) { checkValues(data, nameOrPseudonym, nameDistinguisher, dateOfBirth, placeOfBirth, gender, postalAddress); data = PersonalData.GetInstance(data); checkValues(data, nameOrPseudonym, nameDistinguisher, dateOfBirth, placeOfBirth, gender, postalAddress); Asn1InputStream aIn = new Asn1InputStream(data.ToAsn1Object().GetEncoded()); Asn1Sequence seq = (Asn1Sequence) aIn.ReadObject(); data = PersonalData.GetInstance(seq); checkValues(data, nameOrPseudonym, nameDistinguisher, dateOfBirth, placeOfBirth, gender, postalAddress); }
private void checkConstruction( PersonalData data, NameOrPseudonym nameOrPseudonym, IBigInteger nameDistinguisher, DerGeneralizedTime dateOfBirth, DirectoryString placeOfBirth, string gender, DirectoryString postalAddress) { checkValues(data, nameOrPseudonym, nameDistinguisher, dateOfBirth, placeOfBirth, gender, postalAddress); data = PersonalData.GetInstance(data); checkValues(data, nameOrPseudonym, nameDistinguisher, dateOfBirth, placeOfBirth, gender, postalAddress); Asn1InputStream aIn = new Asn1InputStream(data.ToAsn1Object().GetEncoded()); Asn1Sequence seq = (Asn1Sequence)aIn.ReadObject(); data = PersonalData.GetInstance(seq); checkValues(data, nameOrPseudonym, nameDistinguisher, dateOfBirth, placeOfBirth, gender, postalAddress); }
public CrlID(Asn1Sequence seq) { foreach (Asn1TaggedObject item in seq) { switch (item.TagNo) { case 0: crlUrl = DerIA5String.GetInstance(item, isExplicit: true); break; case 1: crlNum = DerInteger.GetInstance(item, isExplicit: true); break; case 2: crlTime = DerGeneralizedTime.GetInstance(item, isExplicit: true); break; default: throw new ArgumentException("unknown tag number: " + item.TagNo); } } }
private ResponseData( Asn1Sequence seq) { int index = 0; Asn1Encodable enc = seq[0]; if (enc is Asn1TaggedObject) { Asn1TaggedObject o = (Asn1TaggedObject)enc; if (o.TagNo == 0) { this.versionPresent = true; this.version = DerInteger.GetInstance(o, true); index++; } else { this.version = V1; } } else { this.version = V1; } this.responderID = ResponderID.GetInstance(seq[index++]); this.producedAt = (DerGeneralizedTime)seq[index++]; this.responses = (Asn1Sequence)seq[index++]; if (seq.Count > index) { this.responseExtensions = X509Extensions.GetInstance( (Asn1TaggedObject)seq[index], true); } }
public void SetEndDate( DerGeneralizedTime endDate) { this.endDate = endDate; }
public void SetStartDate( DerGeneralizedTime startDate) { this.startDate = startDate; }
private TstInfo( Asn1Sequence seq) { IEnumerator e = seq.GetEnumerator(); // version e.MoveNext(); version = DerInteger.GetInstance(e.Current); // tsaPolicy e.MoveNext(); tsaPolicyId = DerObjectIdentifier.GetInstance(e.Current); // messageImprint e.MoveNext(); messageImprint = MessageImprint.GetInstance(e.Current); // serialNumber e.MoveNext(); serialNumber = DerInteger.GetInstance(e.Current); // genTime e.MoveNext(); genTime = DerGeneralizedTime.GetInstance(e.Current); // default for ordering ordering = DerBoolean.False; while (e.MoveNext()) { Asn1Object o = (Asn1Object) e.Current; if (o is Asn1TaggedObject) { DerTaggedObject tagged = (DerTaggedObject) o; switch (tagged.TagNo) { case 0: tsa = GeneralName.GetInstance(tagged, true); break; case 1: extensions = X509Extensions.GetInstance(tagged, false); break; default: throw new ArgumentException("Unknown tag value " + tagged.TagNo); } } if (o is DerSequence) { accuracy = Accuracy.GetInstance(o); } if (o is DerBoolean) { ordering = DerBoolean.GetInstance(o); } if (o is DerInteger) { nonce = DerInteger.GetInstance(o); } } }
/** * Constructor from Asn1Sequence. * <p/> * The sequence is of type NameOrPseudonym: * <p/> * <pre> * PersonalData ::= SEQUENCE { * nameOrPseudonym NameOrPseudonym, * nameDistinguisher [0] INTEGER OPTIONAL, * dateOfBirth [1] GeneralizedTime OPTIONAL, * placeOfBirth [2] DirectoryString OPTIONAL, * gender [3] PrintableString OPTIONAL, * postalAddress [4] DirectoryString OPTIONAL * } * </pre> * * @param seq The ASN.1 sequence. */ private PersonalData( Asn1Sequence seq) { if (seq.Count < 1) throw new ArgumentException("Bad sequence size: " + seq.Count); IEnumerator e = seq.GetEnumerator(); e.MoveNext(); nameOrPseudonym = NameOrPseudonym.GetInstance(e.Current); while (e.MoveNext()) { Asn1TaggedObject o = Asn1TaggedObject.GetInstance(e.Current); int tag = o.TagNo; switch (tag) { case 0: nameDistinguisher = DerInteger.GetInstance(o, false).Value; break; case 1: dateOfBirth = DerGeneralizedTime.GetInstance(o, false); break; case 2: placeOfBirth = DirectoryString.GetInstance(o, true); break; case 3: gender = DerPrintableString.GetInstance(o, false).GetString(); break; case 4: postalAddress = DirectoryString.GetInstance(o, true); break; default: throw new ArgumentException("Bad tag number: " + o.TagNo); } } }