Fingerprint System Performance Analysis and Qualification

This document gives a high level overview of what is required to analyze the performance of a fingerprint system for Chrome OS. In this document, the fingerprint system is the combination of the fingerprint sensor, fingerprint MCU (FPMCU), and matching library that runs on the FPMCU.


  1. An FPMCU firmware that is approved by the Chrome OS Fingerprint Team

    This should include the matching library and any relevant changes necessary to enable full fingerprint functionality within the Chrome OS User Interface.

    Although the fingerprint study tool will collect “raw” fingerprint captures from the sensor [bypassing the matching library], it is important for the study participants to familiarize themselves with the fingerprint unlock feature on Chrome OS, before collecting samples for analysis. To achieve this, the participants will enroll their finger(s) on the Chromebook and use it to unlock the device multiple times.

    The final firmware for a qualification must be built by the Chrome OS Fingerprint Team. If the matching library or any code that impacts the performance of the fingerprint system changes after qualification, a new qualification would be required.

  2. A Chromebook that is fitted with the fingerprint sensor and FPMCU

    The fingerprint sensor must be positioned in a natural location that is approved by Chrome OS.

    For qualification, the testing lab will require at least three identical Chromebook test devices to increase testing speed and redundancy.

  3. A Chrome OS image with the Fingerprint Study Tool enabled

    This is a Chrome OS image file that will be used to install Chrome OS on the Chromebook being tested. In particular, this image must include the Fingerprint Study Tool. This tool prompts the test participant to touch the sensor and aggregates the fingerprints collected. For qualifications, this image must be built by the Chrome OS Fingerprint Team.

    The following are some of the Fingerprint Study Tool configuration parameters to consider:

    • The number of fingers to capture.
    • The number of enrollment captures.
    • The number of verification captures.

    See Fingerprint Study Tool for instructions on how to prepare the image.

  4. A Performance Evaluation Tool

    This is a tool that analyzes the offline raw fingerprint captures produced by the fingerprint study tool. It is expected to accurately identify whether the fingerprint system meets the Chrome OS Fingerprint Requirements for FRR/FAR as true to real world conditions as possible. In general, it should demonstrate the FAR/FRR performance throughout the range of possible matching thresholds and the FRR at predefined thresholds (corresponding to 1/50k and 1/100k FAR).

    The tool itself must run on a standard amd64 GNU/Linux machine, but must invoke the same fingerprint matching library with the same parameters to the FPMCU matching library being qualified. This tool must accurately measure the performance of the provided FPMCU matching library being qualified. Again, there should be no difference in performance between the performance evaluation tool and the fingerprint systems being qualified.

    If the FPMCU fingerprint matching library is provided by the vendor, the vendor is required to provide the Performance Evaluation Tool. This tool must be written in Python 3, but may invoke matching specific functions from a pre-compiled matching library. The Python 3 source must be committed to the Chromium OS FP Study Repository. Google reserves the right to have a third party auditor evaluate the accuracy of the provided Performance Evaluation Tool and its accompanying matching library. This includes source-level analysis of the pre-compiled matching library.

    Considering errors can occur in the fingerprint capture/labeling process, additional diagnostics should be built into the tool to understand which participants contribute more negatively to the overall performance. Again, the tool may indicate which participants/captures are problematic, but may not exclude these from the overall analysis.

    At a minimum, the tool should present the following:

    • Plot of FAR vs. matching threshold (threshold on x-axis)
    • Plot of FRR vs. matching threshold (threshold on x-axis)
    • Plot of Detection Error Tradeoff (FAR on x-axis, FRR on y-axis)
    • The FRR statistics at 1/50k and 1/100k FAR
    • Any Failure to Enrolls (FTE) that occurred

    If enrolled template updating is used, the before and after values/plots must be provided.


  1. Capture participant fingerprint samples using the Fingerprint Study Tool.

    For qualification, the Fingerprint Sensor FAR/FRR Test Procedure must be followed.

  2. Run the analysis tool on the captured fingerprint samples to determine if the fingerprint matching performance meets Chrome OS Fingerprint Requirements.

    For qualifications, no fingerprint samples may be excluded/filtered. If a truly unique and unnatural fingerprint capturing situation arises, the Chrome OS Fingerprint Team can assess and correct the discrepancy on a case by case basis.

  3. Further manual testing must be done to ensure that on-chip matching times meet Chrome OS Fingerprint Requirements.