entities. This implies that the format information is
defined in a document of some type. If both ends of the
interface are owned/controlled by the same entity (e.g.,
a dev ice manufacturer) then the definition may be
less formal or be contained within some larger spe-
cification. As the relationship between the endpoints
becomes more loosely coupled, more formal and rig-
orous data definitions are needed.
In a closed system, the data format can be whatever
works. It can be hig hly customized and proprietary. In
open systems, however, data formats need to be stan-
dardized so that they can be understood by a wide
variety of producers and consumers of biometric
data. Today, data interchange format standards exist
for most modalities, although at the raw/image levels.
Standard template formats exist only for fingerprint
biometrics.
In addition to the biometric data itself, standards
exist for encapsulating (‘‘packaging’’) that data. This
includes defined structures, standard metadata headers,
and security information. Examples of such standards
are the Common Biometric Exchange Formats Frame-
work (CBEFF) and ANSI/NIST ITL1-2007 [1, 2].
More information on data interchange standards
can be found in the chapter on Standardization.
Device Interfaces
Biometric sensor devices capture biometric data and
sometimes provide additional capabilities to process,
store, and/or match it. For an application to integrate
a biometric dev ice, an interface to that device must
exist and be defined. This includes the physical inter-
face, the communications protocol, and the data/
message exchange.
Physical interfaces to biometric devices generally
utilize industry standards which define both the physical
interface and communications protocols. Because bio-
metric data samples (especially raw data such as images)
can be very large, an interface that provides adequate
speed and bandwidth is desirable. In the early days of
electronic fingerprint scanners, IEEE 1284 parallel inter-
faces were the norm. Today, the Universal Serial Bus
(USB) or IEEE 1394 (‘‘Firewire™’ ’) are more commonly
used. Some biometric sensors are commodity items
such as cameras, microphones, or signature pads.
A common software interface for devices is TWAIN
whose purpose is to provide and foster a universal
public standard which links applications and image
acquisition devices. It supports image acquisition
from a scanner, digital camera, or another device and
imports it directly into an application. Many commod-
ity devices provide TWAIN-compliant device drivers.
To interface to a biometric dev ice from a software
application, operating system (OS) support is re-
quired. This is generally accomplished via a ‘‘device
driver’’. Most devices provide Windows™ device dri-
vers; however, support for other platforms (such as
Linux, Unix, OS2, etc.) is a bit more spotty.
In addition to the device drivers, biometric device
manufacturers usually provide software developer kits
(SDKs) to control and access the functionality of their
device. Applications interface to SDKs via a defined
application programming interface (API) as described
in the following.
Software Interfaces
Biometric software modules are components that pro-
vide a set of biometric functions or capabilities via
a software interface. This includes biometric proces-
sing and matching algorithms or control of a biometric
device. Reusable software packages are called SDKs.
Biometric SDKs with standardized interfaces are called
biometric service providers (BSPs).
APIs can be either ‘‘high level’’ or ‘‘low level’’. In
terms of biometrics, a high level API provides a set of
more abstract, generalized functions (e.g., ‘‘Enroll’’)
whereas a lower level API provides more specific ,
atomic functions (e.g., ‘‘Capture Fingerprint Image’’
or ‘‘Set Contrast’’). The lower the level, the more
modality- and even vendor/device-specific it is. An
example of a low level biometric API standard is
the Speaker Verification API (SVAPI) developed in
the mid-90’s and championed by Novell [3].
A software application interfaces to an SDK or BSP
via an API. The first biometric SDKs appeared in the
mid-90’s. Most SDK APIs are vendor specific. They are
defined by the manufacturer to be highly tailored to the
features and capabilities of their product. The advantage
of such APIs is that they can be very efficient and
provide sophisticated controls. Standard biometric
APIs also exist, which define a common interface defi-
nition for a category of services. This allows an applica-
tion to be written once to the standard API and utilize
any biometric SDK/BSP that conforms to the standard.
92
B
Biometric Interfaces