DE102011108069A1 - Procedure for securing a transaction - Google Patents
Procedure for securing a transaction Download PDFInfo
- Publication number
- DE102011108069A1 DE102011108069A1 DE102011108069A DE102011108069A DE102011108069A1 DE 102011108069 A1 DE102011108069 A1 DE 102011108069A1 DE 102011108069 A DE102011108069 A DE 102011108069A DE 102011108069 A DE102011108069 A DE 102011108069A DE 102011108069 A1 DE102011108069 A1 DE 102011108069A1
- Authority
- DE
- Germany
- Prior art keywords
- transaction
- relevant data
- runtime environment
- application
- communication channel
- 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.)
- Withdrawn
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/42—User authentication using separate channels for security data
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06Q—INFORMATION 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/00—Payment architectures, schemes or protocols
- G06Q20/38—Payment protocols; Details thereof
- G06Q20/382—Payment protocols; Details thereof insuring higher security of transaction
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/606—Protecting data by securing the transmission between two devices or processes
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
- H04L63/105—Multiple levels of security
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Software Systems (AREA)
- Business, Economics & Management (AREA)
- Accounting & Taxation (AREA)
- Health & Medical Sciences (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Computing Systems (AREA)
- Strategic Management (AREA)
- General Business, Economics & Management (AREA)
- Finance (AREA)
- Storage Device Security (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
- Computer And Data Communications (AREA)
Abstract
Die Erfindung betrifft ein Verfahren, ein Computerprogrammprodukt, ein Kommunikationsendgerät sowie ein System zum Absichern einer Transaktion, insbesondere einer Bezahltransaktion, zwischen einem Kommunikationsendgerät (1) und einer Serverinstanz (2), wobei das Kommunikationsendgerät (1) einen Prozessor (P) mit einer ungesicherten Laufzeitumgebung (NZ) und einer gesicherte Laufzeitumgebung (TZ) umfasst, mit den Verfahrensschritten: Aufbauen eines ersten Kommunikationskanals (4) zwischen dem Kommunikationsendgerät (1) und der Serverinstanz (2); und Senden (D) von transaktionsrelevanten Daten von dem Kommunikationsendgerät (1) an die Serverinstanz (2) über den ersten Kommunikationskanal (4). Dabei wird vor dem Senden ein zweiter Kommunikationskanal (5) zwischen der Browser-Anwendung (AL) in der ungesicherten Laufzeitumgebung (NZ) und einer Transaktionsanwendung (TL) in der gesicherten Laufzeitumgebung (TZ) aufgebaut und zumindest ein Teil der eingegebenen transaktionsrelevanten Daten über den zweiten Kommunikationskanal (5) an die Transaktionsanwendung (TL) gesendet. Die Transaktionsanwendung (TL) erzeugt aus dem erhaltenen Teil der transaktionsrelevanten Daten eine Bestätigungsinformation zur Absicherung der Transaktion. Diese Bestätigungsinformation wird zur Freigabe der Transaktion in der Serverinstanz (2) verwendet.The invention relates to a method, a computer program product, a communication terminal and a system for securing a transaction, in particular a payment transaction, between a communication terminal (1) and a server entity (2), wherein the communication terminal (1) has a processor (P) with an unsecured Runtime environment (NZ) and a secure runtime environment (TZ), comprising the steps of: establishing a first communication channel (4) between the communication terminal (1) and the server instance (2); and transmitting (D) transaction-relevant data from the communication terminal (1) to the server entity (2) via the first communication channel (4). In this case, before sending a second communication channel (5) between the browser application (AL) in the unsecured runtime environment (NZ) and a transaction application (TL) in the secure runtime environment (TZ) constructed and at least a portion of the entered transaction-relevant data on the second communication channel (5) to the transaction application (TL). The transaction application (TL) generates confirmation information for securing the transaction from the received part of the transaction-relevant data. This confirmation information is used to release the transaction in the server instance (2).
Description
Die Erfindung betrifft ein Verfahren, ein Computerprogrammprodukt, ein Kommunikationsendgerät sowie ein System zum Absichern einer Transaktion, insbesondere einer Bezahltransaktion, zwischen einem Kommunikationsendgerät und einer Serverinstanz.The invention relates to a method, a computer program product, a communication terminal and a system for securing a transaction, in particular a payment transaction, between a communication terminal and a server instance.
Kommunikationsendgeräte werden in Gestalt eines Mobiltelefons, Smart Phones oder Personal Digital Assistants, kurz PDAs mit Mobiltelefonfunktion immer häufiger zur Durchführung von Transaktionen wie z. B. Banktransaktionen, Zahlungstransaktionen, Abruf von Dateninhalten und dergleichen verwendet. Dazu steht das Kommunikationsendgerät in einer Datenkommunikation mit einer Serverinstanz.Communication terminals are in the form of a mobile phone, smart phones or personal digital assistants, short PDAs with mobile phone function more frequently to carry out transactions such. Bank transactions, payment transactions, retrieval of data contents, and the like. For this purpose, the communication terminal is in a data communication with a server instance.
Als Serverinstanz wird in dieser Anmeldung eine von dem Kommunikationsendgerät lokal entfernte Instanz verstanden. Dabei handelt es sich beispielsweise um Hardware- oder Software-Serverinstanzen, welche Dienste und Dienstleistungen bereitstellt und anbietet. Im Sinne der Anmeldung wird insbesondere ein E-Service, auch als Onlineshop oder Webshop bezeichnet, unter den Begriff Serverinstanz gefasst. Unter E-Services sind alle Dienste und Aktivitäten zusammengefasst, die mittels Computern erstellt und über elektronische Medien, wie das Internet, interaktiv angeboten und ausgeführt werden.A server instance is understood in this application to be an instance remote from the communication terminal. For example, these are hardware or software server instances that provide and provide services and services. For the purposes of the application, in particular an e-service, also referred to as an online shop or webshop, is taken under the term server instance. E-services are all services and activities that are created by computers and interactively offered and executed via electronic media such as the Internet.
Ein E-Service stellt beispielsweise Waren und digitale Produkte im Internet bereit. Der E-Service umfasst dabei eine Software mit einer virtuellen Warenkorbfunktionalität. Der Käufer wählt das gewünschte Produkt mittels seines Kommunikationsendgeräts aus. Es wird dadurch in einem virtuellen Warenkorb abgelegt und zur Bezahlung vorgemerkt. Hinter diesem E-Service steht nun ein physisches Geschäft, das die jeweilige Bestellung des Benutzers tatsächlich abwickelt.For example, an e-service provides goods and digital products on the Internet. The e-service includes software with a virtual shopping cart functionality. The buyer selects the desired product using his communication terminal. It is stored in a virtual shopping cart and marked for payment. Behind this e-service is now a physical business, which actually handles the respective order of the user.
Alle diese E-Services bedingen eine Transaktion zwischen der Serverinstanz und dem Kommunikationsendgerät. Diese Transaktion ist entweder eine Bezahltransaktion, eine Identifizierungstransaktion, eine Authentifizierungstransaktion oder dergleichen mehr. Als Transaktion wird hier insbesondere eine Abfolge von Schritten verstanden, die als eine logische Einheit betrachtet werden können. Im Zuge der Transaktion und zum Zweck der Identifizierung und Authentisierung gibt ein Nutzer häufig sicherheitskritische oder vertrauliche Eingabedaten über eine Eingabeeinrichtung, wie z. B. eine Tastatur, in das Nutzerendgerät ein. Anschließend werden diese Eingabedaten über das Datenkommunikationsnetzwerk als transaktionsrelevante Daten an die Serverinstanz gesendet. Im Folgeschritt gibt die Serverinstanz die Dienstleistung oder das Produkt frei, was im Folgenden unter Transaktionsfreigabe zu verstehen ist.All these e-services require a transaction between the server instance and the communication terminal. This transaction is either a payment transaction, an identification transaction, an authentication transaction, or the like. In particular, a transaction is understood here as a sequence of steps that can be regarded as a logical unit. In the course of the transaction and for the purpose of identification and authentication, a user often provides safety-critical or confidential input data via an input device, such as an input device. As a keyboard, in the user terminal. Subsequently, these input data are sent via the data communication network as transaction-relevant data to the server instance. In the following step, the server instance releases the service or the product, which in the following is understood as transaction release.
Hierbei besteht das prinzipielle Problem, dass sowohl persönliche oder öffentliche, mit Tastatur und Bildschirm ausgestattete mobile Kommunikationsendgeräte, wie z. B. Smart Phone, Handy oder dergleichen, ebenso wie das Datenkommunikationsnetzwerk in der Regel unsicher und insofern anfällig für Schadsoftware sind. Als Schadsoftware sind z. B. Viren, Würmer, Trojaner, Spyware oder dergleichen bekannt, welche die transaktionsrelevanten Daten abhören oder gar derart manipulieren können, dass anstelle der von dem Benutzer des Endgeräts bezweckten Transaktion eine unerwünschte Transaktion zugunsten eines unberechtigten Dritten ausgeführt wird, ohne dass dies für den Benutzer, das Kommunikationsendgerät bzw. der Serverinstanz zu erkennen ist. Ist eine derartige Transaktion manipuliert, können erhebliche Schäden für den Serverinstanz-Betreiber und auch für den bezahlenden Benutzer entstehen.Here is the principal problem that both personal or public, equipped with a keyboard and screen mobile communication terminals, such. As smart phone, cell phone or the like, as well as the data communication network are generally uncertain and thus vulnerable to malware. As malware z. As viruses, worms, Trojans, spyware or the like, which can listen to the transaction-relevant data or even manipulate such that instead of the transaction intended by the user of the terminal an unwanted transaction in favor of an unauthorized third party is executed without this for the user , the communication terminal or the server instance can be recognized. If such a transaction is manipulated, it can cause significant damage to the server instance operator and also to the paying user.
In der
Zur Absicherung von Transaktionen über ein Datenkommunikationsnetzwerk werden seit einiger Zeit sogenannte gesicherte Laufzeitumgebungen, auch als Trusted Execution Environment® oder TrustZone® bezeichnet eingesetzt. Diese gesicherten Laufzeitumgebungen werden dazu verwendet, sicherheitskritische Anwendungen in einer isolierten, manipulationsgesicherten Umgebung auszuführen.For secure transactions over a data communication network, can be used also called Trusted Execution Environment ® or TrustZone ® for some time so-called secure runtime environments. These secure runtime environments are used to run safety-critical applications in an isolated, tamper-proof environment.
Bisherige Lösungen verlangen auf Seiten der Serverinstanzen Änderungen in deren Internetauftritt, um die gesicherte Laufzeitumgebung in die Abwicklung von Transaktionen einzubinden. Diese Änderungen sind insbesondere die Bereitstellung weiterer Software und/oder Hardwaremodule oder aufwendiger Zertifizierungsserver. Diese Änderungen sind mitunter mit erheblichen Kosten verbunden, wodurch Transaktionen unter Verwendung der gesicherten Laufzeitumgebungen heutzutage noch nicht weit verbreitet sind.Previous solutions demand changes on the part of the server instances in their Internet presence in order to integrate the secure runtime environment into the processing of transactions. These changes are, in particular, the provision of further software and / or hardware modules or elaborate certification servers. These changes can be very costly, making transactions using the secure runtime environments less common nowadays.
Der Erfindung liegt daher die Aufgabe zugrunde, Transaktionen zwischen Kommunikationsendgeräten und Serverinstanzen zu vereinfachen. Dabei soll trotzdem ein hohes Maß an Manipulationssicherheit gegeben werden und insbesondere keine infrastrukturelle Anpassungen innerhalb des Transaktionssystems notwendig sein. The invention is therefore based on the object to simplify transactions between communication terminals and server instances. Nevertheless, a high degree of security against manipulation should be given and, in particular, no infrastructural adjustments within the transaction system should be necessary.
Die Aufgabe der Erfindung wird durch die in den nebengeordneten unabhängigen Patentansprüchen beschriebenen Maßnahmen gelöst. Vorteilhafte Ausgestaltungen sind in den jeweils abhängigen Ansprüchen beschrieben.The object of the invention is achieved by the measures described in the independent independent claims. Advantageous embodiments are described in the respective dependent claims.
Die Aufgabe wird insbesondere durch ein Verfahren zum Absichern einer Transaktion, insbesondere einer Bezahltransaktion, zwischen einem Kommunikationsendgerät und einer Serverinstanz gelöst. Dabei umfasst das Kommunikationsendgerät einen Prozessor mit einer ungesicherten Laufzeitumgebung und einer gesicherte Laufzeitumgebung. Für das Verfahren wird zunächst ein erster Kommunikationskanal zwischen dem Kommunikationsendgerät und der Serverinstanz aufgebaut. Abschließend werden transaktionsrelevante Daten von dem Kommunikationsendgerät an die Serverinstanz über den ersten Kommunikationskanal gesendet. Das erfindungsgemäße Verfahren zeichnet sich dadurch aus, dass vor dem Schritt des Sendens ein zweiter Kommunikationskanal zwischen der Browser-Anwendung in der ungesicherten Laufzeitumgebung und einer Transaktionsanwendung in der gesicherten Laufzeitumgebung aufgebaut und zumindest ein Teil der eingegebenen transaktionsrelevanten Daten über den zweiten Kommunikationskanal an die Transaktionsanwendung gesendet wird. Vor dem Schritt des Sendens erzeugt die Transaktionsanwendung aus dem erhaltenen Teil der transaktionsrelevanten Daten eine Bestätigungsinformation. Diese Bestätigungsinformation wird zur Freigabe der Transaktion verwendet. Mit Freigabe der Transaktion ist insbesondere eine Mitteilung der Bankinstanz an die Serverinstanz gemeint.The object is achieved in particular by a method for securing a transaction, in particular a payment transaction, between a communication terminal and a server instance. In this case, the communication terminal comprises a processor with an unsecured runtime environment and a secure runtime environment. For the method, first a first communication channel is established between the communication terminal and the server instance. Finally, transaction-relevant data are sent from the communication terminal to the server instance via the first communication channel. The inventive method is characterized in that prior to the step of sending a second communication channel established between the browser application in the unsecured runtime environment and a transaction application in the secure runtime environment and sent at least a portion of the entered transaction-relevant data via the second communication channel to the transaction application becomes. Before the step of sending, the transaction application generates confirmation information from the received part of the transaction-relevant data. This confirmation information is used to release the transaction. By releasing the transaction is meant in particular a message of the bank instance to the server instance.
Transaktionsrelevante Daten sind vorrangig Banktransaktionsdaten, insbesondere Kontonummer, Bankleitzahl, Kreditkartennummer, Kreditkartenablaufdatum, Name des Kreditkarteninhabers, der Prüfcode der Kreditkarte, Bankverbindungen, Überweisungsbeträge und dergleichen. Diese transaktionsrelevanten Daten werden von der Serverinstanz angefordert und entweder vom Benutzer in das Kommunikationsendgerät eingegeben und/oder von der Transaktionsanwendung generiert bzw. aus einem sicheren Speicherbereich der gesicherten Laufzeitumgebung ausgelesen.Transaction-relevant data are primarily bank transaction data, in particular account number, bank code number, credit card number, credit card expiration date, name of the credit card holder, the check code of the credit card, bank details, transfer amounts and the like. These transaction-relevant data are requested by the server instance and either entered by the user into the communication terminal and / or generated by the transaction application or read from a secure storage area of the secure runtime environment.
Die Bankinstanz ist eine Instanz, die die transaktionsrelevanten Daten von der Serverinstanz erhält und mit den Bestätigungsinformationen vergleicht. Im Anschluss an den Vergleich erzeugt die Bankinstanz eine Nachricht an die Serverinstanz mit dem Ergebnis des Vergleichs. Daraufhin kann die Serverinstanz entscheiden, ob sie den zur Transaktion dazugehörigen Dienst oder Ware dem Benutzer zur Verfügung stellt.The bank instance is an instance that receives the transaction-relevant data from the server instance and compares it with the confirmation information. Following the comparison, the bank instance generates a message to the server instance with the result of the comparison. The server instance can then decide whether to make the service or goods associated with the transaction available to the user.
Die Bankinstanz ist beispielsweise ein Kreditinstitut, das entgeltliche Dienstleistungen für den Zahlungs-, Kredit- und Kapitalverkehr anbietet.The bank instance is, for example, a bank that offers paid services for payment, credit and capital transactions.
Des Weiteren können diese transaktionsrelevanten Daten sicherheitskritisch oder vertrauliche Daten sein, oder Daten, die zum Durchführen der Transaktion von der Serverinstanz angefordert werden, zum Beispiel persönliche Identifikationsnummern (PIN), Transaktionsnummern (TAN) oder weitere Transaktionsdaten, wie Betrag oder Bestellnummer eines Produkts.Furthermore, these transaction-relevant data may be security-critical or confidential data, or data requested to perform the transaction by the server instance, for example personal identification numbers (PIN), transaction numbers (TAN) or other transaction data, such as the amount or purchase order number of a product.
Als eine Kommunikation zwischen Endgerät und Serverinstanz wird hier eine Signalübertragung verstanden, die durch das Sender-Empfänger-Modell geprägt ist. Dabei werden Informationen in Zeichen kodiert und von einem Sender über einen Kommunikationskanal an einen Empfänger übertragen.As a communication between terminal and server instance is understood here a signal transmission, which is characterized by the transmitter-receiver model. In this case, information is encoded in characters and transmitted by a transmitter via a communication channel to a receiver.
Der erste Kommunikationskanal ist insbesondere ein über ein Mobilfunknetz. Als Mobilfunknetz wird hier eine technische Infrastruktur verstanden, auf der die Übertragung von Signalen für den Mobilfunk stattfindet. Dabei ist im Wesentlichen das Mobilvermittlungsnetz, in dem die Übertragung und Vermittlung der Signale zwischen ortsfesten Einrichtungen und Plattformen des Mobilfunknetzes stattfinden, sowie das Zugangsnetz (auch als Luftschnittstelle bezeichnet), in dem die Übertragung der Signale zwischen einer Mobilfunkantenne und einem mobilen Endgerät stattfindet, zu verstehen. Beispielsweise das „Global System for Mobile Communications”, kurz GSM als Vertreter der sogenannten zweiten Generation oder das General Packet Radio Service, kurz GPRS und Universal Mobile Telecommunications System, kurz UMTS als Vertreter der sogenannten dritten Generation von Mobilfunknetzen seien hier beispielhaft erwähnt, wobei bei der dritten Generation das Mobilvermittlungsnetz um die Fähigkeit einer paketorientierten Datenübertragung erweitert wird, das Funknetz an sich aber unverändert ist.The first communication channel is in particular a via a mobile network. As a mobile network is understood here a technical infrastructure on which the transmission of signals for mobile communications takes place. In this case, the mobile switching network, in which the transmission and switching of the signals take place between stationary devices and platforms of the mobile radio network, as well as the access network (also referred to as air interface), in which the transmission of the signals between a mobile radio antenna and a mobile terminal takes place, to understand. For example, the "Global System for Mobile Communications", short GSM as a representative of the so-called second generation or the General Packet Radio Service, GPRS short and Universal Mobile Telecommunications System, short UMTS as a representative of the so-called third generation of mobile networks are mentioned here by way of example the third generation, the mobile switching network is extended by the ability of a packet-oriented data transmission, but the radio network is in itself unchanged.
Zum Ausführen einer Transaktion werden transaktionsrelevante Daten von dem Kommunikationsgerät an die Serverinstanz gesendet.To perform a transaction, transaction-relevant data is sent from the communication device to the server instance.
Die transaktionsrelevanten Daten können insbesondere das Datum, der Betrag, eine Transaktionsnummer, die die Transaktion eindeutig referenziert oder der gleichen sein. Diese transaktionsrelevanten Daten können von der Serverinstanz zumindest teilweise über den ersten Kommunikationskanal bereitgestellt worden sein. Diese transaktionsrelevanten Daten werden vor dem Schritt des Sendens zumindest teilweise über den zweiten Kommunikationskanal an die Transaktionsanwendung gesendet.In particular, the transaction-relevant data may be the date, the amount, a transaction number that uniquely references the transaction or the same. These transaction-relevant data can be retrieved from the server instance at least partially via the first Communication channel have been provided. These transaction-relevant data are sent at least partially via the second communication channel to the transaction application before the step of sending.
In einer alternativen erfindungsgemäßen Ausgestaltung wird zumindest ein Teil der transaktionsrelevanten Daten durch die Transaktionsanwendung bereitgestellt und/oder generiert.In an alternative embodiment according to the invention, at least part of the transaction-relevant data is provided and / or generated by the transaction application.
Die transaktionsrelevanten Daten können in einer bevorzugten erfindungsgemäßen Ausgestaltung durch den Benutzer in eine Browser-Anwendung in der ungesicherten Laufzeitumgebung eingegeben werden, wobei vor dem Schritt des Sendens zumindest ein Teil der eingegebenen transaktionsrelevanten Daten über den zweiten Kommunikationskanal an die Transaktionsanwendung gesendet wird. Dazu gibt der Benutzer insbesondere den Benutzername, die Kreditkartennummer, den Gültigkeitszeitraum der Kreditkarte, den Prüfcode CVV der Kreditkarte und/oder das Kreditkarteninstitut ein.The transaction-relevant data can be entered in a preferred embodiment of the invention by the user in a browser application in the unsecured runtime environment, wherein before the step of sending at least a portion of the entered transaction-relevant data is sent via the second communication channel to the transaction application. For this purpose, the user inputs in particular the user name, the credit card number, the validity period of the credit card, the check code CVV of the credit card and / or the credit card company.
Zum Senden der transaktionsrelevanten Daten an die Serverinstanz ist eine Browser-Anwendung vorgesehen. Da die Browser-Anwendung innerhalb der ungesicherten Laufzeitumgebung gestartet wurde, ist die Browser-Anwendung manipulationsgefährdet, sodass die transaktionsrelevanten Daten in einer gewissen Form überwacht und bestätigt werden muss. Dazu wird der zweite Kommunikationskanal zur gesicherten Laufzeitumgebung aufgebaut, die transaktionsrelevanten Daten werden zumindest zum Teil der gesicherten Laufzeitumgebung bereitgestellt und eine Bestätigungsinformation innerhalb einer manipulationsgeschützten Umgebung erzeugt.A browser application is provided for sending the transaction-relevant data to the server instance. Since the browser application was started within the unsecured runtime environment, the browser application is at risk of tampering, so that the transaction-relevant data must be monitored and confirmed to some extent. For this purpose, the second communication channel is set up for the secure runtime environment, the transaction-relevant data is provided at least in part to the secure runtime environment, and a confirmation information is generated within a manipulation-protected environment.
Insbesondere weist die Browser-Anwendung ein Erweiterungsmodul, ein sogenanntes Browser-Plugin, auf. Dieses Erweiterungsmodul baut den zweiten Kommunikationskanal zwischen der Browser-Anwendung in der unsicheren Laufzeitumgebung und der Transaktionsanwendung in der sicheren Laufzeitumgebung auf, sodass die Transaktionsanwendung in der gesicherten Laufzeitumgebung den Teil der eingegebenen transaktionsrelevanten Daten zur Absicherung der Transaktion erhält, ggf. ergänzt bzw. überprüft. Der zweite Kommunikationskanal verläuft ausschließlich prozessorintern. Das Erweiterungsmodul überwacht die Eingabe in der ungesicherten Laufzeitumgebung und stellt diese Daten der gesicherten Laufzeitumgebung zur Verfügung. Das TEE weist bestimmungsgemäß ein Modul auf Protokollschichtebene auf, welches Daten der ungesicherten Laufzeitumgebung in die gesicherte Laufzeitumgebung leiten kann. Ein derartiges Modul ist von dem Erweiterungsmodul verschieden, da es sich beim Erweiterungsmodul um eine Erweiterung der Browseranmeldung an sich handelt, also ein Modul auf der Ebene der Anwendungsschicht.In particular, the browser application has an expansion module, a so-called browser plug-in. This extension module establishes the second communication channel between the browser application in the insecure runtime environment and the transactional application in the secure runtime environment, such that the transactional application in the secure runtime environment receives the part of the entered transactional data to secure the transaction, complements or verifies it if necessary. The second communication channel runs exclusively within the processor. The expansion module monitors the input in the unsecured runtime environment and makes that data available to the secured runtime environment. The TEE has a module at the protocol layer level as intended, which can forward data from the unsecured runtime environment to the secure runtime environment. Such a module is different from the extension module, since the extension module is an extension of the browser login per se, ie a module at the application layer level.
Zur Absicherung der Transaktion greift die Transaktionsanwendung in der gesicherten Laufzeitumgebung auf ein Eingabeelement des Kommunikationsendgeräts zu. Das Senden der transaktionsrelevanten Daten an die Serverinstanz erfolg erst nach einer manipulationsgesicherten Bestätigungseingabe des Benutzers.To secure the transaction, the transaction application in the secure runtime environment accesses an input element of the communication terminal. The transmission of the transaction-relevant data to the server instance succeed only after a tamper-proof acknowledgment of the user.
In einer vorteilhaften Ausgestaltung prüft die Transaktionsanwendung in der gesicherten Laufzeitumgebung die eingegebenen transaktionsrelevanten Daten, insbesondere auf Konsistenz mit in der gesicherten Laufzeitumgebung abgelegten Daten. Diese abgelegten Daten können in einem gesicherten Speicherbereich oder auch innerhalb eines Sicherheitselements abgelegt sein, wobei das Sicherheitselement datenkommunikationstechnisch mit der gesicherten Laufzeitumgebung verbunden ist. Diese Kommunikation kann kontaktbehaftet oder kontaktlos sein. Bei dem Sicherheitselement kann es sich um einen tragbaren Datenträger mit entsprechender Sicherheitsfunktionalität handeln, wie z. B. einer Smart Card, Chipkarte, Token, Massenspeicherkarte, Multimediakarte, oder die Teilnehmeridentifikationskarte kurz SIM oder alternativ ein Identifikationsdatenträger wie beispielsweise ein elektronischer Personalausweis bzw. Reisepass mit, auf einem Chip gespeicherten maschinenlesbaren Identifikationsdaten des Benutzers. Das Sicherheitselement ist insbesondere als Hardwarekomponente ausgestaltet und als ein fest integrierter Bestandteil im mobilen Endgerät angeordnet, wobei es entweder in der Form nicht vom mobilen Endgerät entnommen werden kann, beispielsweise als M2M Modul, Co-Prozessor. Alternativ ist das Sicherheitselement eine Softwarekomponente in Form eines gesicherten Speicherbereichs in der gesicherten Laufzeitumgebung.In an advantageous embodiment, the transaction application checks the entered transactional data in the secure runtime environment, in particular for consistency with data stored in the secure runtime environment. This stored data can be stored in a secure memory area or even within a security element, the security element being connected to the secure runtime environment by data communication technology. This communication can be contact or contactless. The security element may be a portable data carrier with appropriate security functionality, such. As a smart card, smart card, token, mass storage card, multimedia card, or the subscriber identification card SIM or, alternatively, an identification data carrier such as an electronic identity card or passport with, stored on a chip machine-readable identification data of the user. The security element is configured in particular as a hardware component and arranged as a firmly integrated component in the mobile terminal, wherein it can not be removed either in the form of the mobile terminal, for example as an M2M module, co-processor. Alternatively, the security element is a software component in the form of a secure storage area in the secure runtime environment.
Bei festgestellter Inkonsistenz der transaktionsrelevanten Daten mit Daten aus dem Sicherheitselement, zeigt die Transaktionsanwendung dem Benutzer über ein Ausgabeelement des Kommunikationsendgeräts eine entsprechende Warnmeldung an. Alternativ oder zusätzlich unterbindet sie das Senden der transaktionsrelevanten Daten an die Serverinstanz. Somit wird der Benutzer manipulationsgesichert informiert oder die Transaktion bei möglichem Schadsoftware-Angriff verhindert.If inconsistency of the transaction-relevant data with data from the security element is detected, the transaction application displays a corresponding warning message to the user via an output element of the communication terminal. Alternatively or additionally, it prevents the transmission of the transaction-relevant data to the server instance. Thus, the user is tamper-resistant informed or prevents the transaction in case of possible malware attack.
In vorteilhafter Weise beinhaltet die Bestätigungsinformation auch Daten der Browser-Anwendung, insbesondere Daten über den ersten Kommunikationskanal und/oder weitere transaktionsspezifische Daten. Beispielsweise sind Bestätigungsinformationen ein URL oder die IP-Adresse der Serverinstanz. Zusätzlich können auch Ort, Datum und weitere, die Transaktion identifizierende Daten in die Bestätigungsinformation einfließen.The confirmation information advantageously also contains data of the browser application, in particular data about the first communication channel and / or further transaction-specific data. For example, confirmation information is a URL or the IP address of the server instance. In addition, the location, date and further data identifying the transaction can also be included in the confirmation information.
In einer vorteilhaften Ausgestaltung enthält die Bestätigungsinformation zumindest teilweise eine, die gesicherte Laufzeitumgebung identifizierende Information Dies kann beispielsweise eine für die gesicherte Laufzeitumgebung einmalig vergebene Identifizierungsnummer sein, die der Bankinstanz bekannt gegeben wurde. Alternativ wird die Bestätigungsinformation mit einem kryptografischen Schlüssel verschlüsselt, wobei die Serverinstanz in der Lage ist, diese Bestätigungsinformation wieder zu entschlüsseln. Alternativ wird ein transaktionsrelevantes Datum eindeutig mit der gesicherten Laufzeitumgebung verknüpft, wobei diese Verknüpfung der Serverinstanz im Vorfeld der Transaktion mitgeteilt wurde. In an advantageous embodiment, the confirmation information contains, at least in part, information identifying the secure runtime environment. This can be, for example, an identification number assigned once to the secure runtime environment, which has been disclosed to the bank instance. Alternatively, the confirmation information is encrypted with a cryptographic key, the server instance being able to decrypt this confirmation information again. Alternatively, a transaction-relevant date is uniquely linked to the secure runtime environment, this link being communicated to the server instance in advance of the transaction.
In einer bevorzugten Ausgestaltung baut die Transaktionsanwendung in der gesicherten Laufzeitumgebung einen dritten Kommunikationskanal zu der Bankinstanz auf und sendet die Bestätigungsinformation an die Bankinstanz, bevor die transaktionsrelevanten Daten an die Serverinstanz gesendet werden. Diese Bestätigungsinformation werden von der Serverinstanz anfordert. Die Serverinstanz vergleicht die Bestätigungsinformation mit den gesendeten transaktionsrelevanten Daten und gibt den mit der Transaktion verbundenen Service in Abhängigkeit des Vergleichs frei oder verhindert diesen.In a preferred embodiment, the transaction application in the secure runtime environment builds up a third communication channel to the bank instance and sends the confirmation information to the bank instance before the transaction-relevant data is sent to the server instance. This confirmation information is requested by the server instance. The server instance compares the confirmation information with the transmitted transaction-relevant data and, depending on the comparison, releases or prevents the service associated with the transaction.
In einer alternativen Ausgestaltung codiert die Transaktionsanwendung die Bestätigungsinformation in die transaktionsrelevanten Daten hinein. Die transaktionsrelevanten Daten mit der eincodierten Bestätigungsinformation werden anschließend der Browser-Anwendung bereitgestellt. Die transaktionsrelevanten Daten mit der eincodierten Bestätigungsinformation werden als transaktionsrelevante Daten an die Serverinstanz gesendet. Insbesondere ist die Bestätigungsinformation in einen benutzerspezifischen Teil der Kreditkartennummer eincodiert, wodurch eine geänderte Kreditkartennummer erzeugt wird. Insbesondere wird die geänderte Kreditkartennummer anstelle der Kreditkartennummer als Teil der transaktionsrelevanten Daten an die Serverinstanz gesendet. Da der Benutzer die Eingabe der transaktionsrelevanten Daten bereits vorgenommen hat, ist es unnötig, die geänderte Kreditkartennummer erneut anzuzeigen, um den Benutzer nicht zu verwirren. Die Serverinstanz erkennt anhand der geänderten Nummer, dass die Kreditkartennummer eine Bestätigungsinformation enthält und decodiert die Kreditkartennummer entsprechend.In an alternative embodiment, the transaction application encodes the confirmation information into the transaction-relevant data. The transaction-relevant data with the encoded confirmation information are then provided to the browser application. The transaction-relevant data with the encoded confirmation information are sent as transaction-relevant data to the server instance. In particular, the confirmation information is encoded into a user-specific part of the credit card number, thereby generating a changed credit card number. In particular, the changed credit card number is sent to the server instance instead of the credit card number as part of the transaction-relevant data. Since the user has already entered the transaction-relevant data, it is unnecessary to display the changed credit card number again in order not to confuse the user. The server instance recognizes from the changed number that the credit card number contains confirmation information and decodes the credit card number accordingly.
Im Erfindungsgedanken ist weiterhin ein Computerprogrammprodukt, das direkt in den internen Speicher eines Prozessors innerhalb eines digitalen Kommunikationsendgeräts geladen werden kann und Softwarecodeabschnitte umfasst, mit denen die Schritte des hier beschriebenen Verfahrens ausgeführt werden, wenn das Computerprogrammprodukt auf dem Prozessor läuft.The invention further provides a computer program product that can be loaded directly into the internal memory of a processor within a digital communication terminal and software code sections with which the steps of the method described here are executed when the computer program product is running on the processor.
Weiterhin wird die Aufgabe durch ein Kommunikationsendgerät mit Mitteln zur Durchführung des beschriebenen Verfahrens gelöst. Das Endgerät weist dazu eine Prozessoreinheit mit einer ungesicherten Laufzeitumgebung und einer gesicherten Laufzeitumgebung; eine Eingabeeinheit, um Eingeben transaktionsrelevanter Daten; eine Ausgabeeinheit, zum Ausgeben transaktionsrelevanter Daten; sowie eine erste Schnittstelle zum Aufbauen eines ersten Kommunikationskanals und Senden von transaktionsrelevanten Daten auf. Das Endgerät weist insbesondere eine Browser-Anwendung in der ungesicherten Laufzeitumgebung mit einem Erweiterungsmodul auf, wobei dieses Erweiterungsmodul eine zweite Schnittstelle zum Aufbau eines zweiten Kommunikationskanals zu einer Transaktionsanwendung in der gesicherten Laufzeitumgebung aufweist. Die Transaktionsanwendung greift zumindest auf Teile der eingegebenen transaktionsrelevanten Daten über den zweiten Kommunikationskanal zu, um eine Bestätigungsinformation zur Absicherung der Transaktion zu erzeugen.Furthermore, the object is achieved by a communication terminal with means for carrying out the described method. The terminal has for this purpose a processor unit with an unsecured runtime environment and a secure runtime environment; an input unit for entering transaction-relevant data; an output unit for outputting transaction-relevant data; and a first interface for establishing a first communication channel and transmitting transaction-relevant data. In particular, the terminal has a browser application in the unsecured runtime environment with an expansion module, this expansion module having a second interface for establishing a second communication channel to a transaction application in the secure runtime environment. The transaction application accesses at least portions of the entered transaction-relevant data via the second communication channel to generate acknowledgment information to secure the transaction.
Weiterhin wird die Aufgabe durch ein System mit Mitteln zur Durchführung des beschriebenen Verfahrens gelöst. Das System weist dabei ein hier beschriebenes Kommunikationsendgerät, eine Serverinstanz und eine Bankinstanz auf. Insbesondere weist das Kommunkationsendgerät eine gesicherte Laufzeitumgebung auf. Diese gesicherte Laufzeitumgebung ist mittels eines kryptografischen Schlüssels an dem System eindeutig identifizierbar.Furthermore, the object is achieved by a system having means for carrying out the described method. The system has a communication terminal described here, a server instance and a bank instance. In particular, the communication terminal has a secure runtime environment. This secure runtime environment is uniquely identifiable by means of a cryptographic key on the system.
Nachfolgend wird anhand von Figuren die Erfindung bzw. weitere Ausführungsformen und Vorteile der Erfindung näher erläutert, wobei die Figuren lediglich Ausführungsbeispiele der Erfindung beschreiben. Gleiche Bestandteile in den Figuren werden mit gleichen Bezugszeichen versehen. Die Figuren sind nicht als maßstabsgetreu anzusehen, es können einzelne Elemente der Figuren übertrieben groß bzw. übertrieben vereinfacht dargestellt sein.The invention or further embodiments and advantages of the invention will be explained in more detail with reference to figures, the figures only describe embodiments of the invention. Identical components in the figures are given the same reference numerals. The figures are not to be considered as true to scale, it can be exaggerated large or exaggerated simplified individual elements of the figures.
Es zeigen:Show it:
Ein Speicherbereich im Kommunikationsendgerät
In dem ungesicherten Speicherbereich wird dabei eine ungesicherte Laufzeitumgebung NZ, auch Normalzone bezeichnet ausgeführt, wohingegen in dem gesicherten Speicherbereich die gesicherte Laufzeitumgebung TZ ausgeführt wird. In der ungesicherten Laufzeitumgebung sind eine oder mehrere Anwendungen AL, auch als Applet bezeichnet, abgelegt und werden von der normalen Laufzeitumgebung NZ aus gestartet. Ein oder mehrere Treiber (= TZ System Driver und TZ API) sowie ein Betriebssystem („Rich OS”) sind ebenfalls im ungesicherten Speicherbereich angeordnet. In einem Angriffszenario befinden sich neben den Anwendungen AL auch Schadanwendungen in der ungesicherten Laufzeitumgebung NZ, die in der Lage ist, die mittels des Eingabeelements KB eingegebenen Daten auszuspionieren und zu verändern. Damit der Benutzer den Angriff nicht bemerkt ist ggf. auch das Ausgabeelement D von dem Angriff betroffen, sodass dem Benutzer falsche Informationen angezeigt werden.In this case, an unsecured runtime environment NZ, also referred to as a normal zone, is executed in the unsecured storage area, whereas in the secure storage area the secured runtime environment TZ is executed. One or more applications AL, also referred to as applets, are stored in the unsecured runtime environment and are started from the normal runtime environment NZ. One or more drivers (= TZ System Driver and TZ API) and an operating system ("Rich OS") are also located in the unsecured memory area. In an attack scenario, in addition to the applications AL, there are also malicious applications in the unsecured runtime environment NZ, which is able to spy on and modify the data entered using the input element KB. In order that the user does not notice the attack, the output element D may also be affected by the attack, so that the user receives incorrect information.
in dem gesicherten Speicherbereich TZ läuft das Betriebssystem der gesicherten Laufzeitumgebung TRE (= Trustzone Runtime Environment) sowie eine oder mehrere sicherheitsrelevante Anwendungen, sogenannte Trustlets TL.in the secure memory area TZ runs the operating system of the secure runtime environment TRE (= Trust Zone Runtime Environment) and one or more security-related applications, so-called Trustlets TL.
Neben der in
Einen Teil der Erfindung bildet ein Erweiterungsmodul PI einer Browser-Anwendung. Dieses Erweiterungsmodul, auch als Plug-In bezeichnet, stellt einen zweiten Kommunikationskanal
In
Das System umfasst weiterhin eine Serverinstanz
Von der Serverinstanz
Die Browser-Anwendung AL, auch Webbrowser genannt, ist hierbei eine spezielle Anwendung zur Darstellung von Webseiten im Internet. Während der Webbrowser AL in der ungesicherten Laufzeitumgebung NZ ausgeführt wird, befindet sich die Transaktionsanwendung TL innerhalb der gesicherten Laufzeitumgebung TZ. Somit kann die Transaktionsanwendung TL nicht durch Schadsoftware angegriffen werden, die sich möglicherweise auf dem Kommunikationsendgerät
Ein Benutzer, der die erfindungsgemäße Transaktionsanwendung mittels gesicherter Laufzeitumgebung TZ nutzen möchte, muss das Erweiterungsmodul PI installiert haben. Dies kann zusammen beispielsweise durch den Benutzer selbst durch die der Installation einer „App” auf dem Kommunikationsendgerät
Vorzugsweise wird diese „App” durch den Anbieter des Bezahlverfahrens – im Folgenden als Bankinstanz
Im Anschluss des Installierens des Erweiterungsmoduls PI ist bei der Bankinstanz eine Zuordnung von transaktionsrelevanten Daten und einer eindeutigen Identifizierung der gesicherten Laufzeitumgebung TZ gegeben. Ebenso sind der gesicherten Laufzeitumgebung TZ die transaktionsrelevanten Daten bekannt.Following the installation of the expansion module PI, an assignment of transaction-relevant data and a clear identification of the secure runtime environment TZ is given at the bank instance. Likewise, the secure runtime environment TZ is aware of the transaction-relevant data.
Darüber hinaus ist der Bankinstanz
Gemäß
Das Einkaufen im Internet mittels Endgerät
Das Browser-Plug-In PI erkennt im Schritt B, dass nun ein Bezahlvorgang ausgelöst wurde und baut einen zweiten Kommunikationskanal
Das Browser-Plug-IN PI sucht nun die HTML-Formularfelder nach den transaktionsrelevanten Daten ab, die überprüft/überwacht werden sollen. Dazu können die gesuchten/überwachten transaktionsrelevanten Daten, zum Beispiel die Kreditkartennummer, entweder im Browser-Plug-In PI selbst, also in der ungesicherten Laufzeitumgebung NZ oder in der gesicherten Laufzeitumgebung TZ gespeichert sein. In letzterem Fall ruft das Browser-Plug-In PI bei jedem Absenden eines HTML-Formulars die Transaktionsanwendung TL der gesicherten Laufzeitumgebung TZ auf, damit diese Transaktionsanwendung TL die HTML-Formularfelder nach den entsprechenden transaktionsrelevanten Daten durchsuchen kann.The browser plug-in PI now searches the HTML form fields for transaction-relevant data to be reviewed / monitored. For this purpose, the searched / monitored transaction-relevant data, for example the credit card number, can either be stored in the browser plug-in PI itself, ie in the unsecured runtime environment NZ or in the secure runtime environment TZ. In the latter case, each time an HTML form is submitted, the browser plug-in PI calls the transaction application TL of the secure runtime environment TZ, so that this transaction application TL can search the HTML form fields for the corresponding transaction-relevant data.
Werden die transaktionsrelevanten Daten in einem HTML-Formularfeld gefunden, wird das Absenden der HTML-Formulardaten durch das Browser-Plug-IN PI unterbunden. Anschließend initiiert die Transaktionsanwendung TL die Maßnahmen zur Absicherung der Transaktion, was in
Im einfachsten Fall zeigt die Transaktionsanwendung TL nun einen nicht manipulierbaren Dialog an, beispielsweise:
„Wollen Sie die gewünschte Transaktion bei
"Do you want the desired transaction?
Der Dialog kann nun auch Teile der transaktionsrelevanten Daten erneut wiedergeben. Das Ausgabeelement D lässt sich für diesen Dialog nur über die gesicherte Laufzeitumgebung TZ ansteuern, sodass jegliche Ausgabe von der gesicherten Laufzeitumgebung TZ generiert wird. Der Benutzer kann also sicher sein, dass die erneute Ausgabe manipulationsgesichert ist. Der Benutzer kann nun die erneute Ausgabe mit den zuvor in das HTML-Formular eingegebenen transaktionsrelevanten Daten überprüfen und bei inkonsistenten Daten die Transaktion an dieser Stelle unterbinden. Das manipulationsgesicherte Ausgeben von Daten auf ein Ausgabeelement mittels einer gesicherten Laufzeitumgebung TZ ist beispielsweise aus der
Der Benutzer des Endgeräts 1 wird nun aufgefordert, den Dialog zu beantworten. Die Beantwortung erfolgt über eine Eingabe mittels des Eingabeelements KB. Das Eingabeelement KB lässt sich für diesen Dialog nur über die gesicherte Laufzeitumgebung TZ ansteuern, sodass jegliche Eingabe bezüglich dieses Dialogs von der gesicherten Laufzeitumgebung TZ verifiziert wird. Somit kann der Dialog ausschließlich über eine manipulationssichere Eingabe vom Benutzer beantwortet werden. Das manipulationsgesicherte Eingeben von Daten mittels einer gesicherten Laufzeitumgebung TZ ist beispielsweise aus der
Anstelle einer Ja/Nein-Antwort als Beantwortung des Dialogs kann der Benutzer auch dazu aufgefordert werden, Teile der transaktionsrelevanten Daten, beispielsweise Betrag und Kreditkartenprüfcode erneut einzugeben. Dies hat zwei Vorteile. Erstens wird dem Benutzer der zu zahlende Betrag bewusst. Ist das Endgerät
Alternativ kann vom Benutzer auch eine PIN oder eine äquivalente Information, insbesondere Passwort, oder biometrischer Fingerabdruck gefordert werden.Alternatively, the user may also require a PIN or equivalent information, in particular password, or biometric fingerprint.
Die Transaktionsanwendung TL erzeugt aus den mittels zweitem Kommunikationskanal
Die Kreditkartennummer wird ohne Verschlüsselung angehängt. Alternativ kann die Bestätigungsinformation selbst wiederum erneut verschlüsselt werden, damit bei der Datenübertragung niemand die Kreditkartennummer mitlesen kann.The credit card number is appended without encryption. Alternatively, the confirmation information itself can be re-encrypted, so that nobody can read the credit card number during data transmission.
Die Transaktionsanwendung TL sendet mm die Bestätigungsinformation an die entsprechende Bankinstanz
Zum Aufbau des Kanals
Somit verfügt die Transaktionsanwendung TL über eine Liste der Telefonnummern der Bankinstanzen
Wurde die Bestätigungsinformation an die Bankinstanz gesendet, veranlasst das Browser-Plug-IN das Senden der transaktionsrelevanten Daten an die Serverinstanz gemäß Schritt D, wodurch beispielsweise der http-Request über den ersten Kommunikationskanal
Die Bankinstanz
Ergibt der Vergleich im Schritt F, dass die transaktionsrelevanten Daten der Serverinstanz nicht mit den Daten der Bestätigungsinformation übereinstimmen, kann die Bankinstanz
In
Wie in
Eine Kreditkartennummer besteht aus einem zehnstelligen inhaberspezifischen Teil und der sechsstelligen BIN. Der sechsstellige Teil der Kreditkartennummer sollte unverändert bleiben, damit eine übliche Plausibilitätsprüfung der transaktionsrelevanten Daten, zum Beispiel auf Tippfehler, in der Serverinstanz
Der inhaberspezifische Teil der Kreditkartennummer wird nun verwendet, um die Bestätigungsinformation einzucodieren. Wenn alle zehn Dezimalstellen des inhaberspezifischen Teils der Kreditkarte zur Codierung verwendet werden, kann eine Bestätigungsinformation mit einer Datenmenge von etwa 32 Bit eincodiert werden.The owner-specific part of the credit card number is now used to encode the confirmation information. When all ten decimal places of the owner-specific part of the credit card are used for coding, confirmation information with a data amount of about 32 bits can be encoded.
Stellvertretend für viele Möglichkeiten zum Eincodieren von transaktionsrelevanten Daten als Bestätigungsinformation in 32 Bit wird im Folgenden eine Möglichkeit erläutert, wobei die Bestätigungsinformation beispielsweise aus dem zu zahlenden Betrag und der URL der Serverinstanz
Der zu zahlende Betrag wird in binärer Form ausgedrückt. In ein 32 Bit Datenwort, wobei 2 Nachkommastellen berücksichtigt werden müssen, können Zahlenwerte über 42 Millionen codiert werden, denn es gilt:
Der URL der Serverinstanz
Im Gegensatz zum Verfahren gemäß
Die so erzeugte Bestätigungsinformation verfügt wiederum über 32 Bit was in 10 Dezimalstellen ausgedrückt wird. Der zehnstellige inhaberspezifische Teil der Kreditkartennummer wird nun mit der zehnstelligen Bestätigungsinformation ersetzt, wodurch eine geänderte Kreditkartennummer erhalten wird. Anschließend wird die Prüfziffer der Kreditkarte neu berechnet.The confirmation information thus generated again has 32 bits which is expressed in 10 decimal places. The ten-digit owner-specific part of the credit card number will now be replaced with the ten-digit confirmation information, which will result in a changed credit card number. Subsequently, the check digit of the credit card is recalculated.
Das Browser-Plug-In PI erhält im Schritt K der
Die Serverinstanz
BezugszeichenlisteLIST OF REFERENCE NUMBERS
- 11
- Mobiles Kommunikationsendgerät, Smart Phone P Prozessor NZ ungesicherte Laufzeitumgebung TZ gesicherte Laufzeitumgebung, Trustzone TZ-ID Identifizierungsnummer der TZ, KApplet OS Betriebssystem der ungesicherten Laufzeitumgebung TRE Betriebssystem der gesicherten Laufzeitumgebung, MobiCore TL Trustlet, Anwendung innerhalb der TZ AL Applet, Anwendung innerhalb der NZ PI Plug-In, Erweiterungsmodul einer AL HW Hardware Platform SE Sicherheitselement KB Tastatur, Eingabeelement DP Display, AusgabeelementMobile communication terminal, Smart Phone P Processor NZ Unsecured runtime environment TZ Secure runtime environment, Trustzone TZ-ID Identification number of the TZ, K Applet OS Operating system of the unsecured runtime environment TRE Operating system of the secured runtime environment, MobiCore TL Trustlet, application within the TZ AL Applet, application within the NZ PI plug-in, expansion module of an AL HW Hardware Platform SE Security element KB Keyboard, input element DP display, output element
- 22
- Serverinstanz, WebshopServer instance, webshop
- 33
- Bankinstanz, ZahlungsdienstleisterBank instance, payment service provider
- 44
- Erster Kommunikationskanal, MobilfunknetzwerkFirst communication channel, mobile network
- 55
- Zweiter Kommunikationskanal, prozessorinternSecond communication channel, processor internal
- 66
- Dritter Kommunikationskanal, MobilfunknetzwerkThird communication channel, mobile network
- 77
- Vierter Kommunikationskanal, prozessorexternFourth communication channel, processor-external
- AA
- Start des BezahlvorgangsStart of the payment process
- BB
- Erkennen der Transaktion mittels Browser-Plug-In und Auslösen der Überprüfung mittels TZRecognize the transaction using a browser plug-in and trigger the check using TZ
- CC
- Bestätigungsinformation an BezahldienstleisterConfirmation information to payment service providers
- DD
- Senden der transaktionsrelevanten Daten, KreditkartendatenSending the transaction-relevant data, credit card data
- Ee
- Weiterleiten der transaktionsrelevanten Daten und WebshopdatenForward the transaction-relevant data and webshop data
- FF
- Vergleich zwischen transaktionsrelevanten Daten/Webshopdaten und BestätigungsinformationComparison between transaction-relevant data / webshop data and confirmation information
- GG
- Rückfragen bei inkonsistenten DatenQueries for inconsistent data
- HH
- Information über erfolgreichen BezahlvorgangInformation about successful payment process
- II
- Codieren der Kreditkartennummer mit Bestätigungsinformation (Betrag, Empfänger, TZ-ID der TZ) und erhalten einer geänderten KartennummerCoding of the credit card number with confirmation information (amount, recipient, TZ-ID of the TZ) and receive a changed card number
- KK
- Einsetzen der geänderten Kreditkartennummer in (Web) BrowserInsert the changed credit card number into (web) browser
- LL
- Unterdrücken der geänderten KreditkartennummerSuppress the changed credit card number
- MM
- Errechnen der geänderten Kreditkartenummer anhand Webshopdaten und TZ-IDCalculate the changed credit card number based on webshop data and TZ-ID
ZITATE ENTHALTEN IN DER BESCHREIBUNG QUOTES INCLUDE IN THE DESCRIPTION
Diese Liste der vom Anmelder aufgeführten Dokumente wurde automatisiert erzeugt und ist ausschließlich zur besseren Information des Lesers aufgenommen. Die Liste ist nicht Bestandteil der deutschen Patent- bzw. Gebrauchsmusteranmeldung. Das DPMA übernimmt keinerlei Haftung für etwaige Fehler oder Auslassungen.This list of the documents listed by the applicant has been generated automatically and is included solely for the better information of the reader. The list is not part of the German patent or utility model application. The DPMA assumes no liability for any errors or omissions.
Zitierte PatentliteraturCited patent literature
- EP 1260077 B1 [0007] EP 1260077 B1 [0007]
- DE 102011018431 [0061] DE 102011018431 [0061]
- DE 102010052666 [0062] DE 102010052666 [0062]
Zitierte Nicht-PatentliteraturCited non-patent literature
- www.serverinstanz.de [0060] www.serverinstanz.de [0060]
- ISO 7812 [0068] ISO 7812 [0068]
Claims (17)
Priority Applications (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102011108069A DE102011108069A1 (en) | 2011-07-19 | 2011-07-19 | Procedure for securing a transaction |
ES12740493.7T ES2646443T3 (en) | 2011-07-19 | 2012-07-17 | Procedure to secure a transaction |
PCT/EP2012/003008 WO2013010665A1 (en) | 2011-07-19 | 2012-07-17 | Method for securing a transaction |
US14/233,469 US20140172721A1 (en) | 2011-07-19 | 2012-07-17 | Method for Securing a Transaction |
EP12740493.7A EP2735129B1 (en) | 2011-07-19 | 2012-07-17 | Method for securing a transaction |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
DE102011108069A DE102011108069A1 (en) | 2011-07-19 | 2011-07-19 | Procedure for securing a transaction |
Publications (1)
Publication Number | Publication Date |
---|---|
DE102011108069A1 true DE102011108069A1 (en) | 2013-01-24 |
Family
ID=46583943
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
DE102011108069A Withdrawn DE102011108069A1 (en) | 2011-07-19 | 2011-07-19 | Procedure for securing a transaction |
Country Status (5)
Country | Link |
---|---|
US (1) | US20140172721A1 (en) |
EP (1) | EP2735129B1 (en) |
DE (1) | DE102011108069A1 (en) |
ES (1) | ES2646443T3 (en) |
WO (1) | WO2013010665A1 (en) |
Families Citing this family (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102014002602B4 (en) * | 2014-02-24 | 2021-10-21 | Giesecke+Devrient Mobile Security Gmbh | Method for authorizing a transaction and the use of a clock and a cash register system in this method |
GB201408539D0 (en) * | 2014-05-14 | 2014-06-25 | Mastercard International Inc | Improvements in mobile payment systems |
US9704160B2 (en) * | 2014-09-22 | 2017-07-11 | Mastercard International Incorporated | Trusted execution environment for transport layer security key pair associated with electronic commerce and card not present transactions |
DE102014014109A1 (en) * | 2014-09-24 | 2016-03-24 | Giesecke & Devrient Gmbh | transaction process |
GB201423362D0 (en) * | 2014-12-30 | 2015-02-11 | Mastercard International Inc | Trusted execution enviroment (TEE) based payment application |
US11615199B1 (en) * | 2014-12-31 | 2023-03-28 | Idemia Identity & Security USA LLC | User authentication for digital identifications |
US10462135B2 (en) * | 2015-10-23 | 2019-10-29 | Intel Corporation | Systems and methods for providing confidentiality and privacy of user data for web browsers |
US10417456B2 (en) * | 2015-12-23 | 2019-09-17 | Tracfone Wireless, Inc. | Secure system having a multi-locking mechanism for devices having embedded systems |
CN106778193B (en) * | 2016-11-14 | 2023-02-03 | 北京握奇智能科技有限公司 | Client and UI interaction method |
EP3429166B1 (en) | 2017-07-13 | 2021-09-08 | Weeve GmbH | Method for operating a communication network |
CN113129004A (en) * | 2021-05-18 | 2021-07-16 | 中国银行股份有限公司 | Transaction security detection method and device |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1260077B1 (en) | 2000-02-29 | 2005-04-13 | Swisscom Mobile AG | Transaction confirmation method, authentication server and wap server |
US20090204964A1 (en) * | 2007-10-12 | 2009-08-13 | Foley Peter F | Distributed trusted virtualization platform |
US20110145916A1 (en) * | 2009-12-14 | 2011-06-16 | Mckenzie James | Methods and systems for preventing access to display graphics generated by a trusted virtual machine |
US20110158407A1 (en) * | 2004-04-08 | 2011-06-30 | Texas Instruments Incoporated | Process of manufacturing a handheld device, involving keys |
DE102010052666A1 (en) | 2010-11-26 | 2012-05-31 | Giesecke & Devrient Gmbh | Method for safely performing e.g. bank transaction, involves receiving one-time-password at keyboard by extracting sequence from display, and comparing one-time-password with comparison one-time-password in trusted region |
DE102011018431A1 (en) | 2011-04-21 | 2012-10-25 | Giesecke & Devrient Gmbh | Method for displaying information on a display device of a terminal |
Family Cites Families (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6092202A (en) * | 1998-05-22 | 2000-07-18 | N*Able Technologies, Inc. | Method and system for secure transactions in a computer system |
US20030223586A1 (en) * | 2002-05-30 | 2003-12-04 | Edward Green | Method and system for secure communications over a communications network |
US7606560B2 (en) * | 2002-08-08 | 2009-10-20 | Fujitsu Limited | Authentication services using mobile device |
JP2006527430A (en) * | 2003-06-04 | 2006-11-30 | マスターカード インターナショナル インコーポレーテッド | Customer authentication system and method in commercial transactions |
US8112787B2 (en) * | 2005-12-31 | 2012-02-07 | Broadcom Corporation | System and method for securing a credential via user and server verification |
EP2098985A3 (en) * | 2008-03-03 | 2012-11-07 | Broadcom Corporation | Secure financial reader architecture |
US20100063893A1 (en) * | 2008-09-11 | 2010-03-11 | Palm, Inc. | Method of and system for secure on-line purchases |
US20100287097A1 (en) * | 2009-05-08 | 2010-11-11 | Bank Of America Corporation | Conducting Commercial Transactions with a Mobile Device |
-
2011
- 2011-07-19 DE DE102011108069A patent/DE102011108069A1/en not_active Withdrawn
-
2012
- 2012-07-17 WO PCT/EP2012/003008 patent/WO2013010665A1/en active Application Filing
- 2012-07-17 US US14/233,469 patent/US20140172721A1/en not_active Abandoned
- 2012-07-17 ES ES12740493.7T patent/ES2646443T3/en active Active
- 2012-07-17 EP EP12740493.7A patent/EP2735129B1/en active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP1260077B1 (en) | 2000-02-29 | 2005-04-13 | Swisscom Mobile AG | Transaction confirmation method, authentication server and wap server |
US20110158407A1 (en) * | 2004-04-08 | 2011-06-30 | Texas Instruments Incoporated | Process of manufacturing a handheld device, involving keys |
US20090204964A1 (en) * | 2007-10-12 | 2009-08-13 | Foley Peter F | Distributed trusted virtualization platform |
US20110145916A1 (en) * | 2009-12-14 | 2011-06-16 | Mckenzie James | Methods and systems for preventing access to display graphics generated by a trusted virtual machine |
DE102010052666A1 (en) | 2010-11-26 | 2012-05-31 | Giesecke & Devrient Gmbh | Method for safely performing e.g. bank transaction, involves receiving one-time-password at keyboard by extracting sequence from display, and comparing one-time-password with comparison one-time-password in trusted region |
DE102011018431A1 (en) | 2011-04-21 | 2012-10-25 | Giesecke & Devrient Gmbh | Method for displaying information on a display device of a terminal |
Non-Patent Citations (2)
Title |
---|
ISO 7812 |
www.serverinstanz.de |
Also Published As
Publication number | Publication date |
---|---|
US20140172721A1 (en) | 2014-06-19 |
WO2013010665A1 (en) | 2013-01-24 |
EP2735129A1 (en) | 2014-05-28 |
ES2646443T3 (en) | 2017-12-13 |
EP2735129B1 (en) | 2017-09-06 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
EP2735129B1 (en) | Method for securing a transaction | |
EP2533172B1 (en) | Secure access to data in a device | |
DE60007883T2 (en) | METHOD AND DEVICE FOR CARRYING OUT ELECTRONIC TRANSACTIONS | |
EP2417550B1 (en) | Method for executing an application using a portable data carrier | |
DE112011100182B4 (en) | Data security device, computing program, terminal and system for transaction verification | |
DE60036713T2 (en) | SYSTEM AND METHOD FOR SECURED NETWORK TRANSACTIONS | |
DE102010028133A1 (en) | A method of reading an attribute from an ID token | |
DE102009027723A1 (en) | Method for reading attributes from an ID token | |
EP2817758B1 (en) | Computer-implemented payment method | |
CN102611702B (en) | A kind of system and method ensureing safety of network trade | |
EP2080147A1 (en) | Method for executing an application with the aid of a portable data storage medium | |
DE102011075257B4 (en) | Answering inquiries by means of the communication terminal of a user | |
DE10125017A1 (en) | Method for providing services in a data transmission network and associated components | |
EP3206151B1 (en) | Method and system for authenticating a mobile telecommunication terminal on a service computer system and mobile telecommunication terminal | |
EP1374189A2 (en) | Method for securing digital goods on sale thereof over a computer network | |
DE102005008610A1 (en) | Internet download e.g. articles of newspaper, cost paying method, involves protecting anonymity of user until attempt to fraud is identified, and automatically determining identity of defrauded user and proof for attempt to fraud | |
DE102013224285A1 (en) | Electronic transaction procedure and computer system | |
DE102014204122A1 (en) | Electronic transaction procedure and computer system | |
WO2013075799A1 (en) | Method for authenticating a person at a server instance | |
DE102013105781A1 (en) | Method for addressing, authentication and secure data storage in computer systems | |
EP3248136A1 (en) | Method for operating a computer unit with a secure runtime environment, and such a computer unit | |
EP3186741B1 (en) | Access protection for external data in the non-volatile memory of a token | |
DE102009008854A1 (en) | Backup of transaction data | |
DE102005061999A1 (en) | Data transmitting method, involves inputting data to be transmitted to data processing device e.g. computer, using input mask that is decrypted by optical filter and transmitting data to data processing device e.g. server | |
EP3283999A1 (en) | Electronic system for producing a certificate |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
R163 | Identified publications notified | ||
R081 | Change of applicant/patentee |
Owner name: GIESECKE+DEVRIENT MOBILE SECURITY GMBH, DE Free format text: FORMER OWNER: GIESECKE & DEVRIENT GMBH, 81677 MUENCHEN, DE |
|
R120 | Application withdrawn or ip right abandoned |