BS ISO/IEC 24708:2008
Current
The latest, up-to-date edition.
Information technology. Biometrics. BioAPI Interworking Protocol
Hardcopy , PDF
English
30-04-2009
1 Scope
2 Normative references
2.1 Identical Recommendations/International Standards
2.2 Paired Recommendations/International Standards
equivalent in technical content
2.3 Additional references
3 Conformance
4 Abbreviations
5 Conventions
6 Conformance
7 BIP architecture
7.1 BIP-enabled frameworks
7.2 BIP messages
7.3 BIP endpoints
7.4 BIP links
7.5 Transport protocol bindings
7.6 Creation and destruction of BIP links
8 Remote GUI event notifications
9 Examples of possible system configurations
10 BIR format
11 Identification of BIP endpoints, applications, and BSPs
12 Overview of BIP exchanges
12.1 Security and privacy provisions
12.2 Application invocation of functions on a remote BSP
12.3 Application invocation of functions with no
associated BIP message
12.4 Event notifications
13 General provisions
14 BIP message syntax
15 BioAPI and BIP types
15.1 Integers
15.2 Character strings
15.3 Uniform resource identifiers designating BIP
endpoints
15.4 Type BioAPI_BFP_LIST_ELEMENT
15.5 Type BioAPI_BFP_SCHEMA
15.6 Type BioAPI_BIR
15.7 Type BioAPI_BIR_ARRAY_POPULATION
15.8 Type BioAPI_BIR_BIOMETRIC_DATA_FORMAT
15.9 Type BioAPI_BIR_BIOMETRIC_PRODUCT_ID
15.10 Type BioAPI_BIR_BIOMETRIC_TYPE
15.11 Type BioAPI_BIR_DATA_TYPE
15.12 Type BioAPI_BIR_HANDLE
15.13 Type BioAPI_BIR_HEADER
15.14 Type BioAPI_BIR_PURPOSE
15.15 Type BioAPI_BIR_SECURITY_BLOCK_FORMAT
15.16 Type BioAPI_BIR_SUBTYPE
15.17 Type BioAPI_BIR_SUBTYPE_MASK
15.18 Type BioAPI_BOOL
15.19 Type BioAPI_BSP_SCHEMA
15.20 Type BioAPI_CANDIDATE
15.21 Type BioAPI_CATEGORY
15.22 Type BioAPI_DATA
15.23 Type BioAPI_DATE
15.24 Type BioAPI_DB_ACCESS_TYPE
15.25 Type BioAPI_DB_MARKER_HANDLE
15.26 Type BioAPI_DB_HANDLE
15.27 Type BioAPI_DBBIR_ID
15.28 Type BioAPI_DTG
15.29 Type BioAPI_ERROR_INFO
15.30 Type BioAPI_EVENT
15.31 Type BioAPI_EVENT_MASK
15.32 Type BioAPI_FMR
15.33 Type BioAPI_FRAMEWORK_SCHEMA
15.34 Type BioAPI_GUI_BITMAP
15.35 Type BioAPI_GUI_BITMAP_ARRAY
15.36 Type BioAPI_GUI_EVENT_SUBSCRIPTION
15.37 Type BioAPI_GUI_MOMENT
15.38 Type BioAPI_GUI_ENROLL_TYPE
15.39 Type BioAPI_GUI_OPERATION
15.40 Type BioAPI_GUI_RESPONSE
15.41 Type BioAPI_GUI_SUBOPERATION
15.42 Type BioAPI_HANDLE
15.43 Type BioAPI_IDENTIFY_POPULATION
15.44 Type BioAPI_IDENTIFY_POPULATION_TYPE
15.45 Type BioAPI_INDICATOR_STATUS
15.46 Type BioAPI_INPUT_BIR
15.47 Type BioAPI_INPUT_BIR_FORM
15.48 Type BioAPI_OPERATIONS_MASK
15.49 Type BioAPI_OPTIONS_MASK
15.50 Type BioAPI_POWER_MODE
15.51 Type BioAPI_QUALITY
15.52 Type BioAPI_RETURN
15.53 Type BioAPI_STRING
15.54 Type BioAPI_TIME
15.55 Type BioAPI_UNIT_ID
15.56 Type BioAPI_UNIT_LIST_ELEMENT
15.57 Type BioAPI_UNIT_SCHEMA
15.58 Type BioAPI_UUID
15.59 Type BioAPI_VERSION
16 Functions defined in BioAPI and corresponding
BIP messages
16.1 Function BioAPI_Init
16.2 Function BioAPI_InitEndpoint
16.3 Function BioAPI_Terminate
16.4 Function BioAPI_LinkToEndpoint
16.5 Function BioAPI_UnlinkFromEndpoint
16.6 Function BioAPI_EnumFrameworks
16.7 Function BioAPI_EnumBSPs
16.8 Function BioAPI_EnumBFPs
16.9 Function BioAPI_BSPLoad
16.10 Function BioAPI_BSPUnload
16.11 Function BioAPI_QueryUnits
16.12 Function BioAPI_QueryBFPs
16.13 Function BioAPI_BSPAttach
16.14 Function BioAPI_BSPDetach
16.15 Function BioAPI_EnableEvents
16.16 Function BioAPI_EnableEventNotifications
16.17 Function BioAPI_ControlUnit
16.18 Function BioAPI_Control
16.19 Function BioAPI_FreeBIRHandle
16.20 Function BioAPI_GetBIRFromHandle
16.21 Function BioAPI_GetHeaderFromHandle
16.22 Function BioAPI_SubscribeToGUIEvents
16.23 Function BioAPI_UnsubscribeFromGUIEvents
16.24 Function BioAPI_QueryGUIEventSubscriptions
16.25 Function BioAPI_NotifyGUISelectEvent
16.26 Function BioAPI_NotifyGUIStateEvent
16.27 Function BioAPI_NotifyGUIProgressEvent
16.28 Function BioAPI_RedirectGUIEvents
16.29 Function BioAPI_UnredirectGUIEvents
16.30 Function BioAPI_Capture
16.31 Function BioAPI_CreateTemplate
16.32 Function BioAPI_Process
16.33 Function BioAPI_ProcessWithAuxBIR
16.34 Function BioAPI_VerifyMatch
16.35 Function BioAPI_IdentifyMatch
16.36 Function BioAPI_Enroll
16.37 Function BioAPI_Verify
16.38 Function BioAPI_Identify
16.39 Function BioAPI_Import
16.40 Function BioAPI_PresetIdentifyPopulation
16.41 Function BioAPI_Transform
16.42 Function BioAPI_DbOpen
16.43 Function BioAPI_DbClose
16.44 Function BioAPI_DbCreate
16.45 Function BioAPI_DbDelete
16.46 Function BioAPI_DbSetMarker
16.47 Function BioAPI_DbFreeMarker
16.48 Function BioAPI_DbStoreBIR
16.49 Function BioAPI_DbGetBIR
16.50 Function BioAPI_DbGetNextBIR
16.51 Function BioAPI_DbDeleteBIR
16.52 Function BioAPI_CalibrateSensor
16.53 Function BioAPI_SetPowerMode
16.54 Function BioAPI_SetIndicatorStatus
16.55 Function BioAPI_GetIndicatorStatus
16.56 Function BioAPI_GetLastErrorInfo
16.57 Function BioAPI_Cancel
16.58 Function BioAPI_Free
16.59 Function BioAPI_RegisterBSP
16.60 Function BioAPI_UnregisterBSP
16.61 Function BioAPI_RegisterBFP
16.62 Function BioAPI_UnregisterBFP
17 Callback functions defined in BioAPI and corresponding
BIP messages
17.1 Callback function BioAPI_EVENT_HANDLER
17.2 Callback function BioAPI_GUI_SELECT_EVENT_HANDLER
17.3 Callback function BioAPI_GUI_STATE_EVENT_HANDLER
17.4 Callback function BioAPI_GUI_PROGRESS_EVENT_HANDLER
18 Conceptual tables
18.1 The MasterEndpoints conceptual table
18.2 The VisibleEndpoints conceptual table
18.3 The VisibleBSPRegistrations conceptual table
18.4 The VisibleBFPRegistrations conceptual table
18.5 The RunningBSPLocalReferences conceptual table
18.6 The RunningBSPRemoteReferences conceptual table
18.7 The UnitEventNotificationDisablers conceptual table
18.8 The AttachSessionLocalReferences conceptual table
18.9 The AttachSessionRemoteReferences conceptual table
18.10 The GUIEventLocalSubscriptions conceptual table
18.11 The GUIEventRemoteSubscriptions conceptual table
18.12 The GUIEventRedirectors conceptual table
18.13 The ApplicationOwnedMemoryBlocks conceptual table
19 Converting between a C pointer variable and a
corresponding ASN.1 component (1)
20 Converting between a C pointer variable and a
corresponding ASN.1 component (2)
21 Converting between a C pointer variable and a
corresponding ASN.1 component (3)
22 Initializing and checking a C pointer variable having
no corresponding ASN.1 component
23 Determining a hosting endpoint and a BSP product
UUID from a BSP UUID
24 Determining a hosting endpoint and an original BSP
handle from a local BSP handle
25 Converting BSP UUIDs
26 Converting BSP handles
27 Processing an incoming function call by exchanging
a request/response BIP message pair with a slave
endpoint
28 Processing an incoming request BIP message via an
internal BioAPI function call
29 Notifying a unit event to zero or more subscribers
30 Notifying a GUI select event to a subscriber
31 Notifying a GUI state event to a subscriber
32 Notifying a GUI progress event to a subscriber
33 Handling unconvertible C values
Annex A - Specification of the TCP/IP binding
A.1 General
A.2 Transport-level message
A.3 TCP/IP connection between two BIP endpoints
A.4 Role of endpoint
A.5 Closing the connection on errors
A.6 Transport of BIP messages
A.7 Usage of IRIs
Annex B - Specification of discovery and announcement
in TCP/IP binding
B.1 General
B.2 The PnP mechanisms
B.3 Address and name setting in IPv4
B.4 The network configuration function in IPv4
B.5 Address and name setting in IPv6
B.6 The network configuration function in IPv6
B.7 Discovery and announcement
B.8 Service discovery
B.9 Service requests via broadcast (IPv4)
B.10 Service requests via multicast (IPv4 or IPv6)
B.11 Receiving service announcement packets
B.12 Format of discovery and announcement messages
B.13 Service announcement
B.14 Reset and restart
B.15 Timing of the exchange of messages over a link
channel
B.16 Security of the exchange of messages over a
link channel
Annex C - Specification of the SOAP/HTTP binding
C.1 General provisions
C.2 Security considerations with SOAP/HTTP binding
(tutorial)
C.3 Schema header
C.4 Global elements
C.5 Types
C.6 Parameters of request BIP messages
C.7 Parameters of response BIP messages
C.8 Parameters of notification BIP messages
C.9 Parameters of acknowledgement BIP messages
C.10 Closure of the schema
C.11 Example
Annex D - Clarification of minimal requirements for simple
systems
D.1 A simple system with a single fixed biometric device
D.2 A simple system with a single database of BIRs
Annex E - Possible scenarios involving the use of the
BioAPI interworking protocol
E.1 Access to a central national database for security
and health administration
E.2 Registration of individuals at a point of entry, or a
local registration centre
E.3 Theme-park access
Annex F - Formal ASN.1 modules
Annex G - Bibliography
Describes the syntax, semantics, and encodings of a set of messages ("BIP messages") that enable a BioAPI-conforming application to request biometric operations in BioAPI-conforming biometric service providers (BSPs) across node or process boundaries, and to be notified of events originating in those remote BSPs.
Committee |
IST/44
|
DevelopmentNote |
Supersedes 07/30107757 DC. (04/2009)
|
DocumentType |
Standard
|
Pages |
286
|
PublisherName |
British Standards Institution
|
Status |
Current
|
Supersedes |
1.1 This Recommendation | International Standard specifies the syntax, semantics, and encodings of a set of messages (\'BIP messages\') that enable a BioAPI-conforming application to request biometric operations in BioAPI-conforming biometric service providers (BSPs) across node or process boundaries, and to be notified of events originating in those remote BSPs.
NOTE— Both the local and the remote node or process can contain BSPs that provide storage and retrieval of biometric information records, processing or comparison of such records, or capture of biometric samples from one or more biometric sensors. It is possible for an individual node or process to contain both (one or more) applications that access remote BSPs, and (one or more) BSPs that are accessed by remote applications.
1.2 This Recommendation | International Standard also specifies extensions to the architecture and behaviour of the BioAPI framework that support the creation, processing, sending, and reception of BIP messages. A BioAPI framework conforming to this Recommendation | International Standard (a \'BIP-enabled framework\') creates, processes, sends, and receives BIP messages in close relationship with BioAPI function calls and callbacks. Outgoing BIP messages can be generated and sent by the framework as part of the handling of an incoming call or callback. Incoming BIP messages can cause actions to be performed by the framework as though a call or callback has been received.
1.3 This Recommendation | International Standard explicitly allows for BIP messages to be created, processed, sent, and received by a software entity (a \'generic BIP entity\') that is not necessarily a BIP-enabled framework.
NOTE— This makes it possible to create lightweight implementations of this Recommendation | International Standard in which support for BioAPI-conforming applications or BioAPI-conforming BSPs is either not possible or not required. There is no externally observable difference between the BIP messages created and sent by a generic BIP entity and those created and sent by a BIP-enabled framework. However, while a BIP-enabled framework is required to fully and properly implement the relationship specified herein between BIP messages and BioAPI function calls or callbacks, a generic BIP entity has no such obligation (see clause6).
1.4 This Recommendation | International Standard specifies the use of any of several commonly available transport protocols for the transfer of BIP messages between a pair of software entities (\'BIP endpoints\').
1.5 Standardization of biometric data blocks (carrying raw, intermediate, or processed biometric samples) is not in the scope of this Recommendation | International Standard.
NOTE— Standardization of such formats is performed by the various parts of ISO/IEC19794.
1.6 Standardization of biometric information records (each containing one or more biometric data blocks together with identifying and other meta-information) is not in the scope of this Recommendation | International Standard.
NOTE— Standardization of the elements of such formats is performed by ISO/IEC19785-1, which also contains the specification of a number of standardized biometric information record formats.
1.7 Comparison algorithms for biometric identification or verification are not in the scope of this Recommendation | International Standard.
1.8 The definition of security mechanisms is not in the scope of this Recommendation | International Standard, but a number of bindings to secure transport protocols are specified in order to support secure exchanges between BIP endpoints.
1.9 The classification of, determination of, or requirements on the performance of biometric systems is not in the scope of this Recommendation | International Standard.
1.10 This Recommendation | International Standard specifies a Version 1 of the BioAPI interworking protocol (BIP), and assigns it the ASN.1 object identifier value {iso standard 24708 version (1)} (see ITU-T Rec. X.680 | ISO/IEC8824-1 for the meaning of this notation).
1.11 ISO/IEC19784-1 specifies version 2.0 and 2.1 of BioAPI. This Recommendation | International Standard provides support for only version 2.1.
Standards | Relationship |
ISO/IEC 24708:2008 | Identical |
ISO/IEC 19785-1:2015 | Information technology Common Biometric Exchange Formats Framework Part 1: Data element specification |
ISO/IEC 8825-2:2015 | Information technology ASN.1 encoding rules: Specification of Packed Encoding Rules (PER) Part 2: |
ISO/IEC 8825-4:2015 | Information technology ASN.1 encoding rules: XML Encoding Rules (XER) Part 4: |
ISO/IEC 19785-3:2015 | Information technology Common Biometric Exchange Formats Framework Part 3: Patron format specifications |
ISO/IEC 8824-2:2015 | Information technology Abstract Syntax Notation One (ASN.1): Information object specification Part 2: |
ISO/IEC 9834-8:2014 | Information technology — Procedures for the operation of object identifier registration authorities — Part 8: Generation of universally unique identifiers (UUIDs) and their use in object identifiers |
ISO/IEC 8824-4:2015 | Information technology Abstract Syntax Notation One (ASN.1): Parameterization of ASN.1 specifications Part 4: |
ISO/IEC 8824-1:2015 | Information technology Abstract Syntax Notation One (ASN.1): Specification of basic notation Part 1: |
ISO/IEC TR 8802-1:2001 | Information technology Telecommunications and information exchange between systems Local and metropolitan area networks Specific requirements Part 1: Overview of Local Area Network Standards |
ISO/IEC 8824-3:2015 | Information technology Abstract Syntax Notation One (ASN.1): Constraint specification Part 3: |
ISO/IEC 19784-1:2006 | Information technology Biometric application programming interface Part 1: BioAPI specification |
Access your standards online with a subscription
Features
-
Simple online access to standards, technical information and regulations.
-
Critical updates of standards and customisable alerts and notifications.
-
Multi-user online standards collection: secure, flexible and cost effective.