BioCTS for AN-2011 and

AN-2011 Update: 2013

User Guide

NIST/ITL CSD Biometric Conformance Test Software for 

ANSI/NIST-ITL 1-2011 and ANSI/NIST-ITL 1-2011 Update: 2013

August 2014

Dylan Yaga

NIST/ITL CSD Lead Software Designer

Fernando Podio

NIST/ITL CSD Project Manager

Christofer J. McGinnis

ID Technology Partners (NIST Associate) Software Developer 

National Institute of Standards and Technology (NIST)

Information Technology Laboratory (ITL)

Computer Security Division (CSD)
1. Contents

1. Contents................................................................................................................................................2

2. Disclaimer..............................................................................................................................................3

3. Overview ...............................................................................................................................................4

3.1. Requirements................................................................................................................................6

4. Guide.....................................................................................................................................................7

4.1. Download and Installation............................................................................................................7

4.2. Running the Conformance Test Architecture ...............................................................................7

4.3. Conformance Test Architecture Features.....................................................................................7

4.3.1. Traditional transaction Batch Testing ...................................................................................7

4.3.2. Traditional Transaction Editor ............................................................................................14

4.3.3. NIEM XML Transaction Batch Testing.................................................................................20

4.3.4. Options................................................................................................................................21

4.4. Elements of a Result ...................................................................................................................23

5. References ..........................................................................................................................................25
2. Disclaimer

NIST/ITL BioCTS

For AN-2011 and AN-2011 Update: 2013

October 2010

The software was developed by the National Institute of Standards and Technology (NIST), an agency of the Federal 

Government. Pursuant to Title 15 United States Code Section 105, works of NIST are not subject to copyright protection in the

United States and are considered to be in the public domain. Thus, the software may be freely reproduced and used. Please

explicitly acknowledge the National Institute of Standards and Technology as the source of the software.

This software is released by NIST as a service and is expressly provided "AS IS." NIST MAKES NO WARRANTY OF ANY KIND, 

EXPRESS, IMPLIED OR STATUTORY, INCLUDING, WITHOUT LIMITATION, THE IMPLIED WARRANTY OF MERCHANTABILITY, 

FITNESS FOR A PARTICULAR PURPOSE, NON-INFRINGEMENT AND DATA ACCURACY. NIST DOES NOT REPRESENT OR WARRANT 

THAT THE OPERATION OF THE SOFTWARE WILL BE UNINTERRUPTED OR ERROR-FREE, OR THAT ANY DEFECTS WILL BE 

CORRECTED.

NIST does not warrant or make any representations regarding the use of the software or the results thereof, including but not

limited to the correctness, accuracy, reliability or usefulness of the software. By using this software or by incorporating this 

software into another product, you agree to hold harmless the United Sates Government for any and all damages or liabilities 

that arise out of such use.

Certain trade names and company products are mentioned in the text or identified. In no case does such identification imply 

recommendation or endorsement by the National Institute of Standards and Technology, nor does it imply that the products 

are necessarily the best available for the purpose. With the exception of material marked as copyrighted, information 

presented in this document is considered public information and may be distributed or copied. Use of appropriate 

byline/photo/image credits is requested.
3. Overview

This document describes the features of the Biometric Conformance Test Software (BioCTS) for

ANSI/NIST-ITL 1-2011 and ANSI/NIST-ITL 1-2011 Update: 2013 (AN) developed by NIST/ITL Computer 

Security Division.

BioCTS for AN-2011 and AN-2011 Update: 2013 is a desktop application which tests biometric 

transactions (files) for conformance to NIST Special Publication (SP) 500-290 Data Format for the 

Interchange of Fingerprint, Facial & Other Biometric Information [1], and NIST Special Publication 500-

290 Rev1 (2013) Data Format for the Interchange of Fingerprint, Facial & Other Biometric Information

[2]. AN-2011 Update: 2013 and related information on the standard can be found at the ANSI/NIST-ITL 

Standard Homepage [3].

BioCTS for AN-2011 and AN-2011 Update: 2013 can be used to test a significant number of transactions

(1,000s+) in a single batch test; evaluate the results at a high level, and load files into the BioCTS Editor 

to drill down to errors found on specific Records, Fields, Subfields and Information Items which comprise 

a transaction. Test Results from each transaction tested are logged and saved to a user-specified folder, 

with a time stamp.

BioCTS for AN-2011 and AN-2011 Update: 2013 supports four Conformance Test Suites (CTS):

 CTSs for AN-2011

o CTS for AN-2011 Traditional Encoded Transactions

o CTS for AN-2011 NIEM XML Encoded Transactions

 CTSs for AN-2011 Update: 2013

o CTS for AN-2011 Update: 2013 Traditional Encoded Transactions

o CTS for AN-2011 Update: 2013 NIEM XML Encoded Transactions

The CTSs for AN-2011 implements all test assertions specified in DRAFT NIST SP 500-295 Revision 1 -

Conformance Testing Methodology for ANSI/NIST-ITL 1-2011, Data Format for the Interchange of 

Fingerprint, Facial & Other Biometric Information [4]. The Record Types for the CTS for AN-2011 

supported1in this CTS are:

 Transaction Level Assertions

 Type 1, Transaction Information Record

 Type 4, High-resolution grayscale fingerprint image

 Type 10, Facial and SMT image

 Type 13, Variable-resolution latent image

 Type 14, Variable-resolution fingerprint image

 Type 15, Palm print image

 Type 17, Iris image

 

1 Note: The CTS for AN-2011 will accept transactions containing Record Types other than those listed, however, 

minimal testing is performed on them. Basic tests, such as testing for the correct format of a Field, Record Length, 

and IDC value are performed.
The initial release of the CTSs for AN-2011 Update: 2013 implements the test assertions specified in 

DRAFT NIST SP 500-295 Revision 1 where appropriate, as well as additional required test assertions on 

new mandatory and optional fields specific to the 2013 Update (e.g., new fields within Record Type 10)

for the following Record Types2:

 Transaction Level Assertions

 Type 1, Transaction Information Record

 Type 4, High-resolution grayscale fingerprint image

 Type 10, Photographic body part imagery (including face and SMT)

Future releases will add additional support for more record types.

During the development of the new CTSs, test assertions have been updated as needed to be 

conformant to NIST Special Publication 500-290 Rev1 (2013).

There are several new features included in the BioCTS User Interface since the last release:

 Graphical Statistic Display – BioCTS provides multiple types of Graphical Charts to visualize the 

locations of errors within a Transaction. The user can choose to save the chart as an image file 

to their computer.

 Advanced Editor Features – BioCTS has improved the editor with two new features: Add and 

Remove Fields, allowing users to edit Transactions from within the BioCTS Editor for Traditional 

Transactions. Fields are added via a powerful Add Field Dialog that graphically displays the 

layout of the Field being added.

 User Defined Field Override – The ANSI/NIST-ITL standards allows for User-Definable Fields in 

several Record Types (e.g., Type 02). In previous versions of BioCTS, these Fields would be 

labeled as “User-defined Field” making it difficult to quickly tell one “User-defined Field” from 

another “User-defined Field”. The latest release of BioCTS allows a user to specify in an external 

file an Override Name for User Defined Fields, to provide a name that would be meaningful to 

the user.

In addition to new User Interface features, BioCTS has included new features within the Test Output 

Logs. BioCTS now reports within every Test Output Log the SHA2 512 bit (also known as SHA 512) [5] [6]

hash value for the following information:

 The File Under Test’s data – which allows a user to later match a Test Output Log to a file, 

regardless of filename.

 Every XML Schema File Used – this allows for verification of which XML Schema files are used, or 

if the user had modified them prior to testing.

 

2 Note: The CTS for AN-2011 Update: 2013 will accept transactions containing Record Types other than those 

listed, however, minimal testing is performed on them. Basic tests, such as testing for the correct format of a Field, 

Record Length, and IDC value are performed.
A new high-level Test Summary file is also generated on a per-batch test basis, providing the list of files 

that were tested, the SHA2 512 bit hash value for the file, the overall result (pass/fail) of the file, as well 

as the statistics for the results.

3.1. Requirements

 Supported Microsoft® Operating Systems

o Windows® XP TM Service Pack 3

o Windows® Vista TM Service Pack 2

o Windows® 7

TM Service Pack 1

 Microsoft® .NET 4.0 Framework

o Microsoft® .NET 4.0 Web Installer (http://www.microsoft.com/enus/download/details.aspx?id=17851)

o Microsoft® .NET 4.0 Stand Alone Installer (http://www.microsoft.com/enus/download/details.aspx?id=17718)

o Links working as of 7/22/2014
4. Guide

4.1. Download and Installation

Download the installer from the website http://www.nist.gov/itl/csd/biometrics/biocta_download.cfm .

After the download completes, run the install program Programs and follow the on screen instructions 

presented in the dialog boxes.

4.2. Running the Conformance Test Architecture

To run the CTA software from the Start menu: 

Select All Programs then select NIST BioCTS, then select ANSI NIST ITL and click on BioCTS for AN-2011 

and AN-2011 Update 2013.

After starting the BioCTS for AN-2011 and AN-2011 Update 2013 Conformance Test Architecture, 

specific Conformance Test Suites may be selected from the Options Tab (See Section 4.3.4 for more 

details). Four Conformance Test Suites are present, and are separated into two categories:

 Traditional Encoding Conformance Test Suites

o ANSI/NIST-ITL 1-2011 Traditional Encoding Conformance Test Suite

o ANSI/NIST-ITL 1-2011 Update: 2013 Traditional Encoding Conformance Test Suite

 NIEM XML Encoding Conformance Test Suites

o ANSI/NIST-ITL 1-2011 NIEM XML Encoding Conformance Test Suite

o ANSI/NIST-ITL 1-2011 Update: 2013 NIEM XML Encoding Conformance Test Suite

Within the Options Tab, a single Conformance Test Suite can be selected for each category.

4.3. Conformance Test Architecture Features

4.3.1. Traditional transaction Batch Testing

The “Traditional Transaction Batch Test” tab allows multiple traditionally encoded transactions 

(files) to be tested in groups, and displays the overall results for each transaction in the “Files 

Under Test” pane. 
Figure 1 - Empty Batch Test Tab
A Significant number of files (1,000s+) can be loaded at in a single batch. The more powerful the 

hardware used, more files that can be tested in batch mode. BioCTS Team members perform the tests

on conventional Desktop Computers (e.g., Intel® Xeon® Processors, 8 GB of Memory).

Figure 2 - Files Loaded into the Batch Test Tab
The “Batch Test” tab will display the transaction’s overall result with either:

 - Overall Result of Fail

 - Overall Result of Pass

Figure 3 - Batch Test tab showing Overall Results
Textual output results for each transaction can be viewed by clicking on the desired filename in 

the “File Under Test” pane. The complete textual results are displayed in the pane to the right.

Figure 4 - Batch Test Tab with a Transaction Selected and Results Displayed in Right Pane
In addition to the detailed Textual Output Log, each file has a statistical breakdown of the 

results.

Figure 5 - Batch Test Tab with a Transaction Selected and Statistics Displayed in Right Pane
There is also a high level graphical view of the errors per Record within a Transaction. These 

graphs can be viewed within BioCTS itself, or saved as an image.

Figure 6 - Batch Test Tab with a Transaction Selected and Chart Displayed in Right Pane (Note: The Colors chosen for the 

chart are Random, and not indicative of any specific measurement result)
4.3.2. Traditional Transaction Editor

The Traditional Transaction Editor is designed to display every portion of a traditionally encoded 

transaction, allowing a user to edit, add and remove fields.

The editor is designed to display as much information as possible upon demand; the editor 

makes use of expander sections, which can be expanded to display more information by 

pressing the button within sections.

Powerful New Editor features have been added to the latest version of the editor:

 Add New Field – Will add a new Field to a Record. Utilizing a new Visual “Add New Field” 

User Interface to preview the new field. This will attempt to automatically fix the Record 

Length field to accommodate the new Field.

 Remove Field – Will remove a Field from a Record. This will attempt to automatically fix 

the Record Length field to accommodate the removal of the Field.

Now users can edit existing fields within a Transaction, and add or remove fields to build 

Transactions from within BioCTS.
The editor displays the data and associated results in an expandable, hierarchical format, and 

allows editing of existing data using text fields.

Figure 7 - The Editor with a Passing Transaction Loaded
The Editor displays results in expander sections where appropriate.

Figure 8 - The Editor Tab with a Passing Transaction Loaded - Displaying Transaction Level Results
When a record is expanded, the Editor displays a list of the fields contained in the record. Each 

field may also be expanded to reveal the data contained within and the associated results. At 

this level new Fields can be added to a Record.

Figure 9 - Editor Tab with Record Type 1 Expanded; revealing collapsed Fields within the Record
The Add New Field prompt will give visual feedback of what the Field will look like. As the information is 

modified, the Visual Display will show the breakdown, so that the correct number of subfields and 

information items can be created.

Figure 10 - The Add New Field Dialog
When expanded, a field displays expanders for the field-level results and the data that is held 

within the field. At this level, a Field can be deleted from a record.

The values in the data text fields can be edited. Two buttons are provided to assist when a large 

amount of data is being manipulated (such as in an image field):

 Loads data into the contents of a field/subfield/information item

 Saves the contents of a field/subfield/information item

Figure 11 - The Editor Tab with Record Type 1 expanded with Field 1.001 expanded
4.3.3. NIEM XML Transaction Batch Testing

The NIEM XML Transaction Batch Testing tab contains the majority of features found within the 

Traditional Transaction Batch Testing Tab. Graphical Display of Statistics (currently implemented 

for Traditional Transaction Batch Test) is under development.

Figure 12 - The NIEM XML Transaction Batch Testing Tab showing the Text Output of a Failing File
4.3.4. Options

The “Options” tab provides several options for BioCTS, and they are described below:

 ANSI/NIST-ITL Conformance Test Suite Selection: The Options tab is where the 

Conformance Test Suites are selected. There are drop-down menus that allow for 

selection of a Traditional Conformance Test Suite, and a NIEM XML Conformance Test 

Suite.

 Output Directory: The Options tab also includes a directory selection of where BioCTS 

saves log files. Within this directory, time-stamped folders are generated for each batch 

test performed.

o The time-stamped folder has the following format:

 yyyy – 4 digit year (e.g. 2012)

 MM – 2 digit month (e.g. 10)

 dd – 2 digit day (e.g. 31)

 HH – 2 digit hour in 24-hour scale (e.g. 13)

 mm – 2 digit minutes (e.g. 59)

 ss – 2 digit seconds (e.g. 22)

o In the example provided below:

 Text Output will be generated in the directory:

 C:\Users\dyaga\Desktop\BioCTS for ANSI NIST ITL

Output\2012.10.31.13.59.22\Text Output

 XML Output will be generated in the directory:

 C:\Users\dyaga\Desktop\BioCTS for ANSI NIST ITL

Output\2012.10.31.13.59.22\XML Output

 ANSI/NIST-ITL 1-2011 XML Schema Extension or Constraint Location / ANSI/NIST-ITL 1-

2011 Update: 2013 XML Schema Extension or Constraint Location: The Options tab is 

also where the Schema file location is specified. BioCTS provides a set of default Schema 

Files, which have been modified to allow BioCTS to perform the tests. NISTIR 7957, 

Conformance Test Architecture and Test Suite for ANSI/NIST-ITL 1-2011 NIEM XML 

Encoded Transactions section 2.4 contains detailed explanations for the reasons the 

XML Schema files provided had to be modified to perform comprehensive conformance 

tests of ANSI/NIST-ITL NIEM XML encoded transactions [7]. However, a Constraint or 

Extension Schema may be used. The features provided (and test outcome for each 

usage are detailed below):

o Extension Schemas: Support for Extension Schemas is provided to allow 

substitution elements to be specified for user-defined information in the 

standard such as the user-defined abstract elements found in Record Type-2.

o Constraint Schemas: Support for Constraint Schemas is provided to allow 

constraints and restrictions to be defined for use in particular applications such 

as standard profiles like the FBI EBTS.
o User Defined Fields Tested Against Default Schemas: When XML files with 

User-Defined fields are tested with the Default Schema Files, the XML files will 

fail the schema validation test.

o Tests against User-Defined Schemas: When a user-defined schema is used 

BioCTS is no longer working with a known set of constraints, both XML files with 

User-Defined fields and without can be affected.

 If the user-defined schema is not syntactically correct, BioCTS will warn 

the user.

 If the XML files tested contain User-Defined Fields that the user-defined 

schema does not contain, the XML files will fail the schema validation 

test.

 User-Defined Field Override File Location: A New feature to this release is the 

specification of a User-Defined Field Override File. There are many “User Defined” Fields 

specified in the ANSI/NIST-ITL standards (e.g., Type 02 Fields), and by default they are 

shown as “User Defined Field” within the Editor and Test Output Logs. This feature 

allows a user to override the names of these fields so that they are more descriptive 

than the default “User Defined Field”.

 Output Options: Lastly there are options to display the Log folder after a test, the 

collection of enhanced statistics of the Tests performed within the software, and the 

option to generate XML logs or not.
Figure 13 - The Options Tab

4.4. Elements of a Result

The result of any test is comprised of 4 elements:

 Test Name – A string to define what test took place

 Test Level – Testing can take place at multiple levels

o Parse – A parsing error occurred with this element

o L1 – A level 1 test

o L2 – A level 2 test

o L3 – A level 3 test
 Test Result

o Ok – The test passed

o Warning – The test passed, but warranted a warning statement (i.e. used a “Unspecified” 

value, etc.)

o Error – The test failed

o Critical Error – The test failed and is preventing other tests from being performed

 Test Message – A description of what went on during the test, and possible error message

The Text Output Log’s format has been altered since the initial release of BioCTS for ANSI/NIST-ITL. The

information presented in a Test Result has been significantly expanded in this version; the test message 

is now generated with as much robust information as possible, including various operators and 

operands used within the test. The following is an example of the current Test Results, where each 

element of the Result is clearly labelled within the Text Output Log:

Figure 14 - Text Output Result Example

The same exact Result is encoded in the XML Log as follows:

Figure 15 - XML Output Result Example
5. References

1. NIST Special Publication 500-290 Data Format for the Interchange of Fingerprint, Facial & Other 

Biometric Information 

http://biometrics.nist.gov/cs_links/standard/AN_ANSI_1-2011_standard.pdf

2. NIST Special Publication 500-290 Rev1 (2013) Data Format for the Interchange of Fingerprint, 

Facial & Other Biometric Information 

http://biometrics.nist.gov/cs_links/standard/ansi_2012/Update-Final_Approved_Version.pdf

3. ANSI/NIST-ITL Standard Homepage

http://www.nist.gov/itl/iad/ig/ansi_standard.cfm

4. DRAFT NIST SP 500-295 Revision 1 – Conformance Testing Methodology for ANSI/NIST-ITL 1-

2011, Data Format for the Interchange of Fingerprint, Facial & Other Biometric Information

http://csrc.nist.gov/groups/ST/BiomResCenter/CTA_BETA/DRAFT_NIST_SP_500_295_Revision1

_October2013.pdf

5. Federal Information Processing Standards Publication 180-4, Secure Hash Standard (SHS)

http://csrc.nist.gov/publications/fips/fips180-4/fips-180-4.pdf

6. SHA-2 Wikipedia Summary

https://en.wikipedia.org/wiki/SHA-2

7. NISTIR 7957 Conformance Test Architecture and Test Suite for ANSI/NIST-ITL 1-2011 NIEM XML 

Encoded Transactions

http://csrc.nist.gov/groups/ST/BiomResCenter/CTA_BETA/NISTIR_7957_August_2013.pdf