BS ISO/IEC 24708:2008 2009
$215.11
Information technology. Biometrics. BioAPI Interworking Protocol
Published By | Publication Date | Number of Pages |
BSI | 2009 | 286 |
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 clause 6).
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/IEC 19794.
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/IEC 19785-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/IEC 8824-1 for the meaning of this notation).
1.11 ISO/IEC 19784-1 specifies version 2.0 and 2.1 of BioAPI. This Recommendation | International Standard provides support for only version 2.1.
PDF Catalog
PDF Pages | PDF Title |
---|---|
5 | CONTENTS |
10 | Foreword |
11 | Introduction |
13 | 1 Scope |
14 | 2 Normative references 2.1 Identical Recommendations | International Standards 2.2 Paired Recommendations | International Standards equivalent in technical content 2.3 Additional references |
15 | 3 Conformance |
16 | 4 Abbreviations |
17 | 5 Conventions 6 Conformance |
19 | 7 BIP architecture 7.1 BIP-enabled frameworks |
20 | 7.2 BIP messages 7.3 BIP endpoints |
21 | 7.4 BIP links |
22 | 7.5 Transport protocol bindings 7.6 Creation and destruction of BIP links |
23 | 8 Remote GUI event notifications |
24 | 9 Examples of possible system configurations |
27 | 10 BIR format 11 Identification of BIP endpoints, applications, and BSPs |
28 | 12 Overview of BIP exchanges 12.1 Security and privacy provisions 12.2 Application invocation of functions on a remote BSP |
30 | 12.3 Application invocation of functions with no associated BIP message 12.4 Event notifications 13 General provisions |
33 | 14 BIP message syntax |
36 | 15 BioAPI and BIP types 15.1 Integers |
37 | 15.2 Character strings 15.3 Uniform resource identifiers designating BIP endpoints |
38 | 15.4 Type BioAPI_BFP_LIST_ELEMENT 15.5 Type BioAPI_BFP_SCHEMA |
40 | 15.6 Type BioAPI_BIR 15.7 Type BioAPI_BIR_ARRAY_POPULATION |
41 | 15.8 Type BioAPI_BIR_BIOMETRIC_DATA_FORMAT 15.9 Type BioAPI_BIR_BIOMETRIC_PRODUCT_ID 15.10 Type BioAPI_BIR_BIOMETRIC_TYPE |
42 | 15.11 Type BioAPI_BIR_DATA_TYPE |
43 | 15.12 Type BioAPI_BIR_HANDLE 15.13 Type BioAPI_BIR_HEADER |
44 | 15.14 Type BioAPI_BIR_PURPOSE |
45 | 15.15 Type BioAPI_BIR_SECURITY_BLOCK_FORMAT 15.16 Type BioAPI_BIR_SUBTYPE |
46 | 15.17 Type BioAPI_BIR_SUBTYPE_MASK |
47 | 15.18 Type BioAPI_BOOL 15.19 Type BioAPI_BSP_SCHEMA |
49 | 15.20 Type BioAPI_CANDIDATE |
50 | 15.21 Type BioAPI_CATEGORY 15.22 Type BioAPI_DATA |
51 | 15.23 Type BioAPI_DATE 15.24 Type BioAPI_DB_ACCESS_TYPE |
52 | 15.25 Type BioAPI_DB_MARKER_HANDLE 15.26 Type BioAPI_DB_HANDLE 15.27 Type BioAPI_DBBIR_ID |
53 | 15.28 Type BioAPI_DTG 15.29 Type BioAPI_ERROR_INFO 15.30 Type BioAPI_EVENT |
54 | 15.31 Type BioAPI_EVENT_MASK 15.32 Type BioAPI_FMR 15.33 Type BioAPI_FRAMEWORK_SCHEMA |
55 | 15.34 Type BioAPI_GUI_BITMAP |
56 | 15.35 Type BioAPI_GUI_BITMAP_ARRAY 15.36 Type BioAPI_GUI_EVENT_SUBSCRIPTION |
57 | 15.37 Type BioAPI_GUI_MOMENT 15.38 Type BioAPI_GUI_ENROLL_TYPE 15.39 Type BioAPI_GUI_OPERATION |
58 | 15.40 Type BioAPI_GUI_RESPONSE |
59 | 15.41 Type BioAPI_GUI_SUBOPERATION |
60 | 15.42 Type BioAPI_HANDLE 15.43 Type BioAPI_IDENTIFY_POPULATION |
61 | 15.44 Type BioAPI_IDENTIFY_POPULATION_TYPE 15.45 Type BioAPI_INDICATOR_STATUS |
62 | 15.46 Type BioAPI_INPUT_BIR |
63 | 15.47 Type BioAPI_INPUT_BIR_FORM 15.48 Type BioAPI_OPERATIONS_MASK |
64 | 15.49 Type BioAPI_OPTIONS_MASK |
65 | 15.50 Type BioAPI_POWER_MODE 15.51 Type BioAPI_QUALITY 15.52 Type BioAPI_RETURN 15.53 Type BioAPI_STRING |
66 | 15.54 Type BioAPI_TIME 15.55 Type BioAPI_UNIT_ID |
67 | 15.56 Type BioAPI_UNIT_LIST_ELEMENT 15.57 Type BioAPI_UNIT_SCHEMA |
68 | 15.58 Type BioAPI_UUID 15.59 Type BioAPI_VERSION |
69 | 16 Functions defined in BioAPI and corresponding BIP messages 16.1 Function BioAPI_Init |
70 | 16.2 Function BioAPI_InitEndpoint 16.3 Function BioAPI_Terminate |
71 | 16.4 Function BioAPI_LinkToEndpoint |
74 | 16.5 Function BioAPI_UnlinkFromEndpoint |
75 | 16.6 Function BioAPI_EnumFrameworks 16.7 Function BioAPI_EnumBSPs |
76 | 16.8 Function BioAPI_EnumBFPs |
77 | 16.9 Function BioAPI_BSPLoad |
79 | 16.10 Function BioAPI_BSPUnload |
81 | 16.11 Function BioAPI_QueryUnits |
82 | 16.12 Function BioAPI_QueryBFPs |
84 | 16.13 Function BioAPI_BSPAttach |
87 | 16.14 Function BioAPI_BSPDetach |
88 | 16.15 Function BioAPI_EnableEvents |
89 | 16.16 Function BioAPI_EnableEventNotifications |
91 | 16.17 Function BioAPI_ControlUnit |
92 | 16.18 Function BioAPI_Control |
93 | 16.19 Function BioAPI_FreeBIRHandle |
94 | 16.20 Function BioAPI_GetBIRFromHandle |
95 | 16.21 Function BioAPI_GetHeaderFromHandle |
96 | 16.22 Function BioAPI_SubscribeToGUIEvents |
100 | 16.23 Function BioAPI_UnsubscribeFromGUIEvents |
104 | 16.24 Function BioAPI_QueryGUIEventSubscriptions |
106 | 16.25 Function BioAPI_NotifyGUISelectEvent |
108 | 16.26 Function BioAPI_NotifyGUIStateEvent |
111 | 16.27 Function BioAPI_NotifyGUIProgressEvent |
113 | 16.28 Function BioAPI_RedirectGUIEvents |
114 | 16.29 Function BioAPI_UnredirectGUIEvents |
116 | 16.30 Function BioAPI_Capture |
117 | 16.31 Function BioAPI_CreateTemplate |
118 | 16.32 Function BioAPI_Process |
119 | 16.33 Function BioAPI_ProcessWithAuxBIR |
121 | 16.34 Function BioAPI_VerifyMatch |
122 | 16.35 Function BioAPI_IdentifyMatch |
124 | 16.36 Function BioAPI_Enroll |
125 | 16.37 Function BioAPI_Verify |
127 | 16.38 Function BioAPI_Identify |
128 | 16.39 Function BioAPI_Import |
130 | 16.40 Function BioAPI_PresetIdentifyPopulation 16.41 Function BioAPI_Transform |
132 | 16.42 Function BioAPI_DbOpen |
133 | 16.43 Function BioAPI_DbClose |
134 | 16.44 Function BioAPI_DbCreate |
135 | 16.45 Function BioAPI_DbDelete |
136 | 16.46 Function BioAPI_DbSetMarker 16.47 Function BioAPI_DbFreeMarker |
137 | 16.48 Function BioAPI_DbStoreBIR |
138 | 16.49 Function BioAPI_DbGetBIR |
139 | 16.50 Function BioAPI_DbGetNextBIR |
140 | 16.51 Function BioAPI_DbDeleteBIR |
141 | 16.52 Function BioAPI_CalibrateSensor |
142 | 16.53 Function BioAPI_SetPowerMode |
143 | 16.54 Function BioAPI_SetIndicatorStatus |
144 | 16.55 Function BioAPI_GetIndicatorStatus |
145 | 16.56 Function BioAPI_GetLastErrorInfo 16.57 Function BioAPI_Cancel |
146 | 16.58 Function BioAPI_Free 16.59 Function BioAPI_RegisterBSP |
148 | 16.60 Function BioAPI_UnregisterBSP |
150 | 16.61 Function BioAPI_RegisterBFP |
152 | 16.62 Function BioAPI_UnregisterBFP |
154 | 17 Callback functions defined in BioAPI and corresponding BIP messages 17.1 Callback function BioAPI_EVENT_HANDLER |
156 | 17.2 Callback function BioAPI_GUI_SELECT_EVENT_HANDLER |
160 | 17.3 Callback function BioAPI_GUI_STATE_EVENT_HANDLER |
164 | 17.4 Callback function BioAPI_GUI_PROGRESS_EVENT_HANDLER |
168 | 18 Conceptual tables 18.1 The MasterEndpoints conceptual table |
170 | 18.2 The VisibleEndpoints conceptual table 18.3 The VisibleBSPRegistrations conceptual table |
173 | 18.4 The VisibleBFPRegistrations conceptual table |
175 | 18.5 The RunningBSPLocalReferences conceptual table |
176 | 18.6 The RunningBSPRemoteReferences conceptual table |
177 | 18.7 The UnitEventNotificationDisablers conceptual table |
178 | 18.8 The AttachSessionLocalReferences conceptual table |
180 | 18.9 The AttachSessionRemoteReferences conceptual table |
181 | 18.10 The GUIEventLocalSubscriptions conceptual table |
183 | 18.11 The GUIEventRemoteSubscriptions conceptual table |
184 | 18.12 The GUIEventRedirectors conceptual table |
185 | 18.13 The ApplicationOwnedMemoryBlocks conceptual table |
186 | 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) |
187 | 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 |
188 | 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 |
189 | 28 Processing an incoming request BIP message via an internal BioAPI function call 29 Notifying a unit event to zero or more subscribers |
190 | 30 Notifying a GUI select event to a subscriber |
192 | 31 Notifying a GUI state event to a subscriber |
193 | 32 Notifying a GUI progress event to a subscriber |
195 | 33 Handling unconvertible C values |
196 | Annex A – Specification of the TCP/IP binding A.1 General A.2 Transport-level message |
199 | 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 |
200 | B.4 The network configuration function in IPv4 |
201 | B.5 Address and name setting in IPv6 B.6 The network configuration function in IPv6 |
202 | B.7 Discovery and announcement |
203 | B.8 Service discovery B.9 Service requests via broadcast (IPv4) B.10 Service requests via multicast (IPv4 or IPv6) |
204 | B.11 Receiving service announcement packets |
205 | B.12 Format of discovery and announcement messages |
206 | 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 |
207 | Annex C – Specification of the SOAP/HTTP binding C.1 General provisions C.2 Security considerations with SOAP/HTTP binding (tutorial) |
208 | C.3 Schema header C.4 Global elements |
212 | C.5 Types |
224 | C.6 Parameters of request BIP messages |
235 | C.7 Parameters of response BIP messages |
243 | C.8 Parameters of notification BIP messages |
245 | C.9 Parameters of acknowledgement BIP messages C.10 Closure of the schema C.11 Example |
256 | 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 |
257 | 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 |
258 | Annex F – Formal ASN.1 modules |
282 | Annex G – Bibliography |