BioCTS 2012 for ISO/IEC 

User Guide

NIST/ITL CSD Biometric Conformance Test Software for ISO/IEC 

Biometric Data Interchange Format Standards and Selected PIV Profiles

December 2012

Fernando Podio

NIST/ITL CSD Project Manager

Dylan Yaga

NIST/ITL CSD Lead Software Designer

Christofer J. McGinnis

ID Technology Partners (NIST Contractor) 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................................................................................................................................4

4. Conformance Test Suites and Relevant Standards...............................................................................5

4.1. First Generation (1G) of ISO/IEC Data Interchange Formats........................................................5

4.2. Second Generation (2G) of ISO/IEC Data Interchange Formats ...................................................5

4.3. PIV Profile of ISO/IEC 19794-6:2011 (specified in NIST SP 800-76-2)...........................................6

4.4. Test Limitations and/or Additions From the Standards................................................................6

4.4.1. Common Parsing Discrepancy...............................................................................................6

4.4.2. Common Image Assertion Additions ....................................................................................6

4.4.3. Discrepancies........................................................................................................................6

5. Guide...................................................................................................................................................10

5.1. Download and Installation..........................................................................................................10

5.2. Running the Conformance Test Architecture .............................................................................11

5.3. Conformance Test Architecture Features...................................................................................11

5.3.1. Options................................................................................................................................11

5.3.2. Batch Testing.......................................................................................................................12

5.3.3. Editor...................................................................................................................................16

Appendix A..................................................................................................................................................20

A.1 Anatomy of a Result .........................................................................................................................20
2. Disclaimer

NIST/ITL BioCTS 2012

For ISO/IEC

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 2012 (BioCTS 2012) 

for ISO/IEC biometric data interchange format standards developed by JTC 1/SC 37 and selected PIV 

profiles (iris data format). BioCTS 2012 for ISO/IEC includes several Conformance Test Suites (CTSs) 

designed to test implementations of:

 Biometric Data interchange formats

 Full CBEFF Biometric Information Records (BIR)

 Individual components of the CBEFF BIR 

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 6/12/2012
4. Conformance Test Suites and Relevant Standards 

The following is a list of the available test tools and the relevant standards used in their development.

4.1. First Generation (1G) of ISO/IEC Data Interchange Formats 

 ISO/IEC 19794-2: 2005

o ISO/IEC 19794-2:2005, Biometric data interchange formats – Part 2: Finger minutiae 

data

o ISO/IEC 19794-2:2005 TECHNICAL CORRIGENDUM 1

o ISO/IEC 29109-2:2010 Conformance testing methodology for biometric data interchange 

formats defined in ISO/IEC 19794 -- Part 2: Finger minutiae data

 ISO/IEC 19794-4: 2005

o ISO/IEC 19794-4:2005, Biometric data interchange formats -- Part 4: Finger image data

o ISO/IEC 19794-4:2005 TECHNICAL CORRIGENDUM 1

o ISO/IEC 29109-4:2010, Conformance testing methodology for biometric data 

interchange formats defined in ISO/IEC 19794 -- Part 4: Finger image data

o ISO/IEC 29109-4:2010 TECHNICAL CORRIGENDUM 1

 ISO/IEC 19794-5: 2005

o ISO/IEC 19794-5:2005, Biometric data interchange formats -- Part 5: Face image data

o ISO/IEC 19794-5:2005 TECHNICAL CORRIGENDUM 1

o ISO/IEC 19794-5:2005 TECHNICAL CORRIGENDUM 2

o ISO/IEC 29109-5:2012, Conformance testing methodology for biometric data 

interchange formats defined in ISO/IEC 19794 -- Part 5: Face image data

4.2. Second Generation (2G) of ISO/IEC Data Interchange Formats 

 ISO/IEC 19794-2: 2011

o ISO/IEC 19794-2:2011, Biometric data interchange formats -- Part 2: Finger minutiae 

data

o ISO/IEC 19794-2:2011 EDITORIAL CORRIGENDUM 1

o ISO/IEC JTC 1/SC 37 N 4902 Text of 19794-2 3rd PDAM 1, Biometric data interchange 

formats – Part 2: Finger minutia data – Amendment 1: Conformance testing 

methodology

 ISO/IEC 19794-4: 2011

o ISO/IEC 19794-4:2011, Biometric data interchange formats -- Part 4: Finger image data

o ISO/IEC 19794-4:2011 EDITORIAL CORRIGENDUM 1

o ISO/IEC JTC 1/SC 37 N 4944 Text of 19794-4 DAM1, Biometric data interchange formats: 

Part4: Finger image data - Amendment1: Conformance testing methodology

 ISO/IEC 19794-6: 2011

o ISO/IEC 19794-6:2011, Biometric data interchange formats -- Part 6: Iris image data

o ISO/IEC 19794-6:2011 EDITORIAL CORRIGENDUM 1

o ISO/IEC JTC 1/SC 37 N 4881 Text of 19794-6 3rd PDAM 1, Biometric date interchange 

formats - Part 6: Iris image data - Amendment 1: Conformance testing methodology
4.3. PIV Profile of ISO/IEC 19794-6:2011 (specified in NIST SP 800-76-2)

 CBEFF Header of the PIV 19794-6:2011 Profile

o As defined in NIST SP 800-76-2 (Draft) Table 15 “Patron format PIV specification”

 PIV Profile of ISO/IEC 19794-6: 2011 On-Card

o In addition to the ISO/IEC 19794-6:2011 standard this CTS implements requirements

specified in NIST SP 800-76-2 (Draft) “Table 11 – ISO/IEC 19794-6 profile for iris images 

stored on PIV Cards”

 PIV Profile of ISO/IEC 19794-6: 2011 Off-Card

o In addition to the ISO/IEC 19794-6:2011 standard this CTS implements requirements 

specified in NIST SP 800-76-2 (Draft) “Table 12 – ISO/IEC 19794-6 profile for iris images 

stored outside PIV Cards”

 CBEFF Opaque Security Block

o The Opaque SB CTS accepts any data passed to it. No standard was used to implement 

this. No testing is performed.

4.4. Test Limitations and/or Additions From the Standards

Sometimes it is necessary to deviate from the specified standard or testing methodology. The following 

section lists any limitations/additions or discrepancies from the above listed standards.

4.4.1. Common Parsing Discrepancy

A common discrepancy from the standards is that BioCTS 2012 parses data byte-by-byte; sometimes a 

data format will specify a field with less-than a byte length. In all cases an additional field is adjacent to 

it that is also missing several bits from a byte. These fields are combined in the CTSs and are listed in 

each section under “Fields Combined to meet Byte Boundaries”.

(For example: Field 1 is 2 bits long, Field 2 is 14 bits long. Together Field_1_Field_2 is 2 bytes long.)

4.4.2. Common Image Assertion Additions

For CTSs that process images (ISO/IEC 19794 Parts 4, 5 and 6) there are standard image based assertions 

that they all implement – some of which are documented within the corresponding testing 

methodology; some of which are not yet documented.

 Image Header Tests

 Image Footer Tests

 Correct Encoding Tests

o Has Corresponding Metadata

 Image Specified Dimensions vs. Representation Specified Dimensions

4.4.3. Discrepancies

 ISO/IEC 19794-2: 2005

o Fields Combined to meet Byte Boundaries

 Capture Equipment Certification and Capture Device Type ID

 View Number and Impression Type
 Minutia Type and Minutia X Position

 Reserved and Minutia Y Position

 Core Information Type and Core X Location

 Reserved and Core Y Location

 Delta Information and Delta X Location

 Reserved and Delta Y Location

o This Conformance Test Suite does not specifically implement tests found in Table 4 to 

Table 11 – formats for On-Card Minutia.

o Additional Assertions

 Extended Data Block Length

 ISO/IEC 29109-2:2010 specifies valid values as 0 to 65535

 Extended data block is either not present (value 0) or has a length of 4 

and greater.

 AddedL1 test for values 0 or 4 to 65545.

 ISO/IEC 19794-4: 2005

o Additional Assertions

 Finger or Palm Image Quality

 ISO/IEC 19794-4:2005 Technical Corrigendum 1 added values 254 and 

255

o Modified Assertions

 Image Compression Ratio LTE 15

 ISO/IEC 29109-4:2010 Conformance testing methodology for biometric 

interchange records format – Part 4: Finger image data specifies the 

following formula for calculating the Image compression ratio in Test 

Note 9:

o {Horizontal line length} *{Vertical line length} * {pixel depth}

 sizeof{Image data}

o This formula calculates size of the uncompressed image (in bits) 

divided by the size of the compressed image (in bytes)

 The ISO/IEC 19794-4:2005 CTS implements the following formula:

o ({Horizontal line length} *{Vertical line length} * {pixel depth})/8

 sizeof{Image data}

o This formula calculates the size of the uncompressed image (in 

bits), divides it by 8 to get the size of the uncompressed image 

(in bytes) and then divides that by the size of the compressed 

image (in bytes) 

 ISO/IEC 19794-5: 2005

o No Discrepancies.

 ISO/IEC 19794-2: 2011

o Fields Combined to meet Byte Boundaries

 Minutia Field Length and Ridge Ending Type
 Minutia Type and Minutia X Position

 Reserved and Minutia Y Position

 Reserved and Number of Cores

 Core Information Type and Core X Position

 Reserved and Core Y Position

 Reserved and Number of Deltas

 Delta Information Type and Delta X Position

 Reserved and Delta Y Position

o This This Conformance Test Suite does not specifically implement tests found in Table 

A.3 for On-Card Minutia.

o Additional Assertions

 Format Identifier NEQ 0x00524D46 (Little Endian Version of valid format)

 Version Number NEQ 0x00303330 (Little Endian Version of valid format)

 Expected Record Length EQ Counted Record Length

 Minutia X Position LTE Image Width

 Minutia Y Position LTE Image Height

 Cell Width LTE Image Width

 Cell Height LTE Image Height

 ISO/IEC 19794-4: 2011

o Fields Split to Enable Easier Representation

 Segmentation Owner and Algorithm ID (4 bytes) was split into 2 fields:

 Segmentation Owner (2 bytes)

 Segmentation Algorithm ID (2 bytes)

 Finger Image Quality Algorithm and Owner ID (4 bytes) was split into 2 fields:

 Finger Image Quality Algorithm (2 bytes)

 Finger Image Quality Owner ID (2 bytes)

o Modified Assertions

 Image Compression Ratio LTE 15

 ISO/IEC 19794-4 Biometric data interchange formats: Part 4: Finger 

image data -Amendment 1: Conformance testing methodology specifies 

the following formula for calculating the Image compression ratio:

o {Horizontal line length} *{Vertical line length} * {pixel depth}

 sizeof{Image data}

o This formula calculates size of the uncompressed image (in bits) 

divided by the size of the compressed image (in bytes)

 The ISO/IEC 19794-4:2011 CTS implements the following formula:

o ({Horizontal line length} *{Vertical line length} * {pixel depth})/8

 sizeof{Image data}

o This formula calculates the size of the uncompressed image (in 

bits), divides it by 8 to get the size of the uncompressed image 
(in bytes) and then divides that by the size of the compressed 

image (in bytes) 



 ISO/IEC 19794-6: 2011

o No Discrepancies

 PIV Profile

o PIV Profile of ISO/IEC 19794-6: 2011 On-Card

 No Discrepancies

o PIV Profile of ISO/IEC 19794-6: 2011 Off-Card

 No Discrepancies
5. Guide

5.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 BioCTS_2012_ISO_IEC.exe and follow the on 

screen instructions presented in the dialog boxes.

Eventually the following screen will appear; this is where a selection of CTSs can be made.
5.2. Running the Conformance Test Architecture

To run the CTA software from the Start menu: 

Select All Programs then select NIST BioCTS then select ISO IEC and click on BioCTS_ISO_IEC.

5.3. Conformance Test Architecture Features

5.3.1. Options

The Options Tab provides options for output file type and save location, as well as drop down 

menus to select which CTS(s) to run.

The Time Stamped Folder 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)

In the example provided below:
 Text Output will be generated in the directory:

C:\Users\mcginnis\Desktop\BioCTS 2012 For ISO IEC Output\2012.10.31.13.59.22\Text 

Output

 XML Output will be generated in the directory:

C:\Users\mcginnis\Desktop\BioCTS 2012 For ISO IEC Output\2012.10.31.13.59.22\XML 

Output

 The only CTS selected is the one designed to test implementations of the ISO/IEC 19794-

2:2005 standard.

5.3.2. Batch Testing

The Batch Test tab allows multiple transactions (files) to be tested in groups, and displays the 

overall results for each transaction in the Files Under Test pane. 
Several files can be loaded at once.
The Batch Test Tab will display the Transaction’s Overall Result with either:

 - Overall Result of Fail

 - Overall Result of Pass
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.
5.3.3. Editor

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.

There are 2 limitations in the editor currently:

1. New Items (Headers, Representations, Fields) cannot be added

2. Items (Headers, Representations, Fields) cannot be removed 
The editor displays the data and associated results in an expandable, hierarchical format, and 

allows editing of existing data using text fields.

When a component of the BIR is not being used (described as (None)) then those components 

are disabled, and greyed-out within the Editor.
When a Header or Representation is expanded the Editor displays a list of the Fields contained 

in it. Each Field may also be expanded to reveal the Data contained within and the associated 

Results.
When expanded, a Field displays expanders for the Field Level Results and the data that is held 

within the Field.

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

 Saves the contents of a field
Appendix A

A.1 Anatomy of a Result

The result of any test is comprised of 5 elements:

 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 Name – A string to define what test took place

 Result Symbol – Displayed in the text output to help distinguish from passing results

o Warning – “---“

o Error – “***”

o Critical Error – “*!*”

 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

Test Level Test Name Test Message Test Result Result Symbol

Some color-coded example results:

In the Text log, a result is a single string per result:

L1 1.001-CharCount: 3 Greater Than Equal To 1 test results = Ok

*** L1 17.011-CharCount: 5 Is In Inclusive Range 3 to 4 test results = Error ***

In the XML log, a result is broken up in a similar way, however the Result Symbol is omitted:

<Result>

 <Level>L1</Level>

 <Message>3 Greater Than Equal To 1</Message>

 <Results>Ok</Results>

 <Test>1.001-CharCount</Test>

</Result>

<Result>

 <Level>L1</Level>

 <Message>5 Is In Inclusive Range 3 to 4</Message>
 <Results>Error</Results>

 <Test>17.011-CharCount</Test>

</Result>