The present technology relates to systems and methods for authenticating a user on mobile devices. The system and method may be used in the context of conducting transactions on a mobile device, more particularly secured financial transactions.
This section is intended to introduce the reader to various aspects of art that may be related to various aspects of the present disclosure, which are described and/or claimed below. This discussion is believed to be helpful in providing the reader with background information to facilitate a better understanding of the various aspects of the present technology. Accordingly, it should be understood that these statements are to be read in this light, and not as admissions of prior art.
Payment terminals, also known as point of sale (POS) terminals, are well established in the art. They are used for electronic funds transfers between retailers and customers where transactions are conducted by swiping, inserting or tapping payment cards with a POS terminal. Some POS terminals support only magnetic stripe technology (swiping), while other terminals additionally or exclusively support so-called chip cards or smart cards, which comprise a microprocessor chip embedded in the card. This chip provides a high level of security against both logical and physical attacks aiming to clone the card or compromise sensitive information stored within it.
In order to ensure security during the financial transactions involving chip cards, security standards such as the Europay, MasterCard, and Visa (EMV) transaction standard have been developed and used to certify both the payment terminals and the payment cards. However, due to various factors, including the technical complexity required to meet the security standards, payment terminals that are used to conduct secured financial transactions are usually devices that are cumbersome, costly and solely dedicated to the conduct of financial transactions.
Mobile payment systems and digital wallets such as Apple Pay®, Android Pay® and Samsung Pay® allow customers to store their credit card information on their mobile devices and use their devices to make payments via near field communication (NFC) or radio-frequency identification (RFID) on adapted contactless point of sale terminals.
However, mobile devices may not have the required security standards to be used as payment terminals, are not accepted everywhere and thus do not completely eliminate the need for dedicated payment terminals.
As a response to at least some of the shortcomings of the technologies detailed above, approaches have been developed to allow a general-purpose mobile device, such as, but not limited to, a smart phone, to be turned into a payment terminal Such approaches include the method, device, add-on and secure element of U.S. Patent Publication 2014/0324698 wherein a method and a device for conducting a secured financial transaction are provided, the device comprising a CPU and a secure element, wherein a purchase amount to be debited from a financial account is acquired, data relating to the financial account is acquired, and a transaction authorization from a financial institution related to the financial transaction is acquired, with the authorization based, at least partially, on data processed solely by the secure element independent from data processed by the CPU.
In addition, methods and systems have been developed to address the need for securely authenticating a user, through his/her Personal Identification Number (PIN), when conducting a financial transaction using a payment card at a dedicated point of sale terminal. Such methods and systems, whereby the payment terminal acts as a PIN Entry Device (PED), aim to meet the required level of security specified in international standards such as ISO 9564, Payment Card Industry (PCI)—PIN Transaction Security (PTS), and other applicable PCI standards, which have been developed for PIN security and management in retail banking, the standards comprising requirements for PIN length, selection, issuance, delivery, encryption algorithms, storage, transmission, secure entry and requirements for offline PIN handling in ATM and POS systems.
Various approaches have been recently developed in order to ensure a certain level of security during the input of a PIN. Such approaches generally focus on bulky payment terminals, where a scrambled PIN pad image is received by the device, is superimposed on top of an underlying keypad, such that a user enters an encoded version of his PIN, and the encoded version is then preferably sent to a remote server and decoded to process the PIN. However, such methods may not fully comply with financial security standards, may not allow offline processing and/or may not be enabled on a mobile device to be used as payment terminal.
There is therefore a need in the art for a method and system for obtaining a personal identification code (PIC) on a mobile device while providing a certain level of security, minimizing added cost and/or disruption to the design (e.g., by limiting and/or eliminating the need for hardware components not already present on the device for other reasons). Such level of security may be, but not necessarily, selected so as to be compliant with certain security standards.
Embodiments of the present technology have been developed based on inventors' appreciation that known approaches for secured PIN entry may, in some instances, not be relied upon to conduct secured financial transactions compliant with financial industry standards on mobile devices Improvements are therefore desirable, in particular improvements aimed at assuring that a PIC is stored either in a secure environment or in encrypted form in a non-secure environment and therefore not accessible to untrusted software running on the main processor.
The present technology arises from an observation made by the inventor(s) that while the usage of mobiles devices has been democratized, the majority of financial transactions are still made using bulky payment terminals, because of the lack of secure methods for conducting PIC entry on a mobile device. However, in light of the latest developments in the art, inventor(s) have devised a method and a system for conducting secured financial transactions on a mobile device while providing a certain level of security.
It is an object of the present technology to provide a method of and system for operating a device, the device comprising a processor, the processor comprising an isolated secured area, a display screen operatively connected to a display screen controller, the display screen controller operatively connected to the processor, a touch screen operatively connected to a touch screen controller, the touch screen controller operatively connected to the processor and a secure element associated with the processor. The method and system comprises generating a correspondence table, a hot spots layout and a visual representation of a scrambled keypad, transmitting, to the secure element, the correspondence table, transmitting, to the display controller, the visual representation of the scrambled keypad, transmitting, to the touch screen controller, the hot spots layout, causing to display, by the display controller, the visual representation of the scrambled keypad on the display screen, detecting, by the touch screen controller, a touch event input from a user on the touchpad, generating, by the touch screen controller, a keying event based on the touch event input and the hot spots layout, encrypting, by the touch screen controller, the keying event, transmitting, to the secure element, the encrypted keying event, decrypting, by the secure element, the encrypted keying event and reconstituting, by the secure element, a personal identification code (PIC) associated with the user based on the keying event and the correspondence table.
In general, another aspect of the subject matter described in the specification can be embodied in a method and system that further comprises, prior to transmitting, to the secure element, the correspondence table, encrypting the correspondence table.
In general, another aspect of the subject matter described in the specification can be embodied in a method and system that further comprises, after encrypting the correspondence table, decrypting, by the secure element, the correspondence table.
In general, another aspect of the subject matter described in the specification can be embodied in a method and system wherein an unencrypted version of the PIC remains inaccessible to any one of the processor, the display controller, the touch screen controller and the isolated secured area of the processor, at any given time.
In general, another aspect of the subject matter described in the specification can be embodied in a method and system wherein an unencrypted version of the PIC is solely accessible by the secure element.
In general, another aspect of the subject matter described in the specification can be embodied in a method and system wherein the isolated secured area only accesses an encrypted version of the PIC.
In general, another aspect of the subject matter described in the specification can be embodied in a method and system wherein the touch screen controller does not have access to the correspondence table nor to the visual representation of the scrambled keypad, at any given time.
In general, another aspect of the subject matter described in the specification can be embodied in a method and system wherein the secure element is securely connected to the processor.
In general, another aspect of the subject matter described in the specification can be embodied in a method and system wherein the isolated secured area of the processor comprises a trusted user interface.
In general, another aspect of the subject matter described in the specification can be embodied in a method and system wherein the touch screen controller is securely connected to the trusted user interface.
In general, another aspect of the subject matter described in the specification can be embodied in a method and system wherein the method further comprises re-scrambling at least a portion of the visual representation of the scrambled keypad by generating a correspondence table after a keying event occurs.
In general, another aspect of the subject matter described in the specification can be embodied in a method and system wherein multiple correspondence tables, hot spots layouts and visual representations of scrambled keypads are generated before a touch event occurs.
In general, another aspect of the subject matter described in the specification can be embodied in a method and system wherein the visual representation of the scrambled keypad is at least one of an image, a video stream and a visual representation of a keypad.
In general, another aspect of the subject matter described in the specification can be embodied in a method and system wherein the method further comprises causing to display, by the display controller, a security indicator previously associated with the user.
In general, another aspect of the subject matter described in the specification can be embodied in a method and system wherein the security indicator previously associated with the user is stored in the isolated secure area of the processor.
In general, another aspect of the subject matter described in the specification can be embodied in a method and system that further comprises, encrypting the reconstituted PIC by the secure element; and transmitting the encrypted reconstituted PIC to the processor.
In general, another aspect of the subject matter described in the specification can be embodied in a method and system wherein the secure element is at least one of a hardware element operatively connected to the processor, a software component run by the processor, the isolated secured area and a portion of the isolated secured area.
In general, another aspect of the subject matter described in the specification can be embodied in a method and system wherein generating the correspondence table, the hot spots layout and the visual representation of the scrambled keypad is executed by one of the isolated secured area of the processor and the secure element.
In general, another aspect of the subject matter described in the specification can be embodied in a method and system wherein reconstituting the PIC associated with the user comprises mapping the keying events on the correspondence table.
In general, another aspect of the subject matter described in the specification can be embodied as a method and system on a mobile device for conducting secured financial transactions between at least two mobile devices (“peer-to-peer banking”).
In other aspects, various implementations of the present technology provide a non-transitory computer-readable medium storing program instructions for conducting secured PIC entry on a device, the program instructions being executable by a processor of a computer-based system to carry out one or more of the above-recited methods.
In other aspects, various implementations of the present technology provide a computer-based system, such as, for example, but without being limitative, a device comprising at least one processor and a memory storing program instructions for conducting secured PIC entry on a device, the program instructions being executable by one or more processors of the computer-based system to carry out one or more of the above-recited methods.
The details of one or more embodiments of the subject matter of this specification are set forth in the accompanying drawings and the description below. Other features, aspects, and advantages of the subject matter will become apparent from the description, the drawings, and the claims.
These and other features, aspects and advantages of the present technology will become better understood with regard to the following description, appended claims and accompanying drawings where:
Various exemplary embodiments of the described technology will be described more fully hereinafter with reference to the accompanying drawings, in which exemplary embodiments are shown. The present inventive concept may, however, be embodied in many different forms and should not be construed as limited to the exemplary embodiments set forth herein. Rather, these exemplary embodiments are provided so that the disclosure will be thorough and complete, and will fully convey the scope of the present inventive concept to those skilled in the art. In the drawings, the sizes and relative sizes of layers and regions may be exaggerated for clarity. Like numerals refer to like elements throughout.
It will be understood that, although the terms first, second, third etc. may be used herein to describe various elements, these elements should not be limited by these terms. These terms are used to distinguish one element from another. Thus, a first element discussed below could be termed a second element without departing from the teachings of the present inventive concept. As used herein, the term “and/or” includes any and all combinations of one or more of the associated listed items.
It will be understood that when an element is referred to as being “connected” or “coupled” to another element, it can be directly connected or coupled to the other element or intervening elements may be present. In contrast, when an element is referred to as being “directly connected” or “directly coupled” to another element, there are no intervening elements present. Other words used to describe the relationship between elements should be interpreted in a like fashion (e.g., “between” versus “directly between,” “adjacent” versus “directly adjacent,” etc.).
The terminology used herein is only intended to describe particular exemplary embodiments and is not intended to be limiting of the present inventive concept. As used herein, the singular forms “a,” “an” and “the” are intended to include the plural forms as well, unless the context clearly indicates otherwise. It will be further understood that the terms “comprises” and/or “comprising,” when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof.
Throughout the present disclosure, reference is made to secure transactions (for example, but without being limitative, contact and contactless transactions), secure elements (for example, but without being limitative, chipset, secured chipset, hardware embedding secured component, software embedding secured component, or firmware embedding secured component) and security standards. Examples of security standards include, without being limitative, certification standards from Europay, MasterCard, and Visa (EMV), EMVCo, MasterCard®, Visa®, American Express®, JCB®, Discover® and from the PCI SSC (Payment Card Industry Security Standards Council), founded by MasterCard®, Visa®, American Express®, Discover® and JCB® and dealing specifically with the definition of security standards for financial transactions. Reference to secure transactions, secure elements, and security standards is made for the purpose of illustration and is intended to be exemplary of the present technology and not limiting of the scope thereof.
Processor: in the context of this technology, the definition of a processor includes a system on chip (SoC), an integrated circuit that integrates components of a computer in a single chip. A typical SoC may include but is not limited to one or more general-purpose microprocessors or Central Processing Units (CPUs), co-processors such as a digital signal processor (DSP), a Graphics Processing Unit (GPU), and multimedia coprocessors such as MPEG and JPEG encoders and decoders. The SoC may also include modems for various wireless communications interfaces including cellular (e.g. LTE/4G, 3G, GSM, CDMA, etc.), Bluetooth, and Wireless Fidelity (Wi-Fi) (IEEE 802.11). The SoC may include memory controllers for interfacing with on-die or external DRAM memory chips, and on-die memory blocks including a selection of ROM, SRAM, DRAM, EEPROM and flash memory. The SoC may additionally include timing sources, peripherals including counter-timers, real-time timers and power-on reset generators, debug, JTAG and Design For Test (DFT) interfaces, external interfaces, analog interfaces, voltage regulators, power management circuits, etc. The SoC may also include connectivity components such as simple buses or on-chip networks following the ARM Advanced Microcontroller Bus Architecture (AMBA) specification connecting these blocks together as known in the art. Some blocksmay be packaged separately and stacked on the top of the SoC, a design known in the art as Package-on-package (PoP). Alternatively some blocks may be comprised in distinct integrated circuits (or dies) but packaged together, a design known in the art as a System in Package (SiP).
Isolated secured area of the processor: a processing entity characterized by specific hardware and/or software components subject to a certification ensuring a specific level of security according to specific security standards. The isolated secured area ensures that sensitive data is stored, processed and protected in a secured and trusted environment of the processor while maintaining high processing speeds and large amounts of accessible memory. The isolated secured area may offer isolated execution, secure storage, remote attestation, secure provisioning, trusted boot and trusted path. The isolated secured area allows the processor to operate in two logical modes: normal world or secure world. The normal world is run by the non-secure area of the processor and may comprise the non-secure Rich Operating System (Rich OS) and the software components and applications that run on top of the Rich OS. The normal world is excluded from accessing resources that are provisioned for exclusive use in the secure world. The secure world is run by the isolated secured area, which is the only entity to have access to resources provisioned for use exclusively in the secured area, such as certain delineated ranges of ROM or RAM memory, processor or co-processor configuration registers, and certain peripherals such as display controllers or touch screen controllers, and their associated configuration registers. Some of the resources provisioned for the exclusive use of the isolated secure area may be on the same die or package as the SoC, while others may be contained in a different die or package. Some of the resources may be dynamically provisioned for the exclusive use of the isolated secure area at certain times, while at other times they may be available for use by the normal world. The isolated secured area only runs authorized and trusted applications and provides security against logical attacks generated in the Rich OS environment, attacks aiming to compromise boot firmware, attacks that exploit debug and test interfaces, and other non-invasive attacks. Non-limiting examples of an isolated secured area of the processor include Trusted Execution Environment (TEE), Intel Trusted Execution Technology (TXT), the Trusted Platform Module (TPM), the Hengzhi chip and the IBM Embedded Security Subsystem (ESS) chip. In some embodiments, the isolated secured area of the processor is designed so as to not be accessed, even by a human administrator. In some embodiments, the isolated secured area may be implemented partially or completely via a dedicated hardware element such as, but without being limited thereto, a secure element as defined in the paragraph below. Other variations of the isolated secured area may also be envisioned by the person skilled in the art of the present technology without departing from the scope of the present technology.
Secure element: a processing entity characterized by specific hardware and/or software components subject to a certification ensuring a specific level of security according to specific security standards. From a hardware perspective, a secure element includes the usual components found in a computing entity: at least one microprocessor (e.g. CPU), memory (e.g. ROM, RAM or FLASH memory), communication interfaces, etc. Specific hardware components may also be included to implement specific functionalities particular to a secure element. For instance, a cryptographic accelerator may be included. Also, various tamper resistance, tamper detection and/or tamper response features may be included to prevent a malicious person from extracting sensitive information from the secure element. Anti-tamper measures may comprise hardware aspects, software aspects, or a combination of hardware and software. Also, certain counter-measures to prevent side-channel attacks aiming to recover cryptographic keys or other sensitive information may be included in the secure element. Counter-measures against side-channel attacks may include hardware aspects, software aspects, or both. Also, measures to reduce EM emissions, such as shielding, may be included, to protect the secure element from eavesdropping. In the context of financial transactions, the certification of the secure element ensures that various financial entities are willing to use the secure element to store and process critical financial data, and to perform secured financial transactions using the critical financial data. In some embodiments, the secure element may be solely characterized by software components. The secure element may be, in some embodiments, implemented partially or completely as an isolated secured area of the processor, such as the isolated secured as described in the paragraph above, in which case, the secure element may be implemented, for example, but without being limitative, as a TEE, a TPM and/or a ESS. Other variations of the secure element may also be envisioned by the person skilled in the art of the present technology without departing from the scope of the present technology.
Touch screen: a touch-sensitive sensor device with an input and/or output interface usually superimposed on top of an electronic visual display of an information processing system. Touch screens usually work by detecting tactile and/or haptic contact with the touch screen display. Touch screen technologies may include, but are not limited to resistive, surface acoustic wave, capacitive, projective capacitive, infrared grid, infrared acrylic projection, optical imaging, dispersive signal technology and acoustic pulse recognition touchscreens. Touch screens may include force sensitive components to detect pressure applied to the screen. Touch screens may also include haptic feedback components. Other variations of the touch screen may also be envisioned by the person skilled in the art of the present technology without departing from the scope of the present technology.
Touch screen controller: a controller that detects analog touch signals output by the touch screen, may perform analog-to-digital conversion of the analog output, may perform signal processing steps to condition the signal and deduce the screen coordinates associated with one or more touch events. Typically, but non-limitatively, the coordinates of touch events will be output to a processor using a low-bandwidth serial interfaces including serial peripheral interface (SPI) and inter-integrated circuit (I2C) interfaces, as it is known in the art. The touch screen controller may be integrated with the display controller or any other block. Other variations of the touch screen controller may also be envisioned by the person skilled in the art of the present technology without departing from the scope of the present technology.
Display screen: an electronic visual display device with an input and/or output interface used to convey visual information the user. Display screen technologies may include, but are not limited to, Liquid Crystal Displays (LCD), displays based on Organic Light-Emitting Diode (OLED) technology, displays based on active-matrix organic light-emitting diode (AMOLED) technology.
Display screen controller: A device capable of inputting digital image data, either from a frame buffer in memory or from a standard digital interface such as MIPI or eDP, and outputting analog or digital video signals suitable for interfacing with the specific display screen technology and at an appropriate frame rate (for example, using LVDS). The display controller may be included in the same die or package as the processor SoC, or be a discrete component, or be integrated with the display screen, or a combination. The display controller may include functions for image upscaling, downscaling, rotation and blending.
Trusted User Interface (TUI): A combination of software, hardware and peripheral resources which may be reserved for the exclusive use of the isolated secure area and may be configured in such a way as to give exclusive and non-interruptible control of the display screen (or a portion thereof) and the touch sensor to the isolated secure area and to maintain the integrity and confidentiality of the displayed images and of the touch events generated by the touch sensor and controller. The TUI in a device may be subjected to a certification ensuring a specific level of security according to specific security standards. A TUI automatically detects and only allows authorized or trusted applications to access the content of a secure screen memory. In one embodiment, the TUI is one specific mode in which the device is controlled by the isolated secured area of the processor to ensure that the information displayed on the touch screen is from a trusted source and isolated from the operating system. Other variations of the TUI may also be envisioned by the person skilled in the art of the present technology without departing from the scope of the present technology.
Information/data: the terms “information” and “data” are used interchangeably, and have a similar meaning for the purpose of the present disclosure.
Security standards may comprise multiple security levels, such as, but without being limitative, Level 1, Level 2, or Level 3. As an example, but without being limitative, Level 1 may correspond to a higher level of security than Level 2 which, in turn, may correspond to a higher level of security than Level 3. For example, but without being limitative, the EMCo standard may provide examples of security levels and approval and certification standards such as terminal type approval process, security evaluation process, card type approval process, or mobile type approval process.
For example, the terminal type approval process may be a mechanism to test compliance with Europay, MasterCard, and Visa (EMV) specifications. The terminal type approval may provide a level of confidence that interoperability and consistent behavior between compliant applications may be achieved. In an example, the terminal type approval testing may be divided into two levels, Level 1 and Level 2. The Level 1 type approval process may test compliance with the electromechanical characteristics, logical interface, and transmission protocol requirements defined in the EMV specifications. The Level 2 type approval may test compliance with the debit/credit application requirements as defined in the EMV specifications. Additionally, the terminal type approval testing may include a Level 3 approval, which guarantees secure communications between an application executed on the terminal and a financial institution.
Even though the various components defined above are each associated with a definition, it should be understood that each one of the various components should not be construed as being solely limited to the specific functions and/or specifics provided in the associated definition. To the contrary, other functions and/or specifics may be added, removed or combined without departing from the scope of the present technology. In addition, functions and/or specifics may be switched from one component to another component without departing from the scope of the present technology (e.g., a function associated with the touch screen may be switched to the touch screen controller). Some of the various components may also be partially or completely merged together without departing from the scope of the present technology (e.g., the touch screen and the touch screen controller may be merged together to define a single component, or the display controller and the processor may be merged together to define a single component).
In accordance with at least one embodiment described herein, a method and a system for conducting a secured financial transaction on a device are provided. The device comprises a processor, the processor comprises an isolated secured area, a display screen operatively connected to a display screen controller, the display screen controller operatively connected to the processor, a touch screen operatively connected to a touch screen controller, the touch screen controller operatively connected to the processor and a secure element associated with the processor.
In some embodiments, the device may be implemented as any device comprising the components needed to carry a method and a system detailed hereinafter. In some embodiments, the device may include a smartphone, a phablet, a smartwatch and/or a wearable computer, a PDA, a tablet and a computer. In some alternative embodiments, the device may also be embedded in or on objects not solely dedicated to computing and/or information processing functions, such as, but no limited to, a vehicle, a piece of furniture, an appliance, etc.
In the illustrated embodiment, the device 100 comprises a mobile package on package (PoP) chipset 110, a projective capacitive touch panel superimposed on a LCD display 130, a display controller and a touch screen controller 140, a secure element and a contactless front-end 150 and a flash memory 120.
In a non-limiting embodiment, the mobile PoP chipset 110 comprises a Low Power Double Data Rate (LP DDR) memory 112 stacked with a SoC application processor 114. The SoC application processor 114 comprises an isolated secured area (ISA) 115, a central processing unit (CPU) 116, a trusted user interface (TUI) 117, a secure read-only memory (ROM) 118 and a secure random access memory (RAM) 119. The LP DDR 112 comprises a secure RAM memory 113. The mobile PoP chipset 110 is connected to a flash memory 120 comprising secure objects 122.
In some embodiments of the present technology, the device may execute a non-secure operating system (OS). Examples of an OS running on the SoC application processor 114 include, but are not limited to, a version of iOS®, or a derivative thereof, available from Apple Inc.; a version of Android OS®, or a derivative thereof, available from Google Inc.; a version of PlayBook OS®, or a derivative thereof, available from RIM Inc. It is understood that other proprietary OSs or custom made OSs may be equally used without departing from the scope of the present technology.
In some embodiments of the present technology, the isolated secure area may execute a secure OS, which is separate, distinct and isolated from the OS being executed by the non-secure area of the processor. The secure OS typically has higher privilege levels than the non-secure OS, which allow it, for example, to exclude the non-secure OS from accessing sensitive resources. The secure OS may be entirely different from the non-secure OS (e.g. a secure microkernel), or may be substantially the same as the non-secure OS (e.g. a modified version of Android OS®).
The touch screen controller 144 is connected to the trusted user interface 116 by way of a serial peripheral interface (SPI) or inter-integrated circuit (i2C) interface, serial interfaces known in the art for attaching integrated circuits (ICs) to processors and microcontrollers. The touch screen controller 144 is connected to the trusted user interface 116 and to the display controller 142 with a MIPI display serial interface (MIPI-DSI) or an embedded display port (eDP) connection, communication protocols and serial buses between host and device, as it would be recognized by someone skilled in the art. The projective capacitive touch panel 134 is superimposed on the LCD display 132. The secure element 152 is connected to the SoC application processor 114 by way of a SPI bus interface. The contactless front end 140 is connected to the SoC application processor 114 with an i2C interface. In some embodiments, the touch screen controller 144 may be securely connected to the TUI 117, such that every transmission of data between touch screen controller 144 and TUI 117 is encrypted. In some embodiments, the secure element 152 is securely connected to the contactless front-end 154 and to the SoC application processor 114, such that every transmission of data between secure element 152, contactless front-end 152 and SoC application processor is encrypted. Such examples of devices and connections are only presented for an illustrative purpose, and other variations may be possible, as would be recognized by a person skilled in the art of the present technology.
Turning now to
Turning now to
Turning now to
A scrambled keypad provides a certain level of security for PIC entry, as it makes the process of direct observation of the PIC by a malevolent person or software more bothersome. Even if a malevolent person or software has access to the touch event output or keying events, it is impossible to reconstitute the PIC without knowing the correspondence table of the scrambled keypad. A re-scrambling of the keypad after each touch event may add an additional level of security.
Turning now to
PIN entry screen 300. A text prompting the user to enter her/his PIN 320 is displayed under the logo 310. Data entry field 330, with asterisks corresponding to keys pressed by the user on the touch screen is displayed under prompting text 320. A scrambled keypad 340 is displayed under data entry field 330, with correct, confirm and validate buttons 350. A security indicator 360 associated with the user is displayed on the bottom of the screen. The security indicator 360, comprises a secret shared between the user and a trusted entity, such as but not limited to a financial institution holding his account. The shared secret may be an image, a catchphrase or any other secret information recognized by the user, and is displayed so that the user may be confident that he is entering his PIC on a trusted application securely connected to a trusted server of his/her financial institution. The security indicator 360 may be a video stream where each single frame contains a part of the security indicator, such as a malevolent person or software may not be able to reproduce the security indicator from a single photograph or screenshot. In some embodiments, the scrambled keypad may be composed of different symbols and/or numbers and/or letters. In alternative embodiments, the security indicator may be visual and/or auditory and/or olfactory and/or tactile, provided that the device has the required technology to support such embodiments. This example is only for illustrative purposes, and many versions of a PIC entry screen may be defined, as would be appreciated by a person skilled in the art of the present technology.
In other embodiments, a TUI controlled by the isolated secured area of the SoC application processor 404 may generate a correspondence table, a hot spots layout, a scrambled keypad image and transmit the scrambled keypad image to the display controller 406, the hot spots layout to the touch screen controller 408 and the correspondence table to the secure element 402. In alternative embodiments, the secure element 402 may generate a correspondence table, a hot spots layout, a scrambled keypad image and transmits the scrambled keypad image to the display controller 406 and the hot spots layout to the touch screen controller 408. The touch screen controller 408, having received the hot spots layout and thereby having knowledge of the location and dimensions of the keys defined by the isolated secured area of the processor 404, but not their value, may process the touch event inputs by a user with the hot spots layout to create one or more keying events and encrypt the resulting keying events. The touch screen controller 408 may send the encrypted keying events to the secure element 402. In some embodiments, the touch screen controller 408 is directly connected to the secure element 402. In other embodiments, the touch screen controller 408 may send encrypted keying events to the isolated secured area of the SoC application processor 404, and the isolated secured area 404 may then send the encrypted keying events to the secure element 408. Finally, the secure element 402 may decrypt the encrypted keying events and the encrypted correspondence table to reconstitute a PIC. In some embodiments, the secure element 402 is the only component able to decrypt the encrypted correspondence table and the encrypted keying events. In other embodiments, the secure element 402 is the only component being able to reconstitute a PIC from unencrypted versions of the correspondence table and the keying events. In alternative embodiments, the secure element 402 is the only component having access to an unencrypted version of the PIC. After reconstituting the PIC, the secure element 402 may encrypt the reconstituted PIC, and transmit the encrypted PIC to the isolated secured area 404. In some embodiments, after reconstituting the PIC, the PIC may be combined with other information, prior to encrypting the PIC together with the other information. For example, in the context of financial transactions, the PIN may be combined with a Personal Account Number (PAN) to form a PIN block, as specified by the ISO 9564 standard. After the encrypted PIC is transmitted to the isolated secure area, the isolated secure area may transmit the encrypted PIC, through the Internet or other networks, to the financial institution holding the user's account, possibly through the communications interfaces of the non-secure area of the processor, so that the transaction may be authorized.
Having described, with reference to
More specifically,
The method 500 starts with a step 502 with the generation of a correspondence table, a hot spots layout and scrambled keypad image, such as but not limited to correspondence table of
Generally, but non-limitatively, to generate a scrambled keypad, a correspondence table or array is first created, where the size of the array corresponds to the number of keys in the keypad. Each position in the array, from 0 to 9, has for value a random number, such that each number from 0 to 9 appears only once as a value in the array. A scrambled keypad image may then be generated from the correspondence array, where each key position has the corresponding value. A hot spots layout may also be generated, where the location and geometry of the operable keys are defined. In some embodiments, the geometry and the position of the hot spots layout may also be randomized and/or encoded and may be further encrypted. Different methods for generating the correspondence table, the hot spots layout and the scrambled keypad image may be possible, as it would be recognized by someone skilled in the art of the present technology.
The scrambled keypad image may then be integrated in a PIC entry screen, such as the PIC entry screen from
Next at step 504, the correspondence table of the scrambled keypad is transmitted to the secure element 152. In some embodiments, the correspondence may be encrypted before being transmitted to the secure element 152
Next at a step 506, the scrambled keypad image is transmitted to a display controller 142. In some embodiments, a plurality of different PIC entry screens comprising different scrambled keypads may be transmitted to the display controller 142. In other embodiments, a TUI 117 may generate the correspondence table, the hot spots layout, the scrambled keypad image and transmit the scrambled keypad image to the display controller 142. In some embodiments, the PIC entry screen may comprise a security indicator. In other embodiments, the scrambled keypad image is transmitted from the secure element to the isolated secured area before being transmitted to the display controller 142. In alternative embodiments, the correspondence table, the hot spots layout and the scrambled keypad image may be generated in the secure element 115, with the secure element 115 directly connected to the display controller 142, and then transmitted to the display controller.
At a step 508, the hot spots layout is transmitted to the touch screen controller. In some embodiments, the hot spots layout is generated in the isolated secured area of the processor and transmitted to the touch screen controller. In other embodiments, the hot spots layout is generated in the secure element, encrypted and transmitted to the touch screen controller.
At a step 510, the display controller 142 causes to display the scrambled keypad image on the display screen 132. The scrambled keypad image may be displayed on any part of the display screen 132. In some embodiments, each key of the scrambled keypad image may be displayed on corresponding physical keys comprising embedded screens. In other embodiments, a security indicator may be displayed at the same time as the scrambled keypad.
At a step 512, the touch screen controller 144 detects one or more touch event inputs on the touch screen 134 from a user. The touch event inputs may be input by a user with her/his fingers, with a stylus/pen, or with anything that may be sensed by the touch screen 134. As a non-limiting example, the touch screen 134 may use projected capacitive (p-cap) technology to sense an input, wherein capacitive sensors detect anything that is conductive or that has a dielectric constant different from air. The capacitive sensors comprise individual electrodes or electrode intersections that are repeatedly and iteratively scanned by a touch screen controller in order to detect changes in capacitance. A precise x-y touch coordinate with a corresponding state (e.g. touch or release) may be determined by interpolating values of capacitance from multiple adjacent electrodes or intersections. In some embodiments, the touch screen 134 may also comprise pressure sensors to detect different levels of pressure. In alternative embodiments, the keypad displayed on screen may be re-scrambled or changed to a different layout by the isolated secured area of the processor 115 after each touch event input, such that a different scrambled keypad appears after each touch input by the user. In an alternative embodiment, a mouse, a trackpad or a touch screen may be connected to the device, and the corresponding events may be processed a touch screen controller or an isolated secured area of the processor.
At a step 514, a touch screen controller 144 generates one or more keying events based on the touch events inputs by the user at step 512. The touch screen controller first processes the analog touch event inputs by the user into digital touch event outputs. The generation of touch event ouputs based on touch event inputs by a user on a touch screen is well known in the art of the present technology. In some embodiments, a z touch coordinate may also be generated if the touch screen 134 comprises a pressure sensor. In alternative embodiments, the touch screen controller 144 may dismiss every gesture that is not a single touch input, such as but not limited to swiping gestures or multi-touch gestures. In some embodiments, multiple touch events outputs may correspond to a single keying event. The touch event output coordinates may be converted into keying events by comparing them with the hot spots layout, wherein a touch event may correspond to a position “2” on the scrambled key pad, because the touch event's output coordinate falls within the limits of the hot spot at position “2”.
At a step 516, the touch screen controller 144 encrypts the one or more keying events generated at the step 514. In some embodiments, the one or more keying events may be encrypted using asymmetric cryptography while in other embodiments symmetric cryptography may be used. In some embodiments block ciphers may be used while in other embodiments stream ciphers may be used. In still other embodiments, white-box cryptography may be used. If using asymmetric cryptography, the keying events may be encrypted using a public or a private cryptographic key. Some embodiments may employ the RSA algorithm while other embodiments may employ algorithms based on elliptic curves, the discrete logarithm problem, or other mathematical principles. If using symmetric cryptography, the key is secret and the encryption algorithm may be DES, TDES or AES, or other encryption methods known in the art. In some embodiments, the touch screen controller may encrypt the touch events according to encryption security standards of the financial industry. In some embodiments, the key used may be changed for each transaction, and unique to each device. More specifically, the key may be changed according to the ANSI X9.24 specifications and the Dynamic Unique Key Per Transaction (DUKPT) method.
At a step 518 the touch screen controller 144 transmits the encrypted keying events of the step 516. In some embodiments, the touch screen controller 144 transmits the encrypted keying events to the secure element 152. In other embodiments, the touch screen controller 144 may be directly connected to the secure element 152. In alternative embodiments, the touch screen controller may transmit the encrypted keying events to the isolated secured area of the processor 115, and the encrypted keying events may then be transmitted to the secure element 152 by the isolated secured area of the processor.
Various other orderings of some of the steps in
At a step 520, the secure element 152 decrypts the encrypted keying events. In some embodiments, the encrypted keying events may be decrypted using a private cryptographic key. In embodiments wherein the correspondence table of the scrambled keypad has been previously encrypted, it is decrypted before, after or at the same time as the encrypted touch events.
At a step 522, the secure element 152 reconstitutes the PIC associated with the user based on the one or more keying events and the correspondence table of the scrambled keypad. In some embodiments, the PIC is reconstituted by executing a function which outputs the PIC by finding the values corresponding to the position of the keying events. By looking into the correspondence table, this function may determine that the keying event corresponding to “2” is associated with a value 5. The function may then determine that a keying event corresponds to a PIC entry of 5. This example is only provided as an illustrative example for reconstituting the PIC, and is one of the possible methods for determining corresponding keying events, as it may be recognized by a person skilled in the art of the present technology.
In some embodiments, the reconstituted PIC is encrypted by the secure element. In some embodiments, the encrypted PIC is transmitted to the isolated secured area of the processor after being encrypted by the secure element. The encrypted PIC may then be sent via a communication network to a remote server to finalize the transaction. In alternative embodiments wherein the correspondence table has been previously encrypted, the encrypted correspondence table of the scrambled keypad and the encrypted keying events may be sent to a remote server before being decrypted and reconstituted to a PIC by the remote server. In alternative embodiments, the user may be prompted to supply an additional method of authentication, including but not limited to biometric data, a second PIC, or any other computer-readable information associated with the user.
The present method and systems may be used in different non-limiting contexts. An exemplary use is during a financial transaction between a client and a merchant, where a mobile device such as a phone or tablet implements the method and system and may be used as a payment terminal by the merchant. The client may tap his card on the device to make a payment, with the card comprising a RFID or NFC chip, the device also comprising a RFID or NFC interface to communicate with the card. The device may present a PIC entry screen with a security indicator associated with the user, and prompt the user to enter his PIC to confirm the transaction. In some embodiments, the client may receive a confirmation of the transaction from the merchant and/or the financial institution holding a relevant account associated with the client.
Another exemplary use is during a peer-to-peer transaction, where a first person possessing a payment card could transfer funds to a second person possessing a mobile device. The first person could tap his or her card on the second person's mobile device, with the card comprising a RFID or NFC chip, the device also comprising a RFID or NFC interface to communicate with the card. The second person may present the device with a PIC entry screen comprising a security indicator associated with the first person, and prompt the first person to enter his PIC to confirm the transaction. The payment could also be made the opposite way, where the fund is transferred from the second person's device to the first person's card, in which case the second person enters his own PIC on his own device.
Another exemplary use is during a transaction between two persons, the two persons having NFC or RFID enabled devices. The two persons could exchange funds by approaching their devices together. Alternatively, the two persons could initiate and perform the transaction at a distance through a communications network. In either case, to confirm the transaction, at least one person may be prompted with a PIC confirmation screen to complete the transaction.
Notably, the features and examples above are not meant to limit the scope of the present disclosure to a single embodiment, as other embodiments are possible by way of interchange of some or all of the described or illustrated elements. Moreover, where certain elements of the present disclosure can be partially or fully implemented using known components, only those portions of such known components that are necessary for an understanding of the present disclosure are described, and detailed descriptions of other portions of such known components are omitted so as not to obscure the disclosure. In the present specification, an embodiment showing a singular component should not necessarily be limited to other embodiments including a plurality of the same component, and vice-versa, unless explicitly stated otherwise herein. Moreover, applicants do not intend for any term in the specification or claims to be ascribed an uncommon or special meaning unless explicitly set forth as such. Further, the present disclosure encompasses present and future known equivalents to the known components referred to herein by way of illustration.
The foregoing description of the specific embodiments so fully reveals the general nature of the disclosure that others can, by applying knowledge within the skill of the relevant art(s) (including the contents of the documents cited and incorporated by reference herein), readily modify and/or adapt for various applications such specific embodiments, without undue experimentation, and without departing from the general concept of the present disclosure. Such adaptations and modifications are therefore intended to be within the meaning and range of equivalents of the disclosed embodiments, based on the teaching and guidance presented herein. It is to be understood that the phraseology or terminology herein is for the purpose of description and not of limitation, such that the terminology or phraseology of the present specification is to be interpreted by the skilled artisan in light of the teachings and guidance presented herein, in combination with the knowledge of one skilled in the relevant art(s).
While the above-described implementations have been described and shown with reference to particular steps performed in a particular order, it will be understood that these steps may be combined, sub-divided, or re-ordered without departing from the teachings of the present technology. The steps may be executed in parallel or in series. Accordingly, the order and grouping of the steps is not a limitation of the present technology.
While various embodiments of the present disclosure have been described above, it should be understood that they have been presented by way of example, and not limitations. It would be apparent to one skilled in the relevant art(s) that various changes in form and detail could be made therein without departing from the spirit and scope of the disclosure. Thus, the present disclosure should not be limited by any of the above-described exemplary embodiments, but should be defined only in accordance with the following claims and their equivalents.
The present application claims convention priority to U.S. Provisional Patent Application No. 62/271,428, filed Dec. 28, 2015, entitled “SYSTEM FOR AND METHOD OF AUTHENTICATING A USER ON A DEVICE” which is incorporated by reference herein in its entirety.
Filing Document | Filing Date | Country | Kind |
---|---|---|---|
PCT/IB2016/057249 | 12/1/2016 | WO | 00 |
Number | Date | Country | |
---|---|---|---|
62271428 | Dec 2015 | US |