-
GEBIET DER ERFINDUNG
-
Die
vorliegende Erfindung betrifft allgemein ein Verfahren zur Datenverarbeitung,
ein System und ein Computerprogrammprodukt und insbesondere ein
Verfahren, ein System und ein Computerprogrammprodukt zur Verbesserung
der biometrischen Datenextraktion und -registrierung.
-
ALLGEMEINER STAND DER TECHNIK
-
Sicherheits-Token,
die den internationalen ISO 7816-Normen entsprechen, verwenden einen
relativ langsamen seriellen Kommunikationspfad, um Informationen
zwischen einem Host-Computersystem und einem elektromagnetisch verbundenen
Sicherheits-Token zu übertragen.
Der serielle Pfad wird in einem Halbduplexmodus betrieben, in dem
sich die Informationen nur in einer Richtung zurzeit bewegen. Diese
eingeschränkte
Kommunikationsfähigkeit
kann einen Kommunikationsengpass für Benutzer und Anwendungen
erzeugen, die versuchen, Zugang zu einem oder mehr Sicherheitsmitteln,
-diensten oder -anwendungen zu erhalten, die darin enthalten sind.
Zusätzlich
sind Sicherheits-Token weiter durch relativ langsame Prozessoren und
den verfügbaren
Speicherraum eingeschränkt.
-
Dieser
Kommunikationsengpass wird weiter verschärft, wenn biometrische Daten
zur Identifizierung und Authentifizierung von Benutzern verwendet
werden, aufgrund ineffizienter Datenextraktionen, relativ hoher Datenübertragungsanforderungen
und dem Fehlen einer Prioritätensetzung
bei den Datenpaketen. Im betreffenden Fachgebiet können biometrische
Templates ziemlich groß sein,
mit Umsetzungen, die Templates von mehr als 100 Kilobyte aufweisen,
wobei die besten Umsetzungen des Stands der Technik biometrische
Templates aufweisen, die näher
bei 300 Byte liegen.
-
Sogar
eine Datengröße von 300
Byte ist immer noch eine beträchtliche
Informationsmenge, die übertragen
werden muss, im Vergleich zu einer sechsstelligen persönlichen
Identifizierungsnummer (PIN), die lediglich eine Datengröße von 48
Bit erfordert (zuzüglich
des Header-Overheads), die von dem Host zum Sicherheits-Token übertragen
werden muss, bei einer Falschakzeptanzrate von ungefähr 1 pro
1.000,000.
-
Außerdem muss
das empfangende Sicherheits-Token, um das Datenpaket effizient zu
verarbeiten, genügend
Speicherplatz verfügbar
haben, um das eingehende Datenpaket in einem APDU-Puffer zu speichern,
der sich auf dem Sicherheits-Token befindet. Wenn die Größe des Datenpakets
die verfügbare
APDU-Puffergröße überschreitet,
müssen
die Daten segmentiert und sequentiell geschickt werden, wodurch
sowohl die Anzahl der Handshakes zwischen dem Host und dem Sicherheits-Token
als auch der Übertragungs-Overhead
(zum Beispiel Header-Informationen) erhöht und somit die Effizienz
der Datenübertragung vermindert
wird. Eine umfangreiche Datenübertragung
erfordert mehrere Datenpakete, die von dem Host an das Sicherheits-Token übertragen
werden müssen,
was die gesamte Authentifizierungs-Transaktion bis zu dem Punkt
verlangsamt, an dem ein Benutzer ungeduldig über die Zugangsverzögerung werden
kann. Darum ist es höchst
wünschenswert,
die Anzahl der Datenpakete so weit wie möglich zu verringern, wenn die
Sicherheit es erlaubt.
-
Eine
weitere bedeutsame Einschränkung
im betreffenden Fachgebiet ist die Art, in der die Daten aus dem
biometrischen Ausgangsmuster extrahiert werden. Gegenwärtig ist
kein Mechanismus verfügbar,
der den Host anweist, die Vorverarbeitung des biometrischen Ausgangsmusters
auf Flächen
oder Bereiche zu fokussieren, die eine hohe Wahrscheinlichkeit aufweisen,
mit einem Bezugstemplate übereinzustimmen,
das in dem Sicherheits-Token gespeichert ist. Es wird eher ein „Shotgun"-Ansatz verwendet,
wobei viele nicht-relevante Informationen zusammen mit relevanten
Datenmerkmalen extrahiert, in Datenpakete eingekapselt und ohne jegliche
Verarbeitungspriorität
an das Sicherheits-Token geschickt werden. Das Sicherheits-Token
kann eine bedeutende Anzahl Datenpakete verarbeiten, bevor es die
Informationen erhält,
die nötig
sind, um das extrahierte biometrische Muster mit dem gespeicherten
Bezugstemplate abzugleichen.
-
Eine ähnliche
Situation besteht im betreffenden Fachgebiet auch dort, wo ein biometrisches
Muster von einem lokalen Client verarbeitet und über ein Netzwerk an einen Authentifizierungs-Server
geschickt wird. Während
Verarbeitungsfähigkeit
und verfügbarer
Speicherplatz keine spezifischen Einschränkungen sind, schränkt die
große
Datenübertragungsmenge
und die anschließende
Verarbeitung, die durch den Authentifizierungs-Server erforderlich
wird, die Fähigkeit
ein, mehrere gleichzeitige Authentifizierungs-Transaktionen durchzuführen, und
besetzt unnötig
Kommunikationskanäle
und verfügbare
Bandbreite.
-
Ein
auf Statistik basierendes Verfahren, um Falschakzeptanz- und -ablehnungsraten
beim Abgleichen eines biometrischen Musters zu verbessern, ist in
US-Patentanmeldung 2001/0,048,025 offenbart. Der statistische Ansatz
jedoch versucht weder, die Extraktion relevanter Daten zu optimieren,
noch berücksichtigt
er die Prioritätensetzung
bei Datenpaketen zum Abgleichen eines biometrischen Bezugstemplates.
-
Es
wäre somit
vorteilhaft, einen Mechanismus zur Verwendung mit biometrischen
Systemen bereitzustellen, der die Anzahl und die Größe der Datenpaketübertragungen
verringert und eine Datenpaketübertragungs-Prioritätensetzung
bereitstellt.
-
Die
US-Patentanmeldung mit der Veröffentlichungsnummer
US 2002/0,090,132 betrifft ein Verfahren und einen Vorgang zur Identifizierung
von Objekten aus digital erfassten Bildern davon, die Bildmerkmale
verwenden, um ein Objekt von einer Mehrzahl Objekte in einer Datenbank
zu unterscheiden. Es ist aus diesem Dokument bekannt, Merkmale danach
anzufordern, wie gut sie zwischen Muster unterscheiden, und nur
diejenigen zu verwenden, die besser unterscheiden.
-
Die
US-Patentanmeldung mit der Veröffentlichungsnummer
US 2002/0,023,020 betrifft ein Verfahren und einen Vorgang zur direkten
Audioerfassung und -identifizierung der erfassten Audioaufzeichnung.
Aus diesem Dokument ist es ebenfalls bekannt, Merkmale danach anzufordern,
wie gut sie zwischen Muster unterscheiden, und nur diejenigen zu
verwenden, die besser unterscheiden.
-
US-Patentschrift
5,572,597 befasst sich mit einem Verfahren zur Fingerabdruckklassifizierung und/oder
-identifizierung. Aus diesem Dokument ist es ebenfalls bekannt,
Merkmale danach anzufordern, wie gut sie zwischen Muster unterscheiden,
und nur diejenigen zu verwenden, die besser unterscheiden.
-
KURZDARSTELLUNG DER ERFINDUNG
-
Aufgabe
der Erfindung ist es, ein Verfahren zur Verringerung der Gesamtanzahl
und/oder -größe der Datenpaketübertragungen
für mindestens
einige Vorgänge
der Durchführung
biometrischer Authentifizierung bereitzustellen.
-
Gemäß der vorliegenden
Erfindung ist ein Verfahren zur biometrischen Authentifizierung
wie in Anspruch 1 definiert bereitgestellt.
-
Gemäß der vorliegenden
Erfindung ist ein System für
die biometrische Datenextraktion und -übertragung aus einem biometrischen
Muster bereitgestellt, das von einem lokalen Client wie in Anspruch
28 definiert empfangen wird.
-
Gemäß der vorliegenden
Erfindung ist auch ein Speichermedium bereitgestellt, das darin
gespeichert Befehle zum Ausführen
der Schritte wie in Anspruch 41 definiert aufweist.
-
Gemäß einem
weiteren Gesichtspunkt der vorliegenden Erfindung kann das Verfahren
zur biometrischen Authentifizierung die folgenden Schritte umfassen:
- a. Definieren einer Mehrzahl Bereiche, die
mit dem biometrischen Muster verbunden sind,
- b. Identifizieren, welcher der Mehrzahl Bereiche biometrische
Daten umfasst, die eine hohe Wahrscheinlichkeit aufweisen, mit einer
zuvor festgelegten Bezugsgröße übereinzustimmen,
- c. Extrahieren der biometrischen Daten aus den identifizierten
Bereichen,
- d. Einbinden der extrahierten biometrischen Daten in eine Mehrzahl
Datenpakete,
- e. Anordnen der Mehrzahl Datenpakete in einer Hierarchie, die
die Auswahl der Datenpakete erlaubt, basierend auf der Wahrscheinlichkeit,
mit der zuvor festgelegten Bezugsgröße übereinzustimmen, und
- f. Übertragen
eines Datenpakets der Mehrzahl Datenpakete, das eine bekannte Wahrscheinlichkeit
aufweist, mit der zuvor festgelegten Bezugsgröße übereinzustimmen, an eine biometrische
Abgleichvorrichtung.
-
Gemäß einem
weiteren Gesichtspunkt der vorliegenden Erfindung kann das System
zur biometrischen Datenextraktion und -übertragung aus einem biometrischen
Muster, das von einem lokalen Client empfangen wird, mindestens
eine biometrische Verarbeitungsanwendung aufweisen, die operativ
auf dem lokalen Client installiert ist, wobei die mindestens eine
biometrische Verarbeitungsanwendung Mittel umfasst zum:
- a. Definieren einer Mehrzahl Bereiche, die mit dem biometrischen
Muster verbunden sind,
- b. Identifizieren, welcher der Mehrzahl Bereiche biometrische
Daten umfasst, die eine hohe Wahrscheinlichkeit aufweisen, mit einer
zuvor festgelegten Bezugsgröße übereinzustimmen,
- c. Extrahieren der biometrischen Daten aus den identifizierten
Bereichen,
- d. Einbinden der extrahierten biometrischen Daten in eine Mehrzahl
Datenpakete,
- e. Anordnen der Mehrzahl Datenpakete in einer Hierarchie, die
die Auswahl der Datenpakete erlaubt, basierend auf der Wahrscheinlichkeit,
mit der zuvor festgelegten Bezugsgröße übereinzustimmen, und
- f. Übertragen
eines Datenpakets der Mehrzahl Datenpakete, das eine bekannte Wahrscheinlichkeit
aufweist, mit der zuvor festgelegten Bezugsgröße übereinzustimmen, an eine biometrische
Abgleichvorrichtung.
-
Gemäß einem
weiteren Gesichtspunkt der vorliegenden Erfindung umfasst das Speichermedium
darin gespeichert ausführbare
Befehle zum:
- a. Definieren einer Mehrzahl Bereiche,
die mit dem biometrischen Muster verbunden sind,
- b. Identifizieren, welcher der Mehrzahl Bereiche biometrische
Daten umfasst, die eine hohe Wahrscheinlichkeit aufweisen, mit einer
zuvor festgelegten Bezugsgröße übereinzustimmen,
- c. Extrahieren der biometrischen Daten aus den identifizierten
Bereichen,
- d. Einbinden der extrahierten biometrischen Daten in eine Mehrzahl
Datenpakete,
- e. Anordnen der Mehrzahl Datenpakete in einer Hierarchie, die
die Auswahl der Datenpakete erlaubt, basierend auf der Wahrscheinlichkeit,
mit der zuvor festgelegten Bezugsgröße übereinzustimmen, und
- f. Übertragen
eines Datenpakets der Mehrzahl Datenpakete, das eine bekannte Wahrscheinlichkeit
aufweist, mit der zuvor festgelegten Bezugsgröße übereinzustimmen, an eine biometrische
Abgleichvorrichtung.
-
Der
zuvor beschriebene Verfahrensmechanismus kann von einem System ausgeführt werden,
das eine biometrische Abgleichvorrichtung aufweist, die eine serverbasierte
Anwendung, eine Sicherheits-Token-basierte Anwendung oder eine Kombination
einer serverbasierten Anwendung und einer Sicherheits-Token-basierten Anwendung
umfasst, die angewendet werden, um kooperativ ein biometrisches
Muster zu verarbeiten und abzugleichen.
-
Die
Programme und zugehörigen
Daten können
auf transportierbaren digitalen Aufzeichnungsmedien wie einer CD
ROM, einer Floppy-Disc, einem Datenband oder einer DVD zur Installation
in einem Host-Computersystem, Server und/oder Sicherheits-Token
aufgezeichnet werden.
-
KURZBESCHREIBUNG DER ERFINDUNG
-
Die
Merkmale und Vorteile der Erfindung gehen deutlicher aus der folgenden
ausführlichen
Beschreibung in Verbindung mit den begleitenden Zeichnungen hervor.
Wo möglich
werden die gleichen Bezugszahlen und -buchstaben verwendet, um gleiche
Merkmale, Elemente, Bestandteile oder Teile der Erfindung zu bezeichnen.
Es ist beabsichtigt, dass Änderungen
und Modifizierungen an den beschriebenen Ausführungsformen vorgenommen werden
können,
ohne dass der Umfang der zugrunde liegenden Erfindung, wie sie in
den Ansprüchen
definiert ist, verlassen wird.
-
1 ist
ein verallgemeinertes Blockdiagramm eines Host-Computersystems und eines elektromagnetisch
verbundenen Sicherheits-Tokens.
-
2A ist
ein ausführliches
Diagramm eines beispielhaften biometrischen Musters, das eine Mehrzahl
Bereiche aufweist, die unter Verwendung eines Koordinatensystems
zugeordnet werden.
-
2B ist
ein ausführliches
Diagramm eines biometrischen Beispielmusters, das eine Mehrzahl
spezifischer Merkmalpositionen aufweist, die unter Verwendung des
Koordinatensystems identifiziert werden.
-
3 ist
ein vereinfachtes Flussdiagramm eines Verfahrens zur Akkumulation
eines Werts A zum Vergleich mit einer Schwelle, das wenig Speicherressourcen
erfordert.
-
4A ist
ein vereinfachtes Flussdiagramm eines Verfahrens zur Akkumulation,
wenn Daten empfangen werden, eines Werts A zum Vergleich mit einer
Schwelle bei jedem Akkumulationsschritt, das wenig Speicherressourcen
erfordert.
-
4B ist
ein vereinfachtes Flussdiagramm eines Verfahrens zur Akkumulation,
nachdem Daten empfangen worden sind, eines Werts A zum Vergleich
mit einer Schwelle bei jedem Akkumulationsschritt.
-
4C ist
ein vereinfachtes Flussdiagramm eines Verfahrens zur Akkumulation,
wenn Daten empfangen werden, eines Werts A zum Vergleich mit einer
Schwelle alle M Akkumulationsschritte, das wenig Speicherressourcen
erfordert.
-
5A ist
ein vereinfachtes Flussdiagramm eines Verfahrens zur Akkumulation,
wenn Daten empfangen werden, in absteigender Größe des Werts A zum Vergleich
mit einer Schwelle bei jedem Akkumulationsschritt, das wenig Speicherressourcen
erfordert.
-
5B ist
ein vereinfachtes Flussdiagramm eines Verfahrens zur Akkumulation,
nachdem Daten empfangen worden sind, in absteigender Größe des Werts
A zum Vergleich mit einer Schwelle bei jedem Akkumulationsschritt.
-
5C ist
ein vereinfachtes Flussdiagramm eines Verfahrens zur Akkumulation,
wenn Daten empfangen werden, in absteigender Größe des Werts A zum Vergleich
mit einer Schwelle alle M Akkumulationsschritte, das wenig Speicherressourcen
erfordert.
-
6A ist
ein vereinfachtes Flussdiagramm eines Verfahrens zur Akkumulation,
wenn Daten auf einer Smartcard empfangen werden, eines Werts A zum
Vergleich mit einer Schwelle bei jedem Akkumulationsschritt, das
wenig Speicherressourcen erfordert.
-
6B ist
ein vereinfachtes Flussdiagramm eines Verfahrens zur Akkumulation,
wenn Daten auf einer Smartcard empfangen werden, eines Werts A zum
Vergleich mit einer Schwelle M Akkumulationsschritte, das wenig
Speicherressourcen erfordert.
-
7 ist
ein vereinfachtes Flussdiagramm eines Verfahrens zur Akkumulation
eines Werts A, basierend auf Merkmaldaten und dem Fehlen von Merkmaldaten,
zum Vergleich mit einer Schwelle alle M Akkumulationsschritte, das
wenig Speicherressourcen erfordert.
-
8 ist
ein vereinfachtes Flussdiagramm eines Verfahrens zur Bildung eines
erfindungsgemäßen Templates,
in dem Merkmaldaten in einem bekannten Bezugsrahmen extrahiert und
dann Merkmale basierend auf ihrem probabilistischen Beitrag zu A
sortiert werden.
-
9 ist
ein vereinfachtes Flussdiagramm eines Verfahrens zur Bildung eines
erfindungsgemäßen Templates,
in dem Merkmaldaten in einem bekannten Bezugsrahmen extrahiert und
die Merkmale dann basierend auf ihrem probabilistischen Beitrag
zu A zwischengespeichert werden.
-
10A ist ein ausführliches Diagramm eines beispielhaften
biometrischen Musters.
-
10B ist ein ausführliches Diagramm eines beispielhaften
biometrischen Musters, das eine Mehrzahl spezifischer Musterbereiche
aufweist, die unter Verwendung des Koordinatensystems identifiziert
werden.
-
10C ist ein ausführliches Histogramm, das die
Wahrscheinlichkeit darstellt, ein Bezugstemplate basierend auf den
zugewiesenen Bereichen abzugleichen.
-
10D ist ein ausführliches Blockdiagramm einer
Ausführungsform
der Erfindung, in der ein den Bereich betreffendes Auswahlkriterium
erzeugt wird, das verwendet wird, um biometrische Informationen
zu extrahieren, und das in Datenpakete (DP) eingebunden wird, die
eine Übertragungshierarchie
aufweisen.
-
10E ist ein ausführliches Blockdiagramm einer
weiteren Ausführungsform
der Erfindung, in der eine biometrische Abgleichvorrichtung in ein
entferntes Computersystem eingebunden ist, das über ein Netzwerk mit einem
lokalen Host verbunden ist.
-
10F ist ein ausführliches Blockdiagramm einer
weiteren Ausführungsform
der Erfindung, in der die biometrische Abgleichvorrichtung in ein
Sicherheits-Token eingebunden ist.
-
10G ist ein ausführliches Blockdiagramm einer
weiteren Ausführungsform
der Erfindung, in der die biometrische Abgleichvorrichtung und das
den Bereich betreffende Auswahlkriterium in ein Sicherheits-Token
eingebunden sind.
-
10H ist ein ausführliches Blockdiagramm einer
weiteren Ausführungsform
der Erfindung, in der das Vorverarbeiten eines biometrischen Musters
lokal erfolgt, unter Verwendung von Informationen, die von einem
verbundenen Sicherheits-Token empfangen werden, und das anschließende Verarbeiten
von einer entfernten biometrischen Abgleichvorrichtung durchgeführt wird.
-
11 ist
ein Flussdiagramm, das die Schritte zur Umsetzung einer beispielhaften
Ausführungsform der
Erfindung darstellt.
-
12A ist ein Fingerabdruckbild, das demjenigen
von 2A ähnelt,
mit einer Raster-Überlagerung.
-
12B ist ein Diagramm des Rasters von 12A mit einer sequentiellen Nummerierung von links nach
rechts.
-
12C ist ein Diagramm des Rasters von 12A mit einem alternativen Nummerierungsmuster.
-
13 ist
ein vereinfachtes Flussdiagramm eines Verfahrens zur Templatebildung.
-
14 ist
ein vereinfachtes Flussdiagramm eines Verfahrens zur Templatebildung.
-
AUSFÜHRLICHE BESCHREIBUNG DER ERFINDUNG
-
Die
vorliegende Erfindung stellt einen Mechanismus zur Verwendung mit
biometrischen Systemen bereit, der die Registrierung biometrischer
Daten gegen Templatedaten ausführt
und somit eine Verringerung der Größe und/oder Anzahl der Datenpaketübertragungen
zum erfolgreichen Registrieren eines biometrischen Musters gegen
ein Template sowie eine Prioritätensetzung
bei der Datenpaketübertragung
ermöglicht.
Die Anwendungen sollen in einer höheren Sprache wie Java TM,
C, C++ oder Visual Basic TM oder in einer niederen Sprache wie der
Assembly-Sprache programmiert werden.
-
Mit
Bezug auf 1 ist ein typisches Host-Computersystem
gezeigt, das einen Prozessor 5, einen Hauptspeicher 10,
eine Anzeige 20, die elektromagnetisch mit einer Anzeigeschnittstelle 15 gekoppelt
ist, ein sekundäres
Speicher-Subsystem 25, das elektromagnetisch mit einem
Festplattenlaufwerk 30 gekoppelt ist, ein Speicherlaufwerk 35,
das elektromagnetisch mit einer entfernbaren Speichereinheit 40 gekoppelt
ist, und eine zusätzliche
entfernbare Speicherschnittstelle 45, die elektromagnetisch
mit einer zusätzlichen
entfernbaren Speichereinheit 50 gekoppelt ist, umfasst.
-
Ein
Kommunikationsschnittstellen-Subsystem 55 ist mit einer
Netzwerkschnittstelle 60 und einem Netzwerk 65,
einer Sicherheits-Token-Schnittstelle 70 und
einem Sicherheits-Token 75, einer Benutzer-Eingabeschnittstelle 80,
die eine Maus und eine Tastatur 85 aufweist, einer biometrischen
Scanner-Schnittstelle 90 und einem biometrischen Scanner 95 gekoppelt.
-
Der
Prozessor 5, der Hauptspeicher 10, die Anzeigeschnittstelle 15,
das sekundäre
Speicher-Subsystem 25 und das Kommunikationsschnittstellen-Subsystem 55 sind
elektromagnetisch mit einer Kommunikations-Infrastruktur 100 gekoppelt.
Das Host-Computersystem umfasst ein Betriebssystem, eine biometrische Verarbeitungsanwendung,
weitere Anwendungssoftware und Datenpaket-Kommunikationsanwendungen.
Die biometrische Verarbeitungsanwendung umfasst eine Fähigkeit,
relevante Daten aus einem biometrischen Muster zu extrahieren, das
von dem biometrischen Scanner 95 empfangen wird, basierend
auf Auswahlkriterien.
-
Das
Auswahlkriterium wird optional von dem Sicherheits-Token 75 bereitgestellt,
lokal in dem Sekundärspeicher 25 gespeichert
oder optional von einem entfernten Server über das Netzwerk 65 empfangen.
Die Datenpaketanwendungen umfassen die Fähigkeit, Botschaften zu übertragen
und zu empfangen, unter Verwendung eines Protokolls in Form eines
TCP/IP-Protokolls und eines ADPU-Protokolls.
-
Das
Sicherheits-Token 75 umfasst eine elektromagnetische Verbindung,
die mit der Sicherheits-Token-Schnittstelle 70 kompatibel
ist, den Prozessor, flüchtige
und nicht-flüchtige
Speicher, die elektromagnetisch an den Prozessor gekoppelt sind,
eine Laufzeit-Betriebsumgebung, eine Sicherheits-Ausführungsanwendung
und eine biometrische Abgleichvorrichtung. Der nicht-flüchtige Speicher
weist operativ darin gespeichert ein biometrisches Bezugstemplate
auf, das zu einem Token-Besitzer
gehört,
zur Verwendung beim Überprüfen des
Token-Besitzers durch die Sicherheits-Ausführungsanwendung und das übertragbare
Auswahlkriterium. Das übertragbare
Auswahlkriterium liegt in Form von Positionen biometrischer Merkmale
zur Verwendung durch die biometrische Verarbeitungsanwendung vor,
zur Extraktion relevanter Daten aus einem biometrischen Muster,
das von dem biometrischen Scanner empfangen wird.
-
Für die Zwecke
dieser Offenbarung und der folgenden Ansprüchen bezieht sich die Bezeichnung „Sicherheits-Token" auf hardwarebasierte
Sicherheitsvorrichtungen, wie Sicherheits-Token, Smartcards, Kryptographie-Module, IC-Karten,
tragbare Datenträger
(Portable Data Carriers – PDC),
persönliche
Sicherheitsvorrichtungen (Personal Security Devices – PSD),
Teilnehmer-Identifikationsmodule (Subscriber Identification Modules – SIM),
drahtlose Identifikationsmodule (Wireless Identification Modules – WIM),
USB-Token-Dongles,
Identifikations-Token, sichere Anwendungsmodule (Secure Application
Modules – SAM),
Hardware-Sicherheitsmodule (Hardware Security Modules – HSM),
sichere Multimedia-Token (Secure Multimedia Token – SMMC)
und ähnliche
Vorrichtungen, die einen internen Prozessor, einen Speicher und
ein Laufzeit-Betriebssystem aufweisen.
-
Wie
zuvor erklärt,
ist eine Leistungsbegrenzung vorhanden, wenn die biometrische Authentifizierung nach
den Verfahren des Stands der Technik durchgeführt wird. Ein typisches Verfahren
des Stands der Technik verarbeitet alle biometrischen Informationen,
indem es diese mit einem Template korreliert. Die Korrelation wird
durchgeführt,
um ein Registrierungsergebnis zu bestimmen, das mit einem bekannten
Schwellenwert vergleichbar ist. Leider erfordert ein solches Verfahren
das Verarbeiten aller Daten, bevor ein Ergebnis bekannt ist. Daher
werden beim Verarbeiten von Fingerabdrücken die folgenden Schritte
ausgeführt:
Vorverarbeitung des Bilds, Merkmalextraktion, Bildausrichtung, Wertbestimmung
des extrahierten Merkmals innerhalb eines ausgerichteten Bezugsrahmens,
Registrierung aller extrahierten Werte gegen Templatewerte, um das
Registrierungsergebnis zu bestimmen, und Vergleich des Registrierungsergebnis-Schwellenwerts.
-
Zur
Verwendung auf einer Smartcard erfordert dies, dass die extrahierten
Werte höchstens
ein Datenpaket füllen,
sonst sind mehrere Datenpaketübertragungen
erforderlich. Auch wird das gesamte Datenpaket vor der Auswertung
der Ergebnisse verarbeitet, die aufgrund von Speicherzugangsbeschränkungen
innerhalb der Smartcard leidet. Leider ist eine Person entweder
schwer zu identifizieren und wird oft fälschlicherweise abgelehnt,
wenn ein Datenpaket nicht ausreicht, oder mehr Pakete werden an
die Smartcard übertragen,
was zu längeren
Verzögerungen
für jeden
führt.
-
Mit
Bezug auf 2A ist ein beispielhaftes biometrisches
Muster eines Fingerabdrucks gezeigt, das eine Überlagerung aufweist, die in 2B dargestellt
ist. Die Überlagerung
stellt Positionen in einem Koordinatensystem bereit, um biometrische
Merkmale von Interesse für
die Extraktion zu lokalisieren. Ein kartesisches Koordinatensystem
ist gezeigt. Alternativ werden andere Koordinatensysteme wie polar-rechteckige verwendet.
-
Außerdem sind
die gezeigten Achsen willkürlich über dem
biometrischen Muster zentriert. Ein Fachmann wird schätzen, dass
andere Anordnungen hinlänglich
funktionieren, solange ein konsistentes Koordinatensystem für die Bestimmung
der Positionen zwischen dem Template und dem biometrischen Fingerabdruckmuster
verwendet wird.
-
Bei
Verwendung einer solchen Überlagerung
wird gemäß einer
Ausführungsform
der Erfindung bereitgestellt, dass die biometrischen Merkmale von
Interesse gemäß einer
angemessenen Wahrscheinlichkeit beschaffbar sind, dass jedes Merkmal
zu einer genauen Identifizierung einer Person führen wird, die das biometrische
Fingerabdruckmuster bereitstellt.
-
Mit
Bezug auf
3 ist ein vereinfachtes Flussdiagramm
eines erfindungsgemäßen beispielhaften Verfahrens
gezeigt. Merkmaldaten werden aus einem biometrischen Fingerabdruckmuster
extrahiert und für die
Korrelation mit einem Template in Schritt
350 bereitgestellt.
Ein Wert, der sich auf ein bekanntes Merkmal innerhalb des biometrischen
Fingerabdruckmusters bezieht, wird mathematisch mit einem Merkmal-Template-Wert
korreliert. Der resultierende Wert wird in Schritt
352 nach
dem folgenden Ausdruck akkumuliert:
wobei A der akkumulierte
Registrierungswert ist,
- Vsi
- der Wert ist, der
sich auf ein Merkmal i innerhalb des biometrischen Musters bezieht,
- Vti
- der Wert ist, der
sich auf ein Merkmal i innerhalb des biometrischen Templates bezieht,
- K
- eine Konstante ist
und
- Diff
- eine Funktion von
Vsi und Vti ist,
die ein Ergebnis aufweist, das immer anders als negativ oder immer anders
als positiv ist.
-
Alle
Merkmaldatenwerte oder eine vorbestimmte maximale Anzahl werden
akkumuliert und dies wird in Schritt 354 überprüft. Wenn
mehr Merkmalwerte verbleiben, wird der Akkumulationsvorgang unter
Schritt 352 fortgesetzt. Sobald alle Daten verarbeitet
sind, wird der Wert A mit einem Schwellenwert in Schritt 356 verglichen
und in Abhängigkeit
von dem Vergleichsergebnis in Schritt 358 ist der Vorgang
darauf ausgerichtet, ein Ergebnis für die Registrierung von entweder
erfolgreich in Schritt 360 oder nicht erfolgreich in Schritt 362 bereitzustellen.
Auf eine erfolgreiche Registrierung folgt normalerweise eine Benutzeridentifizierung
oder -authorisierung. Alternativ sind andere Anwendungen einer erfolgreichen
Registrierung bekannt, wie die krypthographische Unterschrift.
-
Mit
Bezug auf 4A ist ein vereinfachtes Flussdiagramm
eines weiteren erfindungsgemäßen Verfahrens
gezeigt. Aufgrund der akkumulativen Beschaffenheit der Gleichung
(1) führt
ein Nichtvorhandensein eines Merkmals zu einem Null-Summengewinn
zu dem akkumulierten Gesamtergebnis A. Dies lässt sich leicht überprüfen, indem
ein Satz Werte bereitgestellt und dann ein gleicher Satz bereitgestellt
wird, bei dem ein Wert fehlt. Somit tritt keine Verringerung des
Gesamtwerts A aufgrund eines fehlenden Merkmals auf. Weiter fügt kein
Merkmal dem akkumulierten Wert einen Zuwachs von weniger als null
hinzu.
-
Eine
sorgfältige
Analyse des Werts A, wenn i zunimmt, zeigt, dass, sobald A einen
Wert überschritten hat – zum Beispiel
den Schwellenwert – er
sich nicht unter diesen Wert verringern kann. Somit reicht die Beendigung
der Summierung bei Überschreitung
des Schwellenwerts für
die Identifizierung des Bereitstellers des biometrischen Fingerabdruckmusters
aus. Darum ist es, aufgrund des kumulativen Effekts der Summierung, möglich, den
akkumulierten Wert A zu verwenden, um die Verarbeitungsmenge zu
verringern, die erforderlich ist, um Merkmale gegen ein Template
zu registrieren, indem der Vorgang beendet wird, sobald die Schwelle erreicht
ist. Auch werden die Datenkommunikationsanforderungen an einen Prozessor
zum Ausführen
der Registrierung verringert, da nachfolgende Pakete nicht übertragen
werden müssen,
sobald der Schwellenwert erreicht ist. Dies beeinträchtigt natürlich nicht
die Zuverlässigkeit,
da ein nachfolgendes Paket optional übertragen wird, wenn die Schwelle
nicht erreicht wird.
-
Weiter
erfordert die zuvor angegebene Gleichung eine sehr kleine Speichermenge,
um ausgeführt werden
zu können.
Die Verwendung von weniger Variablen erfordert wenige Speicherplätze. Weiter
bedeutet die akkumulative Beschaffenheit der Gleichung, dass außer für die Werte
A und i kein Speicher zwischen dem Akkumulieren eines Merkmals und
eines weiteren erforderlich ist. Sobald ein Wert in dem Puffer ist,
wird er verglichen und akkumuliert, wodurch die Pufferanforderungen
ebenfalls verringert werden. Darum ist der Gesamtprozess in einer
kompakten Routine umsetzbar, ohne dass globale Variablen notwendig
sind.
-
In
Schritt 400 werden der akkumulierte Wert und ein Zähler zurückgesetzt.
Ein erstes Merkmaldatenelement wird in Schritt 402 empfangen
und in Schritt 404 in den Wert A akkumuliert. Der resultierende
Wert A wird mit einem Schwellenwert in Schritt 406 verglichen
und wenn A größer ist
als ein Ausgangssignal, das einen Erfolg anzeigt, in Schritt 408 bereitgestellt.
Alternativ wird, wenn in Schritt 406 A <= T ist, eine Überprüfung, ob Merkmaldaten verbleiben
oder nicht, in Schritt 410 durchgeführt. Wenn Merkmaldaten verbleiben,
werden die verbleibenden Merkmaldaten in Schritt 412 nachverfolgt,
zum Beispiel durch Erhöhen
eines Zählers,
und ein weiteres Merkmaldatenelement wird in Schritt 402 empfangen.
Wenn keine Merkmaldatenelemente mehr verbleiben, wird ein Ausgangssignal,
das einen Misserfolg anzeigt, in Schritt 414 bereitgestellt.
-
Mit
Bezug auf 4B ist eine weitere Ausführungsform
dargestellt, in der Merkmaldaten vor ihrer Verarbeitung vollständig empfangen
werden. In Schritt 400 werden der akkumulierte Wert und
ein Zähler
zurückgesetzt.
Merkmaldaten werden in Schritt 402B empfangen und in Schritt 404 wird
ein erstes Datenelement in den Wert A akkumuliert. Der resultierende
Wert A wird mit einem Schwellenwert in Schritt 406 verglichen
und wenn A größer ist,
wird ein Ausgangssignal, das einen Erfolg anzeigt, in Schritt 408 bereitgestellt.
Alternativ wird, wenn in Schritt 406 A <= T ist, eine Überprüfung, ob oder ob nicht Merkmaldaten
verbleiben, in Schritt 410 durchgeführt. Wenn Merkmaldaten verbleiben,
werden die verbleibenden Merkmaldaten in Schritt 412 nachverfolgt,
zum Beispiel durch Erhöhen
eines Zählers,
und ein weiteres Merkmaldatenelement wird in Schritt 404 akkumuliert.
Wenn keine Merkmaldaten mehr verbleiben, wird ein Ausgangssignal,
das einen Misserfolg anzeigt, in Schritt 414 bereitgestellt.
-
Mit
Bezug auf 4C ist eine weitere Ausführungsform
gezeigt, in der A alle M Wiederholungen mit dem Schwellenwert verglichen
wird. In Schritt 400C werden der akkumulierte Wert A, ein
Schleifenzähler
j und ein Zähler
i zum Überwachen
verbleibender Merkmaldaten zurückgesetzt.
Ein erstes Merkmaldatenelement wird in Schritt 402 empfangen
und in Schritt 404 in den Wert A akkumuliert. Der Schleifenzähler wird
in Schritt 416 erhöht
und in Schritt 418 verzweigt sich der Vorgang zu Schritt 402,
wenn der Schleifenzähler
unter dem Wert M liegt. Wenn der Schleifenzählerwert größer ist als M, wird der resultierende
Wert A mit einem Schwellenwert in Schritt 406 verglichen,
und wenn A größer ist,
wird ein Ausgangssignal, das einen Erfolg anzeigt, in Schritt 408 bereitgestellt.
Alternativ wird, wenn in Schritt 406 A <= T ist, der Schleifenzähler in
Schritt 420 zurückgesetzt
und eine Überprüfung, ob
Merkmaldaten verbleiben oder nicht, in Schritt 410 durchgeführt. Wenn Merkmaldaten
verbleiben, werden die verbleibenden Merkmaldaten in Schritt 412 nachverfolgt,
zum Beispiel durch Erhöhen
eines Zählers,
und ein weiteres Merkmaldatenelement wird in Schritt 402 empfangen.
Wenn keine Merkmaldaten mehr verbleiben, wird ein Ausgangssignal,
das einen Misserfolg anzeigt, in Schritt 414 bereitgestellt.
-
Mit
Bezug auf 5A und 5B sind
erfindungsgemäße Verfahren
dargestellt, deren Leistung zumindest teilweise optimiert ist. Hier
werden die Merkmale in einer Reihenfolge beschafft, die auf einer
Wahrscheinlichkeit basiert, dass diese Merkmale zu A beitragen.
Somit wird das Merkmal, das das Potential hat, eine größte Menge
zu dem akkumulierten Wert A hinzuzufügen, als erstes bereitgestellt,
und dann werden die Merkmale in einer Reihenfolge ihres Potentials
bereitgestellt, eine größere Menge
zu dem akkumulierten Wert beizutragen als nachfolgende Merkmale.
Es wird somit ein Verfahren zur statistischen Bereitstellung eines
Potentials unterstützt,
um eine minimale Anzahl von Akkumulationsschritten bereitzustellen,
um eine erfolgreiche Registrierung zu erreichen. Dies ermöglicht eine
signifikant verringerte Merkmaldatenkommunikation für eine erfolgreiche
Registrierung und eine verringerte Verarbeitungszeit für diese.
-
Anstatt
alle Merkmale basierend auf einem Potential, eine größte Menge
zu dem akkumulierten Wert hinzuzufügen, zu ordnen, werden Merkmale
alternativ in Zwischenspeicher einsortiert, die die Qualität des Merkmals
oder die Einzigartigkeit des Merkmals darstellen. Diejenigen Merkmale,
die von größerer Qualität sind,
sind beim Registrierungsvorgang wahrscheinlich bedeutender und als
solche werden sie früher
für die Registrierung
bereitgestellt. Natürlich
ist ein Beabstanden verschiedener Merkmale auch möglich, wird
jedoch normalerweise nicht bevorzugt.
-
Mit
Bezug auf 5A werden in Schritt 400 der
akkumulierte Wert A und ein Zähler
zurückgesetzt. Ein
erstes Merkmaldatenelement wird in Schritt 502 empfangen,
wobei die Merkmaldaten in einer Reihenfolge vom wertvollsten Merkmaldatenelement
zum am wenigsten wertvollen Merkmaldatenelement bereitgestellt werden.
Ein Merkmaldatenelement wird als wertvoller angesehen, wenn es wahrscheinlicher
ist, dass es eine signifikante Menge zu A hinzufügt als andere Daten oder wenn
der Wert, den es wahrscheinlich zu A hinzufügt, einen Wert überschreitet,
der anderen Daten zuschreibbar ist. In Schritt 404 wird
in den Wert A akkumuliert. Der resultierende Wert A wird mit einem
Schwellenwert in Schritt 406 verglichen und wenn A größer ist,
wird ein Ausgangssignal, das einen Erfolg anzeigt, in Schritt 408 bereitgestellt.
Alternativ wird, wenn in Schritt 406 A <= T ist, eine Überprüfung, ob Merkmaldaten verbleiben
oder nicht, in Schritt 410 durchgeführt. Wenn Merkmaldaten verbleiben,
werden die verbleibenden Merkmaldaten in Schritt 412 nachverfolgt,
zum Beispiel durch Erhöhen
eines Zählers,
und ein weiteres Merkmaldatenelement wird in Schritt 502 empfangen.
Wenn keine Merkmaldaten mehr verbleiben, wird ein Ausgangssignal,
das einen Misserfolg anzeigt, in Schritt 414 bereitgestellt.
-
Mit
Bezug auf 5B ist eine weitere Ausführungsform
dargestellt, in der Merkmaldaten vor ihrer Verarbeitung vollständig empfangen
werden. In Schritt 400 werden der akkumulierte Wert A und
ein Zähler
zurückgesetzt.
Merkmaldaten werden in Schritt 502B empfangen, wobei die
Merkmaldaten in einer Reihenfolge von dem wertvollsten Merkmaldatenelement
zu dem am wenigsten wertvollen Merkmaldatenelement bereitgestellt
werden. Ein Merkmaldatenelement wird als wertvoller angesehen, wenn
es wahrscheinlicher ist, dass es eine signifikante Menge zu A hinzufügt als andere
Daten oder wenn der Wert, den es wahrscheinlich zu A hinzufügt, einen
Wert überschreitet,
der anderen Daten zuschreibbar ist. In Schritt 404 wird
ein erstes Datenelement in den Wert A akkumuliert. Der resultierende
Wert A wird mit einem Schwellenwert in Schritt 406 verglichen
und wenn A größer ist,
wird ein Ausgangssignal, das einen Erfolg anzeigt, in Schritt 408 bereitgestellt. Alternativ
wird, wenn in Schritt 406 A <= T ist, eine Überprüfung, ob oder ob nicht Merkmaldaten
verbleiben, in Schritt 410 durchgeführt. Wenn Merkmaldaten verbleiben,
werden die verbleibenden Merkmaldaten in Schritt 412 nachverfolgt,
zum Beispiel durch Erhöhen
eines Zählers,
und ein weiteres Merkmaldatenelement wird in Schritt 404 akkumuliert.
Wenn keine Merkmaldaten mehr verbleiben, wird ein Ausgangssignal,
das einen Misserfolg anzeigt, in Schritt 414 bereitgestellt.
-
Mit
Bezug auf 5C ist eine weitere Ausführungsform
dargestellt, in der A alle M Wiederholungen mit dem Schwellenwert
verglichen wird. In Schritt 400B werden der akkumulierte
Wert A, ein Schleifenzähler
j und ein Zähler
i zur Überwachung
verbleibender Merkmaldaten zurückgesetzt.
Ein erstes Merkmaldatenelement wird in Schritt 502 empfangen,
wobei die Merkmaldaten in einer Reihenfolge von dem wertvollsten
Merkmaldatenelement zu dem am wenigsten wertvollen Merkmaldatenelement
bereitgestellt werden. Ein Merkmaldatenelement wird als wertvoller
angesehen, wenn es wahrscheinlicher ist, dass es eine signifikante
Menge zu A hinzufügt
als andere Daten oder wenn der Wert, den es wahrscheinlich zu A
hinzufügt,
einen Wert überschreitet,
der anderen Daten zuschreibbar ist. In Schritt 404 werden
die Ergebnisse der Verarbeitung des Datenelements in den Wert A
akkumuliert. Der Schleifenzähler
wird in Schritt 416 erhöht
und in Schritt 418 verzweigt sich der Vorgang zu Schritt 402,
wenn der Schleifenzähler
unter dem Wert M liegt. Wenn der Schleifenzählerwert größer ist als M, wird der resultierende
Wert A mit einem Schwellenwert in Schritt 406 verglichen, und
wenn A größer ist,
wird ein Ausgangssignal, das einen Erfolg anzeigt, in Schritt 408 bereitgestellt.
Alternativ wird, wenn in Schritt 406 A <= T ist, der Schleifenzähler in
Schritt 420 zurückgesetzt
und eine Überprüfung, ob
Merkmaldaten verbleiben oder nicht, in Schritt 410 durchgeführt. Wenn
Merkmaldaten verbleiben, werden die verbleibenden Merkmaldaten in
Schritt 412 nachverfolgt, zum Beispiel durch Erhöhen eines
Zählers,
und ein weiteres Merkmaldatenelement wird in Schritt 502 empfangen.
Wenn keine Merkmaldaten mehr verbleiben, wird ein Ausgangssignal,
das einen Misserfolg anzeigt, in Schritt 414 bereitgestellt.
-
Auf
eine erfolgreiche Registrierung folgt normalerweise eine Benutzeridentifizierung
oder -authorisierung, obwohl andere Anwendungen einer erfolgreichen
Registrierung wie Abrufen eines kryptographischen Schlüssels für eine kryptographische
Unterschrift bekannt sind.
-
Zur
Verwendung mit unterschiedlichen Prozessoren besteht ein einfaches
Verfahren des Experimentierens oder der Analyse darin, eine Anzahl
Wiederholungen M zwischen Schwellenvergleichen zu bestimmen, um
die Leistung statistisch zu optimieren. Da der akkumulierte Wert
bei jedem Merkmal aktualisiert wird, wird jede Anzahl Wiederholungen
1, 2, ..m zwischen Schwellenvergleichen unterstützt.
-
Mit
Bezug auf 6A ist ein erfindungsgemäßes Verfahren
dargestellt, das demjenigen ähnelt,
das in 5A gezeigt ist, für die Umsetzung
auf einer Smartcard 600 zur Ausführung in Java und in Kommunikation mit
einem Hostprozessor 601. Ein Datenpaket von bis zu 256
Bytes wird in Schritt 602 der Smartcard 600 bereitgestellt,
einschließlich
Merkmaldaten. Das Datenpaket wird in Schritt 603 in der
Smartcard 600 empfangen. Vor Schritt 603 wird
der akkumulierte Wert A in Schritt 600A zurückgesetzt.
Bei jedem Merkmal wird der akkumulierte Wert in Schritt 604 aktualisiert.
Der aktualisierte akkumulierte Wert wird mit einer Schwelle in Merkmalintervallen
von einem Merkmal (M = 1 wie gezeigt) oder mehr (M > 1) in Schritt 606 verglichen.
Wenn die Schwelle überschritten
wird, wird ein Ausgangssignal, das einen Erfolg anzeigt, von der
Smartcard in Schritt 608 übertragen und von dem Hostprozessor
in Schritt 608A empfangen. Wenn die Schwelle nicht überschritten wird,
wird eine Überprüfung verbleibender
Merkmale in Schritt 610A durchgeführt. Wenn Merkmale verbleiben, wird
der Vorgang in Schritt 604 mit dem Akkumulieren von Werten
fortgesetzt, die sich auf andere Merkmale beziehen. Sobald die Daten
innerhalb des Pakets verarbeitet sind, wird in Schritt 630 ein
neues Paket angefordert. Die neue Paketanforderung wird dem Host-Prozessor 601 bereitgestellt
und wird von diesem in Schritt 630A empfangen. Wenn keine
Paketdaten mehr verbleiben wie in Schritt 610B bestimmt,
wird ein Ausgangssignal, das einen Misserfolg anzeigt, in Schritt 614 bereitgestellt.
Wenn mehr Paketdaten verbleiben, wird ein weiteres Paket an die
Smartcard in Schritt 602 bereitgestellt.
-
Vorteilhafterweise
werden aufgrund der akkumulativen Beschaffenheit des Verfahrens
nur temporäre Werte
während
der Verarbeitung eines einzelnen Pakets benötigt. Einige übliche Umsetzungen
von Java erfordern das Speichern globaler Werte in einer langsamen
Speicherform. Somit ist die Verwendung temporärer Variablen vorteilhaft.
Sobald ein neues Datenpaket angefordert wird, werden der akkumulierte
Wert und der Merkmalindex in globalen Variablen gespeichert, das
neue Paket wird abgerufen und anschließend die globalen Variablen
in temporäre
Variablen zur Verwendung bei der weiteren Verarbeitung des neuen
Datenpakets geladen.
-
Mit
Bezug auf 6B ist ein erfindungsgemäßes Verfahren
gezeigt, das demjenigen ähnelt,
das in 5B zur Umsetzung auf einer Smartcard 600 in
Ausführung
von Java und in Kommunikation mit einem Host-Prozessor 601 dargestellt
ist. Der Schritt 618 wird zu dem Diagramm von 6A hinzugefügt, um eine innere
Schleifenzählung
bzw. einen Vergleich zu ermöglichen,
damit M größer als
1 sein kann. Ansonsten funktioniert dieses Verfahren ähnlich wie
das mit Bezug auf 6A beschriebene. Ein Datenpaket
von bis zu 256 Bytes wird in Schritt 602 der Smartcard 600 bereitgestellt,
einschließlich
Merkmaldaten. Das Datenpaket wird in Schritt 603 in der
Smartcard 600 empfangen. Vor Schritt 603 wird
der akkumulierte Wert A in Schritt 600a zurückgesetzt.
Bei jedem Merkmal wird der akkumulierte Wert in Schritt 604 aktualisiert.
In Schritt 618 wird ein Schleifenzähler erhöht und mit einem Wert von M
verglichen. Wenn der Schleifenzähler
weniger als M ist, wird ein weiterer Wert in Schritt 604 akkumuliert.
Wenn der Schleifenzähler
M erreicht, wird der aktualisierte akkumulierte Wert mit einer Schwelle
in Merkmalintervallen von einem Merkmal (M = 1 wie gezeigt) oder
mehr (M > 1) in Schritt 606 verglichen.
Wenn die Schwelle überschritten
wird, wird ein Ausgangssignal, das einen Erfolg anzeigt, von der
Smartcard in Schritt 608 übertragen und von dem Hostprozessor
in Schritt 608A empfangen. Wenn die Schwelle nicht überschritten
wird, wird eine Überprüfung verbleibender
Merkmale in Schritt 610A durchgeführt. Wenn Merkmale verbleiben,
wird der Vorgang in Schritt 604 mit dem Akkumulieren von
Werten fortgesetzt, die sich auf andere Merkmale beziehen. Sobald
die Daten innerhalb des Pakets verarbeitet sind, wird in Schritt 630 ein
neues Paket angefordert. Die neue Paketanforderung wird dem Host-Prozessor 601 bereitgestellt
und wird von diesem in Schritt 630A empfangen. Wenn keine
Paketdaten mehr verbleiben wie in Schritt 610B bestimmt,
wird ein Ausgangssignal, das einen Misserfolg anzeigt, in Schritt 614 bereitgestellt. Wenn
mehr Paketdaten verbleiben, wird ein weiteres Paket an die Smartcard
in Schritt 602 bereitgestellt.
-
Natürlich ist
das Nichtvorhandensein von Merkmalen als Registrierungsmerkmal ebenfalls
nützlich. Somit
wird das Nichtvorhandensein eines Merkmals potenziell auch gemäß Ausführungsformen
der Erfindung verwendet, um eine Person zu identifizieren. Ein Verfahren
zur Verwendung nicht vorhandener Merkmale ist in 7 gezeigt
und gemäß dem Verfahren
von 3. Natürlich
ist ein Verfahren wie die in 4 und 5 gezeigten auch bei nicht vorhandenen
Merkmaldaten nützlich.
-
Das
Flussdiagramm von 7 zeigt ein Akkumulationsverfahren,
in dem vorhandene Merkmale zu einer bestimmten Akkumulierung führen, die
sich auf einen Abstand zwischen diesen Merkmalen und Daten innerhalb
des Templates beziehen. Eine Anzeige eines nicht vorhandenen Merkmals
führt zu
einer Akkumulierung gemäß einer
anderen Formel. Somit zeigt der akkumulierte Wert Merkmale und das
Nichtvorhandensein von Merkmalen in dem biometrischen Fingerabdruckmuster
an. In Schritt 700 wird der akkumulierte Wert A zurückgesetzt.
Merkmaldaten werden in Schritt 702 empfangen. Bei jedem
Datenelement wird in Schritt 703 eine Analyse durchgeführt, ob
es sich auf ein vorhandenes Merkmal bezieht. Wenn sich ein Datenelement
auf ein vorhandenes Merkmal bezieht, wird das Datenelement akkumuliert,
unter Verwendung eines ähnlichen Verfahrens
wie desjenigen, das zuvor in Schritt 704A beschrieben wurde.
Wenn sich das Datenelement auf ein nicht vorhandenes Datenelement
bezieht, wird das Datenelement unter Verwendung eines Verfahrens
akkumuliert, das sich auf nicht vorhandene Merkmale in Schritt 704B bezieht.
Der akkumulierte Wert A wird mit einer Schwelle T in Schritt 706 verglichen.
Wenn A T überschreitet,
wird ein Ausgangssignal, das einen Erfolg anzeigt, in Schritt 708 bereitgestellt.
Wenn A T nicht überschreitet,
werden die verbleibenden Daten in Schritt 710 bestimmt.
Wenn keine Daten verbleiben, wird in Schritt 714 ein Ausgangssignal,
das einen Misserfolg anzeigt, bereitgestellt. Ansonsten wird der
Vorgang in Schritt 703 fortgesetzt.
-
Natürlich sind
Modifizierungen des Verfahrens von 7 gemäß der zuvor
dargestellten Abwandlungen denkbar.
-
Mit
Bezug auf 8 ist ein erfindungsgemäßes Verfahren
zum Sortieren von Merkmalen und zum Speichern von Merkmaldaten innerhalb
eines Templates gezeigt. In Schritt 802 wird ein Fingerabdruckbild
erfasst. Während
der Registrierung werden Merkmale aus dem erfassten Fingerabdruckbild
in Schritt 804 extrahiert. Ein gemeinsamer Bezugsrahmen
wird in Schritt 806 für
das Fingerabdruckbild bestimmt, um dessen wiederholbare Ausrichtung
bereitzustellen. Dies ermöglicht
den Vergleich von Merkmaldaten, die aus nacheinander erfassten Fingerabdruckbildern
extrahiert worden sind, mit Templatedaten in einem gemeinsamen Bezugsrahmen.
Zum Beispiel wird ein gemeinsamer Bezugsrahmen unter Verwendung
des Fingerabdruckkerns bestimmt. Merkmaldaten werden dann basierend
auf den extrahierten Merkmalen und dem gemeinsamen Bezugsrahmen
in Schritt 808 bestimmt. Normalerweise enthalten die Merkmaldaten
einen Merkmalidentifikator und mindestens einen Wert, der sich auf
das Merkmal bezieht. Natürlich
wird kein Merkmalidentifikator benötigt, wenn die Merkmalreihenfolge
bekannt ist. Basierend auf den Merkmaldaten wird in Schritt 810 ein
Template gebildet. Die Merkmaldaten werden dann jeweils im Vergleich
zu dem Template registriert, um einen jeweiligen akkumulierten Wert
in Schritt 812 zu bestimmen. Die Merkmale werden dann in
Schritt 814 basierend auf ihren akkumulierten Werten in
absteigender Reihenfolge sortiert. Schließlich wird ein Ordnen der Merkmale in
Schritt 816 zur späteren
Verwendung beim Abrufen von Werten gespeichert, die sich auf Merkmale
beziehen, in der Reihenfolge, die durch den Schritt des Sortierens
bestimmt worden ist.
-
Mit
Bezug auf 9 ist ein erfindungsgemäßes Verfahren
zum Sortieren von Merkmalen und zum Speichern von Merkmaldaten in
einem Template gezeigt. In Schritt 902 wird ein Fingerabdruckbild
erfasst. Während
der Registrierung werden Merkmale aus dem erfassten Fingerabdruckbild
in Schritt 904 extrahiert. Ein gemeinsamer Bezugsrahmen
wird in Schritt 906 für
das Fingerabdruckbild bestimmt, um dessen wiederholbare Ausrichtung
bereitzustellen. Dies ermöglicht
den Vergleich von Merkmaldaten, die aus nacheinander erfassten Fingerabdruckbildern
extrahiert werden, mit Templatedaten in einem gemeinsamen Bezugsrahmen. Zum
Beispiel wird ein gemeinsamer Bezugsrahmen unter Verwendung des
Fingerabdruckkerns bestimmt. Merkmaldaten werden dann basierend
auf den extrahierten Merkmalen und dem gemeinsamen Bezugsrahmen
in Schritt 908 bestimmt. Normalerweise enthalten die Merkmaldaten
einen Merkmalidentifikator und mindestens einen Wert, der sich auf
das Merkmal bezieht. Natürlich
wird kein Merkmalidentifikator benötigt, wenn die Merkmalreihenfolge
bekannt ist. Basierend auf den Merkmaldaten wird in Schritt 910 ein
Template gebildet. Die Merkmaldaten werden dann jeweils gegen das
Template registriert, um einen jeweiligen akkumulierten Wert für jedes
in Schritt 912 zu bestimmen. Die Merkmale werden dann in
Zwischenspeicher sortiert, basierend auf ihren akkumulierten Werten,
wobei ähnliche
akkumulierte Werte in Schritt 914 in einem gleichen Zwischenspeicher
gespeichert werden. Schließlich
wird eine Anzeige des Zwischenspeichers jedes Merkmals in Schritt 916 gespeichert,
zur späteren
Verwendung beim Abrufen von Werten, die sich auf Merkmale beziehen,
in einer Reihenfolge, die sich auf die Zwischenspeicherung dieser
bezieht.
-
Mit
Bezug auf 10A ist ein beispielhaftes biometrisches
Fingerabdruckmuster gezeigt, das eine auf einen Bereich bezogene Überlagerung
aufweist. Die auf einen Bereich bezogene Überlagerung stellt Bereiche oder
Flächen bereit
sowie ein Koordinatensystem zum Lokalisieren biometrischer Merkmale
von Interesse für die
Extraktion. Ein Kartesisches Koordinatensystem ist gezeigt, es können jedoch
auch andere Koordinatensysteme wie polar-rechteckige verwendet werden.
-
Außerdem sind
die gezeigten Achsen willkürlich über dem
biometrischen Muster zentriert. Ein Fachmann wird schätzen, dass
andere Anordnungen ebenfalls funktionieren, solange ein konsistentes
Koordinatensystem für
die Bestimmung der Bereiche oder Flächen verwendet wird, die die
höchste
Wahrscheinlichkeit aufweisen, mit einem Bezugstemplate übereinzustimmen.
-
Bei
Fingerabdrücken
ist empirisch festgestellt worden, dass eine auf den Bereich bezogene Überlagerungsgröße, die
ein Raster von ungefähr
16 × 16
aufweist, eine ausreichende auf den Bereich bezogene Definition
bereitstellt, ohne signifikante Verschlechterung der Verarbeitungsgeschwindigkeit.
Es sollte beachtet werden, dass einzelne Bereiche variabel bemessen
sein können,
um spezifische Merkmale und/oder Positionen aufzunehmen, die aus
einem biometrischen Muster extrahiert werden sollen.
-
In
einer Ausführungsform
der Erfindung werden postliminare Analysen durchgeführt, wobei
eine Datenbank, die eine große
Anzahl biometrischer Muster und deren zugehörige biometrische Bezugstemplates enthält, unter
Verwendung einer auf den Bereich bezogenen Überlagerung verarbeitet werden.
Die auf den Bereich bezogene Überlagerung
teilt das biometrische Muster in einzeln identifizierbare Bereiche
auf. Die Dichte der Bereiche kann verändert werden, um besser zwischen
benachbarten Bereichen zu unterscheiden, die dicht gehäuft auftretende
biometrische Merkmale von Interesse für die Extraktion aufweisen.
Ein Gleichgewicht wird jedoch vorzugsweise zwischen der Anzahl der
definierten Bereiche und den verfügbaren Verarbeitungskapazitäten aufrechterhalten,
da eine Erhöhung
der Anzahl der definierten Bereiche mehr Verarbeitungszeit, mehr
Speicher erfordert und die Anzahl der Datenpakete erhöht, die
an die biometrische Abgleichvorrichtung geschickt werden sollen.
-
Die
empirischen Ergebnisse werden aufgezeichnet, um die Flächen oder
Bereiche zu bestimmen, die die höchste
Wahrscheinlichkeit aufweisen, Daten von signifikantem Wert für die Feststellung
einer Übereinstimmung
zwischen dem biometrischen Muster und einem zugehörigen biometrischen
Bezugstemplate bereitzustellen. In dieser ersten Ausführungsform
der Erfindung ist es nicht erforderlich, dass die bestimmten auf
den Bereich bezogenen Positionen oder Flächen spezifisch für eine besondere
Person sind, sondern sie werden statistisch und/oder unter Anwendung
von Data-Mining-Techniken bestimmt, basierend auf der großen Anzahl Beobachtungen
für einen
besonderen biometrischen Mustertyp. Zum Beispiel Abdrücke des
linken Zeigefingers.
-
Damit
dieses Verfahren effektiv ist, sollte die Datenbank eine ausreichende
Anzahl Datensätze
enthalten, um statistisch signifikante Ergebnisse zu erzeugen.
-
In
einer zweiten Ausführungsform
der Erfindung wird ein heuristisches Verfahren angewendet, in dem die
biometrischen Authentifizierungs-Transaktionen einer bestimmen Person über die
Zeit aufgezeichnet werden, um zu bestimmen, welche Bereiche oder
Flächen
den höchsten
Beitrag zum Abgleich bereitstellen. In einer dritten Ausführungsform
der Erfindung wird eine Kombination postliminarer und heuristischer
Verfahren angewendet, die die „Feinabstimmung" der auf den Bereich
bezogenen Auswahlkriterien ermöglicht.
-
Mit
Bezug auf 10C ist eine Histogrammtabelle
dargestellt, die Ergebnisse beschreibt, die aus identifizierten
Bereichen gewonnen werden, die die höchste Übereinstimmungshäufigkeit
mit einem biometrischen Bezugstemplate aufweisen. Aus der Tabelle
wird bestimmt, welche Bereiche als Muster genommen werden sollten,
sowie die Reihenfolge, in der die extrahierten Ergebnisse an die
biometrische Abgleichvorrichtung geschickt werden sollten.
-
Mit
Bezug auf 10B sind diejenigen identifizierten
Bereiche gezeigt, die die höchsten Übereinstimmungsraten
aufweisen, die anhand der Ergebnisse interpretiert wurden, die in 10A dargestellt sind. Aus 10A geht
hervor, dass sich herausstellte, dass der Bereich D4 eine Vielzahl
von Informationen bereitstellte, um mit einem biometrischen Bezugstemplate-Gegenstück übereinzustimmen.
Darum werden die Daten, die aus Bereich D4 extrahiert werden, vorzugsweise
eingekapselt und zuerst an die biometrische Abgleichvorrichtung
geschickt, worauf die Daten folgen, die aus Bereich C4 extrahiert
werden, und fortlaufend in absteigender Reihenfolge die Daten, die
aus den verbleibenden identifizierten Bereichen extrahiert werden.
Bereiche, die keinen signifikanten Beitrag zum Abgleich des biometrischen
Bezugstemplate bereitstellen, werden optional von den Daten ausgeschlossen,
die an die biometrische Abgleichvorrichtung übertragen werden.
-
Mit
Bezug auf 10D wird ein Überblick über die
Erzeugung der auf den Bereich bezogenen Auswahlkriterien und deren
Anwendung beschrieben. Bei dieser Ausführungsform der Erfindung umfasst
ein Computersystem 205 eine biometrische Abgleichvorrichtung 210,
die Eingänge
von Datenbanken empfängt,
die die aufgezeichneten biometrischen Muster 225 und die
Bezugstemplate-Gegenstücke 230 speichern.
Die Datenbänke
sollten eine ausreichende Anzahl von Datensätzen aufweisen, um statistisch
signifikante Ergebnisse für die
Analyse durch eine statistische Analysevorrichtung 215 bereitzustellen.
-
Eine
auf den Bereich bezogene Überlagerung 220 wird
von der biometrischen Abgleichvorrichtung 210 verwendet,
um konsistent Bereiche auf jedem Muster zu definieren, das mit seinem
biometrischen Bezugstemplate-Gegenstück abgeglichen
wird. Das Abgleichen der biometrischen Muster mit ihren Bezugstemplate-Gegenstücken wird
in einer Art ausgeführt,
die die Konsistenz bei der Orientierung zur Bestimmung der relevanten
Bereiche für
den Abtastvorgang sicherstellt. In Abhängigkeit von den Ausrichtungsverfahren,
die von der biometrischen Abgleichvorrichtung 210 angewendet
werden, ist manchmal die Normierung der biometrischen Muster und
ihrer Bezugstemplate-Gegenstücke
auf eine einheitliche Orientierung erforderlich.
-
Die
statistische Analysevorrichtung 215 empfängt den
Output von der biometrischen Abgleichvorrichtung 210 und
bestimmt die Wahrscheinlichkeit einer Übereinstimmung durch den Bereich 235.
Diese Informationen werden dann verwendet, um auf den Bereich bezogene
Auswahlkriterien 245 zu erzeugen 240. Als Alternative
wird der Output von der biometrischen Abgleichvorrichtung 210 graphisch
angezeigt und die auf den Bereich bezogenen Auswahlkriterien 245 visuell
bestimmt. Die auf den Bereich bezogenen Auswahlkriterien 245 werden
lokal gespeichert, innerhalb eines Sicherheits-Tokens, oder alternativ
von einer entfernten Quelle empfangen, wie einem in ein Netzwerk
eingebundenen Authentifizierungs-Server. Die auf den Bereich bezogenen
Auswahlkriterien 245 werden von einer biometrischen Abgleichvorrichtung 255 verwendet,
die mit dem lokalen Client 105 verbunden ist, zum Verarbeiten
des biometrischen Musters 265 eines Benutzers, das von dem
biometrischen Scanner 95 empfangen 270 wird. Die
auf den Bereich bezogenen Auswahlkriterien 245 umfassen
optional Ausrichtungsinformationen, um die empfangenen biometrischen
Muster auf die gleiche Orientierung zu normieren wie die biometrischen
Bezugstemplate-Gegenstücke.
-
Der
Output 280 von der biometrischen Verarbeitungsvorrichtung 255 wird
in Datenpakete eingebunden, die eine Hierarchie 275 aufweisen,
die auf der Wahrscheinlichkeit basiert, mit einem biometrischen
Bezugstemplate-Gegenstück übereinzustimmen.
Die Hierarchie gibt dem Datenpaket Priorität, das die extrahierten Daten
umfasst, die die höchste
Wahrscheinlichkeit der Übereinstimmung
aufweisen, um zuerst an eine biometrische Abgleichvorrichtung übertragen 285 zu
werden.
-
Mit
Bezug auf 10E ist eine Ausführungsform
der Erfindung gezeigt, in der Datenpakete über ein Netzwerk 65 übertragen
werden 285A und von einer biometrischen Abgleichvorrichtung 210A verarbeitet
werden, die in einem entfernten Authentifizierungs-Server 205 installiert
ist. In dieser Ausführungsform
der Erfindung werden die Datenpakete in TCP/IP-Protokoll oder einer äquivalenten
Kommunikationsanordnung zum Paket-Switching übertragen. Die biometrische
Abgleichvorrichtung 210A vergleicht die empfangenen biometrischen
Musterinformationen und vergleicht diese mit einer Bezugstemplate-Datenbank 230A zu
Identifizierungs- und Authentifizierungszwecken. In dieser Ausführungsform
der Erfindung umfasst die Bezugstemplate-Datenbank 230A auch
die auf einen Bereich bezogenen Auswahlkriterien, die von dem lokalen
Client 105 vor Empfang des biometrischen Musters von dem
Benutzer 265 (nicht dargestellt) empfangen werden. In einer ähnlichen
Ausführungsform
der Erfindung werden die eingehenden biometrischen Musterdaten,
einschließlich Informationen,
die sich auf den Bereich beziehen, in dem die Daten extrahiert wurden,
in einer Datenbank 225A aufgezeichnet, zusammen mit einer Übereinstimmungs-Erfolgsrate.
Die aufgezeichneten Informationen 225A werden von einer
statistischen Analysevorrichtung 215A verwendet, um den
Abgleich über
die Zeit heuristisch zu verbessern.
-
Mit
Bezug auf 10F ist eine weitere Ausführungsform
der Erfindung gezeigt, in der Datenpakete an ein Sicherheits-Token 75 übertragen
werden 285B, das eine biometrische Abgleichvorrichtung 210B und
ein biometrisches Bezugstemplate 230B aufweist, das für den Token-Besitzer
spezifisch ist, der operativ darin installiert ist. Bei dieser Ausführungsform
der Erfindung werden die Datenpakete in einem APDU-Protokoll übertragen.
Die biometrische Abgleichvorrichtung 210B vergleicht die
empfangenen biometrischen Musterinformationen mit dem Bezugstemplate 230B zu
Identifizierungs- und Authentifizierungszwecken.
-
Mit
Bezug auf 10G ist eine weitere Ausführungsform
der Erfindung dargestellt, in der die auf den Bereich bezogenen
Auswahlkriterien 245 in dem Sicherheits-Token 75 gespeichert
sind und an die biometrische Abgleichvorrichtung 255 zur
Vorverarbeitung des biometrischen Musters 265 eines Benutzers
geschickt werden 287, das von dem biometrischen Scanner 95 empfangen
wird 270. Der Output 285C von der biometrischen
Verarbeitungsvorrichtung 255 wird an das Sicherheits-Token 75 zur
Verarbeitung durch die biometrische Abgleichvorrichtung 210B geschickt.
Die biometrische Abgleichvorrichtung 210B vergleicht die
empfangenen biometrischen Musterinformationen und mit dem Bezugstemplate 230B zu
Identifizierungs- und Authentifizierungszwecken.
-
Mit
Bezug auf 10H ist eine weitere Ausführungsform
der Erfindung gezeigt, in der die auf den Bereich bezogenen Auswahlkriterien 245 in
dem Sicherheits-Token 75 gespeichert werden und an die
biometrische Abgleichvorrichtung 255 zur Vorverarbeitung
des biometrischen Musters 265 eines Benutzers übertragen werden 287,
das von dem biometrischen Scanner 95 empfangen wird 270.
Der Output 285D von der biometrischen Verarbeitungsvorrichtung 255 wird über das
Netzwerk 65 übertragen
und von der biometrischen Abgleichvorrichtung 210A verarbeitet,
die in dem entfernten Authentifizierungs-Server 205 installiert
ist. Wie zuvor beschrieben, vergleicht die biometrische Abgleichvorrichtung 210A die
empfangenen biometrischen Musterinformationen und mit Daten in einer
Bezugstemplate-Datenbank 230A zu Identifizierungs- und
Authentifizierungszwecken.
-
Mit
Bezug auf 11 ist ein Flussdiagramm zur
Umsetzung einer Ausführungsform
der Erfindung beschrieben. Der Vorgang wird durch das Empfangen
und Vorverarbeiten 302 eines biometrischen Musters eingeleitet 300,
unter Verwendung von auf den Bereich bezogenen Kriterien, die von
einem Host empfangen werden, der eine biometrische Abgleichvorrichtung 306 enthält.
-
Die
auf den Bereich bezogenen Kriterien werden dann auf das empfangene
biometrische Muster angewendet, um spezifische Bereiche für die Musternahme 304 zu
definieren. Bereiche, die die höchste
Wahrscheinlichkeit haben, mit einer Bezugsgröße übereinzustimmen, werden identifiziert 308,
worauf die Extraktion relevanter biometrischer Daten aus den identifizierten
Bereichen 310 folgt.
-
Die
extrahierten Daten werden dann in Datenpakete 312 eingekapselt
und in einer Übertragungshierarchie
angeordnet, die es ermöglicht,
das/die Datenpaket(e) auszuwählen,
die die höchste
Wahrscheinlichkeit aufweisen, mit dem Bezugstemplate 314 übereinzustimmen.
Das Datenpaket, das die höchste
Wahrscheinlichkeit aufweist, mit dem Bezugstemplate 316 übereinzustimmen,
wird zuerst an die biometrische Abgleichvorrichtung übertragen.
Natürlich
ist es, solange das erste übertragene
Datenpaket eine ausreichende Wahrscheinlichkeit aufweist, mit dem
Bezugstemplate übereinzustimmen,
nicht entscheidend, dass es die höchste Wahrscheinlichkeit aufweist,
mit dem Bezugstemplate übereinzustimmen.
-
Die
biometrische Abgleichvorrichtung vergleicht die empfangenen Daten
mit einem biometrischen Bezugstemplate 318. Wenn eine Übereinstimmung
beim ersten Datenpaket 320 erzielt wird, wird der Benutzer authentifiziert
und Zugang zu den Token-Ressourcen 328 gewährt. Wenn
beim ersten Datenpaket 320 keine Übereinstimmung erzielt wird,
bestimmt die biometrische Abgleichvorrichtung, ob ein zusätzliches
Datenpaket erforderlich ist, um mit dem biometrischen Bezugstemplate 322 übereinzustimmen.
In dieser Situation ist es möglich,
dass das anfängliche
empfangene Datenpaket ausreicht, um zu bestimmen, dass es nicht
zu dem richtigen Benutzer gehört,
und die Transaktion 330 zu beenden. Alternativ ist es möglich, dass
das biometrische Muster aufgrund physiologischer Veränderungen,
die mit dem Benutzer zusammenhängen,
Umweltbedingungen, die die Qualität der Musternahme und/oder
Probleme, die mit dem biometrischen Scanner zusammenhängen, verschlechtert
wird. In dieser Situation wird ein weiteres Datenpaket 322 von
dem Client angefordert.
-
Der
Client reagiert, indem er das Datenpaket, das die nächst höchste Priorität aufweist,
an die biometrische Abgleichvorrichtung 324 sendet. Dieser
Vorgang kann wiederholt werden, bis alle Datenpakete, die der Client
enthält,
an die biometrische Abgleichvorrichtung gesendet worden sind, oder
bis eine Übereinstimmung zwischen
dem konsolidierten Muster und dem Bezugstemplate hergestellt worden
ist. Die Verarbeitung endet, wenn alle Datenpakete, die der Client
enthält,
ohne eine Übereinstimmung 330 an
die biometrische Abgleichvorrichtung gesendet worden sind.
-
Mit
Bezug auf 12A ist der Fingerabdruck von 2 mit einer Rasterüberlagerung gezeigt. Die Rasterüberlagerung
ermöglicht
die Bestimmung von Stegflusswinkeln in vorbestimmten Bereichen des
Fingerabdrucks. Zum Beispiel ist zwischen den Linien B und C und
den Linien 2 und 3 ein Bereich vorhanden, in dem die Stegflusswinkel
relativ gerade und relativ parallel sind. Dies ermöglicht die
Bestimmung von Stegflusswinkeln mit einem angemessenen Grad an Genauigkeit
wird bevorzugt zur Verwendung bei Stegflusswinkel-Registrierung.
Die Rasterüberlagerung
ist beabstandet und bemessen im Verhältnis zu dem biometrischen
Fingerabdruckmuster, um wiederholt auf konsistente Weise überlagert
zu werden. Solange das Raster während der
Templateerzeugung – der
Registrierung – und
der Merkmalextraktion für
die Registrierung ähnlich
wie das Fingerabdruckbild ausgerichtet wird, sollten die resultierenden
Stegflusswinkel übereinstimmen.
-
Mit
Bezug auf 12B ist das Raster mit der Kästchennummerierung
von 1 bis n über
die Reihen und die Säulen
abwärts
gezeigt. Die Verwendung der Nummerierung ermöglicht die Identifizierung
erwarteter Stegflusswinkel, die nur auf der Rasternummer basiert.
Als solche ist das zuvor identifizierte Kästchen Kästchennummer 19. Anstatt also
einen Rasterkästchen-Identifikator
zu speichern, ist es möglich,
alle Stegflusswinkel in der Reihenfolge der Kästchennummer zu sortieren,
sodass der Stegflusswinkel von Kästchen
19 als der neunzehnte Stegflusswinkel in den Merkmaldaten gespeichert
wird.
-
Mit
Bezug auf 12C ist ein einzelnes Kästchen des
Rasters mit einem Vektor dargestellt, der den Stegflusswinkel innerhalb
des Kästchens
darstellt. Wie aus der Figur deutlich wird, gibt es eine Größe für ein Kästchen,
die nahezu optimal ist, bei der die Stege lang genug sind, um die
Winkelbestimmung unkompliziert zu machen, und klein genug, sodass
der Stegfluss in jedem Kästchen
durch eine gerade Linie ziemlich angenähert wird, wie es in Rasterkästchen 19
der Fall ist. Andere Kästchen,
wie die Rasterkästchen
1 und 36, sind weniger geeignet für die genaue Stegflusswinkelbestimmung.
Es ist als solches offensichtlich, dass manche Stegflusswinkelbestimmungen
bessere Merkmale bilden als andere, da sie den Stegfluss genauer
darstellen.
-
Somit
ist das in 12C gezeigte Raster durch einen
Satz Indexe ersetzbar, die jedes Rasterkästchen und einen Winkel des
Stegflusses in dem Rasterkästchen
anzeigen. Natürlich
wird die Notwendigkeit einer Speicherung der Indexe vermieden, wenn
alle Stegflusswinkel gespeichert sind, einer für jedes Rasterkästchen.
-
Natürlich verringert
das Ordnen der Rasterkästchen
in der Reihenfolge bessere zu schlechteren Stegflusswinkeln die
Gesamtanzahl der Merkmalvergleiche, die gemäß den Verfahren erforderlich
sind, die in den Flussdiagrammen von 4 bis 7 gezeigt
sind.
-
Mit
Bezug auf 13 ist ein vereinfachtes Flussdiagramm
eines erfindungsgemäßen Verfahrens
zur Templatebildung gezeigt. Ein erstes biometrisches Informationsmuster
wird in Schritt 1301 bereitgestellt. Das erste biometrische
Informationsmuster wird erfasst, was zu erfassten Daten führt. Die
erfassten Daten werden vorverarbeitet, um sie zu filtern, um Daten
von einer Qualität
bereitzustellen, die für
die Verwendung bei der Templateerzeugung geeignet sind. Die erfassten
Daten werden analysiert, um daraus biometrische Daten in Schritt 1302 zu
extrahieren. Die biometrischen Daten beziehen sich auf Merkmale,
die reproduzierbar aus den erfassten Daten extrahierbar sind.
-
Merkmale,
die eine hohe Wahrscheinlichkeit der genauen Registrierung mit einem
Template aufweisen, werden dann in den biometrischen Daten in Schritt 1303 identifiziert.
Diese Merkmale sind im Allgemeinen Merkmale, die einen höheren Qualitätsfaktor
oder eine größere Einmaligkeit
aufweisen. Normalerweise werden Merkmale, die dafür bekannt
sind, aus Lärm
oder Schmutz zu entstehen, in diesem Schritt nicht identifiziert.
Das Ergebnis von Schritt 1303 ist eine Identifizierung
derjenigen Merkmale, bei denen es am wahrscheinlichsten ist, dass
sie bei der biometrischen Registrierung gegen ein Template nützlich sind.
In Schritt 1304 wird ein Template gespeichert, einschließlich Daten,
die sich auf ein Ordnen der biometrischen Daten beziehen, die sich
auf Merkmale beziehen, wobei das Ordnen auf der Identifizierung
basiert. Zum Beispiel werden die biometrischen Daten basierend auf
ihrer Qualität
geordnet. Als solche werden Merkmale von höherer Qualität während des
Registrierungsvorgangs als erste zur Registrierung bereitgestellt.
Alternativ werden die biometrischen Daten gespeichert, geordnet
gemäß einem
Qualitätsbereich,
in das jedes Datenelement gruppiert wird. Somit werden Merkmale
höherer
Qualität
zuerst bereitgestellt, obwohl nicht notwendigerweise in der Reihenfolge
ihrer jeweiligen Qualität.
-
Mit
Bezug auf 14 ist ein vereinfachtes Flussdiagramm
eines erfindungsgemäßen Verfahrens
zur Templatebildung gezeigt. Ein erstes biometrisches Informationsmuster
wird in Schritt 1401 bereitgestellt. Das erste biometrische
Informationsmuster wird erfasst, was zu erfassten Daten führt. Die
erfassten Daten werden vorverarbeitet, um sie zu filtern, um Daten
von einer Qualität
bereitzustellen, die für
die Verwendung bei der Templateerzeugung geeignet sind. Die erfassten
Daten werden analysiert, um daraus biometrische Daten in Schritt 1402 zu
extrahieren. Die biometrischen Daten beziehen sich auf Merkmale,
die reproduzierbar aus den erfassten Daten extrahierbar sind.
-
Merkmale,
die statistisch gesehen eine hohe Wahrscheinlichkeit der genauen
Registrierung mit einem Template aufweisen, werden dann in den biometrischen
Daten in Schritt 1403 identifiziert, basierend auf einer a
priori Kenntnis der Positionen von Merkmalen, bei denen es statistisch
gesehen wahrscheinlich ist, dass sie eine höhere Qualität aufweisen. Diese Merkmale
befinden sich im Allgemeinen dort, wo es am wahrscheinlichsten ist,
dass der Sensor sie effektiv erfasst. Normalerweise werden Merkmale,
von denen bekannt ist, dass sie in Positionen oder Bereichen liegen,
die mehr Lärm
aufweisen, in diesem Schritt nicht identifiziert. Das Ergebnis von
Schritt 1403 ist eine Identifizierung derjenigen Merkmale,
von denen es am wahrscheinlichsten ist, dass sie bei der biometrischen
Registrierung gegen ein Template von Nutzen sind. In Schritt 1404 wird
ein Template gespeichert, das Daten umfasst, die sich auf ein Ordnen
der biometrischen Daten beziehen, die sich auf Merkmale beziehen,
wobei das Ordnen auf der Identifizierung beruht. Zum Beispiel werden
die biometrischen Daten basierend auf ihrer Qualität geordnet.
Während
des Registrierungsvorgangs werden Daten höherer Qualität als solche
zuerst für
die Registrierung bereitgestellt. Alternativ werden die biometrischen
Daten gemäß einem
Qualitätsbereich
geordnet, in den jedes Datenelement gruppiert wird. Somit werden
Merkmale von höherer
Qualität
zuerst bereitgestellt, wenn auch nicht notwendigerweise in der Reihenfolge
ihrer jeweiligen Qualität.
-
Auf ähnliche
Weise liegt es im Umfang der Erfindung, weitere Merkmale, die aus
einem biometrischen Muster extrahiert wurden, wie Minuzienwinkel,
neu zu ordnen, in Übereinstimmung
mit einer Wahrscheinlichkeit, dass diese Merkmale signifikant zu
dem akkumulierten Wert beitragen.
-
Obwohl
die zuvor gegebene Beschreibung auf Auswahlkriterien beruht, die
zur Bestimmung der Merkmalreihenfolge bereitgestellt sind, wird
in einer alternativen Ausführungsform
die Merkmalreihenfolge vorbestimmt oder dynamisch bestimmt, basierend
auf einigen anderen Kriterien und ohne, dass diese bereitgestellt werden.
Obwohl die größten Vorteile
der Merkmalordnung zur Verringerung der Datenverarbeitung, die notwendig
ist, um ein biometrisches Muster erfolgreich gegen ein biometrisches
Template zu registrieren, statistisch nicht so gesichert sind, führen sogar
vorbestimmte Ordnungsergebnisse im Wesentlichen zu Vorteilen.
-
Obwohl
die zuvor gegebene Beschreibung insbesondere die Fingerabdruckanalyse
betrifft, ist sie auch auf andere biometrische Muster anwendbar,
wie Iris-Scans, Netzhaut-Scans, Handflächenabdrücke, Zehenabdrücke, Stimmenabdrücke und
so weiter.
-
Die
vorstehend beschriebenen Ausführungsformen
der Erfindung sind als Veranschaulichungen und Beschreibungen bereitgestellt.
Sie sollen die Erfindung nicht auf bestimmte beschriebene Formen
einschränken.
Insbesondere wird davon ausgegangen, dass die funktionelle Umsetzung
der hier beschriebenen Erfindung gleichartig in Hardware, Software,
Firmware und/oder anderen verfügbaren
funktionellen Komponenten oder Bausteinen umgesetzt werden kann.
Es ist keine spezifische Einschränkung
auf eine besondere Anwendungsumgebung eines Sicherheits-Tokens beabsichtigt.
Weitere Abwandlungen und Ausführungsformen
sind angesichts der zuvor gegebenen Lehren möglich, und es ist nicht beabsichtigt,
dass der Umfang der Erfindung durch diese ausführliche Beschreibung eingeschränkt wird,
sondern vielmehr durch die hierauf folgenden Ansprüche.