What is a fingerprint SDK?
Hardware vendors usually provide free APIs along with their fingerprint readers. These low level APIs/SDKs enable developers to integrate fingerprint recognition technology into different types of applications. The most common way in which these APIs interface with the integrated applications is by utilizing a DLL or ActiveX (COM) control object and therefore developers can reference these objects to utilize the fingerprint functionality from any desired application.
Why is fingerprint SDK required?
The low level framework is needed to communicate with scanners. It is also the foundation for various other features such as capturing fingerprint images, extracting of the unique minutiae data from those images and comparing two sets of extracted minutiae data. However, even the best SDKs have a learning curve and developers need to overcome it for building a turn-key and robust biometric system.
To summarize, fingerprint SDKs are necessary tools through which software developers can develop their fingerprint recognition based applications. It enables the developer’s applications to directly interact with the connected fingerprint scanning device as well as execute various functions through its high-level Application Programming Interface (API).
What is the importance of selecting proper fingerprint sdk?
Vendors selling scanners also provide SDKs/drivers either free or at a certain cost. Although the main selling point for these SDKs is the price factor, one should not base their decision simply because the manufacturer is providing it free or at a very minimal licensing cost. There can be several disadvantages if the SDK is selected without carefully considering certain factors.
This brings us to the point as to what should be the deciding factors when selecting a fingerprint SDK. We will be discussing some questions that you need to ask your manufacturer before you choose to use their biometric software.
Questions you should ask before selecting a fingerprint SDK?
Whether the SDK is free or paid, the queries listed below will help you in making an informed decision.
What is the matching speed?
Speed is critical to the performance of any scanner. If you have demanding applications, make sure that the vendor provided algorithm has adequate fingerprint matching speed to meet the requirements of your applications.
Although there is somewhat limited data on biometric speed, a US-VISIT research found that the best performing scanners can examine over 1 million fingerprint records per second while the worst performing can examine only up to 731,000 fingerprints per second.
What is the accuracy (FAR/FRR) of your solution?
Another critical aspect in the success of a biometric solution is its accuracy as the primary purpose of fingerprint identification is to reliably and correctly verify individual identity. Accuracy is a measure of how correctly the reader can match biometric information from the same individual and how it avoids falsely matching information from different individuals.
The International Biometric Group conducted a test of participating vendors and found that the FAR of fingerprint systems ranged from 0 to 5%. Also, the FRR tests that were conducted on the same day of enrollment ranged from 0 to 35% whereas those conducted six weeks later ranged from 0 to 66%. For vendor independent tests, the FAR was held at a rate of 0.01% and FRR at 0.6%. This is considered to be sufficient for most authentication scenarios.
Ask the vendor for the false acceptance rate and the false rejection rate of their solution. If it is too high, then the software is not suitable for 1-to-N type of fingerprint matching.
How does license management work?
Fingerprint SDK requires a product key in order to activate the license on every computer that the software is installed on. This usually increases the deployment time and also requires substantial license management effort.
Search for solutions that require the license to be installed only on the server. This will decrease the implementation time as well as eliminate the manual tracking of licenses or dongle keys. Also look for a simple and cost-effective licensing solution.
What format is my fingerprint data stored?
The vendor’s proprietary format will work only with its own algorithm. Therefore you need to ask the manufacturer as to how the templates will be stored. If the templates get stored in their proprietary format, it will not work if you want to use it with other fingerprint algorithms.
What standards do you support (ISO 19794-2 and ANSI 378-2004)?
Ask the vendor if their software is compliant with various standards. Fingerprint SDKs that are compliant with ISO 19794-2 and ANSI 378-2004 imply that they support biometric data interchange and interoperability.
Tomorrow if I switch vendors do I need to re-register users?
This is a very important question and will depend on how the fingerprint templates were initially stored. If they were stored in the vendor’s proprietary format, then the biometric database that you created will simply be of no use if you want to use a scanner or software from a different vendor. In such a case, you will need to re-register all the users again and nothing could be worse than that.
What kind of support do you provide?
Ask if the manufacturer provides a dedicated account manager and support engineer.
What about Security?
If the vendor solution does not offer any built-in security features, then it becomes the developer’s responsibility to protect the fingerprint templates and also the communication channels. Therefore, it is best to look for a SDK that comes with built-in security and ensures that all network communications and stored templates are encrypted as well as encoded.
What fingerprint scanners are supported?
Vendors that provide only limited scanner support pose a difficult problem for developers. Today you might be happy with the performance and the services provided by your vendor. However, in the future if you want to switch to a different scanner you will be stuck as your application works only with your manufacturer’s SDK. If you want to use any other scanner from a different vendor, the only option is to rewrite all your applications using the new vendor’s SDK or a 3rd party software.
What programming languages are supported?
What is the Database support?
It is important to ensure that the biometric solution supports the Database of your choice. If this is not the case then you will end up maintaining 2 different databases.
Also, a good solution will come built-in with features such as deduplication checks, exception handling, data storage and security will need to be handled by the developers. Therefore, it is best to look for biometric software in which these features have been integrated during design.
Does the fingerprint reside on your servers or ours?
Ask the vendor if their software requires storing of the templates on their server. If that is the case, ask for the kind of protection they provide so that the fingerprints are safe while in transit and when stored in the biometric database.
Do you have fingerprint quality check?
Image quality is very essential when enrolling fingerprints. The lack of image quality check capability will lead to poor fingerprints getting enrolled and will ultimately affect accuracy rates. Look for SDKs with smart enrollment feature that ensure only the best quality images will be registered.
Scanners with fingerprint quality checks have lower FAR and FRR thereby providing improved system performance.
In this article, we discussed a few questions that you need to consider before selecting a particular fingerprint SDK. The biometric software that you select should be able to provide superior performance with quick and reliable fingerprint matching in both 1-to-1 and 1-to-many modes.