public OtherHash(OtherHashAlgAndValue otherHash) { if (otherHash == null) { throw new ArgumentNullException("otherHash"); } this.otherHash = otherHash; }
public static OtherHash GetInstance(object obj) { if (obj == null || obj is OtherHash) { return((OtherHash)obj); } if (obj is Asn1OctetString) { return(new OtherHash((Asn1OctetString)obj)); } return(new OtherHash(OtherHashAlgAndValue.GetInstance(obj))); }
public SignaturePolicyId(DerObjectIdentifier sigPolicyIdentifier, OtherHashAlgAndValue sigPolicyHash, params SigPolicyQualifierInfo[] sigPolicyQualifiers) { if (sigPolicyIdentifier == null) { throw new ArgumentNullException("sigPolicyIdentifier"); } if (sigPolicyHash == null) { throw new ArgumentNullException("sigPolicyHash"); } this.sigPolicyIdentifier = sigPolicyIdentifier; this.sigPolicyHash = sigPolicyHash; if (sigPolicyQualifiers != null) { this.sigPolicyQualifiers = new DerSequence(sigPolicyQualifiers); } }
private SignaturePolicyId(Asn1Sequence seq) { if (seq == null) { throw new ArgumentNullException("seq"); } if (seq.Count < 2 || seq.Count > 3) { throw new ArgumentException("Bad sequence size: " + seq.Count, "seq"); } sigPolicyIdentifier = (DerObjectIdentifier)seq[0].ToAsn1Object(); sigPolicyHash = OtherHashAlgAndValue.GetInstance(seq[1].ToAsn1Object()); if (seq.Count > 2) { sigPolicyQualifiers = (Asn1Sequence)seq[2].ToAsn1Object(); } }
public virtual void ToSignaturePolicyIdentifierTest() { SignaturePolicyIdentifier actual = new SignaturePolicyInfo(POLICY_IDENTIFIER, POLICY_HASH, POLICY_DIGEST_ALGORITHM , POLICY_URI).ToSignaturePolicyIdentifier(); DerIA5String deria5String = new DerIA5String(POLICY_URI); SigPolicyQualifierInfo sigPolicyQualifierInfo = new SigPolicyQualifierInfo(Org.BouncyCastle.Asn1.Pkcs.PkcsObjectIdentifiers.IdSpqEtsUri , deria5String); DerOctetString derOctetString = new DerOctetString(POLICY_HASH); String algId = DigestAlgorithms.GetAllowedDigest(POLICY_DIGEST_ALGORITHM); DerObjectIdentifier asn1ObjectIdentifier = new DerObjectIdentifier(algId); AlgorithmIdentifier algorithmIdentifier = new AlgorithmIdentifier(asn1ObjectIdentifier); OtherHashAlgAndValue otherHashAlgAndValue = new OtherHashAlgAndValue(algorithmIdentifier, derOctetString); DerObjectIdentifier derObjectIdentifier = new DerObjectIdentifier(POLICY_IDENTIFIER); DerObjectIdentifier derObjectIdentifierInstance = DerObjectIdentifier.GetInstance(derObjectIdentifier); SignaturePolicyId signaturePolicyId = new SignaturePolicyId(derObjectIdentifierInstance, otherHashAlgAndValue , SignUtils.CreateSigPolicyQualifiers(sigPolicyQualifierInfo)); SignaturePolicyIdentifier expected = new SignaturePolicyIdentifier(signaturePolicyId); NUnit.Framework.Assert.AreEqual(expected.ToAsn1Object(), actual.ToAsn1Object()); }
public SignaturePolicyId(DerObjectIdentifier sigPolicyIdentifier, OtherHashAlgAndValue sigPolicyHash, IEnumerable sigPolicyQualifiers) { if (sigPolicyIdentifier == null) { throw new ArgumentNullException("sigPolicyIdentifier"); } if (sigPolicyHash == null) { throw new ArgumentNullException("sigPolicyHash"); } this.sigPolicyIdentifier = sigPolicyIdentifier; this.sigPolicyHash = sigPolicyHash; if (sigPolicyQualifiers != null) { if (!CollectionUtilities.CheckElementsAreOfType(sigPolicyQualifiers, typeof(SigPolicyQualifierInfo))) { throw new ArgumentException("Must contain only 'SigPolicyQualifierInfo' objects", "sigPolicyQualifiers"); } this.sigPolicyQualifiers = new DerSequence(Asn1EncodableVector.FromEnumerable(sigPolicyQualifiers)); } }
public SignaturePolicyId(DerObjectIdentifier sigPolicyIdentifier, OtherHashAlgAndValue sigPolicyHash) : this(sigPolicyIdentifier, sigPolicyHash, (SigPolicyQualifierInfo[])null) { }