Information technology — Biometric application programming interface — Part 1: BioAPI specification

ISO/IEC 19784-1:2018 defines the Application Programming Interface (API) and Service Provider Interface (SPI) for standard interfaces within a biometric system that support the provision of that biometric system using components from multiple vendors. It provides interworking between such components through adherence to this and to other International Standards. For use in a system that does not include a BioAPI Framework (called a framework-free BioAPI system), only the SPI interface is applicable, with applications interfacing directly to that in a platform-specific manner. NOTE 1 Many clauses and/or sub-clauses of this document are not applicable for implementation of a framework-free BioAPI system. These are identified at the head of the clause of sub-clause. The BioAPI specification is applicable to a broad range of biometric technology types. It is also applicable to a wide variety of biometrically enabled applications, from personal devices, through network security applications, to large complex identification systems. ISO/IEC 19784-1:2018 supports an architecture in which a BioAPI Framework supports multiple simultaneous biometric applications (provided by different vendors), using multiple dynamically installed and loaded (or unloaded) Biometric Service Provider (BSP) components and BioAPI Units (provided by other different vendors), possibly using one of an alternative set of BioAPI Function Provider (BFP) components (provided by other vendors) or by direct management of BioAPI Units. NOTE 2 Where BioAPI Units are provided by a different vendor fom a BSP, a standardised BioAPI Function Provider Interface (FPI) may be needed. This is outside the scope of this document, but is specified by later parts for the different categories of FPI. NOTE 3 Where a BioAPI Framework is not used in a system, the ability to support multiple applications and multiple BSPs is platform-dependent and depends on the nature of the system-integration techniques employed. ISO/IEC 19784-1:2018 is not required (and should normally not be referenced) when a complete biometric system is being procured from a single vendor, particularly if the addition or interchange of biometric hardware, services, or applications is not a feature of that biometric system. (Such systems are sometimes referred to as "embedded systems".) Standardisation of such systems is not in the scope of this document. ISO/IEC 19784-1:2018 does not define security requirements for biometric applications and biometric service providers. NOTE 4 ISO 19092 provides guidelines on security aspects of biometric systems[3]. The performance of biometric systems (particularly in relation to searches of a large population to provide the biometric identification capability) is not in the scope of this document. Trade-offs between interoperability and performance are not in the scope of this document. ISO/IEC 19784-1:2018 specifies a version of the BioAPI specification that is defined to have a version number described as Major 2, Minor 0, or version 2.0. It also specifies a version number described as Major 2, Minor 1, or version 2.1 that provides an enhanced Graphical User Interface. It also specifies a version number described as Major 2, Minor 2, or version 2.2 that provides features supporting fusion and security. Some clauses and sub-clauses apply only to one of these versions, some to two or more. This is identified at the head of the relevant clauses and sub-clauses. NOTE 5 Earlier versions of the BioAPI specification were not International Standards. NOTE 6 The differences between the requirements of the 2.0 specification and the 2.1 specification for framework-free operation relate only to the biometric type values and encodings. Conformance requirements are specified in Clause 5.

Technologies de l'information — Interface de programmation d'applications biométriques — Partie 1: Spécifications BioAPI

General Information

Status
Published
Publication Date
22-Mar-2018
Current Stage
9060 - Close of review
Start Date
02-Sep-2028
Ref Project

Relations

Buy Standard

Standard
ISO/IEC 19784-1:2018 - Information technology -- Biometric application programming interface
English language
234 pages
sale 15% off
Preview
sale 15% off
Preview

Standards Content (Sample)

INTERNATIONAL ISO/IEC
STANDARD 19784-1
Second edition
2018-04
Information technology — Biometric
application programming interface —
Part 1:
BioAPI specification
Technologies de l'information — Interface de programmation
d'applications biométriques —
Partie 1: Spécifications BioAPI
Reference number
ISO/IEC 19784-1:2018(E)
©
ISO/IEC 2018

---------------------- Page: 1 ----------------------
ISO/IEC 19784-1:2018(E)

COPYRIGHT PROTECTED DOCUMENT
© ISO/IEC 2018
All rights reserved. Unless otherwise specified, or required in the context of its implementation, no part of this publication may
be reproduced or utilized otherwise in any form or by any means, electronic or mechanical, including photocopying, or posting
on the internet or an intranet, without prior written permission. Permission can be requested from either ISO at the address
below or ISO’s member body in the country of the requester.
ISO copyright office
CP 401 • Ch. de Blandonnet 8
CH-1214 Vernier, Geneva
Phone: +41 22 749 01 11
Fax: +41 22 749 09 47
Email: copyright@iso.org
Website: www.iso.org
Published in Switzerland
ii © ISO/IEC 2018 – All rights reserved

---------------------- Page: 2 ----------------------
ISO/IEC 19784-1:2018(E)

Contents Page
Foreword .viii
Introduction .ix
1 Scope . 1
2 Normative references . 2
3 Terms and definitions . 2
4 Symbols and abbreviated terms . 8
5 Conformance . 8
6 The BioAPI architecture. 9
6.1 The full BioAPI API/SPI Architectural Model . 9
6.2 The framework-free BioAPI Architectural Model .10
6.3 The BioAPI BSP Architectural Model .10
6.4 The component registry .12
6.5 BSP and BFP Installation and De-installation .13
6.6 BSP Load and BioAPI Unit Attachment .14
6.7 Controlling BioAPI Units .15
6.8 BIR Structure and Handling .15
6.8.1 BIR Structure .15
6.8.2 BIR Data Handling .16
7 BioAPI types and macros .17
7.1 BioAPI .17
7.2 BioAPI_ACBio_PARAMETERS (BioAPI 2.2) .17
7.3 BioAPI_ASN1_BIR (BioAPI 2.2) .17
7.4 BioAPI_ASN1_ENCODED (BioAPI 2.2) .18
7.5 BioAPI_BFP_LIST_ELEMENT .18
7.6 BioAPI_BFP_SCHEMA .18
7.7 BioAPI_BIR .19
7.8 BioAPI_BIR_ARRAY_POPULATION .19
7.9 BioAPI_BIR_BIOMETRIC_DATA_FORMAT .20
7.10 BioAPI_BIR_BIOMETRIC_PRODUCT_ID .20
7.11 BioAPI_BIR_BIOMETRIC_TYPE (BioAPI 2.0) .20
7.12 BioAPI_BIR_BIOMETRIC_TYPE (BioAPI 2.1) .21
7.13 BioAPI_BIR_DATA_TYPE .22
7.14 BioAPI_BIR_HANDLE .23
7.15 BioAPI_BIR_HEADER .23
7.16 BioAPI_BIR_PURPOSE .24
7.17 BioAPI_BIR_SECURITY_BLOCK_FORMAT .25
7.18 BioAPI_BIR_SUBTYPE (BioAPI 2.0) .25
7.19 BioAPI_BIR_SUBTYPE (BioAPI 2.1) .26
7.20 BioAPI_BIR_SUBTYPE_MASK (BioAPI 2.1) .27
7.21 BioAPI_BOOL .28
7.22 BioAPI_BSP_SCHEMA (BioAPI 2.0) .28
7.23 BioAPI_BSP_SCHEMA (BioAPI 2.1) .30
7.24 BioAPI_CANDIDATE .32
7.25 BioAPI_CATEGORY .32
7.26 BioAPI_DATA .32
7.27 BioAPI_DATE .32
7.28 BioAPI_DB_ACCESS_TYPE .33
7.29 BioAPI_DB_MARKER_HANDLE .33
7.30 BioAPI_DB_HANDLE .33
7.31 BioAPI_DBBIR_ID .33
7.32 BioAPI_DTG .34
7.33 BioAPI_ENCRYPTION_ALG (BioAPI 2.2) .34
© ISO/IEC 2018 – All rights reserved iii

---------------------- Page: 3 ----------------------
ISO/IEC 19784-1:2018(E)

7.34 BioAPI_ENCRYPTION_INFO (BioAPI 2.2) .34
7.35 BioAPI_ERROR_INFO (BioAPI 2.1) .34
7.36 BioAPI_EVENT .35
7.37 BioAPI_EVENT_MASK.35
7.38 BioAPI_EventHandler .35
7.39 BioAPI_FMR .36
7.40 BioAPI_FRAMEWORK_SCHEMA .36
7.41 BioAPI_GUI_BITMAP (BioAPI 2.0) .37
7.42 BioAPI_GUI_BITMAP (BioAPI 2.1) .37
7.43 BioAPI_GUI_BITMAP_ARRAY (BioAPI 2.1) .38
7.44 BioAPI_GUI_ENROLL_TYPE (BioAPI 2.1).38
7.45 BioAPI_GUI_EVENT_SUBSCRIPTION (BioAPI 2.1) .39
7.46 BioAPI_GUI_MESSAGE (BioAPI 2.0) .39
7.47 BioAPI_GUI_MOMENT (BioAPI 2.1) .40
7.48 BioAPI_GUI_OPERATION (BioAPI 2.1) .41
7.49 BioAPI_GUI_PROGRESS (BioAPI 2.0) .41
7.50 BioAPI_GUI_PROGRESS (BioAPI 2.1) .42
7.51 BioAPI_GUI_RESPONSE (BioAPI 2.0) .42
7.52 BioAPI_GUI_RESPONSE (BioAPI 2.1) .42
7.53 BioAPI_GUI_STATE (BioAPI 2.0) .44
7.54 BioAPI_GUI_STATE_CALLBACK (BioAPI 2.0) .44
7.55 BioAPI_GUI_STREAMING_CALLBACK (BioAPI 2.0) .45
7.56 BioAPI_GUI_SUBOPERATION (BioAPI 2.1) .46
7.57 BioAPI_HANDLE .47
7.58 BioAPI_HASH_ALG (BioAPI 2.2) .47
7.59 BioAPI_IDENTIFY_POPULATION .47
7.60 BioAPI_IDENTIFY_POPULATION_TYPE .47
7.61 BioAPI_INDICATOR_STATUS .48
7.62 BioAPI_INPUT_BIR .48
7.63 BioAPI_INPUT_BIR_FORM .48
7.64 BioAPI_INSTALL_ACTION .48
7.65 BioAPI_INSTALL_ERROR .48
7.66 BioAPI_KEY_INFO (BioAPI 2.2) .49
7.67 BioAPI_KEY_TRANSPORT (BioAPI 2.2) .49
7.68 BioAPI_MAC_ALG (BioAPI 2.2) .49
7.69 BioAPI_MAC_INFO (BioAPI 2.2) .49
7.70 BioAPI_OPERATIONS_MASK .50
7.71 BioAPI_OPTIONS_MASK .50
7.72 BioAPI_POWER_MODE .52
7.73 BioAPI_QUALITY .52
7.74 BioAPI_RETURN .53
7.75 BioAPI_SECURITY_OPTIONS_MASK (BioAPI 2.2) .53
7.76 BioAPI_SECURITY_PROFILE (BioAPI 2.2).53
7.77 BioAPI_DIGITAL_SIGNATURE_ALG (BioAPI 2.2) .54
7.78 BioAPI_STRING .55
7.79 BioAPI_TIME .55
7.80 BioAPI_UNIT_ID.55
7.81 BioAPI_UNIT_LIST_ELEMENT .55
7.82 BioAPI_UNIT_SCHEMA .55
7.83 BioAPI_UNIT_SCHEMA (BioAPI 2.2).57
7.84 BioAPI_UUID .58
7.85 BioAPI_VERSION.58
7.86 GUI Events .58
7.86.1 BioAPI_GUI_SELECT_EVENT_HANDLER (BioAPI 2.1) .59
7.86.2 BioAPI_GUI_STATE_EVENT_HANDLER (BioAPI 2.1) .61
7.86.3 BioAPI_GUI_PROGRESS_EVENT_HANDLER (BioAPI 2.1) .63
8 BioAPI functions .65
8.1 Component Management Functions .65
iv © ISO/IEC 2018 – All rights reserved

---------------------- Page: 4 ----------------------
ISO/IEC 19784-1:2018(E)

8.1.1 BioAPI_Init . . .65
8.1.2 BioAPI_Terminate .66
8.1.3 BioAPI_GetFrameworkInfo .66
8.1.4 BioAPI_EnumBSPs .67
8.1.5 BioAPI_BSPLoad .67
8.1.6 BioAPI_BSPUnload .69
8.1.7 BioAPI_BSPAttach .70
8.1.8 BioAPI_BSPAttachSecure (BioAPI 2.2) .71
8.1.9 BioAPI_BSPDetach .73
8.1.10 BioAPI_QueryUnits.74
8.1.11 BioAPI_EnumBFPs .75
8.1.12 BioAPI_QueryBFPs .76
8.1.13 BioAPI_ControlUnit . .77
8.1.14 BioAPI_Control (BioAPI 2.1) .77
8.1.15 BioAPI_Transform (BioAPI 2.1) .78
8.1.16 BioAPI_LinkToEndpoint (BioAPI 2.1) .80
8.1.17 BioAPI_UnlinkFromEndpoint (BioAPI 2.1) .80
8.1.18 BioAPI_EnumFrameworks (BioAPI 2.1) .81
8.2 Data Handle Operations .82
8.2.1 BioAPI_FreeBIRHandle .82
8.2.2 BioAPI_GetBIRFromHandle .82
8.2.3 BioAPI_GetHeaderFromHandle .83
8.3 Callback and Event Operations .83
8.3.1 BioAPI_EnableEvents .83
8.3.2 BioAPI_SetGUICallbacks (BioAPI 2.0) .84
8.3.3 BioAPI_NotifyGUIProgressEvent (BioAPI 2.1) .85
8.3.4 BioAPI_NotifyGUISelectEvent (BioAPI 2.1) .86
8.3.5 BioAPI_NotifyGUIStateEvent (BioAPI 2.1) .87
8.3.6 BioAPI_QueryGUIEventSubscriptions (BioAPI 2.1) .88
8.3.7 BioAPI_RedirectGUIEvents (BioAPI 2.1) .89
8.3.8 BioAPI_SubscribeToGUIEvents (BioAPI 2.1) .91
8.3.9 BioAPI_UnredirectGUIEvents (BioAPI 2.1) .93
8.3.10 BioAPI_UnsubscribeFromGUIEvents (BioAPI 2.1) .94
8.3.11 BioAPI_EnableEventNotifications (BioAPI 2.1) .95
8.4 Biometric Operations .95
8.4.1 BioAPI_Capture .95
8.4.2 BioAPI_CreateTemplate .97
8.4.3 BioAPI_Process .99
8.4.4 BioAPI_ProcessWithAuxBIR (BioAPI2.0 and BioAPI2.1) .100
8.4.5 BioAPI_ProcessUsingAuxBIRs (BioAPI 2.2) .101
8.4.6 BioAPI_VerifyMatch .102
8.4.7 BioAPI_VerifyMatchUsingAuxBIRs (BioAPI 2.2) .104
8.4.8 BioAPI_IdentifyMatch .106
8.4.9 BioAPI_Decide (BioAPI 2.2) .109
8.4.10 BioAPI_Fuse (BioAPI 2.2) .110
8.4.11 BioAPI_Enroll .111
8.4.12 BioAPI_Verify .113
8.4.13 BioAPI_Identify.115
8.4.14 BioAPI_Import .118
8.4.15 BioAPI_Export (BioAPI 2.2) .119
8.4.16 BioAPI_PresetIdentifyPopulation .120
8.5 Database Operations .121
8.5.1 BioAPI_DbOpen .
...

Questions, Comments and Discussion

Ask us and Technical Secretary will try to provide an answer. You can facilitate discussion about the standard in here.