/** * Produce an object suitable for an Asn1OutputStream. * <pre> * TBSRequest ::= Sequence { * version [0] EXPLICIT Version DEFAULT v1, * requestorName [1] EXPLICIT GeneralName OPTIONAL, * requestList Sequence OF Request, * requestExtensions [2] EXPLICIT Extensions OPTIONAL } * </pre> */ public override Asn1Object ToAsn1Object() { Asn1EncodableVector v = new Asn1EncodableVector(); // // if default don't include - unless explicitly provided. Not strictly correct // but required for some requests // if (!version.Equals(V1) || versionSet) { v.Add(new DerTaggedObject(true, 0, version)); } if (requestorName != null) { v.Add(new DerTaggedObject(true, 1, requestorName)); } v.Add(requestList); if (requestExtensions != null) { v.Add(new DerTaggedObject(true, 2, requestExtensions)); } return(new DerSequence(v)); }
/** * Produce an object suitable for an Asn1OutputStream. * <pre> * TBSRequest ::= Sequence { * version [0] EXPLICIT Version DEFAULT v1, * requestorName [1] EXPLICIT GeneralName OPTIONAL, * requestList Sequence OF Request, * requestExtensions [2] EXPLICIT Extensions OPTIONAL } * </pre> */ public override Asn1Object ToAsn1Object() { Asn1EncodableVector v = new Asn1EncodableVector(); // // if default don't include. // if (!version.Equals(V1)) { v.Add(new DerTaggedObject(true, 0, version)); } if (requestorName != null) { v.Add(new DerTaggedObject(true, 1, requestorName)); } v.Add(requestList); if (requestExtensions != null) { v.Add(new DerTaggedObject(true, 2, requestExtensions)); } return(new DerSequence(v)); }
/** * <pre> * RSASSA-PSS-params ::= SEQUENCE { * hashAlgorithm [0] OAEP-PSSDigestAlgorithms DEFAULT sha1, * maskGenAlgorithm [1] PKCS1MGFAlgorithms DEFAULT mgf1SHA1, * saltLength [2] INTEGER DEFAULT 20, * trailerField [3] TrailerField DEFAULT trailerFieldBC * } * * OAEP-PSSDigestAlgorithms ALGORITHM-IDENTIFIER ::= { * { OID id-sha1 PARAMETERS NULL }| * { OID id-sha256 PARAMETERS NULL }| * { OID id-sha384 PARAMETERS NULL }| * { OID id-sha512 PARAMETERS NULL }, * ... -- Allows for future expansion -- * } * * PKCS1MGFAlgorithms ALGORITHM-IDENTIFIER ::= { * { OID id-mgf1 PARAMETERS OAEP-PSSDigestAlgorithms }, * ... -- Allows for future expansion -- * } * * TrailerField ::= INTEGER { trailerFieldBC(1) } * </pre> * @return the asn1 primitive representing the parameters. */ public override Asn1Object ToAsn1Object() { Asn1EncodableVector v = new Asn1EncodableVector(); if (!hashAlgorithm.Equals(DefaultHashAlgorithm)) { v.Add(new DerTaggedObject(true, 0, hashAlgorithm)); } if (!maskGenAlgorithm.Equals(DefaultMaskGenFunction)) { v.Add(new DerTaggedObject(true, 1, maskGenAlgorithm)); } if (!saltLength.Equals(DefaultSaltLength)) { v.Add(new DerTaggedObject(true, 2, saltLength)); } if (!trailerField.Equals(DefaultTrailerField)) { v.Add(new DerTaggedObject(true, 3, trailerField)); } return(new DerSequence(v)); }
public override void PerformTest() { DerInteger val = new DerInteger(9); DerApplicationSpecific tagged = new DerApplicationSpecific(false, 3, val); if (!AreEqual(impData, tagged.GetEncoded())) { Fail("implicit encoding failed"); } DerInteger recVal = (DerInteger) tagged.GetObject(Asn1Tags.Integer); if (!val.Equals(recVal)) { Fail("implicit read back failed"); } DerApplicationSpecific certObj = (DerApplicationSpecific) Asn1Object.FromByteArray(certData); if (!certObj.IsConstructed() || certObj.ApplicationTag != 33) { Fail("parsing of certificate data failed"); } byte[] encoded = certObj.GetDerEncoded(); if (!Arrays.AreEqual(certData, encoded)) { Console.WriteLine(Encoding.ASCII.GetString(certData, 0, certData.Length).Substring(0, 20)); Console.WriteLine(Encoding.ASCII.GetString(encoded, 0, encoded.Length).Substring(0, 20)); Fail("re-encoding of certificate data failed"); } }
public override void PerformTest() { DerInteger val = new DerInteger(9); DerApplicationSpecific tagged = new DerApplicationSpecific(false, 3, val); if (!AreEqual(impData, tagged.GetEncoded())) { Fail("implicit encoding failed"); } DerInteger recVal = (DerInteger)tagged.GetObject(Asn1Tags.Integer); if (!val.Equals(recVal)) { Fail("implicit read back failed"); } DerApplicationSpecific certObj = (DerApplicationSpecific) Asn1Object.FromByteArray(certData); if (!certObj.IsConstructed() || certObj.ApplicationTag != 33) { Fail("parsing of certificate data failed"); } byte[] encoded = certObj.GetDerEncoded(); if (!Arrays.AreEqual(certData, encoded)) { Console.WriteLine(Encoding.ASCII.GetString(certData, 0, certData.Length).Substring(0, 20)); Console.WriteLine(Encoding.ASCII.GetString(encoded, 0, encoded.Length).Substring(0, 20)); Fail("re-encoding of certificate data failed"); } }
/** * Produce an object suitable for an Asn1OutputStream. * <pre> * ResponseData ::= Sequence { * version [0] EXPLICIT Version DEFAULT v1, * responderID ResponderID, * producedAt GeneralizedTime, * responses Sequence OF SingleResponse, * responseExtensions [1] EXPLICIT Extensions OPTIONAL } * </pre> */ public override Asn1Object ToAsn1Object() { Asn1EncodableVector v = new Asn1EncodableVector(); if (versionPresent || !version.Equals(V1)) { v.Add(new DerTaggedObject(true, 0, version)); } v.Add(responderID, producedAt, responses); v.AddOptionalTagged(true, 1, responseExtensions); return(new DerSequence(v)); }
public override Asn1Object ToAsn1Object() { Asn1EncodableVector asn1EncodableVector = new Asn1EncodableVector(); if (versionPresent || !version.Equals(V1)) { asn1EncodableVector.Add(new DerTaggedObject(explicitly: true, 0, version)); } asn1EncodableVector.Add(responderID, producedAt, responses); if (responseExtensions != null) { asn1EncodableVector.Add(new DerTaggedObject(explicitly: true, 1, responseExtensions)); } return(new DerSequence(asn1EncodableVector)); }
public override Asn1Object ToAsn1Object() { Asn1EncodableVector asn1EncodableVector = new Asn1EncodableVector(); if (!version.Equals(V1) || versionSet) { asn1EncodableVector.Add(new DerTaggedObject(explicitly: true, 0, version)); } if (requestorName != null) { asn1EncodableVector.Add(new DerTaggedObject(explicitly: true, 1, requestorName)); } asn1EncodableVector.Add(requestList); if (requestExtensions != null) { asn1EncodableVector.Add(new DerTaggedObject(explicitly: true, 2, requestExtensions)); } return(new DerSequence(asn1EncodableVector)); }
public override void PerformTest() { TestTaggedObject(); DerApplicationSpecific appSpec = (DerApplicationSpecific)Asn1Object.FromByteArray(sampleData); if (1 != appSpec.ApplicationTag) { Fail("wrong tag detected"); } DerInteger val = new DerInteger(9); DerApplicationSpecific tagged = new DerApplicationSpecific(false, 3, val); if (!AreEqual(impData, tagged.GetEncoded())) { Fail("implicit encoding failed"); } DerInteger recVal = (DerInteger)tagged.GetObject(Asn1Tags.Integer); if (!val.Equals(recVal)) { Fail("implicit read back failed"); } DerApplicationSpecific certObj = (DerApplicationSpecific) Asn1Object.FromByteArray(certData); if (!certObj.IsConstructed() || certObj.ApplicationTag != 33) { Fail("parsing of certificate data failed"); } byte[] encoded = certObj.GetDerEncoded(); if (!Arrays.AreEqual(certData, encoded)) { Fail("re-encoding of certificate data failed"); } }
public override void PerformTest() { TestTaggedObject(); DerApplicationSpecific appSpec = (DerApplicationSpecific)Asn1Object.FromByteArray(sampleData); if (1 != appSpec.ApplicationTag) { Fail("wrong tag detected"); } DerInteger val = new DerInteger(9); DerApplicationSpecific tagged = new DerApplicationSpecific(false, 3, val); if (!AreEqual(impData, tagged.GetEncoded())) { Fail("implicit encoding failed"); } DerInteger recVal = (DerInteger) tagged.GetObject(Asn1Tags.Integer); if (!val.Equals(recVal)) { Fail("implicit read back failed"); } DerApplicationSpecific certObj = (DerApplicationSpecific) Asn1Object.FromByteArray(certData); if (!certObj.IsConstructed() || certObj.ApplicationTag != 33) { Fail("parsing of certificate data failed"); } byte[] encoded = certObj.GetDerEncoded(); if (!Arrays.AreEqual(certData, encoded)) { Fail("re-encoding of certificate data failed"); } }