DE112018006443T5 - Multifaktor-authentifizierung - Google Patents

Multifaktor-authentifizierung Download PDF

Info

Publication number
DE112018006443T5
DE112018006443T5 DE112018006443.3T DE112018006443T DE112018006443T5 DE 112018006443 T5 DE112018006443 T5 DE 112018006443T5 DE 112018006443 T DE112018006443 T DE 112018006443T DE 112018006443 T5 DE112018006443 T5 DE 112018006443T5
Authority
DE
Germany
Prior art keywords
access code
user
discrete logarithm
data processing
user unit
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
DE112018006443.3T
Other languages
English (en)
Inventor
Yi-Chun Chen
Wen-Ping Chi
Chao Yuan Huang
Ting-Yi Wang
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 DE112018006443T5 publication Critical patent/DE112018006443T5/de
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/18Network architectures or network communication protocols for network security using different networks or channels, e.g. using out of band channels
    • 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/40User authentication by quorum, i.e. whereby two or more security principals are required
    • 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/42User authentication using separate channels for security data
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/083Network architectures or network communication protocols for network security for authentication of entities using passwords
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • 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/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • H04L9/0841Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols
    • 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/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0838Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these
    • H04L9/0841Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols
    • H04L9/0844Key agreement, i.e. key establishment technique in which a shared key is derived by parties as a function of information contributed by, or associated with, each of these involving Diffie-Hellman or related key agreement protocols with user authentication or key authentication, e.g. ElGamal, MTI, MQV-Menezes-Qu-Vanstone protocol or Diffie-Hellman protocols using implicitly-certified keys
    • 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
    • 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/3215Cryptographic 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 plurality of channels
    • 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
    • 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/3228One-time or temporary data, i.e. information which is sent for every authentication or authorization, e.g. one-time-password, one-time-token or one-time-key
    • 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/3271Cryptographic 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 challenge-response
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2221/00Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/21Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F2221/2103Challenge-response
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/082Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying multi-factor authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/16Implementing security features at a particular protocol layer
    • H04L63/168Implementing security features at a particular protocol layer above the transport layer

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computing Systems (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Telephonic Communication Services (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Computer And Data Communications (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

Bereitgestellt werden ein Verfahren und ein System zum Authentifizieren eines Benutzers. Eine Anforderung einer Ressource durch eine Benutzereinheit wird von einem Server empfangen. Eine vordefinierte Zahl wird von der Benutzereinheit empfangen. Eine erste Zahl und eine zweite Zahl werden erstellt. Die erste Zahl wird an die Benutzereinheit gesendet. Ein erster diskreter Logarithmus wird auf Grundlage eines Anforderungscodes und der ersten Zahl bestimmt und an die Benutzereinheit gesendet. Ein erster Zugangscode wird über einen zweiten diskreten Logarithmus auf Grundlage des ersten diskreten Logarithmus, der vordefinierten Zahl und der ersten Zahl berechnet. Ein zweiter Zugangscode, der auf dem zweiten diskreten Logarithmus beruht, wird von der Benutzereinheit empfangen. Der erste Zugangscode wird mit dem zweiten Zugangscode verglichen. Nach einem Bestimmen, dass der erste Zugangscode mit dem zweiten Zugangscode identisch ist, wird der Benutzereinheit der Zugriff auf eine Ressource gestattet, die der Datenverarbeitungseinheit zugehörig ist.

Description

  • HINTERGRUND
  • Technisches Gebiet
  • Die vorliegende Offenbarung betrifft im Allgemeinen eine elektronische Datenübertragung und insbesondere ein Schützen von Daten, die über eine elektronische Datenübertragung übertragen werden.
  • Beschreibung des einschlägigen Stands der Technik
  • In den letzten Jahren haben die Sicherheitsprobleme in Bezug auf digitale Daten zugenommen. Zu einigen der betroffenen Branchen gehören Bankenwesen, Gesundheitswesen, Regierungsbehörden, Bildungseinrichtungen, soziale Medien usw. Viele herkömmliche Systeme verlassen sich auf statische Passwörter zum Identifizieren der Identität eines Benutzers, die manchmal problemlos erraten oder mittels Social-Engineering-Taktiken bestimmt werden können.
  • Eine verbesserte Sicherheitsstrategie beruht auf einer Zwei-Faktor-Authentifizierung. Zum Beispiel muss ein Benutzer für eine Website den Benutzernamen oder eine Mobiltelefonnummer eingeben. Wenn der Benutzername oder die Mobiltelefonnummer registriert ist, sendet die Website eine Textnachricht wie beispielsweise eine Kurznachrichtendienst- (SMS (Short Message Service)) Textnachricht an eine Benutzereinheit des Benutzers mit einem Passwort, wobei der Benutzer aufgefordert wird, dieses manuell für die Website bereitzustellen. Die Website vergleicht dann das Passwort, das sie an die Benutzereinheit gesendet hat, mit dem vom Benutzer eingegebenen Passwort. Stimmen sie überein, wird der Benutzer als authentifiziert betrachtet und wird angemeldet.
  • Vorhandene Systeme, die mit SMS arbeiten, haben mehrere Nachteile. In letzter Zeit wurde festgestellt, dass trotz einer Verwendung einer Zwei-Faktor-Authentifizierung zur Erhöhung der Sicherheit die meisten Benutzereinheiten nicht ausreichend gegen Hackerangriffe und Malware geschützt sind. Zum Beispiel kann ein Bedrohungsakteur, Hacker oder Angreifer, auf die hierin als böswillige Partei verwiesen wird, die SMS-Datenübertragung abfangen oder abhören, ohne dass der betroffene Benutzer dies bemerkt. Anders ausgedrückt, die SMS vertraut auf eine aktive Transaktion zwischen einem Server und einer Benutzereinheit, die abgefangen werden kann und einen Benutzer damit einem Sicherheitsrisiko aussetzt. Somit kann genau die Nachricht, die einen Benutzer schützen soll, die Quelle einer Schwachstelle sein. In Bezug auf genau diese und andere Überlegungen wurde die vorliegende Offenbarung geschrieben.
  • Daher besteht im Stand der Technik ein Bedarf, sich des vorgenannten Problems anzunehmen.
  • KURZDARSTELLUNG DER ERFINDUNG
  • Von einem ersten Aspekt aus betrachtet stellt die vorliegende Erfindung eine Datenverarbeitungseinheit bereit, aufweisend: einen Prozessor; eine Netzwerkschnittstelle, die mit dem Prozessor verbunden ist, um eine Datenübertragung über ein Netzwerk zu ermöglichen; eine Speichereinheit, die mit dem Prozessor verbunden ist; eine Software eines Sicherheits-Agents, die in der Speichereinheit gespeichert ist, wobei eine Ausführung der Software durch den Prozessor die Datenverarbeitungseinheit zum Ausführen von Handlungen konfiguriert, aufweisend: ein Empfangen einer Anforderung für eine Ressource von einer Benutzereinheit; ein Empfangen einer vordefinierten Zahl (s) von der Benutzereinheit; ein Erstellen einer ersten Zahl (p); ein Senden der ersten Zahl (p) an die Benutzereinheit; ein Erstellen eines Anforderungscodes (c); ein Bestimmen eines ersten diskreten Logarithmus auf Grundlage des Anforderungscodes (c) und der ersten Zahl (p); ein Senden des ersten diskreten Logarithmus an die Benutzereinheit; ein Berechnen eines ersten Zugangscodes (R1) über einen zweiten diskreten Logarithmus auf Grundlage des ersten diskreten Logarithmus, der vordefinierten Zahl (s) und der ersten Zahl (p); ein Empfangen eines zweiten Zugangscodes (R2) auf Grundlage des zweiten diskreten Logarithmus von der Benutzereinheit; ein Vergleichen des ersten Zugangscodes (R1) mit dem zweiten Zugangscode (R2); und nach einem Bestimmen, dass der erste Zugangscode (R) mit dem zweiten Zugangscode (R2) identisch ist, ein Zulassen, dass die Benutzereinheit Zugang zu der Ressource erhält.
  • Von einem weiteren Aspekt aus betrachtet stellt die vorliegende Erfindung eine Datenverarbeitungseinheit bereit, aufweisend: einen Prozessor; eine Netzwerkschnittstelle, die mit dem Prozessor verbunden ist, um eine Datenübertragung über ein Netzwerk zu ermöglichen; eine Speichereinheit, die mit dem Prozessor verbunden ist; eine Sicherheitsanwendung, die in der Speichereinheit gespeichert ist, wobei eine Ausführung der Software durch den Prozessor die Datenverarbeitungseinheit zum Ausführen von Handlungen konfiguriert, aufweisend: ein Senden einer Anforderung für eine Ressource von einer Datenverarbeitungseinheit an einen Server; ein Senden einer vordefinierten Zahl (s) an den Server; ein Empfangen einer ersten Zahl (p) von dem Server; ein Empfangen eines ersten diskreten Logarithmus auf Grundlage eines Anforderungscodes (c) und der ersten Zahl (p) und einer zweiten Zahl (g) von dem Server; ein Berechnen eines zweiten Zugangscodes (R2) auf Grundlage eines zweiten diskreten Logarithmus auf Grundlage des ersten diskreten Logarithmus, der vordefinierten Zahl (s) und der ersten Zahl (p); ein Senden des zweiten Zugangscodes (R2) an den Server für einen Vergleich mit einem ersten Zugangscode (R1); und ein Erhalten von Zugriff auf die Ressource, wenn der zweite Zugangscode (R2) mit dem ersten Zugangscode (R1) übereinstimmt.
  • Von einem weiteren Aspekt aus betrachtet stellt die vorliegende Erfindung ein Verfahren zum Schützen von Daten bereit, wobei das Verfahren aufweist: ein Empfangen einer Anforderung für eine Ressource von einer Benutzereinheit; ein Empfangen einer vordefinierten Zahl (s) von der Benutzereinheit; ein Erstellen einer ersten Zahl (p); ein Senden der ersten Zahl (p) an die Benutzereinheit; ein Erstellen eines Anforderungscodes (c); ein Bestimmen eines ersten diskreten Logarithmus auf Grundlage des Anforderungscodes (c) und der ersten Zahl (p); ein Senden des ersten diskreten Logarithmus an die Benutzereinheit; ein Berechnen eines ersten Zugangscodes (R1) über einen zweiten diskreten Logarithmus auf Grundlage des ersten diskreten Logarithmus, der vordefinierten Zahl (s) und der ersten Zahl (p); ein Empfangen eines zweiten Zugangscodes (R2) auf Grundlage des zweiten diskreten Logarithmus von der Benutzereinheit; ein Vergleichen des ersten Zugangscodes (R1) mit dem zweiten Zugangscode (R2); und wenn bestimmt worden ist, dass der erste Zugangscode (R1) mit dem zweiten Zugangscode (R2) identisch ist, ein Zulassen, dass die Benutzereinheit Zugang zu der Ressource erhält.
  • Von einem weiteren Aspekt aus betrachtet stellt die vorliegende Erfindung ein Computerprogrammprodukt zum Schützen von Daten bereit, wobei das Computerprogrammprodukt ein durch einen Computer lesbares Speichermedium aufweist, das von einer Verarbeitungsschaltung lesbar ist und Anweisungen zur Ausführung durch die Verarbeitungsschaltung speichert, um ein Verfahren zum Ausführen der Schritte der Erfindung auszuführen.
  • Von einem weiteren Aspekt aus betrachtet stellt die vorliegende Erfindung ein Computerprogramm bereit, das auf einem durch einen Computer lesbaren Medium gespeichert ist und in den internen Arbeitsspeicher eines digitalen Computers ladbar ist, wobei es Abschnitte von Softwarecode zum Ausführen der Schritte der Erfindung aufweist, wenn das Programm auf einem Computer ausgeführt wird.
  • Gemäß verschiedenen Ausführungsformen wird eine Datenverarbeitungseinheit, ein nicht flüchtiges, durch einen Computer lesbares Speichermedium und ein Verfahren für ein Authentifizieren eines Benutzers bereitgestellt. Eine Datenverarbeitungseinheit empfängt eine Anforderung für eine Ressource von einer Benutzereinheit. Eine vordefinierte Zahl (s) wird von der Benutzereinheit empfangen. Eine erste Zahl (p) und eine zweite Zahl (g) werden erstellt. Die erste Zahl (p) wird an die Benutzereinheit gesendet. Ein Anforderungscode (c) wird durch die Datenverarbeitungseinheit erstellt. Ein erster diskreter Logarithmus wird auf Grundlage des Anforderungscodes (c) und der ersten Zahl (p) bestimmt. Der erste diskrete Logarithmus wird an die Benutzereinheit gesendet. Ein erster Zugangscode (R1) wird über einen zweiten diskreten Logarithmus auf Grundlage des ersten diskreten Logarithmus, der vordefinierten Zahl (s) und der ersten Zahl (p) berechnet. Ein zweiter Zugangscode (R2), der auf dem zweiten diskreten Logarithmus beruht, wird von der Benutzereinheit empfangen. Der erste Zugangscode (R1) wird mit dem zweiten Zugangscode (R2) verglichen. Wenn bestimmt worden ist, dass der erste Zugangscode (R1) mit dem zweiten Zugangscode (R2) identisch ist, wird der Benutzereinheit der Zugang zu einer Ressource gestattet, die der Datenverarbeitungseinheit zugehörig ist. Aufgrund dieser Architektur wird der Zugangscode (R1) geschützt, auch wenn eine Datenübertragung zwischen dem Server und der Benutzereinheit von einer böswilligen dritten Partei abgefangen werden kann.
  • In einer Ausführungsform ist die erste Zahl (p) eine Primzahl. In einer Ausführungsform ist die erste Zahl (p) größer als die zweite Zahl (g).
  • In einer Ausführungsform erfolgt ein Senden der ersten Zahl (p) an die Benutzereinheit über einen Kanal eines öffentlichen Fernsprechwählnetzes (PSTN (Public Switched Telephone Network)).
  • In einer Ausführungsform erfolgt der Empfang der vordefinierten Zahl (s) durch die Datenverarbeitungseinheit über einen Kanal, der sich von demjenigen zum Senden der ersten Zahl (p) an die Benutzereinheit unterscheidet.
  • In einer Ausführungsform beruht der erste diskrete Logarithmus auf (gc mod p), und der zweite diskrete Logarithmus beruht auf ((gc mod p)s mod p).
  • Gemäß verschiedenen Ausführungsformen wird eine Datenverarbeitungseinheit, ein nicht flüchtiges, durch einen Computer lesbares Speichermedium und ein Verfahren für ein Authentifizieren eines Benutzers bereitgestellt. Eine Anforderung einer Ressource wird von der Datenverarbeitungseinheit an einen Server gesendet. Eine vordefinierte Zahl (s) wird an den Server gesendet. Eine erste Zahl (p) wird von dem Server empfangen. Ein erster diskreter Logarithmus auf Grundlage eines Anforderungscodes (c) und der ersten Zahl (p) und einer zweiten Zahl (g) wird von dem Server empfangen. Ein zweiter Zugangscode (R2) wird über einen zweiten diskreten Logarithmus auf Grundlage des ersten diskreten Logarithmus, der vordefinierten Zahl (s) und der ersten Zahl (p) berechnet. Der zweite Zugangscode (R2) wird an den Server für einen Vergleich mit einem ersten Zugangscode (R1) gesendet. Der Zugang zu einer Ressource, die dem Server zugehörig ist, wird erhalten, wenn der zweite Zugangscode (R2) mit dem ersten Zugangscode (R1) übereinstimmt. Aufgrund dieser Architektur wird der Zugangscode R1 geschützt, auch wenn eine Datenübertragung zwischen dem Server und der Benutzereinheit von einer böswilligen dritten Partei abgefangen werden kann.
  • In einer Ausführungsform ist die vordefinierte Zahl (s) eine Identifizierungs- (ID) Nummer der Benutzereinheit.
  • In einer Ausführungsform wird die vordefinierte Zahl (s) über einen Hypertext-Transfer-Protocol-Secure- (HTTPS) Kanal gesendet, wobei die erste Zahl (p) eine Primzahl ist und die erste Zahl (p) größer als die zweite Zahl (g) ist.
  • In einer Ausführungsform erfolgt das Senden der vordefinierten Zahl (s) durch die Datenverarbeitungseinheit über einen Kanal, der sich von demjenigen zum Empfangen der ersten Zahl (p) von dem Server unterscheidet.
  • In einer Ausführungsform beruht der erste diskrete Logarithmus auf (gc mod p). Der zweite diskrete Logarithmus beruht auf ((gc mod p)s mod p).
  • Figurenliste
  • Die Zeichnungen stellen veranschaulichende Ausführungsformen dar. Sie veranschaulichen nicht alle Ausführungsformen. Weitere Ausführungsformen können zusätzlich oder stattdessen verwendet werden. Details, die offenkundig erscheinen oder unnötig sind, können weggelassen worden sein, um Platz zu sparen oder aus Gründen einer effizienteren Veranschaulichung. Einige Ausführungsformen können mit zusätzlichen Komponenten oder Schritten und/oder ohne alle der veranschaulichten Komponenten oder Schritte ausgeübt werden. Wenn in verschiedenen Zeichnungen dieselben Referenzzeichen erscheinen, wird damit auf dieselben oder ähnliche Komponenten oder Schritte verwiesen.
    • 1 veranschaulicht eine beispielhafte Architektur 100 zum Bereitstellen einer sicheren Multifaktor-Authentifizi eru ng.
    • 2 veranschaulicht ein Blockschaubild, das verschiedene Komponenten einer veranschaulichenden Benutzereinheit auf einer hohen Ebene zeigt.
    • 3 ist ein Beispiel eines Anrufverlaufs zwischen einem Sicherheits-Agent eines Sicherheitsservers und einer Benutzereinheit im Kontext eines Modus einer Anforderungsreaktion.
    • 4 ist ein Beispiel eines Anrufverlaufs zwischen einem Sicherheits-Agent eines Sicherheitsservers und einer Benutzereinheit im Kontext eines interaktiven Modus.
    • 5 stellt eine Veranschaulichung eines funktionsbezogenen Blockschaubilds einer Computer-Hardwareplattform bereit.
  • AUSFÜHRLICHE BESCHREIBUNG
  • In der folgenden ausführlichen Beschreibung werden zahlreiche spezifische Details mithilfe von Beispielen dargelegt, um für ein umfassendes Verständnis der relevanten Lehren zu sorgen. Es sollte jedoch offensichtlich sein, dass die vorliegenden Lehren ohne derartige Details ausgeübt werden können. In anderen Fällen wurden wohlbekannte Verfahren Prozeduren, Komponenten und/oder Schaltungen auf einer relativ hohen Ebene ohne Details beschrieben, um eine unnötige Verschleierung von Aspekten der vorliegenden Lehren zu vermeiden.
  • Die vorliegende Offenbarung betrifft ein Schützen von Daten, die über eine elektronische Datenübertragung übertragen werden. Die Daten werden durch eine Multifaktor-Authentifizierung geschützt, die Schwachstellen der Daten während des Authentifizierungsprozesses reduziert, selbst wenn die elektronische Datenübertragung während der Authentifizierung durch eine böswillige Partei abgefangen wird. Sowohl der Server, der die zu schützenden Daten speichert, als auch die Benutzereinheit, die die geschützten Daten anfordert, können einen selben Zugangscode bestimmen, obwohl Nachrichten, die während des Authentifizierungsprozesses durch eine digitale Datenübertragung übertragen werden, die Sicherheit der zu schützenden Daten nicht beeinträchtigen. Deshalb sendet der Server, der die Authentifizierung ausführt, keinen Zugangscode an die Benutzereinheit des anfordernden Benutzers. Stattdessen wird mindestens ein Teil der Parameter im Zusammenhang mit der Authentifizierung, die dem Server bekannt sind, durch den Server geheim gehalten, und mindestens ein Teil der Parameter im Zusammenhang mit der Authentifizierung, die der Benutzereinheit bekannt sind, wird benutzerseitig geheim gehalten. Aufgrund der hierin erörterten Konzepte wird der Zugangscode geschützt, selbst wenn eine Datenübertragung zwischen dem Server und der Benutzereinheit von einer böswilligen dritten Partei abgefangen wird. Im Folgenden wird ausführlich auf die Beispiele Bezug genommen, die in den begleitenden Zeichnungen veranschaulicht sind und im Folgenden erörtert werden.
  • Beispiel-Architektur
  • 1 veranschaulicht eine beispielhafte Architektur 100 zum Bereitstellen einer sicheren Multifaktor-Authentifizierung. Die Architektur 100 enthält ein Netzwerk 106, das verschiedenen Benutzereinheiten 102(1) bis 102(n) ermöglicht, miteinander Daten auszutauschen, sowie alle anderen Ressourcen, die mit dem Netzwerk 106 verbunden sein können, darunter Banken, Regierungsorganisationen, Portale im Gesundheitswesen, Bildungseinrichtungen, Portale von sozialen Medien usw., die zum Speichern von Informationen verwendet werden können, die ein Benutzer zu schützen beabsichtigt. Diese Einrichtungen und Portale werden hierin durch ein privates Netzwerk 108 mit einem Sicherheitsserver 120 dargestellt.
  • Das Netzwerk 106 kann ohne jede Einschränkung ein lokales Netzwerk („LAN“), ein virtuelles privates Netzwerk („VPN“), ein Mobilfunknetzwerk, ein öffentliches Fernsprechwählnetz (PSTN), das Internet oder eine Kombination davon sein. Zum Beispiel kann das Netzwerk 106 ein Mobilfunknetzwerk enthalten, das in Datenaustausch mit einem privaten Netzwerk verbunden ist, das verschiedene ergänzende Dienste bereitstellt, wie zum Beispiel eine Datenübertragung mit verschiedenen Application Stores, Bibliotheken und dem Internet. Um die vorliegende Erörterung zu vereinfachen, wird das Netzwerk 106 nur als Beispiel und keinesfalls einschränkend als ein Mobilfunknetzwerk beschrieben, das von einem Betreiber oder einem Dienstanbieter betrieben werden kann, um einen breiten Bereich von mobilen Datenübertragungsdiensten und ergänzenden Diensten oder Funktionen für Abonnentenkunden und zugehörige Benutzer von mobilen Einheiten bereitzustellen.
  • Das Netzwerk 106 ermöglicht es einem oder mehreren Benutzern 101(1) bis 101(n) mit einem oder mehreren privaten Netzwerken 108 Daten auszutauschen, um jeweils über die Benutzereinheiten (UD) 102(1) bis 102(n) Informationen sicher von dem privaten Netzwerk abzurufen oder Informationen im privaten Netzwerk zu speichern. Wie vorher erwähnt, können diese privaten Netzwerke 108 die Netzwerke von verschiedenen Einrichtungen und Portalen darstellen, die ein Benutzer abonniert haben kann. Das private Netzwerk 108 enthält einen Sicherheitsserver 120, auf dem eine Software-Anwendung ausgeführt wird, dargestellt durch einen Sicherheits-Agent 103. In einer Ausführungsform enthält das private Netzwerk eine Profildatenbank 110, die Abonnements, Zahlungsstatus-Informationen, Passwortinformationen, Identifizierungsinformationen usw. von Benutzern enthalten kann, die autorisiert sind, das private Netzwerk 108 und dessen jeweilige geschützte Daten 113 zu verwenden. In einer Ausführungsform kann der Sicherheits-Agent 103 vordefinierte Zahlen 111A, wie zum Beispiel eine Identifizierungs- (ID) Nummer der Benutzereinheit in der Profildatenbank 110 speichern. Anschließend können die gespeicherten Informationen 111 B während eines Authentifizierungsprozesses aus der Profildatenbank 110 abgerufen werden.
  • Zum Zweck einer späteren Erörterung sind in der Zeichnung mehrere Benutzereinheiten zu sehen, die einige Beispiele für die Einheiten darstellen, die zum Initiieren einer Datenübertragung mit dem privaten Netzwerk 108 verwendet werden können. Gegenwärtig liegen Benutzereinheiten typischerweise in Form von tragbaren Handapparaten, Smartphones, Tablet-Computern, PDAs, Virtual-Reality- (VR) Einheiten, Augmented-Reality- (AR) Einheiten und Smart-Uhren vor, obwohl sie in anderen Bauformen umgesetzt werden können, einschließlich elektronischen Verbraucher- und Geschäftseinheiten. Eine Benutzereinheit (z.B. 102(1)) kann zum Interagieren mit dem privaten Netzwerk 108 über das Netzwerk 106 verwendet werden, um eine oder mehrere Ressourcen, die durch das private Netzwerk 108 bereitgestellt werden, zu empfangen, einschließlich geschützte Daten 113 abzurufen und in einem Repository 112 zu speichern, das dem Sicherheitsserver 120 zugehörig ist.
  • In einigen Szenarios kann eine böswillige Partei, in 1 durch einen Benutzer 101 (n) und deren entsprechende Benutzereinheit 102(n) dargestellt, versuchen, die Datenübertragung zwischen einem autorisierten Benutzer (z.B. 101(1) oder 101(2)) über irreführende Praktiken abzufangen, die ein einfaches Abhören der Datenübertragung auf einer Benutzereinheit 102(2) eines autorisierten Benutzers 101(2), ein elektronisches Abfangen der Datenübertragung über das Netzwerk 106 usw. sein können. Die Architektur 100 ist so konfiguriert, dass die Sicherheit der Daten 113, die geschützt werden sollen, trotz des Abfangens durch eine böswillige Partei 102(n) bewahrt wird.
  • Zu diesem Zweck ist der Sicherheits-Agent 103 als ein Gateway zwischen den geschützten Daten 113 in dem Daten-Repository 112 und einem oder mehreren Benutzern 101(1) bis 101(n) betreibbar. Zum Beispiel ist der Sicherheits-Agent 103 konfiguriert, um von Benutzern über deren jeweilige Benutzereinheiten Anforderungen für Daten zu empfangen, die in dem privaten Netzwerk 108 (z.B. in einem Daten-Repository 1112) gespeichert sind (oder dort gespeichert werden sollen). Der Sicherheits-Agent 103 ist auch konfiguriert, um zu bestimmen, ob der Benutzer autorisiert ist, über Authentifizierungsprozesse, die im Folgenden ausführlicher erörtert werden, mit dem privaten Netzwerk 108 Daten auszutauschen. In verschiedenen Ausführungsformen kann der Authentifizierungsprozess, der durch den Sicherheits-Agent ausgeführt wird, ein Senden von Zugangscodes und ein Empfangen von Zugangscodes an eine und von einer Benutzereinheit (z.B. 102(1)) enthalten. Zum Beispiel kann der Sicherheits-Agent 103 eine vordefinierte Zahl von der Benutzereinheit 102(1) empfangen, die später für eine Datenverschleierung auf Grundlage einer modularen Exponentialfunktion verwendet werden kann, auf die hierin als ein diskreter Logarithmus verwiesen wird.
  • Diskrete Logarithmen sind Logarithmen im Kontext von multiplikativen Gruppen, die zyklisch sind. Wenn zum Beispiel G eine multiplikative zyklische Gruppe ist und g ein Generator von G ist, kann ab der Definition von zyklischen Gruppen jedes Element h in G als gx für irgendein x geschrieben werden. Der diskrete Logarithmus zur Basis g von h in der Gruppe G wird als x definiert. Während diskrete Logarithmen auf Grundlage von bekannten Parametern berechnet werden können, wird der bzw. werden die Root-Parameter verschleiert, wodurch in diskreten Logarithmen inhärente Parameter zur rechnerischen Herausforderung beim Entschlüsseln werden.
  • In einigen Ausführungsformen kann ein Sicherheitsalarm (d.h. Alert-Benachrichtigung) ausgelöst und an einen oder mehrere entsprechende Empfänger-Accounts gesendet werden, wenn bestimmt worden ist, dass ein Benutzer, der versucht, auf Informationen des privaten Netzwerks 108 zuzugreifen, nicht autorisiert ist. Ein entsprechender Empfänger kann der Account-Inhaber (d.h. Benutzer) der geschützten Daten 113, ein IT-Administrator des privaten Netzwerks 108, ein Sicherheits-Agent des privaten Netzwerks 108 usw. sein. Die Alert-Benachrichtigung kann auf verschiedene Weise gesendet werden, zum Beispiel als allgemeiner Kurzcode (CSC (Common Short Code)), unter Verwendung eines Kurznachrichtendienstes (SMS), eines Multimedia-Nachrichtendienstes (MMS (Multimedia Message Service)), von eMail, Telefon, sozialen Medien usw.
  • Zwar werden der Sicherheitsserver 120, die Profildatenbank 110 und das Daten-Repository 112 beispielhaft auf verschiedenen Plattformen veranschaulicht, doch sollte klar sein, dass der Sicherheitsserver 120, die Profildatenbank 110 und das Daten-Repository 112 in unterschiedlichen Ausführungsformen in verschiedenen Kombinationen kombiniert werden können. In anderen Ausführungsformen können diese Datenverarbeitungs-Plattformen durch virtuelle Datenverarbeitungseinheiten in Form von virtuellen Maschinen oder Software-Containern umgesetzt werden, die in einer Cloud gehostet werden, wodurch eine flexible Architektur für Verarbeitung und Speicherung bereitgestellt wird.
  • Beispiel-Benutzereinheit
  • Wie im Kontext von 1 erörtert, kann das Datensicherheitssystem der Architektur 100 verschiedene Typen von Benutzereinheiten umfassen. Deshalb veranschaulicht 2 ein Blockschaubild, das verschiedene Komponenten einer veranschaulichenden Benutzereinheit 200 auf einer hohen Ebene zeigt. Zu Erörterungszwecken zeigt die Veranschaulichung die Benutzereinheit 200 in der Form einer drahtlosen Datenverarbeitungseinheit, wobei klar sein sollte, dass auch andere Datenverarbeitungseinheiten in Frage kommen.
  • Die Benutzereinheit 200 kann eine oder mehrere Antennen 202; einen Senderempfänger 204 für eine zellulare WLAN-Datenübertragung, Nahbereichs-Datenübertragungstechnologie und/oder drahtgebundene Datenübertragung; eine Benutzerschnittstelle 206; und einen Arbeitsspeicher 216 enthalten. In einigen Ausführungsformen können die Antennen 202 eine Uplink-Antenne enthalten, die Funksignale an eine Basisstation sendet, und eine Downlink-Antenne, die Funksignale von der Basisstation empfängt. In einigen anderen Ausführungsformen kann eine einzelne Antenne Funksignale sowohl senden als auch empfangen. Dieselben oder andere Antennen können für eine WLAN-Datenübertragung verwendet werden. Diese Signale können von einem Senderempfänger 204 verarbeitet werden, auf den manchmal allgemein als eine Netzwerkschnittstelle verwiesen wird, der konfiguriert ist, um digitale Daten zu empfangen und zu übertragen. In einer Ausführungsform enthält die Benutzereinheit 200 die Antenne 202 nicht, und die Datenübertragung mit externen Komponenten erfolgt über eine drahtgebundene Datenübertragung.
  • In einer Ausführungsform enthält die Benutzereinheit 200 eine Benutzerschnittstelle 206, die es einem Benutzer ermöglicht, eine Eingabe bereitzustellen und eine Ausgabe von der Benutzereinheit zu empfangen. Zum Beispiel kann die Benutzerschnittstelle 206 eine Datenausgabeeinheit (z.B. visuelle Anzeige, Audio-Lautsprecher, haptische Einheit usw.) enthalten, die verwendet werden kann, um Benachrichtigungen von dem Sicherheits-Agent 103 des Sicherheitsservers 120 zu übermitteln.
  • Die Benutzerschnittstelle 206 kann auch eine oder mehrere Dateneingabeeinheiten enthalten. Die Dateneingabeeinheiten können Kombinationen von einem bzw. einer oder mehreren Tastenfeldern, Tastaturen, Mauseinheiten, Berührungsbildschirmen, Mikrofonen, Spracherkennungspaketen und sonstigen geeigneten Einheiten oder andere elektronische/Software-Auswahlschnittstellen enthalten, sie sind aber nicht darauf beschränkt. Zum Beispiel können die Dateneingabeeinheiten von einem Benutzer verwendet werden, um Anforderungen und Code einzugeben, die an den Sicherheits-Agent eines Sicherheitsservers übermittelt werden.
  • Die Benutzereinheit 200 kann einen oder mehrere Prozessoren 208 enthalten, die ein Einkernprozessor, ein Mehrkernprozessor, ein Rechenprozessor für komplexe Befehlssätze (CISC (Complex Instruction Set Computing)) oder ein anderer Prozessortyp sein können.
  • Die Hardware 210 kann eine Energiequelle und digitale Signalprozessoren (DSP) enthalten, die Einkern- oder Mehrkernprozessoren enthalten können. Die Hardware 210 kann auch Netzwerkprozessoren enthalten, die Hochgeschwindigkeits-Datenübertragungsschnittstellen verwalten, einschließlich Datenübertragungsschnittstellen, die mit peripheren Komponenten interagieren. Die Netzwerkprozessoren und die peripheren Komponenten können durch eine Vermittlungsstruktur verbunden sein. Die Hardware 210 kann ferner Hardware-Decodierer und -Codierer, einen Netzwerkschnittstellen-Controller und/oder einen USB-Controller enthalten.
  • Ein Arbeitsspeicher 216 kann unter Verwendung von durch einen Computer lesbaren Medien umgesetzt werden, wie zum Beispiel Computerspeichermedien. Speichermedien enthalten flüchtige und nicht flüchtige, entfernbare und nicht entfernbare Medien, die in irgendeinem Verfahren oder einer Technologie zum Speichern von Informationen umgesetzt sind, wie beispielsweise durch einen Computer lesbare Anweisungen, Datenstrukturen, Programmmodule und andere Daten. Computerspeichermedien umfassen RAM, ROM, EEPROM, Flash-Speicher oder eine andere Speichertechnologie, CD-ROM, DVD, hochauflösende Videospeicherplatten oder andere optische Speicher, Magnetbandkassetten, Magnetband, Magnetplattenspeicher oder andere Magnetspeichereinheiten oder jedes andere Nicht-Weiterleitungs-Medium, das zum Speichern von Information für einen Zugang durch eine Datenverarbeitungseinheit verwendet werden kann, sie sind aber nicht darauf beschränkt.
  • Der Arbeitsspeicher 216 kann verschiedene Software-Komponenten oder - Module speichern, die durch den bzw. die Prozessoren 208 und den bzw. die Controller der Benutzereinheit 200 ausführbar oder zugänglich sind. Die verschiedenen Komponenten des Arbeitsspeichers 216 können eine Software 218 und ein Betriebssystem 250 enthalten. Die Software 218 kann verschiedene Anwendungen 220 enthalten. Die Software 218 kann auch eine Sicherheitsanwendung 240 mit mehreren Modulen enthalten. Jedes Modul kann Routinen, Programmanweisungen, Objekte und/oder Datenstrukturen enthalten, die Aufgaben ausführen oder abstrakte Datentypen umsetzen.
  • Zum Beispiel kann die Sicherheitsanwendung 240 der Benutzereinheit 200 ein Berechnungsmodul 242 enthalten, das betreibbar ist, um diskrete Algorithmen auf Grundlage von Parametern zu bestimmen, die der Benutzereinheit bekannt sind, was im Folgenden ausführlicher erörtert wird. Ein Code-Identifizierungsmodul 244 kann vorhanden sein, das betreibbar ist, um einen Identifizierungscode der Benutzereinheit zu bestimmen, die für eine Datenübertragung mit dem Sicherheits-Agent 103 verwendet wird. Ein Interaktionsmodul 248 kann vorhanden sein, das für die Benutzereinheit 200 betreibbar ist, um Daten mit dem Sicherheits-Agent 103 auszutauschen.
  • Ein Betriebssystem 250 kann Komponenten enthalten, die es der Benutzereinheit 200 ermöglichen, Daten über verschiedene Schnittstellen (z.B. Benutzersteuerungen, Datenübertragungsschnittstelle und/oder Speichereingabe/-ausgabeeinheiten) zu empfangen und zu übertragen sowie Daten unter Verwendung des bzw. der Prozessoren 208 zum Generieren einer Ausgabe zu verwenden. Das Betriebssystem 250 kann eine Präsentationskomponente enthalten, die die Ausgabe darstellt (z.B. Anzeigen der Daten auf einer elektronischen Anzeige der Benutzereinheit 200, Speichern der Daten im Arbeitsspeicher 216, Übertragen der Daten zu einer anderen elektronischen Einheit usw.). Außerdem kann das Betriebssystem 250 weitere Komponenten enthalten, die verschiedene zusätzliche Funktionen ausführen, die im Allgemeinen einem Betriebssystem 250 zugehörig sind.
  • Beispiel-Prozesse
  • Anhand des vorstehenden Überblicks über die Architektur 100 und die Beispiel-Benutzereinheit 200 kann es von Nutzen sein, im Folgenden eine Erörterung von Beispiel-Prozessen auf hoher Ebene in Form von Anrufverläufen zu betrachten. Zu diesem Zweck stellen 3 und 4 veranschaulichende Anrufabläufe 300 und 400 zwischen einem Sicherheits-Agent eines Sicherheitsservers 120 und einer Benutzereinheit 102 dar. Insbesondere beschreibt der Anrufablauf 300 einen Modus einer Anforderungsreaktion, und der Anrufablauf 400 beschreibt einen interaktiven Modus zwischen einem Sicherheitsserver und einer Benutzereinheit in Übereinstimmung mit veranschaulichenden Ausführungsformen.
  • Die Anrufabläufe 300 und 400 werden als eine Sammlung von Prozessen in einem logischen Ablaufplan veranschaulicht, der eine Abfolge von Operationen darstellt, die in Hardware, Software oder einer Kombination davon umgesetzt werden können. In dem Kontext von Software stellen die Prozesse durch einen Computer ausführbare Anweisungen dar, die bei Ausführung durch einen oder mehrere Prozessoren die genannten Operationen ausführen. Im Allgemeinen können durch einen Computer ausführbare Anweisungen Routinen, Programme, Aufgaben, Komponenten, Datenstrukturen und dergleichen enthalten, die Funktionen ausführen oder abstrakte Datentypen umsetzen. Die Reihenfolge, in der die Operationen beschrieben werden, soll keinesfalls als eine Einschränkung aufgefasst werden, und jede Anzahl der beschriebenen Operationen kann in jeder Reihenfolge kombiniert und/oder parallel ausgeführt werden, um den Prozess umzusetzen. Zu Erörterungszwecken werden die Prozesse 300 und 400 unter Bezugnahme auf die Architektur 100 von 1 beschrieben.
  • In dem Anrufablauf 300 interagiert ein Benutzer (z.B. Bediener der Benutzereinheit 102) mit einem Sicherheitsserver 120, um Zugang zu den Ressourcen zu erhalten, die durch den Sicherheitsserver 120 geschützt werden. Zum Beispiel kann die Benutzereinheit 102 sichere Daten aus dem Sicherheitsserver 120, der in Hardware oder Software gespeichert sein kann, abrufen oder in sichere Daten in diesem speichern. Um einen Zugang zu den Ressourcen bereitzustellen, die durch den Sicherheitsserver 120 geschützt sind, wird die Benutzereinheit 102 von dem Sicherheitsserver durch einen im Folgenden beschriebenen Prozess einer Anforderungsreaktion authentifiziert.
  • In Schritt 312 sendet die Benutzereinheit 102 eine vordefinierte Zahl (s) an den Sicherheitsserver 120, die durch den Sicherheitsserver 120 in einem entsprechenden Arbeitsspeicher gespeichert werden kann. In verschiedenen Ausführungsformen kann die vordefinierte Zahl eine Identifizierungsnummer (z.B. Code) der Benutzereinheit 102 sein. In einer Ausführungsform erfolgt die Datenübertragung in Schritt 312 über einen Kanal, bei dem es sich nicht um PSTN handelt. PSTN betrifft typischerweise einen Fernsprechdienst Telefondienst und umfasst Telefonleitungen, Mikrowellen-Übertragungsverbindungen, Mobilfunknetzwerke usw. Anstelle von PSTN wird eine Technologie wie zum Beispiel Internet-Protokoll-Telefonie und Transmission Control Protocol/Internet Protocol (TCP/IP) verwendet. Der TCP/IP-Kanal ist ein allgemeines Internet-Protokoll für PC, Tablet, IOT und andere Einheiten. Dementsprechend kann die Datenübertragung von dem Sicherheitsserver 120 über eine WEB-Site empfangen werden.
  • Zum Beispiel kann die vordefinierte Zahl (s) eine Identifizierungsnummer einer Benutzereinheit 102 und/oder eine biometrische Kennung des Benutzers sein (wodurch eine Schicht von Hardware-Schutz bereitgestellt wird). In einer Ausführungsform wird die vordefinierte Zahl (s), auf die hierin manchmal als Parameter verwiesen wird, bei dem Sicherheitsserver 120 durch ein physisches Besuchen einer lokalen Verzweigung des privaten Netzwerks 108, wie zum Beispiel eine Bank, und ein Bereitstellen der Identifizierungsnummer der Benutzereinheit 102 als einen ersten Parameter (s) registriert. Zum Beispiel kann der Benutzer den Parameter (s) über ein Endgerät an der lokalen Verzweigung des privaten Netzwerks 108 des Sicherheitsservers 120 manuell eingeben. In anderen Szenarios kann der Benutzer die Benutzereinheit 102 verwenden, um die Informationen über eine Nahbereichs-Datenübertragungstechnologie wie z.B. Bluetooth, WLAN, Nahfeldkommunikation (NFC (Near Field Communication)) oder eine andere geeignete, ausreichend sichere Datenübertragungstechnologie zu übertragen. In einer Ausführungsform interagiert der Sicherheitsserver 120 mit einer Profildatenbank 110, um die vordefinierte Zahl (s) in der Profildatenbank zu speichern, um später eine erste Faktor-Authentifizierung eines Benutzers bereitzustellen.
  • In Schritt 313 empfängt der Sicherheitsserver 120 eine Anforderung für eine Ressource des privaten Netzwerks 108. Zum Beispiel möchte ein Bediener der Benutzereinheit 102 Informationen in einem Daten-Repository 112 des privaten Netzwerks 108 speichern oder aus diesem abrufen.
  • In Schritt 314 erstellt der Sicherheitsserver 120 eine erste Zahl (p), auf die hierin manchmal als ein erster Anforderungscode verwiesen wird, und eine zweite Zahl (g). In einer Ausführungsform ist die erste Zahl (p) eine Primzahl. Die erste Zahl (p) wird in Reaktion auf eine Authentifizierungsanforderung von der Benutzereinheit 102 an die Benutzereinheit 102 gesendet. In einer Ausführungsform wird die erste Zahl (p) über einen PSTN-Kanal oder über https (oder ein anderes WEB-Protokoll) gesendet.
  • In Schritt 316 erstellt der Sicherheitsserver 120 eine zweite Zahl (g). In einer Ausführungsform ist die zweite Zahl (g) kleiner als die erste Zahl (p) (z.B. 2 oder 5). Es wird angemerkt, dass die zweite Zahl (Parameter) g durch die Rechenleistung von Datenverarbeitungseinheiten begrenzt sein kann. Anders ausgedrückt, wenn g zu groß ist, ist es schwierig (wenn nicht nahezu unmöglich), die Ergebnisse aus den hierin bereitgestellten Gleichungen zu berechnen. In einer Ausführungsform ist g eine Primzahl. Mit zunehmender Rechenleistung kann der Parameter p eine Primzahl sein, die größer als 5 ist. Der Sicherheitsserver 120 erstellt auch einen Anforderungscode (c), auf den hierin manchmal als der zweite Anforderungscode verwiesen wird. In einer Ausführungsform ist der Anforderungscode (c) eine Zahl, die größer als die zweite Zahl (g) ist. In einer Ausführungsform ändert sich der Anforderungscode (c) nach jeder erfolgreichen Überprüfung einer Benutzereinheit 102.
  • Der Sicherheitsserver bestimmt einen ersten diskreten Logarithmus auf Grundlage des Anforderungscodes (c) und der ersten Zahl (p). Der erste diskrete Logarithmus wird durch den folgenden Ausdruck bereitgestellt: Erster diskreter Logarithmus ( g c  mod p )
    Figure DE112018006443T5_0001
  • Der erste diskrete Logarithmus auf Grundlage des vorgenannten Ausdrucks wird über einen Kanal, der sich von dem der Übertragung der ersten Zahl (p) in Schritt 314 unterscheidet, an die Benutzereinheit 102 gesendet. Zum Beispiel kann der Parameter p per SMS übertragen werden. Dementsprechend kennt der Sicherheitsserver 120 jetzt die Parameter s, p, g und c, wie durch Block 330 angegeben. Die Parameter g und c werden nicht explizit zu der Benutzereinheit 102 übertragen. Dementsprechend kennt die Benutzereinheit 102 nur die Parameter s und p, wie durch Block 332 angegeben.
  • In Schritt 318 und 320 berechnen sowohl der Sicherheitsserver 120 als auch die Benutzereinheit 102 jeweils den ersten Zugangscode R über einen zweiten diskreten Logarithmus auf Grundlage des ersten diskreten Logarithmus, der vordefinierten Zahl (s) und der ersten Zahl (p). In verschiedenen Ausführungsformen kann die Berechnung durch den Sicherheitsserver 120 und die Benutzereinheit 102 gleichzeitig (z.B. um Zeit zu sparen) oder nacheinander ausgeführt werden. In einer Ausführungsform wird der zweite diskrete Logarithmus durch den folgenden Ausdruck bereitgestellt: Zugangscode R = Zweiter diskreter Logarithmus ( g c  mod p ) s mod p
    Figure DE112018006443T5_0002
  • Dementsprechend kann der Sicherheitsserver 120 den Zugangscode R (d.h. einen ersten Zugangscode R1) berechnen, da er über alle relevanten Parameter (d.h. s, p, g und c) des zweiten diskreten Algorithmus verfügt. Da die Benutzereinheit 102 den ersten diskreten Logarithmus vorher von dem Sicherheitsserver 120 erhalten hat und die Parameter s und p kennt, kann sie den Zugangscode R bestimmen (d.h. als zweiten Zugangscode R2).
  • In Schritt 322 empfängt der Sicherheitsserver 120 den zweiten Zugangscode R2 von der Benutzereinheit 102 und vergleicht ihn mit dem ersten Zugangscode R1, der berechnet wurde. Wenn bestimmt worden ist, dass der erste Zugangscode R1 mit dem zweiten Zugangscode R2 identisch ist, stellt der Sicherheitsserver 120 der Benutzereinheit 102 Zugang zu der angeforderten Ressource des Sicherheitsservers 120 bereit. Zum Beispiel kann der Sicherheitsserver 120 jetzt geschützte Daten von einem Daten-Repository 112 abrufen und sie über das Netzwerk 106 an die Benutzereinheit 102 senden.
  • Wenn bestimmt worden ist, dass der erste Zugangscode R1 nicht mit dem zweiten Zugangscode R2 identisch ist, identifiziert der Sicherheitsserver 120 die Benutzereinheit 102 als nicht autorisiert. In einer Ausführungsform sendet der Sicherheitsserver 120 eine Alert-Benachrichtigung an einen entsprechenden Empfänger.
  • Dementsprechend werden die Parameter g und c in dem Modus der Anforderungsreaktion des Prozesses 300 durch den Sicherheitsserver 120 geheim gehalten. Der Zugangscode R1 bleibt vor böswilligen Parteien sicher, es sein denn, alle drei Parameter p, s und c sind kompromittiert. Ferner können verschiedene Datenübertragungskanäle für die Übertragung von einigen der Parameter während des Authentifizierungsprozesses verwendet werden. Ein derartiger Ansatz führt zu einer drastischen Erhöhung der Schwierigkeit für eine böswillige Partei, das System der Architektur zu kompromittieren.
  • Im Folgenden wird auf 4 Bezug genommen, die einen Anrufablauf 400 in dem Kontext eines interaktiven Modus zwischen einem Sicherheitsserver 120 und einer Benutzereinheit 102 veranschaulicht, der mit einer veranschaulichenden Ausführungsform in Einklang steht. In dem Anrufablauf 400 interagiert ein Benutzer mit einem Sicherheitsserver 120, um Zugriff auf Ressourcen zu erhalten, die durch den Sicherheitsserver 120 geschützt werden. Um Zugriff auf die Ressourcen bereitzustellen, die durch den Sicherheitsserver 120 geschützt sind, wird die Benutzereinheit 102 durch den Sicherheitsserver 120 mittels eines Prozesses eines interaktiven Modus authentifiziert.
  • In Schritt 410 sendet die Benutzereinheit 102 eine vordefinierte Zahl (p) an den Sicherheitsserver 120, die durch den Sicherheitsserver 120 in einem entsprechenden Arbeitsspeicher des privaten Netzwerks 108 gespeichert werden kann. In einer Ausführungsform erfolgt die Datenübertragung in Schritt 412 über einen Kanal, bei dem es sich nicht um PSTN handelt. Zum Beispiel wird eine Technologie wie TCP/IP aus Gründen der Datensicherheit verwendet. Dementsprechend kann die Datenübertragung von dem Sicherheitsserver 120 über eine WEB-Site empfangen werden. In anderen Ausführungsformen kann die vordefinierte Zahl (s) eine Identifizierungsnummer einer Benutzereinheit 102 und/oder eine biometrische Kennung des Benutzers sein (wodurch eine Schicht von Hardware-Schutz bereitgestellt wird).
  • In einer Ausführungsform wird die vordefinierte Zahl (p), auf die hierin manchmal als erster Parameter (p) verwiesen wird, an dem Sicherheitsserver 120 durch ein physisches Besuchen einer lokalen Verzweigung des privaten Netzwerks 108, wie zum Beispiel eine Bank, und ein Bereitstellen der Identifizierungsnummer der Benutzereinheit 102 als ersten Parameter (p) registriert. Zum Beispiel kann der Benutzer den Parameter (p) über ein Endgerät an der lokalen Verzweigung des privaten Netzwerks 108 des Sicherheitsservers 120 manuell eingeben. In anderen Szenarios kann der Benutzer die Benutzereinheit 102 verwenden, um die Informationen ihrer vordefinierten Zahl (p) über eine Nahbereichs-Datenübertragungstechnologie wie z.B. Bluetooth, WLAN, NFC usw. zu übertragen.
  • In Schritt 412 empfängt der Sicherheitsserver 120 eine Anforderung für eine Ressource des privaten Netzwerks 108. Zum Beispiel möchte ein Bediener der Benutzereinheit 102 Informationen in einem Daten-Repository 112 des privaten Netzwerks 108 speichern oder aus diesem abrufen.
  • In Schritt 414 erstellt der Sicherheitsserver 120 eine erste Zahl (c) und eine zweite Zahl (g). In einer Ausführungsform ist die erste Zahl (c) größer als die zweite Zahl (g). Der Sicherheitsserver 120 bestimmt einen ersten diskreten Logarithmus auf Grundlage der ersten Zahl (c), der zweiten Zahl (g) und der vordefinierten großen Zahl (p). Der erste diskrete Logarithmus wird durch den folgenden Ausdruck bereitgestellt: Erster diskreter Logarithmus ( g c  mod p )
    Figure DE112018006443T5_0003
  • Die zweite Zahl (g) und der erste diskrete Logarithmus werden in Reaktion auf die Anforderung für eine Ressource des privaten Netzwerks 108 von der Benutzereinheit 120 an die Benutzereinheit 102 gesendet. In einer Ausführungsform werden sowohl die zweite Zahl (g) als auch der erste diskrete Logarithmus in einem selben digitale Datenpaket über einen PSTN-Kanal oder über https (oder ein anderes WEB-Protokoll) gesendet.
  • In Schritt 416 generiert die Benutzereinheit 102 eine dritte Zahl (s). In einer Ausführungsform ist die dritte Zahl (s) größer als die zweite Zahl (g). Die Benutzereinheit 102 bestimmt auch einen zweiten diskreten Logarithmus auf Grundlage der empfangenen zweiten Zahl (g), der generierten dritten Zahl (s) und der vordefinierten Zahl (p). Der zweite diskrete Logarithmus wird durch den folgenden Ausdruck bereitgestellt: Zweiter diskreter Logarithmus ( g s  mod p )
    Figure DE112018006443T5_0004
  • Der zweite diskrete Logarithmus auf Grundlage des obigen Ausdrucks wird von dem Sicherheitsserver 120 von der Benutzereinheit 102 empfangen.
  • In Schritt 418 und 420 berechnen der Sicherheitsserver 120 und die Benutzereinheit 102 jeweils einen ersten Zugangscode R1 und einen zweiten Zugangscode R2. Der erste Zugangscode R1, der durch den Sicherheitsserver 120 bestimmt wird, beruht auf dem zweiten diskreten Logarithmus (empfangen von der Benutzereinheit 102 in Schritt 416), der ersten Zahl (c) und der vordefinierten Zahl (p), die in Schritt 410 empfangen wurde. In dem zweiten Zugangscode ist der Parameter (s) inhärent, der durch den zweiten diskreten Logarithmus verschleiert wird. In einer Ausführungsform wird der erste Zugangscode R1 durch den Ausdruck des im Folgenden angegebenen dritten diskreten Logarithmus bereitgestellt: Erster Zugangscode R 1 = Dritter diskreter Logarithmus ( g s  mod p ) c mod p
    Figure DE112018006443T5_0005
  • Im Gegensatz dazu beruht der zweite Zugangscode R2, der durch die Benutzereinheit 102 bestimmt wird, auf dem ersten diskreten Logarithmus (empfangen von dem Sicherheitsserver 120 in Schritt 414), der dritten Zahl (s) und der vordefinierten Zahl (p). In einer Ausführungsform beruht der zweite Zugangscode R2 auf dem Ausdruck des im Folgenden bereitgestellten vierten diskreten Logarithmus. Zweiter Zugangscode R 2 = Vierter diskreter Logarithmus ( g c  mod p ) s  mod p
    Figure DE112018006443T5_0006
  • In Schritt 422 empfängt der Sicherheitsserver 120 den zweiten Zugangscode R2 von der Benutzereinheit 102 und vergleicht ihn mit dem ersten Zugangscode R1, der vorher berechnet wurde. Nach einem Bestimmen, dass der erste Zugangscode R1 mit dem zweiten Zugangscode R2 identisch ist, stellt der Sicherheitsserver 120 der Benutzereinheit 102 Zugang zu der angeforderten Ressource des privaten Netzwerks 108 bereit. Zum Beispiel kann der Sicherheitsserver 120 jetzt geschützte Daten von einem Daten-Repository 112 abrufen und sie über das Netzwerk 106 an die Benutzereinheit 102 senden.
  • Wenn bestimmt worden ist, dass der erste Zugangscode R1 nicht mit dem zweiten Zugangscode R2 identisch ist, identifiziert der Sicherheitsserver 120 die Benutzereinheit 102 als nicht autorisiert. In einer Ausführungsform sendet der Sicherheitsserver 120 eine Alert-Benachrichtigung an einen entsprechenden Empfänger.
  • Dementsprechend wird der Parameter c in dem interaktiven Modus des Prozesses 400 durch den Sicherheitsserver 120 geheim gehalten. Der erste und der zweite Zugangscode R1 and R2 bleiben vor böswilligen Parteien sicher. Da ferner verschiedene Datenübertragungskanäle für die Übertragung von einigen der Parameter während des Authentifizierungsprozesses verwendet werden können, führt dies zu einer drastischen Erhöhung der Schwierigkeit für eine böswillige Partei, das System der Architektur 100 zu kompromittieren.
  • Beispielhafte Computerplattform
  • Wie oben erörtert, können Funktionen in Bezug auf ein Bereitstellen einer sicheren Multifaktor-Authentifizierung unter Verwendung von einer oder mehreren Datenverarbeitungseinheiten ausgeführt werden, die zur Datenübertragung über drahtlose oder drahtgebundene Datenübertragung verbunden sind, wie in 1 und gemäß den Anrufabläufen 300 und 400 von 3 und 4 gezeigt. Eine beispielhafte Datenverarbeitungseinheit in Form einer Benutzereinheit 200 wurde oben unter Bezugnahme auf 2 erörtert. 5 stellt eine Veranschaulichung eines funktionsbezogenen Blockschaubilds einer Computer-Hardwareplattform bereit, die fähig ist, eine sichere Multifaktor-Authentifizierung bereitzustellen. Insbesondere veranschaulicht 5 ein Netzwerk oder eine Host-Computerplattform 500, die zum Umsetzen eines Servers verwendet werden kann, wie zum Beispiel der Sicherheitsserver 120 von 1.
  • Die Computerplattform 500 kann eine Zentraleinheit (CPU) 504, ein Festplattenlaufwerk (HDD) 506, einen Direktzugriffspeicher (RAM) und/oder einen Nur-Lese-Speicher (ROM) 508, eine Tastatur 510, eine Maus 512, eine Anzeige 514 und eine Datenübertragungsschnittstelle 516 enthalten, die mit einem Systembus 502 verbunden sind.
  • In einer Ausführungsform besitzt das HDD 506 Fähigkeiten, die ein Speichern eines Programms umfassen, das verschiedene Prozesse, wie zum Beispiel ein Sicherheits-Agent 540, auf eine hierin beschriebene Weise ausführen kann. Für den Sicherheits-Agent 540 können verschiedene Module zum Ausführen von unterschiedlichen Funktionen konfiguriert sein.
  • Zum Beispiel kann ein Interaktionsmodul 542 vorhanden sein, das betreibbar ist, um Anforderungen für Ressourcen eines privaten Netzwerks von Benutzereinheiten zu empfangen. Das Interaktionsmodul 542 kann auch verschiedene Parameter von Benutzereinheiten empfangen und Parameter an diese senden. Das Interaktionsmodul 542 kann auch mit einer Profildatenbank interagieren, um Profilinformationen über einen Benutzer als einen ersten Schritt in einem Multifaktor-Authentifizierungsprozess abzurufen. In Ausführungsformen, in denen sich die Daten, die geschützt werden sollen, in einem separaten Daten-Repository befinden, kann das Interaktionsmodul mit einem derartigen Repository Daten austauschen, um die relevanten Daten aus dem Daten-Repository abzurufen und sie an den entsprechenden Benutzer zu senden, wenn bestätigt worden ist, dass der Benutzer autorisiert ist.
  • In einer Ausführungsform ist ein Berechnungsmodul 546 vorhanden, das betreibbar ist, um verschiedene diskrete Logarithmen und Zugangscodes während eines Authentifizierungsprozesses zu berechnen. Das Berechnungsmodul 546 kann auch zu einem Bestimmen verwendet werden, ob ein erster Zugangscode R1 mit einem zweiten Zugangscode R2 identisch ist.
  • In einer Ausführungsform ist ein Anforderungscode-Modul 548 vorhanden, das betreibbar ist, um verschiedene Anforderungscodes während eines Authentifizierungsprozesses zu generieren. In einer Ausführungsform ändert sich der Anforderungscode nach jeder Transaktion mit einem autorisierten Benutzer. Anders ausgedrückt, ein Anforderungscode ist nach jeder erfolgreichen Interaktion mit einem autorisierten Benutzer aufgebraucht.
  • In einer Ausführungsform ist ein Autorisierungsmodul 550 vorhanden, das betreibbar ist, um einem Bediener einer Benutzereinheit zu ermöglichen, Ressourcen eines privaten Netzwerks 108 zu empfangen, wenn bestimmt worden ist, dass der durch die Benutzereinheit bereitgestellte Zugangscode einem Zugangscode entspricht, der durch den Sicherheits-Agent berechnet worden ist.
  • In einer Ausführungsform ist ein Benachrichtigungsmodul 556 vorhanden, das betreibbar ist, um einen entsprechenden Empfänger nach einem Bestimmen zu warnen, dass ein Benutzer, der Zugriff auf ein privates Netzwerk anfordert, nicht autorisiert ist. Ein entsprechender Empfänger kann der Account-Inhaber (d.h. Benutzer), ein IT-Administrator des privaten Netzwerks, ein Sicherheits-Agent des privaten Netzwerks usw. sein.
  • In einer Ausführungsform kann ein Programm wie zum Beispiel Apache™ zum Betreiben des Systems als ein Web-Server gespeichert werden. In einer Ausführungsform kann das HDD 506 eine ausführende Anwendung speichern, die ein oder mehrere Bibliotheks-Softwaremodule enthält, wie diejenigen für das Java™-Programm Runtime Environment zum Verwirklichen einer JVM (virtuelle Maschine von Java™).
  • Schlussfolgerung
  • Die Beschreibungen der verschiedenen Ausführungsformen der vorliegenden Lehren wurden zum Zweck der Veranschaulichung erstellt, sie sollen aber keineswegs erschöpfend oder auf die offenbarten Ausführungsformen eingeschränkt sein. Für Fachleute sind viele Modifizierungen und Variationen offenkundig, die nicht von dem Schutzumfang der beschriebenen Ausführungsformen abweichen. Die hierin verwendete Terminologie wurde gewählt, um die Grundgedanken der Ausführungsformen, der praktischen Anwendung oder technischen Verbesserung gegenüber auf dem Markt gefundenen Technologien bestmöglich zu erklären oder anderen Fachleuten das Verständnis der hierin offenbarten Ausführungsformen zu ermöglichen.
  • Die obigen Ausführungen wurden unter Berücksichtigung dessen, was als bester Zustand erachtet wurde und/oder anderen Beispielen beschrieben, doch sollte klar sein, dass verschiedene Modifizierungen vorgenommen werden können, und dass die hierin offenbarte Thematik in verschiedenen Formen und Beispielen umgesetzt werden kann, und dass die Lehren auf zahlreiche Anwendungsmöglichkeiten angewendet werden können, von denen nur einige hierin beschrieben wurden. Sämtliche Anwendungen, Modifizierungen und Variationen, die unter den zutreffenden Schutzumfang der vorliegenden Lehren fallen, sollen durch die folgenden Ansprüche beansprucht werden.
  • Die Komponenten, Schritte, Funktionen, Aufgaben, Nutzen und Vorteile, die hierin erörtert wurden, dienen nur zur Veranschaulichung. Weder sie noch die zugehörigen Erörterungen sollen den Umfang des Patentschutzes einschränken. Obwohl hierin verschiedene Vorteile erörtert worden sind, sollte klar sein, dass nicht alle Ausführungsformen notwendigerweise alle Vorteile aufweisen. Sofern nicht anders angegeben, sind alle Maßangaben, Werte, Bewertungen, Positionen, Größenordnungen, Größen und andere technische Daten, die in dieser Patentschrift einschließlich der folgenden Ansprüche dargelegt werden, ungefähre und keine exakten Angaben. Sie sollen einen sinnvollen Bereich angeben, der mit den Funktionen, auf die sie sich beziehen und mit dem in Einklang steht, was im Stand der Technik, zu dem sie gehören, üblich ist.
  • Zahlreiche andere Ausführungsformen werden ebenfalls in Erwägung gezogen. Diese umfassen Ausführungsformen mit weniger, zusätzlichen und/oder verschiedenen Komponenten, Schritten, Funktionen, Aufgaben, Nutzen und Vorteilen. Diese umfassen auch Ausführungsformen, in denen die Komponenten und/oder Schritte angeordnet und/oder anders angeordnet sind.
  • Aspekte der vorliegenden Offenbarung werden hierin unter Bezugnahme auf eine Veranschaulichung eines Ablaufplans und/oder Blockschaubilds eines Verfahrens, einer Vorrichtung (Systemen) und von Computerprogrammprodukten gemäß Ausführungsformen der vorliegenden Offenbarung beschrieben. Es sollte klar sein, dass jeder Block der Ablaufplanveranschaulichungen und/oder der Blockschaubilder und Kombinationen von Blöcken in den Ablaufplanveranschaulichungen und/oder den Blockschaubildern mittels durch einen Computer lesbare Programmanweisungen umgesetzt werden können.
  • Diese durch einen Computer lesbaren Programmanweisungen können einem Prozessor eines Universalcomputers, eines Spezialcomputers oder einer anderen programmierbaren Datenverarbeitungsvorrichtung bereitgestellt werden, um eine Maschine zu erzeugen, sodass die über den Prozessor des Computers bzw. eine andere programmierbare Datenverarbeitungsvorrichtung ausgeführten Anweisungen ein Mittel zur Umsetzung der in dem Block bzw. den Blöcken der Ablaufpläne und/oder der Blockschaubilder angegebenen Funktionen/Schritte erzeugen. Diese durch einen Computer lesbaren Programmanweisungen können auch auf einem durch einen Computer lesbaren Speichermedium gespeichert sein, das einen Computer, eine programmierbare Datenverarbeitungsvorrichtung und/oder andere Einheiten so steuern kann, dass sie auf eine Art und Weise funktionieren, sodass das durch einen Computer lesbare Speichermedium, auf dem Anweisungen gespeichert sind, ein Herstellungsprodukt aufweist, darunter Anweisungen, die Aspekte der/des in dem Block bzw. den Blöcken des Ablaufplans und/oder der Blockschaubilder angegebenen Funktion/Schritts umsetzen.
  • Die durch einen Computer lesbaren Programmanweisungen können auch auf einen Computer, eine andere programmierbare Datenverarbeitungsvorrichtung oder eine andere Einheit geladen werden, um das Ausführen einer Reihe von Arbeitsschritten auf dem Computer bzw. der anderen programmierbaren Vorrichtung oder anderen Einheit zu verursachen, um einen durch einen Computer umgesetzten Prozess zu erzeugen, sodass die auf dem Computer, einer anderen programmierbaren Vorrichtung oder einer anderen Einheit ausgeführten Anweisungen die in dem Block bzw. den Blöcken der Ablaufpläne und/oder der Blockschaubilder angegebenen Funktionen/Schritte umsetzen.
  • Der Ablaufplan und die Blockschaubilder in den FIGUREN hierin veranschaulichen die Architektur, die Funktionalität und den Betrieb von möglichen Umsetzungen von Systemen, Verfahren und Computerprogrammprodukten gemäß verschiedenen Ausführungsformen der vorliegenden Offenbarung. In diesem Zusammenhang kann jeder Block in den Ablaufplänen oder den Blockschaubildern ein Modul, ein Segment oder einen Teil von Anweisungen darstellen, die eine oder mehrere ausführbare Anweisungen zum Umsetzen der bestimmten logischen Funktion(en) aufweisen. In einigen alternativen Umsetzungen können die in dem Block angegebenen Funktionen in einer anderen Reihenfolge als in den Figuren gezeigt auftreten. Zum Beispiel können zwei nacheinander gezeigte Blöcke tatsächlich im Wesentlichen parallel ausgeführt werden, oder die Blöcke können manchmal in der umgekehrten Reihenfolge ausgeführt werden, was von der beteiligten Funktionalität abhängt. Es ist ferner anzumerken, dass jeder Block der Blockschaubilder und/oder der Ablaufplandarstellungen sowie Kombinationen von Blöcken in den Blockschaubildern und/oder der Ablaufplandarstellung durch spezielle auf Hardware beruhende Systeme umgesetzt werden können, welche die angegebenen Funktionen oder Handlungen durchführen oder Kombinationen aus Spezial-Hardware und Computeranweisungen ausführen.
  • Zwar wurden die obigen Ausführungen in Verbindung mit beispielhaften Ausführungen beschrieben, doch sollte klar sein, dass der Begriff „beispielhaft“ nur als ein Beispiel und nicht als das Beste oder Optimale zu verstehen ist. Mit Ausnahme der unmittelbar vorhergehenden Ausführungen ist nichts von dem, was angegeben oder veranschaulicht worden ist, als Interpretation aufzufassen oder sollte so interpretiert werden, dass dies zu einem Verzicht auf jede Komponente, jeden Schritt, jede Funktion, jede Aufgabe, jeden Nutzen, jeden Vorteil oder jede Entsprechung für die Öffentlichkeit führt, ohne Berücksichtigung dessen, ob eine Erwähnung in den Ansprüchen vorliegt.
  • Es sollte klar sein, dass die hierin verwendeten Begriffe und Ausdrücke die gewöhnliche Bedeutung von derartigen Begriffen und Ausdrücken in Bezug auf ihre jeweiligen Fachgebiete und Studienbereiche haben, ausgenommen in Fällen, in denen spezielle Bedeutungen für sie hierin dargelegt worden sind. Beziehungsbegriffe wie zum Beispiel erste/r/s und zweite/r/s und dergleichen können allein zum Unterscheiden einer Entität oder Aktion von einer anderen verwendet werden, ohne dass notwendigerweise irgendeine tatsächliche derartige Beziehung oder Reihenfolge zwischen derartigen Entitäten oder Aktionen erforderlich ist oder impliziert wird. Die Begriffe „weist auf“, „aufweisend“ oder jede andere Variation davon sollen eine nicht ausschließende Einbeziehung abdecken, sodass ein Prozess, Verfahren, Artikel oder eine Vorrichtung, die eine Liste von Elemente aufweisen, nicht nur diese Elemente enthalten, sondern auch andere Elemente enthalten können, die nicht ausdrücklich aufgeführt oder einem solchen Prozess, Verfahren, Artikel oder einer solchen Vorrichtung inhärent sind. Ein Element mit einem vorangestellten „ein/eine“ schließt ohne weitere Einschränkungen das Vorhandensein von weiteren identischen Elementen in dem Prozess, Verfahren, Artikel oder der Vorrichtung nicht aus, die das Element aufweisen.
  • Die Zusammenfassung der Offenbarung wird bereitgestellt, um dem Leser schnell die Natur der technischen Offenbarung zu vermitteln. Sie wird mit dem Verständnis unterbreitet, dass sie nicht für eine Interpretation oder Einschränkung des Schutzumfangs oder der Bedeutung der Ansprüche verwendet wird. Des Weiteren ist aus der vorstehenden Ausführlichen Beschreibung ersichtlich, dass in verschiedenen Ausführungsformen verschiedene Funktionen zur Straffung der Offenbarung zusammengefasst worden sind. Dieses Offenbarungsverfahren soll keinesfalls als eine Absicht interpretiert werden, dass die beanspruchten Ausführungsformen mehr Funktionen haben als ausdrücklich in jedem Anspruch zitiert. Stattdessen, wie durch die folgenden Ansprüche wiedergegeben, ist der Erfindungsgegenstand in weniger als allen Funktionen einer einzelnen offenbarten Ausführungsform vorhanden. Somit werden die folgenden Ansprüche hiermit in die „Ausführliche Beschreibung“ aufgenommen, wobei jeder Anspruch für sich selbst als separat beanspruchter Gegenstand steht.

Claims (27)

  1. Datenverarbeitungseinheit, aufweisend: einen Prozessor; eine Netzwerkschnittstelle, die mit dem Prozessor verbunden ist, um eine Datenübertragung über ein Netzwerk zu ermöglichen; eine Speichereinheit, die mit dem Prozessor verbunden ist; eine Software eines Sicherheits-Agents, die in der Speichereinheit gespeichert ist, wobei eine Ausführung der Software durch den Prozessor die Datenverarbeitungseinheit zum Ausführen von Handlungen konfiguriert, die aufweisen: Empfangen einer Anforderung für eine Ressource von einer Benutzereinheit; Empfangen einer vordefinierten Zahl (s) von der Benutzereinheit; Erstellen einer ersten Zahl (p); Senden der ersten Zahl (p) an die Benutzereinheit; Erstellen eines Anforderungscodes (c); Bestimmen eines ersten diskreten Logarithmus auf Grundlage des Anforderungscodes (c) und der ersten Zahl (p); Senden des ersten diskreten Logarithmus an die Benutzereinheit; Berechnen eines ersten Zugangscodes (R1) über einen zweiten diskreten Logarithmus auf Grundlage des ersten diskreten Logarithmus, der vordefinierten Zahl (s) und der ersten Zahl (p); Empfangen eines zweiten Zugangscodes (R2) auf Grundlage des zweiten diskreten Logarithmus von der Benutzereinheit; Vergleichen des ersten Zugangscodes (R1) mit dem zweiten Zugangscode (R2); und nach einem Bestimmen, dass der erste Zugangscode (R1) mit dem zweiten Zugangscode (R2) identisch ist, Zulassen, dass die Benutzereinheit zu der Ressource Zugang erhält.
  2. Datenverarbeitungseinheit nach Anspruch 1, wobei die vordefinierte Zahl (s) eine Identifizierungs-(ID)-Nummer der Benutzereinheit ist.
  3. Datenverarbeitungseinheit nach einem der vorhergehenden Ansprüche, wobei die vordefinierte Zahl (s) über einen Hypertext-Transfer-Protocol-Secure-(HTTPS)-Kanal empfangen wird.
  4. Datenverarbeitungseinheit nach einem der vorhergehenden Ansprüche, ferner aufweisend ein Erstellen einer zweiten Zahl (g), wobei: die erste Zahl (p) eine Primzahl ist; die erste Zahl (p) größer als die zweite Zahl (g) ist; die zweite Zahl (g) 2 oder 5 ist.
  5. Datenverarbeitungseinheit nach einem der vorhergehenden Ansprüche, wobei das Senden der ersten Zahl (p) an die Benutzereinheit über einen Kanal eines öffentlichen Fernsprechwählnetzes (PSTN (Public Switched Telephone Network)) erfolgt.
  6. Datenverarbeitungseinheit nach einem der vorhergehenden Ansprüche, wobei der Empfang der vordefinierten Zahl (s) durch die Datenverarbeitungseinheit über einen Kanal erfolgt, der sich von demjenigen zum Senden der ersten Zahl (p) an die Benutzereinheit unterscheidet.
  7. Datenverarbeitungseinheit nach einem der vorhergehenden Ansprüche, wobei der erste diskrete Logarithmus auf (gc mod p) beruht.
  8. Datenverarbeitungseinheit nach Anspruch 7, wobei der zweite diskrete Logarithmus auf ((gc mod p)s mod p) beruht.
  9. Datenverarbeitungseinheit nach einem der vorhergehenden Ansprüche, wobei die Ausführung des Sicherheits-Agents durch den Prozessor ferner die Datenverarbeitungseinheit zum Ausführen von Handlungen konfiguriert, aufweisend: nach einem Bestimmen, dass der erste Zugangscode (R1) nicht mit dem zweiten Zugangscode (R2) identisch ist, Senden einer Warnmeldung an einen Account eines Benutzers, der der angeforderten Ressource zugehörig ist.
  10. Datenverarbeitungseinheit nach einem der vorhergehenden Ansprüche, wobei die Ausführung des Sicherheits-Agents durch den Prozessor die Datenverarbeitungseinheit ferner zum Ausführen von Handlungen konfiguriert, aufweisend: nach einem Bestimmen, dass der erste Zugangscode (R1) mit dem zweiten Zugangscode (R2) identisch ist, Ändern des Anforderungscodes.
  11. Datenverarbeitungseinheit, aufweisend: einen Prozessor; eine Netzwerkschnittstelle, die mit dem Prozessor verbunden ist, um eine Datenübertragung über ein Netzwerk zu ermöglichen; eine Speichereinheit, die mit dem Prozessor verbunden ist; eine Sicherheitsanwendung, die in der Speichereinheit gespeichert ist, wobei eine Ausführung der Software durch den Prozessor die Datenverarbeitungseinheit konfiguriert, um Handlungen auszuführen, die aufweisen: ein Senden einer Anforderung für eine Ressource von einer Datenverarbeitungseinheit an einen Server; Senden einer vordefinierten Zahl (s) an den Server; Empfangen einer ersten Zahl (p) von dem Server; Empfangen eines ersten diskreten Logarithmus auf Grundlage eines Anforderungscodes (c) und der ersten Zahl (p) und einer zweiten Zahl (g) von dem Server; Berechnen eines zweiten Zugangscodes (R2) auf Grundlage eines zweiten diskreten Logarithmus auf Grundlage des ersten diskreten Logarithmus, der vordefinierten Zahl (s) und der ersten Zahl (p): Senden des zweiten Zugangscodes (R2) an den Server für einen Vergleich mit einem ersten Zugangscode (R1); und Erhalten von Zugang zu der Ressource, wenn der zweite Zugangscode (R2) mit dem ersten Zugangscode (R1) übereinstimmt.
  12. Datenverarbeitungseinheit nach Anspruch 11, wobei die vordefinierte Zahl (s) eine Identifizierungs-(ID)-Nummer der Benutzereinheit ist.
  13. Datenverarbeitungseinheit nach einem der Ansprüche 11 oder 12, wobei: die vordefinierte Zahl (s) über einen Hypertext-Transfer-Protocol-Secure-(HTTPS)-Kanal gesendet wird; die erste Zahl (p) eine Primzahl ist; und die erste Zahl (p) größer als die zweite Zahl (g) ist.
  14. Datenverarbeitungseinheit nach einem der Ansprüche 11 bis 13, wobei das Senden der vordefinierten Zahl (s) durch die Datenverarbeitungseinheit über einen Kanal erfolgt, der sich von demjenigen zum Empfangen der ersten Zahl (p) von der Benutzereinheit unterscheidet.
  15. Datenverarbeitungseinheit nach einem der Ansprüche 11 bis 14, wobei: der erste diskrete Logarithmus auf (gc mod p) beruht; und der zweite diskrete Logarithmus auf ((gc mod p)s mod p) beruht.
  16. Verfahren zum Schützen von Daten, wobei das Verfahren aufweist: Empfangen einer Anforderung einer Ressource von einer Benutzereinheit; Empfangen einer vordefinierten Zahl (s) von der Benutzereinheit; Erstellen einer ersten Zahl (p); Senden der ersten Zahl (p) an die Benutzereinheit; Erstellen eines Anforderungscodes (c); Bestimmen eines ersten diskreten Logarithmus auf Grundlage des Anforderungscodes (c) und der ersten Zahl (p); Senden des ersten diskreten Logarithmus an die Benutzereinheit; Berechnen eines ersten Zugangscodes (R1) über einen zweiten diskreten Logarithmus auf Grundlage des ersten diskreten Logarithmus, der vordefinierten Zahl (s) und der ersten Zahl (p): Empfangen eines zweiten Zugangscodes (R2) auf Grundlage des zweiten diskreten Logarithmus von der Benutzereinheit; Vergleichen des ersten Zugangscodes (R1) mit dem zweiten Zugangscode (R2); und nach einem Bestimmen, dass der erste Zugangscode (R1) mit dem zweiten Zugangscode (R2) identisch ist, Zulassen, dass die Benutzereinheit zu der Ressource Zugang erhält.
  17. Verfahren nach Anspruch 16, wobei die vordefinierte Zahl (s) eine Identifizierungs-(ID)-Nummer der Benutzereinheit ist.
  18. Verfahren nach einem der Ansprüche 16 oder 17, wobei die vordefinierte Zahl (s) über einen Hypertext-Transfer-Protocol-Secure-(HTTPS)-Kanal empfangen wird.
  19. Verfahren nach einem der Ansprüche 16 bis 18, ferner aufweisend ein Erstellen einer zweiten Zahl (g), wobei: die erste Zahl (p) eine Primzahl ist; die erste Zahl (p) größer als die zweite Zahl (g) ist; die zweite Zahl (g) 2 oder 5 ist.
  20. Verfahren nach einem der Ansprüche 16 bis 19, wobei das Senden der ersten Zahl (p) an die Benutzereinheit über einen Kanal eines öffentlichen Fernsprechwählnetzes (PSTN) erfolgt.
  21. Verfahren nach einem der Ansprüche 16 bis 20, wobei der Empfang der vordefinierten Zahl (s) durch die Datenverarbeitungseinheit über einen Kanal erfolgt, der sich von demjenigen zum Senden der ersten Zahl (p) an die Benutzereinheit unterscheidet.
  22. Verfahren nach einem der Ansprüche 16 bis 20, wobei der erste diskrete Logarithmus auf (gc mod p) beruht.
  23. Verfahren nach Anspruch 22, wobei der zweite diskrete Logarithmus auf ((gc mod p)s mod p) beruht.
  24. Verfahren nach Anspruch 16 bis 23, ferner aufweisend: nach einem Bestimmen, dass der erste Zugangscode (R1) nicht mit dem zweiten Zugangscode (R2) identisch ist, Senden einer Warnmeldung an einen Account eines Benutzers, der der angeforderten Ressource zugehörig ist.
  25. Verfahren nach Anspruch 16 bis 24, ferner aufweisend: nach einem Bestimmen, dass der erste Zugangscode (R1) mit dem zweiten Zugangscode (R2) identisch ist, Ändern des Anforderungscodes.
  26. Computerprogrammprodukt zum Schützen von Daten, wobei das Computerprogrammprodukt aufweist: ein durch einen Computer lesbares Speichermedium, das von einer Verarbeitungsschaltung lesbar ist und Anweisungen für eine Ausführung durch die Verarbeitungsschaltung speichert, um ein Verfahren nach einem der Ansprüche 16 bis 25 auszuführen.
  27. Computerprogramm, das auf einem durch einen Computer lesbaren Medium gespeichert ist und in den internen Arbeitsspeicher eines digitalen Computers ladbar ist, wobei es Abschnitte von Softwarecode aufweist, wenn das Programm auf einem Computer ausgeführt wird, um das Verfahren nach einem der Ansprüche 16 bis 25 auszuführen.
DE112018006443.3T 2017-12-19 2018-12-18 Multifaktor-authentifizierung Pending DE112018006443T5 (de)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/847,869 US11122033B2 (en) 2017-12-19 2017-12-19 Multi factor authentication
US15/847,869 2017-12-19
PCT/IB2018/060254 WO2019123249A1 (en) 2017-12-19 2018-12-18 Multifactor authentication

Publications (1)

Publication Number Publication Date
DE112018006443T5 true DE112018006443T5 (de) 2020-09-03

Family

ID=66816610

Family Applications (1)

Application Number Title Priority Date Filing Date
DE112018006443.3T Pending DE112018006443T5 (de) 2017-12-19 2018-12-18 Multifaktor-authentifizierung

Country Status (6)

Country Link
US (1) US11122033B2 (de)
JP (1) JP7300799B2 (de)
CN (1) CN111295861B (de)
DE (1) DE112018006443T5 (de)
GB (1) GB2582877A (de)
WO (1) WO2019123249A1 (de)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11971980B2 (en) 2020-05-28 2024-04-30 Red Hat, Inc. Using trusted execution environments to perform a communal operation for mutually-untrusted devices
US11947659B2 (en) 2020-05-28 2024-04-02 Red Hat, Inc. Data distribution across multiple devices using a trusted execution environment in a mobile device
US11848924B2 (en) * 2020-10-12 2023-12-19 Red Hat, Inc. Multi-factor system-to-system authentication using secure execution environments
US20220294639A1 (en) * 2021-03-15 2022-09-15 Synamedia Limited Home context-aware authentication

Family Cites Families (55)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6850252B1 (en) * 1999-10-05 2005-02-01 Steven M. Hoffberg Intelligent electronic appliance system and method
US5497423A (en) * 1993-06-18 1996-03-05 Matsushita Electric Industrial Co., Ltd. Method of implementing elliptic curve cryptosystems in digital signatures or verification and privacy communication
NL9301348A (nl) * 1993-08-02 1995-03-01 Stefanus Alfonsus Brands Elektronisch betalingssysteem.
US5987134A (en) * 1996-02-23 1999-11-16 Fuji Xerox Co., Ltd. Device and method for authenticating user's access rights to resources
DE69704684T2 (de) * 1996-02-23 2004-07-15 Fuji Xerox Co., Ltd. Vorrichtung und Verfahren zur Authentifizierung von Zugangsrechten eines Benutzers zu Betriebsmitteln nach dem Challenge-Response-Prinzip
US6226383B1 (en) * 1996-04-17 2001-05-01 Integrity Sciences, Inc. Cryptographic methods for remote authentication
US6282295B1 (en) * 1997-10-28 2001-08-28 Adam Lucas Young Auto-recoverable and auto-certifiable cryptostem using zero-knowledge proofs for key escrow in general exponential ciphers
US6754820B1 (en) * 2001-01-30 2004-06-22 Tecsec, Inc. Multiple level access system
JP2001066989A (ja) * 1999-08-31 2001-03-16 Fuji Xerox Co Ltd 一方向性関数生成方法,一方向性関数値生成装置,証明装置,認証方法および認証装置
US6718467B1 (en) * 1999-10-28 2004-04-06 Cisco Technology, Inc. Password based protocol for secure communications
US7047408B1 (en) * 2000-03-17 2006-05-16 Lucent Technologies Inc. Secure mutual network authentication and key exchange protocol
US20020025046A1 (en) * 2000-05-12 2002-02-28 Hung-Yu Lin Controlled proxy secure end to end communication
US7218734B2 (en) * 2001-05-02 2007-05-15 Nciper Corporation Limited Ring arithmetic method, system, and apparatus
JP4774650B2 (ja) * 2001-08-07 2011-09-14 日本電気株式会社 離散対数の一致または不一致を示すゼロ知識証明システム及び方法
US7296156B2 (en) 2002-06-20 2007-11-13 International Business Machines Corporation System and method for SMS authentication
JP4336876B2 (ja) * 2003-01-23 2009-09-30 日本電気株式会社 署名方法および署名プログラム
CN1809984A (zh) * 2003-06-17 2006-07-26 皇家飞利浦电子股份有限公司 改进的保密验证信道
US7398550B2 (en) * 2003-06-18 2008-07-08 Microsoft Corporation Enhanced shared secret provisioning protocol
JP4457651B2 (ja) * 2003-11-27 2010-04-28 日本電気株式会社 証明装置及び証明方法並びにプログラム
GB0424052D0 (en) * 2004-10-29 2004-12-01 Nortel Networks Ltd Improvements in or relating to internet protocol (IP) location, privacy and presence
US20060126848A1 (en) * 2004-12-15 2006-06-15 Electronics And Telecommunications Research Institute Key authentication/service system and method using one-time authentication code
US20060215837A1 (en) * 2004-12-18 2006-09-28 Hewlett-Packard Development Company, L.P. Method and apparatus for generating an identifier-based public/private key pair
US7747865B2 (en) * 2005-02-10 2010-06-29 International Business Machines Corporation Method and structure for challenge-response signatures and high-performance secure Diffie-Hellman protocols
US20070107050A1 (en) 2005-11-07 2007-05-10 Jexp, Inc. Simple two-factor authentication
JP4868131B2 (ja) * 2006-06-15 2012-02-01 ネッツエスアイ東洋株式会社 電子割符照合システム
EP2229750B1 (de) * 2008-01-02 2019-04-10 National University of Ireland, Galway Verfahren und system zur authentifizierung eines benutzers
US8543091B2 (en) 2008-06-06 2013-09-24 Ebay Inc. Secure short message service (SMS) communications
US8156334B2 (en) * 2008-08-12 2012-04-10 Texas Instruments Incorporated Public key out-of-band transfer for mutual authentication
IES20090506A2 (en) * 2009-07-02 2009-12-09 Newbay Res Ltd A challenge-response system and method
CN101662465B (zh) * 2009-08-26 2013-03-27 深圳市腾讯计算机***有限公司 一种动态口令验证的方法及装置
US20120204242A1 (en) * 2011-02-03 2012-08-09 Activepath Ltd. Protecting web authentication using external module
CN102231666A (zh) * 2011-06-29 2011-11-02 电子科技大学 基于强素数的零知识身份认证方法
ES2784008T3 (es) * 2011-11-11 2020-09-21 Soprano Design Ltd Mensajería segura
FR2985127A1 (fr) * 2011-12-22 2013-06-28 France Telecom Procede d'authentification entre un lecteur et une etiquette radio
US8799165B2 (en) * 2012-01-11 2014-08-05 Rawllin International Inc. Electronic signature security algorithms
US10778659B2 (en) * 2012-05-24 2020-09-15 Smart Security Systems Llc System and method for protecting communications
RU2659488C2 (ru) * 2012-10-15 2018-07-02 Конинклейке Филипс Н.В. Система беспроводной связи
US9088555B2 (en) * 2012-12-27 2015-07-21 International Business Machines Corporation Method and apparatus for server-side authentication and authorization for mobile clients without client-side application modification
US9203832B2 (en) * 2013-03-12 2015-12-01 Cable Television Laboratories, Inc. DTCP certificate authentication over TLS protocol
US9313198B2 (en) 2013-03-27 2016-04-12 Oracle International Corporation Multi-factor authentication using an authentication device
GB201309702D0 (en) * 2013-05-30 2013-07-17 Certivox Ltd Security
US9106644B2 (en) 2013-05-30 2015-08-11 CertiVox Ltd. Authentication
CN104243157A (zh) 2013-06-24 2014-12-24 阿里巴巴集团控股有限公司 一种用于用户身份认证的方法和装置
US20150134966A1 (en) * 2013-11-10 2015-05-14 Sypris Electronics, Llc Authentication System
US10432409B2 (en) * 2014-05-05 2019-10-01 Analog Devices, Inc. Authentication system and device including physical unclonable function and threshold cryptography
GB2526367A (en) * 2014-05-23 2015-11-25 Ibm Password-based authentication
US10375063B2 (en) * 2014-07-29 2019-08-06 Lexisnexis Risk Solutions Inc. Systems and methods for combined OTP and KBA identity authentication utilizing academic publication data
GB2533095A (en) 2014-12-08 2016-06-15 Cryptomathic Ltd System and method
SG10201601937TA (en) * 2015-03-12 2016-10-28 18 Degrees Lab Pte Ltd Method and system for facilitating authentication
CN105260673A (zh) 2015-09-18 2016-01-20 小米科技有限责任公司 短信读取方法及装置
US9860237B2 (en) * 2015-10-08 2018-01-02 International Business Machines Corporation Password-based authentication in server systems
US10225283B2 (en) * 2015-10-22 2019-03-05 Oracle International Corporation Protection against end user account locking denial of service (DOS)
US10785210B2 (en) 2016-01-23 2020-09-22 Verizon Patent And Licensing Inc. User-enabled, two-factor authentication service
KR102549272B1 (ko) 2016-05-17 2023-06-30 한국전자통신연구원 패스워드와 id 기반 서명을 이용한 인증 키 합의 방법 및 장치
US10425224B1 (en) * 2017-06-30 2019-09-24 Salesforce.Com, Inc. Identity confirmation using private keys

Also Published As

Publication number Publication date
CN111295861B (zh) 2023-07-14
JP7300799B2 (ja) 2023-06-30
US20190190903A1 (en) 2019-06-20
WO2019123249A1 (en) 2019-06-27
GB2582877A (en) 2020-10-07
GB202010531D0 (en) 2020-08-26
JP2021507575A (ja) 2021-02-22
US11122033B2 (en) 2021-09-14
CN111295861A (zh) 2020-06-16

Similar Documents

Publication Publication Date Title
DE112018006443T5 (de) Multifaktor-authentifizierung
EP2867810B1 (de) Soziale gemeinsame nutzung von sicherheitsinformationen in einer gruppe
DE112012004250B4 (de) Unkenntlichmachen eines Beschleunigungssensorsignals
DE102016222034A1 (de) Dynamische Kennworterzeugung
DE112019000427T5 (de) Erkennung von man-in-the-middle in https-transaktionen
DE202013012485U1 (de) System für Browseridentität
DE112012005564T5 (de) Sichere Peer-Ermittlung und Authentifizierung unter Verwendung eines gemeinsamen Geheimnisses
DE102012213807A1 (de) Steuerung des Lightweight-Dokumentenzugriffs mithilfe von Zugriffskontrolllisten im Cloud-Speicher oder auf dem lokalen Dateisystem
DE112011100182T5 (de) Transaktionsprüfung für Datensicherheitsvorrichtungen
DE102014113582A1 (de) Vorrichtung, Verfahren und System für die kontextbewusste Sicherheitssteuerung in einer Cloud-Umgebung
DE102014206325A1 (de) Verteiltes Authentifizierungssystem
DE112014003159T5 (de) Netzwerkidentitätsauthentifizierung unter Verwendung eines Kommunikationsvorrichtungsidentifizierungscodes
CN110430167B (zh) 临时账户的管理方法、电子设备、管理终端及存储介质
DE10393847T5 (de) Verfahren und Vorrichtung zum Auffinden einer gemeinsam genutzten vertraulichen Information ohne Beeinträchtigung nicht-gemeinsam genutzter vertraulicher Informationen
DE102016102295A1 (de) Sicherer Authentifizierungsmechanismus mittels Quick-Response-Codes
DE102011075257B4 (de) Beantwortung von Anfragen mittels des Kommunikationsendgeräts eines Nutzers
DE112021004770T5 (de) Ultraschallübertragung von aufgeteilten schlüsseln für verbesserte sicherheit
DE112018006451T5 (de) Multifaktor-authentifizierung
DE10124427A1 (de) System und Verfahren für einen sicheren Vergleich eines gemeinsamen Geheimnisses von Kommunikationsgeräten
CN104468486A (zh) 信息处理方法、***及电子设备
EP2575385B1 (de) Verfahren zur Initialisierung und/oder Aktivierung wenigstens eines Nutzerkontos, zum Durchführen einer Transaktion, sowie Endgerät
DE112017002726T5 (de) Kommunikationssicherheitssysteme und verfahren
EP2512090A1 (de) Verfahren zur Authentifizierung eines Teilnehmers
DE112021005552T5 (de) Mehrfaktorauthentifizierung von einheiten des internets der dinge
DE112022000963T5 (de) Verbindungsbeständige mehrfaktorauthentifizierung

Legal Events

Date Code Title Description
R012 Request for examination validly filed