3

I working on a setup where I'm getting users to scan their fingers for fingerprint at a local machine but, the templates are stored at a centralized server for efficiency reasons.

Since the verification SDK resides at the local machine, the server needs to send the template from database to the local machine for the SDK to match them.

I was wondering if this is a safe approach and if the fp templates are security sensitive information? All in all, the question boils down to the following statement, "Can ISO/ANSI fingerprint template formats be used to recreate fingerprints electronically or otherwise?"

Relevant paper: Reconstruction of Fingerprints from Minutiae Points

Vineet Menon
  • 393
  • 3
  • 10

1 Answers1

3

This is not a safe approach! You should encrypt your data and/or use another biometric template protection scheme. For an example, see a technical report of the Indian Aadhaar system, where it is described how they handle it (e.g. on page 47).

Depending on your jurisdition, biometric information may be considered as sensitive. For example, in the EU under GDPR, biometric data is classified under "special categories of personal data" (previously "sensitive personal data").

Furthermore, as you indicated, it may be possible to reconstruct a the phase information of a fingerprint from its minutiae. See e.g. study 1, study 2, study 3. Other studies (see e.g. study) showed that it may be possible to infer gender from fingerprint minutiae. Those are obviously potential breaches of privacy. It is also a security vulnerability, as a reconstructed fingerprint could be used to create a presentation attack instrument (e.g. a gummy finger) and used to circumvent the system by an attacker.

Additionally, by sending your data in plaintext, your system may be vulnerable to man-in-the-middle and replay attacks. So, in conclusion: Do not send your data in plaintext!

Lastly:

the server needs to send the template from database to the local machine for the SDK to match them

This is a very poor design decision as it makes possible a potential attack vector. If an attacker gains the control of the local machine with the SDK, they could repeatedly issue queries to the server/database for different subjects -- thereby exposing their sensitive information! Depending on the jurisdiction, it may also not be legally allowed for the biometric data to be transmitted outside the enrolment server/database.

GloriaVictis
  • 146
  • 1
  • 3
  • Thanks for the answer. The part where I wrote about the SDK at client is a feature of SecuGen (the hardware provider). Their SDK requires that. See, https://ia601500.us.archive.org/12/items/fdxsdkproprogrammingmanualunixlinuxsg10034a005/FDx%20SDK%20Pro%20Programming%20Manual%20%28UNIX-Linux%29%20SG1-0034A-005.pdf – Vineet Menon Nov 21 '19 at 05:29