DE112019006622T5 - Verfahren und system zur privatsphärenbewahrenden biometrischenauthentifizierung - Google Patents

Verfahren und system zur privatsphärenbewahrenden biometrischenauthentifizierung Download PDF

Info

Publication number
DE112019006622T5
DE112019006622T5 DE112019006622.6T DE112019006622T DE112019006622T5 DE 112019006622 T5 DE112019006622 T5 DE 112019006622T5 DE 112019006622 T DE112019006622 T DE 112019006622T DE 112019006622 T5 DE112019006622 T5 DE 112019006622T5
Authority
DE
Germany
Prior art keywords
encrypted
match score
biometric information
client device
neural network
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
DE112019006622.6T
Other languages
English (en)
Inventor
Omri Soceanu
Muhammad Barham
Michael Vinov
Ariel Farkash
Ron Shmelkin
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
International Business Machines Corp
Original Assignee
International Business Machines Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by International Business Machines Corp filed Critical International Business Machines Corp
Publication of DE112019006622T5 publication Critical patent/DE112019006622T5/de
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3226Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using a predetermined code, e.g. password, passphrase or PIN
    • H04L9/3231Biological data, e.g. fingerprint, voice or retina
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/30Authentication, i.e. establishing the identity or authorisation of security principals
    • G06F21/31User authentication
    • G06F21/32User authentication using biometric data, e.g. fingerprints, iris scans or voiceprints
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/02Neural networks
    • G06N3/08Learning methods
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N7/00Computing arrangements based on specific mathematical models
    • G06N7/01Probabilistic graphical models, e.g. probabilistic networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/008Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols involving homomorphic encryption
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0869Generation of secret information including derivation or calculation of cryptographic keys or passwords involving random numbers or seeds
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3218Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
    • H04L9/3218Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs
    • H04L9/3221Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials using proof of knowledge, e.g. Fiat-Shamir, GQ, Schnorr, ornon-interactive zero-knowledge proofs interactive zero-knowledge proofs

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Theoretical Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Biomedical Technology (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Mathematical Physics (AREA)
  • Computing Systems (AREA)
  • Biodiversity & Conservation Biology (AREA)
  • Artificial Intelligence (AREA)
  • Evolutionary Computation (AREA)
  • Data Mining & Analysis (AREA)
  • Molecular Biology (AREA)
  • Biophysics (AREA)
  • Computational Linguistics (AREA)
  • Computational Mathematics (AREA)
  • Mathematical Analysis (AREA)
  • Mathematical Optimization (AREA)
  • Algebra (AREA)
  • Probability & Statistics with Applications (AREA)
  • Computer Hardware Design (AREA)
  • Pure & Applied Mathematics (AREA)
  • Collating Specific Patterns (AREA)
  • Measurement Of The Respiration, Hearing Ability, Form, And Blood Characteristics Of Living Organisms (AREA)

Abstract

Ausführungsformen der vorliegenden Systeme und Verfahren können verschlüsselte biometrische Informationen bereitstellen, die gespeichert und zur Authentifizierung mit unverminderter Erkennungsleistung verwendet werden können. In einer Ausführungsform kann ein Verfahren beispielsweise aufweisen: Speichern einer Vielzahl von verschlüsselten trainierten Gewichten eines neuronalen Netzwerkklassifizierers, wobei die Gewichte unter Verwendung biometrischer Informationen trainiert wurden, die mindestens ein biometrisches Merkmal einer Person darstellen, Empfangen verschlüsselter biometrischer Informationen, die durch Aufnehmen mindestens eines biometrischen Merkmals der Person erhalten wurden, und Verschlüsseln des geprobten biometrischen Merkmals, Erhalten eines Übereinstimmungs-Score unter Verwendung des verschlüsselten trainierten neuronalen Netzwerkklassifikators, wobei der Übereinstimmungs-Score eine Wahrscheinlichkeit angibt, dass die empfangenen verschlüsselten biometrischen Informationen mit den gespeicherten verschlüsselten biometrischen Informationen übereinstimmen, und Authentifizieren der Person, wenn die Wahrscheinlichkeit, dass die empfangenen verschlüsselten biometrischen Informationen mit den gespeicherten verschlüsselten biometrischen Informationen übereinstimmen, einen Schwellenwert überschreitet.

Description

  • HINTERGRUND
  • Die vorliegende Erfindung bezieht sich auf Verfahren, die verschlüsselte biometrische Informationen bereitstellen, die gespeichert und zur Authentifizierung mit unverminderter Erkennungsleistung verwendet werden können.
  • Im Gegensatz zu deterministischen Passwörtern ändern sich biometrische Merkmale ständig aufgrund von Faktoren wie Änderungen im Aufnahmeverfahren (Abtastrauschen, Schatten, Positionsänderungen usw.) oder natürlichen Gründen (Verletzung, Bart, Alter usw.). Im Gegensatz zu Passwörtern werden biometrische Informationen daher nicht bei jeder Abtastung exakt übereinstimmen und können daher nicht wie Passwörter behandelt werden, z. B. gespeichert, verzerrt oder mittels eines Hash-Verfahrens geschützt werden. Derzeit gibt es keine praktische Methode, biometrische Informationen zu verschlüsseln und ihren Nutzwert für die Authentifizierung zu erhalten. Ein Grund für diese Nichtverfügbarkeit ist z. B. die inakzeptable Reduzierung der Erkennungsleistung in Kombination mit unbeweisbaren Sicherheitsansprüchen. Folglich werden biometrische Informationen derzeit in verschiedenen Datenbanken gespeichert, die anfällig für Angriffe sind.
  • Dementsprechend besteht ein Bedarf an Techniken, die verschlüsselte biometrische Informationen bereitstellen, die gespeichert und zur Authentifizierung mit unverminderter Erkennungsleistung verwendet werden können.
  • ZUSAMMENFASSUNG
  • Ausführungsformen der vorliegenden Systeme und Verfahren können verschlüsselte biometrische Informationen bereitstellen, die gespeichert und zur Authentifizierung mit unverminderter Erkennungsleistung verwendet werden können. Ausführungsformen können Vorteile gegenüber aktuellen Techniken anbieten. Zum Beispiel können Ausführungsformen Sicherheitsansprüche bieten, die mit aktuellen kryptographischen Lösungen, wie symmetrischen und asymmetrischen Methoden, verglichen werden können, da Ausführungsformen bekannte und akzeptierte kryptographische Module enthalten können. Außerdem kann die Verminderung der Erkennungsleistungsraten als Kompromiss mit den Anforderungen an Speicher und Geschwindigkeit beschrieben werden; und für industriell akzeptable Leistungsanforderungen können die Ausführungsformen beides erreichen.
  • Zum Beispiel kann in einer Ausführungsform ein Verfahren zur biometrischen Authentifizierung, das in einem Computer implementiert ist, der einen Prozessor, einen durch den Prozessor zugänglichen Speicher und Computerprogrammanweisungen aufweist, die in dem Speicher gespeichert und durch den Prozessor ausführbar sind, das Speichern einer Vielzahl von verschlüsselten trainierten Gewichten eines neuronalen Netzwerkklassifizierers aufweisen. Dabei können die Gewichte unter Verwendung biometrischer Informationen trainiert werden, die mindestens ein biometrisches Merkmal einer Person darstellen. Das Verfahren kann weiterhin ein Empfangen verschlüsselter biometrischer Informationen aufweisen, die durch Aufnehmen mindestens eines biometrischen Merkmals der Person gewonnen werden und Verschlüsselung der aufgenommenen biometrischen Informationen, Erhalten eines Übereinstimmungs-Score unter Verwendung des verschlüsselten trainierten neuronalen Netzwerkklassifizierers, wobei der Übereinstimmungs-Score eine Wahrscheinlichkeit angibt, dass die empfangenen verschlüsselten biometrischen Informationen mit den gespeicherten verschlüsselten biometrischen Informationen übereinstimmen, und Authentifizieren der Person, wenn die Wahrscheinlichkeit, dass die empfangenen verschlüsselten biometrischen Informationen mit den gespeicherten verschlüsselten biometrischen Informationen übereinstimmen, einen Schwellenwert überschreitet.
  • In Ausführungsformen können die trainierten Gewichte mit homomorpher Verschlüsselung, einer mehrseitigen Berechnung oder einer Kombination aus beidem verschlüsselt werden. Das Erhalten des Übereinstimmungs-Score kann aufweisen: Erhalten eines verschlüsselten Übereinstimmungs-Score unter Verwendung des verschlüsselten, trainierten neuronalen Netzwerkklassifizierers, Übermitteln des verschlüsselten Match-Scores an ein Client-Gerät, Empfangen eines unverschlüsselten Übereinstimmungs-Score von dem Client-Gerät, Ermitteln, dass der Client den Übereinstimmungs-Score unter Verwendung eines Zero-Knowledge-Proof korrekt entschlüsselt hat, und Vergleichen des unverschlüsselten Übereinstimmungs-Score mit dem Schwellenwert. Das Erhalten des Match-Score kann aufweisen: Erhalten eines verschlüsselten Übereinstimmungs-Score unter Verwendung des verschlüsselten trainierten neuronalen Netzwerkklassifizierers, Multiplizieren des verschlüsselten Übereinstimmungs-Score mit einer ersten verschlüsselten geheimen Ganzzahl, Verschlüsseln einer Vielzahl von zusätzlichen geheimen Ganzzahlen, Übermitteln des multiplizierten verschlüsselten Übereinstimmungs-Score und mindestens einiger der Vielzahl von verschlüsselten zusätzlichen geheimen Ganzzahlen an ein Client-Gerät, Empfangen eines entschlüsselten multiplizierten Übereinstimmungs-Score und entschlüsselter zusätzlicher geheimer Ganzzahlen von dem Client-Gerät, Verifizieren der Korrektheit der entschlüsselten zusätzlichen geheimen Ganzzahlen, und Dividieren des unverschlüsselten Übereinstimmungs-Score durch die erste verschlüsselte geheime Ganzzahl, um den Übereinstimmungs-Score zu erhalten. Der multiplizierte verschlüsselte Übereinstimmungs-Score und die verschlüsselten zusätzlichen geheimen Ganzzahlen können in einer geheimen zufälligen Reihenfolge an das Client-Gerät übermittelt werden. Die verschlüsselten biometrischen Informationen können von einem Client-Gerät empfangen werden, das kommunikativ mit einem Gerät zur Erfassung biometrischer Informationen verbunden ist. Die Entschlüsselung kann auf dem Client-Gerät unter Verwendung eines privaten Schlüssels durchgeführt werden. Einige der Schichten des neuronalen Netzwerkklassifizierers können mit öffentlich zugänglichen nicht-privaten biometrischen Informationen trainiert werden, und einige Schichten des neuronalen Netzwerkklassifizierers können mit privaten biometrischen Informationen der Person wieder trainiert werden.
  • In einer Ausführungsform kann ein System zur biometrischen Authentifizierung einen Prozessor, einen Speicher, auf den der Prozessor zugreifen kann, und Computerprogrammanweisungen aufweisen, die in dem Speicher gespeichert und von dem Prozessor ausführbar sind, um Folgendes durchzuführen: Speichern mehrerer verschlüsselter trainierter Gewichte eines neuronalen Netzwerkklassifizierers, wobei die Gewichte unter Verwendung biometrischer Informationen trainiert wurden, die mindestens ein biometrisches Merkmal einer Person darstellen, Empfangen verschlüsselter biometrischer Informationen, die durch Aufnehmen mindestens eines biometrischen Merkmals der Person und Verschlüsselung des aufgenommenen biometrischen Merkmals erhalten wurden, Erhalten eines Übereinstimmungs-Score unter Verwendung des verschlüsselten trainierten neuronalen Netzwerkklassifizierers, wobei der Übereinstimmungs-Score eine Wahrscheinlichkeit angibt, dass die empfangenen verschlüsselten biometrischen Informationen mit den gespeicherten verschlüsselten biometrischen Informationen übereinstimmen, und Authentifizieren der Person, wenn die Wahrscheinlichkeit, dass empfangene verschlüsselte biometrische Informationen mit den gespeicherten verschlüsselten biometrischen Informationen übereinstimmen, einen Schwellenwert überschreitet.
  • In einer Ausführungsform kann ein Computerprogrammprodukt zur biometrischen Authentifizierung einen nicht-transitorischen computerlesbaren Speicher mit darin ausgeführten Programmanweisungen aufweisen, wobei die Programmanweisungen durch einen Computer ausführbar sind, um den Computer zu bewirken, ein Verfahren durchzuführen, das Folgendes aufweist: Speichern mehrerer verschlüsselter trainierter Gewichte eines neuronalen Netzwerkklassifizierers, wobei die Gewichte unter Verwendung biometrischer Informationen trainiert wurden, die mindestens ein biometrisches Merkmal einer Person darstellen, Empfangen verschlüsselter biometrischer Informationen, die durch Aufnehmen mindestens eines biometrischen Merkmals der Person und Verschlüsselung des abgetasteten biometrischen Merkmals erhalten wurden, Erhalten eines Übereinstimmungs-Score unter Verwendung des verschlüsselten trainierten neuronalen Netzwerkklassifizierers, wobei der Übereinstimmungs-Score eine Wahrscheinlichkeit angibt, dass die empfangenen verschlüsselten biometrischen Informationen mit den gespeicherten verschlüsselten biometrischen Informationen übereinstimmen, und Authentifizieren der Person, wenn die Wahrscheinlichkeit, dass empfangene verschlüsselte biometrische Informationen mit den gespeicherten verschlüsselten biometrischen Informationen übereinstimmen, einen Schwellenwert überschreitet.
  • Figurenliste
  • Die Einzelheiten der vorliegenden Erfindung, sowohl in Bezug auf ihre Struktur und Betrieb, können am besten durch Bezugnahme auf die beigefügten Zeichnungen, in denen gleiche Bezugszahlen und Bezeichnungen sich auf gleiche Elemente beziehen, verstanden werden.
    • 1 veranschaulicht ein beispielhaftes System, in dem die Ausführungsformen der vorliegenden Systeme und Methoden implementiert werden können.
    • 2 ist ein beispielhaftes Flussdiagramm eines Prozesses, der Ausführungsformen der vorliegenden Verfahren implementieren kann, und der in Ausführungsformen der vorliegenden Systeme implementiert werden kann.
    • 3 ist ein beispielhaftes Flussdiagramm eines Prozesses, der Ausführungsformen der vorliegenden Verfahren implementieren kann und der in Ausführungsformen der vorliegenden Systeme implementiert werden kann.
    • 4 ist ein beispielhaftes Blockdiagramm eines Computersystems/Rechengeräts, in dem Prozesse, die in den hier beschriebenen Ausführungsformen involviert sind, implementiert werden können.
  • AUSFÜHRLICHE BESCHREIBUNG
  • Ausführungsformen der vorliegenden Systeme und Verfahren können verschlüsselte biometrische Informationen bereitstellen, die gespeichert und zur Authentifizierung mit unverminderter Erkennungsleistung verwendet werden können. Ausführungsformen können Vorteile gegenüber aktuellen Techniken bieten. Zum Beispiel können Ausführungsformen Sicherheitsansprüche bieten, die mit aktuellen kryptografischen Lösungen, wie symmetrischen und asymmetrischen Verfahren, verglichen werden können, da Ausführungsformen bekannte und akzeptierte kryptografische Module enthalten können. Außerdem kann die Reduzierung der Erkennungsleistungsraten als Kompromiss mit den Anforderungen an Speicher und Geschwindigkeit beschrieben werden, und für industriell akzeptable Leistungsanforderungen können die Ausführungsformen beides erreichen.
  • Unter Ausnutzung der Fortschritte bei der homomorphen Verschlüsselung können Ausführungsformen ein System aufweisen, das ein verschlüsseltes benutzerspezifisches neuronales Klassifizierungsnetzwerk pro Person speichert. Biometrische Daten, die an den Server gesendet werden, können verschlüsselt sein und während des Authentifizierungsprozesses verschlüsselt bleiben. Nach Beendigung des Authentifizierungsvorgangs kann der Server über einen verschlüsselte Übereinstimmungs-Score verfügen. Dieser Score kann nur von dem Benutzer entschlüsselt werden, der den privaten Schlüssel besitzt, der dann über ein spezielles Protokoll an den Server übermittelt werden kann, mit dem der Server den Benutzer entweder authentifiziert oder zurückweisen kann.
  • Ein beispielhaftes System 100, in dem Ausführungsformen der vorliegenden Systeme und Verfahren implementiert werden können, ist in 1 dargestellt. In diesem Beispiel kann das System 100 einen Server 102, ein Client-Gerät 104 und ein Gerät 106 zur Erfassung biometrischer Informationen aufweisen. Der Server 102 kann Funktionen wie Anmeldung und Authentifizierung von Benutzern des Systems durchführen und eine Vielzahl von verschlüsselten neuronalen Netzwerken 108 enthalten. Das Client-Gerät 104 kann ein beliebiges Computergerät sein, das in der Lage ist, Softwareprogramme auszuführen, und kann Allzweck-Computergeräte wie ein Personal Computer, ein Laptop, ein Smartphone, ein Tablet-Computer usw. sein sowie Spezial-Computergeräte wie eingebettete Prozessoren, Systeme auf einem Chip usw. aufweisen, die in Standard- oder proprietären Geräten wie Eingabegeräten, Kiosken, Geldautomaten usw. enthalten sein können. Das Client-Gerät 104 kann eine oder mehrere Client-Anwendungen 110 aufweisen und ausführen. Das Gerät 106 zur Erfassung biometrischer Informationen kann ein beliebiges Gerät sein, das biologische, physiologische und/oder physische biometrische Informationen erfassen kann, wie z. B. einen Fingerabdruck, einen Netzhaut-Scan, Handvenen, Gesichtserkennung, DNA, Handflächenabdruck, Handgeometrie, Iriserkennung, Netzhaut und Geruch/Duft, usw. Der Server 102 kann kommunikativ mit dem Client-Gerät 104 und dem Gerät 106 zur Erfassung biometrischer Informationen verbunden sein. Das Client-Gerät 104 kann kommunikativ und/oder physisch mit dem Gerät 106 zur Erfassung biometrischer Informationen verbunden sein.
  • Ein beispielhaftes Flussdiagramm eines Prozesses 200 für den Betrieb des Systems 100 ist in 2 dargestellt. Es ist am besten in Verbindung mit 1 zu sehen. In diesem Beispiel kann der Prozess 200 zwei Phasen aufweisen, nämlich die Anmeldephase 202 und die Verifizierungsphase 204. Die Anmeldephase 202 kann bei 206 beginnen, in der das Gerät 106 zur Erfassung biometrischer Informationen ein oder mehrere biometrische Merkmale einer Person vornimmt und die Aufnahm ein biometrische Informationen umwandeln kann, die an das Client-Gerät 104 übermittelt, 112 werden. Auf dem Client-Gerät 104 kann die Client-Anwendung 110 einen neuronalen Netzwerkklassifikator trainieren 208, um die biometrischen Merkmale der Person unter Verwendung der biometrischen Informationen zu identifizieren. In Ausführungsformen kann der neuronalen Netzwerk -Klassifikator oder eine Teilmenge der Schichten des neuronalen Netzwerk-Klassifikators mit öffentlich zugänglichen nicht-privaten biometrischen Informationen trainiert werden, und andere Schichten des neuronalen Netzwerk-Klassifikators können mit privaten biometrischen Informationen einer bestimmten Person erneut trainiert werden. Um die Speicher- und Geschwindigkeitsanforderungen zu reduzieren, kann beispielsweise das gesamte neuronale Netzwerkmodell (NN-Modell) unter Verwendung öffentlich verfügbarer biometrischer Daten (die keinen Einschränkungen hinsichtlich der Privatsphäre unterliegen) trainiert werden. Die Gewichte z. B. der ersten paar Schichten können fixiert oder gespeichert werden und dann, während der Anmeldung, können die restlichen Schichten mit privaten, personenspezifischen, biometrischen Daten erneut trainiert werden. So brauchen z. B. nur die letzten paar Schichten verschlüsselt zu werden. Während der Verifizierung können die biometrischen Merkmale zunächst in die unverschlüsselten NN-Schichten eingespeist werden, dann können sie verschlüsselt und an das verschlüsselte Modell gesendet werden. Die trainierten Gewichte können verschlüsselt werden, 201, z. B. mit homomorpher Verschlüsselung, und an den Server 102 übermittelt 114 werden, der das verschlüsselte neuronale Netzwerk 108 für diese Person speichern kann. Die homomorphe Verschlüsselung ermöglicht die Berechnung auf verschlüsselten Daten, so dass die Ergebnisse der Berechnung auf den verschlüsselten Daten bei der Entschlüsselung die gleichen sind, wie wenn die Berechnung auf den unverschlüsselten oder Klartextdaten durchgeführt worden wäre.
  • Die Verifizierungsphase 204 kann bei 212 beginnen, in der die biometrischen Merkmale erneut erfasst oder aufgenommen werden und wobei die biometrische Informationen an das Client-Gerät 104 übermittelt, 116, werden können. Das Client-Gerät 110 kann die biometrischen Informationen verarbeiten, die biometrischen Informationen verschlüsseln und die verschlüsselten biometrischen Informationen an den Server 102 übermitteln 118. Bei 214 kann der Server 102 die verschlüsselten Gewichte und die empfangenen biometrischen Informationsmerkmale verwenden, um das neuronale Netzwerk einzusetzen und einen verschlüsselten Übereinstimmungs-Score zu erhalten. Der Server 102 muss jetzt wissen, ob dieser Übereinstimmungs-Score einen Schwellenwert überschreitet oder nicht. Da nur das Client-Gerät 104 den Übereinstimmungs-Score entschlüsseln kann, kann ein Prozess 216 verwendet werden, bei dem das Client-Gerät 104 den Übereinstimmungs-Score unter Verwendung eines privaten Schlüssels entschlüsselt und diesen auf eine vertrauenswürdige sichere Weise an den Server übermittelt. In Ausführungsformen kann der verschlüsselte Übereinstimmungs-Score von dem Benutzer, der einen privaten Schlüssel besitzt, unter Verwendung eines Zero-Knowledge-Beweises (Zero-Knowledge-Proof) entschlüsselt werden. Ebenso kann verifiziert werden, dass der Benutzer, der möglicherweise nicht vertrauenswürdig ist, den Übereinstimmungs-Score unter Verwendung eines Zero-Knowledge-Beweises korrekt entschlüsselt hat. Beispiele für solche Zero-Knowledge-Beweise können, ohne darauf beschränkt zu sein, eine Ausführung einer Multiplikation ohne eine weitere Addition, andere allgemeine Funktionen, f (secret_numberi), Techniken wie Vickery Auktionen, etc. aufweisen. Eine Vickery- oder Höchstbietende-Auktion ist „Nullwissend“. So kann z. B. der zweithöchste Bietende als Schwellenwert mit nachfolgenden als Null-Wissen-Beweis berücksichtigt werden, wobei der gegebene Score der höchste Bieter ist.
  • Ein beispielhaftes Flussdiagramm des Prozesses 216 ist in 3 dargestellt. Es ist am besten in Verbindung mit 1 zu sehen. Der Prozess 216 kann bei 302 beginnen, in dem der Server 102 den verschlüsselten Übereinstimmungs-Score mit einer verschlüsselten geheimen Ganzzahl R1 multiplizieren kann. Server 102 kann auch N-1 andere geheime Ganzzahlen R2, ..., RN verschlüsseln. Server 102 kann die multiplizierten Werte inklusive des multiplizierten verschlüsselten Übereinstimmungs-Score und der multiplizierten (verschlüsselten) Zahlen an das Client-Gerät 104 übermitteln. Die multiplizierten Werte können in einer geheimen Zufallsreihenfolge übermittelt 120 werden. Das Client-Gerät 104 kann die multiplizierten Werte entschlüsseln. Das Client-Gerät 104 kann den entschlüsselten Wert zurück an den Server 102 übermitteln, 122, der die Korrektheit von R2, ..., RN verifizieren kann. Für den verbleibenden Wert kann dieser Wert durch R1 geteilt werden, um den entschlüsselten Übereinstimmungs-Score zu erhalten. Server 102 kann dann den entschlüsselten Übereinstimmungs-Score mit einem Schwellenwert vergleichen, um zu ermitteln, ob es eine Übereinstimmung gibt. Wenn es eine Übereinstimmung gibt, kann die Person authentifiziert werden. Das Client-Gerät 104 kann die multiplizierten Werte entschlüsseln. Das Client-Gerät 104 kann den entschlüsselten Wert zurück an den Server 102 übermitteln, 122, der die Korrektheit von R2, ..., RN verifizieren kann. Für den verbleibenden Wert kann dieser Wert durch R1 geteilt werden, um den entschlüsselten Übereinstimmungs-Score zu erhalten. Server 102 kann dann den entschlüsselten Match-Score mit einem Schwellenwert vergleichen, um zu ermitteln, ob es eine Übereinstimmung gibt. Wenn es eine Übereinstimmung gibt, kann die Person authentifiziert werden.
  • Ein beispielhaftes Blockdiagramm eines Computersystems/eines Rechnergeräts 402, in dem die Prozesse der hier beschriebenen Ausführungsformen implementiert sein können, ist in 4 dargestellt. Das Computersystem/Rechengerät 402 kann mit einem oder mehreren programmierten Allzweck-Computersystemen, wie eingebetteten Prozessoren, Systemen auf einem Chip, Personal Computern, Workstations, Serversystemen und Minicomputern oder Großrechnern, mobilen Geräten, wie Smartphones oder Tablets, oder in verteilten, vernetzten Rechenumgebungen implementiert werden. Das Computersystem/Rechengerät 402 kann einen oder mehrere Prozessoren (CPUs) 402A-402N, eine Ein-/Ausgabeschaltung 404, einen Netzwerkadapter 406 und einen Speicher 408 enthalten. Die CPUs 402A-402N führen Programmanweisungen aus, um die Funktionen der vorliegenden Kommunikationssysteme und -verfahren auszuführen. Typischerweise sind die CPUs 402A-402N ein oder mehrere Mikroprozessoren, wie z. B. ein INTEL CORE® Prozessor oder ein ARM® Prozessor. 4 zeigt eine Ausführungsform, bei der das Computersystem/Rechengerät 402 als ein einziges Multiprozessor-Computersystem/Rechengerät implementiert ist, bei dem sich mehrere Prozessoren 402A-402N Systemressourcen teilen, wie z. B. den Speicher 408, die Eingabe-/Ausgabeschaltung 404 und den Netzwerkadapter 406. Die vorliegenden Kommunikationssysteme und -verfahren aufweisen jedoch auch Ausführungsformen auf, in denen das Computersystem/Rechengerät 402 als eine Vielzahl von Netzwerkcomputersystemen implementiert ist, bei denen es sich um Einprozessor-Computersysteme/Rechengeräte, Multiprozessor-Computersysteme/Rechengeräte oder eine Mischung davon handeln kann.
  • Die Eingabe-/Ausgabeschaltung 404 bietet die Fähigkeit, Daten in das Computersystem/Rechengerät 402 einzugeben bzw. Daten von diesem auszugeben. Beispielsweise kann die Eingabe-/Ausgabeschaltung Eingabegeräte wie Tastaturen, Mäuse, Touchpads, Trackballs, Scanner, Analog-Digital-Wandler usw., Ausgabegeräte wie Videoadapter, Monitore, Drucker, biometrische Informationserfassungsgeräte usw. und Eingabe-/Ausgabegeräte wie Modems usw. aufweisen. Der Netzwerkadapter 406 verbindet das Gerät 400 mit einem Netzwerk 410. Das Netzwerk 410 kann ein beliebiges öffentliches oder proprietäres LAN oder WAN sein, einschließlich, ohne auf das Internet beschränkt zu sein.
  • Der Speicher 408 speichert Programmanweisungen, die von der CPU 402 ausgeführt werden, und Daten, die von der CPU 402 verwendet und verarbeitet werden, um die Funktionen des Computersystems/Computergeräts 402 auszuführen. Der Speicher 408 kann z. B. elektronische Geräte wie RAM (Random-Access Memory), ROM (Read-Only Memory), PROM (Programmable Read-Only Memory), EEPROM (Electrically Erasable Programmable Read-Only Memory), Flash-Speicher usw. sowie elektromechanische Geräte wie Magnetplattenlaufwerke, Bandlaufwerke, optische Plattenlaufwerke usw. aufweisen, die eine integrierte Laufwerkselektronik (IDE)-Schnittstelle oder eine Variation oder Verbesserung davon, wie z.B. Enhanced IDE (EIDE) oder Ultra-Direct-Memory-Access (UDMA), oder eine auf Small Computer System Interface (SCSI) basierende Schnittstelle oder eine Variation oder Verbesserung davon, wie z.B. Fast-SCSI, Wide-SCSI, Fast- und Wide-SCSI, usw., oder Serial Advanced Technology Attachment (SATA) oder eine Variation oder Verbesserung davon oder eine Fiber-Channel-Abitrated-Loop (FC-AL)-Schnittstelle aufweisen.
  • Der Inhalt des Speichers 408 kann je nach der Funktion, für die das Computersystem/Rechengerät 402 programmiert ist, variieren. In dem in 4 gezeigten Beispiel werden beispielhafte Speicherinhalte gezeigt, die Routinen und Daten für Ausführungsformen der oben beschriebenen Prozesse darstellen. Ein Fachmann würde jedoch erkennen, dass diese Routinen zusammen mit den Speicherinhalten, die sich auf diese Routinen beziehen, nicht in einem System oder Gerät enthalten sein müssen, sondern auf der Grundlage bekannter technischer Überlegungen auf eine Vielzahl von Systemen oder Geräten verteilt sein können. Die vorliegenden Kommunikationssysteme und -verfahren können beliebige und alle derartigen Anordnungen aufweisen.
  • In dem in 4 gezeigten Beispiel ist der Speicher 408 zwar der Kompaktheit halber so dargestellt, dass er Speicherinhalte für einen Server 412 und Speicherinhalte für ein Client-Gerät 414 enthält, aber typischerweise enthält das Computersystem/Rechengerät 400 nur einen solchen Speicherinhalt. In diesem Beispiel kann der Server 412 Anmeldungsroutinen 416, Verifizierungsroutinen 418 und verschlüsselte neuronale Netzwerkdaten 420 enthalten. Ebenso kann in diesem Beispiel das Client-Gerät 414 Anmeldungsroutinen 422, Verifizierungsroutinen 424 und Verifizierungsdaten 426 enthalten. Die Anmeldungsroutinen 416 können Software-Routinen zur Durchführung von Server-Anmeldungsprozessen, wie oben beschrieben, enthalten. Die Verifizierungsroutinen 418 können Software-Routinen zur Durchführung von Server-Verifizierungsprozessen enthalten, wie es oben beschrieben ist. Verschlüsselte neuronale Netzwerkdaten 420 können - wie oben beschrieben - verschlüsselte Daten enthalten, die trainierte neuronale Netzwerke darstellen,. Anmeldungsroutinen 422 können Software-Routinen zur Durchführung von Client-Geräte-Anmeldungsprozessen, wie oben beschrieben, aufweisen. Verifizierungsroutinen 424 können - wie oben beschrieben - Software-Routinen zur Durchführung von Client-Geräte-Verifizierungsprozessen enthalten. Verifizierungsdaten 426 können verschlüsselte und entschlüsselte Daten enthalten, die von dem Client-Gerät während des Verifizierungsprozesses verwendet werden, wie es oben beschrieben ist. Das Betriebssystem 428 kann die gesamte Systemfunktionalität bereitstellen.
  • Wie in 4 gezeigt, können die vorliegenden Kommunikationssysteme und Verfahren können eine Implementierung auf einem System oder Systemen aufweisen, die Multiprozessor-, Multitasking-, Multiprozess- und / oder Multithread-Computing bereitstellen, sowie die Implementierung auf Systemen, die nur Single-Prozessor, Single-Thread-Computing vorhalten. Multi-Prozessor-Computing beinhaltet die Durchführung von Berechnungen mit mehr als einem Prozessor. Multi-Tasking-Computing beinhaltet die Ausführung von Berechnungen unter Verwendung von mehr als einer Betriebssystem-Task. Eine Task ist ein Betriebssystemkonzept, das sich auf die Kombination aus einem ausgeführten Programm und den vom Betriebssystem verwendeten Kontrollinformationen bezieht. Jedes Mal, wenn ein Programm ausgeführt wird, erstellt das Betriebssystem eine neue Task für dieses Programm. Die Task ist wie ein Umschlag für das Programm, indem das Programm mit einer Task-Nummer identifiziert und andere Kotrollinformationen an ihn anhängt. Viele Betriebssysteme, einschließlich Linux, UNIX®, OS/2® und Windows®, sind in der Lage, viele Tasks gleichzeitig auszuführen und werden als Multitasking-Betriebssysteme bezeichnet. Die Task ist wie ein Umschlag für das Programm, indem sie das Programm mit einer Task-Nummer identifiziert und andere Kontrollinformationen an sie anhängt. Multitasking ist die Fähigkeit eines Betriebssystems, mehr als eine ausführbare Datei zur gleichen Zeit auszuführen. Jede ausführbare Datei wird in ihrem eigenen Adressraum ausgeführt, was bedeutet, dass die ausführbaren Dateien keine Möglichkeit haben, ihren Speicher gemeinsam zu nutzen. Dies hat Vorteile, denn es ist unmöglich, dass ein Programm die Ausführung eines der anderen Programme, die auf dem System laufen, beeinträchtigt. Allerdings haben die Programme - außer über das Betriebssystem (oder durch das Lesen von Dateien, die im Dateisystem gespeichert sind) - keine Möglichkeit, Informationen auszutauschen. MultiProzess-Computing ist dem Multi-Tasking-Computing ähnlich, da die Begriffe Task und Prozess oft austauschbar verwendet werden, obwohl einige Betriebssysteme zwischen den beiden unterscheiden.
  • Die vorliegende Erfindung kann ein System, ein Verfahren und/oder ein Computerprogrammprodukt auf jeder möglichen technischen Detailebene der Integration sein. Das Computerprogrammprodukt kann ein computerlesbares Speichermedium (oder Medien) mit darauf enthaltenen computerlesbaren Programmanweisungen aufweisen, die einen Prozessor veranlassen, Aspekte der vorliegenden Erfindung auszuführen. Das computerlesbare Speichermedium kann ein tatsächliches Gerät sein, das Befehle für die Verwendung durch ein Befehlsausführungsgerät verwalten und speichern kann.
  • Das computerlesbare Speichermedium kann - ohne darauf beschränkt zu sein - z. B. ein elektronisches Speichergerät, ein magnetisches Speichergerät, ein optisches Speichergerät, ein elektromagnetisches Speichergerät, ein Halbleiter-Speichergerät oder jede geeignete Kombination der vorgenannten sein. Eine nicht erschöpfende Liste spezifischerer Beispiele für das computerlesbare Speichermedium weist Folgendes auf: eine tragbare Computerdiskette, eine Festplatte, einen Arbeitsspeicher (RAM), einen Festwertspeicher (ROM), einen löschbaren programmierbaren Festwertspeicher (EPROM oder Flash-Speicher), einen statischen Festwertspeicher (SRAM), einen tragbaren Compact-Disc-Festwertspeicher (CD-ROM), eine Digital Versatile Disk (DVD), einen Memory-Stick, eine Diskette, eine mechanisch kodiertes Gerät, wie z.B. Lochkarten oder erhabene Strukturen in einer Nut, auf denen Anweisungen gespeichert sind, und jede geeignete Kombination der Vorgenannten. Ein computerlesbares Speichermedium, wie es hier verwendet wird, ist nicht auf transitorische Signale per se wie z.B. Radiowellen oder andere sich frei ausbreitende elektromagnetische Wellen, elektromagnetische Wellen, die sich durch einen Wellenleiter oder andere Übertragungsmedien ausbreiten (z. B. Lichtimpulse, die durch ein Glasfaserkabel laufen), oder elektrische Signale, die durch einen Kabel übertragen werden, beschränkt.
  • Hierin beschriebene computerlesbare Programmanweisungen können von einem computerlesbaren Speichermedium oder einem externen Computer oder einem externen Speichergerät über ein Netzwerk, z. B. das Internet, ein lokales Netzwerk, ein Weitverkehrsnetzwerk und/oder ein drahtloses Netzwerk, auf entsprechende Rechen-/Verarbeitungsgeräte heruntergeladen werden. Das Netzwerk kann Kupferübertragungskabel, optische Übertragungsfasern, drahtlose Übertragung, Router, Firewalls, Switches, Gateway-Computer und/oder Edge-Server aufweisen. Eine Netzwerkadapterkarte oder Netzwerkschnittstelle in jedem Rechen-/Bearbeitungsgerät empfängt computerlesbare Programmanweisungen aus dem Netzwerk und leitet die computerlesbaren Programmanweisungen zur Speicherung in einem computerlesbaren Speichermedium innerhalb des jeweiligen Rechen-/Bearbeitungsgeräts weiter.
  • Computerlesbare Programmanweisungen zur Ausführung von Operationen der vorliegenden Erfindung können Instruktionssatz-Architektur-(ISA)-Befehle, Maschinenbefehle, maschinenabhängige Befehle, Mikrocode, Firmware-Befehle, Zustandsdaten, Konfigurationsdaten für integrierte Schaltkreise oder entweder Quellcode oder Objektcode sein, die in einer beliebigen Kombination aus einer oder mehreren Programmiersprachen geschrieben sind, einschließlich einer objektorientierten Programmiersprache wie Smalltalk, C++ oder dergleichen und prozeduralen Programmiersprachen wie der Programmiersprache „C“ oder ähnlichen Programmiersprachen. Die computerlesbaren Programmanweisungen können vollständig auf dem Computer des Benutzers, teilweise auf dem Computer des Benutzers, als eigenständiges Softwarepaket, teilweise auf dem Computer des Benutzers und teilweise auf einem entfernten Computer oder vollständig auf dem entfernten Computer oder Server ausgeführt werden. Im letztgenannten Szenario kann der entfernte Computer mit dem Computer des Benutzers über eine beliebige Art von Netzwerk verbunden sein, einschließlich eines lokalen Netzwerks (LAN) oder eines Weitverkehrsnetzes (WAN), oder die Verbindung kann mit einem externen Computer hergestellt werden (z. B. über das Internet unter Verwendung eines Internetdienstanbieters). In einigen Ausführungsformen können elektronische Schaltungen, die beispielsweise programmierbare Logikschaltungen, feldprogrammierbare Gate-Arrays (FPGA) oder programmierbare Logik-Arrays (PLA) aufweisen, die computerlesbaren Programmanweisungen ausführen, indem sie Zustandsinformationen der computerlesbaren Programmanweisungen verwenden, um die elektronischen Schaltungen zu personalisieren, um Aspekte der vorliegenden Erfindung durchzuführen.
  • Aspekte der vorliegenden Erfindung werden hier unter Bezugnahme auf Flussdiagrammabbildungen und/oder Blockdiagramme von Verfahren, Geräten (Systemen) und Computerprogrammprodukten gemäß Ausführungsformen der Erfindung beschrieben. Es versteht sich, dass jeder Block der Flussdiagrammdarstellungen und/oder Blockdiagramme sowie Kombinationen von Blöcken in den Flussdiagrammdarstellungen und/oder Blockdiagrammen durch computerlesbare Programmanweisungen implementiert werden können.
  • Diese computerlesbaren Programmanweisungen können einem Prozessor eines Allzweckcomputers, eines Spezialcomputers oder eines anderen programmierbaren Datenverarbeitungsgeräts zur Verfügung gestellt werden, um eine Maschine zu erzeugen, so dass die Anweisungen, die über den Prozessor des Computers oder des anderen programmierbaren Datenverarbeitungsgeräts ausgeführt werden, Mittel zum Implementieren der im Flussdiagramm und/oder im Blockdiagramm angegebenen Funktionen/Aktionen schaffen, Block oder Blöcke. Diese computerlesbaren Programmanweisungen können auch in einem computerlesbaren Speichermedium gespeichert sein, das einen Computer, ein programmierbares Datenverarbeitungsgerät und/oder andere Geräte anweisen kann, in einer bestimmten Weise zu funktionieren, so dass das computerlesbare Speichermedium, in dem Anweisungen gespeichert sind, einen Herstellungsgegenstand aufweist, der Anweisungen enthält, die Aspekte der in dem Flussdiagramm und/oder dem Blockdiagrammblock oder den Blöcken spezifizierten Funktion/Aktion implementieren.
  • Die computerlesbaren Programmanweisungen können auch auf einen Computer, ein anderes programmierbares Datenverarbeitungsgerät oder ein anderes Gerät geladen werden, um eine Reihe von Betriebsschritten zu veranlassen, die auf dem Computer, einem anderen programmierbaren Gerät oder einem anderen Gerät ausgeführt werden, um einen computerimplementierten Prozess zu erzeugen, so dass die Anweisungen, die auf dem Computer, einem anderen programmierbaren Gerät oder einem anderen Gerät ausgeführt werden, die im Flussdiagramm und/oder im Blockdiagrammblock oder in den Blöcken angegebenen Funktionen/Aktionen implementieren.
  • Die Flussdiagramme und Blockdiagramme in den Figuren veranschaulichen die Architektur, die Funktionalität und den Betrieb möglicher Implementierungen von Systemen, Verfahren und Computerprogrammprodukten gemäß verschiedenen Ausführungsformen der vorliegenden Erfindung. In dieser Hinsicht kann jeder Block im Flussdiagramm oder in den Blockdiagrammen ein Modul, ein Segment oder einen Teil von Anweisungen darstellen, das/der eine oder mehrere ausführbare Anweisungen zur Implementierung der angegebenen logischen Funktion(en) aufweist. In einigen alternativen Implementierungen können die in den Blöcken angegebenen Funktionen in einer anderen als der in den Figuren angegebenen Reihenfolge auftreten. So können z. B. zwei nacheinander gezeigte Blöcke tatsächlich im Wesentlichen gleichzeitig ausgeführt werden, oder die Blöcke können manchmal in umgekehrter Reihenfolge ausgeführt werden, abhängig von der jeweiligen Funktionalität. Es wird auch darauf hingewiesen, dass jeder Block der Blockdiagramme und/oder der Flussdiagramm-Darstellung sowie Kombinationen von Blöcken in den Blockdiagrammen und/oder der Flussdiagramm-Darstellung durch spezielle Hardware-basierte Systeme implementiert werden können, die die angegebenen Funktionen oder Handlungen ausführen oder Kombinationen von spezieller Hardware und Computeranweisungen ausführen.
  • Obwohl spezifische Ausführungsformen der vorliegenden Erfindung beschrieben wurden, wird der Fachmann verstehen, dass es andere Ausführungsformen gibt, die den beschriebenen Ausführungsformen gleichwertig sind. Dementsprechend ist es zu verstehen, dass die Erfindung nicht durch die spezifischen dargestellten Ausführungsformen, sondern nur durch den Umfang der angehängten Ansprüche begrenzt werden soll.

Claims (24)

  1. Verfahren zur biometrischen Authentifizierung, das in einem Computer implementiert ist, der einen Prozessor, einen durch den Prozessor zugreifbaren Speicher und Computerprogrammanweisungen aufweist, die in dem Speicher gespeichert und durch den Prozessor ausführbar sind, wobei das Verfahren aufweist: Speichern einer Vielzahl von verschlüsselten trainierten Gewichten eines neuronalen Netzwerkklassifizierers, wobei die Gewichte unter Verwendung biometrischer Informationen trainiert wurden, die mindestens ein biometrisches Merkmal einer Person darstellen Empfangen verschlüsselter biometrischer Informationen, die durch Abtasten mindestens eines biometrischen Merkmals der Person erhalten wurden, und Verschlüsseln des abgetasteten biometrischen Merkmals; Ermitteln eines Übereinstimmungs-Scores unter Verwendung des verschlüsselten trainierten neuronalen Netzwerkklassifizierers, wobei der Übereinstimmungs-Score eine Wahrscheinlichkeit angibt, dass die empfangenen verschlüsselten biometrischen Informationen mit den gespeicherten verschlüsselten biometrischen Informationen übereinstimmen; und Authentifizieren der Person, wenn die Wahrscheinlichkeit, dass die empfangenen verschlüsselten biometrischen Informationen mit den gespeicherten verschlüsselten biometrischen Informationen übereinstimmen, einen Schwellenwert überschreitet.
  2. Verfahren nach Anspruch 1, wobei die trainierten Gewichte unter Verwendung einer homomorphen Verschlüsselung einer mehrseitigen Berechnung oder einer Kombination aus beidem verschlüsselt werden.
  3. Verfahren nach Anspruch 2, wobei das Erhalten des Übereinstimmungs-Score Folgendes aufweist: Erhalten eines verschlüsselten Übereinstimmungs-Score unter Verwendung des verschlüsselten trainierten neuronalen Netzwerkklassifizierers; Übertragen des verschlüsselten Übereinstimmungs-Score an ein Client-Gerät; Empfangen eines unverschlüsselten Übereinstimmungs-Score von der Client-Vorrichtung; Ermitteln, dass der Client den Übereinstimmungs-Score korrekt entschlüsselt hat, unter Verwendung eines Zero-Knowledge-Proofs; und Vergleichen des unverschlüsselten Übereinstimmungs-Score mit dem Schwellenwert.
  4. Verfahren nach Anspruch 2, wobei das Erhalten des Übereinstimmungs-Scores Folgendes aufweist: Erhalten eines verschlüsselten Übereinstimmungs-Score unter Verwendung des verschlüsselten trainierten neuronalen Netzwerkklassifizierers; Multiplizieren des verschlüsselten Übereinstimmungs-Score mit einer ersten verschlüsselten geheimen Ganzzahl; Verschlüsseln einer Vielzahl von zusätzlichen geheimen Ganzzahlen; Übertragen des multiplizierten verschlüsselten Übereinstimmungs-Score und mindestens einiger der mehreren verschlüsselten zusätzlichen geheimen Ganzzahlen an ein Client-Gerät; Empfangen eines entschlüsselten multiplizierten Übereinstimmungs-Score und entschlüsselter zusätzlicher geheimer Ganzzahlen von dem Client-Gerät; Verifizieren der Korrektheit der entschlüsselten zusätzlichen geheimen Ganzzahlen; und Dividieren des unverschlüsselten Übereinstimmungs-Score durch die erste geheime Ganzzahl, um den Übereinstimmungs-Score zu erhalten.
  5. Verfahren nach Anspruch 4, wobei der multiplizierte verschlüsselte Übereinstimmungs-Score die verschlüsselten zusätzlichen geheimen Ganzzahlen in einer geheimen zufälligen Reihenfolge an das Client-Gerät übertragen werden.
  6. Verfahren nach Anspruch 4, wobei die verschlüsselten biometrischen Informationen von einem Client-Gerät empfangen werden, das kommunikativ mit einem Gerät zur Erfassung biometrischer Informationen verbunden ist.
  7. Verfahren nach Anspruch 6, wobei die Entschlüsselung auf dem Client-Gerät unter Verwendung eines privaten Schlüssels durchgeführt wird.
  8. Verfahren nach Anspruch 1, wobei einige der Schichten des neuronalen Netzwerkklassifizierers unter Verwendung öffentlich verfügbarer nicht-privater biometrischer Informationen trainiert wurden und einige Schichten des neuronalen Netzwerkklassifizierers unter Verwendung privater biometrischer Informationen der Person erneut trainiert wurden.
  9. System zur biometrischen Authentifizierung, wobei das System einen Prozessor, einen durch den Prozessor zugänglichen Speicher und Computerprogrammanweisungen aufweist, die in dem Speicher gespeichert und durch den Prozessor ausführbar sind, um Folgendes durchzuführen; Speichern einer Vielzahl von verschlüsselten trainierten Gewichten eines neuronalen Netzwerkklassifizierers, wobei die Gewichte unter Verwendung von biometrischen Informationen, die mindestens ein biometrisches Merkmal einer Person darstellen, trainiert worden sind; Empfangen verschlüsselter biometrischer Informationen, die durch Aufnehmen mindestens eines biometrischen Merkmals der Person erhalten wurden, und Verschlüsseln des aufgenommenen biometrischen Merkmals; Erhalten eines Übereinstimmungs-Score unter Verwendung des verschlüsselten trainierten neuronalen Netzwerkklassifizierers, wobei der Übereinstimmungs-Score eine Wahrscheinlichkeit angibt, dass die empfangenen verschlüsselten biometrischen Informationen mit den gespeicherten verschlüsselten biometrischen Informationen übereinstimmen; und Authentifizieren der Person, wenn die Wahrscheinlichkeit, dass die empfangenen verschlüsselten biometrischen Informationen mit den gespeicherten verschlüsselten biometrischen Informationen übereinstimmen, einen Schwellenwert überschreitet.
  10. System nach Anspruch 9, wobei die trainierten Gewichte unter Verwendung einer homomorphen Verschlüsselung, einer mehrseitigen Berechnung oder einer Kombination aus beidem verschlüsselt werden.
  11. Das System nach Anspruch 10, wobei das Erhalten des Übereinstimmungs-Score aufweist: Erhalten eines verschlüsselten Übereinstimmungs-Score unter Verwendung des verschlüsselten trainierten neuronalen Netzwerkklassifizierers; Übertragen des verschlüsselten Übereinstimmungs-Score an ein Client-Gerät; Empfangen eines unverschlüsselten Übereinstimmungs-Score von dem Client-Gerät; Ermitteln, dass der Client den Übereinstimmungs-Score korrekt entschlüsselt hat, unter Verwendung eines Zero-Knowledge-Proofs; und Vergleichen des unverschlüsselten Übereinstimmungs-Score mit dem Schwellenwert.
  12. Das System nach Anspruch 10, wobei das Erhalten des Übereinstimmungs-Score aufweist: Erhalten eines verschlüsselten Übereinstimmungs-Score unter Verwendung des verschlüsselten trainierten neuronalen Netzwerkklassifizierers; Multiplizieren des verschlüsselten Übereinstimmungs-Score mit einer ersten verschlüsselten geheimen Ganzzahl; Verschlüsseln einer Vielzahl von zusätzlichen geheimen Ganzzahlen; Übertragen des multiplizierten verschlüsselten Match-Score und mindestens einiger der mehreren verschlüsselten zusätzlichen geheimen Ganzzahlen an ein Client-Gerät; Empfangen eines entschlüsselten multiplizierten Übereinstimmungs-Score und entschlüsselter zusätzlicher geheimer Ganzzahlen von dem Client-Gerät; Verifizieren der Korrektheit der entschlüsselten zusätzlichen geheimen Ganzzahlen; und Teilen des unverschlüsselten Übereinstimmungs-Score durch die erste geheime Ganzzahl, um den Übereinstimmungs-Score zu erhalten.
  13. System nach Anspruch 12, wobei der multiplizierte verschlüsselte Übereinstimmungs-Score die verschlüsselten zusätzlichen geheimen Ganzzahlen in einer geheimen zufälligen Reihenfolge an das Client-Gerät übertragen werden.
  14. System nach Anspruch 12, wobei die verschlüsselten biometrischen Informationen von einem Client-Gerät empfangen werden, das kommunikativ mit einem Gerät zur Erfassung biometrischer Informationen verbunden ist.
  15. System nach Anspruch 14, wobei die Entschlüsselung am Client-Gerät unter Verwendung eines privaten Schlüssels durchgeführt wird.
  16. System nach Anspruch 9, wobei einige der Schichten des neuronalen Netzwerkklassifizierers unter Verwendung öffentlich verfügbarer nicht-privater biometrischer Informationen trainiert wurden und einige Schichten des neuronalen Netzwerkklassifizierers unter Verwendung privater biometrischer Informationen der Person erneu trainiert wurden.
  17. Computerprogrammprodukt zur biometrischen Authentifizierung, wobei das Computerprogrammprodukt einen nicht-transitorischen computerlesbaren Speicher mit darin verkörperten Programmanweisungen aufweist, wobei die Programmanweisungen durch einen Computer ausführbar sind, um den Computer zu befähigen, ein Verfahren durchzuführen, das Folgendes aufweist: Speichern einer Vielzahl von verschlüsselten trainierten Gewichten eines neuronalen Netzwerkklassifizierers, wobei die Gewichte unter Verwendung biometrischer Informationen, die mindestens ein biometrisches Merkmal einer Person darstellen, trainiert wurden; Empfangen verschlüsselter biometrischer Informationen, die durch Aufnehmen mindestens eines biometrischen Merkmals der Person erhalten wurden, und Verschlüsseln des geprobten biometrischen Merkmals; Erhalten eines Übereinstimmungs-Score unter Verwendung des verschlüsselten trainierten neuronalen Netzwerkklassifizierers, wobei der Übereinstimmungs-Score eine Wahrscheinlichkeit angibt, dass die empfangenen verschlüsselten biometrischen Informationen mit den gespeicherten verschlüsselten biometrischen Informationen übereinstimmen; und Authentifizieren der Person, wenn die Wahrscheinlichkeit, dass die empfangenen verschlüsselten biometrischen Informationen mit den gespeicherten verschlüsselten biometrischen Informationen übereinstimmen, einen Schwellenwert überschreitet.
  18. Computerprogrammprodukt nach Anspruch 17, wobei die trainierten Gewichte unter Verwendung einer homomorphen Verschlüsselung, einer mehrseitigen Berechnung oder einer Kombination aus beidem verschlüsselt werden.
  19. Computerprogrammprodukt nach Anspruch 18, wobei das Erhalten des Übereinstimmungs-Score Folgendes aufweist: Erhalten eines verschlüsselten Match-Score unter Verwendung des verschlüsselten trainierten neuronalen Netzwerkklassifizierers; Übertragen des verschlüsselten Übereinstimmungs-Score an ein Client-Gerät; Empfangen eines unverschlüsselten Übereinstimmungs-Score von dem Client-Gerät; Ermitteln, dass der Client den Match-Score korrekt entschlüsselt hat, unter Verwendung eines Zero-Knowledge-Proof; und Vergleichen des unverschlüsselten Übereinstimmungs-Score mit dem Schwellenwert.
  20. Computerprogrammprodukt nach Anspruch 18, wobei das Erhalten des Übereinstimmungs-Score Folgendes aufweist: Erhalten eines verschlüsselten Übereinstimmungs-Score unter Verwendung des verschlüsselten trainierten neuronalen Netzwerkklassifizierers; Multiplizieren des verschlüsselten Übereinstimmungs-Score mit einer ersten verschlüsselten geheimen Ganzzahl; Verschlüsseln einer Vielzahl von zusätzlichen geheimen Ganzzahlen; Übertragen des multiplizierten verschlüsselten Übereinstimmungs-Score und mindestens einiger der Mehrzahl von verschlüsselten zusätzlichen geheimen Ganzzahlen an ein Client-Gerät; Empfangen eines entschlüsselten multiplizierten Übereinstimmungs-Score und entschlüsselter zusätzlicher geheimer Ganzzahlen von dem Client-Gerät; Verifizieren der Korrektheit der entschlüsselten zusätzlichen geheimen Ganzzahlen; und Teilen des unverschlüsselten Übereinstimmungs-Score durch die erste geheime Ganzzahl, um den Übereinstimmungs-Score zu erhalten.
  21. Computerprogrammprodukt nach Anspruch 20, wobei der multiplizierte verschlüsselte Übereinstimmungs-Score und die verschlüsselten zusätzlichen geheimen Ganzzahlen in einer geheimen zufälligen Reihenfolge an das Client-Gerät übertragen werden.
  22. Computerprogrammprodukt nach Anspruch 20, wobei die verschlüsselten biometrischen Informationen von einem Client-Gerät empfangen werden, das kommunikativ mit einer Vorrichtung zur Erfassung biometrischer Informationen verbunden ist.
  23. Computerprogrammprodukt nach Anspruch 22, wobei die Entschlüsselung auf dem Client-Gerät unter Verwendung eines privaten Schlüssels durchgeführt wird.
  24. Computerprogrammprodukt nach Anspruch 17, wobei einige der Schichten des neuronalen Netzwerkklassifizierers unter Verwendung öffentlich verfügbarer nicht-privater biometrischer Informationen trainiert wurden, und einige Schichten des neuronalen Netzwerkklassifizierers unter Verwendung privater biometrischer Informationen der Person neu trainiert wurden.
DE112019006622.6T 2019-01-10 2019-12-13 Verfahren und system zur privatsphärenbewahrenden biometrischenauthentifizierung Pending DE112019006622T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/244,138 US11201745B2 (en) 2019-01-10 2019-01-10 Method and system for privacy preserving biometric authentication
US16/244,138 2019-01-10
PCT/IB2019/060749 WO2020144510A1 (en) 2019-01-10 2019-12-13 Method and system for privacy preserving biometric authentication

Publications (1)

Publication Number Publication Date
DE112019006622T5 true DE112019006622T5 (de) 2021-09-30

Family

ID=71516984

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112019006622.6T Pending DE112019006622T5 (de) 2019-01-10 2019-12-13 Verfahren und system zur privatsphärenbewahrenden biometrischenauthentifizierung

Country Status (6)

Country Link
US (1) US11201745B2 (de)
JP (1) JP7391969B2 (de)
CN (1) CN113196264A (de)
DE (1) DE112019006622T5 (de)
GB (1) GB2595381B (de)
WO (1) WO2020144510A1 (de)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11394552B2 (en) 2018-03-07 2022-07-19 Private Identity Llc Systems and methods for privacy-enabled biometric processing
US10938852B1 (en) * 2020-08-14 2021-03-02 Private Identity Llc Systems and methods for private authentication with helper networks
US11210375B2 (en) 2018-03-07 2021-12-28 Private Identity Llc Systems and methods for biometric processing with liveness
US11789699B2 (en) * 2018-03-07 2023-10-17 Private Identity Llc Systems and methods for private authentication with helper networks
US10721070B2 (en) 2018-03-07 2020-07-21 Private Identity Llc Systems and methods for privacy-enabled biometric processing
US11170084B2 (en) 2018-06-28 2021-11-09 Private Identity Llc Biometric authentication
US11138333B2 (en) 2018-03-07 2021-10-05 Private Identity Llc Systems and methods for privacy-enabled biometric processing
US11489866B2 (en) * 2018-03-07 2022-11-01 Private Identity Llc Systems and methods for private authentication with helper networks
US11392802B2 (en) 2018-03-07 2022-07-19 Private Identity Llc Systems and methods for privacy-enabled biometric processing
US11502841B2 (en) 2018-03-07 2022-11-15 Private Identity Llc Systems and methods for privacy-enabled biometric processing
US11265168B2 (en) 2018-03-07 2022-03-01 Private Identity Llc Systems and methods for privacy-enabled biometric processing
US11368308B2 (en) * 2019-01-11 2022-06-21 Visa International Service Association Privacy preserving biometric authentication
CN113632082A (zh) * 2019-01-23 2021-11-09 皇家飞利浦有限公司 机器学习模型验证和认证
US20210150042A1 (en) * 2019-11-15 2021-05-20 International Business Machines Corporation Protecting information embedded in a machine learning model
WO2021239239A1 (en) * 2020-05-28 2021-12-02 Irdeto B.V. Biometric authentication using two thresholds
US20220029987A1 (en) * 2020-07-21 2022-01-27 Royal Bank Of Canada Facial recognition tokenization
US11799643B2 (en) * 2021-01-19 2023-10-24 Bank Of America Corporation Collaborative architecture for secure data sharing
US20220247548A1 (en) * 2021-02-01 2022-08-04 Sap Se Efficient distributed privacy-preserving computations
US20230185919A1 (en) * 2021-12-15 2023-06-15 GM Global Technology Operations LLC System and process using homomorphic encryption to secure neural network parameters for a motor vehicle
US11902416B2 (en) * 2022-06-09 2024-02-13 The Government of the United States of America, as represented by the Secretary of Homeland Security Third party biometric homomorphic encryption matching for privacy protection
US11727100B1 (en) 2022-06-09 2023-08-15 The Government of the United States of America, as represented by the Secretary of Homeland Security Biometric identification using homomorphic primary matching with failover non-encrypted exception handling

Family Cites Families (31)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6317834B1 (en) 1999-01-29 2001-11-13 International Business Machines Corporation Biometric authentication system with encrypted models
CN2658846Y (zh) * 2003-08-21 2004-11-24 泉茂科技股份有限公司 无线辨识锁
US7783893B2 (en) 2005-07-06 2010-08-24 Victor Gorelik Secure biometric authentication scheme
US8046588B2 (en) * 2006-02-23 2011-10-25 Rockwell Automation Technologies, Inc. Audit trail in a programmable safety instrumented system via biometric signature(s)
US9411944B2 (en) * 2006-11-15 2016-08-09 Cfph, Llc Biometric access sensitivity
CA2658846C (en) 2007-01-24 2015-03-31 Raytheon Company Intelligent biometric radar system
EP2187338A1 (de) 2008-11-13 2010-05-19 Berner Fachhochschule, Technik und Informatik (TI) Biometrische Pseudonyme für eine Vorlage mit fester Größe
US8972742B2 (en) 2009-09-04 2015-03-03 Gradiant System for secure image recognition
US9613292B1 (en) 2012-01-26 2017-04-04 Hrl Laboratories, Llc Secure multi-dimensional pattern matching for secure search and recognition
US8598980B2 (en) 2010-07-19 2013-12-03 Lockheed Martin Corporation Biometrics with mental/physical state determination methods and systems
JP2012227899A (ja) * 2011-04-22 2012-11-15 Toshiba Corp 認証コンポーネント、被認証コンポーネントおよびその認証方法
US8966277B2 (en) * 2013-03-15 2015-02-24 Mitsubishi Electric Research Laboratories, Inc. Method for authenticating an encryption of biometric data
US9813246B2 (en) * 2013-10-29 2017-11-07 Jory Schwach Encryption using biometric image-based key
JP6151627B2 (ja) * 2013-11-14 2017-06-21 Kddi株式会社 生体認証システム、生体認証方法およびコンピュータプログラム
US9838388B2 (en) 2014-08-26 2017-12-05 Veridium Ip Limited System and method for biometric protocol standards
US9946970B2 (en) * 2014-11-07 2018-04-17 Microsoft Technology Licensing, Llc Neural networks for encrypted data
JP6384314B2 (ja) * 2014-12-22 2018-09-05 富士通株式会社 情報処理方法、情報処理プログラムおよび情報処理装置
US9577992B2 (en) * 2015-02-04 2017-02-21 Aerendir Mobile Inc. Data encryption/decryption using neuro and neuro-mechanical fingerprints
DE102016002792B4 (de) 2015-03-09 2022-04-28 Hid Global Corporation Biometrie-Geheimnis-Bindungsschema mit verbessertem Datenschutz
US10255040B2 (en) * 2017-05-11 2019-04-09 Veridium Ip Limited System and method for biometric identification
CN105631296B (zh) * 2015-12-30 2018-07-31 北京工业大学 一种基于cnn特征提取器的安全人脸认证系统设计方法
EP3203679A1 (de) * 2016-02-04 2017-08-09 ABB Schweiz AG Maschinelles lernen auf basis von homomorpher verschlüsselung
FR3057090B1 (fr) * 2016-09-30 2018-10-19 Safran Identity & Security Procedes d'apprentissage securise de parametres d'un reseau de neurones a convolution, et de classification securisee d'une donnee d'entree
KR101910158B1 (ko) 2016-12-09 2018-12-19 동국대학교 산학협력단 회선 신경망 기반 눈 개폐 분류 장치 및 방법
CN107086910B (zh) * 2017-03-24 2018-08-10 中国科学院计算技术研究所 一种针对神经网络处理的权重加解密方法和系统
US10706349B2 (en) * 2017-05-25 2020-07-07 Texas Instruments Incorporated Secure convolutional neural networks (CNN) accelerator
US10210381B1 (en) * 2017-08-01 2019-02-19 Apple Inc. Multiple enrollments in facial recognition
CN107819587B (zh) * 2017-12-13 2020-08-11 陈智罡 基于全同态加密的认证方法和用户设备以及认证服务器
CN108540457B (zh) 2018-03-20 2021-09-17 深圳市文鼎创数据科技有限公司 一种安全设备及其生物认证控制方法和装置
CN108520181B (zh) * 2018-03-26 2022-04-22 联想(北京)有限公司 数据模型训练方法和装置
CN108681698B (zh) 2018-04-28 2021-03-16 武汉大学 一种具有隐私保护功能的大规模虹膜识别方法

Also Published As

Publication number Publication date
CN113196264A (zh) 2021-07-30
GB2595381A (en) 2021-11-24
JP2022516241A (ja) 2022-02-25
WO2020144510A1 (en) 2020-07-16
US11201745B2 (en) 2021-12-14
JP7391969B2 (ja) 2023-12-05
US20200228339A1 (en) 2020-07-16
GB2595381B (en) 2023-05-03
GB202110457D0 (en) 2021-09-01

Similar Documents

Publication Publication Date Title
DE112019006622T5 (de) Verfahren und system zur privatsphärenbewahrenden biometrischenauthentifizierung
DE102016100494B4 (de) Sichere Identitätsauthentifizierung in einer elektronischen Transaktion
US10554659B2 (en) Anonymizing biometric data for use in a security system
DE102015215120B4 (de) Verfahren zur verwendung einer vorrichtung zum entriegeln einer weiteren vorrichtung
DE202018002074U1 (de) System zur sicheren Speicherung von elektronischem Material
DE112009001794T5 (de) System, Vorrichtung und Verfahren zum Sichern einer Vorrichtungskomponente
DE112011100182T5 (de) Transaktionsprüfung für Datensicherheitsvorrichtungen
DE102016102295A1 (de) Sicherer Authentifizierungsmechanismus mittels Quick-Response-Codes
DE112017000633T5 (de) Sichere archivierung und wiederherstellung von multifaktor-authentifizierungsschablonen
DE112021000689T5 (de) Attestierung von neuronalen abläufen
CN115758398A (zh) 门禁数据处理方法、装置、门禁系统及存储介质
DE102021123288A1 (de) Regelbasiertes filtern zum sichern von kennwortanmeldungen
DE202020005753U1 (de) Verwalten von Benutzeridentitäten in einem verwalteten Multi-Tenant-Dienst
DE112016002436T5 (de) Steuern des Zugriffs auf Ressourcenfunktionen an einem Steuerpunkt der Ressource über ein Benutzergerät
DE602004013254T2 (de) Verfahren und System zur Generierung von Authentifizierungsstapeln in Kommunikationsnetzen
EP3226166A2 (de) Systeme und verfahren zur authentifizierung auf basis der menschlichen zahnstruktur
DE19703970A1 (de) Verfahren und Vorrichtung zur Erfassung von Daten und deren Übermittlung in authentischer Form
Hachim et al. Iris-based authentication model in cloud environment (iamce)
EP3510515B1 (de) Datenbrille zum kryptographischen signieren von bilddaten
DE112020003555T5 (de) Verwaltung von sicherheits-berechtigungsnachweisen für client-anwendungen
DE112021005333T5 (de) Fingerabdruck mehrfaktorauthentifikator
DE60132376T2 (de) Biometrische authentifizierung
US11343092B2 (en) Biometric authentication method
Ali et al. Secured E-voting system based on iris identification
Chaudhari et al. Online Voter System With Two-Step Verification

Legal Events

Date Code Title Description
R012 Request for examination validly filed
R084 Declaration of willingness to licence