DE102013022443B4 - Electronic transaction procedure and computer system - Google Patents

Electronic transaction procedure and computer system Download PDF

Info

Publication number
DE102013022443B4
DE102013022443B4 DE102013022443.8A DE102013022443A DE102013022443B4 DE 102013022443 B4 DE102013022443 B4 DE 102013022443B4 DE 102013022443 A DE102013022443 A DE 102013022443A DE 102013022443 B4 DE102013022443 B4 DE 102013022443B4
Authority
DE
Germany
Prior art keywords
computer system
user
token
transaction
request
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.)
Active
Application number
DE102013022443.8A
Other languages
German (de)
Inventor
Frank Dietrich
Manfred Paeschke
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.)
Bundesdruckerei GmbH
Original Assignee
Bundesdruckerei GmbH
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 Bundesdruckerei GmbH filed Critical Bundesdruckerei GmbH
Priority to DE102013022443.8A priority Critical patent/DE102013022443B4/en
Application granted granted Critical
Publication of DE102013022443B4 publication Critical patent/DE102013022443B4/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • 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/34User authentication involving the use of external additional devices, e.g. dongles or smart cards
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/02Payment architectures, schemes or protocols involving a neutral party, e.g. certification authority, notary or trusted third party [TTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/08Payment architectures
    • G06Q20/10Payment architectures specially adapted for electronic funds transfer [EFT] systems; specially adapted for home banking systems
    • G06Q20/105Payment architectures specially adapted for electronic funds transfer [EFT] systems; specially adapted for home banking systems involving programming of a portable memory device, e.g. IC cards, "electronic purses"
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/08Payment architectures
    • G06Q20/18Payment architectures involving self-service terminals [SST], vending machines, kiosks or multimedia terminals
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/08Payment architectures
    • G06Q20/20Point-of-sale [POS] network systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/32Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices
    • G06Q20/322Aspects of commerce using mobile devices [M-devices]
    • G06Q20/3226Use of secure elements separate from M-devices
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/32Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices
    • G06Q20/327Short range or proximity payments by means of M-devices
    • G06Q20/3274Short range or proximity payments by means of M-devices using a pictured code, e.g. barcode or QR-code, being displayed on the M-device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/30Payment architectures, schemes or protocols characterised by the use of specific devices or networks
    • G06Q20/32Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices
    • G06Q20/327Short range or proximity payments by means of M-devices
    • G06Q20/3276Short range or proximity payments by means of M-devices using a pictured code, e.g. barcode or QR-code, being read by the M-device
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3821Electronic credentials
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3821Electronic credentials
    • G06Q20/38215Use of certificates or encrypted proofs of transaction rights
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/382Payment protocols; Details thereof insuring higher security of transaction
    • G06Q20/3825Use of electronic signatures
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/385Payment protocols; Details thereof using an alias or single-use codes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q20/00Payment architectures, schemes or protocols
    • G06Q20/38Payment protocols; Details thereof
    • G06Q20/40Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
    • G06Q20/401Transaction verification
    • G06Q20/4014Identity check for transactions
    • 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/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/3234Cryptographic 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 involving additional secure or trusted devices, e.g. TPM, smartcard, USB or software token
    • 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/3263Cryptographic 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 involving certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q2220/00Business processing using cryptography

Landscapes

  • Business, Economics & Management (AREA)
  • Engineering & Computer Science (AREA)
  • Accounting & Taxation (AREA)
  • Theoretical Computer Science (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • General Business, Economics & Management (AREA)
  • Computer Security & Cryptography (AREA)
  • Finance (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Development Economics (AREA)
  • Economics (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)

Abstract

Elektronisches Transaktionsverfahren unter Verwendung eines ID-Tokens (106), der einem Nutzer (102) zugeordnet ist, wobei der ID-Token einen elektronischen Speicher (118) mit einem geschützten Speicherbereich (124) aufweist, in dem ein oder mehrere Attribute gespeichert sind, wobei ein Zugriff auf den geschützten Speicherbereich nur über einen Prozessor (128) des ID-Tokens möglich ist, und wobei der ID-Token eine Kommunikations-Schnittstelle (108) zur Kommunikation mit einem Lesegerät eines Nutzer-Computersystems (100) aufweist, mit folgenden Schritten:- Anzeige eines optisch lesbaren Musters auf einem Bildschirm (188) eines Terminals (186), wobei in dem optisch lesbaren Muster eine Information codiert ist, die zumindest eine logische Adresse eines Dienst-Computersystems (150) und Transaktionsdaten beinhaltet,- Erfassung des Musters mithilfe eines optischen Sensors (190) des Nutzer-Computersystems und Decodierung des Musters durch das Nutzer-Computersystem,- Übertragung einer Transaktionsanforderung (158) von dem Nutzer-Computersystem an die logische Adresse des Dienst-Computersystems über das Netzwerk, wobei die Transaktionsanforderung die Transaktionsdaten beinhaltet,- Übertragung eines Request (166) von dem Dienst-Computersystem über das Nutzer-Computersystems (100) an ein ID-Provider-Computersystem (136), wobei die Übertragung über das Netzwerk erfolgt, wobei der Request eine Attributspezifikation der aus dem ID-Token für die Durchführung der Transaktion auszulesenden Attribute beinhaltet,- Authentifizierung des Nutzers gegenüber dem ID-Token,- Authentifizierung des ID-Provider-Computersystems gegenüber dem ID-Token über das Netzwerk,- unter der Voraussetzung der erfolgreichen Authentifizierung des Nutzers und des ID-Provider-Computersystems gegenüber dem ID-Token, Auslesen des oder der Attribute gemäß der Attributspezifikation durch das ID-Provider-Computersystem aus dem ID-Token über das Netzwerk mit Ende-zu-Ende-Verschlüsselung,- Übertragung einer Response (174) von dem ID-Provider-Computersystem über das Nutzer-Computersystem an das Dienst-Computersystem, wobei die Übertragung der Response über das Netzwerk erfolgt, wobei die Response das oder die ausgelesenen Attribute beinhaltet, und wobei die Response von dem ID-Provider-Computersystem signiert ist,Durchführung der Transaktion mithilfe der Transaktionsdaten und des oder der Attribute durch das Dienst-Computersystem,wobei ein Bestätigungssignal für die Durchführung der Transaktion von dem Dienst-Computersystem über das Netzwerk an das Nutzer-Computersystem gesendet und von dem Nutzer-Computersystem als optisches Muster ausgegeben wird, wobei das Terminal zur Erfassung des optischen Musters von dem Nutzer-Computersystem ausgebildet ist.Electronic transaction method using an ID token (106) that is assigned to a user (102), wherein the ID token has an electronic memory (118) with a protected memory area (124) in which one or more attributes are stored, wherein access to the protected memory area is only possible via a processor (128) of the ID token, and wherein the ID token has a communication interface (108) for communication with a reader of a user computer system (100), with the following steps:- display of an optically readable pattern on a screen (188) of a terminal (186), wherein information is encoded in the optically readable pattern that contains at least one logical address of a service computer system (150) and transaction data,- detection of the pattern using an optical sensor (190) of the user computer system and decoding of the pattern by the user computer system,- transmission of a transaction request (158) from the user computer system to the logical address of the Service computer system via the network, wherein the transaction request contains the transaction data,- transmission of a request (166) from the service computer system via the user computer system (100) to an ID provider computer system (136), wherein the transmission takes place via the network, wherein the request contains an attribute specification of the attributes to be read from the ID token for the execution of the transaction,- authentication of the user to the ID token,- authentication of the ID provider computer system to the ID token via the network,- provided that the user and the ID provider computer system are successfully authenticated to the ID token, reading the attribute(s) according to the attribute specification by the ID provider computer system from the ID token via the network with end-to-end encryption,- transmission of a response (174) from the ID provider computer system via the user computer system to the service computer system, wherein the transmission of the response takes place via the network, wherein the response contains the attribute(s) read out, and wherein the response is signed by the ID provider computer system, execution of the transaction using the transaction data and the attribute(s) by the service computer system, wherein a confirmation signal for the execution of the transaction is sent from the service computer system via the network to the user computer system and output by the user computer system as an optical pattern, wherein the terminal is designed to capture the optical pattern from the user computer system.

Description

Die vorliegende Patentanmeldung ist eine Teilanmeldung zur Stammanmeldung 10 2013 212 646.8 .The present patent application is a divisional application of the parent application 10 2013 212 646.8 .

BeschreibungDescription

Die Erfindung betrifft ein elektronisches Transaktionsverfahren sowie ein Computersystem.The invention relates to an electronic transaction method and a computer system.

Für den elektronischen Handel, das heißt den sogenannten eCommerce, sind verschiedene Transaktionsverfahren bekannt. Dazu gehören übliche Zahlungsverfahren wie zum Beispiel eine papiergebundene Überweisung oder die Zahlung per Nachnahme sowie elektronische Zahlungsverfahren, wie zum Beispiel Kreditkartenzahlung, die Zahlung per Online-Banking, Inkasso/Billing-Systeme, Factory-Systeme, elektronische Lastschrift, Prepaidverfahren, Zahlung per Telefonrechnung sowie Handy-Payment-Systeme. Solche Zahlungsverfahren werden zum Teil auch für eGovernment Anwendungen eingesetzt.Various transaction methods are known for electronic commerce, i.e. so-called eCommerce. These include common payment methods such as paper-based transfers or cash on delivery, as well as electronic payment methods such as credit card payments, payments via online banking, debt collection/billing systems, factory systems, electronic direct debits, prepaid methods, payment by telephone bill and mobile phone payment systems. Such payment methods are also sometimes used for eGovernment applications.

Der Erfindung liegt demgegenüber die Aufgabe zugrunde, ein verbessertes elektronisches Transaktionsverfahren sowie ein entsprechendes Computersystem zu schaffen.The invention is therefore based on the object of creating an improved electronic transaction method and a corresponding computer system.

Die der Erfindung zugrunde liegende Aufgabe wird jeweils mit den Merkmalen der unabhängigen Patentansprüche erfüllt. Ausführungsformen der Erfindung sind in den abhängigen Patentansprüchen angegeben.The object underlying the invention is achieved with the features of the independent patent claims. Embodiments of the invention are specified in the dependent patent claims.

Aus dem Stand der Technik bekannt sind ein informationsverarbeitendes Gerät mit optischem Datenleser, Server, und ein Verfahren zum elektronischen Handel ( US 2003/0120555 A1 ), eine technische Richtlinie über einen Server zur Vereinfachung des elektronischen Identitätsnachweises in Web-Anwendungen (BSI TR-03130, Technische Richtlinie eID-Server, Bundesamt für Sicherheit in der Informationstechnik, Ver. 1.6, 20.04.2012) sowie eine technische Richtlinie über ein API-Framework zur Bereitstellung einer Schnittstelle, die eine standardisierte Verwendung von Chipkarten ermöglicht (Technical Guideline TR-03112-7 eCard-API-Framework - Protocols, Bundesamt für Sicherheit in der Informationstechnik, Ver. 1.1.2, 28.02.2012).Known from the state of the art are an information processing device with an optical data reader, server, and a method for electronic commerce ( US 2003/0120555 A1 ), a technical guideline on a server to simplify electronic proof of identity in web applications (BSI TR-03130, Technical Guideline eID Server, Federal Office for Information Security, Ver. 1.6, 20.04.2012) and a technical guideline on an API framework to provide an interface that enables standardized use of chip cards (Technical Guideline TR-03112-7 eCard-API-Framework - Protocols, Federal Office for Information Security, Ver. 1.1.2, 28.02.2012).

Die technische Richtlinie TR-03110, Ver. 2.05, des Bundesamts für Sicherheit in der Informationstechnik beschreibt erweiterte Sicherheitsmechanismen für maschinenlesbare Reisedokumente.The technical guideline TR-03110, Ver. 2.05, of the Federal Office for Information Security describes extended security mechanisms for machine-readable travel documents.

Unter einer „Transaktion“ wird hier eine finanzielle Transaktion, wie zum Beispiel die Bezahlung eines Bezahlbetrags durch Vornahme einer Überweisung, eines Lastschrifteinzugs oder Belastung einer Kreditkarte, ein Bestellvorgang zur Bestellung und Lieferung eines physischen Gutes oder von Daten sowie andere logistische, Handels- und/oder Finanztransaktionen und/oder eine Datenbanktransaktion z.B. zur Speicherung eines Werts, wie z.B. eines Verbrauchswerts, eines Guthaben, oder eines Zahlungsbetrags verstanden.A “transaction” is understood here to mean a financial transaction, such as the payment of an amount by making a transfer, a direct debit or a credit card charge, an order process for ordering and delivering a physical good or data as well as other logistical, commercial and/or financial transactions and/or a database transaction, e.g. for storing a value, such as a consumption value, a credit or a payment amount.

Unter einem „Terminal“ wird hier eine Vorrichtung verstanden, die ein Display, d.h. einen Bildschirm, zur Anzeige eines optischen Musters hat. Das Terminal kann lediglich Informationen erfassen und über das Display ausgeben oder es kann eine Nutzerschnittstelle zur Eingabe einer Auswahl eines Nutzers aufweisen.A "terminal" is understood here to mean a device that has a display, i.e. a screen, for displaying an optical pattern. The terminal can simply capture information and output it via the display or it can have a user interface for entering a user's selection.

Zum Beispiel kann das Terminal als Bankautomat oder Verkaufsautomat ausgebildet sein. Der Nutzer kann eine Anforderung in das Terminal eingeben, wie zum Beispiel zur Abhebung von Bargeld, Aufladen einer Geldkarte oder zum Kauf eines bestimmten Produkts, wie zum Beispiel eines Getränks. Der Automat zeigt auf diese Nutzeranforderung hin ein optisch erfassbares Muster, wie zum Beispiel einen QR-Code, auf seinem Bildschirm an, wobei das Muster eine Information beinhaltet, um die Durchführung der Transaktion zu initiieren. Hierbei kann es sich um den gewünschten Auszahlungsbetrag oder den Kaufpreis des Produkts handeln.For example, the terminal can be designed as an ATM or vending machine. The user can enter a request into the terminal, such as to withdraw cash, top up a debit card or buy a specific product, such as a drink. In response to this user request, the machine displays an optically detectable pattern, such as a QR code, on its screen, with the pattern containing information to initiate the transaction. This can be the desired withdrawal amount or the purchase price of the product.

Nach einer weiteren Ausführungsform der Erfindung ist das Terminal als Telekommunikationsgerät, als sog. Smartmeter, für die Gebührenerfassung z.B. des Strom oder Gasverbrauchs, Taxameter oder Smartphone mit einer Gebührenerfassungsfunktion ausgebildet.According to a further embodiment of the invention, the terminal is designed as a telecommunications device, as a so-called smart meter, for the collection of fees, e.g. for electricity or gas consumption, taximeter or smartphone with a fee collection function.

Unter einem „Muster“ wird hier ein statisches optisches Muster verstanden, das auf dem Display des Terminals ausgegeben wird, und in das Informationen codiert sind, beispielsweise ein Barcode, insbesondere ein eindimensionaler, zweidimensionaler, high capacity color Barcode, MaxiCode, QR-Code oder DataMatrix-Code, oder eine zeitliche Reihenfolge mehrerer Muster, wobei durch die Muster und deren zeitliche Reihenfolge eine Information codiert ist, wie das z.B. bei einem Flickercode der Fall ist. Der „Flickercode“ ist an sich für das sogenannte chipTAN-comfort oder Smart-TAN-optic online Banking Verfahren der Sparkassen bzw. Volksbanken bekannt.A "pattern" is understood here to be a static optical pattern that is displayed on the terminal's display and in which information is encoded, for example a barcode, in particular a one-dimensional, two-dimensional, high capacity color barcode, MaxiCode, QR code or DataMatrix code, or a chronological sequence of several patterns, whereby information is encoded by the patterns and their chronological sequence, as is the case with a flicker code, for example. The "flicker code" is known for the so-called chipTAN-comfort or Smart-TAN-optic online banking process of the savings banks and cooperative banks.

Unter einer „Session“ wird hier eine temporäre Kommunikationsverbindung, das heißt eine sog. Communication Session, verstanden, die sich gemäß OSI-Schichtmodell auf die Transportschicht („transport layer“) oder die Anwendungsschicht („application layer“) beziehen kann. Insbesondere kann es sich bei einer Session um eine http-Session oder um eine https-Session handeln, wobei bei letzterer der Transportlayer durch eine symmetrische Verschlüsselung geschützt ist.A “session” is understood here as a temporary communication connection, i.e. a so-called communication session, which according to the OSI layer model can refer to the transport layer or the application layer. In particular, a session can be an http session or an https session, where the transport layer is protected by symmetric encryption.

Unter einem „ID-Token“ wird hier insbesondere ein tragbares elektronisches Gerät verstanden, welches zumindest einen Datenspeicher zur Speicherung des zumindest einen Attributs und eine Kommunikations-Schnittstelle zum Auslesen des Attributs aufweist. Vorzugsweise hat der ID-Token einen gesicherten Speicherbereich zur Speicherung des zumindest einen Attributs, um zu verhindern, dass das in dem Speicherbereich gespeicherte Attribut in unerlaubter Weise verändert oder ohne die dafür erforderliche Berechtigung ausgelesen wird.An "ID token" is understood here in particular to mean a portable electronic device which has at least one data memory for storing the at least one attribute and a communication interface for reading the attribute. The ID token preferably has a secure memory area for storing the at least one attribute in order to prevent the attribute stored in the memory area from being changed in an unauthorized manner or read without the necessary authorization.

Insbesondere kann es sich bei dem ID-Token um einen USB-Stick handeln oder ein Dokument, insbesondere ein Wert- oder Sicherheitsdokument. Unter einem „Dokument“ werden erfindungsgemäß papierbasierte und/oder kunststoffbasierte Dokumente verstanden, insbesondere elektronische hoheitliche Dokumente, wie zum Beispiel elektronische Ausweisdokumente, insbesondere Reisepässe, Personalausweise, Visa sowie Führerscheine, Fahrzeugscheine, Fahrzeugbriefe, Firmenausweise, Gesundheitskarten oder andere ID-Dokumente sowie auch Chipkarten, Zahlungsmittel, insbesondere Banknoten, Bankkarten und Kreditkarten, Frachtbriefe oder sonstige Berechtigungsnachweise, wie zum Beispiel eine Eintrittskarte, in die ein Datenspeicher zur Speicherung des zumindest einen Attributs integriert ist.In particular, the ID token can be a USB stick or a document, in particular a valuable or security document. According to the invention, a "document" is understood to mean paper-based and/or plastic-based documents, in particular electronic sovereign documents, such as electronic identification documents, in particular passports, identity cards, visas and driving licenses, vehicle registration documents, vehicle registration documents, company IDs, health cards or other ID documents as well as chip cards, means of payment, in particular banknotes, bank cards and credit cards, waybills or other proof of authorization, such as an admission ticket, in which a data storage device for storing the at least one attribute is integrated.

Bei dem ID-Token kann es sich um einen Hardwaretoken handeln oder um einen Softtoken, wenn dieser kryptografisch an einen Hardwaretoken, das heißt beispielsweise an ein sogenanntes Secure Element, gebunden ist.The ID token can be a hardware token or a soft token if it is cryptographically bound to a hardware token, for example to a so-called secure element.

Insbesondere kann ein solcher kryptografisch an ein Secure Element gebundener Softtoken gemäß DE 10 2011 082 101 erzeugt werden.In particular, such a soft token cryptographically bound to a secure element can be EN 10 2011 082 101 be generated.

Unter einem „ID-Provider-Computersystem“ wird hier ein Computersystem verstanden, welches dazu ausgebildet ist, zumindest ein Attribut aus dem ID-Token eines Nutzers auszulesen. Vorzugsweise wird das ID-Provider-Computersystem in einem sogenannten Trustcenter betrieben, um ein möglichst hohes Maß an Sicherheit zu schaffen.An "ID provider computer system" is understood here to mean a computer system that is designed to read at least one attribute from a user's ID token. The ID provider computer system is preferably operated in a so-called trust center in order to create the highest possible level of security.

Unter einem „Dienst-Computersystem“ wird hier ein Computersystem verstanden, welches über eine Netzwerk-Schnittstelle zur Verbindung mit dem Netzwerk verfügt, sodass mithilfe eines Internetbrowsers oder eines anderen Anwendungsprogramms auf von dem Dienst-Computersystem gespeicherte oder generierte Internetseiten zugegriffen werden kann. Insbesondere kann es sich bei dem Dienst-Computersystem um einen Internetserver zur Verfügungstellung einer eCommerce- oder eGovernment-Anwendung handeln, insbesondere einen Onlineshop oder einen Behördenserver.A "service computer system" is understood here to mean a computer system that has a network interface for connection to the network so that Internet pages stored or generated by the service computer system can be accessed using an Internet browser or another application program. In particular, the service computer system can be an Internet server for providing an eCommerce or eGovernment application, in particular an online shop or a government server.

Unter einem „Nutzer-Computersystem“ wird hier ein Computersystem verstanden, auf welches der Nutzer Zugriff hat. Hierbei kann es sich zum Beispiel um einen Personal Computer (PC), ein Tablet PC oder ein Mobilfunkgerät, insbesondere ein Smartphone, mit einem üblichen Internetbrowser, wie zum Beispiel Microsoft® Internet Explorer®, Safari®, Google Chrome™, Firefox® oder einem anderen Anwendungsprogramm zum Zugriff auf das Dienst-Computersystem handeln. Das Nutzer-Computersystem hat eine Schnittstelle zur Verbindung mit dem Netzwerk, wobei es sich bei dem Netzwerk um ein privates oder öffentliches Netzwerk handeln kann, insbesondere das Internet.A "user computer system" is understood here to be a computer system to which the user has access. This can be, for example, a personal computer (PC), a tablet PC or a mobile device, in particular a smartphone, with a standard Internet browser such as Microsoft ® Internet Explorer ® , Safari ® , Google Chrome™, Firefox ® or another application program for accessing the service computer system. The user computer system has an interface for connecting to the network, whereby the network can be a private or public network, in particular the Internet.

Nach einer Ausführungsform der Erfindung handelt es sich bei der Anforderung des Dienst-Computersystems um einen SAML-Request und bei der Antwort des ID-Provider-Computersystems hierauf um eine SAML-Response (vgl. Security Assertion Markup Language (SAML) V2.0 Technical Overview, OASIS, Committee Draft 02, 25. März 2008).According to one embodiment of the invention, the request of the service computer system is a SAML request and the response of the ID provider computer system is a SAML response (cf. Security Assertion Markup Language (SAML) V2.0 Technical Overview, OASIS, Committee Draft 02, March 25, 2008).

Nach einer Ausführungsform der Erfindung hat das ID-Provider-Computersystem ein Zertifikat, in dem die Leserechte für die Durchführung des Lesezugriffs spezifiziert sind.According to one embodiment of the invention, the ID provider computer system has a certificate in which the read rights for performing the read access are specified.

Unter einem „Zertifikat“ wird hier ein digitales Zertifikat verstanden, welches auch als Public-Key-Zertifikat bezeichnet wird. Bei einem Zertifikat handelt es sich um strukturierte Daten, die dazu dienen, einen öffentlichen Schlüssel eines asymmetrischen Kryptosystems einer Identität, wie zum Beispiel einer Person oder einer Vorrichtung, zuzuordnen. Beispielsweise kann das Zertifikat dem Standard X.509 oder einem anderen Standard entsprechen. Vorzugsweise handelt es sich bei dem Zertifikat um ein Card Verifiable Certificate (CVC).A "certificate" is understood here to mean a digital certificate, which is also referred to as a public key certificate. A certificate is structured data that is used to assign a public key of an asymmetric cryptosystem to an identity, such as a person or a device. For example, the certificate can correspond to the X.509 standard or another standard. The certificate is preferably a Card Verifiable Certificate (CVC).

In dem Zertifikat kann spezifiziert sein, für welches Attribut oder welche Attribute des Nutzers, die in dem geschützten Speicherbereich des ID-Tokens gespeichert sind, das ID-Provider-Computersystem zur Durchführung des Lesezugriffs berechtigt ist. Bei diesen Attributen kann es sich um persönliche Attribute des Nutzers handeln, wie zum Beispiel seinen Namen, Wohnort und sein Alter. Diese Attribute können in ihrer Kombination als Nutzererkennung verwendet werden, um auf die Bezahlinformation des registrierten Nutzers zuzugreifen. Alternativ oder zusätzlich kann auch ein Pseudonym des Nutzers, welches zumindest temporär von dem ID-Token gespeichert wird, als Nutzerkennung verwendet werden.The certificate can specify which attribute or attributes of the user, which are stored in the protected memory area of the ID token, the ID provider computer system is authorized to perform read access to. These attributes can be personal attributes of the user, such as their name, place of residence and age. These attributes can be used in combination as user identification to access the payment information of the registered user. Alternatively or additionally, a pseudonym of the user, which is at least temporarily stored by the ID token, can also be used as user identification.

Ausführungsformen der Erfindung sind besonders vorteilhaft, da ein universell und auch für eCommerce- und eGovernment-Anwendungen geeignetes computerimplementiertes Bezahlverfahren geschaffen wird, welches gleichzeitig flexibel, bequem in der Handhabung und sicher ist. Dies wird insbesondere dadurch ermöglicht, dass das Bezahlverfahren auf einem ID-Token basiert, wobei Voraussetzung für die Durchführung eines Bezahlvorgangs sowohl die Authentifizierung des Nutzers gegenüber dem ID-Token als auch die Authentifizierung des ID-Provider-Computersystems gegenüber dem ID-Token ist.Embodiments of the invention are particularly advantageous because a computer-implemented payment method is created that is universal and also suitable for eCommerce and eGovernment applications, which is simultaneously flexible, convenient to use and secure. This is made possible in particular by the fact that the payment method is based on an ID token, whereby the prerequisite for carrying out a payment process is both the authentication of the user to the ID token and the authentication of the ID provider computer system to the ID token.

Nach Ausführungsformen der Erfindung handelt es sich bei dem Terminal um eine Vorrichtung, zum Beispiel zur Auszahlung von Bargeld, zur Aufladung einer Geldkarte zum Verkauf eines Produkts, wie zum Beispiel einer Fahrkarte, einer Eintrittskarte oder eines Nahrungs- oder Genussmittels.According to embodiments of the invention, the terminal is a device, for example for paying out cash, for topping up a cash card for the sale of a product, such as a travel ticket, an admission ticket or a food or beverage item.

Beispielsweise kann es sich bei dem Terminal um einen Bankautomaten handeln. In diesem Fall gibt der Nutzer über eine Nutzerschnittstelle des Bankautomaten einen gewünschten Auszahlungsbetrag ein. Dieser Auszahlungsbetrag wird dann als ein optisch lesbares Muster von dem Bankautomaten auf dessen Bildschirm angezeigt und dieses Muster wird von dem Nutzer mithilfe eines optischen Sensors erfasst, wie zum Beispiel durch die Kamera des Nutzer-Computersystems, welches als Smartphone ausgebildet sein kann. Das auf dem Bildschirm angezeigte Muster kann ferner eine logische Adresse des Dienst-Computersystems beinhalten, wie zum Beispiel eine URL des Dienst-Computersystems. Darüber hinaus können in dem Muster weitere Informationen beinhaltet sein, wie zum Beispiel eine Kontoinformation des Betreibers des Bankautomaten.For example, the terminal can be an ATM. In this case, the user enters a desired withdrawal amount via a user interface of the ATM. This withdrawal amount is then displayed as an optically readable pattern by the ATM on its screen and this pattern is detected by the user using an optical sensor, such as the camera of the user's computer system, which can be designed as a smartphone. The pattern displayed on the screen can also contain a logical address of the service computer system, such as a URL of the service computer system. In addition, the pattern can contain further information, such as account information of the ATM operator.

Das Nutzer-Computersystem decodiert das von dem Bildschirm des Terminals mithilfe des optischen Sensors erfasste Muster und generiert dann eine Transaktionsanforderung, die den Auszahlungsbetrag und ggf. die weiteren Transaktionsdaten, die in dem Muster beinhaltet sind, angibt. Diese Transaktionsanforderung wird dann von dem Nutzer-Computersystem an das Dienst-Computersystem über das Netzwerk übertragen.The user computer system decodes the pattern captured from the terminal screen using the optical sensor and then generates a transaction request specifying the withdrawal amount and any other transaction data included in the pattern. This transaction request is then transmitted from the user computer system to the service computer system over the network.

Das Dienst-Computersystem erzeugt daraufhin einen Request, der eine Attributspezifikation beinhaltet, das heißt eine Angabe zumindest eines aus dem ID-Token auszulesenden Attributs, welches für die Durchführung der Transaktion erforderlich ist und/oder welches ein vorgegebenes Prüfkriterium erfüllen muss, damit die Transaktion durchgeführt werden kann. Beispielsweise kann es sich bei dem Attribut um eine in dem ID-Token gespeicherte Kontoverbindung des Nutzers handeln oder um ein Pseudonym des Nutzers, welches für das Dienst-Computersystem als Zugriffsschlüssel auf in einer Datenbank pseudonymisiert gespeicherte Kontoinformationen von registrierten Nutzern dient. Alternativ oder zusätzlich kann es sich bei dem Attribut um eine Altersangabe handeln, um zu überprüfen, ob der Nutzer die für die Durchführung der Transaktion erforderliche Geschäftsfähigkeit aufweist.The service computer system then generates a request that contains an attribute specification, i.e. an indication of at least one attribute to be read from the ID token, which is required to carry out the transaction and/or which must meet a predefined test criterion so that the transaction can be carried out. For example, the attribute can be a user account connection stored in the ID token or a user pseudonym, which serves as an access key for the service computer system to pseudonymized account information of registered users stored in a database. Alternatively or additionally, the attribute can be an age specification in order to check whether the user has the legal capacity required to carry out the transaction.

Das Dienst-Computersystem sendet dann den Request an das ID-Provider-Computersystem. Nach Authentifizierung des Nutzers gegenüber seinem ID-Token und nach Authentifizierung des ID-Provider-Computersystems gegenüber dem ID-Token über das Netzwerk erfolgt dann das Auslesen des zumindest einen Attributs aus dem ID-Token durch das ID-Provider-Computersystem über das Netzwerk mit Ende-zu-Ende-Verschlüsselung.The service computer system then sends the request to the ID provider computer system. After the user has been authenticated with his ID token and after the ID provider computer system has been authenticated with the ID token over the network, the ID provider computer system then reads at least one attribute from the ID token over the network using end-to-end encryption.

Das ID-Provider-Computersystem erzeugt daraufhin eine Response, die das zumindest eine aus dem ID-Token ausgelesene Attribut beinhaltet. Die Attribute und/oder die Response wird von dem ID-Provider-Computersystem signiert und an das Dienst-Computersystem gesendet.The ID provider computer system then generates a response that contains at least one attribute read from the ID token. The attributes and/or the response are signed by the ID provider computer system and sent to the service computer system.

Das Dienst-Computersystem verwendet dann die Attribute zur Durchführung der Transaktion, das heißt hier zum Beispiel der Belastung des Kontos des Nutzers mit dem Auszahlungsbetrag, und/oder zur Prüfung, ob ein vorgegebenes Kriterium, z.B. die Geschäftsfähigkeit, erfüllt ist.The service computer system then uses the attributes to carry out the transaction, for example, to debit the user's account with the withdrawal amount, and/or to check whether a predetermined criterion, e.g. legal capacity, is met.

Nachdem diese Belastung des Kontos erfolgt ist, erzeugt das Dienst-Computersystem ein Bestätigungssignal, welches beispielsweise an das Bankterminal übertragen wird. Beispielsweise ist hierzu der Terminal, das heißt hier der Bankautomat, mit dem Netzwerk verbunden, sodass das Bestätigungssignal von dem Dienst-Computersystem über das Netzwerk an das Terminal übertragen wird. Vorzugsweise wird das Bestätigungssignal von dem Dienst-Computersystem signiert, um Manipulationen zu vermeiden. Aufgrund des Empfangs eines validen Bestätigungssignals erfolgt dann die Ausgabe des Bargelds in Höhe des gewünschten Auszahlungsbetrags oder alternativ die Aufladung einer Geldkarte des Nutzers.After the account has been debited, the service computer system generates a confirmation signal, which is transmitted to the bank terminal, for example. For example, the terminal, i.e. the ATM in this case, is connected to the network so that the confirmation signal is transmitted from the service computer system to the terminal via the network. The confirmation signal is preferably signed by the service computer system to prevent manipulation. Upon receipt of a valid confirmation signal, cash is then dispensed in the amount of the desired withdrawal amount or, alternatively, the user's debit card is topped up.

Nach einer Ausführungsform der Erfindung ist das Terminal als Verkaufsautomat ausgebildet. Über eine Nutzerschnittstelle des Verkaufsautomaten kann der Nutzer ein gewünschtes Produkt auswählen. Der Verkaufsautomat zeigt dann auf seinem Display ein optisches Muster an, in dem der Kaufpreis des von dem Nutzer ausgewählten Produkts codiert ist sowie auch eine Kontoinformation desjenigen Kontos, auf welches die Zahlung dieses Kaufpreises zu leisten ist. Ferner beinhaltet das optische Muster die Angabe einer logischen Adresse, insbesondere einer URL, des Dienst-Computersystems.According to one embodiment of the invention, the terminal is designed as a vending machine. The user can select a desired product via a user interface of the vending machine. The vending machine then shows an optical pattern on its display in which the purchase price of the product selected by the user is encoded as well as account information for the account to which the payment of this purchase price is to be made. The optical pattern also contains Pattern the specification of a logical address, in particular a URL, of the service computer system.

Der Nutzer erfasst dieses optische Muster mit einem optischen Sensor seines Nutzer-Computersystems, beispielsweise mithilfe der Kamera seines Smartphones. Das optische Muster wird dann decodiert und es wird eine Transaktionsanforderung generiert, die den Kaufpreis und die Kontoinformation des Zahlungsempfängers beinhaltet. Diese Transaktionsanforderung wird von dem Nutzer-Computersystem an das Dienst-Computersystem übertragen, und zwar mithilfe der logischen Adresse des Dienst-Computersystems.The user captures this optical pattern with an optical sensor on his user computer system, for example using the camera on his smartphone. The optical pattern is then decoded and a transaction request is generated that contains the purchase price and the account information of the payee. This transaction request is transmitted from the user computer system to the service computer system using the logical address of the service computer system.

Das Dienst-Computersystem generiert daraufhin einen Request mit der Attributspezifikation der für die Abgabe des von dem Nutzer gewählten Produkts erforderlichen Attribute. Beispielsweise handelt es sich um ein Produkt, das nur an Volljährige abzugeben ist, wie zum Beispiel Alkohol oder Zigaretten. In diesem Fall beinhaltet die Attributspezifikation das Attribut „Alter“. Aufgrund dieser Anforderung erhält das Dienst-Computersystem von dem ID-Provider-Computersystem eine Response, die diese Altersangabe beinhaltet. Das Dienst-Computersystem prüft dann, ob die Altersangabe ein vorgegebenes Kriterium erfüllt, beispielsweise also die Volljährigkeit, und wenn dies der Fall ist, führt das Dienst-Computersystem die Transaktion durch, indem hier beispielsweise der Kaufpreis von dem Konto des Nutzers auf das Konto des Zahlungsempfängers überwiesen wird. Anschließend gibt das Dienst-Computersystem ein Bestätigungssignal beispielsweise an den Verkaufsautomaten ab, woraufhin dieser dann das von dem Nutzer zuvor ausgewählte Produkt abgibt.The service computer system then generates a request with the attribute specification of the attributes required for dispensing the product selected by the user. For example, it is a product that is only to be sold to adults, such as alcohol or cigarettes. In this case, the attribute specification includes the attribute "age". Based on this request, the service computer system receives a response from the ID provider computer system that includes this age information. The service computer system then checks whether the age information meets a predetermined criterion, such as being of legal age, and if this is the case, the service computer system carries out the transaction, for example by transferring the purchase price from the user's account to the payment recipient's account. The service computer system then sends a confirmation signal, for example to the vending machine, whereupon the vending machine then dispenses the product previously selected by the user.

Nach einer weiteren Ausführungsform der Erfindung ist das Terminal als Verbrauchszähler, insbesondere zur Erfassung eines Strom- oder Gasverbrauchs, ausgebildet. In diesem Fall wird auf dem Display des Terminals ein optisches Muster angezeigt, welches den aktuellen Zählerstand und zum Beispiel eine Zählernummer des Verbrauchszählers beinhaltet sowie auch die logische Adresse des Dienst-Computersystems. Die entsprechende Transaktionsanforderung beinhaltet dann diesen Zählerstand sowie die Zählernummer. Die Attributspezifikation des Dienst-Computersystems kann zum Beispiel persönliche Angaben des Nutzers spezifizieren und/oder ein Pseudonym oder eine Kennung des Nutzers, wie zum Beispiel dessen Kundennummer.According to a further embodiment of the invention, the terminal is designed as a consumption meter, in particular for recording electricity or gas consumption. In this case, an optical pattern is shown on the display of the terminal, which contains the current meter reading and, for example, a meter number of the consumption meter as well as the logical address of the service computer system. The corresponding transaction request then contains this meter reading and the meter number. The attribute specification of the service computer system can, for example, specify personal information of the user and/or a pseudonym or an identifier of the user, such as their customer number.

Aufgrund des Empfangs der Response von dem ID-Provider-Computersystem kann das Dienst-Computersystem feststellen, welcher Nutzer das optische Muster von dem Terminal erfasst hat. Unter der Voraussetzung, dass es sich bei diesem Nutzer um den Zahlungspflichtigen handelt, der bei dem Dienst-Computersystem als Kunde registriert ist, speichert das Dienst-Computersystem den mit der Transaktionsanforderung gemeldeten Zählerstand und die zugehörige Zählernummer in einer Datenbank mittels einer Datenbank-Transaktion ab. Zu einem späteren Zeitpunkt kann dann von dem Dienst-Computersystem eine entsprechende Rechnung generiert werden, um den erfassten Verbrauch abzurechnen.By receiving the response from the ID provider computer system, the service computer system can determine which user recorded the optical pattern from the terminal. Assuming that this user is the payer who is registered as a customer with the service computer system, the service computer system stores the meter reading reported with the transaction request and the associated meter number in a database using a database transaction. At a later point in time, the service computer system can then generate a corresponding invoice to settle the recorded consumption.

Nach einer Ausführungsform der Erfindung generiert das Dienst-Computersystem ein Bestätigungssignal, nachdem die Datenbanktransaktion ausgeführt worden ist, wobei dieses Bestätigungssignal beispielsweise an den Verbrauchszähler gesendet wird. Der Verbrauchszähler kann daraufhin zurückgesetzt werden.According to one embodiment of the invention, the service computer system generates a confirmation signal after the database transaction has been executed, wherein this confirmation signal is sent, for example, to the consumption counter. The consumption counter can then be reset.

Nach einer Ausführungsform der Erfindung handelt es sich bei dem Terminal um ein Smartphone eines Dritten, der dem Nutzer ein Produkt verkaufen möchte. Hierzu hat das Smartphone eine App, die der Dritte startet. In die App gibt der Dritte den Kaufpreis und zum Beispiel seine Bankverbindung ein. Diese Informationen sowie die logische Adresse des Dienst-Computersystems werden dann auf dem Display des Smartphones als optisches Muster ausgegeben.According to one embodiment of the invention, the terminal is a smartphone belonging to a third party who wants to sell a product to the user. For this purpose, the smartphone has an app that the third party starts. The third party enters the purchase price and, for example, their bank details into the app. This information, as well as the logical address of the service computer system, is then displayed on the smartphone's display as an optical pattern.

Die entsprechende Transaktionsanforderung beinhaltet dann den Kaufpreis sowie die Kontoverbindung des Dritten. Die Attributspezifikation kann in diesem Fall zum Beispiel die persönlichen Angaben des Nutzers betreffen, mithilfe derer das Dienst-Computersystem auf die zuvor registrierte Kontoverbindung des Nutzers zugreifen kann. Nach Empfang der Response führt das Dienst-Computersystem dann die Transaktion, das heißt hier die Zahlung des Kaufpreises, mithilfe der Kontoinformationen des Dritten und des Nutzers durch. Das Dienst-Computersystem sendet dann ein Bestätigungssignal beispielsweise an das Smartphone des Dritten, sodass dieser von der erfolgten Zahlung informiert wird und das Produkt an den Nutzer abgibt.The corresponding transaction request then contains the purchase price and the third party's account details. In this case, the attribute specification can, for example, relate to the user's personal information, with which the service computer system can access the user's previously registered account details. After receiving the response, the service computer system then carries out the transaction, i.e. the payment of the purchase price, using the account information of the third party and the user. The service computer system then sends a confirmation signal, for example to the third party's smartphone, so that the third party is informed of the payment and hands over the product to the user.

Anstelle eines Smartphones kann dies auch in einem anderen mobilen elektronischen Gerät, wie zum Beispiel einem Laptop- oder Notebook-Computer oder in einem stationären elektronischen System, wie zum Beispiel dem elektronischen Kassensystem eines Supermarkts, implementiert werden.Instead of a smartphone, this can also be implemented in another mobile electronic device, such as a laptop or notebook computer, or in a stationary electronic system, such as the electronic cash register system of a supermarket.

In einer weiteren Anwendung ist das Terminal als Taxameter ausgebildet. In diesem Fall beinhaltet das optische Muster ein Fahrentgelt, welches ein Taxifahrer für eine Taxifahrt abrechnet. Nach Empfang des Bestätigungssignals beispielsweise von dem Dienst-Computersystem, welches die Durchführung der entsprechenden Zahlung bestätigt, gibt das Taxameter einen entsprechenden Beleg, das heißt eine Quittung, aus.In another application, the terminal is designed as a taximeter. In this case, the optical pattern contains a fare that a taxi driver charges for a taxi ride. After receiving the confirmation signal, for example from the service computer system, which confirms the execution of the corresponding payment, , the taximeter issues a corresponding receipt, i.e. a receipt.

Besonders vorteilhaft ist, wenn das Terminal eine Netzwerk-Schnittstelle zur Kommunikation über das Netzwerk aufweist. In diesem Fall kann das Bestätigungssignal von dem Dienst-Computersystem über das Netzwerk an den Automaten übertragen werden. Erfindungsgemäß wird jedoch das Bestätigungssignal von dem Dienst-Computersystem an das Nutzer-Computersystem gesendet. Das Nutzer-Computersystem kann daraufhin auf einem Display des Nutzer-Computersystems ein optisches Muster anzeigen, in welches dieses Bestätigung codiert ist. Dieses optische Muster kann dann von dem Terminal, der ebenfalls einen optischen Sensor hat, erfasst werden. Diese Ausführungsform hat den Vorteil, dass das Terminal nicht mit dem Netzwerk verbunden zu sein braucht, was sicherheitstechnische Vorzüge hat.It is particularly advantageous if the terminal has a network interface for communication via the network. In this case, the confirmation signal can be transmitted from the service computer system to the machine via the network. According to the invention, however, the confirmation signal is sent from the service computer system to the user computer system. The user computer system can then show an optical pattern on a display of the user computer system in which this confirmation is encoded. This optical pattern can then be detected by the terminal, which also has an optical sensor. This embodiment has the advantage that the terminal does not need to be connected to the network, which has security advantages.

Nach einer weiteren Ausführungsform der Erfindung ist das Dienst-Computersystem mit zum Beispiel dem Terminal über einen von dem Netzwerk verschiedenen Kommunikationskanal verbunden, wie zum Beispiel ein internes Firmennetzwerk oder ein Virtual Private Network, über welches das Bestätigungssignal von dem Dienst-Computersystem beispielsweise an das Terminal übertragen wird.According to a further embodiment of the invention, the service computer system is connected to, for example, the terminal via a communication channel different from the network, such as an internal company network or a virtual private network, via which the confirmation signal is transmitted from the service computer system, for example, to the terminal.

Nach Ausführungsformen der Erfindung wird zunächst eine erste Session zwischen dem Internetbrowser des Nutzer-Computersystems und dem Dienst-Computersystem über das Internet aufgebaut, wobei es sich bei der ersten Session um eine http-Session oder eine https-Session handeln kann. Der Nutzer kann eine Transaktionsanforderung in den Internetbrowser eingeben, beispielsweise zur Veranlassung eines Bezahlvorgangs. Beispielsweise hat der Nutzer zuvor über das Dienst-Computersystem eine Ware bestellt und möchte diese bestellte Ware bezahlen, wozu der Nutzer die entsprechende Transaktionsanforderung in den Internet-browser eingibt, welche an das Dienst-Computersystem über die erste Session übertragen wird.According to embodiments of the invention, a first session is first established between the Internet browser of the user computer system and the service computer system via the Internet, whereby the first session can be an http session or an https session. The user can enter a transaction request into the Internet browser, for example to initiate a payment process. For example, the user has previously ordered a product via the service computer system and would like to pay for the ordered product, for which the user enters the corresponding transaction request into the Internet browser, which is transmitted to the service computer system via the first session.

Das Dienst-Computersystem erzeugt daraufhin eine Anforderung, d.h. einen Request eines Request-Response Protokolls. Der Request kann eine vordefinierte oder standardisierte Struktur haben. Beispielsweise kann der Request textbasiert sein, eine XML, ASN.1 oder binär-Struktur aufweisen oder als SAML-Request ausgebildet sein. Der Request, beispielsweise also der SAML-Request, beinhaltet eine Attributspezifikation, welche die aus dem ID-Token für die Durchführung der Transaktion auszulesenden Attribute spezifiziert. Hierbei kann es sich um Attribute handeln, welche den Nutzer, der dem ID-Token zugeordnet ist, identifizieren und/oder die eine Bezahlinformation angeben, wie zum Beispiel eine Kontoverbindung oder Kreditkarteninformationen, und/oder Attribute, welche den ID-Token selbst betreffen, wie zum Beispiel dessen Gültigkeitsdauer, Ausstellungsdatum und/oder die ausstellende Organisation oder Behörde.The service computer system then generates a request, i.e. a request of a request-response protocol. The request can have a predefined or standardized structure. For example, the request can be text-based, have an XML, ASN.1 or binary structure or be designed as a SAML request. The request, for example the SAML request, contains an attribute specification that specifies the attributes to be read from the ID token to carry out the transaction. These can be attributes that identify the user assigned to the ID token and/or that provide payment information, such as bank account details or credit card information, and/or attributes that relate to the ID token itself, such as its period of validity, date of issue and/or the issuing organization or authority.

Nach Ausführungsformen der Erfindung wird der Request von dem Dienst-Computersystem über das Nutzer-Computersystem an das ID-Provider-Computersystem übertragen. Aufgrund des Empfangs des Request durch das Nutzer-Computersystem wird der weitere Ablauf zur Erzeugung der Response, einschließlich der Authentisierung des Nutzers und des ID-Provider-Computersystems, ausgelöst.According to embodiments of the invention, the request is transmitted from the service computer system via the user computer system to the ID provider computer system. Upon receipt of the request by the user computer system, the further process for generating the response, including the authentication of the user and the ID provider computer system, is triggered.

Insbesondere kann die Attributspezifikation das Geburtsdatum des Nutzers beinhalten, falls zum Beispiel die Volljährigkeit des Nutzers als Voraussetzung für die Durchführung der Transaktion von dem Dienst-Computersystem zu prüfen ist. Der Request beinhaltet ferner Transaktionsdaten zur Spezifizierung der Transaktion, das heißt zum Beispiel einen Bezahlbetrag sowie Kontoinformationen, insbesondere die Kontoverbindung des Dienst-Computersystems, auf welche die Zahlung zu leisten ist. Ferner beinhaltet der Request einen Uniform Ressource Locator (URL) des ID-Provider-Computersystems, welches die Attribute aus dem ID-Token auslesen soll, sowie eine URL des Dienst-Computersystems zur Angabe eines Empfängers für die Response, die aufgrund der Request von dem ID-Provider-Computersystem zu generieren ist.In particular, the attribute specification can include the user's date of birth if, for example, the user's age of majority is to be checked by the service computer system as a prerequisite for carrying out the transaction. The request also includes transaction data for specifying the transaction, for example a payment amount and account information, in particular the account details of the service computer system to which the payment is to be made. The request also includes a Uniform Resource Locator (URL) of the ID provider computer system, which is to read the attributes from the ID token, as well as a URL of the service computer system to specify a recipient for the response that is to be generated by the ID provider computer system based on the request.

Das Dienst-Computersystem erzeugt für den Request eine Kennung, die den Request eindeutig identifiziert, wie z.B. einen globally unique identifier (GUID). Der Request beinhaltet diese Kennung.The service computer system generates an identifier for the request that uniquely identifies the request, such as a globally unique identifier (GUID). The request contains this identifier.

Der Request wird von dem Dienst-Computersystem signiert, und zwar mithilfe eines privaten Schlüssels eines kryptografischen Schlüsselpaars, welches dem Dienst-Computersystem zugeordnet ist.The request is signed by the service computer system using a private key of a cryptographic key pair associated with the service computer system.

Aufgrund der Transaktionsanforderung wird über die erste Session eine Webseite von dem Dienst-Computersystem an das Nutzer-Computersystem übertragen und durch den Internetbrowser bzw. das Anwendungsprogramm, insbesondere eine sog. App, angezeigt. Zusammen mit der Webseite wird der Request übertragen, der jedoch nicht angezeigt wird.Based on the transaction request, a web page is transmitted from the service computer system to the user computer system via the first session and displayed by the Internet browser or the application program, in particular a so-called app. The request is transmitted together with the web page, but is not displayed.

Die Webseite hat zumindest ein Eingabefeld zur Eingabe von Zusatzinformationen, welche für die Durchführung der Transaktion benötigt werden. Bei dieser Zusatzinformation kann es sich zum Beispiel um eine Kontoverbindung oder Kreditkarteninformationen des Nutzers handeln und/oder um eine Authentifizierungsinformation, um den Nutzer gegenüber dem Dienst-Computersystem zu authentifizieren. Zum Beispiel kann es sich bei der Authentifizierungsinformation um ein One-Time Password (OTP) handeln. Vorzugsweise wird die Zusatzinformation mithilfe des öffentlichen Schlüssels des Dienst-Computersystems durch das Nutzer-Computersystem verschlüsselt, sodass nur die verschlüsselte Zusatzinformation anschließend über eine zweite Session von dem Internetbrowser bzw. dem Anwendungsprogramm an das ID-Provider-Computersystem über das Netzwerk weitergeleitet wird.The website has at least one input field for entering additional information required to complete the transaction. This additional information may, for example, be a user's bank account or credit card information and/or a Authentication information to authenticate the user to the service computer system. For example, the authentication information can be a one-time password (OTP). Preferably, the additional information is encrypted by the user computer system using the public key of the service computer system, so that only the encrypted additional information is then forwarded from the Internet browser or the application program to the ID provider computer system via the network via a second session.

Über diese zweite Session wird auch der Request weitergeleitet. Der Aufbau der zweiten Session erfolgt durch Aufruf der URL des ID-Provider-Computersystems, welche in dem Request beinhaltet ist. Die zweite Session wird dabei als geschützte Kommunikationsverbindung aufgebaut, und zwar mit einer verschlüsselten Transportschicht, das heißt mit Transport Layer Security (TLS), die auch als Secure Sockets Layer (SSL) bezeichnet wird, insbesondere als https-Session.The request is also forwarded via this second session. The second session is established by calling the URL of the ID provider computer system, which is included in the request. The second session is established as a protected communication connection, namely with an encrypted transport layer, i.e. with Transport Layer Security (TLS), which is also known as Secure Sockets Layer (SSL), in particular as an https session.

Nach Ausführungsformen der Erfindung erzeugt das ID-Provider-Computersystem aufgrund des Empfangs des Requests über die zweite Session einen Identifikator für eine noch aufzubauende dritte Session, d.h. eine sog. Session-ID. Das ID-Provider-Computersystem speichert den Request sowie die zusammen mit dem Request über die zweite Session empfangene Zusatzinformation mit der Session-ID für die dritte Session.,According to embodiments of the invention, the ID provider computer system generates an identifier for a third session that is yet to be established, i.e. a so-called session ID, based on the receipt of the request via the second session. The ID provider computer system stores the request and the additional information received together with the request via the second session with the session ID for the third session.

Das ID-Provider-Computersystem sendet dann eine Nachricht über die zweite Session, welche eine logische Adresse des ID-Provider-Computersystems und beispielsweise auch die Session-ID der dritten Session beinhaltet. Von dieser logischen Adresse kann der Internetbrowser bzw. das Anwendungsprogramm zu einem späteren Zeitpunkt die Response auf den zuvor weitergeleiteten Request abrufen. Bei der logischen Adresse kann es sich um einen uniform resource locator (URL) handeln, durch den die Response abrufbar ist.The ID provider computer system then sends a message via the second session, which contains a logical address of the ID provider computer system and, for example, the session ID of the third session. The Internet browser or application program can use this logical address to retrieve the response to the previously forwarded request at a later point in time. The logical address can be a uniform resource locator (URL) through which the response can be retrieved.

Anschließend wird die dritte Session auf dem Application Layer zwischen einem Programm des Nutzer-Computersystems und dem ID-Provider-Computersystem aufgebaut, und zwar über den gesicherten Transportlayer der zweiten Session. Bei dem Programm kann es sich zum Beispiel um ein Browser-Plug-in des Internet-browsers oder ein von dem Internetbrowser verschiedenes Anwendungsprogramm handeln.The third session is then established on the application layer between a program on the user's computer system and the ID provider's computer system, via the secure transport layer of the second session. The program can be, for example, a browser plug-in for the Internet browser or an application program other than the Internet browser.

Das ID-Provider-Computersystem überträgt dann diejenigen Informationen über die dritte Session an das Programm, die für das Auslesen des oder der Attribute aus dem ID-Token benötigt werden. Diese Informationen beinhalten zumindest ein Zertifikat des ID-Provider-Computersystems, welches eine Angabe von Leserechten des ID-Provider-Computersystems zum Lesen von einem oder mehrerer Attribute beinhaltet.The ID provider computer system then transmits the information about the third session to the program that is required to read the attribute(s) from the ID token. This information includes at least one certificate from the ID provider computer system, which contains an indication of the ID provider computer system's read rights to read one or more attributes.

Das Programm des Nutzer-Computersystems prüft dann, ob die in dem Zertifikat angegebenen Leserechte ausreichend sind, um einen Lesezugriff des ID-Provider-Computersystems auf das oder die gemäß der Attributspezifikation des Requests zu lesenden Attribute zuzulassen. Wenn die Leserechte des ID-Provider-Computersystems ausreichend sind, werden die folgenden weiteren Schritte durchgeführt:

  1. a) Es wird eine lokale Verbindung zwischen dem Lesegerät des Nutzer-Computersystems und dem ID-Token aufgebaut. Bei einem ID-Token mit einer kontaktbehafteten Schnittstelle, beispielsweise einer Chipkarten-Schnittstelle, kann dies durch Einführen des ID-Tokens in das Lesegerät erfolgen. Bei einem ID-Token mit einer kontaktlosen Schnittstelle, wie zum Beispiel einer RFID oder einen NFC-Schnittstelle, kann dies dadurch erfolgen, dass der ID-Token auf das Lesegerät gelegt wird. Hier sind auch Token mit USB, BlueTooth oder microSD-Karten möglich sowie auch virtuelle SmartCards.
  2. b) Der Nutzer authentifiziert sich gegenüber dem ID-Token, beispielsweise durch Eingabe seiner Personal Identification Number (PIN) oder durch Eingabe einer anderen Information, wie zum Beispiel der Erfassung eines biometrischen Merkmals des Nutzers. Bei der Authentifizierung des Nutzers gegenüber dem ID-Token wird ein Session Key vereinbart. Insbesondere kann die Vereinbarung eines Session Keys mithilfe eines Diffie-Hellman-Protokolls erfolgen.
  3. c) Anschließend wird eine vierte Session auf dem Application Layer aufgebaut, und zwar zwischen einem Programm des ID-Tokens und dem ID-Provider-Computersystem, wobei diese vierte Session über die lokale Verbindung und die dritte Session verläuft und auf dem Application Layer eine zusätzliche Ende-zu-Ende Verschlüsselung mithilfe des in Schritt b vereinbarten Session Keys erfolgt.
  4. d) Über die vierte Session erfolgt dann eine gegenseitige Authentifizierung des ID-Tokens und des ID-Provider-Computersystems, beispielsweise mithilfe eines Challenge-Response-Protokolls.
  5. e) Das oder die Attribute gemäß der Attributspezifikation, welche das ID-Provider-Computersystem mit dem Request empfangen hat, werden nun über die vierte Session von dem ID-Provider-Computersystem aus dem ID-Token ausgelesen. Dies setzt die erfolgreiche Authentifizierung des Nutzers in Schritt b sowie die erfolgreiche gegenseitige Authentifizierung des ID-Tokens und des ID-Provider-Computersystems in Schritt d) voraus und erfolgt verschlüsselt über die vierte Session, sodass ein Maximum an Sicherheit und Vertrauenswürdigkeit hinsichtlich des oder der ausgelesenen Attribute gegeben ist.
The user computer system's program then checks whether the read rights specified in the certificate are sufficient to allow the ID provider computer system to access the attribute(s) to be read according to the attribute specification of the request. If the ID provider computer system's read rights are sufficient, the following additional steps are carried out:
  1. a) A local connection is established between the reader of the user computer system and the ID token. For an ID token with a contact interface, for example a chip card interface, this can be done by inserting the ID token into the reader. For an ID token with a contactless interface, such as an RFID or NFC interface, this can be done by placing the ID token on the reader. Tokens with USB, Bluetooth or microSD cards are also possible here, as are virtual smart cards.
  2. b) The user authenticates himself to the ID token, for example by entering his personal identification number (PIN) or by entering other information, such as the recording of a biometric characteristic of the user. When the user authenticates himself to the ID token, a session key is agreed. In particular, the agreement of a session key can be made using a Diffie-Hellman protocol.
  3. c) A fourth session is then established on the application layer between a program of the ID token and the ID provider computer system, whereby this fourth session runs via the local connection and the third session and additional end-to-end encryption is carried out on the application layer using the session key agreed in step b.
  4. d) The fourth session then provides mutual authentication of the ID token and the ID provider computer system, for example using a challenge-response protocol.
  5. e) The attribute(s) according to the attribute specification that the ID provider computer system received with the request are now extracted from the ID token by the ID provider computer system via the fourth session. This requires the successful authentication of the user in step b and the successful mutual authentication of the ID token and the ID provider computer system in step d) and is carried out encrypted via the fourth session so that maximum security and trustworthiness is provided with regard to the attribute(s) read out.

Das ID-Provider-Computersystem erzeugt dann eine Response, die das oder die ausgelesenen Attribute und die Kennung des Request und/oder die Zusatzinformation beinhaltet und zwar gemäß dem Request-Response Protokoll, dem der Request unterliegt. Bei einer SAML-Request wird also dementsprechend eine SAML-Response erzeugt. Über die Kennung des Request, die auch in der Response beinhaltet ist, wird hier die logische Zuordnung von Request und Response, d.h. das sog. Binding, hergestellt.The ID provider computer system then generates a response that contains the attribute(s) read out and the request identifier and/or the additional information in accordance with the request-response protocol to which the request is subject. In the case of a SAML request, a SAML response is generated accordingly. The logical assignment of request and response, i.e. the so-called binding, is established using the request identifier, which is also included in the response.

Die Response wird von dem ID-Provider-Computersystem signiert und zum Abrufen von der zuvor dem Nutzer-Computersystem über die Nachricht mitgeteilten logischen Adresse gespeichert.The response is signed by the ID provider computer system and stored for retrieval from the logical address previously communicated to the user computer system via the message.

Das Nutzer-Computersystem liest dann diese Response von dem ID-Provider-Computersystem mit Hilfe der logischen Adresse, beispielsweise der URL, und leitet die Response über die erste Session an das Dienst-Computersystem weiter. Mithilfe der Kennung der Response wird diese dem Request und damit der angeforderten Transaktion zugeordnet und dann wird die Transaktion von dem Dienst-Computersystem ausgeführt, das heißt beispielsweise ein Bezahlvorgang ausgelöst und/oder ein bestelltes Produkt geliefert, wenn dies der Inhalt der Response erlaubt.The user computer system then reads this response from the ID provider computer system using the logical address, for example the URL, and forwards the response to the service computer system via the first session. Using the response identifier, it is assigned to the request and thus to the requested transaction and then the transaction is executed by the service computer system, i.e., for example, a payment process is initiated and/or an ordered product is delivered if the content of the response allows this.

Nach einer Ausführungsform der Erfindung handelt es sich bei dem Programm des Nutzer-Computersystems um ein Browser-Plug-in des Internetbrowsers, wobei es sich bei dem Internetbrowser um ein übliches Browserprogramm, wie zum Beispiel Microsoft® Internet Explorer®, Safari®, Google Chrome™ oder Firefox® handeln kann. Alternativ kann es sich bei dem Programm des Nutzer-Computersystems um ein von dem Internetbrowser separates Anwendungsprogramm handeln.According to one embodiment of the invention, the program of the user computer system is a browser plug-in of the Internet browser, whereby the Internet browser can be a standard browser program such as Microsoft ® Internet Explorer ® , Safari ® , Google Chrome™ or Firefox ® . Alternatively, the program of the user computer system can be an application program separate from the Internet browser.

Nach einer Ausführungsform der Erfindung handelt es sich bei der von dem Nutzer eingegebenen Zusatzinformation um eine Bezahlinformation, wie zum Beispiel eine Kontoverbindung des Nutzers von der der in dem Request angegebene Bezahlbetrag abgebucht oder eingezogen werden soll.According to one embodiment of the invention, the additional information entered by the user is payment information, such as a user account number from which the payment amount specified in the request is to be debited or collected.

Das sogenannte Clearing, das heißt die Prüfung der Bonität des Kunden, sowie die Veranlassung des Zahlvorgangs kann dann durch das ID-Provider-Computersystem veranlasst werden, welches die Durchführung der Bezahlung mit der Response dem Dienst-Computersystem bestätigt. Dies hat den Vorteil, dass das Dienst-Computersystem keine Kenntnis hinsichtlich der Bezahlinformation des Nutzers, das heißt insbesondere seiner Kontoverbindung, erlangen muss.The so-called clearing, i.e. the checking of the customer's creditworthiness, as well as the initiation of the payment process can then be initiated by the ID provider computer system, which confirms the execution of the payment with the response to the service computer system. This has the advantage that the service computer system does not need to obtain any knowledge of the user's payment information, i.e. in particular his account details.

Alternativ kann der Nutzer seine Bezahlinformation mit dem öffentlichen Schlüssel des Dienst-Computersystems verschlüsseln, sodass nur die verschlüsselte Bezahlinformation des Nutzers an das ID-Provider-Computersystem übertragen wird. Das ID-Provider-Computersystem leitet dann die verschlüsselte Bezahlinformation mit der Response an das Dienst-Computersystem weiter, welches die Bezahlinformation entschlüsselt, und dann das Clearing durchführt sowie den Zahlbetrag von dem Konto des Nutzers gemäß der Bezahlinformation einzieht. Dies hat den Vorteil, dass das ID-Provider-Computersystem keine Kenntnis von den Bezahlinformationen des Nutzers erlangt.Alternatively, the user can encrypt his payment information with the public key of the service computer system, so that only the user's encrypted payment information is transmitted to the ID provider computer system. The ID provider computer system then forwards the encrypted payment information with the response to the service computer system, which decrypts the payment information and then carries out the clearing and collects the payment amount from the user's account in accordance with the payment information. This has the advantage that the ID provider computer system does not gain knowledge of the user's payment information.

Nach einer weiteren Ausführungsform der Erfindung gehört zu dem Computersystem ein Terminal, wie zum Beispiel ein Bankautomat oder ein Verkaufsautomat. Der Nutzer kann eine Anforderung in den Automat eingeben, wie zum Beispiel zur Abhebung von Bargeld oder zum Kauf eines bestimmten Produkts, wie zum Beispiel eines Getränks. Der Automat zeigt auf diese Nutzeranforderung hin ein optisch erfassbares Muster, wie zum Beispiel einen QR-Code, auf seinem Bildschirm an, das eine Information beinhaltet, um die Durchführung der Transaktion zu initiieren.According to a further embodiment of the invention, the computer system includes a terminal, such as an ATM or a vending machine. The user can enter a request into the machine, such as to withdraw cash or to purchase a specific product, such as a drink. In response to this user request, the machine displays an optically detectable pattern, such as a QR code, on its screen, which contains information to initiate the execution of the transaction.

Nach einer weiteren Ausführungsform der Erfindung ist das Terminal als mobiles Telekommunikationsgerät, insbesondere als sog. Smartmeter, für die Gebührenerfassung z.B. des Strom oder Gasverbrauchs, Taxameter oder Smartphone mit einer Gebührenerfassungsfunktion ausgebildet.According to a further embodiment of the invention, the terminal is designed as a mobile telecommunications device, in particular as a so-called smart meter, for the collection of fees, e.g. for electricity or gas consumption, taximeter or smartphone with a fee collection function.

Beispielsweise kann auf dem Smartphone eines Verkäufers die URL des Dienst-Computersystems, der Bezahlbetrag sowie der Zahlungsempfänger in Form eines optisch erfassten Musters ausgegeben und mit der Kamera des Nutzer-Computersystems, welches ebenfalls als Smartphone ausgebildet sein kann, erfasst werden. Auf diese Art und Weise können alltägliche Bezahlvorgänge auf sichere und bequeme Art und Weise sicher abgewickelt werden.For example, the URL of the service computer system, the payment amount and the payment recipient can be displayed on a seller's smartphone in the form of an optically captured pattern and recorded with the camera of the user's computer system, which can also be designed as a smartphone. In this way, everyday payment transactions can be processed safely and conveniently.

Im Weiteren werden Ausführungsformen der Erfindung mit Bezugnahme auf die Zeichnungen näher erläutert.In the following, embodiments of the invention are explained in more detail with reference to the drawings.

Es zeigen:

  • 1 ein Blockdiagramm eines ID-Tokens,
  • 2 eine Anordnung eines Computersystems zur Durchführung eines erfindungsgemäßen Verfahrens.
Show it:
  • 1 a block diagram of an ID token,
  • 2 an arrangement of a computer system for carrying out a method according to the invention.

Elemente der nachfolgenden Figuren, die zueinander identisch sind oder einander entsprechen, sind jeweils mit denselben Bezugszeichen gekennzeichnet.Elements of the following figures which are identical or correspond to one another are each identified by the same reference numerals.

Die 1 zeigt einen ID-Token 106, bei dem es sich zum Beispiel um einen elektronischen Personalausweis handeln kann.The 1 shows an ID token 106, which can be, for example, an electronic identity card.

Der geschützte Speicherbereich 120 des ID-Token 106 dient zur Speicherung eines Referenzwerts, der für die Authentifizierung eines Nutzers 102 gegenüber dem ID-Token 106 benötigt wird. Bei diesem Referenzwert handelt es sich beispielsweise um eine Kennung, insbesondere eine so genannte Personal Identification Number (PIN), oder um Referenzdaten für ein biometrisches Merkmal des Nutzers 102, welches für die Authentifizierung des Nutzers gegenüber dem ID-Token 106 verwendet werden kann.The protected memory area 120 of the ID token 106 is used to store a reference value that is required for authenticating a user 102 to the ID token 106. This reference value is, for example, an identifier, in particular a so-called personal identification number (PIN), or reference data for a biometric feature of the user 102, which can be used to authenticate the user to the ID token 106.

Der geschützte Bereich 122 dient zur Speicherung eines privaten Schlüssels und der geschützte Speicherbereich 124 dient zur Speicherung von Attributen, zum Beispiel des Nutzers 102, wie zum Beispiel dessen Name, Wohnort, Geburtsdatum, Geschlecht, und/oder von Attributen, die den ID-Token selbst betreffen, wie zum Beispiel die Institution, die den ID-Token erstellt oder ausgegeben hat, die Gültigkeitsdauer des ID-Tokens, einen Identifikator des ID-Tokens, wie zum Beispiel eine Passnummer oder eine Kreditkartennummer.The protected area 122 is used to store a private key and the protected storage area 124 is used to store attributes, for example of the user 102, such as his name, place of residence, date of birth, gender, and/or attributes relating to the ID token itself, such as the institution that created or issued the ID token, the validity period of the ID token, an identifier of the ID token, such as a passport number or a credit card number.

Der elektronische Speicher 118 kann ferner einen Speicherbereich 126 zur Speicherung eines Zertifikats aufweisen. Das Zertifikat beinhaltet einen öffentlichen Schlüssel, der dem in dem geschützten Speicherbereich 122 gespeicherten privaten Schlüssel zugeordnet ist. Das Zertifikat kann nach einem Public Key Infrastruktur (PKI) Standard erstellt worden sein, beispielsweise nach dem X.509 Standard.The electronic memory 118 can also have a storage area 126 for storing a certificate. The certificate contains a public key that is associated with the private key stored in the protected storage area 122. The certificate can have been created according to a public key infrastructure (PKI) standard, for example according to the X.509 standard.

Das Zertifikat muss nicht zwangsläufig in dem elektronischen Speicher 118 des ID-Tokens 106 gespeichert sein. Alternativ oder zusätzlich kann das Zertifikat auch in einem öffentlichen Verzeichnisserver gespeichert sein.The certificate does not necessarily have to be stored in the electronic memory 118 of the ID token 106. Alternatively or additionally, the certificate can also be stored in a public directory server.

Der ID-Token 106 hat einen Prozessor 128. Der Prozessor 128 dient zur Ausführung von Programminstruktionen 130, 132 und 134. Die Programminstruktionen 130 dienen zur Nutzerauthentifizierung, d.h. zur Authentifizierung des Nutzers 102 gegenüber dem ID-Token.The ID token 106 has a processor 128. The processor 128 is used to execute program instructions 130, 132 and 134. The program instructions 130 are used for user authentication, i.e. for authenticating the user 102 to the ID token.

Bei Verwendung einer PIN gibt der Nutzer 102 seine PIN zu seiner Authentifizierung in den ID-Token 106 ein, beispielsweise über das Nutzer-Computersystem 100. Durch Ausführung der Programminstruktionen 130 wird dann auf den geschützten Speicherbereich 120 zugegriffen, um die eingegebene PIN mit dem dort gespeicherten Referenzwert der PIN zu vergleichen. Für den Fall, dass die eingegebene PIN mit dem Referenzwert der PIN übereinstimmt, gilt der Nutzer 102 als authentifiziert.When using a PIN, the user 102 enters his PIN into the ID token 106 for authentication, for example via the user computer system 100. By executing the program instructions 130, the protected memory area 120 is then accessed in order to compare the entered PIN with the reference value of the PIN stored there. In the event that the entered PIN matches the reference value of the PIN, the user 102 is considered authenticated.

Alternativ wird ein biometrisches Merkmal des Nutzers 102 erfasst. Beispielsweise hat der ID-Token 106 hierzu einen Fingerabdrucksensor oder ein Fingerabdrucksensor ist an das Nutzer-Computersystem 100 angeschlossen. Die von dem Nutzer 102 erfassten biometrischen Daten werden durch Ausführung der Programminstruktionen 130 mit den in dem geschützten Speicherbereich 120 gespeicherten biometrischen Referenzdaten verglichen. Bei hinreichender Übereinstimmung der von dem Nutzer 102 erfassten biometrischen Daten mit den biometrischen Referenzdaten gilt der Nutzer 102 als authentifiziert.Alternatively, a biometric feature of the user 102 is recorded. For example, the ID token 106 has a fingerprint sensor for this purpose or a fingerprint sensor is connected to the user computer system 100. The biometric data recorded from the user 102 are compared with the biometric reference data stored in the protected memory area 120 by executing the program instructions 130. If the biometric data recorded from the user 102 sufficiently matches the biometric reference data, the user 102 is considered authenticated.

Die Programminstruktionen 134 dienen zur Ausführung der den ID-Token 106 betreffenden Schritte eines kryptographischen Protokolls zur Authentifizierung eines ID-Provider-Computersystems 136 gegenüber dem ID-Token 106. Bei dem kryptographischen Protokoll kann es sich um ein Challenge-Response-Protokoll basierend auf einem symmetrischen Schlüssel oder einem asymmetrischen Schlüsselpaar handeln.The program instructions 134 serve to execute the steps of a cryptographic protocol relating to the ID token 106 for authenticating an ID provider computer system 136 to the ID token 106. The cryptographic protocol can be a challenge-response protocol based on a symmetric key or an asymmetric key pair.

Beispielsweise wird durch das kryptographische Protokoll ein Extended Access Control-Verfahren implementiert, wie es für maschinenlesbare Reisedokumente (machine-readable travel documents - MRTD) von der internationalen Luftfahrtbehörde (ICAO) spezifiziert ist. Durch erfolgreiche Ausführung des kryptographischen Protokolls authentifiziert sich das ID-Provider-Computersystem 136 gegenüber dem ID-Token und weist dadurch seine Leseberechtigung zum Lesen der in dem geschützten Speicherbereich 124 gespeicherten Attribute nach. Die Authentifizierung kann auch gegenseitig sein, d.h. auch der ID-Token 106 muss sich dann gegenüber dem ID-Provider-Computersystem 136 nach demselben oder einem anderen kryptographischen Protokoll authentifizieren.For example, the cryptographic protocol implements an extended access control method as specified for machine-readable travel documents (MRTD) by the International Aviation Organization (ICAO). By successfully executing the cryptographic protocol, the ID provider computer system 136 authenticates itself to the ID token and thereby proves its read authorization to read the attributes stored in the protected memory area 124. The authentication can also be mutual, i.e. the ID token 106 must then also authenticate itself to the ID provider computer system 136 using the same or a different cryptographic protocol.

Die Programminstruktionen 132 dienen zur Ende-zu-Ende-Verschlüsselung von zwischen dem ID-Token 106 und einem ID-Provider-Computersystem 136 (vgl. 2) übertragenen Daten, zumindest aber der von dem ID-Provider-Computersystem 136 aus dem geschützten Speicherbereich 124 ausgelesenen Attribute. Für die Ende-zu-Ende-Verschlüsselung kann ein symmetrischer Schlüssel verwendet werden, der beispielsweise anlässlich der Ausführung des kryptographischen Protokolls zwischen dem ID-Token 106 und dem ID-Provider-Computersystem 136 vereinbart wird.The program instructions 132 serve for end-to-end encryption between the ID token 106 and an ID provider computer system 136 (cf. 2 ) transmitted data, or at least the attributes read by the ID provider computer system 136 from the protected memory area 124. A symmetric key can be used for end-to-end encryption. which is agreed upon, for example, during the execution of the cryptographic protocol between the ID token 106 and the ID provider computer system 136.

Der ID-Token 106 hat eine Schnittstelle 108 zur Kommunikation mit einer entsprechenden Schnittstelle 104 eines Nutzer-Computersystems 100 (vergleiche 2). Die Schnittstelle kann kontaktlos oder kontaktbehaftet ausgebildet sein. Insbesondere kann es sich um eine RFID- oder um eine NFC-Kommunikationsschnittstelle handeln.The ID token 106 has an interface 108 for communication with a corresponding interface 104 of a user computer system 100 (see 2 ). The interface can be contactless or contact-based. In particular, it can be an RFID or an NFC communication interface.

Der Zugriff auf den geschützten Speicherbereich 124 zum Lesen einer oder mehrerer der Attribute kann nur über den Prozessor 128 des ID-Tokens 106 erfolgen, da der geschützte Speicherbereich 124 sowie auch die weiteren geschützten Speicherbereiche 120, 122 nicht unmittelbar zum Beispiel über ein Bussystem mit der Schnittstelle 108 verbunden sind, sondern nur mit dem Prozessor 128, das heißt ein Zugriff über die Schnittstelle 108 unmittelbar auf den geschützten Speicherbereich 124 ist bereits schaltungstechnisch ausgeschlossen. Allein der Prozessor 128 kann also lesend auf den geschützten Speicherbereich 124 zugreifen, um dann gegebenenfalls die ausgelesenen Attribute über die Schnittstelle 108 auszugeben.Access to the protected memory area 124 to read one or more of the attributes can only be made via the processor 128 of the ID token 106, since the protected memory area 124 and the other protected memory areas 120, 122 are not directly connected to the interface 108, for example via a bus system, but only to the processor 128, i.e. access to the protected memory area 124 directly via the interface 108 is already excluded from a circuitry perspective. Only the processor 128 can therefore read the protected memory area 124 in order to then output the read attributes via the interface 108 if necessary.

Die 2 zeigt ein Nutzer-Computersystem 100 des Nutzers 102. Bei dem Nutzer-Computersystem 100 kann es sich um einen Personal-Computer (PC), einen tragbaren Computer, wie zum Beispiel einen Laptop, Notebook oder Tablet-Computer, ein mobiles Telekommunikationsgerät, insbesondere ein Smartphone handeln.The 2 shows a user computer system 100 of the user 102. The user computer system 100 can be a personal computer (PC), a portable computer, such as a laptop, notebook or tablet computer, a mobile telecommunications device, in particular a smartphone.

Das Nutzer-Computersystem hat zumindest einen Prozessor 110 zur Ausführung eines Anwendungsprogramms 112. Das Anwendungsprogramm 112 ist dazu ausgebildet, über eine Netzwerk-Schnittstelle 114 des Nutzer-Computersystems 100 über ein Netzwerk 116 zu kommunizieren. Beispielsweise handelt es sich bei dem Anwendungsprogramm um einen Internet-Browser oder ein anderes spezialisiertes Anwendungsprogramm, welches über das Netzwerk 116 kommunizieren kann, insbesondere ein HTML-fähiges Anwendungsprogramm.The user computer system has at least one processor 110 for executing an application program 112. The application program 112 is designed to communicate via a network interface 114 of the user computer system 100 over a network 116. For example, the application program is an Internet browser or another specialized application program that can communicate over the network 116, in particular an HTML-capable application program.

Der Prozessor 110 dient zur Ausführung eines weiteren Programms 113, bei dem es sich beispielsweise um ein Plug-in für das Anwendungsprogramm 112 handeln kann, beispielsweise um ein Browser-Plug-in, wenn das Anwendungsprogramm 112 als Internet-Browser ausgebildet ist, oder um ein von dem Anwendungsprogramm separates Programm.The processor 110 serves to execute a further program 113, which can be, for example, a plug-in for the application program 112, for example a browser plug-in if the application program 112 is designed as an Internet browser, or a program separate from the application program.

Bei dem Netzwerk kann es sich um ein Computernetzwerk, wie zum Beispiel das Internet, handeln. Insbesondere kann das Netzwerk 116 auch ein Mobilfunknetzwerk beinhalten.The network may be a computer network, such as the Internet. In particular, the network 116 may also include a mobile network.

Das ID-Provider-Computersystem 136 hat eine Netzwerk-Schnittstelle 138 zur Kommunikation über das Netzwerk 116. Das ID-Provider-Computersystem 136 hat ferner einen Speicher 140 mit einem geschützten Speicherbereich 141, in dem ein privater Schlüssel 142 des ID-Provider-Computersystems 136 gespeichert ist, sowie auch das entsprechende Zertifikat 144. Auch bei diesem Zertifikat kann es sich beispielsweise um ein Zertifikat nach einem PKI-Standard, wie zum Beispiel X.509 handeln.The ID provider computer system 136 has a network interface 138 for communication via the network 116. The ID provider computer system 136 also has a memory 140 with a protected memory area 141 in which a private key 142 of the ID provider computer system 136 is stored, as well as the corresponding certificate 144. This certificate can also be a certificate according to a PKI standard, such as X.509.

Das ID-Provider-Computersystem 136 hat ferner zumindest einen Prozessor 145 zur Ausführung von Programminstruktionen 146 und 148. Durch Ausführung der Programminstruktionen 146 werden die das ID-Provider-Computersystem 136 betreffende Schritte des kryptographischen Protokolls ausgeführt. Insgesamt wird also das kryptographische Protokoll durch Ausführung der Programminstruktionen 134 durch den Prozessor 128 des ID-Tokens 106 sowie durch Ausführung der Programminstruktionen 146 durch den Prozessor 145 des ID-Provider-Computersystems 136 implementiert.The ID provider computer system 136 also has at least one processor 145 for executing program instructions 146 and 148. By executing the program instructions 146, the steps of the cryptographic protocol relating to the ID provider computer system 136 are executed. Overall, the cryptographic protocol is therefore implemented by executing the program instructions 134 by the processor 128 of the ID token 106 and by executing the program instructions 146 by the processor 145 of the ID provider computer system 136.

Die Programminstruktionen 148 dienen zur Implementierung der Ende-zu-Ende-Verschlüsselung auf Seiten des ID-Provider-Computersystems 136, beispielsweise basierend auf dem symmetrischen Schlüssel, der anlässlich der Ausführung des kryptographischen Protokolls zwischen dem ID-Token 106 und dem ID-Provider-Computersystem 136 vereinbart worden ist. Prinzipiell kann jedes an sich vor bekannte Verfahren zur Vereinbarung des symmetrischen Schlüssels für die Ende-zu-Ende-Verschlüsselung verwendet werden, wie zum Beispiel ein Diffie-Hellman-Schlüsselaustausch.The program instructions 148 serve to implement the end-to-end encryption on the part of the ID provider computer system 136, for example based on the symmetric key that was agreed upon when the cryptographic protocol was executed between the ID token 106 and the ID provider computer system 136. In principle, any previously known method for agreeing the symmetric key for the end-to-end encryption can be used, such as a Diffie-Hellman key exchange.

Das ID-Provider-Computersystem 136 befindet sich vorzugsweise in einer besonders geschützten Umgebung, insbesondere in einem so genannten Trust-Center, sodass das ID-Provider-Computersystem 136 in Kombination mit der Notwendigkeit der Authentifizierung des Nutzers 102 gegenüber dem ID-Token 106 den Vertrauensanker für die Authentizität der aus dem ID-Token 106 ausgelesenen Attribute bildet.The ID provider computer system 136 is preferably located in a particularly protected environment, in particular in a so-called trust center, so that the ID provider computer system 136, in combination with the need to authenticate the user 102 to the ID token 106, forms the trust anchor for the authenticity of the attributes read from the ID token 106.

Ein Dienst-Computersystem 150 kann zur Entgegennahme einer Bestellung oder eines Auftrags für eine Dienstleistung oder ein Produkt, insbesondere eine Online-Dienstleistung, ausgebildet sein. Beispielsweise kann der Nutzer 102 online über das Netzwerk 116 ein Konto bei einer Bank eröffnen oder eine andere Finanz- oder Bankdienstleistung in Anspruch nehmen. Das Dienst-Computersystem 150 kann auch als Online-Warenhaus ausgebildet sein, sodass der Nutzer 102 beispielsweise online ein Mobiltelefon oder dergleichen erwerben kann. Ferner kann das Dienst-Computersystem 150 auch zur Lieferung von digitalen Inhalten ausgebildet sein, beispielsweise für den Download von Musik- und/oder Videodaten.A service computer system 150 can be designed to accept an order or a contract for a service or a product, in particular an online service. For example, the user 102 can open an account with a bank online via the network 116 or use another financial or banking service. The service computer system 150 can also be designed as an online department store, so that the user 102 can, for example, can purchase a mobile phone or the like online. Furthermore, the service computer system 150 can also be designed to deliver digital content, for example for downloading music and/or video data.

Das Dienst-Computersystem 150 hat hierzu eine Netzwerk-Schnittstelle 152 zur Verbindung mit dem Netzwerk 116. Ferner hat das Dienst-Computersystem 150 zumindest einen Prozessor 154 zur Ausführung von Programminstruktionen 156. Durch Ausführung der Programminstruktionen 156 werden beispielsweise dynamische HTML-Seiten generiert, über die der Nutzer 102 seinen Auftrag oder seine Bestellung eingeben kann, sowie Transaktionen durchgeführt.For this purpose, the service computer system 150 has a network interface 152 for connecting to the network 116. Furthermore, the service computer system 150 has at least one processor 154 for executing program instructions 156. By executing the program instructions 156, for example, dynamic HTML pages are generated via which the user 102 can enter his order or purchase order and carry out transactions.

Je nach der Art des beauftragten oder bestellten Produkts oder der Dienstleistung muss das Dienst-Computersystem 150 ein oder mehrere Attribute des Nutzers 102 und/oder dessen ID-Token 106 anhand eines oder mehrerer vorgegebener Kriterien überprüfen. Nur wenn diese Prüfung bestanden wird, wird die Bestellung oder der Auftrag des Nutzers 102 entgegengenommen und/oder ausgeführt.Depending on the type of product or service ordered, the service computer system 150 must check one or more attributes of the user 102 and/or their ID token 106 based on one or more predetermined criteria. Only if this check is passed will the order or request of the user 102 be accepted and/or executed.

Zur Durchführung einer elektronischen Transaktion kann wie folgt vorgegangen werden:

  • - Der Nutzer 102 startet das Anwendungsprogramm 112 des Nutzer-Computersystems, wobei im Weiteren ohne Beschränkung der Allgemeinheit davon ausgegangen wird, dass es sich hierbei um einen Internet-Browser handelt. Der Nutzer 102 gibt eine URL des Dienst-Computersystems 150 in den Internet-Browser ein, so dass daraufhin eine erste Session 201 zwischen dem Internet-Browser 112 und dem Dienst-Computersystem 150 über das Netzwerk 116 aufgebaut wird. Der Nutzer kann dann über die erste Session 201 einen von dem Dienst-Computersystem 150 angebotenen Dienst anfordern, wie zum Beispiel ein Produkt bestellen, Daten zum Download anfordern oder die Durchführung einer finanziellen Transaktion anfordern. Hierzu wird von dem Internet-Browser 112 eine entsprechende Transaktionsanforderung 158 an das Dienst-Computersystem 150 gesendet, die diese Anforderung signalisiert.
  • - Das Dienst-Computersystem empfängt also von dem Internet-Browser über die erste Session eine Transaktionsanforderung 158 des Nutzers 102.
  • - Aufgrund des Empfangs der Transaktionsforderung 158 über die erste Session 201 erzeugt das Dienst-Computersystem 150 einen Request 166. Der Request 166 beinhaltet (i) eine Attributspezifikation, der aus dem ID-Token für die Durchführung der Transaktion auszulesenden Attribute. Bei diesen Attributen kann es sich um persönliche Angaben zu dem Nutzer 102 und/oder Daten betreffend den ID-Token 106 selbst oder ein Pseudonym des Nutzers 102, welches von dem ID-Token 106 verfügbar ist, handeln. Der Request beinhaltet ferner (ii) die Transaktionsdaten zur Spezifizierung der Transaktion, wie zum Beispiel einen Bezahlbetrag, der für den Kauf des bestellten Produkts oder die Durchführung des bestellten Dienstes an das Dienst-Computersystem 150 oder einen Dritten zu entrichten ist, und/oder andere Transaktionsdaten, die die durchzuführende Transaktion spezifizieren. Der Request beinhaltet ferner (iii) eine Kennung 180 des Requests, beispielsweise eine GUID, die für das sogenannte Binding des Requests und einer daraufhin empfangenen Response 174 erforderlich ist. Für die Erzeugung der Kennung kann das Dienst-Computersystem 150 einen GUID-Generator aufweisen. Die Request beinhaltet ferner (iv) eine URL des ID-Provider-Computersystems 136 und (v) eine URL des Dienst-Computersystems 150 selbst. Der Request wird von dem Dienst-Computersystem 150 signiert, nämlich mit Hilfe eines privaten Schlüssels des Dienst-Computersystems 150. Bei dem Request 166 kann es sich um einen SAML-Request oder einen anderen Request eines Request-Response-Protokolls handeln.
  • - Als Antwort auf die Transaktionsanforderung 158 sendet dann das Dienst-Computersystem 150 eine Webseite 160 über die erste Session 201 an das Nutzer-Computersystem 100, wobei die Webseite 160 ein Eingabefeld 162 zur Eingabe einer Zusatzinformation durch den Nutzer 102 für die Transaktion aufweist und ferner ein Eingabeelement 164, das der Nutzer 102 zum Beispiel durch Anklicken selektieren kann, wenn die Webseite 160 durch den Internet-Browser 112 wiedergegeben wird, um die Weiterleitung des Request 166 zu erlauben. Zusammen mit der Webseite 160 wird auch der Request 166 über die erste Session 201 zu dem Internet-Browser 112 übertragen.
  • - Aufgrund des Empfangs der Webseite 160 und des Requests 166 wird die Webseite 160 durch den Internet-Browser 112 wiedergegeben, so dass der Nutzer 102 die Zusatzinformation in das Eingabefeld 162 eingeben kann. Beispielsweise handelt es sich bei der Zusatzinformation um eine Kontoverbindung des Nutzers 102, eine Kreditkartennummer des Nutzers 102 oder andere ergänzende Transaktionsdaten und/oder um eine Authentifizierungsinformation zum Nachweis der Berechtigung des Nutzers 102 für die Durchführung der Transaktion, wozu der Nutzer 102 beispielsweise ein One-Time-Passwort (OTP) in das Eingabefeld 162 eingibt. Vorzugsweise wird die von dem Nutzer 102 eingegebene Zusatzinformation 168 mit dem öffentlichen Schlüssel des Dienst-Computersystems 150 durch das Nutzer-Computersystem 100 verschlüsselt, um ein entsprechendes Chiffrat zu erhalten.
  • - Anschließend wird eine zweite Session 202 zwischen dem Internet-Browser 112 und dem ID-Provider-Computersystem 136 über das Netzwerk 116 aufgebaut, und zwar mit Hilfe der URL des ID-Provider-Computersystems 136, die das Nutzer-Computersystem 100 mit dem Request 166 empfangen hat. Die zweite Session 202 wird mit einem gesicherten Transportlayer aufgebaut, beispielsweise als https-Session.
  • - Über die zweite Session 202 werden der Request 166 und die Zusatzinformation 168 oder nur das mit Hilfe des öffentlichen Schlüssels des Dienst-Computersystems 150 gewonnene Chiffrat der Zusatzinformation 168 von dem Nutzer-Computersystem 100 an das ID-Provider-Computersystem 136 weitergeleitet.
  • - Aufgrund des Empfangs des Requests 166 durch das ID-Provider-Computersystem 136 erzeugt dieses durch Ausführen seiner Programminstruktionen 170 eine Session-ID für eine noch aufzubauende dritte Session 203. Der Request 166 und die Zusatzinformation 168 werden in dem Speicher 140 des ID-Provider-Computersystems 136 gespeichert.
  • - Das ID-Provider-Computersystem 136 generiert dann eine Nachricht 172, die die Session-ID für den Aufbau der dritten Session 203 und eine logische Adresse beinhaltet. Mit Hilfe der logischen Adresse kann die von dem ID-Provider-Computersystem 136 aufgrund des Request 166 zu erzeugende Response 174 abgerufen werden. Insbesondere kann die logische Adresse als eine URL ausgebildet sein. Die Nachricht 172 wird über die zweite Session 202 von dem ID-Provider-Computersystem 136 an den Internet-Browser 112 gesendet.
  • - Aufgrund des Empfangs der Nachricht 172 wird die dritte Session 203 zwischen dem Programm 113 des Nutzer-Computersystems 100 und dem ID-Provider-Computersystem 136 über den gesicherten Transportlayer der zweiten Session 202 aufgebaut. Beispielsweise handelt es sich bei dem Programm 113 um ein Browser-Plug-in des Internet-Browsers 112. Alternativ kann es sich bei dem Programm 113 auch um ein weiteres Anwendungsprogramm handeln. Es ist dabei auch möglich, die Funktionalitäten des Internet-Browsers 112 und die des Programms 113 in einem Programm zu implementieren.
  • - Über die dritte Session 203 wird dann zumindest das Zertifikat 144 an das Programm 113 übertragen.
  • - Durch das Programm 113 wird dann geprüft, ob die in dem Zertifikat 144 angegebenen Leserechte ausreichend sind, um einen Lesezugriff des ID-Provider-Computersystems 136 auf das oder die gemäß der Attributspezifikation, die in dem Request 166 beinhaltet ist, zu lesenden Attribute zuzulassen.
To carry out an electronic transaction, you can proceed as follows:
  • - The user 102 starts the application program 112 of the user computer system, which is assumed from now on, without any loss of generality, to be an Internet browser. The user 102 enters a URL of the service computer system 150 into the Internet browser, so that a first session 201 is then established between the Internet browser 112 and the service computer system 150 via the network 116. The user can then use the first session 201 to request a service offered by the service computer system 150, such as ordering a product, requesting data for downloading, or requesting the execution of a financial transaction. To do this, the Internet browser 112 sends a corresponding transaction request 158 to the service computer system 150, signaling this request.
  • - The service computer system therefore receives a transaction request 158 from the user 102 from the Internet browser via the first session.
  • - Upon receipt of the transaction request 158 via the first session 201, the service computer system 150 generates a request 166. The request 166 includes (i) an attribute specification of the attributes to be read from the ID token for carrying out the transaction. These attributes can be personal information about the user 102 and/or data relating to the ID token 106 itself or a pseudonym of the user 102 which is available from the ID token 106. The request also includes (ii) the transaction data for specifying the transaction, such as a payment amount to be paid to the service computer system 150 or a third party for the purchase of the ordered product or the performance of the ordered service, and/or other transaction data specifying the transaction to be carried out. The request also includes (iii) an identifier 180 of the request, for example a GUID, which is required for the so-called binding of the request and a response 174 received thereafter. The service computer system 150 can have a GUID generator to generate the identifier. The request also includes (iv) a URL of the ID provider computer system 136 and (v) a URL of the service computer system 150 itself. The request is signed by the service computer system 150, namely with the aid of a private key of the service computer system 150. The request 166 can be a SAML request or another request of a request-response protocol.
  • - In response to the transaction request 158, the service computer system 150 then sends a web page 160 to the user computer system 100 via the first session 201, the web page 160 having an input field 162 for the user 102 to enter additional information for the transaction and also an input element 164 that the user 102 can select, for example by clicking, when the web page 160 is displayed by the Internet browser 112 in order to allow the forwarding of the request 166. Together with the web page 160, the request 166 is also transmitted to the Internet browser 112 via the first session 201.
  • - Due to the receipt of the web page 160 and the request 166, the web page 160 is displayed by the Internet browser 112 so that the user 102 can enter the additional information in the input field 162. For example, the additional information is an account number of the user 102, a credit card number of the user 102 or other additional transaction data and/or authentication information to prove the authorization of the user 102 to carry out the transaction, for which the user 102 enters, for example, a one-time password (OTP) in the input field 162. Before Preferably, the additional information 168 entered by the user 102 is encrypted with the public key of the service computer system 150 by the user computer system 100 in order to obtain a corresponding ciphertext.
  • - A second session 202 is then established between the Internet browser 112 and the ID provider computer system 136 via the network 116, using the URL of the ID provider computer system 136 that the user computer system 100 received with the request 166. The second session 202 is established with a secure transport layer, for example as an https session.
  • - The request 166 and the additional information 168 or only the ciphertext of the additional information 168 obtained with the aid of the public key of the service computer system 150 are forwarded from the user computer system 100 to the ID provider computer system 136 via the second session 202.
  • - Upon receipt of the request 166 by the ID provider computer system 136, the latter generates a session ID for a third session 203 that is yet to be established by executing its program instructions 170. The request 166 and the additional information 168 are stored in the memory 140 of the ID provider computer system 136.
  • - The ID provider computer system 136 then generates a message 172 which contains the session ID for setting up the third session 203 and a logical address. The logical address can be used to retrieve the response 174 to be generated by the ID provider computer system 136 based on the request 166. In particular, the logical address can be designed as a URL. The message 172 is sent from the ID provider computer system 136 to the Internet browser 112 via the second session 202.
  • - Due to the receipt of the message 172, the third session 203 is established between the program 113 of the user computer system 100 and the ID provider computer system 136 via the secure transport layer of the second session 202. For example, the program 113 is a browser plug-in of the Internet browser 112. Alternatively, the program 113 can also be another application program. It is also possible to implement the functionalities of the Internet browser 112 and those of the program 113 in one program.
  • - Via the third session 203, at least the certificate 144 is transferred to the program 113.
  • - The program 113 then checks whether the read rights specified in the certificate 144 are sufficient to allow read access of the ID provider computer system 136 to the attribute or attributes to be read according to the attribute specification contained in the request 166.

Nur dann, wenn diese Leserechte ausreichend sind, werden die folgenden Schritte durchgeführt:

  1. a) Es wird eine lokale Verbindung 176 zwischen den Schnittstellen 104 und 108 aufgebaut. Beispielsweise erscheint auf dem Bildschirm des Nutzer-Computersystems 100 eine Aufforderung für den Nutzer 102 zum Einführen des ID-Tokens 106 in ein Lesegerät des Nutzer-Computersystems 100, welches die Schnittstelle 104 aufweist oder zum Auflegen des ID-Tokens 106 auf eine kontaktlos ausgebildete Schnittstelle 104.
  2. b) Der Nutzer 102 authentifiziert sich dann gegenüber dem ID-Token beispielsweise durch Eingabe seiner PIN in das Nutzer-Computersystem 100 bzw. dessen Lesegerät. Die Authentifizierung des Nutzers kann mit Hilfe eines kryptographischen Protokolls erfolgen, beispielsweise mittels eines Challenge-Response-Protokolls oder basierend auf einem Diffie-Helman-Schlüsselaustausch, wobei im Rahmen der Authentifizierung des Nutzers ein Session-Key vereinbart wird.
  3. c) Unter der Voraussetzung der erfolgreichen Authentifizierung des Nutzers wird eine vierte Session 204 zwischen dem ID-Token 106 und dem ID-Provider-Computersystem 136 aufgebaut, und zwar über die lokale Verbindung 176 und die dritte Session 203. Die vierte Session 204 wird mit einer Ende-zu-Ende-Verschlüsselung mit Hilfe des Session-Keys, der bei der Authentifizierung des Nutzers in dem Schritt b) vereinbart worden ist, geschützt.
  4. d) Über die vierte Session erfolgt dann eine gegenseitige Authentifizierung des ID-Tokens 106 und des ID-Provider-Computersystems 136 mit Hilfe der jeweiligen privaten Schlüssel, das heißt den in dem geschützten Speicherbereich 122 gespeicherten privaten Schlüssels des ID-Tokens 106 und dem privaten Schlüssels 142 des ID-Provider-Computersystems 136. Für diese gegenseitige Authentifizierung können die Zertifikate des ID-Tokens 106 aus dem Speicherbereich 126 (vergleiche 1) sowie das Zertifikat 144 des ID-Provider-Computersystems 136 über die vierte Session ausgetauscht werden.
  5. e) Unter der Voraussetzung der erfolgreichen Authentifizierung des Nutzers gegenüber dem ID-Token und der erfolgreichen gegenseitigen Authentifizierung des ID-Tokens 106 und des ID-Provider-Computersystems 136 liest dann das ID-Provider-Computersystem 136 das oder die Attribute gemäß der Attributspezifikation aus dem ID-Token 106 aus, wobei die Attribute durch die Ende-zu-Ende-Verschlüsselung bei der Übertragung von dem ID-Token 106 zu dem ID-Provider-Computersystem 136 geschützt werden. Hierzu sendet das ID-Provider-Computersystem über die vierte Session 204 ein Lesekommando über die vierte Session an den ID-Token 106. Das Lesekommando 182 beinhaltet die Attributspezifikation, das heißt die Auswahl derjenigen Attribute, die aus dem geschützten Speicherbereich 124 des ID-Tokens 106 ausgelesen werden sollen.
Only if these read rights are sufficient, the following steps are carried out:
  1. a) A local connection 176 is established between the interfaces 104 and 108. For example, a request appears on the screen of the user computer system 100 for the user 102 to insert the ID token 106 into a reader of the user computer system 100, which has the interface 104, or to place the ID token 106 on a contactless interface 104.
  2. b) The user 102 then authenticates himself to the ID token, for example by entering his PIN into the user computer system 100 or its reader. The user can be authenticated using a cryptographic protocol, for example using a challenge-response protocol or based on a Diffie-Helman key exchange, with a session key being agreed upon as part of the user authentication.
  3. c) Provided that the user is successfully authenticated, a fourth session 204 is established between the ID token 106 and the ID provider computer system 136, via the local connection 176 and the third session 203. The fourth session 204 is protected with end-to-end encryption using the session key that was agreed upon during the user authentication in step b).
  4. d) The fourth session then provides mutual authentication of the ID token 106 and the ID provider computer system 136 using the respective private keys, i.e. the private key of the ID token 106 stored in the protected storage area 122 and the private key 142 of the ID provider computer system 136. For this mutual authentication, the certificates of the ID token 106 from the storage area 126 (see 1 ) and the certificate 144 of the ID provider computer system tems 136 about the fourth session.
  5. e) Provided that the user is successfully authenticated to the ID token and that the ID token 106 and the ID provider computer system 136 are successfully authenticated, the ID provider computer system 136 then reads the attribute(s) from the ID token 106 in accordance with the attribute specification, the attributes being protected by end-to-end encryption during transmission from the ID token 106 to the ID provider computer system 136. To do this, the ID provider computer system sends a read command to the ID token 106 via the fourth session 204. The read command 182 contains the attribute specification, i.e. the selection of the attributes that are to be read from the protected memory area 124 of the ID token 106.

Durch Ausführung der Programminstruktionen 178 wird dann von dem ID-Provider-Computersystem 136 die Response 174, beispielsweise ein SAML-Response, auf dem Request 166 erzeugt. Die Response 178 beinhaltet die zuvor über die vierte Session 240 aus dem ID-Token 106 ausgelesenen Attribute, die Zusatzinformation 168 oder - alternativ - nicht die Zusatzinformation 168, sondern nur das Chiffrat der Zusatzinformation 168, sowie die Kennung 180, die das Dienst-Computersystem 150 initial für den Request 166 vergeben hat. Die Response 174 wird von dem ID-Provider-Computersystem 136 mit Hilfe des privaten Schlüssels 142 signiert und dann in dem Speicher 140 gespeichert, so dass die Request 166 von der logischen Adresse abrufbar ist.

  • - Das Nutzer-Computersystem 100, wie zum Beispiel dessen Internet-Browser 112, liest dann mit Hilfe der logischen Adresse die Response 174 beispielsweise über die zweite Session 202 aus dem Speicher 140.
  • - Die Response 174 wird dann von dem Nutzer-Computersystem 100, beispielsweise von dem Internet-Browser 112, über die erste Session 201 an das Dienst-Computersystem 150 weitergeleitet. Hierbei kann vorgesehen sein, dass der Nutzer 102 von dem Internet-Browser 112 zur Eingabe einer Bestätigung aufgefordert wird, bevor die Response 174 an das Dienst-Computersystem weitergeleitet wird. Dabei kann ferner vorgesehen sein, dass von dem Internet-Browser der Inhalt der Response 174 ganz oder teilweise angezeigt wird, insbesondere die aus dem ID-Token ausgelesenen Attribute und/oder die Zusatzinformation 168, damit sich der Nutzer 102 von der Richtigkeit dieser Daten überzeugen kann, bevor sie an das Dienst-Computersystem 150 zur Durchführung der Transaktion weitergeleitet werden.
  • - Das Dienst-Computersystem 150 ordnet die empfangene Response 174 dem Request 166 anhand der übereinstimmenden Kennungen 180 des Requests 166 und der Response 174 zu.
  • - Das Dienst-Computersystem 150 prüft dann die Signatur der Response 166 und liest das oder die erforderlichen Attribute aus der Response 174 aus. Anhand der Attribute wird dann geprüft, ob die angeforderte Transaktion durchgeführt werden kann, indem das oder die Attribute mit einem oder mehreren vorgegebenen Kriterien verglichen wird. Bei diesen Kriterien kann es sich zum Beispiel um das Alter oder die Kreditwürdigkeit des Nutzers 102 handeln. Bei dem Attribut kann es sich auch um ein Pseudonym des Nutzers 102 handeln, mit Hilfe dessen das Dienst-Computersystem 150 dann ein in einer Datenbank des Dienst-Computersystems 150 gespeichertes Attribut des Nutzers 102, wie zum Beispiel eine Lieferadresse ausliest. Das Prüfkriterium ist hierbei, ob ein Nutzer mit dem in der Response 174 beinhalteten Pseudonym seitens des Dienst-Computersystems 150 registriert ist.
    • Ergibt die Prüfung des Dienst-Computersystems 150, dass die Transaktion durchführbar ist, so wird die Transaktion anhand der Transaktionsdaten und der Zusatzinformation 168 durchgeführt.
By executing the program instructions 178, the ID provider computer system 136 then generates the response 174, for example a SAML response, to the request 166. The response 178 contains the attributes previously read from the ID token 106 via the fourth session 240, the additional information 168 or - alternatively - not the additional information 168, but only the ciphertext of the additional information 168, and the identifier 180 that the service computer system 150 initially assigned for the request 166. The response 174 is signed by the ID provider computer system 136 using the private key 142 and then stored in the memory 140 so that the request 166 can be retrieved from the logical address.
  • - The user computer system 100, such as its Internet browser 112, then uses the logical address to read the response 174, for example via the second session 202, from the memory 140.
  • - The response 174 is then forwarded by the user computer system 100, for example by the Internet browser 112, to the service computer system 150 via the first session 201. In this case, it can be provided that the user 102 is prompted by the Internet browser 112 to enter a confirmation before the response 174 is forwarded to the service computer system. It can also be provided that the Internet browser displays the content of the response 174 in whole or in part, in particular the attributes read from the ID token and/or the additional information 168, so that the user 102 can ensure that this data is correct before it is forwarded to the service computer system 150 to carry out the transaction.
  • - The service computer system 150 assigns the received response 174 to the request 166 based on the matching identifiers 180 of the request 166 and the response 174.
  • - The service computer system 150 then checks the signature of the response 166 and reads the required attribute(s) from the response 174. The attributes are then used to check whether the requested transaction can be carried out by comparing the attribute(s) with one or more predetermined criteria. These criteria can be, for example, the age or creditworthiness of the user 102. The attribute can also be a pseudonym of the user 102, with the help of which the service computer system 150 then reads an attribute of the user 102 stored in a database of the service computer system 150, such as a delivery address. The test criterion here is whether a user with the pseudonym contained in the response 174 is registered by the service computer system 150.
    • If the check by the service computer system 150 shows that the transaction is feasible, the transaction is carried out based on the transaction data and the additional information 168.

Beispielsweise handelt es sich bei dem Programm 113 um einen Browser-Plug-in, das in einer Registry eines Betriebssystems des Nutzer-Computersystems mit einer Plug-in-Kennung registriert ist, wobei es sich bei dem Betriebssystem zum Beispiel um ein Windows-Betriebssystem, Android oder iOS handeln kann. In diesem Fall beinhaltet die Nachricht 172 von dem ID-Provider-Computersystem an den Internet-Browser 112 diese Plug-in-Kennung 184, so dass das Plug-in 113 aufgrund des Empfangs der Nachricht gestartet wird.For example, the program 113 is a browser plug-in that is registered in a registry of an operating system of the user's computer system with a plug-in identifier, where the operating system can be, for example, a Windows operating system, Android or iOS. In this case, the message 172 from the ID provider computer system to the Internet browser 112 contains this plug-in identifier 184, so that the plug-in 113 is started upon receipt of the message.

In einem weiteren Beispiel handelt es sich bei dem Programm 113 ein von dem Internet-Browser 112 separates Anwendungsprogramm, wie zum Beispiel eine sogenannte Bürger-App oder Ausweis-App. Dieses Anwendungsprogramm 113 wird von dem Internet-Browser 112 durch Aufruf einer lokalen URL gestartet, wobei die lokale URL eine fest vorgegebener Portnummer gemäß dem TCP-Protokoll beinhaltet. Diese lokale URL wird zusammen mit der Webseite 160 von dem Dienst-Computersystem 150 an das Nutzer-Computersystem 100 übertragen und zwar über die erste Session 201, um das Starten des Anwendungsprogramms 113 mit Hilfe der lokalen URL durch den Internet-Browser 112 zu bewirken.In another example, the program 113 is an application program that is separate from the Internet browser 112, such as a so-called citizen app or ID app. This application program 113 is started by the Internet browser 112 by calling a local URL, wherein the local URL contains a fixed port number according to the TCP protocol. This local URL is transmitted together with the website 160 from the service computer system 150 to the user computer system 100, specifically via the first session 201, in order to start the application program 113 using the local URL. URL by the Internet browser 112.

Für den Fall, dass nur das Chiffrat der Zusatzinformation 168, nicht aber die Zusatzinformation 168 selbst über die zweite Session 202 von dem Nutzer-Computersystem 100 an das ID-Provider-Computersystem 136 übertragen wird, beinhaltet auch die Response 174 nur dieses Chiffrat, nicht aber die Zusatzinformation 168 selbst. In diesem Fall entschlüsselt das Dienst-Computersystem 150 das Chiffrat mit Hilfe des privaten Schlüssels des Dienst-Computersystems 150, um dann mit Hilfe der Zusatzinformation 168 die angeforderte Transaktion durchzuführen. Hierbei kann es sich zum Beispiel um die Durchführung einer finanziellen Transaktion, wie zum Beispiel die Durchführung einer Überweisung in der Höhe des Bezahlbetrags handeln, der in der Zusatzinformation 168 angegeben ist.In the event that only the ciphertext of the additional information 168, but not the additional information 168 itself, is transmitted from the user computer system 100 to the ID provider computer system 136 via the second session 202, the response 174 also contains only this ciphertext, but not the additional information 168 itself. In this case, the service computer system 150 decrypts the ciphertext using the private key of the service computer system 150 in order to then carry out the requested transaction using the additional information 168. This can, for example, involve carrying out a financial transaction, such as carrying out a transfer in the amount of the payment amount specified in the additional information 168.

Alternativ ist es aber auch möglich, dass die Durchführung der Zahlung seitens des ID-Provider-Computersystems 136 ausgelöst wird. Dies kann so erfolgen, dass das ID-Provider-Computersystem 136 die hierfür erforderlichen Transaktionsdaten über den Request 166 und die Zusatzinformationen 168 empfängt und dann die Zahlung durchführt oder veranlasst. Die Response 174 beinhaltet dann eine Bestätigung des ID-Provider-Computersystems 136, dass die Zahlung erfolgt ist.Alternatively, it is also possible for the payment to be initiated by the ID provider computer system 136. This can be done by the ID provider computer system 136 receiving the transaction data required for this via the request 166 and the additional information 168 and then making or initiating the payment. The response 174 then contains a confirmation from the ID provider computer system 136 that the payment has been made.

Eine Übermittlung der Zusatzinformation 168 an das Dienst-Computersystem 150 kann dann unterbleiben, was zum Schutz der Vertraulichkeit dieser Zusatzinformationen 168 vorteilhaft ist, denn diese Zusatzinformationen 168 müssen dann nur gegenüber dem vertrauenswürdigen ID-Provider-Computersystem 136 offengelegt werden. Die eigentliche Transaktion, z.B. die Lieferung des bestellten Produkts, wird dann nach Empfang der Zahlungsbestätigung, die in der Response 174 beinhaltet ist, von dem Dienst-Computersystem 150 veranlasst.Transmission of the additional information 168 to the service computer system 150 can then be omitted, which is advantageous for protecting the confidentiality of this additional information 168, because this additional information 168 then only needs to be disclosed to the trustworthy ID provider computer system 136. The actual transaction, e.g. the delivery of the ordered product, is then initiated by the service computer system 150 after receipt of the payment confirmation, which is included in the response 174.

Beispielsweise beinhaltet die Zusatzinformation 168 ein OTP. Das Dienst-Computersystem 150 prüft dann als zusätzliche Voraussetzung für die Durchführung der Transaktion, ob das OTP gültig ist. Vorzugsweise wird das OTP durch das Nutzer-Computersystem 100 mit dem öffentlichen Schlüssel des Dienst-Computersystems 150 verschlüsselt und dann von dem Dienst-Computersystems 150 nach dem Empfang der Zusatzinformation mit dem verschlüsselten OTP entschlüsselt, um dann dessen Validität zu prüfen.For example, the additional information 168 contains an OTP. The service computer system 150 then checks whether the OTP is valid as an additional prerequisite for carrying out the transaction. The OTP is preferably encrypted by the user computer system 100 with the public key of the service computer system 150 and then decrypted by the service computer system 150 after receiving the additional information with the encrypted OTP in order to then check its validity.

Zu dem Computersystem gehört ein Terminal 186, bei dem es sich zum Beispiel um einen Automat, insbesondere einen Bankautomat oder Verkaufsautomat, handeln kann. Beispielsweise kann der Nutzer 102 in das Terminal 186 einen Geldbetrag eingeben, um Bargeld von seinem Konto abzuheben. Auf einem Display 188 des Automat wird dann ein optisch erfassbares Muster angezeigt, wie zum Beispiel ein QR-Code, der ein URL des Dienst-Computersystems 150 sowie den von dem Nutzer 102 gewünschten Geldbetrag beinhaltet.The computer system includes a terminal 186, which can be a machine, in particular an ATM or vending machine. For example, the user 102 can enter an amount of money into the terminal 186 in order to withdraw cash from his account. A visually detectable pattern is then shown on a display 188 of the machine, such as a QR code, which contains a URL of the service computer system 150 and the amount of money desired by the user 102.

Dieses optische Muster wird von dem Display 188 mit Hilfe einer Kamera 190 des Nutzer-Computersystems 100 erfasst. Das Nutzer-Computersystem 100 erzeugt dann die Transaktionsanforderung 158, die diesen Geldbetrag angibt. Die erste Session 201 wird hier mit Hilfe der aus dem optischen Muster erfassten URL des Dienst-Computersystems 150 aufgebaut und die Transaktionsanforderung 158 mit dem gewünschten Geldbetrag wird über diese erste Session 201 an das Dienst-Computersystem 150 übermittelt. Das Dienst-Computersystem 150 erzeugt dann einen entsprechenden Request 166, um die für die Auszahlung des gewünschten Geldbetrags erforderlichen Attribute und Zusatzinformationen 168 abzufragen.This optical pattern is captured by the display 188 using a camera 190 of the user computer system 100. The user computer system 100 then generates the transaction request 158, which specifies this amount of money. The first session 201 is set up here using the URL of the service computer system 150 captured from the optical pattern, and the transaction request 158 with the desired amount of money is transmitted to the service computer system 150 via this first session 201. The service computer system 150 then generates a corresponding request 166 to query the attributes and additional information 168 required for paying out the desired amount of money.

Dann wird entweder durch das ID-Provider-Computersystem 136 oder durch das Dienst-Computersystem 150 die Belastung eines Kontos des Nutzers 102, welches dieser zum Beispiel in der Zusatzinformation 168 angegeben hat, veranlasst. Aufgrund des Empfangs der Response 174 und der Veranlassung der Zahlung empfängt dann das Terminal 186 ein Signal zur Ausgabe des gewünschten Geldbetrags zum Beispiel in Form von Bargeld oder zur Aufladung einer Cash-Card des Nutzers 102. Dies kann so erfolgen, dass das Terminal 186 unmittelbar mit dem Dienst-Computersystem 150 verbunden ist oder über das Netzwerk 116.Then, either the ID provider computer system 136 or the service computer system 150 initiates the debiting of an account of the user 102, which the user has specified, for example, in the additional information 168. Upon receipt of the response 174 and initiation of the payment, the terminal 186 then receives a signal to dispense the desired amount of money, for example in the form of cash or to top up a cash card of the user 102. This can be done in such a way that the terminal 186 is connected directly to the service computer system 150 or via the network 116.

Alternativ kann es sich bei dem Terminal 186 auch um einen Verkaufsautomat handeln, wobei dann kein Bargeld, sondern ein gewünschtes Produkt, wie zum Beispiel eine Getränkedose oder eine Zigarettenschachtel von dem Verkaufsautomaten abgegeben wird, nachdem die Durchführung der Zahlung von dem Dienst-Computersystem 150 signalisiert worden ist.Alternatively, the terminal 186 may also be a vending machine, in which case no cash but a desired product, such as a can of beverages or a pack of cigarettes, is dispensed from the vending machine after the execution of the payment has been signaled by the service computer system 150.

In einer weiteren Anwendung kann es sich bei dem Terminal 186 um ein mobiles Telekommunikationsgerät, insbesondere ein Smartphone handeln. Wenn der Nutzer 102 von dem Inhaber des Terminals 186 etwas kaufen möchte, so gibt der Inhaber des Terminals 186 den entsprechenden Kaufpreis in das Terminal 186 ein, so dass dann auf dem Display 188 in Form des optisch erfassbaren Musters wiederum dieser Kaufpreis als Bezahlbetrag sowie die URL des Dienst-Computersystems 150 ausgegeben wird. Nach Beendigung der Transaktion empfängt das Terminal 186 von dem Dienst-Computersystem 150 ein Signal, welches anzeigt, dass der Bezahlvorgang erfolgt ist und der Inhaber des Terminals 186 gibt dann die Ware an den Nutzer 102 ab. Dies kann auch in dem Kassensystem zum Beispiel eines Supermarkts implementiert sein. Eine weitere Anwendung ist ein Taxameter, welches Taxigebühren erfasst oder ein anderer Verbrauchszähler, wie zum Beispiel ein Verbrauchszähler für den Strom- oder Gasverbrauch eines Haushalts, insbesondere ein sog. Smartmeter.In a further application, the terminal 186 can be a mobile telecommunications device, in particular a smartphone. If the user 102 wants to buy something from the owner of the terminal 186, the owner of the terminal 186 enters the corresponding purchase price into the terminal 186, so that this purchase price is then displayed on the display 188 in the form of the optically detectable pattern as the payment amount and the URL of the service computer system 150. After the transaction has been completed, the terminal 186 receives from the service computer system 150 a signal which indicates that the payment transaction has taken place and the owner of the terminal 186 then hands over the goods to the user 102. This can also be implemented in the cash register system of a supermarket, for example. Another application is a taximeter which records taxi fares or another consumption meter, such as a consumption meter for the electricity or gas consumption of a household, in particular a so-called smart meter.

BezugszeichenlisteList of reference symbols

100100
Nutzer-ComputersystemUser computer system
102102
NutzerUsers
104104
Schnittstelleinterface
106106
ID-TokenID token
108108
Schnittstelleinterface
110110
Prozessorprocessor
112112
Anwendungsprogramm/Internet-BrowserApplication program/Internet browser
113113
Programm/AnwendungsprogrammProgram/Application program
114114
Netzwerk-SchnittstelleNetwork interface
116116
Netzwerknetwork
118118
elektronischer Speicherelectronic storage
120120
geschützter Speicherbereichprotected storage area
122122
geschützter Speicherbereichprotected storage area
124124
geschützter Speicherbereichprotected storage area
126126
SpeicherbereichStorage area
128128
Prozessorprocessor
130130
ProgramminstruktionenProgram instructions
132132
ProgramminstruktionenProgram instructions
134134
ProgramminstruktionenProgram instructions
136136
ID-Provider-ComputersystemID provider computer system
138138
Netzwerk-SchnittstelleNetwork interface
140140
SpeicherStorage
141141
geschützter Speicherbereichprotected storage area
142142
privater Schlüsselprivate key
144144
Zertifikatcertificate
145145
Prozessorprocessor
146146
ProgramminstruktionenProgram instructions
148148
ProgramminstruktionenProgram instructions
150150
Dienst-ComputersystemService computer system
152152
Netzwerk-SchnittstelleNetwork interface
154154
Prozessorprocessor
156156
ProgramminstruktionenProgram instructions
158158
TransaktionsanforderungTransaction request
160160
Webseitewebsite
162162
Eingabefeldinput box
164164
EingabeelementInput element
166166
RequestRequest
168168
Zusatzinformationextra information
170170
ProgramminstruktionenProgram instructions
172172
NachrichtNews
174174
ResponseResponse
176176
lokale Verbindunglocal connection
178178
ProgramminstruktionenProgram instructions
180180
KennungIdentifier
182182
LesekommandoRead command
184184
KennungIdentifier
186186
Terminalterminal
188188
DisplayDisplay
190190
Kameracamera

Claims (22)

Elektronisches Transaktionsverfahren unter Verwendung eines ID-Tokens (106), der einem Nutzer (102) zugeordnet ist, wobei der ID-Token einen elektronischen Speicher (118) mit einem geschützten Speicherbereich (124) aufweist, in dem ein oder mehrere Attribute gespeichert sind, wobei ein Zugriff auf den geschützten Speicherbereich nur über einen Prozessor (128) des ID-Tokens möglich ist, und wobei der ID-Token eine Kommunikations-Schnittstelle (108) zur Kommunikation mit einem Lesegerät eines Nutzer-Computersystems (100) aufweist, mit folgenden Schritten: - Anzeige eines optisch lesbaren Musters auf einem Bildschirm (188) eines Terminals (186), wobei in dem optisch lesbaren Muster eine Information codiert ist, die zumindest eine logische Adresse eines Dienst-Computersystems (150) und Transaktionsdaten beinhaltet, - Erfassung des Musters mithilfe eines optischen Sensors (190) des Nutzer-Computersystems und Decodierung des Musters durch das Nutzer-Computersystem, - Übertragung einer Transaktionsanforderung (158) von dem Nutzer-Computersystem an die logische Adresse des Dienst-Computersystems über das Netzwerk, wobei die Transaktionsanforderung die Transaktionsdaten beinhaltet, - Übertragung eines Request (166) von dem Dienst-Computersystem über das Nutzer-Computersystems (100) an ein ID-Provider-Computersystem (136), wobei die Übertragung über das Netzwerk erfolgt, wobei der Request eine Attributspezifikation der aus dem ID-Token für die Durchführung der Transaktion auszulesenden Attribute beinhaltet, - Authentifizierung des Nutzers gegenüber dem ID-Token, - Authentifizierung des ID-Provider-Computersystems gegenüber dem ID-Token über das Netzwerk, - unter der Voraussetzung der erfolgreichen Authentifizierung des Nutzers und des ID-Provider-Computersystems gegenüber dem ID-Token, Auslesen des oder der Attribute gemäß der Attributspezifikation durch das ID-Provider-Computersystem aus dem ID-Token über das Netzwerk mit Ende-zu-Ende-Verschlüsselung, - Übertragung einer Response (174) von dem ID-Provider-Computersystem über das Nutzer-Computersystem an das Dienst-Computersystem, wobei die Übertragung der Response über das Netzwerk erfolgt, wobei die Response das oder die ausgelesenen Attribute beinhaltet, und wobei die Response von dem ID-Provider-Computersystem signiert ist, Durchführung der Transaktion mithilfe der Transaktionsdaten und des oder der Attribute durch das Dienst-Computersystem, wobei ein Bestätigungssignal für die Durchführung der Transaktion von dem Dienst-Computersystem über das Netzwerk an das Nutzer-Computersystem gesendet und von dem Nutzer-Computersystem als optisches Muster ausgegeben wird, wobei das Terminal zur Erfassung des optischen Musters von dem Nutzer-Computersystem ausgebildet ist.Electronic transaction method using an ID token (106) that is assigned to a user (102), wherein the ID token has an electronic memory (118) with a protected memory area (124) in which one or more attributes are stored, wherein access to the protected memory area is only possible via a processor (128) of the ID token, and wherein the ID token has a communication interface (108) for communication with a reader of a user computer system (100), with the following steps: - display of an optically readable pattern on a screen (188) of a terminal (186), wherein information is encoded in the optically readable pattern that contains at least one logical address of a service computer system (150) and transaction data, - detection of the pattern using an optical sensor (190) of the user computer system and decoding of the pattern by the user computer system, - transmission of a transaction request (158) from the user computer system to the logical address of the Service computer system via the network, wherein the transaction request contains the transaction data, - transmission of a request (166) from the service computer system via the user computer system (100) to an ID provider computer system (136), wherein the transmission via the network takes place, the request containing an attribute specification of the attributes to be read from the ID token for carrying out the transaction, - authentication of the user to the ID token, - authentication of the ID provider computer system to the ID token via the network, - provided that the user and the ID provider computer system are successfully authenticated to the ID token, reading the attribute(s) according to the attribute specification by the ID provider computer system from the ID token via the network with end-to-end encryption, - transmission of a response (174) from the ID provider computer system via the user computer system to the service computer system, the response being transmitted via the network, the response containing the attribute(s) read out, and the response being signed by the ID provider computer system, carrying out the transaction using the transaction data and the attribute(s) by the service computer system, a confirmation signal for carrying out the transaction being sent from the service computer system via the network to the User computer system and output by the user computer system as an optical pattern, wherein the terminal is designed to detect the optical pattern from the user computer system. Verfahren nach Anspruch 1, mit dem weiteren Schritt der Prüfung, ob das oder die Attribute ein vorgegebenes Kriterium erfüllen durch das Dienst-Computersystem, wobei die Transaktion nur durchgeführt wird, wenn das Kriterium erfüllt ist.Procedure according to Claim 1 , with the further step of checking whether the attribute(s) satisfy a given criterion by the service computer system, whereby the transaction is only carried out if the criterion is met. Verfahren nach Anspruch 1 oder 2, wobei die Transaktionsdaten einen Zahlungsbetrag beinhalten und wobei die Transaktion von dem Dienst-Computersystem initiiert wird, um eine finanzielle Transaktion in Höhe des Zahlungsbetrags durchzuführen.Procedure according to Claim 1 or 2 , wherein the transaction data includes a payment amount and wherein the transaction is initiated by the service computer system to perform a financial transaction in the amount of the payment amount. Verfahren nach Anspruch 3, wobei es sich bei dem Terminal um ein Bankterminal zur Auszahlung von Bargeld oder zur Aufladung einer Geldkarte handelt, wobei der Nutzer den Zahlungsbetrag durch Eingabe in den Bankterminal auswählt, und ein Konto des Nutzers aufgrund der finanziellen Transaktion in Höhe des Zahlungsbetrags belastet wird, woraufhin das Dienst-Computersystem das Bestätigungssignal an das Nutzer-Computersystemsendet und das Bankterminal aufgrund des vom Nutzer-Computersystem erfassten optischen Musters das Bargeld in Höhe des Zahlungsbetrags auszahlt oder die Geldkarte in Höhe des Zahlungsbetrags auflädt.Procedure according to Claim 3 , wherein the terminal is a bank terminal for withdrawing cash or for topping up a cash card, wherein the user selects the payment amount by entering it into the bank terminal, and a user's account is debited in the amount of the payment amount as a result of the financial transaction, whereupon the service computer system sends the confirmation signal to the user computer system and the bank terminal withdraws the cash in the amount of the payment amount or tops up the cash card in the amount of the payment amount based on the optical pattern detected by the user computer system. Verfahren nach Anspruch 3, wobei es sich bei dem Terminal um einen Verkaufsautomat handelt, wobei es sich bei dem Zahlungsbetrag um einen Verkaufspreis für ein von dem Verkaufsautomat abgebbares Produkt handelt, wobei das Dienst-Computersystem die finanzielle Transaktion initiiert, um ein Konto des Benutzers in Höhe des Zahlungsbetrags zu belasten, woraufhin das Dienst-Computersystem das Bestätigungssignal an das Nutzer-Computersystem überträgt und der Verkaufsautomat aufgrund des vom Nutzer-Computersystem erfassten optischen Musters das Produkt abgibt.Procedure according to Claim 3 , wherein the terminal is a vending machine, wherein the payment amount is a sales price for a product dispensable by the vending machine, wherein the service computer system initiates the financial transaction to debit an account of the user in the amount of the payment amount, whereupon the service computer system transmits the confirmation signal to the user computer system and the vending machine dispenses the product based on the optical pattern detected by the user computer system. Verfahren nach Anspruch 3, wobei es sich bei dem Terminal um ein Taxameter handelt, wobei es sich bei dem Zahlungsbetrag um ein Beförderungsentgelt für eine Taxifahrt handelt, wobei das Dienst-Computersystem die finanzielle Transaktion initiiert, um ein Konto des Nutzers mit dem Zahlungsbetrag zu belasten, woraufhin das Dienst-Computersystem das Bestätigungssignal an das Nutzer-Computersystem überträgt und das Taxameter aufgrund des vom Nutzer-Computersystem erfassten optischen Musters einen Beleg für die Bezahlung der Taxifahrt ausgibt.Procedure according to Claim 3 , wherein the terminal is a taximeter, wherein the payment amount is a transportation fee for a taxi ride, wherein the service computer system initiates the financial transaction to debit an account of the user with the payment amount, whereupon the service computer system transmits the confirmation signal to the user computer system and the taximeter issues a receipt for payment of the taxi ride based on the optical pattern detected by the user computer system. Verfahren nach einem der vorhergehenden Ansprüche, wobei es sich bei dem Terminal um ein Smartphone handelt, wobei das optisch lesbare Muster eine Kontoverbindung eines Inhabers des Smartphones beinhaltet, wobei das Dienst-Computersystem die finanzielle Transaktion initiiert, um den Zahlungsbetrag auf das Konto des Inhabers des Smartphones zu überweisen, woraufhin das Dienst-Computersystem das Bestätigungssignal an das Nutzer-Computersystem überträgt, welches von dem Smartphone aufgrund des vom Nutzer-Computersystem erfassten optischen Musters über eine Nutzerschnittstelle ausgegeben wird, um den Inhaber des Smartphones von der Zahlung zu informieren.Method according to one of the preceding claims, wherein the terminal is a smartphone, wherein the optically readable pattern contains an account connection of a holder of the smartphone, wherein the service computer system initiates the financial transaction to transfer the payment amount to the account of the holder of the smartphone, whereupon the service computer system transmits the confirmation signal to the user computer system, which is issued by the smartphone via a user interface based on the optical pattern detected by the user computer system, in order to inform the holder of the smartphone of the payment. Verfahren nach Anspruch 1 oder 2 , wobei es sich bei dem Terminal um einen Verbrauchszähler handelt, und wobei das optisch lesbare Muster einen von dem Verbrauchszähler erfassten Verbrauchsstand beinhaltet, wobei das Dienst-Computersystem die Transaktion in Form einer Datenbank-Transaktion durchführt, um den Verbrauchsstand zu speichern.Procedure according to Claim 1 or 2 , wherein the terminal is a consumption meter, and wherein the optically readable pattern includes a consumption level recorded by the consumption meter, wherein the service computer system carries out the transaction in the form of a database transaction to store the consumption level. Verfahren nach einem der vorhergehenden Ansprüche, mit folgenden Schritten: - Aufbau einer ersten Session (201) zwischen einem Anwendungsprogramm (112) des Nutzer-Computersystems und dem Dienst-Computersystem (150) über das Netzwerk (116), - Empfang der Transaktionsanforderung (158) über die erste Session durch das Dienst-Computersystem von dem Anwendungsprogramm (112), - Erzeugung eines Request (166) durch das Dienst-Computersystem aufgrund des Empfangs der Transaktionsanforderung, wobei der Request von dem Dienst-Computersystem signiert wird und der Request eine Attributspezifikation, der aus dem ID-Token für die Durchführung der Transaktion auszulesenden Attribute, Transaktionsdaten zur Spezifizierung der Transaktion, eine Kennung (180) des Request, eine URL eines ID-Provider-Computersystems und eine URL des Dienst-Computersystems beinhaltet, - Übertragung einer Webseite (160) und des Request über die erste Session von dem Dienst-Computersystem an das Nutzer-Computersystem, wobei die Webseite ein Eingabefeld (162) zur Eingabe einer Zusatzinformation (168) für die Durchführung der Transaktion aufweist, - Anzeige der Webseite durch das Anwendungsprogramm und Eingabe der Zusatzinformation durch den Nutzer in das Eingabefeld, - Aufbau einer zweiten Session (202) zwischen dem Anwendungsprogramm (112) und dem ID-Provider-Computersystem über das Netzwerk mithilfe der URL des ID-Provider-Computersystems, wobei die zweite Session mit einem gesicherten Transportlayer aufgebaut wird, - Weiterleitung des Request und der Zusatzinformation von dem Anwendungsprogramm an das ID-Provider-Computersystem über die zweite Session, - aufgrund des Empfangs des Request, Erzeugung einer Session-ID für eine dritte Session (203) durch das ID-Provider-Computersystem und Speicherung des Request sowie der Zusatzinformation durch das ID-Provider-Com putersystem, - Senden einer Nachricht von dem ID-Provider-Computersystem an das Anwendungsprogramm (112) mit der Session-ID der dritten Session und einer logischen Adresse über die zweite Session, - Aufbau der dritten Session zwischen einem Programm (113) des Nutzer-Computersystems und dem ID-Provider-Computersystem über den gesicherten Transportlayer der zweiten Session, wobei das Programm von dem Anwendungsprogramm (112) verschieden sein kann, - Übertragung zumindest eines Zertifikats (144) des ID-Provider-Computersystems an das Programm (113), wobei das Zertifikat eine Angabe von Leserechten des ID-Provider-Computersystems zum Lesen von einem oder mehreren der in dem ID-Token gespeicherten Attribute beinhaltet, wobei die Übertragung des Zertifikats über die dritte Session erfolgt, - Prüfung durch das Programm (113), ob die in dem Zertifikat angegebenen Leserechte ausreichend sind, um einen Lesezugriff des ID-Provider-Computersystems auf das oder die gemäß der Attributspezifikation zu lesenden Attribute zu zulassen, und nur wenn die Leserechte ausreichend sind: a) Aufbau einer lokalen Verbindung (176) zwischen dem Lesegerät des Nutzer-Computersystems und dem ID-Token, b) Authentifizierung des Nutzers gegenüber dem ID-Token, wobei ein Session-Key vereinbart wird, c) Aufbau einer vierten Session (204) zwischen dem ID-Token und dem ID-Provider-Computersystem über die lokale Verbindung und die dritte Session mit einer Ende-zu-Ende Verschlüsselung mithilfe des Session-Key, d) Gegenseitige Authentifizierung des ID-Tokens und des ID-Provider-Computersystems über die vierte Session, e) Auslesen des oder der Attribute gemäß der Attributspezifikation durch das ID-Provider-Computersystem über die vierte Session aus dem ID-Token. - Erzeugung der Response (174), die das oder die ausgelesenen Attribute und zumindest die Kennung (180) des Request beinhaltet, und die von dem ID-Provider-Computersystem signiert wird, - Speicherung der Response zum Abrufen mit Hilfe der logischen Adresse, - Lesen der Response von dem ID-Provider-Computersystem durch das Nutzer-Computersystem durch Abruf der Response mittels eines Lesekommandos von der logischen Adresse über das Netzwerk, - Weiterleitung der Response durch das Nutzer-Computersystem über die erste Session an das Dienst-Computersystem, - Zuordnung der Response zu dem Request mit Hilfe der Kennung, die in der Response beinhaltet ist, durch das Dienst-Computersystem, - Durchführung der Transaktion mithilfe der Response durch das ID-Provider-Computersystem.Method according to one of the preceding claims, comprising the following steps: - establishing a first session (201) between an application program (112) of the user computer system and the service computer system (150) via the network (116), - receiving the transaction request (158) via the first session by the service computer system from the application program (112), - generation of a request (166) by the service computer system based on receipt of the transaction request, wherein the request is signed by the service computer system and the request contains an attribute specification of the attributes to be read from the ID token for carrying out the transaction, transaction data for specifying the transaction, an identifier (180) of the request, a URL of an ID provider computer system and a URL of the service computer system, - transmission of a web page (160) and the request via the first session from the service computer system to the user computer system, wherein the web page has an input field (162) for entering additional information (168) for carrying out the transaction, - display of the web page by the application program and input of the additional information by the user in the input field, - establishment of a second session (202) between the application program (112) and the ID provider computer system via the network using the URL of the ID provider computer system, wherein the second session is established with a secure transport layer, - forwarding of the request and the additional information from the application program to the ID provider computer system via the second session, - based on the receipt of the request, generation of a session ID for a third session (203) by the ID provider computer system and storage of the request and the additional information by the ID provider computer system, - sending a message from the ID provider computer system to the application program (112) with the session ID of the third session and a logical address via the second session, - setting up the third session between a program (113) of the user computer system and the ID provider computer system via the secure transport layer of the second session, wherein the program can be different from the application program (112), - transferring at least one certificate (144) of the ID provider computer system to the program (113), wherein the certificate contains an indication of read rights of the ID provider computer system for reading one or more of the attributes stored in the ID token, wherein the certificate is transferred via the third session, - checking by the program (113) whether the read rights specified in the certificate are sufficient to enable read access by the ID provider computer system to access the attribute or attributes to be read according to the attribute specification, and only if the reading rights are sufficient: a) establishing a local connection (176) between the reader of the user computer system and the ID token, b) authenticating the user to the ID token, whereby a session key is agreed, c) establishing a fourth session (204) between the ID token and the ID provider computer system via the local connection and the third session with end-to-end encryption using the session key, d) mutual authentication of the ID token and the ID provider computer system via the fourth session, e) reading the attribute or attributes according to the attribute specification from the ID token by the ID provider computer system via the fourth session. - Generation of the response (174) which contains the read attribute(s) and at least the identifier (180) of the request, and which is signed by the ID provider computer system, - Storage of the response for retrieval using the logical address, - Reading of the response from the ID provider computer system by the user computer system by retrieving the response using a read command from the logical address via the network, - Forwarding of the response by the user computer system via the first session to the service computer system, - Assignment of the response to the request by the service computer system using the identifier contained in the response, - Execution of the transaction by the ID provider computer system using the response. Verfahren nach Anspruch 9, wobei es sich bei dem Anwendungsprogramm um einen Internetbrowser handelt, und das weitere Programm ein Plug-in des Internetbrowsers ist, wobei das Plug-in in einer Registry eines Betriebssystems des Nutzer-Computersystems mit einer Plug-in-Kennung (184) registriert ist, wobei die Nachricht von dem ID-Provider-Computersystem an den Internetbrowser die Plug-in-Kennung beinhaltet, sodass das Plug-in aufgrund des Empfangs der Nachricht gestartet wird.Procedure according to Claim 9 , wherein the application program is an Internet browser, and the further program is a plug-in of the Internet browser, wherein the plug-in is registered in a registry of an operating system of the user computer system with a plug-in identifier (184), wherein the message from the ID provider computer system to the Internet browser contains the plug-in identifier, so that the plug-in is started upon receipt of the message. Verfahren nach Anspruch 9 oder 10, wobei es sich bei dem Programm um ein weiteres Anwendungsprogramm handelt, welches von dem Internetbrowser durch einen Aufruf einer lokalen URL gestartet werden kann, wobei die lokale URL eine fest vorgegebene Portnummer gemäß dem TCP-Protokoll beinhaltet, wobei die lokale URL zusammen mit der Webseite von dem Dienst-Computersystem an das Nutzer-Computersystem übertragen wird, um das Starten des weiteren Anwendungsprogramms mithilfe der lokalen URL durch den Internetbrowser zu bewirken.Procedure according to Claim 9 or 10 , wherein the program is a further application program which can be started by the Internet browser by calling a local URL, wherein the local URL contains a fixed port number according to the TCP protocol, wherein the local URL is transmitted together with the web page from the service computer system to the user computer system in order to cause the further application program to be started by the Internet browser using the local URL. Verfahren nach Anspruch 9, 10 oder 11, wobei es sich bei der Zusatzinformation um eine Bezahlinformation des Nutzers handelt.Procedure according to Claim 9 , 10 or 11 , whereby the additional information is the user’s payment information. Verfahren nach Anspruch 12, wobei die Zusatzinformation durch das Nutzer-Computersystem mithilfe des öffentlichen Schlüssels des Dienst-Computersystems verschlüsselt wird und nur die verschlüsselte Zusatzinformation an das ID-Provider-Computersystem über die zweite Session weitergeleitet wird, wobei die verschlüsselte Zusatzinformation in die Response eingeht und die verschlüsselte Zusatzinformation nach Empfang der Response durch das Dienst-Computersystem mithilfe des privaten Schlüssels des Dienst-Computersystems entschlüsselt wird.Procedure according to Claim 12 , wherein the additional information is encrypted by the user computer system using the public key of the service computer system and only the encrypted additional information is forwarded to the ID provider computer system via the second session, wherein the encrypted additional information is included in the response and the encrypted additional information is decrypted after receipt of the response by the service computer system using the private key of the service computer system. Verfahren nach einem der vorhergehenden Ansprüche 9 bis 13, wobei der Request eine Bezahlinformation des Dienst-Computersystems beinhaltet und wobei die Zusatzinformation eine Bezahlinformation des Nutzers beinhaltet, und wobei die Transaktionsdaten des Request einen Zahlungsbetrag beinhalten, wobei die Zahlung durch das ID-Provider-Computersystem veranlasst wird, und die Response nicht die Bezahlinformation des Nutzers beinhaltet.Method according to one of the preceding Claims 9 until 13 , wherein the request contains payment information of the service computer system and wherein the additional information contains payment information of the user, and wherein the transaction data of the request contains a payment amount, wherein the payment is initiated by the ID provider computer system, and the response does not contain the payment information of the user. Verfahren nach einem der vorhergehenden Ansprüche 9 bis 14, wobei der Request eine Bezahlinformation des Dienst-Computersystems beinhaltet und wobei die Zusatzinformation eine Bezahlinformation des Nutzers beinhaltet, und wobei die Transaktionsdaten des Request einen Zahlungsbetrag beinhalten, wobei die Zahlung durch das Dienst-Computersystem veranlasst wird, und die Response die mit dem öffentlichen Schlüssel des Dienstcomputersystems verschlüsselte Bezahlinformation des Nutzers beinhaltet.Method according to one of the preceding Claims 9 until 14 , wherein the request contains payment information of the service computer system and wherein the additional information contains payment information of the user, and wherein the transaction data of the request contains a payment amount, wherein the payment is initiated by the service computer system, and the response contains the user's payment information encrypted with the public key of the service computer system. Verfahren nach einem der vorhergehenden Ansprüche, wobei es sich bei dem Muster um einen eindimensionalen, zweidimensionalen, High Capacity Color Barcode, Maxicode, QR-Code oder Data Matrix-Code oder eine zeitliche Reihenfolge mehrerer solcher Codes handelt.Method according to one of the preceding claims, wherein the pattern is a one-dimensional, two-dimensional, high capacity color barcode, maxicode, QR code or data matrix code or a chronological sequence of several such codes. Verfahren nach einem der vorhergehenden Ansprüche, wobei es sich bei dem ID-Token um ein Wert- oder Sicherheitsdokument handelt.Method according to one of the preceding claims, wherein the ID token is a value or security document. Verfahren nach einem der vorhergehenden Ansprüche, wobei die Response auch die Zusatzinformationen beinhaltet.Method according to one of the preceding claims, wherein the response also contains the additional information. Verfahren nach Anspruch 18, wobei die Zusatzinformation ein OTP beinhaltet und das Dienst-Computersystem (150) die Validität des OTP prüft, wobei die Transaktion nur durchgeführt wird, wenn das OTP valide ist.Procedure according to Claim 18 , wherein the additional information includes an OTP and the service computer system (150) checks the validity of the OTP, wherein the transaction is only carried out if the OTP is valid. Computersystem mit einem Terminal (186), einem Dienst-Computersystem (150), einem Nutzer-Computersystem (100) einem ID-Provider-Computersystem (136) und einem ID-Token (106), der einem Nutzer (102) zugeordnet ist, wobei der ID-Token einen elektronischen Speicher (118) mit einem geschützten Speicherbereich (124) aufweist, in dem ein oder mehrere Attribute gespeichert sind, wobei ein Zugriff auf den geschützten Speicherbereich nur über einen Prozessor (128) des ID-Tokens möglich ist, und wobei der ID-Token eine Kommunikations-Schnittstelle (108) zur Kommunikation mit einem Lesegerät eines Nutzer-Computersystems (100) aufweist, wobei der Terminal, das Dienst-Computersystem, das Nutzer-Computersystem, das ID-Provider-Computersystem und der ID-Token zur Durchführung der folgenden Schritte ausgebildet sind: - Anzeige eines optisch lesbaren Musters auf einem Bildschirm (188) eines Terminals (186), wobei in dem optisch lesbaren Muster eine Information codiert ist, die zumindest eine logische Adresse eines Dienst-Computersystems (150) und Transaktionsdaten beinhaltet, - Erfassung des Musters mithilfe eines optischen Sensors (190) des Nutzer-Computersystems und Decodierung des Musters durch das Nutzer-Computersystem, - Übertragung einer Transaktionsanforderung (158) von dem Nutzer-Computersystem an die logische Adresse des Dienst-Computersystems über das Netzwerk, wobei die Transaktionsanforderung die Transaktionsdaten beinhaltet, - Übertragung eines Request (166) von dem Dienst-Computersystem über das Nutzer-Computersystems (100) an ein ID-Provider-Computersystem (136), wobei die Übertragung über das Netzwerk erfolgt, wobei der Request eine Attributspezifikation, der aus dem ID-Token für die Durchführung der Transaktion auszulesenden Attribute beinhaltet, - Authentifizierung des Nutzers gegenüber dem ID-Token, - Authentifizierung des ID-Provider-Computersystems gegenüber dem ID-Token über das Netzwerk, - unter der Voraussetzung der erfolgreichen Authentifizierung des Nutzers und des ID-Provider-Computersystems gegenüber dem ID-Token, Auslesen des oder der Attribute gemäß der Attributspezifikation durch das ID-Provider-Computersystem aus dem ID-Token über das Netzwerk mit Ende-zu-Ende-Verschlüsselung, - Übertragung einer Response (174) von dem ID-Provider-Computersystem über das Nutzer-Computersystem an das Dienst-Computersystem, wobei die Übertragung der Response über das Netzwerk erfolgt, wobei die Response das oder die ausgelesenen Attribute beinhaltet, und wobei die Response von dem ID-Provider-Computersystem signiert ist, - Durchführung der Transaktion mithilfe der Transaktionsdaten und des oder der Attribute durch das Dienst-Computersystem, wobei ein Bestätigungssignal für die Durchführung der Transaktion von dem Dienst-Computersystem über das Netzwerk an das Nutzer-Computersystem gesendet und von dem Nutzer-Computersystem als optisches Muster ausgegeben wird, wobei das Terminal zur Erfassung des optischen Musters von dem Nutzer-Computersystem aus-gebildet ist.Computer system with a terminal (186), a service computer system (150), a user computer system (100), an ID provider computer system (136) and an ID token (106) which is assigned to a user (102), wherein the ID token has an electronic memory (118) with a protected memory area (124) in which one or more attributes are stored, wherein access to the protected memory area is only possible via a processor (128) of the ID token, and wherein the ID token has a communication interface (108) for communication with a reader of a user computer system (100), wherein the terminal, the service computer system, the user computer system, the ID provider computer system and the ID token are designed to carry out the following steps: - displaying an optically readable pattern on a screen (188) of a terminal (186), wherein information is encoded in the optically readable pattern which contains at least one logical address of a service computer system (150) and transaction data, - detection of the pattern using an optical sensor (190) of the user computer system and decoding of the pattern by the user computer system, - transmission of a transaction request (158) from the user computer system to the logical address of the service computer system via the network, wherein the transaction request contains the transaction data, - transmission of a request (166) from the service computer system via the user computer system (100) to an ID provider computer system (136), wherein the transmission takes place via the network, wherein the request contains an attribute specification of the attributes to be read from the ID token for the execution of the transaction, - authentication of the user to the ID token, - authentication of the ID provider computer system to the ID token via the network, - provided that the user and the ID provider computer system are successfully authenticated to the ID token, reading the attribute or attributes according to the attribute specification by the ID provider computer system from the ID token via the network with End-to-end encryption, - transmission of a response (174) from the ID provider computer system via the user computer system to the service computer system, the response being transmitted via the network, the response containing the read attribute(s), and the response being signed by the ID provider computer system, - execution of the transaction using the transaction data and the attribute(s) by the service computer system, a confirmation signal for execution of the transaction being sent by the service computer system sent via the network to the user computer system and output by the user computer system as an optical pattern, wherein the terminal is designed to capture the optical pattern from the user computer system. Computersystem nach Anspruch 20, wobei es sich bei dem Terminal um einen Automat, insbesondere einen Bankautomat oder einen Verkaufsautomat, handelt.Computer system according to Claim 20 , where the terminal is a machine, in particular an ATM or a vending machine. Computersystem nach Anspruch 20 oder 21, wobei es sich bei dem Terminal um ein mobiles Telekommunikationsgerät, insbesondere ein Taxameter oder ein Smartphone, mit einer Gebührenerfassungsfunktion, oder einen Verbrauchszähler, insbesondere ein Smartmeter, zur Erfassung eines Verbrauchswerts handelt.Computer system according to Claim 20 or 21 , wherein the terminal is a mobile telecommunications device, in particular a taximeter or a smartphone, with a fee recording function, or a consumption meter, in particular a smart meter, for recording a consumption value.
DE102013022443.8A 2013-06-28 2013-06-28 Electronic transaction procedure and computer system Active DE102013022443B4 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
DE102013022443.8A DE102013022443B4 (en) 2013-06-28 2013-06-28 Electronic transaction procedure and computer system

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
DE102013022443.8A DE102013022443B4 (en) 2013-06-28 2013-06-28 Electronic transaction procedure and computer system

Publications (1)

Publication Number Publication Date
DE102013022443B4 true DE102013022443B4 (en) 2024-05-29

Family

ID=91026964

Family Applications (1)

Application Number Title Priority Date Filing Date
DE102013022443.8A Active DE102013022443B4 (en) 2013-06-28 2013-06-28 Electronic transaction procedure and computer system

Country Status (1)

Country Link
DE (1) DE102013022443B4 (en)

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030120555A1 (en) 2000-03-09 2003-06-26 Takashi Kitagawa Information processing apparatus with optical data reader, servers, and electronic commerce method
DE102011082101A1 (en) 2011-09-02 2013-03-07 Bundesdruckerei Gmbh A method of creating a soft token, computer program product, and service computer system
DE102013212646A1 (en) 2013-06-28 2014-12-31 Bundesdruckerei Gmbh Electronic transaction procedure and computer system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030120555A1 (en) 2000-03-09 2003-06-26 Takashi Kitagawa Information processing apparatus with optical data reader, servers, and electronic commerce method
DE102011082101A1 (en) 2011-09-02 2013-03-07 Bundesdruckerei Gmbh A method of creating a soft token, computer program product, and service computer system
DE102013212646A1 (en) 2013-06-28 2014-12-31 Bundesdruckerei Gmbh Electronic transaction procedure and computer system

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
BSI TR-03130, Technische Richtlinie eID-Server. Bundesamt für Sicherheit in der Informationstechnik, Ver. 1.6, 20.04.2012, Seiten 1-100
Technical Guideline TR-03110, Advanced Security Mechanisms for Machine Readable Travel Documents - EAC, PACE, RI. Bundesamt für Sicherheit in der Informationstechnik, Ver. 2.05, 14.10.2010, Seiten 1-111
Technical Guideline TR-03112-7 eCard-API-Framework - Protocols. Bundesamt für Sicherheit in der Informationstechnik, Ver. 1.1.2, 28.2.2012, Seiten 1-98

Similar Documents

Publication Publication Date Title
EP2949094B1 (en) Method for authenticating a user with respect to a machine
EP3089061B1 (en) Method for reading attributes from an id-token
DE69431306T2 (en) NETWORK-BASED PAYMENT SYSTEM AND METHOD FOR USING SUCH A SYSTEM
EP2304642B1 (en) Method for reading attributes from an id token
EP2454705B1 (en) Method to read attributes from an id-token and one-time passwort generator
WO2011147433A1 (en) Method and devices for creating and using an identification document that can be displayed on a mobile device
EP2817758B1 (en) Computer-implemented payment method
DE102009027682A1 (en) Method for generating a soft token
DE102013212627B4 (en) Electronic transaction process and computer system
DE102013212646B4 (en) Electronic transaction procedure and computer system
EP2916252B1 (en) Electronic transaction method and computer system
EP2879073B1 (en) Electronic transaction method and computer system
DE19938695A1 (en) Method and device for the electronic processing of cashless payments using security modules
DE102013022436B3 (en) Electronic transaction process and computer system
DE102013022433B3 (en) Electronic transaction process and computer system
DE102013022434B3 (en) Electronic transaction process and computer system
DE102013022443B4 (en) Electronic transaction procedure and computer system
DE102013022441B4 (en) Electronic transaction procedure and computer system
DE102013022438B3 (en) Electronic transaction process and computer system
DE102013022445B3 (en) Electronic transaction process and computer system
DE102013022447B3 (en) Electronic transaction process and computer system
DE102013022435B3 (en) Electronic transaction process and computer system
DE102013022448B3 (en) Electronic transaction process and computer system
EP2819079B1 (en) Electronic transaction method and computer system
WO2003070493A2 (en) Data processing system and method for electronic payment transfer

Legal Events

Date Code Title Description
R129 Divisional application from

Ref document number: 102013212646

Country of ref document: DE

R012 Request for examination validly filed
R016 Response to examination communication
R018 Grant decision by examination section/examining division