1、BRITISH STANDARD BS ISO/IEC 19784-2:2007 Information technology Biometric application programming interface Part 2: Biometric archive function provider interface ICS 35.040 Incorporating corrigendum May 2011 BS ISO/IEC 19784-2:2007 Incorporating corrigenda May 2011 and November 2013BS ISO/IEC 19784-
2、2:2007 ISBN 978 0 580 84677 9 Amendments/corrigenda issued since publication Date Comments 31 July 2011 Implementation of ISO/IEC corrigendum May 2011 31 December 2013 Implementation of ISO/IEC corrigendum November 2013 This British Standard was published under the authority of the Standards Policy
3、and Strategy Committee on 28 February 2007 The British Standards Institution 2013. Published by BSI Standards Limited 2013 National foreword This British Standard is the UK implementation of ISO/IEC 19784-2:2007, incorporating corrigenda May 2011 and November 2013. The start and finish of text intro
4、duced or altered by corrigendum is indicated in the text by tags. Text altered by ISO/IEC corrigendum May 2011 is indicated in the text by . Text altered by ISO/IEC corrigendum November 2013 is indicated in the text by . The UK participation in its preparation was entrusted to Technical Committee IS
5、T/44, Biometrics. A list of organizations represented on this committee can be obtained on request to its secretary. The publication does not purport to include all the necessary provisions of a contract. Users are responsible for its correct application. Compliance with a British Standard cannot co
6、nfer immunity from legal obligations. Reference number ISO/IEC 19784-2:2007(E)INTERNATIONAL STANDARD ISO/IEC 19784-2 First edition 2007-02-01 Information technology Biometric application programming interface Part 2: Biometric archive function provider interface Technologies de linformation Interfac
7、e de programmation dapplications biomtriques Partie 2: Interface du fournisseur de fonction darchives biomtriques ii BS ISO/IEC 19784-2:2007 ISO/IEC 19784-2:2007 (E)iii Contents Page Foreword iv Introduction v 1 Scope. 1 2 Conformance. 1 3 Terms and definitions 1 4 Interface architecture 1 5 BAFPI D
8、efinition 3 5.1 BAFPI data structures 3 5.1.1 BioAFPI_EventHandler. 3 5.1.2 BioAFPI_BAFPPropertyID 3 5.1.3 BioAFPI_BAFPPropertySchema 4 5.1.4 BioAFPI_UnitPropertyID. 4 5.1.5 BioAFPI_UnitPropertySchema. 5 5.2 BAFP Functions 6 5.2.1 BioAFPI_BAFPLoad 6 5.2.2 BioAFPI_BAFPUnload 7 5.2.3 BioAFPI_UnitAttac
9、h 8 5.2.4 BioAFPI_UnitDetach . 9 5.2.5 BioAFPI_QueryUnits. 10 5.2.6 BioAFPI_Free 11 5.2.7 BioAFPI_ControlUnit 12 5.2.8 BioAFPI_Cancel 13 5.2.9 BioAFPI_SetPowerMode 14 5.2.10 BioAFPI_DbOpen 15 5.2.11 BioAFPI_DbClose . 16 5.2.12 BioAFPI_DbCreate 17 5.2.13 BioAFPI_DbDelete 18 5.2.14 BioAFPI_DbSetMarker
10、 19 5.2.15 BioAFPI_DbFreeMarker 20 5.2.16 BioAFPI_DbStoreBIR 21 5.2.17 BioAFPI_DbGetBIR . 22 5.2.18 BioAFPI_DbGetNextBIR . 23 5.2.19 BioAFPI_DbDeleteBIR 24 BS ISO/IEC 19784-2:2007 ISO/IEC 19784-2:2007 (E)iv Foreword ISO (the International Organization for Standardization) and IEC (the International
11、Electrotechnical Commission) form the specialized system for worldwide standardization. National bodies that are members of ISO or IEC participate in the development of International Standards through technical committees established by the respective organization to deal with particular fields of t
12、echnical activity. ISO and IEC technical committees collaborate in fields of mutual interest. Other international organizations, governmental and non-governmental, in liaison with ISO and IEC, also take part in the work. In the field of information technology, ISO and IEC have established a joint te
13、chnical committee, ISO/IEC JTC 1. International Standards are drafted in accordance with the rules given in the ISO/IEC Directives, Part 2. The main task of the joint technical committee is to prepare International Standards. Draft International Standards adopted by the joint technical committee are
14、 circulated to national bodies for voting. Publication as an International Standard requires approval by at least 75 % of the national bodies casting a vote. Attention is drawn to the possibility that some of the elements of this document may be the subject of patent rights. ISO and IEC shall not be
15、 held responsible for identifying any or all such patent rights. ISO/IEC 19784-2 was prepared by Technical Committee ISO/IEC JTC 1, Information technology, Subcommittee SC 37, Biometrics. ISO/IEC 19784 consists of the following parts, under the general title Information technology Biometric applicat
16、ion programming interface: Part 1: BioAPI specification Part 2: Biometric archive function provider interface BS ISO/IEC 19784-2:2007 ISO/IEC 19784-2:2007 (E)vIntroduction This part of ISO/IEC 19784 specifies the interface to an archive BFP. An archive BFP is responsible for the storage and manageme
17、nt of BIRs. The archive BFP interface covers functions to attach, detach and operate related functional units by the biometric service provider, to store BIRs, to retrieve information about stored BIRs and to retrieve formerly stored BIRs for further processing by a BSP. ISO/IEC 19784-1 provides a h
18、igh-level generic biometric authentication model. This part of ISO/IEC 19784 specifies a BSP archive interface. An archive is responsible for the management of biometric data storage. Because of the application-specific requirements of biometric data storage, an archive interface is standardized. Th
19、e BioAPI Unit where the BIRs are stored is completely under control of the archive BFP. The general model for the handling of BIRs is as if they were data records in a database. BS ISO/IEC 19784-2:2007 ISO/IEC 19784-2:2007 (E) blank BS ISO/IEC 19784-2:2007 ISO/IEC 19784-2:2007 (E)11 Scope This part
20、of ISO/IEC 19784 specifies the interface to an archive biometric function provider. NOTE The interface assumes that the archive will be handled as a database, regardless of its physical realization. (Smartcards, tokens, memory sticks, files on hard drives and any other kind of memory can be handled
21、via an abstraction layer presenting a database interface.) This part of ISO/IEC 19784 enables any third party to create biometric archive function providers, which may be plugged into any biometric service provider supporting this interface. It is not in the scope of this part of ISO/IEC 19784 to de
22、fine security and privacy requirements for storage and management of BIRs. 2 Conformance A conformant BAFP is required to support all functions and parameters specified in this part of ISO/IEC 19784. No subsets of conformant BAFP functions are defined. NOTE BSPs may require any of those functions an
23、d parameters. 3 Terms and definitions For the purposes of this document, the following terms and definitions apply. NOTE Function names and data element names are not included here, but are defined within the body of this part of ISO/IEC 19784. 3.1 biometric archive function provider BAFP BioAPI com
24、ponent, attached to a BSP via its interface, for storage, management and interchange of BIRs 3.2 biometric archive function provider interface BAFPI BAFP-to-BSP interface which supports the functions to manage the BAFP itself, its databases or BIRs 4 Interface architecture ISO/IEC 19784-1:2006 speci
25、fies the interface at the top of the BioAPI Framework, which a biometric application uses to interact with BSPs, and through that to biometric units either directly or through BFPs (see Figure 1 and Figure 2 of ISO/IEC 19784-1:2006). Information technology Biometric application programming interface
26、 Part 2: Biometric archive function provider interface BS ISO/IEC 19784-2:2007 ISO/IEC 19784-2:2007 (E)2 The BAFPI contains the following types of functions. General BFP management functions, which are called by the BSP to manage the BFP and its associated BioAPI Units. These functions are not direc
27、tly related to SPI functions: BioAFPI_BAFPLoad; BioAFPI_BAFPUnload; BioAFPI_UnitAttach; BioAFPI_UnitDetach; BioAFPI_QueryUnits; BioAFPI_Free (the relation of this function to the respective SPI call depends on the behaviour of the BSP when the BSP copies the data the BFP has allocated memory for the
28、n it can immediately send BioAFPI_Free to the BFP, otherwise the BSP will call this function when itself is requested to free the memory for these data). Unit management functions: BioAFPI_ControlUnit (this function is directly related to the SPI function); BioAFPI_Cancel (this function can be calle
29、d in relation to the respective calls of the SPI or the application, but can be called for other reasons from the BSP also when there is no respective request from the BioAPI framework or application; BioAFPI_SetPowerMode (this function is directly related to the SPI function). Database management f
30、unctions. These functions are directly related to the respective functions of the SPI: BioAFPI_DbOpen; BioAFPI_DbClose; BioAFPI_DbCreate; BioAFPI_DbDelete. Record management functions. These functions are directly related to the respective functions of the SPI: BioAFPI_DbSetMarker; BioAFPI_DbFreeMar
31、ker. Data management functions. These functions are directly related to the respective functions of the SPI: BioAFPI_DbStoreBIR; BioAFPI_DbGetBIR; BioAFPI_DbGetNextBIR; BioAFPI_DbQueryBIR; BioAFPI_DbDeleteBIR. BS ISO/IEC 19784-2:2007 ISO/IEC 19784-2:2007 (E)2 The BAFPI contains the following types o
32、f functions. General BFP management functions, which are called by the BSP to manage the BFP and its associated BioAPI Units. These functions are not directly related to SPI functions: BioAFPI_BAFPLoad; BioAFPI_BAFPUnload; BioAFPI_UnitAttach; BioAFPI_UnitDetach; BioAFPI_QueryUnits; BioAFPI_Free (the
33、 relation of this function to the respective SPI call depends on the behaviour of the BSP when the BSP copies the data the BFP has allocated memory for then it can immediately send BioAFPI_Free to the BFP, otherwise the BSP will call this function when itself is requested to free the memory for thes
34、e data). Unit management functions: BioAFPI_ControlUnit (this function is directly related to the SPI function); BioAFPI_Cancel (this function can be called in relation to the respective calls of the SPI or the application, but can be called for other reasons from the BSP also when there is no respe
35、ctive request from the BioAPI framework or application; BioAFPI_SetPowerMode (this function is directly related to the SPI function). Database management functions. These functions are directly related to the respective functions of the SPI: BioAFPI_DbOpen; BioAFPI_DbClose; BioAFPI_DbCreate; BioAFPI
36、_DbDelete. Record management functions. These functions are directly related to the respective functions of the SPI: BioAFPI_DbSetMarker; BioAFPI_DbFreeMarker. Data management functions. These functions are directly related to the respective functions of the SPI: BioAFPI_DbStoreBIR; BioAFPI_DbGetBIR
37、; BioAFPI_DbGetNextBIR; BioAFPI_DbQueryBIR; BioAFPI_DbDeleteBIR. BS ISO/IEC 19784-2:2007 ISO/IEC 19784-2:2007 (E) 35 BAFPI Definition 5.1 BAFPI data structures 5.1.1 BioAFPI_EventHandler This defines the event handler interface to receive asynchronous notification of events of type BioAPI_ EVENT fro
38、m a BioAPI Unit. Example events include insertion or removal of a BioAPI Unit (e.g. insertion or withdrawal of a Smartcard storing biometric templates for off card or on card matching). This event handler is passed to the BAFP during BioAFPI_BFPLoad. This is the single event handler that all BioAPI
39、Units managed by this BAFP should use to notify the BSP of event types that occur in a loaded BAFP. typedef BioAPI_RETURN (BioAPI *BioAFPI_EventHandler) (const BioAPI_UUID *BAFPUuid, BioAPI_UNIT_ID UnitID, BioAPI_UNIT_SCHEMA *UnitSchema, BioAPI_ EVENT EventType); BAFPUuid (input) The UUID of the BAF
40、P raising the event. UnitID (input) The unit ID of the BioAPI Unit (biometric archive) associated with the event. UnitSchema (input) The schema of the BioAPI Unit raising the event. EventType (input) The BioAPI_ EVENT that has occurred. 5.1.2 BioAFPI_BAFPPropertyID Defines the UUID of the format of
41、the BioAFPI_BAFPPropertySchema. When a BAFP claims to be conformant to this part of ISO/IEC 19784, it has to use a PropertySchema as defined within this part of ISO/IEC 19784. #define (BioAFPI_BAFPPropertyID, 0x561403e5, 0x7d2d, 0x489a, 0x89, 0x41, 0xe7, 0xa9, 0x35, 0x99, 0xcf, 0x9c); BS ISO/IEC 197
42、84-2:2007 ISO/IEC 19784-2:2007 (E)4 5.1.3 BioAFPI_BAFPPropertySchema The BioAFPI_BAFPPropertySchema contains information about the function providers capabilities, which are presented to the BioAPI component registry and in the related function calls. The function provider capabilities can differ fr
43、om the capabilities of a biometric archive unit. The capabilities usuable by a BSP or BioAPI application are the intersection of the BAFP and biometric archive unit capabilities. typedef struct _bioafpi_bafp_property_schema uint32_t MaxRecordLength; uint32_t MaxRecordNumber; uint32_t MaxDatabases; u
44、int32_t MaxResponseTime; BioAPI_POWER_MODE SupportedPowerModes; BioAFPI_BAFP_PROPERTY_SCHEMA, *BioAFPI_BAFP_PROPERTY_SCHEMA_PTR; MaxRecordLength The value defines the maximum length in bytes of a record. A record presents a BIR. A Biometric Unit shall use a value smaller or equal to this value in it
45、s UnitSchema. A 0 means that no information about the maximum record length is given. MaxRecordNumber The value defines the maximum number of records. A Biometric Unit shall use a value smaller or equal to this value in its UnitSchema. A 0 means that no information about the maximum number of record
46、s is given. MaxDatabases The value defines the maximum number of databases, which can be managed by the AFP at a time. A 0 means that no information about the maximum number of databases is given. MaxResponseTime The value defines the maximum time in milliseconds a caller of any BAFP function has to
47、 wait until the function returns. A Biometric Unit shall use a value smaller or equal to this value in its UnitSchema. A 0 means that no information about the maximum time until the BioAPI Unit returns is given. SupportedPowerModes The bit mask defining, which power modes can be handled by the BFP.
48、Handling of a power mode means to pass the related function call to the BioAPI Unit, when this supports the mode and to return the error code related to the result of the reaction of the BioAPI Unit. 5.1.4 BioAFPI_UnitPropertyID Defines the UUID of the format of the BioAFPI_UnitPropertySchema. When
49、a BAFP claims to be conformant to this part of ISO/IEC 19784, it has to use a PropertySchema as defined within this part of ISO/IEC 19784. #define (BioAFPI_UnitPropertyID, 0x94cae58f, 0x6b26, 0x41fc, 0x9d, 0xdb, 0xd9, 0x8e, 0x9a, 0xd5, 0x6f, 0xa0); BS ISO/IEC 19784-2:2007 ISO/IEC 19784-2:2007 (E)4 5.1.3 BioAFPI_BAFPPropertySchema The BioAFPI_BAFPProperty