How to write a robust fingerprint device driver for Android M...

  • Replies:0
  • OpenNot stickiedUnanswered
  • Forum posts: 1

Dec 14, 2015 10:51:26 PM via Website

Hello Android developers!

Our company is attempting to integrate our biometric fingerprint sensor into the Android fingerprint API recently introduced with Android Marshmallow.

Documentation and code samples have thus far done a great job of explaining how to code Java user applications to leverage the fingerprint API, but little has been found on how to properly write a C fingerprint hardware driver that can be consumed by the above-mentioned app-layer fingerprint API in Java.

Studying the fingerprint API codebase, I see that that lowest visible level of the fingerprint API (implemented by modules/libhardware/fingerprint/fingerprint.c) appears a viable place to insert the low-level code we need to interface with our hardware. Some questions remain however...

Q1: We want to implement a secure device driver compatible from Android's trusted-computing architecture. Is code we add to fingerprint.c running in the trusted zone? (i.e. unhackable)

Q2: Given the secure nature of a fingerprint driver, does our company need to develop a relationship with Google for us to obtain the resources we need to write a secure/unhackable fingerprint driver?

Q3: Does a reference hardware driver or documentation exist to guide fingerprint hardware manufacturers write better drivers?

Thank you very much for your advice!