public BiometricData(TypeOfBiometricData typeOfBiometricData, AlgorithmIdentifier hashAlgorithm, Asn1OctetString biometricDataHash) { this.typeOfBiometricData = typeOfBiometricData; this.hashAlgorithm = hashAlgorithm; this.biometricDataHash = biometricDataHash; sourceDataUri = null; }
public override void PerformTest() { TypeOfBiometricData dataType = new TypeOfBiometricData(TypeOfBiometricData.HandwrittenSignature); AlgorithmIdentifier hashAlgorithm = new AlgorithmIdentifier(OiwObjectIdentifiers.IdSha1, DerNull.Instance); Asn1OctetString dataHash = new DerOctetString(GenerateHash()); BiometricData bd = new BiometricData(dataType, hashAlgorithm, dataHash); CheckConstruction(bd, dataType, hashAlgorithm, dataHash, null); DerIA5String dataUri = new DerIA5String("http://test"); bd = new BiometricData(dataType, hashAlgorithm, dataHash, dataUri); CheckConstruction(bd, dataType, hashAlgorithm, dataHash, dataUri); bd = BiometricData.GetInstance(null); if (bd != null) { Fail("null GetInstance() failed."); } try { BiometricData.GetInstance(new object()); Fail("GetInstance() failed to detect bad object."); } catch (ArgumentException) { // expected } }
public BiometricData(TypeOfBiometricData typeOfBiometricData, AlgorithmIdentifier hashAlgorithm, Asn1OctetString biometricDataHash, DerIA5String sourceDataUri) { this.typeOfBiometricData = typeOfBiometricData; this.hashAlgorithm = hashAlgorithm; this.biometricDataHash = biometricDataHash; this.sourceDataUri = sourceDataUri; }
private void CheckValues( BiometricData bd, TypeOfBiometricData dataType, AlgorithmIdentifier algID, Asn1OctetString dataHash, DerIA5String sourceDataURI) { if (!bd.TypeOfBiometricData.Equals(dataType)) { Fail("types don't match."); } if (!bd.HashAlgorithm.Equals(algID)) { Fail("hash algorithms don't match."); } if (!bd.BiometricDataHash.Equals(dataHash)) { Fail("hash algorithms don't match."); } if (sourceDataURI != null) { if (!bd.SourceDataUri.Equals(sourceDataURI)) { Fail("data uris don't match."); } } else if (bd.SourceDataUri != null) { Fail("data uri found when none expected."); } }
private BiometricData(Asn1Sequence seq) { typeOfBiometricData = TypeOfBiometricData.GetInstance(seq[0]); hashAlgorithm = AlgorithmIdentifier.GetInstance(seq[1]); biometricDataHash = Asn1OctetString.GetInstance(seq[2]); if (seq.Count > 3) { sourceDataUri = DerIA5String.GetInstance(seq[3]); } }
private void CheckNonPredefined( TypeOfBiometricData type, DerObjectIdentifier val) { if (type.IsPredefined) { Fail("predefined type found when not expected."); } if (!type.BiometricDataOid.Equals(val)) { Fail("data oid does not match."); } }
private void CheckPredefined( TypeOfBiometricData type, int val) { if (!type.IsPredefined) { Fail("predefined type expected but not found."); } if (type.PredefinedBiometricType != val) { Fail("predefined type does not match."); } }
private void CheckPredefinedType( int predefinedType) { TypeOfBiometricData type = new TypeOfBiometricData(predefinedType); CheckPredefined(type, predefinedType); type = TypeOfBiometricData.GetInstance(type); CheckPredefined(type, predefinedType); Asn1Object obj = Asn1Object.FromByteArray(type.ToAsn1Object().GetEncoded()); type = TypeOfBiometricData.GetInstance(obj); CheckPredefined(type, predefinedType); }
private void CheckConstruction( BiometricData bd, TypeOfBiometricData dataType, AlgorithmIdentifier hashAlgorithm, Asn1OctetString dataHash, DerIA5String dataUri) { CheckValues(bd, dataType, hashAlgorithm, dataHash, dataUri); bd = BiometricData.GetInstance(bd); CheckValues(bd, dataType, hashAlgorithm, dataHash, dataUri); Asn1Sequence seq = (Asn1Sequence)Asn1Object.FromByteArray(bd.ToAsn1Object().GetEncoded()); bd = BiometricData.GetInstance(seq); CheckValues(bd, dataType, hashAlgorithm, dataHash, dataUri); }
public override void PerformTest() { // // predefined // CheckPredefinedType(TypeOfBiometricData.Picture); CheckPredefinedType(TypeOfBiometricData.HandwrittenSignature); // // non-predefined // DerObjectIdentifier localType = new DerObjectIdentifier("1.1"); TypeOfBiometricData type = new TypeOfBiometricData(localType); CheckNonPredefined(type, localType); type = TypeOfBiometricData.GetInstance(type); CheckNonPredefined(type, localType); Asn1Object obj = type.ToAsn1Object(); type = TypeOfBiometricData.GetInstance(obj); CheckNonPredefined(type, localType); type = TypeOfBiometricData.GetInstance(null); if (type != null) { Fail("null GetInstance() failed."); } try { TypeOfBiometricData.GetInstance(new object()); Fail("GetInstance() failed to detect bad object."); } catch (ArgumentException) { // expected } try { new TypeOfBiometricData(100); Fail("constructor failed to detect bad predefined type."); } catch (ArgumentException) { // expected } // Call Equals to avoid unreachable code warning if (!Equals(TypeOfBiometricData.Picture, 0)) { Fail("predefined picture should be 0"); } // Call Equals to avoid unreachable code warning if (!Equals(TypeOfBiometricData.HandwrittenSignature, 1)) { Fail("predefined handwritten signature should be 1"); } }