BioAPI

**BioAPI**（**Biometric Application Programming Interface**、バイオエーピーアイまたはバイオアピー） は、生体認証(バイオメトリクス認証)に関連するアプリケーションのプログラミングインタフェース仕様の国際標準規格。

## 経緯
1990年代前半以前のバイオメトリクス認証業界は、まだ市場が未成熟でスタンドアローン運用が主体であったため、APIの互換性は全く考慮されていなかった。

1990年代後半頃になると、市場の拡大により応用製品が増えてきて、ベンダーの異なる応用製品を相互運用できる様にするため、幾つかの汎用APIが発表された。HA-API(Human Authentication API)、BAPI(Biometric API)等である。

その後、米国標準技術局(NIST)がサポートする業界団体BioAPIコンソーシアムにより、それら汎用APIを統合するBioAPIの開発が始まった。また2001年のアメリカ同時多発テロ事件をうけて米国においてホームランドセキュリティ強化の機運が高まり、これが標準化作業を加速する一因となった。
この様にして開発されたBioAPI 1.1は2002年にANSI規格として発行された。(ANSI/INCITS 358-2002)

その後、BioAPIを国際標準とするためISO/IEC JTC 1/SC 37/WG 2に作業が移管された。BioAPIを国際標準の場に持ち込んだ米国はファストトラック手順(迅速手順)によりBioAPI 1.1をそのままの形で早期に国際標準にすることを目指したが、結局はBioAPI 1.1を叩き台として改めて仕様を練り直すことになった。
こうして開発されたBioAPI 2.0は2006年にISO/IEC規格として発行された。

現在も仕様の改訂や多数の関連仕様の開発がSC 37/WG 2で進められている。

## BioAPI 1.1 (ANSI規格)

ANSI/NISTが発行するアメリカ国内ローカル規格。

3階層構造（アプリケーション層、フレームワーク層、サービスプロバイダ層）を採用する。

BioAPI 1.1の仕様の不具合を修正したBioAPI 1.2と称するバージョンのサンプルソースコードがBioAPIコンソーシアムのウェブサイトに存在するが、このバージョンは正式に発行されたものではない。

## BioAPI 2.x (ISO/IEC規格)

ISO/IECが発行する国際規格。

4階層構造（アプリケーション層、フレームワーク層、サービスプロバイダ層、ファンクションプロバイダ層）を採用する。

BioAPI 2.0 は BioAPI 1.1 をベースに様々な改良を施して策定されたものであり、基本的な枠組みや主要な関数やデータ構造の定義はよく似ているが、細かい部分ではきわめて多数の相違点が存在する。このため、ソースレベルにおいてもバイナリレベルにおいても、両バージョン間の相互互換性は無い。

### BioAPI 2.0
;
:BioAPI Part 1: BioAPI specification「BioAPI 2.0仕様書」

;
:BioAPI Part 2: Biometric archive function provider interface (BAFPI)「生体認証アーカイブ機能プロバイダインタフェース」
:BioAPIのデータベース管理機能のみをモジュール化して独立させるためのAPI。

### BioAPI 2.1

BioAPI 2.0にGUI関連など幾つかの修正を加えた仕様。

;
:BioGUI specification「BioGUI仕様書」
:(この仕様書は追補仕様なのでBioAPI 2.0からの差分のみが記載されている)

### BioAPI 2.2

Framework-Free BioAPI と呼ばれるサブセット仕様。

フレームワーク層を飛ばして、アプリケーション層からサービスプロバイダ層を直接呼び出せる様に仕様を簡易化したもの。

;
:Framework-free BioAPI Specification
:(この仕様書は追補仕様なのでBioAPI 2.1からの差分のみが記載されている)

### BioAPI 2.3

ACBioなどセキュリティに関する仕様を追加したもの。
現時点では未発行。

## 関連する国際標準規格

### Conformance testing for BioAPI

BioAPIのための適合性試験

;
:Part 1: Methods and procedures「方法及び手順」

;
:Part 2: Test assertions for biometric service providers「生体認証サービス提供者(BSP)のための試験仕様」

### CBEFF
共通生体認証交換フォーマットフレームワーク(Common Biometric Exchange Formats Framework)。
生体認証に用いる様々なデータをプラットフォームに依存せずに交換するためのデータフォーマットを定義する。
ただし、CBEFFはあらゆる生体認証に共通するヘッダー情報と枠組み(SBH,BDB,SB)を定義するのみで、個々の生体特徴に固有の情報はISO/IEC 19794シリーズにて定義される。

;
:Part 1: Data element specification 「データ要素(ヘッダー情報)仕様」
:ヘッダーに記載すべき要素などが定義されているだけで、具体的なフォーマットはPart 3に記述される。

;
:Part 2: Procedures for the operation of the Biometric Registration Authority「生体認証登録当局の運用の手順」

;
:Part 3: Patron format specifications「パトロンフォーマット仕様」
:ヘッダーの具体的なフォーマットを定義。

### Biometric Data Interchange Formats

ISO/IEC 19794シリーズは、指紋・顔・虹彩・静脈など個々の生体特徴に固有のフォーマット定義である。
CBEFF(ISO/IEC 19785シリーズ)ではブラックボックスとして扱っているBDBの中身を具体的に定義する。

;
:Part 1: Framework「第1部：フレームワーク」

;
:Part 2: Finger minutiae data「第2部：指紋 特徴データ」

;
:Part 3: Finger pattern spectral data「第3部：指紋 パターンスペクトルデータ」

;
:Part 4: Finger image data「第4部：指紋 画像データ」

;
:Part 5: Face image data「第5部：顔 画像データ」

;
:Part 6: Iris image data「第6部：虹彩 画像データ」

;
:Part 8: Finger pattern skeletal data「第8部：指紋 骨格データ」

;
:Part 9: Vascular image data「第9部：血管(静脈) 画像データ」

## 外部リンク
* BioAPI Consortium
* IBIA(International Biometric Industry Association)

## 関連項目
* 生体認証