US20150095238A1 - Online payments using a secure element of an electronic device - Google Patents
Online payments using a secure element of an electronic device Download PDFInfo
- Publication number
- US20150095238A1 US20150095238A1 US14/481,526 US201414481526A US2015095238A1 US 20150095238 A1 US20150095238 A1 US 20150095238A1 US 201414481526 A US201414481526 A US 201414481526A US 2015095238 A1 US2015095238 A1 US 2015095238A1
- Authority
- US
- United States
- Prior art keywords
- merchant
- data
- subsystem
- credential
- key
- 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.)
- Abandoned
Links
Images
Classifications
-
- 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/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/32—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices
- G06Q20/325—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices using wireless networks
-
- 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/08—Payment architectures
- G06Q20/10—Payment architectures specially adapted for electronic funds transfer [EFT] systems; specially adapted for home banking systems
-
- 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/08—Payment architectures
- G06Q20/12—Payment architectures specially adapted for electronic shopping systems
-
- 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/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/32—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices
- G06Q20/322—Aspects of commerce using mobile devices [M-devices]
- G06Q20/3227—Aspects of commerce using mobile devices [M-devices] using secure elements embedded in M-devices
-
- 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/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/32—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices
- G06Q20/326—Payment applications installed on the mobile devices
-
- 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/30—Payment architectures, schemes or protocols characterised by the use of specific devices or networks
- G06Q20/32—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using wireless devices
- G06Q20/327—Short range or proximity payments by means of M-devices
- G06Q20/3278—RFID or NFC payments by means of M-devices
-
- 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
- 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
- G06Q20/3823—Payment protocols; Details thereof insuring higher security of transaction combining multiple encryption tools for a transaction
-
- 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
- G06Q20/3829—Payment protocols; Details thereof insuring higher security of transaction involving key management
-
- 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/40—Authorisation, e.g. identification of payer or payee, verification of customer or shop credentials; Review and approval of payers, e.g. check credit lines or negative lists
Definitions
- This disclosure relates to using a secure element of an electronic device for online payments.
- Portable electronic devices may be provided with near field communication (“NFC”) components for enabling contactless proximity-based communications with another entity.
- NFC near field communication
- these communications are associated with financial transactions or other secure data transactions that require the electronic device to access and share a commerce credential, such as a credit card credential, with the other entity in a contactless proximity-based communication.
- a commerce credential such as a credit card credential
- secure use of such a commerce credential by the electronic device for an online transaction has heretofore been infeasible.
- This document describes systems, methods, and computer-readable media for using a secure element of an electronic device for online payments.
- a method may include, at an electronic device, generating first data that includes payment card data, generating second data by encrypting the first data and merchant information with a first key, transmitting to a commercial entity subsystem the generated second data, receiving third data that includes the first data encrypted with a second key that is associated with the merchant information, and transmitting the received third data to a merchant subsystem that is associated with the merchant information, where the first key is not accessible to the merchant subsystem, and where the second key is not accessible to the electronic device.
- an electronic device may include a communication component, an application processor configured to access an online resource of a merchant server, and a secure element configured to store credential data, a credential key, and an access key.
- the secure element is configured to generate first data including the credential data encrypted with the credential key.
- the secure element is configured to generate second data including the first data encrypted with the access key.
- the application processor is configured to identify merchant information from the accessed online resource.
- the communication component is configured to transmit to a commercial entity server the generated second data and the identified merchant information.
- a method may include, at a commercial entity subsystem, receiving first data from an electronic device, wherein the first data includes credential information and merchant information indicative of a merchant subsystem, decrypting the first data using an access key, identifying a merchant key based on the merchant information from the first data, encrypting the credential information using the identified merchant key, and transmitting second data to at least one of the merchant subsystem and the electronic device, wherein the second data includes the credential information encrypted with the identified merchant key.
- a method may include, at an electronic device, generating first data by encrypting credential data with a credential key, generating second data by encrypting the first data with an access key, accessing an online resource of a merchant server, identifying merchant information indicative of the merchant server from the accessed online resource, and transmitting to a commercial entity server the generated second data and the identified merchant information.
- a method may include receiving, with an electronic device, first potential transaction data from an online resource of a merchant, automatically identifying, with the electronic device, additional information local to the electronic device based on the received first potential transaction data, and providing, with the electronic device, the identified additional information and at least a portion of the received first potential transaction data to a user of the electronic device.
- a method may include, at an electronic device, receiving transaction data from an online resource of a merchant server, accessing first data that includes credential data, and generating second data by encrypting the first data and a merchant identifier of the received transaction data with an access key.
- a method may include receiving, with a commercial entity server, first data and second data from an electronic device, wherein the first data may include credential information and a first merchant identifier encrypted by an access key, and wherein the second data may include a second merchant identifier.
- the method may also include identifying, with the commercial entity server, a merchant key based on at least one of the first merchant identifier and the second merchant identifier.
- a method may include generating, with an electronic device, first data that includes credential data, generating, with the electronic device, second data by encrypting the first data with an access key, transmitting, with the electronic device, to a commercial entity server the generated second data and merchant information, receiving, with the electronic device, third data that includes the first data encrypted with a merchant key that is associated with the merchant information, and transmitting, with the electronic device, the received third data to a merchant server that is associated with the merchant information, where the merchant key is not accessible to the electronic device.
- a method may include accessing credit card information from a secure element of an electronic device and facilitating an online payment transaction using the accessed credit card information.
- a method may include accessing payment information from a secure element of an electronic device and communicating the accessed payment information from the electronic device to a server over the internet.
- FIG. 1 is a schematic view of an illustrative system for using a secure element of an electronic device for online payments
- FIG. 1A is another more detailed schematic view of the system of FIG. 1 ;
- FIG. 2 is a more detailed schematic view of the electronic device of the system of FIGS. 1 and 1A ;
- FIG. 3 is another more detailed schematic view of the electronic device of FIGS. 1-2 ;
- FIG. 4 is a front view of the electronic device of FIGS. 1-3 ;
- FIGS. 5-13 are flowcharts of illustrative processes for conducting online payments.
- FIGS. 14A-14E are front views of screens of a graphical user interface of the electronic device of FIGS. 1-4 illustrating processes for conducting online payments.
- a credential provisioned on a secure element of an electronic device may be used for securely conducting an online financial transaction between the electronic device and a merchant.
- the credential may be encrypted by the secure element using an access key not available to any non-secure portion of the electronic device. That encrypted credential and information identifying the merchant for a proposed online financial transaction (e.g., merchant information obtained by the device via a merchant application or via a merchant's website) may be transmitted by the electronic device to a commercial entity that may also have access to the access key.
- the commercial entity may decrypt the received credential data using the access key and may re-encrypt the credential data using a merchant key known by the commercial entity.
- Such a merchant key may be determined by the commercial entity through use of the merchant identification information received from the electronic device (e.g., using a look-up table that may include various merchant keys for various merchants known by the commercial entity).
- the re-encrypted credential data may then be transmitted from the commercial entity to the merchant, either directly or via the electronic device, and the merchant may decrypt the credential data using the merchant key, which may be known to the merchant.
- the commercial entity may add a layer of security to the online financial transaction between the electronic device and the merchant.
- the commercial entity may be privy not only to the access key available at the secure element of the device but also to the merchant key available to the merchant.
- the commercial entity may be in a unique position to manage any online transactions between the secure element of the device and the merchant, while at the same time not being privy to the credential data being used (e.g., as the commercial entity may not have access to a credential key with which the credential data is encrypted by the secure element).
- a secure element of the electronic device may encrypt a merchant identifier along with the appropriate credential information using the access key, where such a merchant identifier may first be received from the online resource and then reformatted (e.g., cryptographically hashed) by the secure element in order to be properly encrypted along with the credential information on the secure element.
- the electronic device may be configured to auto-populate first information requested by the online resource (e.g., shipping information by leveraging a contact database on the electronic device), and the online resource may be configured to automatically update information about a potential transaction based on such auto-populated data (e.g., update a total transaction price based on new shipping information).
- first information requested by the online resource e.g., shipping information by leveraging a contact database on the electronic device
- the online resource may be configured to automatically update information about a potential transaction based on such auto-populated data (e.g., update a total transaction price based on new shipping information).
- FIGS. 1 and 1A show a system 1 in which one or more credentials may be provisioned onto an electronic device 100 from a financial institution subsystem 350 in conjunction with a commercial entity subsystem 400 , and in which such credentials may be used by electronic device 100 for conducting an online financial transaction with a merchant subsystem 200 and an associated acquiring bank subsystem 300 .
- FIGS. 2-4 show further details with respect to particular embodiments of electronic device 100 of system 1
- FIGS. 5-13 are flowcharts of illustrative processes for securely using a credential on an electronic device in an online financial transaction
- FIGS. 14A-14E show example screens 190 a - 190 e that may be representative of a graphical user interface of electronic device 100 during such an online financial transaction.
- FIG. 1 is a schematic view of an illustrative system 1 that may allow for the secure use of a credential on an electronic device in an online financial transaction (e.g., an online payment).
- system 1 may include an end-user electronic device 100 as well as a commercial entity subsystem 400 and a financial institution subsystem 350 for securely provisioning one or more credentials on electronic device 100 .
- FIG. 1 shows that an end-user electronic device 100 as well as a commercial entity subsystem 400 and a financial institution subsystem 350 for securely provisioning one or more credentials on electronic device 100 .
- system 1 may also include a merchant subsystem 200 for receiving contactless proximity-based communications (e.g., near field communications) and/or online-based communications 670 (e.g., in-app network telecommunications) from electronic device 100 for enabling payments based on such provisioned credentials between a user of electronic device 100 and a merchant of merchant subsystem 200 .
- System 1 may also include an acquiring bank subsystem 300 that may utilize such contactless proximity-based communications and/or such online-based communications 670 for completing a financial transaction with financial institution subsystem 350 .
- System 1 may include a communications path 15 for enabling communication between device 100 and merchant subsystem 200 , a communications path 25 for enabling communication between merchant subsystem 200 and acquiring bank subsystem 300 , a communications path 35 for enabling communication between acquiring bank subsystem 300 and financial institution subsystem 350 , a communications path 45 for enabling communication between a payment network subsystem 360 of financial institution subsystem 350 and an issuing bank subsystem 370 of financial institution subsystem 350 , a communications path 55 for enabling communication between financial institution subsystem 350 and commercial entity subsystem 400 , a communications path 65 for enabling communication between commercial entity subsystem 400 and electronic device 100 , a communications path 75 for enabling communication between financial institution subsystem 350 and electronic device 100 , and a communications path 85 for enabling communication between commercial entity subsystem 400 and merchant subsystem 200 .
- One or more of paths 15 , 25 , 35 , 45 , 55 , 65 , 75 , and 85 may be at least partially managed by one or more trusted service managers (“TSMs”).
- TSMs trusted service managers
- Any suitable circuitry, device, system, or combination of these e.g., a wireless communications infrastructure including one or more communications towers, telecommunications servers, or the like
- operative to create a communications network may be used to provide one or more of paths 15 , 25 , 35 , 45 , 55 , 65 , 75 , and 85 , which may be capable of providing communications using any suitable wired or wireless communications protocol.
- one or more of paths 15 , 25 , 35 , 45 , 55 , 65 , 75 , and 85 may support Wi-Fi (e.g., an 802.11 protocol), ZigBee (e.g., an 802.15.4 protocol), WiDiTM, Ethernet, BluetoothTM, BLE, high frequency systems (e.g., 900 MHz, 2.4 GHz, and 5.6 GHz communication systems), infrared, TCP/IP, SCTP, DHCP, HTTP, BitTorrentTM, FTP, RTP, RTSP, RTCP, RAOP, RDTP, UDP, SSH, WDS-bridging, any communications protocol that may be used by wireless and cellular telephones and personal e-mail devices (e.g., GSM, GSM plus EDGE, CDMA, OFDMA, HSPA, multi-band, etc.), any communications protocol that may be used by a low power Wireless Personal Area Network (“6LoWPAN”) module, any other communications protocol, or any combination thereof.
- Wi-Fi
- FIG. 1A shows a more detailed view of the system 1 described above with respect to FIG. 1 .
- electronic device 100 may include a processor 102 , a communications component 106 , and/or a near field communication (“NFC”) component 120 .
- NFC near field communication
- NFC component 120 may include a secure element that may be configured to provide a tamper-resistant platform (e.g., as a single or multiple chip secure microcontroller) that may be capable of securely hosting applications and their confidential and cryptographic data (e.g., credential applets and associated credential keys, such as a credential key 155 a ′ and an access key 155 a , and/or an issuer security domain (“ISD”) key 156 k , as shown in FIG. 1A ) in accordance with rules and security requirements that may be set forth by a set of well-identified trusted authorities (e.g., an authority of financial institution subsystem and/or an industry standard, such as GlobalPlatform).
- a tamper-resistant platform e.g., as a single or multiple chip secure microcontroller
- credential applets and associated credential keys such as a credential key 155 a ′ and an access key 155 a
- ISD issuer security domain
- a credential applet of NFC component 120 may be configured to provide sufficient detail for identifying a funding account or other financial instrument or credit source, where such a credential applet may be used by electronic device 100 in one or more communications with merchant subsystem 200 for facilitating a financial transaction.
- NFC component 120 may be configured to communicate such credential information as a contactless proximity-based communication (e.g., near field communication) with merchant subsystem 200 (e.g., with a merchant terminal of merchant subsystem 200 , where the merchant terminal may be located at a brick and mortar store or any physical location at which a user of electronic device 100 may use a credential stored on electronic device 100 to conduct a financial transaction with a proximately located merchant terminal via a contactless proximity-based communication).
- a contactless proximity-based communication e.g., near field communication
- merchant subsystem 200 e.g., with a merchant terminal of merchant subsystem 200 , where the merchant terminal may be located at a brick and mortar store or any physical location at which a user of electronic device 100 may use a credential stored on electronic device 100 to conduct a financial transaction with a proximately located merchant terminal via a contactless proximity-based communication.
- communications component 106 may be provided to allow device 100 to communicate any suitable data (e.g., credential information) with one or more other electronic devices or servers or subsystems (e.g., one or more subsystems or other components of system 1 ) using any suitable wired or wireless protocol (e.g., via one or more of communications paths 15 , 65 , and/or 75 ).
- Processor 102 of electronic device 100 may include any processing circuitry that may be operative to control the operations and performance of one or more components of electronic device 100 .
- processor 102 may be configured to run one or more applications on device 100 (e.g., online resource or merchant application 113 ) that may at least partially dictate the way in which online-based communications 670 including credential information of NFC component 120 may be communicated between communications component 106 of device 100 and a merchant server 210 of merchant subsystem 200 (e.g., to conduct a financial transaction with a remote merchant server of merchant subsystem 200 over the internet or any other suitable network that may be provided by communications path 15 ).
- applications on device 100 e.g., online resource or merchant application 113
- processor 102 may be configured to run one or more applications on device 100 (e.g., online resource or merchant application 113 ) that may at least partially dictate the way in which online-based communications 670 including credential information of NFC component 120 may be communicated between communications component 106 of device 100 and a merchant server 210 of merchant subsystem 200 (e.g., to conduct a financial transaction with a remote merchant server of merchant subsystem 200 over the internet or any other suitable network that may be
- Merchant server 210 of merchant subsystem 200 of FIG. 2 may include any suitable component or subsystem configured to receive an online-based communication 670 from communications component 106 of electronic device 100 via a communication path 15 between device 100 and server 210 .
- Such an online-based communication 670 may be configured to communicate commerce credential data from a secure element of NFC component 120 of device 100 (e.g., credit card credential information from an enabled applet of a credential supplemental security domain (“SSD”), as described in more detail below) to server 210 via any suitable communications protocol supported by communications component 106 of device 100 (e.g., Wi-Fi, BluetoothTM, cellular, wired network protocols, etc.).
- a secure element of NFC component 120 of device 100 e.g., credit card credential information from an enabled applet of a credential supplemental security domain (“SSD”), as described in more detail below
- SSD credential supplemental security domain
- any suitable communications protocol supported by communications component 106 of device 100 e.g., Wi-Fi, BluetoothTM,
- Online-based communication 670 may be provided within any suitable online-context, such as when a user of device 100 is communicating with merchant server 210 to conduct a financial transaction via a third party application 113 running on device 100 that may be managed by merchant server 210 or via an internet application or web browser (e.g., SafariTM by Apple Inc.) running on device 100 that may be pointed to a uniform resource locator (“URL”) whose target or web resource may be managed by merchant server 210 .
- URL uniform resource locator
- Merchant server 210 may be provided by a merchant of merchant subsystem 200 (e.g., as a webserver to host website data and/or manage third party application data).
- merchant subsystem 200 may also include a merchant processor component that may be the same as or similar to a processor component 102 of electronic device 100 , a merchant communications component that may be the same as or similar to a communications component 106 of electronic device 100 , a merchant I/O interface that may be the same as or similar to an I/O interface 114 of electronic device 100 , a merchant bus that may be the same as or similar to a bus 118 of electronic device 100 , a merchant memory component that may be the same as or similar to a memory component 104 of electronic device 100 , and/or a merchant power supply component that may be the same as or similar to a power supply component 108 of electronic device 100 .
- Financial institution subsystem 350 may include a payment network subsystem 360 (e.g., a payment card association or a credit card association) and/or an issuing bank subsystem 370 .
- issuing bank subsystem 370 may be a financial institution that may assume primary liability for a consumer's capacity to pay off debts they may incur with a specific credential.
- Each specific credential applet of NFC component 120 may be associated with a specific payment card that may be electronically linked to an account or accounts of a particular user.
- Various types of payment cards are suitable, including credit cards, debit cards, charge cards, stored-value cards, fleet cards, gift cards, and the like.
- the commerce credential of a specific payment card may be provisioned on electronic device 100 (e.g., as a credential of a credential supplemental security domain of NFC component 120 , as described below) by issuing bank subsystem 370 for use in a commerce credential data communication (e.g., a contactless proximity-based communication and/or an online-based communication 670 ) with merchant subsystem 200 .
- Each credential may be a specific brand of payment card that may be branded by a payment network subsystem 360 .
- Payment network subsystem 360 may be a network of various issuing banks 370 and/or various acquiring banks that may process the use of payment cards (e.g., commerce credentials) of a specific brand.
- At least one commerce credential must be securely provisioned on a secure element of NFC component 120 of electronic device 100 .
- a commerce credential may be at least partially provisioned on a secure element of NFC component 120 of electronic device 100 directly from financial institution subsystem 350 (e.g., as credential data 654 via a communication path 75 between financial institution subsystem 350 and device 100 , which may be passed to NFC component 120 via communications component 106 ).
- such a commerce credential may be at least partially provisioned on a secure element of NFC component 120 of electronic device 100 from financial institution subsystem 350 via commercial entity subsystem 400 (e.g., as credential data 654 via a communication path 55 between financial institution subsystem 350 and commercial entity subsystem 400 , which may be passed to device 100 as credential data 654 via a communication path 65 between a server 410 of commercial entity subsystem 400 and communications component 106 of device 100 , which may then be passed to NFC component 120 from communications component 106 ).
- commercial entity subsystem 400 e.g., as credential data 654 via a communication path 55 between financial institution subsystem 350 and commercial entity subsystem 400 , which may be passed to device 100 as credential data 654 via a communication path 65 between a server 410 of commercial entity subsystem 400 and communications component 106 of device 100 , which may then be passed to NFC component 120 from communications component 106 ).
- Credential data 654 via path 75 and/or via path 65 may be provisioned on a secure element of device 100 as at least a portion or all of a credential supplemental security domain of NFC component 120 and may include a credential applet and/or a credential key, such as credential key 155 a ′.
- financial institution subsystem 350 may also have access to credential key 155 a ′ (e.g., for decrypting data encrypted by device 100 using credential key 155 a ′).
- Financial institution subsystem 350 may be responsible for management of credential key 155 a ′, which may include the generation, exchange, storage, use, and replacement of such a key.
- Financial institution subsystem 350 may store its version of credential key 155 a ′ in a secure element of financial institution subsystem 350 .
- Commercial entity subsystem 400 may be provided as an intermediary between electronic device 100 and financial institution subsystem 350 , where commercial entity subsystem 400 may be configured to provide a new layer of security and/or to provide a more seamless user experience when a credential is being provisioned on a secure element of device 100 and/or when such a provisioned credential is being used as part of a commerce credential data communication (e.g., as part of an online-based communication 670 ) between device 100 and merchant subsystem 200 .
- Commercial entity subsystem 400 may be provided by a specific commercial entity that may offer various services to a user of device 100 via user-specific log-in information to a user-specific account with that commercial entity (e.g., via user-specific identification and password combinations).
- commercial entity subsystem 400 may be provided by Apple Inc. of Cupertino, Calif., which may also be a provider of various services to users of device 100 (e.g., the iTunesTM Store for selling/renting media to be played by device 100 , the Apple App StoreTM for selling/renting applications for use on device 100 , the Apple iCloudTM Service for storing data from device 100 , the Apple Online Store for buying various Apple products online, etc.), and which may also be a provider, manufacturer, and/or developer of device 100 itself (e.g., when device 100 is an iPodTM, iPadTM, iPhoneTM, or the like) and/or of an operating system (e.g., device application 103 ) of device 100 .
- Apple Inc. of Cupertino, Calif.
- the iTunesTM Store for selling/renting media to be played by device 100
- the Apple App StoreTM for selling/renting applications for use on device 100
- the Apple iCloudTM Service for storing data from device 100
- the Apple Online Store for buying various Apple products online
- the commercial entity that may provide commercial entity subsystem 400 may be distinct and independent from any financial entity of financial institution subsystem 350 .
- the commercial entity that may provide commercial entity subsystem 400 may be distinct and independent from any payment network subsystem 360 or issuing bank subsystem 370 that may furnish and manage any credit card or other commerce credential to be provisioned on user device 100 .
- the commercial entity that may provide commercial entity subsystem 400 may be distinct and independent from any merchant of merchant subsystem 200 .
- the commercial entity that may provide commercial entity subsystem 400 may be distinct and independent from any merchant of merchant subsystem 200 that may provide a merchant terminal for NFC communications, a third party application 113 , and/or any other aspect of merchant subsystem 200 .
- Such a commercial entity may leverage its potential ability to configure or control various components of device 100 (e.g., software and/or hardware components of device 100 when that commercial entity at least partially produces or manages device 100 ) in order to provide a more seamless user experience for a user of device 100 when he or she wants to provision a credential offered by financial institution subsystem 350 on user device 100 and/or when such a provisioned credential is being used as part of a commerce credential data communication with merchant subsystem 200 (e.g., as part of an online-based communication 670 ).
- device 100 may be configured to communicate with commercial entity subsystem 400 seamlessly and transparently to a user of device 100 (e.g., via communications path 65 ) for sharing or receiving certain data that may enable a higher level of security (e.g., during an online-based commerce credential data communication between device 100 and merchant subsystem 200 ).
- commercial entity subsystem 400 seamlessly and transparently to a user of device 100 (e.g., via communications path 65 ) for sharing or receiving certain data that may enable a higher level of security (e.g., during an online-based commerce credential data communication between device 100 and merchant subsystem 200 ).
- At least one commerce credential being provisioned on a secure element of NFC component 120 of electronic device 100 (e.g., as a portion of a credential SSD with credential key 155 a ′)
- at least one access SSD with an access key 155 b may also be provisioned on the secure element of NFC component 120 of device 100 in order to more securely enable device 100 to conduct a financial transaction with merchant subsystem 200 .
- an access SSD may be at least partially provisioned on a secure element of NFC component 120 of electronic device 100 directly from commercial entity subsystem 400 (e.g., as access data 652 via communication path 65 between server 410 of commercial entity subsystem 400 and communications component 106 of device 100 , which may then be passed to NFC component 120 from communications component 106 ).
- Access data 652 via path 65 may be provisioned on a secure element of device 100 as at least a portion or all of an access SSD and may include an access applet and/or access key 155 b .
- commercial entity subsystem 400 may also have access to access key 155 b (e.g., for decrypting data encrypted by device 100 using access key 155 b ).
- Commercial entity subsystem 400 may be responsible for management of access key 155 b , which may include the generation, exchange, storage, use, and replacement of such a key.
- Commercial entity subsystem 400 may store its version of access key 155 b in a secure element of commercial entity subsystem 400 .
- An access SSD of NFC component 120 with access key 155 b may be configured to determine intent and local authentication of a user of device 100 (e.g., via one or more input components 110 of device 100 , such as a biometric input component) and, in response to such a determination, may be configured to enable another particular SSD for conducting a payment transaction (e.g., with a credential of a credential SSD of NFC component 120 ).
- access key 155 b of such an access SSD of NFC component 120 may be leveraged to provide increased encryption to financial transaction data that may be communicated outside of the secure element of device 100 .
- access data 652 may include an issuer security domain (“ISD”) key 156 k for an ISD of the secure element of electronic device 100 , which may also be maintained by commercial entity subsystem 400 , and may be used in addition to or as an alternative to access key 155 b as described below.
- ISD issuer security domain
- At least one third party application may be accessed by device 100 in order to enable a commerce credential data communication (e.g., an online-based communication 670 ) between device 100 and merchant subsystem 200 .
- a commerce credential data communication e.g., an online-based communication 670
- an application 113 may be approved or otherwise enabled by commercial entity subsystem 400 before application 113 may be accessible by device 100 .
- an application store 420 of commercial entity subsystem 400 e.g., the Apple App StoreTM
- commercial entity subsystem 400 may generate or otherwise assign a merchant key 157 for application 113 and provide such a merchant key 157 to merchant subsystem 200 (e.g., via path 85 ).
- merchant subsystem 200 may generate or otherwise assign a merchant key 157 for application 113 and provide such a merchant key 157 to commercial entity subsystem 400 (e.g., via path 85 ).
- Either merchant subsystem 200 or commercial entity subsystem 400 may be responsible for management of merchant key 157 , which may include the generation, exchange, storage, use, and replacement of such a key.
- both merchant subsystem 200 and commercial entity subsystem 400 may store a version of merchant key 157 (e.g., in a respective secure element of merchant subsystem 200 and commercial entity subsystem 400 ).
- a merchant key 157 may be specifically associated with merchant application 113
- merchant key 157 may be specifically associated with a merchant of merchant subsystem 200 such that merchant key 157 may be associated with multiple third party applications operated by the same merchant of merchant subsystem 200 .
- a table 430 or any other suitable data structure or source of information accessible to commercial entity subsystem 400 may be provided for associating a particular merchant key 157 with a particular merchant application 113 or merchant entity.
- Table 430 may enable commercial entity subsystem 400 to determine and utilize an appropriate merchant key 157 for providing a layer of security to a commerce credential data communication (e.g., an online-based communication 670 ) between device 100 and merchant subsystem 200 (e.g., when a user of device 100 is communicating with merchant server 210 to conduct a financial transaction via a third party application 113 associated with that merchant key 157 ), as described in more detail below.
- Device 100 may be configured to access application 113 (e.g., from application store 420 via communication path 65 ) and run application 113 (e.g., with processor 102 ).
- a merchant key 157 may be associated with a merchant's website (e.g., one or more URLs) rather than or in addition to a merchant's third party application (e.g., application 113 ).
- a merchant of merchant subsystem 200 may work with commercial entity subsystem 400 to associate a particular merchant website with a particular merchant key 157 within table 430 , which may enable commercial entity subsystem 400 to determine and utilize an appropriate merchant key 157 for providing a layer of security to a commerce credential data communication (e.g., an online-based communication 670 ) between device 100 and merchant subsystem 200 (e.g., when a user of device 100 is communicating with merchant server 210 to conduct a financial transaction via an internet application or web browser running on device 100 that may be pointed to a URL whose target or web resource may be associated with that merchant key 157 ).
- Device 100 may be configured to access such a URL, for example, from merchant server 210 via communication path 15 using an internet application on device 100 .
- FIG. 2 shows a more detailed view of electronic device 100 of system 1 described above with respect to FIGS. 1 and 1A .
- electronic device 100 may include a processor 102 , memory 104 , communications component 106 , power supply 108 , input component 110 , output component 112 , antenna 116 , and near field communication (“NFC”) component 120 .
- Electronic device 100 may also include a bus 118 that may provide one or more wired or wireless communication links or paths for transferring data and/or power to, from, or between various other components of device 100 .
- Electronic device 100 may also be provided with a housing 101 that may at least partially enclose one or more of the components of device 100 for protection from debris and other degrading forces external to device 100 .
- one or more components of electronic device 100 may be combined or omitted.
- electronic device 100 may include other components not combined or included in FIG. 2 .
- electronic device 100 may include any other suitable components or several instances of the components shown in FIG. 2 . For the sake of simplicity, only one of each of the components is shown in FIG. 2 .
- One or more input components 110 may be provided to permit a user to interact or interface with device 100 and/or one or more output components 112 may be provided to present information (e.g., graphical, audible, and/or tactile information) to a user of device 100 .
- one or more input components and one or more output components may sometimes be referred to collectively herein as an input/output (“I/O”) component or I/O interface 114 (e.g., input component 110 and output component 112 as I/O component or I/O interface 114 ).
- I/O input/output
- input component 110 and output component 112 may sometimes be a single I/O component 114 , such as a touch screen, that may receive input information through a user's touch of a display screen and that may also provide visual information to a user via that same display screen.
- Processor 102 of electronic device 100 may include any processing circuitry that may be operative to control the operations and performance of one or more components of electronic device 100 .
- processor 102 may receive input signals from input component 110 and/or drive output signals through output component 112 .
- processor 102 may be used to run one or more applications, such as an application 103 and/or an application 113 .
- application 103 may be an operating system application while application 113 may be a third party application (e.g., an application associated with a merchant of merchant subsystem 200 ).
- NFC component 120 may be any suitable proximity-based communication mechanism that may enable contactless proximity-based transactions or communications between electronic device 100 and a merchant terminal (e.g., a merchant payment terminal) of merchant subsystem 200 .
- NFC component 120 may include any suitable modules for enabling contactless proximity-based communication between electronic device 100 and such a merchant terminal. As shown in FIG. 2 , for example, NFC component 120 may include an NFC device module 130 , an NFC controller module 140 , and/or an NFC memory module 150 .
- NFC device module 130 may include an NFC data module 132 , an NFC antenna 134 , and an NFC booster 136 .
- NFC data module 132 may be configured to contain, route, or otherwise provide any suitable data that may be transmitted by NFC component 120 to a merchant terminal as part of a contactless proximity-based or NFC communication. Additionally or alternatively, NFC data module 132 may be configured to contain, route, or otherwise receive any suitable data that may be received by NFC component 120 from a merchant terminal as part of a contactless proximity-based communication.
- NFC controller module 140 may include at least one NFC processor module 142 .
- NFC processor module 142 may operate in conjunction with NFC device module 130 to enable, activate, allow, and/or otherwise control NFC component 120 for communicating an NFC communication between electronic device 100 and a merchant terminal.
- NFC controller module 140 may include at least one NFC processor module 142 that may be used to run one or more applications, such as an NFC low power mode or wallet application 143 that may help dictate the function of NFC component 120 .
- NFC memory module 150 may operate in conjunction with NFC device module 130 and/or NFC controller module 140 to allow for NFC communications between electronic device 100 and merchant subsystem 200 .
- NFC memory module 150 may be tamper resistant and may provide at least a portion of a secure element 145 (see, e.g., FIG. 3 ).
- such a secure element may be configured to provide a tamper-resistant platform (e.g., as a single or multiple chip secure microcontroller) that may be capable of securely hosting applications and their confidential and cryptographic data (e.g., applets 153 and keys 155 ) in accordance with rules and security requirements that may be set forth by a set of well-identified trusted authorities (e.g., an authority of financial institution subsystem and/or an industry standard, such as GlobalPlatform).
- a tamper-resistant platform e.g., as a single or multiple chip secure microcontroller
- a tamper-resistant platform e.g., as a single or multiple chip secure microcontroller
- NFC memory module 150 may include one or more of an issuer security domain (“ISD”) 152 and a supplemental security domain (“SSD”) 154 (e.g., a service provider security domain (“SPSD”), a trusted service manager security domain (“TSMSD”), etc.), which may be defined and managed by an NFC specification standard (e.g., GlobalPlatform).
- ISD issuer security domain
- SSD supplemental security domain
- SPSD service provider security domain
- TMSD trusted service manager security domain
- NFC specification standard e.g., GlobalPlatform
- ISD 152 may be a portion of NFC memory module 150 in which a trusted service manager (“TSM”) or issuing financial institution (e.g., financial institution subsystem 350 ) may store keys and/or other suitable information for creating or otherwise provisioning one or more credentials (e.g., credentials associated with various credit cards, bank cards, gift cards, access cards, transit passes, etc.) on electronic device 100 (e.g., via communications component 106 ), for credential content management, and/or security domain management.
- a credential may include credential data that may be assigned to a user/consumer and that may be stored securely on electronic device 100 , such as a credit card payment number.
- NFC memory module 150 may include at least two SSDs 154 (e.g., at least a first SSD 154 a and a second SSD 154 b ).
- first SSD 154 a e.g., a credential SSD 154 a
- second SSD 154 b e.g., an access SSD 154 b
- second SSD 154 b may be associated with a commercial entity (e.g., commercial entity of commercial entity subsystem 400 , which may be a controlling entity for device 100 ) that may control access of device 100 to a specific credential of another SSD (e.g., first SSD 154 a ), for example, to provide specific privileges or payment rights to electronic device 100 .
- each one of first SSD 154 a and second SSD 154 b may be associated with a respective specific credential (e.g., a specific credit card credential or a specific public transit card credential provisioned by financial institution subsystem 350 ) that may provide specific privileges or payment rights to electronic device 100 .
- Each SSD 154 may include and/or be associated with at least one applet 153 (e.g., SSD 154 a with applet 153 a and SSD 154 b with applet 153 b ).
- an applet 153 of an SSD 154 may be an application that may run on a secure element of NFC component 120 (e.g., in a GlobalPlatform environment).
- Each applet 153 may also include and/or be associated with at least one of its own keys 155 (e.g., applet 153 a with at least one key 155 a and applet 153 b with at least one key 155 b ).
- a key 155 of an SSD 154 may be a piece of information that can determine a functional output of a cryptographic algorithm or cipher. For example, in encryption, a key may specify a particular transformation of plaintext into ciphertext, or vice versa during decryption. Keys may also be used in other cryptographic algorithms, such as digital signature schemes and message authentication codes. Each key and applet may be loaded on the secure element of device 100 by a TSM or an authorized agent or pre-loaded on the secure element when first provided on device 100 .
- credential SSD 154 a may be associated with a particular credit card credential
- that particular credential may only be communicated as a commerce credential data communication to merchant subsystem 200 (e.g., as a contactless proximity-based communication to a merchant terminal and/or as an online-based communication 670 to a merchant server 210 ) from a secure element of device 100 (e.g., from NFC component 120 ) for a financial transaction when applet 153 a of that credential SSD 154 a has been enabled or otherwise activated or unlocked for such use.
- a commerce credential data communication e.g., as a contactless proximity-based communication to a merchant terminal and/or as an online-based communication 670 to a merchant server 210
- a secure element of device 100 e.g., from NFC component 120
- Security features may be provided for enabling use of NFC component 120 that may be particularly useful when transmitting confidential payment information, such as credit card information or bank account information of a credential, from electronic device 100 to merchant subsystem 200 .
- Such security features also may include a secure storage area that may have restricted access. For example, user authentication via personal identification number (“PIN”) entry or via user interaction with a biometric sensor may need to be provided to access the secure storage area.
- PIN personal identification number
- an access SSD 154 b may leverage applet 153 b to determine whether such authentication has occurred before allowing other SSDs 154 (e.g., a credential SSD 154 a ) to be used for communicating its credential information.
- some or all of the security features may be stored within NFC memory module 150 .
- NFC memory module 150 may include a microcontroller embedded within electronic device 100 .
- applet 153 b of access SSD 154 b may be configured to determine intent and local authentication of a user of device 100 (e.g., via one or more input components 110 , such as a biometric input component) and, in response to such a determination, may be configured to enable another particular SSD for conducting a payment transaction (e.g., with a credential of credential SSD 154 a ).
- FIG. 3 shows another detailed view of a portion of electronic device 100 of system 1 described above with respect to FIGS. 1-2 .
- a secure element 145 of NFC component 120 may include SSD 154 a , which may include or be associated with applet 153 a , which may include an access key 155 a and/or a credential key 155 a ′, and SSD 154 b , which may include or be associated with applet 153 b , which may include an access key 155 b and/or a credential key 155 b ′.
- a specific supplemental security domain (“SSD”) 154 may be associated with a particular TSM and at least one specific commerce credential (e.g., a specific credit card credential or a specific public transit card credential) that may provide specific privileges or payment rights to electronic device 100 .
- Each SSD 154 may have its own manager key 155 (e.g., a respective one of keys 155 ak and 155 bk ) that may need to be activated to enable a function of that SSD 154 for use by NFC device module 130 .
- each SSD 154 may include and/or be associated with at least one of its own credential applications or credential applets (e.g., a Java card applet instances) associated with a particular commerce credential (e.g., credential applet 153 a of SSD 154 a may be associated with a first commerce credential and credential applet 153 b of SSD 154 b may be associated with a second commerce credential), where a credential applet may have its own access key (e.g., access key 155 a for credential applet 153 a and access key 155 b for credential applet 153 b ) and/or its own credential key (e.g., credential key 155 a ′ for credential applet 153 a and credential key 155 b ′ for credential applet 153 b ), and where a credential applet may need to be activated to enable its associated commerce credential for use by NFC device module 130 as an NFC communication and/or as an online
- a credential key of a credential applet may be generated by financial institution subsystem 350 that may be responsible for such a credential and may be accessible by that financial institution subsystem 350 (e.g., as shown in FIG. 1A ) for enabling secure transmission of that credential applet between secure element 145 and financial institution subsystem 350 .
- an access key of a credential applet may be generated by commercial entity subsystem 400 and may be accessible by commercial entity subsystem 400 (e.g., as shown in FIG. 1A ) for enabling secure transmission of that credential applet between secure element 145 and commercial entity subsystem 400 .
- secure element 145 may include ISD 152 , which may include an ISD key 156 k that may also be known to a trusted service manager associated with that security domain (e.g., commercial entity subsystem 400 , as shown in FIG. 1A ). ISD key 156 k may be leveraged by commercial entity subsystem 400 and electronic device 100 similarly to and/or instead of access key 155 a and/or access key 155 b for enabling secure transmissions between commercial entity subsystem 400 and secure element 145 of electronic device 100 . Moreover, as shown in FIG. 3 , and as described below in more detail, various data may be communicated between processor 102 and secure element 145 .
- processor 102 of device 100 may be configured to run a device application 103 that may communicate information with a merchant application 113 of processor 102 as well as secure element 145 , an I/O component 114 a (e.g., for receiving I/O input data 115 i and/or for transmitting I/O output data 115 o ), and/or communications component 106 .
- a device application 103 may communicate information with a merchant application 113 of processor 102 as well as secure element 145 , an I/O component 114 a (e.g., for receiving I/O input data 115 i and/or for transmitting I/O output data 115 o ), and/or communications component 106 .
- secure element 145 may include a controlling authority security domain (“CASD”) 158 , which may be a special purpose security domain that may be configured to serve as a third-party on-element root of trust.
- An associated application of CASD 158 may be configured to provide on-element confidential key generation as a global service to other applications and/or to a specific management layer (e.g., a GlobalPlatform management layer).
- Confidential key material that may be used within CASD 158 may be configured such that it cannot be inspected or modified by any entity, including an issuer of secure element 145 .
- CASD 158 may be configured to include and/or may be configured to generate and/or otherwise include CASD access kit 158 k (e.g., a CASD private key (“CASD-SK”), a CASD public key (“CASD-PK”), a CASD certificate (“CASD-Cert.”), and/or a CASD-signing module).
- CASD 158 may be configured to sign certain data on secure element 145 (e.g., using CASD access kit 158 k ) before providing such data to another portion of device 100 (e.g., communications component 106 for sharing with other subsystems of system 1 ).
- CASD 158 may be configured to sign any data that is provided by secure element 145 such that other subsystems (e.g., commercial entity subsystem 400 ) may be able to confirm that such signed data was signed by secure element 145 (e.g., using an associated CASD kit 158 k at commercial entity subsystem 400 ).
- secure element 145 may include a contactless registry services (“CRS”) applet or application 151 that may be configured to provide local functionality to electronic device 100 for modifying a life cycle state (e.g., activated, deactivated, locked, etc.) of certain security domain elements and sharing certain output information 115 o about certain security domain elements in certain life cycle states with a user of device 100 (e.g., via a user I/O interface 114 a ).
- CRS 151 may include a CRS access key 151 k that may also be known to a trusted service manager associated with CRS 151 (e.g., commercial entity subsystem 400 , as shown in FIG. 1A ).
- CRS access key 151 k may be leveraged by commercial entity subsystem 400 and electronic device 100 similarly to and/or instead of access key 155 a and/or access key 155 b for enabling secure transmissions between commercial entity subsystem 400 and secure element 145 of electronic device 100 .
- a specific example of electronic device 100 may be a handheld electronic device, such as an iPhoneTM, where housing 101 may allow access to various input components 110 a - 110 i , various output components 112 a - 112 c , and various I/O components 114 a - 114 d through which device 100 and a user and/or an ambient environment may interface with each other.
- a touch screen I/O component 114 a may include a display output component 112 a and an associated touch input component 110 f , where display output component 112 a may be used to display a visual or graphic user interface (“GUI”) 180 , which may allow a user to interact with electronic device 100 .
- GUI visual or graphic user interface
- GUI 180 may include various layers, windows, screens, templates, elements, menus, and/or other components of a currently running application (e.g., application 103 and/or application 113 and/or application 143 ) that may be displayed in all or some of the areas of display output component 112 a .
- GUI 180 may be configured to display a first screen 190 with one or more graphical elements or icons 182 of GUI 180 .
- device 100 may be configured to open a new application associated with that icon 182 and display a corresponding screen of GUI 180 associated with that application.
- device 100 may launch or otherwise access a specific third party merchant application and may display screens of a specific user interface that may include one or more tools or features for interacting with device 100 in a specific manner (see, e.g., FIGS. 14A-14E for specific examples of such displays of GUI 180 during use of a merchant application (e.g., application 113 ) that may be used by a user of device 100 for making an online payment with a credential of NFC component 120 (e.g., a credential of credential SSD 154 a )).
- a merchant application e.g., application 113
- screens may be displayed on display output component 112 a and may include various user interface elements.
- various other types of non-visual information may be provided to a user via various other output components 112 of device 100 .
- FIG. 5 Description of FIG. 5 , FIG. 6 , FIG. 7 , and FIGS. 14 A- 14 E
- FIGS. 5-7 To facilitate the following discussion regarding the operation of system 1 for securely conducting online payments between device 100 and merchant subsystem 200 (e.g., when a credential of a secure element of device 100 is being used as part of an online-based communication 670 between device 100 and merchant subsystem 200 ), reference is made to one or more processes of one or more flowcharts of FIGS. 5-7 , to various components of system 1 of the schematic diagrams of FIGS. 1-4 , and to front views of screens 190 - 190 e that may be representative of a graphical user interface of electronic device 100 during such a payment (e.g., as shown in FIGS. 4 and 14 A- 14 E).
- the operation described may be achieved with a wide variety of graphical elements and visual schemes. Therefore, the embodiments of FIGS. 4 and 14 A- 14 E are not intended to be limited to the precise user interface conventions adopted herein. Rather, embodiments may include a wide variety of user interface styles.
- FIG. 5 is a flowchart of an illustrative process 500 for securely conducting online payments.
- Process 500 is shown being implemented by electronic device 100 , merchant subsystem 200 , acquiring bank subsystem 300 , commercial entity subsystem 400 , and financial institution subsystem 350 . However, it is to be understood that process 500 may be implemented using any other suitable components or subsystems.
- Process 500 may provide a seamless user experience for securely conducting online payments with merchant subsystem 200 on device 100 .
- Process 500 may begin at step 502 , where electronic device 100 may encrypt payment card data with a commercial entity key.
- secure element 145 may encrypt payment card credential data from SSD 154 a (e.g., applet 153 a data) with access key 155 a , access key 155 b , CRS 151 k , and/or ISD key 156 k of secure element 145 that may be accessible to commercial entity subsystem 400 .
- secure element 145 may sign payment card credential data from SSD 154 a with CASD 158 k that may be accessible to commercial entity subsystem 400 at step 502 .
- process 500 may include electronic device 100 communicating the encrypted payment card data of step 502 to commercial entity subsystem 400 .
- process 500 may include commercial entity subsystem 400 decrypting the communicated encrypted payment card data of step 504 with a commercial entity key and then re-encrypting that decrypted payment card data with a merchant key.
- server 410 of commercial entity subsystem 400 may receive the encrypted payment card data from electronic device 100 , decrypt that encrypted payment card data with access key 155 a , access key 155 b , CRS 151 k , and/or ISD key 156 k of commercial entity subsystem 400 and/or unsign the payment card data with CASD 158 k of commercial entity subsystem 400 , and re-encrypt that decrypted/unsigned payment card data with merchant key 157 of commercial entity subsystem 400 .
- process 500 may prohibit the communication of such encrypted payment card data from being intercepted and decrypted by an entity that does not have access to the commercial entity key.
- process 500 may include commercial entity subsystem 400 communicating the re-encrypted payment card data of step 506 to electronic device 100 .
- re-encrypted payment card data may be transmitted from commercial entity subsystem 400 to communications component 106 of electronic device 100 via communications path 65 using any suitable communications protocol.
- process 500 may include electronic device 100 communicating the communicated re-encrypted payment card data of step 508 to merchant subsystem 200 .
- such re-encrypted payment card data may be transmitted from communications component 106 of electronic device 100 to server 210 of merchant subsystem 200 via communications path 15 using any suitable communications protocol.
- process 500 may prohibit the communication of such re-encrypted payment card data from being decrypted and altered by an entity that does not have access to the merchant key (e.g., electronic device 100 ).
- the data communicated from electronic device 100 to commercial entity subsystem 400 at step 504 may include a merchant identifier that may be indicative of a merchant subsystem with which electronic device 100 is attempting to conduct a financial transaction (e.g., via an online resource 113 associated with merchant subsystem 200 ).
- a merchant identifier may be received and utilized by commercial entity subsystem 400 at step 506 to identify a particular one of many merchant keys accessible by commercial entity subsystem 400 to use for the re-encryption of the payment card data at step 506 (e.g., through leveraging table 430 of commercial entity subsystem 400 ).
- process 500 may include merchant subsystem 200 utilizing that re-encrypted payment card data to execute a financial transaction with acquiring bank 300 and/or financial institution subsystem 350 at step 512 .
- merchant subsystem 200 may decrypt the re-encrypted payment card data with a merchant key accessible to merchant subsystem 200 (e.g., merchant key 157 ) and may then forward that payment card data to acquiring bank 300 and/or financial institution subsystem 350 (e.g., via communications path 25 and/or communications path 35 ) such that a funding account associated with that payment card data may be identified and used by acquiring bank 300 and/or financial institution subsystem 350 to fund a financial transaction.
- process 500 may include merchant subsystem 200 confirming that execution to electronic device 100 at step 514 .
- merchant subsystem 200 may communicate any suitable confirmation information to electronic device 100 via communications path 15 .
- the payment card data encrypted by electronic device 100 at step 502 may first be encrypted by a credential key (e.g., credential key 155 a ′ of secure element 145 ).
- a credential key e.g., credential key 155 a ′ of secure element 145
- Such a credential key may not be accessible by commercial entity subsystem 400 , such that the payment card data of not only the decrypted payment card data of step 506 but also the re-encrypted payment card data of steps 508 and 510 may remain encrypted by that credential key.
- Acquiring bank 300 and/or financial institution subsystem 350 may have access to such a credential key (e.g., credential key 155 a ′ of financial institution subsystem 350 ), such that when the payment card data is forwarded to acquiring bank 300 and/or financial institution subsystem 350 by merchant subsystem 200 at step 512 , acquiring bank 300 and/or financial institution subsystem 350 may decrypt the payment card data using the credential key before being able to identify the funding account associated with that payment card data. Therefore, process 500 may utilize a commercial entity subsystem to add a layer of security to an online financial transaction between an electronic device and a merchant. The commercial entity may be privy not only to a commercial entity key available at a secure element of the device but also to a merchant key available to the merchant.
- a commercial entity subsystem may be privy not only to a commercial entity key available at a secure element of the device but also to a merchant key available to the merchant.
- the commercial entity may be in a unique position to manage any online transactions between the secure element of the device and the merchant, while at the same time not being privy to the payment card data being used to identify an account for funding that transaction (e.g., as the commercial entity may not have access to a credential key with which the credential data may be initially encrypted by the secure element).
- steps shown in process 500 of FIG. 5 are merely illustrative and that existing steps may be modified or omitted, additional steps may be added, and the order of certain steps may be altered.
- FIG. 6 is a flowchart of an illustrative process 600 for securely conducting online payments.
- Process 600 is shown being implemented by electronic device 100 , merchant subsystem 200 , acquiring bank subsystem 300 , commercial entity subsystem 400 , and financial institution subsystem 350 . However, it is to be understood that process 600 may be implemented using any other suitable components or subsystems.
- Process 600 may provide a seamless user experience for securely conducting online payments with merchant subsystem 200 on device 100 .
- Process 600 may begin at step 602 , where access data 652 (e.g., access data 652 of FIG. 1A ) may be provisioned on a secure element of electronic device 100 by commercial entity subsystem 400 .
- access data 652 e.g., access data 652 of FIG. 1A
- At least one access SSD may be provisioned on a secure element (e.g., NFC component 120 ) of device 100 as access data 652 from server 410 of commercial entity subsystem 400 in order to more securely enable device 100 to conduct a financial transaction with merchant subsystem 200 .
- access SSD 154 b may be at least partially provisioned on a secure element of NFC component 120 of electronic device 100 directly from commercial entity subsystem 400 (e.g., as access data 652 via communication path 65 between server 410 of commercial entity subsystem 400 and communications component 106 of device 100 , which may then be passed to NFC component 120 from communications component 106 (e.g., via bus 118 )).
- Access data 652 via path 65 may be provisioned on a secure element of device 100 as at least a portion or all of an access SSD 154 b and may include access applet 153 b and/or access key 155 b .
- Step 602 may be at least partially carried out when device 100 is initially configured (e.g., by commercial entity subsystem 400 before device 100 is sold to a user). Alternatively, step 602 may be at least partially carried out in response to a user of device 100 initially setting up NFC component 120 .
- access data 652 may include ISD key 156 k for ISD 152 of the secure element of electronic device 100 and may be used in addition to or as an alternative to access key 155 b for enabling secure transmissions between commercial entity subsystem 400 and electronic device 100 . Additionally or alternatively, access data 652 may include CRS 151 k of CRS 151 and/or CASD 158 k of CASD 158 of secure element 145 of electronic device 100 and may be used in addition to or as an alternative to access key 155 b and/or access key 155 a and/or ISD key 156 k for enabling secure transmissions between commercial entity subsystem 400 and electronic device 100 .
- process 600 may include provisioning credential data 654 (e.g., credential data 654 of FIG. 1A ) on a secure element of electronic device 100 by financial institution subsystem 350 , in some embodiments, via commercial entity subsystem 400 .
- credential data 654 may be at least partially provisioned on a secure element of NFC component 120 of electronic device 100 directly from financial institution subsystem 350 (e.g., via communication path 75 of FIG. 1A between financial institution subsystem 350 and device 100 , which may be passed to NFC component 120 via communications component 106 ).
- credential data 654 may be at least partially provisioned on a secure element of NFC component 120 of electronic device 100 from financial institution subsystem 350 via commercial entity subsystem 400 (e.g., via communication path 55 of FIG. 1A between financial institution subsystem 350 and commercial entity subsystem 400 , which may be passed to device 100 as credential data 654 via communication path 65 of FIG. 1A between server 410 of commercial entity subsystem 400 and communications component 106 of device 100 , which may then be passed to NFC component 120 from communications component 106 (e.g., via bus 118 )).
- commercial entity subsystem 400 e.g., via communication path 55 of FIG. 1A between financial institution subsystem 350 and commercial entity subsystem 400 , which may be passed to device 100 as credential data 654 via communication path 65 of FIG. 1A between server 410 of commercial entity subsystem 400 and communications component 106 of device 100 , which may then be passed to NFC component 120 from communications component 106 (e.g., via bus 118 )).
- Credential data 654 via path 75 and/or via path 65 may be provisioned on a secure element of device 100 as at least a portion or all of credential SSD 154 a and may include credential applet 153 a and/or credential key 155 a ′. Step 604 may be at least partially carried out when a user of device 100 selects a particular credential to be provisioned on device 100 .
- credential data 654 may also include access key 155 a , which may be initially provided from commercial entity subsystem 400 to financial institution subsystem 350 and/or may be added by commercial entity subsystem 400 .
- the credential data provisioned on device 100 may include all data necessary to make a payment with that credential, such as, for example, a primary account number (“PAN”), a card security code (e.g., a card verification code (“CVV”)), expiration date, name associated with the credential, and the like.
- PAN primary account number
- CVV card verification code
- a “virtual” credential or virtual PAN or device PAN (“D-PAN”) may be provisioned on device 100 rather than the user's “actual” credential or actual PAN or funding PAN (“F-PAN”).
- a credential may be requested (e.g., by financial institution subsystem 350 , by commercial entity subsystem 400 , and/or by a user of device 100 ) that a virtual credential be generated, linked to the actual credential, and provisioned on device 100 instead of the actual credential.
- a virtual credential may be generated, linked to the actual credential, and provisioned on device 100 instead of the actual credential.
- a payment network subsystem 360 e.g., a particular payment network subsystem 360 that may be associated with the brand of the actual credential
- payment network subsystem 360 may receive an authorization request indicative of that virtual credential (e.g., as data 674 of FIG. 1A ) and may conduct an analysis of that authorization request in light of the actual credential associated with the virtual credential as determined by table 312 .
- financial institution subsystem 350 may be configured to limit the fraudulent activity that may result when the virtual credential is intercepted by an unauthorized user, as payment network subsystem 360 may only be configured to utilize table 312 for linking the virtual credential to the actual credential during certain transactions.
- process 600 may include associating a merchant's online resource, such as a merchant application 113 or a merchant website, with a merchant key 157 .
- a merchant's online resource such as a merchant application 113 or a merchant website
- commercial entity subsystem 400 may populate a table 430 to associate a merchant key 157 with a merchant's resource (e.g., application 113 or website) for enabling a secure commerce credential data communication (e.g., an online-based communication 670 of FIG. 1A ) between device 100 and merchant subsystem 200 using that merchant resource.
- a merchant's resource e.g., application 113 or website
- Both merchant subsystem 200 and commercial entity subsystem 400 may store a version of such a merchant key 157 (e.g., in a respective secure element of merchant subsystem 200 and commercial entity subsystem 400 , as shown in FIG. 1A ).
- a merchant in order to participate in an online-resource payment program, may be required to register as a member of a program run by the commercial entity of commercial entity subsystem 400 and/or obtain a merchant certificate. Merchants may not be able to receive payment data without a certificate. Each certificate may contain a unique merchant identifier that may bind the merchant to the public key for that merchant (e.g., a public merchant key 157 ). A merchant may obtain multiple certificates, and thus may hold more than one identity.
- Such a unique merchant identifier may be provided by merchant subsystem 200 to device 100 (e.g., at step 610 as a portion of data 660 and/or as an inherent element of the online resource running on device 100 (e.g., merchant application 113 ), and such a merchant identifier may be provided from device 100 to commercial entity subsystem 400 during an attempted transaction (e.g., as at least a portion of data 664 at step 614 described below).
- process 600 may include a merchant's online resource 658 (e.g., a merchant's third party application 113 of FIG. 1A or website) being accessed by device 100 .
- a merchant's third party application 113 may be loaded onto device 100 from commercial entity subsystem 400 (e.g., from application store 420 ).
- a user may select “Merchant App” icon 183 of a specific screen 190 of GUI 180 using touch screen input component 110 f of I/O component 114 a , and this selection may be recognized by electronic device 100 as an initiation event for providing the user with the ability to interact with a merchant's third party application 113 .
- step 608 may include device 100 accessing a merchant's online resource 658 as a merchant's webpage from merchant subsystem 200 (e.g., via merchant server 210 ) using an internet application of device 100 , which may also be selectable by an “Internet” icon 182 of specific screen 190 of GUI 180 of FIG. 4 for providing the user with the ability to interact with a merchant's webpage rather than with a merchant's third part application.
- device 100 may receive potential transaction data 660 from the accessed online resource of the merchant.
- potential transaction data 660 may be provided to device 100 from merchant subsystem 200 (e.g., from merchant server 210 ) when device 100 is interacting with the merchant's third party application 113 or the merchant's website or any other suitable online resource (e.g., resource 658 ) of the merchant.
- at least a portion of potential transaction data 660 may be locally accessible by device 100 via application 113 local to device 100 (e.g., when application 113 is stored in memory component 104 or being run by processor 102 of device 100 ), rather than the data being actively sent to device 100 from merchant server 210 at step 610 .
- At least some of potential transaction data 660 may be generated by that initially stored application 113 absent any additional information provided to device 100 by merchant subsystem 200 .
- Potential transaction data 660 may include any suitable data indicative of characteristics of a potential financial transaction to occur between a user of device 100 and a merchant of merchant subsystem 200 , including, but not limited to, identification of device 100 , identification of the merchant, identification of the particular merchant resource being used (e.g., the particular merchant application 113 or website being accessed by device 100 ), identification of the particular product or service to be purchased or rented or otherwise paid for, identification of the price to be paid, identification of the currency to be used during the transaction, identification of a default or initial shipping address to be used, a list of financial institutions whose credentials may be accepted by merchant subsystem 200 , and/or any other suitable information.
- identification of device 100 identification of the merchant, identification of the particular merchant resource being used (e.g., the particular merchant application 113 or website being accessed by device 100 ), identification of the particular product or service to be purchased or rented or otherwise paid for, identification of the price to be paid, identification of the currency to be used during the transaction, identification of a default or initial shipping address to be used
- Potential transaction data 660 may define an online resource's request to produce a payment token for the purchase of products and/or services and may encapsulate any suitable information about the potential transaction including, for example, information about the merchant's payment processing capabilities, an amount to pay, and the currency code.
- Potential transaction data 660 may also include a list of one or more payment networks (e.g., payment network(s) 360 ) that may be supported by the merchant such that device 100 may be configured to determine whether any of such listed one or more payment networks has an authorized payment credential on device 100 . If such a match exists, for example, as shown in FIG.
- GUI 180 may provide screen 190 a , where a merchant's online resource may use transaction data 660 to show to a user the name of the merchant (e.g., “Merchant A”) with information 1407 a , the name of the product (e.g., “Product B”) with information 1407 b , the price (e.g., “Price C”) with information 1407 c , and/or initial shipping data (e.g., “Address D”) with information 1407 d .
- Potential transaction data 660 that may be provided to device 100 by merchant server 210 may be indicative of such information 1407 a , 1407 b , 1407 c , and/or 1407 d .
- screen 190 a may also include a choose alternate shipping prompt 1409 and/or a purchase prompt 1411 .
- Potential transaction data 660 may be provided from merchant server 210 to device 100 via communication path 15 of FIG. 1A and may be received by communications component 106 of device 100 . Communications component 106 may pass this potential transaction data 660 on to processor 102 (e.g., for displaying on screen 190 a as part of a user interface for merchant application 113 on device 100 (e.g., for information 1407 a - 1407 d )) and/or to NFC component 120 .
- NFC component 120 may utilize such potential transaction data 660 for securely enabling a financial transaction between device 100 and merchant subsystem 200 , as further described below.
- shipping information 1407 d may be based on any suitable data known by the online resource and/or based on data discoverable and selectable by other resources available to device 100 (e.g., contact information local to device 100 ) for auto-populating and/or updating initial shipping information provided by the online resource.
- potential transaction data 660 may be referred to as payment request data and/or a uniform resource locator (“URL”) or any other suitable reference character string and/or query string.
- URL uniform resource locator
- process 600 may include receiving intent and authentication by a user of device 100 to utilize a specific credential for carrying out a financial transaction for a particular merchant, product, price, and shipping destination based on potential transaction data 660 .
- screen 190 a of GUI 180 of device 100 may also include a purchase prompt 1411 that may ask the user whether he or she wishes to make a purchase from the merchant according to the details of potential transaction data 660 .
- output display component 112 a may be configured to provide screen 190 c in response to receiving selection of purchase prompt 1411 of screen 190 a of FIG. 14A and/or purchase prompt 1411 of screen 190 c of FIG.
- Screen 190 c of FIG. 14C may prompt a user to interact with device 100 in one or more ways to choose a specific credential available to device 100 for making the purchase.
- screen 190 c may include a credential selection prompt 1413 that may enable a user to select one of potentially multiple credentials that may be provisioned on device 100 (e.g., the credential of credential SSD 154 a ).
- Prompt 1413 may only include credentials that are associated with payment networks supported by the merchant (e.g., as may be determined by potential transaction data 660 , as mentioned above). As shown in FIG.
- output display component 112 a may be configured to provide screen 190 d in response to receiving user selection of a credential from credential selection prompt 1413 of screen 190 c of FIG. 14C .
- Screen 190 d of FIG. 14D may prompt a user to interact with device 100 in one or more ways to authenticate the user and its intent to utilize the selected credential. This may include prompting the user (e.g., with an authentication prompt 1415 ) to enter user authentication via personal identification number (“PIN”) entry or via user interaction with a biometric sensor in order to access the secure element of device 100 and, thus, the credential to be used for the purchase.
- PIN personal identification number
- Access SSD 154 b may leverage applet 153 b to determine whether such authentication has occurred before allowing other SSDs 154 (e.g., credential SSD 154 a ) to be used for enabling its credential information in a commerce credential data communication.
- applet 153 b of access SSD 154 b may be configured to determine intent and local authentication of a user of device 100 (e.g., via one or more input components 110 , such as a biometric input component 110 i of FIG.
- output display component 112 a may be configured to provide screen 190 e of FIG. 14E that may prompt a user (e.g., with a payment prompt 1417 ) to interact with device 100 in one or more ways to finally initiate payment to merchant subsystem 200 according to potential transaction data 660 using the selected and authenticated credential. Additional features of FIGS. 14A-14E may be described below with respect to process 700 of FIG. 7 .
- process 600 may include device 100 generating, encrypting, and transmitting commercial entity credential data 664 for use by commercial entity subsystem 400 .
- the secure element of device 100 e.g., processor module 142 of NFC component 120
- secure element (“SE”) credential data 661 of credential SSD 154 a may be encrypted with credential key 155 a ′ at step 612 as encrypted SE credential data 662 , such that the encrypted SE credential data 662 may only be decrypted by an entity with access to that credential key 155 a ′ (e.g., financial institution subsystem 350 ) for accessing SE credential data 661 .
- SE credential data 661 of credential SSD 154 a e.g., applet data 153 a
- credential key 155 a ′ e.g., financial institution subsystem 350
- That SE credential data 661 may include all data necessary to make a payment with that credential, such as, for example, a primary account number (e.g., an actual F-PAN or a virtual D-PAN), a card security code (e.g., a card verification code (“CVV”)), expiration date, name associated with the credential, and/or the like.
- a primary account number e.g., an actual F-PAN or a virtual D-PAN
- a card security code e.g., a card verification code (“CVV”)
- that encrypted SE credential data 662 may be encrypted by access information (e.g., by access key 155 a of SSD 154 a , access key 155 b of access SSD 154 b , ISD key 156 k , and/or CRS 151 k and/or signed by CASD 158 k ) at step 613 as encrypted commercial entity (“CE”) credential data 663 .
- CE commercial entity
- secure element 145 of device 100 may use access information to encrypt not only an identification of the merchant from data 660 (e.g., identification of the merchant or its resource being used for the purchase, such as application 113 ), but also the identification of the amount of the purchase and/or currency code from data 660 , as well as the encrypted SE credential data 661 of SSD 154 a (e.g., encrypted SE credential data 662 ) into encrypted commercial entity credential data 663 .
- such identification of the merchant from data 660 may first be converted by the secure element into a format that may be utilized by a protocol of the secure element (e.g., from a plaintext merchant identification format that may be variable in length as may be provided from transaction data 660 into a hashed merchant identification format of a fixed length that may be suitable encrypted by the secure element), as described in more detail below with respect to step 720 of process 700 of FIG. 7 .
- a protocol of the secure element e.g., from a plaintext merchant identification format that may be variable in length as may be provided from transaction data 660 into a hashed merchant identification format of a fixed length that may be suitable encrypted by the secure element
- encrypted commercial entity credential data 663 along with any additional information, such as at least some of potential transaction data 660 (e.g., identification of the merchant, identification of the price, and/or identification of the product/service) and/or any other suitable information (e.g., any information identifying device 100 itself and/or the merchant in unencrypted form), may together be transmitted as commercial entity transaction data 664 from device 100 to commercial entity subsystem 400 at step 614 (e.g., as described in more detail below with respect to step 724 of process 700 of FIG. 7 ).
- potential transaction data 660 e.g., identification of the merchant, identification of the price, and/or identification of the product/service
- any other suitable information e.g., any information identifying device 100 itself and/or the merchant in unencrypted form
- commercial entity transaction data 664 may only be decrypted by an entity with access to that access information used for the encryption (e.g., access key 155 a , access key 155 b , ISD key 156 k , CRS 151 k , and/or CASD 158 k ) that generated encrypted commercial entity credential data 663 of commercial entity transaction data 664 (e.g., commercial entity subsystem 400 ).
- Such commercial entity transaction data 664 may be generated at steps 612 - 614 and then transmitted to commercial entity subsystem 400 at step 614 (e.g., from the secure element of NFC component 120 , via communications component 106 and communication path 65 ).
- Steps 612 , 613 , and 614 may ensure that any credential data generated and transmitted from the secure element of device 100 as part of commercial entity transaction data 664 has first been encrypted in such a way that it cannot be decrypted by another portion of device 100 . That is, SE credential data 661 of commercial entity transaction data 664 may be encrypted as encrypted SE credential data 662 with a credential key 155 a ′ that may not be exposed to or accessible by any portion of device 100 outside of its secure element.
- such encrypted SE credential data 662 of commercial entity transaction data 664 may be encrypted as encrypted commercial entity credential data 663 with an access key (e.g., access key 155 a , 155 b , 156 k , 151 k , and/or 158 k (e.g., referred to herein as “access information”)) that may not be exposed to or accessible by any portion of device 100 outside of its secure element.
- an access key e.g., access key 155 a , 155 b , 156 k , 151 k , and/or 158 k (e.g., referred to herein as “access information”)
- process 600 may include commercial entity subsystem 400 receiving and decrypting at least a portion of commercial entity transaction data 664 .
- commercial entity subsystem 400 may receive commercial entity transaction data 664 and may then decrypt encrypted commercial entity credential data 663 of commercial entity transaction data 664 using access information (e.g., 155 a , 155 b , 156 k , 151 k , and/or 158 k ) as available at commercial entity subsystem 400 .
- access information e.g., 155 a , 155 b , 156 k , 151 k , and/or 158 k
- the merchant may be identified by the additional data that may have been included in commercial entity transaction data 664 along with encrypted commercial entity credential data 663 (e.g., as described in more detail below with respect to steps 724 and 726 of process 700 of FIG. 7 ).
- Commercial entity transaction data 664 may include information identifying device 100 or at least its secure element, such that, when data 664 is received by commercial entity subsystem 400 , commercial entity subsystem 400 may know which access information (e.g., which of access information 155 a , 155 b , 156 k , 151 k , and/or 158 k ) to use at step 616 .
- commercial entity subsystem 400 may have access to multiple access keys 155 a / 155 b and/or multiple ISD keys 156 k , each one of which may be particular to a specific device 100 or to a specific secure element.
- process 600 may include commercial entity subsystem 400 identifying a merchant key 157 associated with the merchant that may have been identified from commercial entity transaction data 664 and then re-encrypting at least a portion of commercial entity credential data 664 using that merchant key 157 .
- commercial entity subsystem 400 may then, at step 617 , re-encrypt at least a second portion of commercial entity transaction data 664 (e.g., encrypted SE credential data 662 ) with an appropriate merchant key 157 that may be associated with merchant information identified in commercial entity transaction data 664 .
- a merchant key 157 may be determined by comparing the merchant information identified in commercial entity transaction data 664 with data in table 430 of FIG. 1A .
- commercial entity subsystem 400 may re-encrypt with merchant key 157 at least a portion of commercial entity transaction data 664 as encrypted merchant credential data 667 at step 617 .
- encrypted merchant credential data 667 may include at least the encrypted SE credential data 662 from commercial entity transaction data 664 as well as the purchase amount data or other suitable transaction data from commercial entity transaction data 664 (e.g., data that may have been initially identified from transaction data 660 ).
- the merchant identification information from commercial entity transaction data 664 may not need to be included in encrypted merchant credential data 667 as that merchant identification may have already been used to determine the merchant key 157 with which encrypted merchant credential data 667 may be encrypted at step 617 .
- Encrypted merchant credential data 667 may be signed by commercial entity subsystem 400 in such a way that, when received by merchant subsystem 200 , may establish commercial entity subsystem 400 as the creator of such encrypted merchant credential data 667 and/or may let merchant subsystem 200 ensure that encrypted merchant credential data 667 has not been modified after being signed.
- Such encrypted merchant credential data 667 may be generated at steps 616 and 617 and then transmitted to electronic device 100 along with any other suitable data as merchant transaction data 668 at step 618 (e.g., from server 410 of commercial entity subsystem 400 to communications component 106 of device 100 via path 65 of FIG. 1A ).
- Steps 616 , 617 , and 618 may ensure that credential data transmitted from the commercial entity subsystem 400 as part of merchant transaction data 668 of FIG. 1A (e.g., credential data of encrypted merchant credential data 667 of merchant transaction data 668 ) may be encrypted in such a way that it cannot be decrypted by a portion of device 100 other than its secure element. That is, merchant transaction data 668 may be encrypted with a merchant key 157 that may not be exposed to or otherwise accessible by any portion of device 100 , including, in some embodiments, its secure element.
- credential data transmitted from the commercial entity subsystem 400 as part of merchant transaction data 668 of FIG. 1A e.g., credential data of encrypted merchant credential data 667 of merchant transaction data 668
- merchant transaction data 668 may be encrypted with a merchant key 157 that may not be exposed to or otherwise accessible by any portion of device 100 , including, in some embodiments, its secure element.
- credential data of merchant transaction data 668 may be encrypted with a credential key 155 a ′ that may not be exposed to or otherwise accessible by any portion of device 100 outside of its secure element.
- Merchant transaction data 668 may then be forwarded on to merchant subsystem 200 (e.g., merchant server 210 ) by device 100 as online-based communication 670 (e.g., via communications component 106 and communication path 15 of FIG. 1A ) at step 620 .
- Such online-based communication 670 may at least include some of merchant transaction data 668 (e.g., encrypted merchant credential data 667 ) and any other suitable information (e.g., information that may be used by merchant application 113 or any other merchant resource (e.g., a merchant website), such as shipping information 1407 d ), as may be described in more detail below with respect to steps 730 and 732 of process 700 of FIG. 7 .
- commercial entity subsystem 400 may directly share merchant transaction data 668 with merchant subsystem 200 as online-based communication 671 at step 621 (e.g., via path 85 of FIG. 1A ).
- process 600 may include step 622 at which merchant subsystem 200 may send confirmation data 672 to device 100 (e.g., via communication path 15 of FIG. 1A ).
- confirmation data 672 may be received by device 100 to indicate to a user of device 100 that the user's payment instructions have been received by merchant subsystem 200 .
- the remaining steps of process 600 may occur transparent to the user.
- steps 612 - 620 or 621 as well as steps 622 - 630 may occur without any further user interaction and may seem instantaneous to a user, whereby process 600 may appear to a user as if, after step 611 , credential data is automatically and instantaneously sent to merchant subsystem 200 and confirmed at step 622 .
- process 600 may also include step 623 at which merchant subsystem 200 may be configured to generate and transmit payment data 673 to acquiring bank subsystem 300 (e.g., via communication path 25 between merchant subsystem 200 and acquiring bank subsystem 300 of FIG.
- data 673 may include payment information and an authorization request that may be indicative of the user's commerce credential and the merchant's purchase price for the product or service (e.g., as included in communication 671 received from commercial entity subsystem 400 directly at step 621 or in online-based communication 670 received from device 100 at step 620 ).
- merchant subsystem 200 may leverage its known merchant key 157 to at least partially decrypt merchant transaction data 668 (e.g., as received from communication 671 at step 621 or from communication 670 at step 620 ), such that payment data 673 may include the SE credential data 661 of credential SSD 154 a encrypted with its credential key 155 a ′ (e.g., encrypted SE credential data 662 ) but not with a key that is not available to financial institution subsystem 350 .
- acquiring bank subsystem 300 may forward the authorization request from data 673 to financial institution subsystem 350 as authorization request data 674 (e.g., via communication path 35 between acquiring bank subsystem 300 and financial institution subsystem 350 of FIG.
- step 626 when issuing bank subsystem 370 of financial institution subsystem 350 receives an authorization request (e.g., directly from acquiring bank subsystem 300 as data 674 at step 624 , or indirectly via payment network subsystem 360 as data 405 as described above), the payment information (e.g., SE credential data 661 of device 100 as encrypted by credential key 155 a ′ by the secure element of device 100 (e.g., encrypted SE credential data 662 )) and the purchase amount, each of which may be included in the authorization request data 674 , as well as in data 673 , 664 , 668 , 670 , and/or 671 , may be decrypted (e.g., using credential key 155 a ′ at financial institution subsystem 350 ) and analyzed to determine if the account associated with the commerce credential has enough credit to cover the purchase amount.
- an authorization request e.g., directly from acquiring bank subsystem 300 as data 674 at step 624 , or indirectly via payment network subsystem 360
- issuing bank subsystem 370 may decline the requested transaction by transmitting a negative authorization response to acquiring bank subsystem 300 . However, if sufficient funds are present, issuing bank subsystem 370 may approve the requested transaction by transmitting a positive authorization response to acquiring bank subsystem 300 and the financial transaction may be completed. Either type of authorization response may be provided by user financial subsystem 350 to acquiring bank subsystem 300 as authorization response data 676 at step 626 of process 600 (e.g., directly from issuing bank subsystem 370 to acquiring bank subsystem 300 via communication path 35 , or from payment network subsystem 360 to acquiring bank subsystem 300 based on authorization response data 415 that may be provided to payment network subsystem 360 from issuing bank subsystem 370 via communication path 45 of FIG.
- process 600 may also include acquiring bank subsystem 300 or any other suitable subsystem may share such authorization response data with merchant subsystem 200 as authorization response data 678 at step 628 , which may then be shared with electronic device 100 as authorization response data 680 at step 630 .
- merchant subsystem 200 may be configured to process online-based communication 671 received from commercial entity subsystem 400 directly at step 621 or online-based communication 670 received from device 100 at step 620 in any suitable way. For example, to obtain the plain text payment credentials from such an online-based communication (e.g., SE credential data 661 ), merchant subsystem 200 may verify that a signature property of the received data is valid and that commercial entity subsystem 400 is the signer of that signature. Merchant subsystem 200 may use any suitable technique to determine which merchant key (e.g., which merchant public key 157 ) may have been used by commercial entity subsystem 400 to construct the encrypted merchant credential data (e.g., data 667 ).
- merchant key e.g., which merchant public key 157
- merchant subsystem 200 may retrieve the corresponding merchant private key (e.g., merchant private key 157 at merchant subsystem 200 ) and use that retrieved key to de-encapsulate and/or decrypt encrypted merchant credential data 667 to recover encrypted SE credential data 662 .
- data 662 may be provided to the appropriate payment network 360 , which may leverage the appropriate credential key 155 a ′ of financial institution subsystem 350 to de-encapsulate and/or decrypt encrypted SE credential data 662 to recover SE credential data 661 (e.g., to recover the plain text payment information for the payment credential, such as full EMV (“Europay MasterCard Visa”) payment data).
- SE credential data 661 e.g., to recover the plain text payment information for the payment credential, such as full EMV (“Europay MasterCard Visa”) payment data.
- device 100 may be configured to request certain data from commercial entity subsystem. For example, prior to step 612 but after step 610 , device 100 may request certain CE feature information (e.g., an unpredictable number or other suitable data) that may be leveraged by device 100 and process 600 for adding an additional layer of security to process 600 .
- CE feature information e.g., an unpredictable number or other suitable data
- such CE feature information may be provided from commercial entity 400 to device 100 (e.g., at a step (not shown) before step 612 ), and such CE feature information may be encrypted along with other data by secure element 145 .
- such CE feature information may be encrypted along with SE credential data 661 as encrypted SE credential data 662 at step 612 .
- such CE feature information may be encrypted along with encrypted SE credential data 662 as encrypted CE credential data 663 at step 613 .
- CE feature information may be included in CE transaction data 664 to commercial entity subsystem 400 and may be accessed by commercial entity subsystem 400 and compared to the CE feature information it generated earlier to confirm a match or determine any potential fraudulent behavior (e.g., if such CE feature information were encrypted at step 613 ). Additionally or alternatively, such CE feature information may be included in CE transaction data 664 and in communication 670 such that it may be received by merchant subsystem 200 (e.g., via device 100 ).
- CE feature information may be provided directly from commercial entity subsystem 400 to merchant subsystem 200 (e.g., as a communication 671 at step 621 or at any other point in process 600 prior to step 622 ), such that merchant subsystem 200 may compare such CE feature information encrypted by device 100 and received by merchant subsystem 200 as at least a portion of communication 670 with such CE feature information that may be received by merchant subsystem 200 directly from commercial entity subsystem 400 .
- Such a comparison if matching, may add another layer of security on which merchant subsystem 200 may rely when determining that communication 670 is not fraudulent and may be used for conducting a financial transaction.
- Such CE feature information may be generated by commercial entity subsystem 400 , may be encrypted on secure element 145 (e.g., at step 612 and/or step 613 ) and provided to merchant subsystem 200 (e.g., as a portion of communication 670 at step 620 ), and such CE feature information may also be provided to merchant subsystem 200 directly from commercial entity subsystem 400 (e.g., as communication 671 at step 621 ), such that both instances of such CE feature information may be utilized by merchant subsystem 200 and/or by any remaining step of process 600 as a layer of security to the process.
- Process 600 may ensure that system 1 may leverage security keys accessible to a security element of device 100 so as to securely communicate credential data to merchant subsystem 200 for use by financial institution subsystem 350 while enabling certain keys to be properly managed by commercial entity subsystem 400 .
- secure element 145 of device 100 e.g., NFC component 120
- access information e.g., 155 a , 155 b , 156 k , 151 k , and/or 158 k
- commercial entity subsystem 400 may contain access information (e.g., 155 a , 155 b , 156 k , 151 k , and/or 158 k ) and merchant key 157
- merchant entity 200 may contain merchant key 157
- financial institution subsystem 350 may contain credential key 155 a ′.
- device 100 and commercial entity subsystem 400 may each contain or have access to access information (e.g., 155 a , 155 b , 156 k , 151 k , and/or 158 k ), device 100 may securely share encrypted credential data with commercial entity subsystem 400 (e.g., as data 664 at step 614 ).
- commercial entity subsystem 400 and merchant subsystem 200 may each contain or have access to merchant key 157
- commercial entity subsystem 400 may securely share encrypted credential data with merchant subsystem 200 (e.g., as data 671 at step 621 or via device 100 as data 670 at step 620 ).
- merchant subsystem 200 via acquiring bank subsystem 300 , may share this encrypted credential data with financial institution subsystem 350 that may finally decrypt the encrypted credential data with credential key 155 a ′.
- credential data of the secure element of device 100 e.g., SE credential data 661 of applet 153 a of SSD 154 a
- non-secure element of device 100 e.g., processor 102 and/or communications component 106
- credential key 155 a ′ be made available to such a non-secure element of device 100 .
- Credential key 155 a ′ may be managed by financial institution subsystem 350 , while certain access information (e.g., 155 a , 155 b , 156 k , 151 k , and/or 158 k ) may be managed by or otherwise accessible to commercial entity subsystem 400 , while merchant key 157 may be managed by commercial entity subsystem 400 and/or merchant subsystem 200 , such that each of these keys may be maintained and/or updated and/or deleted as needed to maintain their effectiveness. Therefore, merchant key 157 may never be stored on or otherwise accessible to device 100 . For example, merchant key 157 may not even be stored on a secure element of device 100 .
- certain access information e.g., 155 a , 155 b , 156 k , 151 k , and/or 158 k
- merchant key 157 may be managed by commercial entity subsystem 400 and/or merchant subsystem 200 , such that each of these keys may be maintained and/or updated and/or deleted as needed to maintain their
- Merchant key 157 can be revocable or may expire after a certain amount of time, which may require merchant subsystem 200 and commercial entity subsystem 350 to communicate every so often to manage and/or update merchant key 157 . This may enable commercial entity subsystem 400 to dictate which merchant subsystems 200 may be able to conduct online transactions using secure credentials of device 100 . Moreover, certain access information (e.g., 155 a , 155 b , 156 k , 151 k , and/or 158 k ) may never be stored on or otherwise accessible to merchant subsystem 200 .
- certain access information e.g., 155 a , 155 b , 156 k , 151 k , and/or 158 k .
- certain access information can be revocable or may expire after a certain amount of time, which may require device 100 and commercial entity subsystem 400 to communicate every so often to manage and/or update such access information.
- This may enable commercial entity subsystem 400 to dictate which devices 100 may be able to conduct online transactions using secure credentials of device 100 with a merchant subsystem 200 via commercial entity subsystem 400 .
- process 600 may enable at least one credential provisioned on a secure element of device 100 to be securely used for an online payment transaction with merchant subsystem 200 .
- Process 600 may be configured to provide a virtualized tunnel between the secure element of device 100 and merchant subsystem 200 that may transport a highly secure, EMV (“Europay, MasterCard, Visa”) standard-level (e.g., “Chip and PIN”) data set of credential data for use in a financial transaction.
- EMV Europay, MasterCard, Visa
- Chip and PIN standard-level
- process 600 may require that any credential data transmitted out of the secure element (e.g., SE credential data 661 of applet 153 a ) be encrypted with a credential key 155 a ′ that may only be known by the secure element and financial institution subsystem 350 (e.g., as encrypted SE credential data 662 at step 612 ), and, in some embodiments, then encrypted with access information (e.g., 155 a , 155 b , 156 k , 151 k , and/or 158 k ) that may only be known by secure element 145 and commercial entity subsystem 400 (e.g., as encrypted commercial entity credential data 663 at step 613 ).
- any credential data transmitted out of the secure element e.g., SE credential data 661 of applet 153 a
- a credential key 155 a ′ may only be known by the secure element and financial institution subsystem 350 (e.g., as encrypted SE credential data 662 at step 612 )
- Commercial entity subsystem 400 may then leverage this data 663 (e.g., as part of received commercial entity transaction data 664 ) and its knowledge of such access information (e.g., 155 a , 155 b , 156 k , 151 k , and/or 158 k ) and merchant key 157 to decrypt/re-encrypt (e.g., at steps 616 / 617 ) the credential data transmitted by device 100 for later use by merchant subsystem 200 .
- this data 663 e.g., as part of received commercial entity transaction data 664
- its knowledge of such access information e.g., 155 a , 155 b , 156 k , 151 k , and/or 158 k
- decrypt/re-encrypt e.g., at steps 616 / 617
- Commercial entity subsystem 400 may be privy not only to certain access information (e.g., 155 a , 155 b , 156 k , 151 k , and/or 158 k ) shared by secure element 145 of device 100 but also to merchant key 157 shared by merchant subsystem 200 .
- certain access information e.g., 155 a , 155 b , 156 k , 151 k , and/or 158 k
- commercial entity subsystem 400 may be in a unique position to manage any online transactions between the secure element of device 100 and merchant subsystem 200 , while at the same time not being privy to the credential data being used (e.g., not being privy to SE credential data 661 of applet 153 a that may be encrypted as encrypted SE credential data 662 at step 612 by credential key 155 a ′, for example, because commercial entity subsystem 400 may not have access to credential key 155 a ′).
- Commercial entity subsystem 400 may be configured to provide a validation check after receiving commercial entity transaction data 664 but before providing merchant transaction data 668 (e.g., at steps 616 - 618 / 621 ). For example, commercial entity subsystem 400 may determine that received commercial entity transaction data 664 identifies a merchant whose merchant key 157 has expired or has otherwise been terminated or not recognized (e.g., by table 430 ).
- commercial entity subsystem 400 may remove or otherwise disable its merchant key 157 from table 430 , such that, when a merchant associated with that key 157 is later identified by commercial entity subsystem 400 from a received commercial entity transaction data 664 provided by an electronic device 100 , commercial entity subsystem 400 may not provide any associated merchant transaction data 668 / 671 , thereby preventing the desired financial transaction.
- a merchant identified in commercial entity transaction data 664 received from an electronic device 100 may never have had a merchant key 157 associated with table 430 , such that commercial entity subsystem 400 may realize that commercial entity transaction data 664 may be an attempt to conduct a financial transaction with a merchant that is not recognized by commercial entity subsystem 400 and, thus, commercial entity subsystem 400 may prevent the transaction from being carried out.
- process 600 is able to be completed, not only may commercial entity subsystem 400 be satisfied that the financial transaction is between a known device 100 (e.g., due to shared access information (e.g., 155 a , 155 b , 156 k , 151 k , and/or 158 k )) and a known merchant subsystem 200 (e.g., due to a known merchant key 157 ), but merchant subsystem 200 may also be satisfied that the financial transaction is being conducted with a trusted device 100 (e.g., due to the received communication data 670 / 671 being encrypted with a merchant key 157 from a trusted commercial entity subsystem 400 ).
- a trusted device 100 e.g., due to the received communication data 670 / 671 being encrypted with a merchant key 157 from a trusted commercial entity subsystem 400 .
- steps shown in process 600 of FIG. 6 are merely illustrative and that existing steps may be modified or omitted, additional steps may be added, and the order of certain steps may be altered.
- some shared keys may be public keys while other shared keys may be private or secret keys (e.g., a mathematically linked key pair that includes a public key and a private key).
- a public key of a key pair may be used to encrypt data while a private key of that key pair may be used to decrypt the encrypted data.
- access key 155 a of SSD 154 a and/or access key 155 b of SSD 154 b which may be stored in secure element 145 of device 100 , may be a public key while access key 155 a and/or access key 155 b available at commercial entity subsystem 400 may be an associated private key or vice versa.
- ISD key 156 k of ISD 152 that may be stored in a secure element of device 100 may be a public key while ISD key 156 k available at commercial entity subsystem 400 may be an associated private key or vice versa.
- CRS 151 k that may be stored in a secure element of device 100 may be a public key while CRS 151 k available at commercial entity subsystem 400 may be an associated private key or vice versa.
- CASD 158 k that may be stored in a secure element of device 100 may be public while CASD 158 k available at commercial entity subsystem 400 may be private or vice versa.
- merchant key 157 of table 430 or elsewhere at commercial entity subsystem 400 may be a public key while merchant key 157 available at merchant subsystem 200 may be an associated private key or vice versa.
- certain data may be signed by a component transmitting that data.
- commercial entity transaction data 664 may be signed by device 100 before being transmitted to commercial entity subsystem 400 at step 614 or encrypted commercial entity credential data 663 may be signed by the secure element at step 613 (e.g., by CASD 158 k ) before being transmitted as at least a portion of transaction data 664 at step 614 .
- Such a signature by device 100 may enable commercial entity subsystem 400 to more confidently determine that data 664 was generated by a trusted device 100 .
- data 668 may be signed by commercial entity subsystem 400 before being transmitted to device 100 at step 618 and/or before being transmitted to merchant subsystem 200 at step 621 .
- Such a signature by commercial entity subsystem 400 may enable device 100 and/or merchant subsystem 200 to more confidently determine that data 668 / 670 / 671 was generated by a trusted commercial entity subsystem 400 .
- device 100 need not be configured to handle NFC communications or any other contactless proximity-based communications with another device (e.g., an NFC communication with a merchant terminal of merchant subsystem 200 ).
- device 100 may include a secure element for storing credential information that may be used for online transactions, as described with respect to process 600 , while not being leveraged for NFC transactions.
- device 100 may include a secure element (e.g., with controller module 140 and/or memory module 150 , without device module 130 ).
- FIG. 7 is a flowchart of an illustrative process 700 for securely conducting online payments that may include specific implementations of certain portions of process 600 of FIG. 6 .
- Process 700 is shown being implemented by electronic device 100 , merchant subsystem 200 , and commercial entity subsystem 400 . However, it is to be understood that process 700 may be implemented using any other suitable components or subsystems.
- Process 700 may provide a seamless user experience for securely conducting online payments with merchant subsystem 200 on device 100 .
- Process 700 may begin at step 702 , where potential transaction data 752 may be generated by merchant application 113 of electronic device 100 and/or received by merchant application 113 of electronic device 100 from merchant subsystem 200 .
- potential transaction data 752 may be similar to potential transaction data 660 described above with respect to FIG.
- any suitable data indicative of characteristics of a potential financial transaction to occur between a user of device 100 and a merchant of merchant subsystem 200 including, but not limited to, identification of device 100 , identification of the merchant, identification of the particular merchant resource being used (e.g., the particular merchant application 113 or website being accessed by device 100 ), identification of the particular product or service to be purchased or rented or otherwise paid for, identification of the price to be paid, identification of the currency to be used during the transaction, identification of the payment networks supported by the merchant, and/or any other suitable information.
- Potential transaction data 752 may define an online resource's request to produce a payment token for the purchase of products and/or services and may encapsulate any suitable information about the potential transaction including, for example, information about the merchant's payment processing capabilities, an amount to pay, and the currency code. Potential transaction data 752 may also include shipping information (e.g., default shipping information) that may be initially provided by the online resource as the shipping address to be used for the transaction, where such default shipping information may be determined based on stored user settings for the merchant application 113 (e.g., a user profile of the online resource) or based on any other suitable data available to the online resource.
- shipping information e.g., default shipping information
- process 700 may include at least a portion of such potential transaction data 752 being provided from the online resource (e.g., merchant application 113 ) as device transaction data 754 to a device application 103 (e.g., an operating system application and/or a software developer kit (“SDK”)) that may be available to processor 102 of device 100 and that may be configured to communicate with the merchant online resource via any suitable techniques (e.g., via one or more application programming interfaces (“APIs”)).
- Device application 103 may be configured to access information available to device 100 (e.g., from memory 104 and/or secure element 145 ).
- Device transaction data 754 may include any suitable data that may be shared between the merchant online resource (e.g., merchant application 113 ) and other portions of device 100 (e.g., via device application 103 ).
- device transaction data 754 may include a request for any additional information that may not be included in potential transaction data 752 but that may be used by merchant application 113 for providing a desired user interface (e.g., screen 190 a of FIG. 14A ). That is, device transaction data 754 may include a request to confirm that secure element 145 includes at least one commerce credential that is associated with a payment network used by merchant subsystem 200 .
- device transaction data 754 may include a request for default shipping information to be used as initial shipping information 1407 d of screen 190 a of FIG. 14A if such default shipping information is not known by merchant application 113 .
- process 700 may include device application 103 generating and transmitting response data 756 to merchant application 113 in response to device transaction data 754 received at step 704 .
- device transaction data 754 includes a request to confirm whether electronic device 100 is configured to use a credential associated with a financial institution supported by merchant subsystem 200 (e.g., a specific payment network 360 , such as MasterCard or Visa)
- device application 103 may be configured to poll secure element 145 or another portion of device 100 (e.g., a “wallet” or “Passbook” application of device 100 that may include information indicative of the credentials enabled on secure element 145 , such as may be illustrated by the specific icon 182 labeled with a “Passbook” textual indicator 181 (i.e., specific icon 185 ) of FIG.
- device application 103 may generate and transmit response data 756 that may include either an indication that there is a match or that there is no match, in which case a purchase prompt may or may not be included in a UI screen provided to a user.
- device application 103 may generate and transmit response data 756 that may include an indication that there is a match, in which case a purchase prompt may be included in a UI screen provided to a user (e.g., purchase prompt 1411 of screen 190 a of FIG. 14A ).
- merchant application 113 may be configured to generate and provide initial UI data 762 at step 712 of process 700 on an I/O interface of device 100 (e.g., I/O interface 114 a ).
- UI data 762 may be generated by merchant application 113 alone or in combination with device application 103 at step 712 in order to present UI screen 190 a of FIG. 14A with a purchase prompt 1411 that may be indicative of the fact that a credential of secure element 145 matches a financial entity supported by merchant subsystem 200 (e.g., based on response data 756 ).
- UI screen 190 a may be indicative of information that may be included in potential transaction data 752 and/or response data 756 (e.g., merchant information 1407 a , product information 1407 b , price information 1407 c , and/or initial shipping information 1407 d ).
- device transaction data 754 includes a request for default or initial shipping information to be used based on other information of device transaction data 754 (e.g., if merchant application 113 has no default or initial shipping information available)
- device application 103 may be configured to poll another portion of device 100 (e.g., an “address book” application of device 100 that may include shipping address information indicative of a user of device 100 (e.g., a “MeCard” or “VCard”), such as may be illustrated by the specific icon 182 labeled with a “Phone” textual indicator 181 (i.e., specific icon 184 ) of FIG.
- an “address book” application of device 100 may include shipping address information indicative of a user of device 100 (e.g., a “MeCard” or “VCard”), such as may be illustrated by the specific icon 182 labeled with a “Phone” textual indicator 181 (i.e., specific icon 184 ) of FIG.
- device application 103 may generate and transmit response data 756 that may include either a specific default address or an indication that no such address was found, in which case default shipping address information may or may not be included in a UI screen provided to a user.
- response data 756 may include an initial or revised shipping address compared to what may or may not have been indicated by device transaction data 754
- process 700 may also include merchant application 113 generating and transmitting an update request 758 at step 708 to merchant subsystem 200 in order to potentially update certain transaction data (e.g., the price that may be partially based on shipping costs).
- update request 758 may include at least a portion of the initial or revised shipping address of response data 756 (e.g., just a ZIP code or other identifying feature), and, in response to receiving such an update request 758 , merchant subsystem 200 may generate and transmit updated transaction data 760 at step 710 to merchant application 113 , where such updated transaction data 760 may include a different price for the potential transaction than may have been included in potential transaction data 752 of step 702 (e.g., based on the initial or revised shipping address indicated by update request 758 ).
- merchant application 113 may be configured to generate and provide initial UI data 762 at step 712 of process 700 on an I/O interface of device 100 (e.g., I/O interface 114 a ).
- UI data 762 may be generated by merchant application 113 alone or in combination with device application 103 at step 712 in order to present UI screen 190 a of FIG. 14A with default shipping information 1407 d for address “D” as well as appropriate price information 1407 c for price “C” that may take into account the shipping cost requirements for default address D.
- steps 702 - 712 may occur transparent to the user. That is, once the user provides certain input that may cause potential transaction data 752 to be generated and/or received by an online resource (e.g., merchant application 113 ), steps 704 - 712 may occur without any further user interaction and may seem instantaneous to a user, whereby process 700 may appear to automatically auto-fill in default shipping information 1407 d , which may or may not be populated by device application 103 based on information local to device 100 independent of merchant application 113 , and/or that may include appropriate price information 1407 c that may be commensurate with such default shipping information 1407 d.
- default shipping information 1407 d which may or may not be populated by device application 103 based on information local to device 100 independent of merchant application 113 , and/or that may include appropriate price information 1407 c that may be commensurate with such default shipping information 1407 d.
- a user may interact with device 100 (e.g., with I/O interface 114 a ) in one of many possible ways (e.g., with a user input 764 at step 714 of process 700 as I/O input data 115 i of FIG. 3 ).
- a user may choose prompt 1409 of FIG. 14A to choose an alternate shipping address (e.g., a shipping address different than the default shipping address D described above.
- FIG. 14B may be generated and provided (e.g., by following steps similar to one or more of steps 702 - 714 ), in which at least one new shipping option may be provided to the user as prompt 1410 , where such an option may be provided by device application 103 and/or may be entered manually by a user.
- screen 190 c of FIG. 14C may be generated and provided (e.g., by following steps similar to one or more of steps 702 - 714 ), in which at least a selected new shipping option from prompt 1410 of FIG. 14B may be shown (e.g., shipping option “E” of shipping information 1407 d of FIG.
- updated price information 1407 c may also be shown (e.g., updated price “C*” of price information 1407 c of FIG. 14C ), where price C* of FIG. 14C may differ from price C of FIGS. 14A and 14B based on updated shipping costs that may be due to the change from shipping address D of FIGS. 14A and 14B to the new shipping address E, and where updated price C* may be determined seamlessly and/or transparently to the user (e.g., as described above with respect to steps 704 - 712 ).
- screen 190 a of FIG. 14A and/or screen 190 c of FIG. 14C may prompt a user to interact with device 100 in one or more ways to make a purchase (e.g., purchase prompt 1411 ).
- purchase prompt 1411 e.g., button 190 c of FIG.
- a credential selection prompt 1413 may be provided that may enable a user to select one of potentially multiple credentials that may be provisioned on device 100 (e.g., the credential of credential SSD 154 a ), where such credential option(s) may be provided by device application 103 (e.g., as at least a portion of response data 756 ).
- screen 190 d of FIG. 14D may be generated and provided (e.g., by following steps similar to one or more of steps 702 - 714 ), in which at least a selected credential from prompt 1413 of FIG.
- FIG. 14C may be shown (e.g., credential option “X” of credential information 1407 e of FIG. 14D ).
- Screen 190 d of FIG. 14D may prompt a user to interact with device 100 in one or more ways to authenticate the user and its intent to utilize the selected credential in an online transaction. This may include prompting the user (e.g., with an authentication prompt 1415 of FIG.
- user input 764 of step 714 of process 700 may be substantially similar to authentication/intent described above with respect to step 611 of process 600 of FIG. 6 .
- Access SSD 154 b may leverage applet 153 b to determine whether such authentication has occurred before allowing other SSDs 154 (e.g., credential SSD 154 a ) to be used for enabling its credential information in a commerce credential data communication.
- applet 153 b of access SSD 154 b may be configured to determine intent and local authentication of a user of device 100 (e.g., via one or more input components 110 , such as a biometric input component 110 i of FIG.
- SSD 4 may be configured to enable another particular SSD for conducting a payment transaction (e.g., with a credential of credential SSD 154 a ).
- SSD 154 b may communicate with SSD 154 a via a shareable interface object (“SIO”) or any other suitable techniques.
- SIO shareable interface object
- device 100 may be configured to provide screen 190 e of FIG. 14E that may prompt a user (e.g., with a payment prompt 1417 ) to interact with device 100 in one or more ways to finally initiate payment to merchant subsystem 200 according to potential transaction data 752 / 762 using the selected and authenticated credential.
- process 700 may proceed to step 716 , in which merchant application 113 may generate and share updated device transaction data 766 with device application 103 .
- Updated device transaction data 766 may include any suitable data as described above with respect to transaction data 752 and/or transaction data 760 but may be updated based on any/all transaction selections made by a user (e.g., as shown by screen 190 d or screen 190 e ).
- device application 103 may use such transaction data 766 to generate and transmit a credential request 768 to secure element 145 .
- device application 103 may be configured to communicate with secure element 145 via a wired interface (e.g., via an NFC controller). In some embodiments, device application 103 may be configured to communicate directly with access SSD 154 b and/or ISD 152 , thereby authenticating a request to dispense payment credentials.
- Credential request 768 may not only include an authenticated request to utilize a selected credential in an online transaction with merchant application 113 , but credential request 768 may include at least some information particular to merchant application 113 and/or to the particular transaction as may be defined by transaction data 766 .
- credential request 768 may include a unique merchant identifier for merchant application 113 and/or a merchant responsible for that online resource, where such a unique merchant identifier may be realized from transaction data 766 .
- secure element 145 may be configured at step 720 to generate encrypted CE credential data 770 , which may be similar to encrypted CE credential data 663 of process 600 .
- encrypted CE credential data 770 may be generated by secure element 145 at step 720 by encrypting SE credential data (e.g., SE credential data 661 of SSD 154 a ) with credential key 155 a ′ as encrypted SE credential data (e.g., encrypted SE credential data 662 ) and then encrypting not only such encrypted SE credential data but also an SE merchant identifier 719 (e.g., a merchant identifier generated by secure element 145 based on information from credential request 768 ) with any suitable access information (e.g., 155 a , 155 b , 156 k , 151 k , and/or 158 k ) as encrypted CE credential data 770 .
- SE credential data e.g., SE credential data 661 of SSD 154 a
- credential key 155 a ′ e.g., encrypted SE credential data 662
- SE merchant identifier 719 e.g., a merchant
- Such an SE merchant identifier 719 that may be encrypted along with encrypted SE credential data as encrypted CE credential data 770 may also be generated at step 720 using unique merchant identifier information from credential request 768 .
- secure element 145 may be configured to use a cryptographic hash function on the unique merchant identifier from credential request 768 in order to generate SE merchant identifier 719 that may then be processed (e.g., encrypted) by secure element 145 .
- secure element 145 may derive SE merchant identifier 719 from the unique merchant identifier of credential request 768 (e.g., from a merchant identifier query string), for example, using a key derivation function (e.g., the X9.63 key derivation function, which may derive at least one 32-byte field array SE merchant identifier 719 using a secure hash algorithm (e.g., a SHA-256 function)).
- a key derivation function e.g., the X9.63 key derivation function, which may derive at least one 32-byte field array SE merchant identifier 719 using a secure hash algorithm (e.g., a SHA-256 function)
- This may allow SE merchant identifier 719 to be appropriately encrypted along with encrypted SE credential data as encrypted CE credential data 770 at step 720 by secure element 145 .
- secure element 145 By cryptographically binding a unique merchant identifier with encrypted credential data using secure element 145 , that version of the unique merchant identifier may not be tampered with by other portions of device 100 off of secure element 145 (e.g., by device application 103 ) that may not have access to the access information used (e.g., 155 a , 155 b , 156 k , 151 k , and/or 158 k ). Then, at step 722 , secure element 145 may be configured to share such encrypted CE credential data 770 with device application 103 .
- device application 103 may be configured to generate and transmit commercial entity transaction data 774 to commercial entity subsystem 400 , where commercial entity transaction data 774 may include encrypted CE credential data 770 and any other suitable information.
- CE transaction data 774 may be similar to CE transaction data 664 of process 600 .
- CE transaction data 774 may include not only encrypted CE credential data 770 but also an unencrypted merchant identifier (e.g., a unique merchant identifier from transaction data 766 that may have also been provided to secure element 145 at step 718 as a portion of credential request 768 ).
- CE transaction data 774 include encrypted CE credential data 770 , which itself may include a hashed and/or encrypted version of a unique merchant identifier (e.g., from device transaction data 766 ), but CE transaction data 774 may also include a non-hashed and unencrypted version of that unique merchant identifier (e.g., from device transaction data 766 ).
- other information from the device transaction data 766 such as an identification of device 100 (e.g., an “SEID”), a transaction amount, a currency type, and/or any other suitable information, may also be included as part of CE transaction data 774 .
- commercial entity subsystem 400 may be configured to generate encrypted merchant credential data 776 based on received CE transaction data 774 .
- encrypted merchant credential data 776 may be similar to encrypted merchant credential data 667 of process 600 .
- commercial entity subsystem 400 may access the unencrypted unique merchant identifier from a first portion of CE transaction data 774 and also decrypt a second portion of CE transaction data 774 (e.g., encrypted SE credential data 770 ) with certain access information (e.g., 155 a , 155 b , 156 k , 151 k , and/or 158 k ) to access the hashed version of the unique merchant identifier (e.g., SE merchant identifier 719 ) as well as the encrypted SE credential data.
- a second portion of CE transaction data 774 e.g., encrypted SE credential data 770
- certain access information e.g., 155 a , 155 b , 156 k , 151 k , and/or 158 k
- Commercial entity subsystem 400 may use the unencrypted unique merchant identifier and/or the decrypted hashed version of the unique merchant identifier (e.g., SE merchant identifier 719 ) to identify the appropriate merchant key 157 accessible to commercial entity subsystem 400 that may then be used for re-encrypting the encrypted SE credential data with that identified merchant key 157 as encrypted merchant credential data 776 .
- Commercial entity subsystem 400 may or may not re-encrypt the decrypted hashed version of the unique merchant identifier (e.g., SE merchant identifier 719 ) along with the encrypted SE credential data using the identified merchant key 157 as encrypted merchant credential data 776 at step 726 .
- commercial entity subsystem 400 may also be configured to compare the unencrypted unique merchant identifier with the decrypted hashed version of the unique merchant identifier (e.g., SE merchant identifier 719 ), for example, by using a similar key derivation function on the unencrypted unique merchant identifier as used by secure element 145 (e.g., the X9.63 key derivation function, which may derive at least one 32-byte field array using a secure hash algorithm (e.g., a SHA-256 function)) and comparing it to the decrypted hashed version of the unique merchant identifier (e.g., SE merchant identifier 719 ).
- a similar key derivation function on the unencrypted unique merchant identifier as used by secure element 145
- secure element 145 e.g., the X9.63 key derivation function, which may derive at least one 32-byte field array using a secure hash algorithm (e.g., a SHA
- process 700 may only proceed if the comparison is successful or valid (e.g., if the two unique merchant identifiers are a match). Otherwise, an error may be generated for further investigation. In some embodiments, such a comparison may only be done after the unencrypted unique merchant identifier has been used to identify a valid merchant key 157 (e.g., so as not to waste time doing the comparison if the unencrypted unique merchant identifier will not reveal a valid merchant key 157 (e.g., through use of table 430 )).
- CE transaction data 774 may also be used by commercial entity subsystem 400 (e.g., at step 726 ) for various reasons, such as velocity checking, purchase fraud checking and alerting, and the like.
- commercial entity subsystem 400 may generate and transmit merchant transaction data 778 to device application 103 .
- merchant transaction data 778 may be similar to merchant transaction data 668 of process 600 .
- Merchant transaction data 778 may include encrypted merchant credential data 776 and any other suitable information.
- merchant transaction data 778 may include a timestamp generated by commercial entity subsystem 400 indicating the time that such encrypted merchant credential data 776 was generated by commercial entity subsystem 400 .
- Such a timestamp may be later used by another entity of system 1 (e.g., merchant subsystem 200 ) to determine whether the data it may receive during process 700 (e.g., encrypted merchant credential data 776 as at least a portion of communication 782 described below) has been generated recently enough to reliably ensure that such received data was not fabricated maliciously.
- device application 103 may be configured to generate and share updated merchant transaction data 780 with merchant application 113 , where updated merchant transaction data 780 may include merchant transaction data 778 and any other suitable information, such as the full shipping information for the transaction (e.g., shipping information 1407 d of screens 190 d and 190 e ).
- merchant application 113 may be configured to generate and transmit online-based communication 782 to merchant subsystem 200 , where online-based communication 782 may include at least a portion of updated merchant transaction data 780 (e.g., at least merchant transaction data 778 ) and any other suitable information, such as information local to merchant application 113 .
- online-based communication 782 may be similar to online-based communication 670 of process 600 .
- a time stamp that may have been generated and included in data 778 by commercial entity subsystem 400 at step 728 may be received and analyzed by merchant subsystem 200 as a portion of data 782 at step 732 .
- Such analysis may be used by merchant subsystem 200 to determine whether data 782 may be trustworthy or whether such a time stamp is missing or too old compared to receipt of data 782 , which may thereby indicate potential fraud. If such time stamp analysis is acceptable, merchant subsystem 200 may leverage data 782 to continue conducting a financial transaction (e.g., as described above with respect to steps 623 - 630 of process 600 ). As mentioned above, after a user of device 100 may provide intent and authentication to utilize a specific credential for carrying out a financial transaction based on potential transaction data 752 , 760 , and/or 766 at step 714 , the remaining steps of process 700 may occur transparent to the user.
- steps 716 - 732 may occur without any further user interaction and may seem instantaneous to a user, whereby process 700 appears to a user as if, after step 714 , credential data is automatically and instantaneously sent to merchant subsystem 200 .
- steps shown in process 700 of FIG. 7 are merely illustrative and that existing steps may be modified or omitted, additional steps may be added, and the order of certain steps may be altered.
- FIG. 8 is a flowchart of an illustrative process 800 for securely conducting online payments.
- process 800 may include receiving, with a commercial entity, first data from an electronic device, where the first data includes credential information and merchant information indicative of a merchant.
- commercial entity subsystem 400 may receive data 664 that may include credential data (e.g., encrypted SE credential data 662 associated with credential SSD 154 a of device 100 ) and information indicative of a merchant (e.g., based on potential transaction data 660 ).
- process 800 may include decrypting, with the commercial entity, the first data using an access key.
- commercial entity subsystem 400 may decrypt data 664 using access information (e.g., 155 a , 155 b , 156 k , 151 k , and/or 158 k ).
- process 800 may include identifying, with the commercial entity, a merchant key based on the merchant information from the first data.
- commercial entity subsystem 400 may identify a merchant key 157 based on the merchant information from data 664 (e.g., using table 430 ).
- process 800 may include encrypting, with the commercial entity, the credential information using the identified merchant key.
- commercial entity subsystem 400 may encrypt the credential information from data 664 (e.g., encrypted SE credential data 662 from data 664 ) using merchant key 157 . Then, at step 810 , process 800 may include transmitting, with the commercial entity, second data to at least one of the merchant and the electronic device, where the second data may include the credential information encrypted with the identified merchant key. For example, commercial entity subsystem 400 may transmit data 668 to device 100 and/or data 671 to merchant subsystem 200 .
- data 664 e.g., encrypted SE credential data 662 from data 664
- process 800 may include transmitting, with the commercial entity, second data to at least one of the merchant and the electronic device, where the second data may include the credential information encrypted with the identified merchant key.
- commercial entity subsystem 400 may transmit data 668 to device 100 and/or data 671 to merchant subsystem 200 .
- steps shown in process 800 of FIG. 8 are merely illustrative and that existing steps may be modified or omitted, additional steps may be added, and the order of certain steps may be altered.
- FIG. 9 is a flowchart of an illustrative process 900 for securely conducting online payments.
- process 900 may include generating, with an electronic device, first data by encrypting credential data with a credential key.
- a secure element of device 100 may generate first data (e.g., encrypted SE credential data 662 ) by encrypting credential data (e.g., SE credential data 661 of applet 153 a of credential SSD 154 a ) with credential key 155 a ′.
- process 900 may include generating, with the electronic device, second data by encrypting the first data with an access key.
- device 100 may generate second data (e.g., encrypted commercial entity credential data 663 ) by encrypting the first data (e.g., encrypted SE credential data 662 ) with access information (e.g., 155 a , 155 b , 156 k , 151 k , and/or 158 k ).
- process 900 may include accessing, with the electronic device, an online resource of a merchant.
- device 100 may access a third party application (e.g., application 113 ) or a website resource of a merchant of merchant subsystem 200 .
- process 900 may include identifying, with the electronic device, merchant information indicative of the merchant from the accessed online resource.
- process 900 may include transmitting, with the electronic device, to a commercial entity the generated second data and the identified merchant information.
- device 100 may transmit to commercial entity subsystem 400 the generated second data (e.g., encrypted commercial entity credential data 663 ) and the identified merchant data as commercial entity transaction data 664 .
- steps shown in process 900 of FIG. 9 are merely illustrative and that existing steps may be modified or omitted, additional steps may be added, and the order of certain steps may be altered.
- FIG. 10 is a flowchart of an illustrative process 1000 for securely conducting online payments.
- process 1000 includes generating, with an electronic device, first data that includes credential data.
- device 100 may generate first data by encrypting credential data (e.g., SE credential data 661 of credential SSD 154 a ) with credential key 155 a ′.
- credential data e.g., SE credential data 661 of credential SSD 154 a
- process 1000 may include generating, with the electronic device, second data by encrypting the first data with an access key.
- device 100 may generate second data (e.g., encrypted commercial entity credential data 663 ) by encrypting the first data (e.g., SE credential data 661 and/or encrypted SE credential data 662 ) with access information (e.g., 155 a , 155 b , 156 k , 151 k , and/or 158 k ).
- process 1000 may include transmitting, with the electronic device, to a commercial entity the generated second data and merchant information.
- device 100 may transmit to commercial entity subsystem 400 the generated second data (e.g., encrypted commercial entity credential data 663 ) and merchant data (e.g., from transaction data 660 ) as commercial entity transaction data 664 .
- process 1000 may include receiving, with the electronic device, third data that includes the first data encrypted with a merchant key that is associated with the merchant information.
- electronic device 100 may receive merchant transaction data 668 that may include SE credential data 661 and/or encrypted SE credential data 662 encrypted with a merchant key 157 .
- process 1000 may include transmitting, with the electronic device, the received third data to a merchant that is associated with the merchant information, where the merchant key is not accessible to the electronic device.
- device 100 may transmit merchant transaction data 668 as at least a portion of online-based communication 670 on to merchant subsystem 200 , where device 100 may not have access to merchant key 157 .
- steps shown in process 1000 of FIG. 10 are merely illustrative and that existing steps may be modified or omitted, additional steps may be added, and the order of certain steps may be altered.
- FIG. 11 is a flowchart of an illustrative process 1100 for securely conducting online payments.
- process 1100 may include receiving, with an electronic device, first potential transaction data from an online resource of a merchant.
- device application 103 of device 100 may receive transaction data 754 from merchant application 113 at step 704 of process 700 .
- process 1100 may include automatically identifying, with the electronic device, additional information local to the electronic device based on the received first transaction data.
- device application 103 may identify response data 756 at step 706 of process 700 , such as default shipping address information from a contact card local to device 100 for a potential transaction in response to receiving transaction data 754 from a merchant application 113 .
- process 1100 may include providing, with the electronic device, the identified additional information and at least a portion of the received first potential transaction data to a user of the electronic device.
- device application 103 and/or merchant application 113 may provide screen 190 a of FIG. 14A to a user of device 100 where screen 190 a may include shipping information 1407 d from response data 756 and product information 1407 b from transaction data 752 / 754 .
- steps shown in process 1100 of FIG. 11 are merely illustrative and that existing steps may be modified or omitted, additional steps may be added, and the order of certain steps may be altered.
- FIG. 12 is a flowchart of an illustrative process 1200 for securely conducting online payments.
- process 1200 may include receiving, with an electronic device, transaction data from an online resource of a merchant.
- device application 103 of device 100 may receive transaction data 754 from merchant application 113 at step 704 of process 700 .
- process 1200 may include accessing, with the electronic device, first data that comprises credential data.
- credential data e.g., SE credential data 661 of credential SSD 154 a ).
- process 1200 may include generating, with the electronic device, second data by encrypting the first data and a merchant identifier of the received transaction data with an access key.
- secure element 145 may generate encrypted CE credential data 770 by encrypting SE credential data and an SE merchant ID 719 with access information (e.g., 155 a , 155 b , 156 k , 151 k , and/or 158 k ).
- steps shown in process 1200 of FIG. 12 are merely illustrative and that existing steps may be modified or omitted, additional steps may be added, and the order of certain steps may be altered.
- FIG. 13 is a flowchart of an illustrative process 1300 for securely conducting online payments.
- process 1300 may include receiving, with a commercial entity, first data and second data from an electronic device, wherein the first data may include credential information and a first merchant identifier encrypted by an access key, and wherein the second data may include a second merchant identifier.
- commercial entity transaction data 774 may include credential information and SE merchant identifier 719 as well as another form of a merchant identifier.
- process 1300 may include identifying, with the commercial entity, a merchant key based on at least one of the first merchant identifier and the second merchant identifier.
- commercial entity subsystem 400 may identify a merchant key 157 based on the merchant information from data 774 (e.g., using table 430 ) at step 726 of process 700 .
- steps shown in process 1300 of FIG. 13 are merely illustrative and that existing steps may be modified or omitted, additional steps may be added, and the order of certain steps may be altered.
- FIG. 1 Further Description of FIG. 1 , FIG. 1 A, FIG. 2 , FIG. 3 , and FIG. 4
- commercial entity subsystem 400 of FIG. 1A may be a secure platform system and may include a secure mobile platform (“SMP”) broker component, an SMP trusted services manager (“TSM”) component, an SMP crypto services component, an identity management system (“IDMS”) component, a fraud system component, a hardware security module (“HSM”) component, and/or a store component.
- SMP secure mobile platform
- TSM trusted services manager
- IDMS identity management system
- HSM hardware security module
- One, some, or all components of commercial entity subsystem 400 may be implemented using one or more processor components, which may be the same as or similar to processor component 102 of device 100 , one or more memory components, which may be the same as or similar to memory component 104 of device 100 , and/or one or more communications components, which may be the same as or similar to communications component 106 of device 100 .
- One, some, or all components of commercial entity subsystem 400 may be managed by, owned by, at least partially controlled by, and/or otherwise provided by a single commercial entity (e.g., Apple Inc.) that may be distinct and independent from financial institution subsystem 350 .
- the components of commercial entity subsystem 400 may interact with each other and collectively with both financial institution subsystem 350 and electronic device 100 for providing a new layer of security and/or for providing a more seamless user experience.
- An SMP broker component of commercial entity subsystem 400 may be configured to manage user authentication with a commercial entity user account. Such an SMP broker component may also be configured to manage the life cycle and provisioning of credentials on device 100 .
- An SMP broker component may be a primary end point that may control the user interface elements (e.g., elements of GUI 180 ) on device 100 .
- An operating system or other application of device 100 may be configured to call specific application programming interfaces (“APIs”) and an SMP broker component may be configured to process requests of those APIs and respond with data that may derive the user interface of device 100 and/or respond with application protocol data units (“APDUs”) that may communicate with secure element 145 of NFC component 120 (e.g., via a communication path 65 between commercial entity subsystem 400 and electronic device 100 ).
- APIs application programming interfaces
- APDUs application protocol data units
- Such APDUs may be received by commercial entity subsystem 400 from financial institution subsystem 350 via a trusted services manager (“TSM”) of system 1 (e.g., a TSM of a communication path 55 between commercial entity subsystem 400 and financial institution subsystem 350 ).
- TSM trusted services manager
- An SMP TSM component of commercial entity subsystem 400 may be configured to provide GlobalPlatform-based services that may be used to carry out operations on device 100 in concert with financial institution subsystem 350 .
- GlobalPlatform or any other suitable secure channel protocol, may enable such an SMP TSM component to properly communicate and/or provision sensitive account data between secure element 145 of device 100 and a TSM for secure data communication between commercial entity subsystem 400 and financial institution subsystem 350 .
- An SMP TSM component of commercial entity subsystem 400 may be configured to use an HSM component of commercial entity subsystem 400 to protect its keys and generate new keys.
- An SMP crypto services component of commercial entity subsystem 400 may be configured to provide key management and cryptography operations that may be required for user authentication and/or confidential data transmission between various components of system 1 .
- Such an SMP crypto services component may utilize an HSM component of commercial entity subsystem 400 for secure key storage and/or opaque cryptographic operations.
- a payment crypto service of an SMP crypto services component of commercial entity subsystem 400 may be configured to interact with an IDMS component of commercial entity subsystem 400 to retrieve on-file credit cards or other types of commerce credentials associated with user accounts of the commercial entity.
- Such a payment crypto service may be configured to be the only component of commercial entity subsystem 400 that may have clear text (i.e., non-hashed) information describing commerce credentials (e.g., credit card numbers) of its user accounts in memory.
- a commercial entity fraud system component of commercial entity subsystem 400 may be configured to run a commercial entity fraud check on a commerce credential based on data known to the commercial entity about the commerce credential and/or the user (e.g., based on data (e.g., commerce credential information) associated with a user account with the commercial entity and/or any other suitable data that may be under the control of the commercial entity and/or any other suitable data that may not be under the control of financial institution subsystem 350 ).
- Such a commercial entity fraud system component of commercial entity subsystem 400 may be configured to determine a commercial entity fraud score for the credential based on various factors or thresholds. Additionally or alternatively, commercial entity subsystem 400 may include a store component, which may be a provider of various services to users of device 100 (e.g., the iTunesTM Store for selling/renting media to be played by device 100 , the Apple App StoreTM for selling/renting applications for use on device 100 , the Apple iCloudTM Service for storing data from device 100 , the Apple Online Store for buying various Apple products online, etc.).
- a store component may be a provider of various services to users of device 100 (e.g., the iTunesTM Store for selling/renting media to be played by device 100 , the Apple App StoreTM for selling/renting applications for use on device 100 , the Apple iCloudTM Service for storing data from device 100 , the Apple Online Store for buying various Apple products online, etc.).
- such a store component of commercial entity subsystem 400 may be configured to manage and provide an application 113 to device 100 (e.g., via communications path 65 ), where application 113 may be any suitable application, such as a banking application, an e-mail application, a text messaging application, an internet application, or any other suitable application.
- application 113 may be any suitable application, such as a banking application, an e-mail application, a text messaging application, an internet application, or any other suitable application.
- Any suitable communication protocol or combination of communication protocols may be used by commercial entity subsystem 400 to communicate data amongst the various components of commercial entity subsystem 400 and/or to communicate data between commercial entity subsystem 400 and other components of system 1 (e.g., financial institution subsystem 350 via communications path 55 of FIG. 1A and/or electronic device 100 via communications path 65 of FIG. 1A ).
- a credential of a secure element of device 100 is appropriately enabled (e.g., commerce credential data associated with an enabled applet 153 a of credential SSD 154 a of NFC component 120 ) so as to be provided as a commerce credential data communication to merchant subsystem 200 (e.g., as a contactless proximity-based communication to a merchant terminal and/or as an online-based communication 670 to a merchant server 210 )
- acquiring bank subsystem 300 may utilize such a commerce credential data communication for completing a financial transaction with financial institution subsystem 350 .
- merchant subsystem 200 may receive an appropriate commerce credential data communication indicative of commerce credential data for the specific credential.
- Merchant server 210 and/or a merchant terminal may be provided by any suitable merchant or merchant agent of merchant subsystem 200 that may provide a product or service to a user of device 100 in response to device 100 providing payment credentials via such a commerce credential data communication.
- merchant subsystem 200 may be configured to generate and transmit data 673 to acquiring bank subsystem 300 (e.g., via a communication path 25 between merchant subsystem 200 and acquiring bank subsystem 300 ), where data 673 may include payment information and an authorization request that may be indicative of the user's commerce credential and the merchant's purchase price for the product or service.
- data 673 may include payment information and an authorization request that may be indicative of the user's commerce credential and the merchant's purchase price for the product or service.
- acquiring bank subsystem 300 may be a banking partner of the merchant associated with merchant subsystem 200 , and acquiring bank subsystem 300 may be configured to work with financial institution subsystem 350 to approve and settle credential transactions attempted by electronic device 100 via a commerce credential data communication (e.g., via a contactless proximity-based communication and/or via an online-based communication 670 ) with merchant subsystem 200 .
- Acquiring bank subsystem 300 may then forward the authorization request from data 673 to financial institution subsystem 350 as data 674 (e.g., via a communication path 35 between acquiring bank subsystem 300 and financial institution subsystem 350 ).
- Payment network subsystem 360 and issuing bank subsystem 370 may be a single entity or separate entities.
- American Express may be both a payment network subsystem 360 and an issuing bank subsystem 370 .
- Visa and MasterCard may be payment networks 360 , and may work in cooperation with issuing banks 370 , such as Chase, Wells Fargo, Bank of America, and the like.
- Financial institution subsystem 350 may also include one or more acquiring banks, such as acquiring bank subsystem 300 .
- acquiring bank subsystem 300 may be the same entity as issuing bank subsystem 370 .
- One, some, or all components of acquiring bank subsystem 300 may be implemented using one or more processor components, which may be the same as or similar to processor component 102 of device 100 , one or more memory components, which may be the same as or similar to memory component 104 of device 100 , and/or one or more communications components, which may be the same as or similar to communications component 106 of device 100 .
- One, some, or all components of payment network subsystem 360 may be implemented using one or more processor components, which may be the same as or similar to processor component 102 of device 100 , one or more memory components, which may be the same as or similar to memory component 104 of device 100 , and/or one or more communications components, which may be the same as or similar to communications component 106 of device 100 .
- One, some, or all components of issuing bank subsystem 370 may be implemented using one or more processor components, which may be the same as or similar to processor component 102 of device 100 , one or more memory components, which may be the same as or similar to memory component 104 of device 100 , and/or one or more communications components, which may be the same as or similar to communications component 106 of device 100 .
- payment network subsystem 360 and issuing bank subsystem 370 may receive the authorization request of data 674 from acquiring bank subsystem 300 and may then forward the request to issuing bank subsystem 370 as data 405 (e.g., via a communication path 45 between payment network subsystem 360 and issuing bank subsystem 370 ).
- acquiring bank subsystem 300 may submit the authorization request of data 674 directly to issuing bank subsystem 370 .
- payment network subsystem 360 may respond to acquiring bank subsystem 300 on behalf of issuing bank subsystem 370 (e.g., according to conditions agreed upon between payment network subsystem 360 and issuing bank subsystem 370 ).
- payment network subsystem 360 may reduce the number of entities that each acquiring bank subsystem 300 and each issuing bank subsystem 370 may have to interact with directly.
- payment network subsystem 360 may act as an aggregator for various issuing banks 370 and/or various acquiring banks 300 .
- Financial institution subsystem 350 may also include one or more acquiring banks, such as acquiring bank subsystem 300 .
- acquiring bank subsystem 300 may be the same entity as issuing bank subsystem 370 .
- issuing bank subsystem 370 When issuing bank subsystem 370 receives an authorization request (e.g., directly from acquiring bank subsystem 300 as data 674 or indirectly via payment network subsystem 360 as data 405 ), the payment information (e.g., commerce credential information of device 100 ) and the purchase amount included in the authorization request may be analyzed to determine if the account associated with the commerce credential has enough credit to cover the purchase amount. If sufficient funds are not present, issuing bank subsystem 370 may decline the requested transaction by transmitting a negative authorization response to acquiring bank subsystem 300 . However, if sufficient funds are present, issuing bank subsystem 370 may approve the requested transaction by transmitting a positive authorization response to acquiring bank subsystem 300 and the financial transaction may be completed.
- an authorization request e.g., directly from acquiring bank subsystem 300 as data 674 or indirectly via payment network subsystem 360 as data 405
- the payment information e.g., commerce credential information of device 100
- the purchase amount included in the authorization request may be analyzed to determine
- Either type of authorization response may be provided by user financial subsystem 350 to acquiring bank subsystem 300 as authorization response data 676 (e.g., authorization response data 676 may be provided directly from issuing bank subsystem 370 to acquiring bank subsystem 300 via communication path 35 , or authorization response data 676 may be provided from payment network subsystem 360 to acquiring bank subsystem 300 based on authorization response data 415 that may be provided to payment network subsystem 360 from issuing bank subsystem 370 via communication path 45 ).
- electronic device 100 can include, but is not limited to, a music player (e.g., an iPodTM available by Apple Inc. of Cupertino, Calif.), video player, still image player, game player, other media player, music recorder, movie or video camera or recorder, still camera, other media recorder, radio, medical equipment, domestic appliance, transportation vehicle instrument, musical instrument, calculator, cellular telephone (e.g., an iPhoneTM available by Apple Inc.), other wireless communication device, personal digital assistant, remote control, pager, computer (e.g., a desktop, laptop, tablet (e.g., an iPadTM available by Apple Inc.), server, etc.), monitor, television, stereo equipment, set up box, set-top box, boom box, modem, router, printer, or any combination thereof.
- a music player e.g., an iPodTM available by Apple Inc. of Cupertino, Calif.
- video player still image player
- game player other media player
- music recorder movie or video camera or recorder
- still camera still camera
- radio medical
- electronic device 100 may perform a single function (e.g., a device dedicated to conducting financial transactions) and, in other embodiments, electronic device 100 may perform multiple functions (e.g., a device that conducts financial transactions, plays music, and receives and transmits telephone calls).
- Electronic device 100 may be any portable, mobile, hand-held, or miniature electronic device that may be configured to conduct financial transactions wherever a user travels. Some miniature electronic devices may have a form factor that is smaller than that of hand-held electronic devices, such as an iPodTM.
- Illustrative miniature electronic devices can be integrated into various objects that may include, but are not limited to, watches, rings, necklaces, belts, accessories for belts, headsets, accessories for shoes, virtual reality devices, glasses, other wearable electronics, accessories for sporting equipment, accessories for fitness equipment, key chains, or any combination thereof.
- electronic device 100 may not be portable at all, but may instead be generally stationary.
- electronic device 100 may include a processor 102 , memory 104 , communications component 106 , power supply 108 , input component 110 , output component 112 , antenna 116 , and near field communication (“NFC”) component 120 .
- Electronic device 100 may also include a bus 118 that may provide one or more wired or wireless communication links or paths for transferring data and/or power to, from, or between various other components of device 100 .
- one or more components of electronic device 100 may be combined or omitted.
- electronic device 100 may include other components not combined or included in FIG. 2 .
- electronic device 100 may include any other suitable components or several instances of the components shown in FIG. 2 . For the sake of simplicity, only one of each of the components is shown in FIG. 2 .
- Memory 104 may include one or more storage mediums, including for example, a hard-drive, flash memory, permanent memory such as read-only memory (“ROM”), semi-permanent memory such as random access memory (“RAM”), any other suitable type of storage component, or any combination thereof.
- Memory 104 may include cache memory, which may be one or more different types of memory used for temporarily storing data for electronic device applications.
- Memory 104 may be fixedly embedded within electronic device 100 or may be incorporated on one or more suitable types of cards that may be repeatedly inserted into and removed from electronic device 100 (e.g., a subscriber identity module (“SIM”) card or secure digital (“SD”) memory card).
- SIM subscriber identity module
- SD secure digital
- Memory 104 may store media data (e.g., music and image files), software (e.g., for implementing functions on device 100 ), firmware, preference information (e.g., media playback preferences), lifestyle information (e.g., food preferences), exercise information (e.g., information obtained by exercise monitoring equipment), transaction information (e.g., information such as credit card information), wireless connection information (e.g., information that may enable device 100 to establish a wireless connection), subscription information (e.g., information that keeps track of podcasts or television shows or other media a user subscribes to), contact information (e.g., telephone numbers and e-mail addresses), calendar information, any other suitable data, or any combination thereof.
- media data e.g., music and image files
- software e.g., for implementing functions on device 100
- firmware e.g., firmware
- preference information e.g., media playback preferences
- lifestyle information e.g., food preferences
- exercise information e.g., information obtained by exercise monitoring equipment
- Communications component 106 may be provided to allow device 100 to communicate with one or more other electronic devices or servers or subsystems (e.g., one or more subsystems or other components of system 1 ) using any suitable communications protocol.
- communications component 106 may support Wi-Fi (e.g., an 802.11 protocol), ZigBee (e.g., an 802.15.4 protocol), WiDiTM, Ethernet, BluetoothTM, BluetoothTM Low Energy (“BLE”), high frequency systems (e.g., 900 MHz, 2.4 GHz, and 5.6 GHz communication systems), infrared, transmission control protocol/internet protocol (“TCP/IP”) (e.g., any of the protocols used in each of the TCP/IP layers), Stream Control Transmission Protocol (“SCTP”), Dynamic Host Configuration Protocol (“DHCP”), hypertext transfer protocol (“HTTP”), BitTorrentTM, file transfer protocol (“FTP”), real-time transport protocol (“RTP”), real-time streaming protocol (“RTSP”), real-time control protocol (“RTCP”), Remote Audio Output
- Communications component 106 may also include or be electrically coupled to any suitable transceiver circuitry (e.g., transceiver circuitry or antenna 116 via bus 118 ) that can enable device 100 to be communicatively coupled to another device (e.g., a host computer or an accessory device) and communicate with that other device wirelessly, or via a wired connection (e.g., using a connector port).
- Communications component 106 may be configured to determine a geographical position of electronic device 100 .
- communications component 106 may utilize the global positioning system (“GPS”) or a regional or site-wide positioning system that may use cell tower positioning technology or Wi-Fi technology.
- GPS global positioning system
- Wi-Fi Wi-Fi
- Power supply 108 can include any suitable circuitry for receiving and/or generating power, and for providing such power to one or more of the other components of electronic device 100 .
- power supply 108 can be coupled to a power grid (e.g., when device 100 is not acting as a portable device or when a battery of the device is being charged at an electrical outlet with power generated by an electrical power plant).
- power supply 108 can be configured to generate power from a natural source (e.g., solar power using solar cells).
- power supply 108 can include one or more batteries for providing power (e.g., when device 100 is acting as a portable device).
- power supply 108 can include one or more of a battery (e.g., a gel, nickel metal hydride, nickel cadmium, nickel hydrogen, lead acid, or lithium-ion battery), an uninterruptible or continuous power supply (“UPS” or “CPS”), and circuitry for processing power received from a power generation source (e.g., power generated by an electrical power plant and delivered to the user via an electrical socket or otherwise).
- a battery e.g., a gel, nickel metal hydride, nickel cadmium, nickel hydrogen, lead acid, or lithium-ion battery
- UPS uninterruptible or continuous power supply
- circuitry for processing power received from a power generation source e.g., power generated by an electrical power plant and delivered to the user via an electrical socket or otherwise.
- the power can be provided by power supply 108 as alternating current or direct current, and may be processed to transform power or limit received power to particular characteristics.
- the power can be transformed to or from direct current, and constrained to one or more values of average power, effective power, peak power, energy per pulse, voltage, current (e.g., measured in amperes), or any other characteristic of received power.
- Power supply 108 can be operative to request or provide particular amounts of power at different times, for example, based on the needs or requirements of electronic device 100 or periphery devices that may be coupled to electronic device 100 (e.g., to request more power when charging a battery than when the battery is already charged).
- One or more input components 110 may be provided to permit a user to interact or interface with device 100 .
- input component 110 can take a variety of forms, including, but not limited to, a touch pad, dial, click wheel, scroll wheel, touch screen, one or more buttons (e.g., a keyboard), mouse, joy stick, track ball, microphone, camera, scanner (e.g., a bar code scanner or any other suitable scanner that may obtain product identifying information from a code, such as a bar code, a QR code, or the like), proximity sensor, light detector, motion sensor, biometric sensor (e.g., a fingerprint reader or other feature recognition sensor, which may operate in conjunction with a feature-processing application that may be accessible to electronic device 100 for authenticating a user), and combinations thereof.
- Each input component 110 can be configured to provide one or more dedicated control functions for making selections or issuing commands associated with operating device 100 .
- Electronic device 100 may also include one or more output components 112 that may present information (e.g., graphical, audible, and/or tactile information) to a user of device 100 .
- output component 112 of electronic device 100 may take various forms, including, but not limited to, audio speakers, headphones, audio line-outs, visual displays, antennas, infrared ports, haptic output components (e.g., rumblers, vibrators, etc.), or combinations thereof.
- electronic device 100 may include a display output component as output component 112 .
- a display output component may include any suitable type of display or interface for presenting visual data to a user.
- a display output component may include a display embedded in device 100 or coupled to device 100 (e.g., a removable display).
- a display output component may include, for example, a liquid crystal display (“LCD”), a light emitting diode (“LED”) display, an organic light-emitting diode (“OLED”) display, a surface-conduction electron-emitter display (“SED”), a carbon nanotube display, a nanocrystal display, any other suitable type of display, or combination thereof.
- LCD liquid crystal display
- LED light emitting diode
- OLED organic light-emitting diode
- SED surface-conduction electron-emitter display
- a display output component can include a movable display or a projecting system for providing a display of content on a surface remote from electronic device 100 , such as, for example, a video projector, a head-up display, or a three-dimensional (e.g., holographic) display.
- a display output component may include a digital or mechanical viewfinder, such as a viewfinder of the type found in compact digital cameras, reflex cameras, or any other suitable still or video camera.
- a display output component may include display driver circuitry, circuitry for driving display drivers, or both, and such a display output component can be operative to display content (e.g., media playback information, application screens for applications implemented on electronic device 100 , information regarding ongoing communications operations, information regarding incoming communications requests, device operation screens, etc.) that may be under the direction of processor 102 .
- display content e.g., media playback information, application screens for applications implemented on electronic device 100 , information regarding ongoing communications operations, information regarding incoming communications requests, device operation screens, etc.
- one or more input components and one or more output components may sometimes be referred to collectively herein as an input/output (“I/O”) component or I/O interface (e.g., input component 110 and output component 112 as I/O component or I/O interface 114 ).
- I/O input/output
- input component 110 and output component 112 may sometimes be a single I/O component 114 , such as a touch screen, that may receive input information through a user's touch of a display screen and that may also provide visual information to a user via that same display screen.
- Processor 102 of electronic device 100 may include any processing circuitry that may be operative to control the operations and performance of one or more components of electronic device 100 .
- processor 102 may receive input signals from input component 110 and/or drive output signals through output component 112 .
- processor 102 may be used to run one or more applications, such as an application 103 , an application 113 , and/or an application 143 .
- Each application 103 / 113 / 143 may include, but is not limited to, one or more operating system applications, firmware applications, media playback applications, media editing applications, NFC low power mode applications, biometric feature-processing applications, or any other suitable applications.
- processor 102 may load application 103 / 113 / 143 as a user interface program to determine how instructions or data received via an input component 110 or other component of device 100 may manipulate the way in which information may be stored and/or provided to the user via an output component 112 .
- Application 103 / 113 / 143 may be accessed by processor 102 from any suitable source, such as from memory 104 (e.g., via bus 118 ) or from another device or server (e.g., via communications component 106 ).
- Processor 102 may include a single processor or multiple processors.
- processor 102 may include at least one “general purpose” microprocessor, a combination of general and special purpose microprocessors, instruction set processors, graphics processors, video processors, and/or related chips sets, and/or special purpose microprocessors.
- Processor 102 also may include on board memory for caching purposes.
- Electronic device 100 may also include near field communication (“NFC”) component 120 .
- NFC component 120 may be any suitable proximity-based communication mechanism that may enable contactless proximity-based transactions or communications between electronic device 100 and merchant subsystem 200 (e.g., a merchant payment terminal).
- NFC component 120 may allow for close range communication at relatively low data rates (e.g., 424 kbps), and may comply with any suitable standards, such as ISO/IEC 7816, ISO/IEC 18092, ECMA-340, ISO/IEC 21481, ECMA-352, ISO 14443, and/or ISO 15693.
- NFC component 120 may allow for close range communication at relatively high data rates (e.g., 370 Mbps), and may comply with any suitable standards, such as the TransferJetTM protocol. Communication between NFC component 120 and merchant subsystem 200 may occur within any suitable close range distance between device 100 and merchant subsystem 200 (see, e.g., distance D of FIG. 1A ), such as a range of approximately 2 to 4 centimeters, and may operate at any suitable frequency (e.g., 13.56 MHz). For example, such close range communication of NFC component 120 may take place via magnetic field induction, which may allow NFC component 120 to communicate with other NFC devices and/or to retrieve information from tags having radio frequency identification (“RFID”) circuitry. NFC component 120 may provide a manner of acquiring merchandise information, transferring payment information, and otherwise communicating with an external device (e.g., a merchant terminal of merchant subsystem 200 ).
- RFID radio frequency identification
- NFC component 120 may include any suitable modules for enabling contactless proximity-based communication between electronic device 100 and merchant subsystem 200 . As shown in FIG. 2 , for example, NFC component 120 may include an NFC device module 130 , an NFC controller module 140 , and an NFC memory module 150 .
- NFC device module 130 may include an NFC data module 132 , an NFC antenna 134 , and an NFC booster 136 .
- NFC data module 132 may be configured to contain, route, or otherwise provide any suitable data that may be transmitted by NFC component 120 to merchant subsystem 200 as part of a contactless proximity-based or NFC communication 5 . Additionally or alternatively, NFC data module 132 may be configured to contain, route, or otherwise receive any suitable data that may be received by NFC component 120 from merchant subsystem 200 as part of a contactless proximity-based communication 5 .
- NFC transceiver or NFC antenna 134 may be any suitable antenna or other suitable transceiver circuitry that may generally enable communication of communication from NFC data module 132 to merchant subsystem 200 and/or to NFC data module 132 from subsystem 200 . Therefore, NFC antenna 134 (e.g., a loop antenna) may be provided specifically for enabling the contactless proximity-based communication capabilities of NFC component 120 .
- NFC antenna 134 e.g., a loop antenna
- NFC component 120 may utilize the same transceiver circuitry or antenna (e.g., antenna 116 ) that another communication component of electronic device 100 (e.g., communication component 106 ) may utilize.
- communication component 106 may leverage antenna 116 to enable Wi-Fi, BluetoothTM, cellular, or GPS communication between electronic device 100 and another remote entity, while NFC component 120 may leverage antenna 116 to enable contactless proximity-based or NFC communication between NFC data module 132 of NFC device module 130 and another entity (e.g., merchant subsystem 200 ).
- NFC device module 130 may include NFC booster 136 , which may be configured to provide appropriate signal amplification for data of NFC component 120 (e.g., data within NFC data module 132 ) so that such data may be appropriately transmitted by shared antenna 116 as communication to subsystem 200 .
- shared antenna 116 may require amplification from booster 136 before antenna 116 (e.g., a non-loop antenna) may be properly enabled for communicating contactless proximity-based or NFC communication between electronic device 100 and merchant subsystem 200 (e.g., more power may be needed to transmit NFC data using antenna 116 than may be needed to transmit other types of data using antenna 116 ).
- NFC controller module 140 may include at least one NFC processor module 142 .
- NFC processor module 142 may operate in conjunction with NFC device module 130 to enable, activate, allow, and/or otherwise control NFC component 120 for communicating an NFC communication between electronic device 100 and merchant subsystem 200 .
- NFC processor module 142 may exist as a separate component, may be integrated into another chipset, or may be integrated with processor 102 , for example, as part of a system on a chip (“SoC”). As shown in FIG. 2 , NFC processor module 142 of NFC controller module 140 may be used to run one or more applications, such as an NFC low power mode or wallet application 143 that may help dictate the function of NFC component 120 .
- SoC system on a chip
- Application 143 may include, but is not limited to, one or more operating system applications, firmware applications, NFC low power applications, or any other suitable applications that may be accessible to NFC component 120 (e.g., application 103 / 113 ).
- NFC controller module 140 may include one or more protocols, such as the Near Field Communication Interface and Protocols (“NFCIP-1”), for communicating with another NFC device (e.g., merchant subsystem 200 ). The protocols may be used to adapt the communication speed and to designate one of the connected devices as the initiator device that controls the near field communication.
- NFCIP-1 Near Field Communication Interface and Protocols
- NFC controller module 140 may control the near field communication mode of NFC component 120 .
- NFC processor module 142 may be configured to switch NFC device module 130 between a reader/writer mode for reading information (e.g., communication 5 ) from NFC tags (e.g., from merchant subsystem 200 ) to NFC data module 132 , a peer-to-peer mode for exchanging data (e.g., communication 5 ) with another NFC enabled device (e.g., merchant subsystem 200 ), and a card emulation mode for allowing another NFC enabled device (e.g., merchant subsystem 200 ) to read information (e.g., communication 5 ) from NFC data module 132 .
- a reader/writer mode for reading information (e.g., communication 5 ) from NFC tags (e.g., from merchant subsystem 200 ) to NFC data module 132
- a peer-to-peer mode for exchanging data (e.g., communication 5 ) with another NFC enabled device (e.
- NFC controller module 140 also may be configured to switch NFC component 120 between active and passive modes.
- NFC processor module 142 may be configured to switch NFC device module 130 (e.g., in conjunction with NFC antenna 134 or shared antenna 116 ) between an active mode where NFC device module 130 may generate its own RF field and a passive mode where NFC device module 130 may use load modulation to transfer data to another device generating an RF field (e.g., merchant subsystem 200 ). Operation in such a passive mode may prolong the battery life of electronic device 100 compared to operation in such an active mode.
- the modes of NFC device module 130 may be controlled based on preferences of a user and/or based on preferences of a manufacturer of device 100 , which may be defined or otherwise dictated by an application running on device 100 (e.g., application 103 and/or application 143 ).
- NFC memory module 150 may operate in conjunction with NFC device module 130 and/or NFC controller module 140 to allow for NFC communication between electronic device 100 and merchant subsystem 200 .
- NFC memory module 150 may be embedded within NFC device hardware or within an NFC integrated circuit (“IC”).
- IC NFC integrated circuit
- NFC memory module 150 may be tamper resistant and may provide at least a portion of a secure element.
- NFC memory module 150 may store one or more applications relating to NFC communications (e.g., application 143 ) that may be accessed by NFC controller module 140 .
- applications may include financial payment applications, secure access system applications, loyalty card applications, and other applications, which may be encrypted.
- NFC controller module 140 and NFC memory module 150 may independently or in combination provide a dedicated microprocessor system that may contain an operating system, memory, application environment, and security protocols intended to be used to store and execute sensitive applications on electronic device 100 .
- NFC controller module 140 and NFC memory module 150 may independently or in combination provide at least a portion of a secure element 145 , which may be tamper resistant.
- such a secure element 145 may be configured to provide a tamper-resistant platform (e.g., as a single or multiple chip secure microcontroller) that may be capable of securely hosting applications and their confidential and cryptographic data (e.g., applet 153 and key 155 ) in accordance with rules and security requirements that may be set forth by a set of well-identified trusted authorities (e.g., an authority of financial institution subsystem and/or an industry standard, such as GlobalPlatform).
- NFC memory module 150 may be a portion of memory 106 or at least one dedicated chip specific to NFC component 120 .
- NFC memory module 150 may reside on a SIM, a dedicated chip on a motherboard of electronic device 100 , or as an external plug in memory card.
- NFC memory module 150 may be completely independent from NFC controller module 140 and may be provided by different components of device 100 and/or provided to electronic device 100 by different removable subsystems.
- Secure element 145 may be a highly secure, tamper-resistant hardware component within a chip, which may be used for storing sensitive data or applications on electronic device 100 .
- At least a portion of secure element 145 may be provided in a removable circuit card, such as a universal integrated circuit card (“UICC”) or a subscriber identity module (“SIM”) card, that may be used in electronic devices 100 compatible within global system for mobile communications (“GSM”) networks, universal mobile telecommunications systems (“UMTS”) and/or long-term evolution (“LTE”) standard networks.
- GSM global system for mobile communications
- UMTS universal mobile telecommunications systems
- LTE long-term evolution
- secure element 145 may be provided in an integrated circuit that may be embedded into electronic device 100 during manufacturing of device 100 .
- at least a portion of secure element 145 may be provided in a peripheral device that can be plugged into, inserted into, or otherwise coupled to electronic device 100 , such as a micro secure digital (“SD”) memory card.
- SD micro secure digital
- NFC memory module 150 may include one or more of an issuer security domain (“ISD”) 152 and a supplemental security domain (“SSD”) 154 (e.g., a service provider security domain (“SPSD”), a trusted service manager security domain (“TSMSD”), etc.), which may be defined and managed by an NFC specification standard (e.g., GlobalPlatform).
- ISD issuer security domain
- SSD supplemental security domain
- SPSD service provider security domain
- TMSD trusted service manager security domain
- NFC specification standard e.g., GlobalPlatform
- ISD 152 may be a portion of NFC memory module 150 in which a trusted service manager (“TSM”) or issuing financial institution (e.g., commercial entity subsystem 400 and/or financial institution subsystem 350 ) may store keys and/or other suitable information for creating or otherwise provisioning one or more credentials (e.g., commerce credentials associated with various credit cards, bank cards, gift cards, access cards, transit passes, digital currency (e.g., bitcoin and associated payment networks), etc.) on electronic device 100 (e.g., via communications component 106 ), for credential content management, and/or for security domain management.
- TSM trusted service manager
- issuing financial institution e.g., commercial entity subsystem 400 and/or financial institution subsystem 350
- keys and/or other suitable information for creating or otherwise provisioning one or more credentials (e.g., commerce credentials associated with various credit cards, bank cards, gift cards, access cards, transit passes, digital currency (e.g., bitcoin and associated payment networks), etc.) on electronic device 100 (e.g., via communications component 106
- a specific supplemental security domain (“SSD”) 154 may be associated with a particular TSM and at least one specific commerce credential (e.g., a specific credit card credential or a specific public transit card credential) that may provide specific privileges or payment rights to electronic device 100 .
- a first payment network subsystem 360 e.g., Visa
- applet 153 a of first SSD 154 a may be associated with a commerce credential managed by that first payment network subsystem 360
- a second payment network subsystem 360 e.g., MasterCard
- Security features may be provided for enabling use of NFC component 120 (e.g., for enabling activation of commerce credentials provisioned on device 100 ) that may be particularly useful when transmitting confidential payment information, such as credit card information or bank account information of a credential, from electronic device 100 to merchant subsystem 200 .
- Such security features also may include a secure storage area that may have restricted access. For example, user authentication via personal identification number (“PIN”) entry or via user interaction with a biometric sensor may need to be provided to access the secure storage area (e.g., for a user to alter a life cycle state of a security domain element of the secure element).
- PIN personal identification number
- biometric sensor may need to be provided to access the secure storage area (e.g., for a user to alter a life cycle state of a security domain element of the secure element).
- some or all of the security features may be stored within NFC memory module 150 .
- security information such as an authentication key, for communicating with subsystem 200 may be stored within NFC memory module 150 .
- a merchant terminal of merchant subsystem 200 of FIG. 1A may include a reader for detecting, reading, or otherwise receiving an NFC communication from electronic device 100 (e.g., when electronic device 100 comes within a certain distance or proximity of such a merchant terminal). Accordingly, it is noted that an NFC communication between such a merchant terminal and electronic device 100 may occur wirelessly and, as such, may not require a clear “line of sight” between the respective devices.
- NFC device module 130 may be passive or active. When passive, NFC device module 130 may only be activated when within a response range of a suitable reader of such a merchant terminal.
- a reader of such a merchant terminal may emit a relatively low-power radio wave field that may be used to power an antenna utilized by NFC device module 130 (e.g., shared antenna 116 or NFC-specific antenna 134 ) and, thereby, enable that antenna to transmit suitable NFC communication information (e.g., credit card credential information) from NFC data module 132 , via antenna 116 or antenna 134 , to such a merchant terminal as an NFC communication.
- suitable NFC communication information e.g., credit card credential information
- NFC device module 130 may incorporate or otherwise have access to a power source local to electronic device 100 (e.g., power supply 108 ) that may enable shared antenna 116 or NFC-specific antenna 134 to actively transmit NFC communication information (e.g., credit card credential information) from NFC data module 132 , via antenna 116 or antenna 134 , to such a merchant terminal as an NFC communication, rather than reflect radio frequency signals, as in the case of a passive NFC device module 130 .
- a merchant terminal may be provided by a merchant of merchant subsystem 200 (e.g., in a store of the merchant for selling products or services directly to the user of device 100 at the store).
- NFC component 120 has been described with respect to near field communication, it is to be understood that component 120 may be configured to provide any suitable contactless proximity-based mobile payment or any other suitable type of contactless proximity-based communication between electronic device 100 and such a merchant terminal.
- NFC component 120 may be configured to provide any suitable short-range communication, such as those involving electromagnetic/electrostatic coupling technologies.
- NFC component 120 has been described with respect to near field communication, it is to be understood that component 120 may be configured to provide any suitable contactless proximity-based mobile payment or any other suitable type of contactless proximity-based communication between electronic device 100 and merchant subsystem 200 .
- NFC component 120 may be configured to provide any suitable short-range communication, such as those involving electromagnetic/electrostatic coupling technologies.
- Electronic device 100 may also be provided with a housing 101 that may at least partially enclose one or more of the components of device 100 for protection from debris and other degrading forces external to device 100 .
- one or more of the components may be provided within its own housing (e.g., input component 110 may be an independent keyboard or mouse within its own housing that may wirelessly or through a wire communicate with processor 102 , which may be provided within its own housing).
- one specific example of electronic device 100 may be a handheld electronic device, such as an iPhoneTM, where housing 101 may allow access to various input components 110 a - 110 i , various output components 112 a - 112 c , and various I/O components 114 a - 114 d through which device 100 and a user and/or an ambient environment may interface with each other.
- Input component 110 a may include a button that, when pressed, may cause a “home” screen or menu of a currently running application to be displayed by device 100 .
- Input component 110 b may be a button for toggling electronic device 100 between a sleep mode and a wake mode or between any other suitable modes.
- Input component 110 c may include a two-position slider that may disable one or more output components 112 in certain modes of electronic device 100 .
- Input components 110 d and 110 e may include buttons for increasing and decreasing the volume output or any other characteristic output of an output component 112 of electronic device 100 .
- Each one of input components 110 a - 110 e may be a mechanical input component, such as a button supported by a dome switch, a sliding switch, a control pad, a key, a knob, a scroll wheel, or any other suitable form.
- An output component 112 a may be a display that can be used to display a visual or graphic user interface (“GUI”) 180 , which may allow a user to interact with electronic device 100 .
- GUI 180 may include various layers, windows, screens, templates, elements, menus, and/or other components of a currently running application (e.g., application 103 and/or application 113 and/or application 143 ) that may be displayed in all or some of the areas of display output component 112 a .
- GUI 180 may be configured to display a first screen 190 .
- One or more of user input components 110 a - 110 i may be used to navigate through GUI 180 .
- one user input component 110 may include a scroll wheel that may allow a user to select one or more graphical elements or icons 182 of GUI 180 .
- Icons 182 may also be selected via a touch screen I/O component 114 a that may include display output component 112 a and an associated touch input component 110 f .
- a touch screen I/O component 114 a may employ any suitable type of touch screen input technology, such as, but not limited to, resistive, capacitive, infrared, surface acoustic wave, electromagnetic, or near field imaging.
- touch screen I/O component 114 a may employ single point or multi-point (e.g., multi-touch) input sensing.
- Icons 182 may represent various layers, windows, screens, templates, elements, and/or other components that may be displayed in some or all of the areas of display component 112 a upon selection by the user. Furthermore, selection of a specific icon 182 may lead to a hierarchical navigation process. For example, selection of a specific icon 182 may lead to a new screen of GUI 180 that may include one or more additional icons or other GUI elements of the same application or of a new application associated with that icon 182 . Textual indicators 181 may be displayed on or near each icon 182 to facilitate user interpretation of each graphical element icon 182 . It is to be appreciated that GUI 180 may include various components arranged in hierarchical and/or non-hierarchical structures.
- device 100 may be configured to open a new application associated with that icon 182 and display a corresponding screen of GUI 180 associated with that application.
- a specific icon 182 labeled with a “Merchant App” textual indicator 181 i.e., specific icon 183
- device 100 may launch or otherwise access a specific merchant application and may display screens of a specific user interface that may include one or more tools or features for interacting with device 100 in a specific manner.
- screens may be displayed on display output component 112 a and may include various user interface elements (e.g., screens 190 a - 190 e of FIGS. 14A-14E ).
- various other types of non-visual information may be provided to a user via various other output components 112 of device 100 .
- the operations described with respect to various GUIs 180 may be achieved with a wide variety of graphical elements and visual schemes. Therefore, the described embodiments are not intended to be limited to the precise user interface conventions adopted herein. Rather, embodiments may include a wide variety of user interface styles.
- Electronic device 100 also may include various other I/O components 114 that may allow for communication between device 100 and other devices.
- I/O component 114 b may be a connection port that may be configured for transmitting and receiving data files, such as media files or customer order files, from a remote data source and/or power from an external power source.
- I/O component 114 b may be a proprietary port, such as a LightningTM connector or a 30-pin dock connector from Apple Inc. of Cupertino, Calif.
- I/O component 114 c may be a connection slot for receiving a SIM card or any other type of removable component.
- I/O component 114 d may be a headphone jack for connecting audio headphones that may or may not include a microphone component.
- Electronic device 100 may also include at least one audio input component 110 g , such as a microphone, and at least one audio output component 112 b , such as an audio speaker.
- Electronic device 100 may also include at least one haptic or tactile output component 112 c (e.g., a rumbler), a camera and/or scanner input component 110 h (e.g., a video or still camera, and/or a bar code scanner or any other suitable scanner that may obtain product identifying information from a code, such as a bar code, a QR code, or the like), and a biometric input component 110 i (e.g., a fingerprint reader or other feature recognition sensor, which may operate in conjunction with a feature-processing application that may be accessible to electronic device 100 for authenticating a user). As shown in FIG.
- a haptic or tactile output component 112 c e.g., a rumbler
- a camera and/or scanner input component 110 h e.g., a video or still camera, and/or a bar code scanner or any other suitable scanner that may obtain product identifying information from a code, such as a bar code, a QR code, or the like
- biometric input component 110 i may be incorporated into or otherwise combined with input component 110 a or any other suitable input component 110 of device 100 .
- biometric input component 110 i may be a fingerprint reader that may be configured to scan the fingerprint of a user's finger as the user interacts with mechanical input component 110 a by pressing input component 110 a with that finger.
- biometric input component 110 i may be a fingerprint reader that may be combined with touch input component 110 f of touch screen I/O component 114 a , such that biometric input component 110 i may be configured to scan the fingerprint of a user's finger as the user interacts with touch screen input component 110 f by pressing or sliding along touch screen input component 110 f with that finger.
- electronic device 100 may further include NFC component 120 , which may be communicatively accessible to subsystem 200 via antenna 116 and/or antenna 134 (not shown in FIG. 4 ).
- NFC component 120 may be located at least partially within housing 101 , and a mark or symbol 121 can be provided on the exterior of housing 101 that may identify the general location of one or more of the antennas associated with NFC component 120 (e.g., the general location of antenna 116 and/or antenna 134 ).
- one, some, or all of the processes described with respect to FIGS. 1-14E may each be implemented by software, but may also be implemented in hardware, firmware, or any combination of software, hardware, and firmware. Instructions for performing these processes may also be embodied as machine- or computer-readable code recorded on a machine- or computer-readable medium.
- the computer-readable medium may be a non-transitory computer-readable medium. Examples of such a non-transitory computer-readable medium include but are not limited to a read-only memory, a random-access memory, a flash memory, a CD-ROM, a DVD, a magnetic tape, a removable memory card, and a data storage device (e.g., memory 104 and/or memory module 150 of FIG.
- the computer-readable medium may be a transitory computer-readable medium.
- the transitory computer-readable medium can be distributed over network-coupled computer systems so that the computer-readable code is stored and executed in a distributed fashion.
- such a transitory computer-readable medium may be communicated from one electronic device to another electronic device using any suitable communications protocol (e.g., the computer-readable medium may be communicated to electronic device 100 via communications component 106 (e.g., as at least a portion of an application 103 and/or as at least a portion of an application 113 and/or as at least a portion of an application 143 )).
- Such a transitory computer-readable medium may embody computer-readable code, instructions, data structures, program modules, or other data in a modulated data signal, such as a carrier wave or other transport mechanism, and may include any information delivery media.
- a modulated data signal may be a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal.
- any, each, or at least one module or component or subsystem of system 1 may be provided as a software construct, firmware construct, one or more hardware components, or a combination thereof.
- any, each, or at least one module or component or subsystem of system 1 may be described in the general context of computer-executable instructions, such as program modules, that may be executed by one or more computers or other devices.
- a program module may include one or more routines, programs, objects, components, and/or data structures that may perform one or more particular tasks or that may implement one or more particular abstract data types.
- modules and components and subsystems of system 1 are merely illustrative, and that the number, configuration, functionality, and interconnection of existing modules, components, and/or subsystems may be modified or omitted, additional modules, components, and/or subsystems may be added, and the interconnection of certain modules, components, and/or subsystems may be altered.
- At least a portion of one or more of the modules or components or subsystems of system 1 may be stored in or otherwise accessible to an entity of system 1 in any suitable manner (e.g., in memory 104 of device 100 (e.g., as at least a portion of an application 103 and/or as at least a portion of an application 113 and/or as at least a portion of an application 143 )).
- any or each module of NFC component 120 may be implemented using any suitable technologies (e.g., as one or more integrated circuit devices), and different modules may or may not be identical in structure, capabilities, and operation.
- Any or all of the modules or other components of system 1 may be mounted on an expansion card, mounted directly on a system motherboard, or integrated into a system chipset component (e.g., into a “north bridge” chip).
- any or each module or component of system 1 may be a dedicated system implemented using one or more expansion cards adapted for various bus standards.
- all of the modules may be mounted on different interconnected expansion cards or all of the modules may be mounted on one expansion card.
- the modules of NFC component 120 may interface with a motherboard or processor 102 of device 100 through an expansion slot (e.g., a peripheral component interconnect (“PCI”) slot or a PCI express slot).
- NFC component 120 need not be removable but may include one or more dedicated modules that may include memory (e.g., RAM) dedicated to the utilization of the module.
- NFC component 120 may be integrated into device 100 .
- a module of NFC component 120 may utilize a portion of device memory 104 of device 100 .
- Any or each module or component of system 1 e.g., any or each module of NFC component 120
- any or each module or component of system 1 e.g., any or each module of NFC component 120
- an input component 110 of device 100 may include a touch input component that can receive touch input for interacting with other components of device 100 via wired or wireless bus 118 .
- a touch input component 110 may be used to provide user input to device 100 in lieu of or in combination with other input components, such as a keyboard, mouse, and the like.
- a touch input component 110 may include a touch sensitive panel, which may be wholly or partially transparent, semitransparent, non-transparent, opaque, or any combination thereof.
- a touch input component 110 may be embodied as a touch screen, touch pad, a touch screen functioning as a touch pad (e.g., a touch screen replacing the touchpad of a laptop), a touch screen or touch pad combined or incorporated with any other input device (e.g., a touch screen or touch pad disposed on a keyboard), or any multi-dimensional object having a touch sensitive surface for receiving touch input.
- the terms touch screen and touch pad may be used interchangeably.
- a touch input component 110 embodied as a touch screen may include a transparent and/or semitransparent touch sensitive panel partially or wholly positioned over, under, and/or within at least a portion of a display (e.g., display output component 112 a ).
- a touch input component 110 may be embodied as an integrated touch screen where touch sensitive components/devices are integral with display components/devices.
- a touch input component 110 may be used as a supplemental or additional display screen for displaying supplemental or the same graphical data as a primary display and to receive touch input.
- a touch input component 110 may be configured to detect the location of one or more touches or near touches based on capacitive, resistive, optical, acoustic, inductive, mechanical, chemical measurements, or any phenomena that can be measured with respect to the occurrences of the one or more touches or near touches in proximity to input component 110 .
- Software, hardware, firmware, or any combination thereof may be used to process the measurements of the detected touches to identify and track one or more gestures.
- a gesture may correspond to stationary or non-stationary, single or multiple, touches or near touches on a touch input component 110 .
- a gesture may be performed by moving one or more fingers or other objects in a particular manner on touch input component 110 , such as by tapping, pressing, rocking, scrubbing, rotating, twisting, changing orientation, pressing with varying pressure, and the like at essentially the same time, contiguously, or consecutively.
- a gesture may be characterized by, but is not limited to, a pinching, pulling, sliding, swiping, rotating, flexing, dragging, or tapping motion between or with any other finger or fingers.
- a single gesture may be performed with one or more hands, by one or more users, or any combination thereof.
- GUI 180 may be configured to receive touch input via a touch input component 110 f Embodied as a touch screen (e.g., with display output component 112 a as I/O component 114 a ), touch I/O component 110 f may display GUI 180 .
- GUI 180 may be displayed on a display (e.g., display output component 112 a ) separate from touch input component 110 f .
- GUI 180 may include graphical elements displayed at particular locations within the interface.
- Graphical elements may include, but are not limited to, a variety of displayed virtual input devices, including virtual scroll wheels, a virtual keyboard, virtual knobs, virtual buttons, any virtual user interface (“UI”), and the like.
- a user may perform gestures at one or more particular locations on touch input component 110 f , which may be associated with the graphical elements of GUI 180 . In other embodiments, the user may perform gestures at one or more locations that are independent of the locations of graphical elements of GUI 180 .
- Gestures performed on a touch input component 110 may directly or indirectly manipulate, control, modify, move, actuate, initiate, or generally affect graphical elements, such as cursors, icons, media files, lists, text, all or portions of images, or the like within the GUI.
- a user may directly interact with a graphical element by performing a gesture over the graphical element on the touch screen.
- a touch pad may generally provide indirect interaction.
- Gestures may also affect non-displayed GUI elements (e.g., causing user interfaces to appear) or may affect other actions of device 100 (e.g., affect a state or mode of a GUI, application, or operating system). Gestures may or may not be performed on a touch input component 110 in conjunction with a displayed cursor.
- a cursor or pointer may be displayed on a display screen or touch screen and the cursor or pointer may be controlled via touch input on the touchpad to interact with graphical objects on the display screen.
- a user may interact directly with objects on the touch screen, with or without a cursor or pointer being displayed on the touch screen.
- Feedback may be provided to the user via bus 118 in response to or based on the touch or near touches on a touch input component 110 .
- Feedback may be transmitted optically, mechanically, electrically, olfactory, acoustically, or the like or any combination thereof and in a variable or non-variable manner.
Abstract
Systems, methods, and computer-readable media for securely conducting online payments with a secure element of an electronic device are provided. In one example embodiment, a method includes, inter alia, at an electronic device, generating first data that includes payment card data, generating second data by encrypting the first data and merchant information with a first key, transmitting to a commercial entity subsystem the generated second data, receiving third data that includes the first data encrypted with a second key that is associated with the merchant information, and transmitting the received third data to a merchant subsystem that is associated with the merchant information, where the first key is not accessible to the merchant subsystem, and where the second key is not accessible to the electronic device. Additional embodiments are also provided.
Description
- This application claims the benefit of prior filed U.S. Provisional Patent Application No. 61/884,926, filed Sep. 30, 2013, of prior filed U.S. Provisional Patent Application No. 61/989,107, filed May 6, 2014, of prior filed U.S. Provisional Patent Application No. 62/002,721, filed May 23, 2014, and of prior filed U.S. Provisional Patent Application No. 62/004,182, filed May 28, 2014, each of which is hereby incorporated by reference herein in its entirety.
- This disclosure relates to using a secure element of an electronic device for online payments.
- Portable electronic devices (e.g., cellular telephones) may be provided with near field communication (“NFC”) components for enabling contactless proximity-based communications with another entity. Often times, these communications are associated with financial transactions or other secure data transactions that require the electronic device to access and share a commerce credential, such as a credit card credential, with the other entity in a contactless proximity-based communication. However, secure use of such a commerce credential by the electronic device for an online transaction has heretofore been infeasible.
- This document describes systems, methods, and computer-readable media for using a secure element of an electronic device for online payments.
- As an example, a method may include, at an electronic device, generating first data that includes payment card data, generating second data by encrypting the first data and merchant information with a first key, transmitting to a commercial entity subsystem the generated second data, receiving third data that includes the first data encrypted with a second key that is associated with the merchant information, and transmitting the received third data to a merchant subsystem that is associated with the merchant information, where the first key is not accessible to the merchant subsystem, and where the second key is not accessible to the electronic device.
- As another example, an electronic device may include a communication component, an application processor configured to access an online resource of a merchant server, and a secure element configured to store credential data, a credential key, and an access key. The secure element is configured to generate first data including the credential data encrypted with the credential key. The secure element is configured to generate second data including the first data encrypted with the access key. The application processor is configured to identify merchant information from the accessed online resource. The communication component is configured to transmit to a commercial entity server the generated second data and the identified merchant information.
- As another example, a method may include, at a commercial entity subsystem, receiving first data from an electronic device, wherein the first data includes credential information and merchant information indicative of a merchant subsystem, decrypting the first data using an access key, identifying a merchant key based on the merchant information from the first data, encrypting the credential information using the identified merchant key, and transmitting second data to at least one of the merchant subsystem and the electronic device, wherein the second data includes the credential information encrypted with the identified merchant key.
- As yet another example, a method may include, at an electronic device, generating first data by encrypting credential data with a credential key, generating second data by encrypting the first data with an access key, accessing an online resource of a merchant server, identifying merchant information indicative of the merchant server from the accessed online resource, and transmitting to a commercial entity server the generated second data and the identified merchant information.
- As yet another example, a method may include receiving, with an electronic device, first potential transaction data from an online resource of a merchant, automatically identifying, with the electronic device, additional information local to the electronic device based on the received first potential transaction data, and providing, with the electronic device, the identified additional information and at least a portion of the received first potential transaction data to a user of the electronic device.
- As yet another example, a method may include, at an electronic device, receiving transaction data from an online resource of a merchant server, accessing first data that includes credential data, and generating second data by encrypting the first data and a merchant identifier of the received transaction data with an access key.
- As yet another example, a method may include receiving, with a commercial entity server, first data and second data from an electronic device, wherein the first data may include credential information and a first merchant identifier encrypted by an access key, and wherein the second data may include a second merchant identifier. The method may also include identifying, with the commercial entity server, a merchant key based on at least one of the first merchant identifier and the second merchant identifier.
- As another example, a method may include generating, with an electronic device, first data that includes credential data, generating, with the electronic device, second data by encrypting the first data with an access key, transmitting, with the electronic device, to a commercial entity server the generated second data and merchant information, receiving, with the electronic device, third data that includes the first data encrypted with a merchant key that is associated with the merchant information, and transmitting, with the electronic device, the received third data to a merchant server that is associated with the merchant information, where the merchant key is not accessible to the electronic device.
- As another example, a method may include accessing credit card information from a secure element of an electronic device and facilitating an online payment transaction using the accessed credit card information.
- As another example, a method may include accessing payment information from a secure element of an electronic device and communicating the accessed payment information from the electronic device to a server over the internet.
- This Summary is provided merely to summarize some example embodiments, so as to provide a basic understanding of some aspects of the subject matter described in this document. Accordingly, it will be appreciated that the features described in this Summary are merely examples and should not be construed to narrow the scope or spirit of the subject matter described herein in any way. Other features, aspects, and advantages of the subject matter described herein will become apparent from the following Detailed Description, Figures, and Claims.
- The discussion below makes reference to the following drawings, in which like reference characters may refer to like parts throughout, and in which:
-
FIG. 1 is a schematic view of an illustrative system for using a secure element of an electronic device for online payments; -
FIG. 1A is another more detailed schematic view of the system ofFIG. 1 ; -
FIG. 2 is a more detailed schematic view of the electronic device of the system ofFIGS. 1 and 1A ; -
FIG. 3 is another more detailed schematic view of the electronic device ofFIGS. 1-2 ; -
FIG. 4 is a front view of the electronic device ofFIGS. 1-3 ; -
FIGS. 5-13 are flowcharts of illustrative processes for conducting online payments; and -
FIGS. 14A-14E are front views of screens of a graphical user interface of the electronic device ofFIGS. 1-4 illustrating processes for conducting online payments. - A credential provisioned on a secure element of an electronic device may be used for securely conducting an online financial transaction between the electronic device and a merchant. The credential may be encrypted by the secure element using an access key not available to any non-secure portion of the electronic device. That encrypted credential and information identifying the merchant for a proposed online financial transaction (e.g., merchant information obtained by the device via a merchant application or via a merchant's website) may be transmitted by the electronic device to a commercial entity that may also have access to the access key. The commercial entity may decrypt the received credential data using the access key and may re-encrypt the credential data using a merchant key known by the commercial entity. Such a merchant key may be determined by the commercial entity through use of the merchant identification information received from the electronic device (e.g., using a look-up table that may include various merchant keys for various merchants known by the commercial entity). The re-encrypted credential data may then be transmitted from the commercial entity to the merchant, either directly or via the electronic device, and the merchant may decrypt the credential data using the merchant key, which may be known to the merchant. The commercial entity may add a layer of security to the online financial transaction between the electronic device and the merchant. The commercial entity may be privy not only to the access key available at the secure element of the device but also to the merchant key available to the merchant. Therefore, the commercial entity may be in a unique position to manage any online transactions between the secure element of the device and the merchant, while at the same time not being privy to the credential data being used (e.g., as the commercial entity may not have access to a credential key with which the credential data is encrypted by the secure element). A secure element of the electronic device may encrypt a merchant identifier along with the appropriate credential information using the access key, where such a merchant identifier may first be received from the online resource and then reformatted (e.g., cryptographically hashed) by the secure element in order to be properly encrypted along with the credential information on the secure element. The electronic device may be configured to auto-populate first information requested by the online resource (e.g., shipping information by leveraging a contact database on the electronic device), and the online resource may be configured to automatically update information about a potential transaction based on such auto-populated data (e.g., update a total transaction price based on new shipping information).
-
FIGS. 1 and 1A show asystem 1 in which one or more credentials may be provisioned onto anelectronic device 100 from afinancial institution subsystem 350 in conjunction with acommercial entity subsystem 400, and in which such credentials may be used byelectronic device 100 for conducting an online financial transaction with amerchant subsystem 200 and an associated acquiringbank subsystem 300.FIGS. 2-4 show further details with respect to particular embodiments ofelectronic device 100 ofsystem 1,FIGS. 5-13 are flowcharts of illustrative processes for securely using a credential on an electronic device in an online financial transaction, whileFIGS. 14A-14E show example screens 190 a-190 e that may be representative of a graphical user interface ofelectronic device 100 during such an online financial transaction. -
FIG. 1 is a schematic view of anillustrative system 1 that may allow for the secure use of a credential on an electronic device in an online financial transaction (e.g., an online payment). For example, as shown inFIG. 1 ,system 1 may include an end-userelectronic device 100 as well as acommercial entity subsystem 400 and afinancial institution subsystem 350 for securely provisioning one or more credentials onelectronic device 100. Moreover, as shown inFIG. 1 ,system 1 may also include amerchant subsystem 200 for receiving contactless proximity-based communications (e.g., near field communications) and/or online-based communications 670 (e.g., in-app network telecommunications) fromelectronic device 100 for enabling payments based on such provisioned credentials between a user ofelectronic device 100 and a merchant ofmerchant subsystem 200.System 1 may also include an acquiringbank subsystem 300 that may utilize such contactless proximity-based communications and/or such online-basedcommunications 670 for completing a financial transaction withfinancial institution subsystem 350. -
System 1 may include acommunications path 15 for enabling communication betweendevice 100 andmerchant subsystem 200, acommunications path 25 for enabling communication betweenmerchant subsystem 200 and acquiringbank subsystem 300, acommunications path 35 for enabling communication between acquiringbank subsystem 300 andfinancial institution subsystem 350, acommunications path 45 for enabling communication between apayment network subsystem 360 offinancial institution subsystem 350 and an issuingbank subsystem 370 offinancial institution subsystem 350, acommunications path 55 for enabling communication betweenfinancial institution subsystem 350 andcommercial entity subsystem 400, acommunications path 65 for enabling communication betweencommercial entity subsystem 400 andelectronic device 100, acommunications path 75 for enabling communication betweenfinancial institution subsystem 350 andelectronic device 100, and acommunications path 85 for enabling communication betweencommercial entity subsystem 400 andmerchant subsystem 200. One or more ofpaths paths paths - Referring now to
FIG. 1A ,FIG. 1A shows a more detailed view of thesystem 1 described above with respect toFIG. 1 . As shown inFIG. 1A , for example,electronic device 100 may include aprocessor 102, acommunications component 106, and/or a near field communication (“NFC”)component 120.NFC component 120 may include a secure element that may be configured to provide a tamper-resistant platform (e.g., as a single or multiple chip secure microcontroller) that may be capable of securely hosting applications and their confidential and cryptographic data (e.g., credential applets and associated credential keys, such as acredential key 155 a′ and an access key 155 a, and/or an issuer security domain (“ISD”)key 156 k, as shown inFIG. 1A ) in accordance with rules and security requirements that may be set forth by a set of well-identified trusted authorities (e.g., an authority of financial institution subsystem and/or an industry standard, such as GlobalPlatform). As described below in more detail, a credential applet ofNFC component 120 may be configured to provide sufficient detail for identifying a funding account or other financial instrument or credit source, where such a credential applet may be used byelectronic device 100 in one or more communications withmerchant subsystem 200 for facilitating a financial transaction.NFC component 120 may be configured to communicate such credential information as a contactless proximity-based communication (e.g., near field communication) with merchant subsystem 200 (e.g., with a merchant terminal ofmerchant subsystem 200, where the merchant terminal may be located at a brick and mortar store or any physical location at which a user ofelectronic device 100 may use a credential stored onelectronic device 100 to conduct a financial transaction with a proximately located merchant terminal via a contactless proximity-based communication). Alternatively or additionally,communications component 106 may be provided to allowdevice 100 to communicate any suitable data (e.g., credential information) with one or more other electronic devices or servers or subsystems (e.g., one or more subsystems or other components of system 1) using any suitable wired or wireless protocol (e.g., via one or more ofcommunications paths Processor 102 ofelectronic device 100 may include any processing circuitry that may be operative to control the operations and performance of one or more components ofelectronic device 100. For example,processor 102 may be configured to run one or more applications on device 100 (e.g., online resource or merchant application 113) that may at least partially dictate the way in which online-basedcommunications 670 including credential information ofNFC component 120 may be communicated betweencommunications component 106 ofdevice 100 and amerchant server 210 of merchant subsystem 200 (e.g., to conduct a financial transaction with a remote merchant server ofmerchant subsystem 200 over the internet or any other suitable network that may be provided by communications path 15). -
Merchant server 210 ofmerchant subsystem 200 ofFIG. 2 may include any suitable component or subsystem configured to receive an online-basedcommunication 670 fromcommunications component 106 ofelectronic device 100 via acommunication path 15 betweendevice 100 andserver 210. Such an online-basedcommunication 670 may be configured to communicate commerce credential data from a secure element ofNFC component 120 of device 100 (e.g., credit card credential information from an enabled applet of a credential supplemental security domain (“SSD”), as described in more detail below) toserver 210 via any suitable communications protocol supported bycommunications component 106 of device 100 (e.g., Wi-Fi, Bluetooth™, cellular, wired network protocols, etc.). Online-basedcommunication 670 may be provided within any suitable online-context, such as when a user ofdevice 100 is communicating withmerchant server 210 to conduct a financial transaction via athird party application 113 running ondevice 100 that may be managed bymerchant server 210 or via an internet application or web browser (e.g., Safari™ by Apple Inc.) running ondevice 100 that may be pointed to a uniform resource locator (“URL”) whose target or web resource may be managed bymerchant server 210. Accordingly, it is noted that online-basedcommunication 670 betweenmerchant server 210 andelectronic device 100 may occur wirelessly and/or via wired paths (e.g., over the internet).Merchant server 210 may be provided by a merchant of merchant subsystem 200 (e.g., as a webserver to host website data and/or manage third party application data). Although not shown,merchant subsystem 200 may also include a merchant processor component that may be the same as or similar to aprocessor component 102 ofelectronic device 100, a merchant communications component that may be the same as or similar to acommunications component 106 ofelectronic device 100, a merchant I/O interface that may be the same as or similar to an I/O interface 114 ofelectronic device 100, a merchant bus that may be the same as or similar to abus 118 ofelectronic device 100, a merchant memory component that may be the same as or similar to a memory component 104 ofelectronic device 100, and/or a merchant power supply component that may be the same as or similar to apower supply component 108 ofelectronic device 100. -
Financial institution subsystem 350 may include a payment network subsystem 360 (e.g., a payment card association or a credit card association) and/or an issuingbank subsystem 370. For example, issuingbank subsystem 370 may be a financial institution that may assume primary liability for a consumer's capacity to pay off debts they may incur with a specific credential. Each specific credential applet ofNFC component 120 may be associated with a specific payment card that may be electronically linked to an account or accounts of a particular user. Various types of payment cards are suitable, including credit cards, debit cards, charge cards, stored-value cards, fleet cards, gift cards, and the like. The commerce credential of a specific payment card may be provisioned on electronic device 100 (e.g., as a credential of a credential supplemental security domain ofNFC component 120, as described below) by issuingbank subsystem 370 for use in a commerce credential data communication (e.g., a contactless proximity-based communication and/or an online-based communication 670) withmerchant subsystem 200. Each credential may be a specific brand of payment card that may be branded by apayment network subsystem 360.Payment network subsystem 360 may be a network of various issuingbanks 370 and/or various acquiring banks that may process the use of payment cards (e.g., commerce credentials) of a specific brand. - In order for a financial transaction to occur within
system 1, at least one commerce credential must be securely provisioned on a secure element ofNFC component 120 ofelectronic device 100. For example, such a commerce credential may be at least partially provisioned on a secure element ofNFC component 120 ofelectronic device 100 directly from financial institution subsystem 350 (e.g., ascredential data 654 via acommunication path 75 betweenfinancial institution subsystem 350 anddevice 100, which may be passed toNFC component 120 via communications component 106). Additionally or alternatively, such a commerce credential may be at least partially provisioned on a secure element ofNFC component 120 ofelectronic device 100 fromfinancial institution subsystem 350 via commercial entity subsystem 400 (e.g., ascredential data 654 via acommunication path 55 betweenfinancial institution subsystem 350 andcommercial entity subsystem 400, which may be passed todevice 100 ascredential data 654 via acommunication path 65 between aserver 410 ofcommercial entity subsystem 400 andcommunications component 106 ofdevice 100, which may then be passed toNFC component 120 from communications component 106).Credential data 654 viapath 75 and/or viapath 65 may be provisioned on a secure element ofdevice 100 as at least a portion or all of a credential supplemental security domain ofNFC component 120 and may include a credential applet and/or a credential key, such ascredential key 155 a′. As shown inFIG. 1A , for example,financial institution subsystem 350 may also have access tocredential key 155 a′ (e.g., for decrypting data encrypted bydevice 100 usingcredential key 155 a′).Financial institution subsystem 350 may be responsible for management ofcredential key 155 a′, which may include the generation, exchange, storage, use, and replacement of such a key.Financial institution subsystem 350 may store its version ofcredential key 155 a′ in a secure element offinancial institution subsystem 350. -
Commercial entity subsystem 400 may be provided as an intermediary betweenelectronic device 100 andfinancial institution subsystem 350, wherecommercial entity subsystem 400 may be configured to provide a new layer of security and/or to provide a more seamless user experience when a credential is being provisioned on a secure element ofdevice 100 and/or when such a provisioned credential is being used as part of a commerce credential data communication (e.g., as part of an online-based communication 670) betweendevice 100 andmerchant subsystem 200.Commercial entity subsystem 400 may be provided by a specific commercial entity that may offer various services to a user ofdevice 100 via user-specific log-in information to a user-specific account with that commercial entity (e.g., via user-specific identification and password combinations). As just one example,commercial entity subsystem 400 may be provided by Apple Inc. of Cupertino, Calif., which may also be a provider of various services to users of device 100 (e.g., the iTunes™ Store for selling/renting media to be played bydevice 100, the Apple App Store™ for selling/renting applications for use ondevice 100, the Apple iCloud™ Service for storing data fromdevice 100, the Apple Online Store for buying various Apple products online, etc.), and which may also be a provider, manufacturer, and/or developer ofdevice 100 itself (e.g., whendevice 100 is an iPod™, iPad™, iPhone™, or the like) and/or of an operating system (e.g., device application 103) ofdevice 100. The commercial entity that may provide commercial entity subsystem 400 (e.g., Apple Inc.) may be distinct and independent from any financial entity offinancial institution subsystem 350. For example, the commercial entity that may providecommercial entity subsystem 400 may be distinct and independent from anypayment network subsystem 360 or issuingbank subsystem 370 that may furnish and manage any credit card or other commerce credential to be provisioned onuser device 100. Additionally or alternatively, the commercial entity that may provide commercial entity subsystem 400 (e.g., Apple Inc.) may be distinct and independent from any merchant ofmerchant subsystem 200. For example, the commercial entity that may providecommercial entity subsystem 400 may be distinct and independent from any merchant ofmerchant subsystem 200 that may provide a merchant terminal for NFC communications, athird party application 113, and/or any other aspect ofmerchant subsystem 200. Such a commercial entity may leverage its potential ability to configure or control various components of device 100 (e.g., software and/or hardware components ofdevice 100 when that commercial entity at least partially produces or manages device 100) in order to provide a more seamless user experience for a user ofdevice 100 when he or she wants to provision a credential offered byfinancial institution subsystem 350 onuser device 100 and/or when such a provisioned credential is being used as part of a commerce credential data communication with merchant subsystem 200 (e.g., as part of an online-based communication 670). For example, in some embodiments,device 100 may be configured to communicate withcommercial entity subsystem 400 seamlessly and transparently to a user of device 100 (e.g., via communications path 65) for sharing or receiving certain data that may enable a higher level of security (e.g., during an online-based commerce credential data communication betweendevice 100 and merchant subsystem 200). - In addition to at least one commerce credential being provisioned on a secure element of
NFC component 120 of electronic device 100 (e.g., as a portion of a credential SSD withcredential key 155 a′), at least one access SSD with anaccess key 155 b may also be provisioned on the secure element ofNFC component 120 ofdevice 100 in order to more securely enabledevice 100 to conduct a financial transaction withmerchant subsystem 200. For example, an access SSD may be at least partially provisioned on a secure element ofNFC component 120 ofelectronic device 100 directly from commercial entity subsystem 400 (e.g., asaccess data 652 viacommunication path 65 betweenserver 410 ofcommercial entity subsystem 400 andcommunications component 106 ofdevice 100, which may then be passed toNFC component 120 from communications component 106).Access data 652 viapath 65 may be provisioned on a secure element ofdevice 100 as at least a portion or all of an access SSD and may include an access applet and/or access key 155 b. As shown inFIG. 1A ,commercial entity subsystem 400 may also have access to access key 155 b (e.g., for decrypting data encrypted bydevice 100 usingaccess key 155 b).Commercial entity subsystem 400 may be responsible for management of access key 155 b, which may include the generation, exchange, storage, use, and replacement of such a key.Commercial entity subsystem 400 may store its version of access key 155 b in a secure element ofcommercial entity subsystem 400. An access SSD ofNFC component 120 with access key 155 b may be configured to determine intent and local authentication of a user of device 100 (e.g., via one ormore input components 110 ofdevice 100, such as a biometric input component) and, in response to such a determination, may be configured to enable another particular SSD for conducting a payment transaction (e.g., with a credential of a credential SSD of NFC component 120). By storing such an access SSD within a secure element ofdevice 100, its ability to reliably determine user intent for and authentication of a financial transaction may be increased. Moreover, as described in more detail below,access key 155 b of such an access SSD ofNFC component 120 may be leveraged to provide increased encryption to financial transaction data that may be communicated outside of the secure element ofdevice 100. Additionally or alternatively, as described below,access data 652 may include an issuer security domain (“ISD”)key 156 k for an ISD of the secure element ofelectronic device 100, which may also be maintained bycommercial entity subsystem 400, and may be used in addition to or as an alternative to access key 155 b as described below. - As mentioned, in addition to at least one credential SSD and at least one access SSD being provisioned on a secure element of
electronic device 100, at least one third party application (e.g., application 113) may be accessed bydevice 100 in order to enable a commerce credential data communication (e.g., an online-based communication 670) betweendevice 100 andmerchant subsystem 200. First, such anapplication 113 may be approved or otherwise enabled bycommercial entity subsystem 400 beforeapplication 113 may be accessible bydevice 100. For example, anapplication store 420 of commercial entity subsystem 400 (e.g., the Apple App Store™) may receive at least some date representative ofapplication 113 frommerchant subsystem 200 viacommunication path 85. Moreover, in some embodiments,commercial entity subsystem 400 may generate or otherwise assign amerchant key 157 forapplication 113 and provide such amerchant key 157 to merchant subsystem 200 (e.g., via path 85). Alternatively,merchant subsystem 200 may generate or otherwise assign amerchant key 157 forapplication 113 and provide such amerchant key 157 to commercial entity subsystem 400 (e.g., via path 85). Eithermerchant subsystem 200 orcommercial entity subsystem 400 may be responsible for management ofmerchant key 157, which may include the generation, exchange, storage, use, and replacement of such a key. No matter how or where such amerchant key 157 is generated and managed, bothmerchant subsystem 200 andcommercial entity subsystem 400 may store a version of merchant key 157 (e.g., in a respective secure element ofmerchant subsystem 200 and commercial entity subsystem 400). In some embodiments, such amerchant key 157 may be specifically associated withmerchant application 113, while, in other embodiments,merchant key 157 may be specifically associated with a merchant ofmerchant subsystem 200 such thatmerchant key 157 may be associated with multiple third party applications operated by the same merchant ofmerchant subsystem 200. A table 430 or any other suitable data structure or source of information accessible tocommercial entity subsystem 400 may be provided for associating aparticular merchant key 157 with aparticular merchant application 113 or merchant entity. Table 430 may enablecommercial entity subsystem 400 to determine and utilize anappropriate merchant key 157 for providing a layer of security to a commerce credential data communication (e.g., an online-based communication 670) betweendevice 100 and merchant subsystem 200 (e.g., when a user ofdevice 100 is communicating withmerchant server 210 to conduct a financial transaction via athird party application 113 associated with that merchant key 157), as described in more detail below.Device 100 may be configured to access application 113 (e.g., fromapplication store 420 via communication path 65) and run application 113 (e.g., with processor 102). Alternatively or additionally, amerchant key 157 may be associated with a merchant's website (e.g., one or more URLs) rather than or in addition to a merchant's third party application (e.g., application 113). For example, a merchant ofmerchant subsystem 200 may work withcommercial entity subsystem 400 to associate a particular merchant website with aparticular merchant key 157 within table 430, which may enablecommercial entity subsystem 400 to determine and utilize anappropriate merchant key 157 for providing a layer of security to a commerce credential data communication (e.g., an online-based communication 670) betweendevice 100 and merchant subsystem 200 (e.g., when a user ofdevice 100 is communicating withmerchant server 210 to conduct a financial transaction via an internet application or web browser running ondevice 100 that may be pointed to a URL whose target or web resource may be associated with that merchant key 157).Device 100 may be configured to access such a URL, for example, frommerchant server 210 viacommunication path 15 using an internet application ondevice 100. - Referring now to
FIG. 2 ,FIG. 2 shows a more detailed view ofelectronic device 100 ofsystem 1 described above with respect toFIGS. 1 and 1A . As shown inFIG. 2 , for example,electronic device 100 may include aprocessor 102, memory 104,communications component 106,power supply 108,input component 110, output component 112, antenna 116, and near field communication (“NFC”)component 120.Electronic device 100 may also include abus 118 that may provide one or more wired or wireless communication links or paths for transferring data and/or power to, from, or between various other components ofdevice 100.Electronic device 100 may also be provided with a housing 101 that may at least partially enclose one or more of the components ofdevice 100 for protection from debris and other degrading forces external todevice 100. In some embodiments, one or more components ofelectronic device 100 may be combined or omitted. Moreover,electronic device 100 may include other components not combined or included inFIG. 2 . For example,electronic device 100 may include any other suitable components or several instances of the components shown inFIG. 2 . For the sake of simplicity, only one of each of the components is shown inFIG. 2 . One ormore input components 110 may be provided to permit a user to interact or interface withdevice 100 and/or one or more output components 112 may be provided to present information (e.g., graphical, audible, and/or tactile information) to a user ofdevice 100. It should be noted that one or more input components and one or more output components may sometimes be referred to collectively herein as an input/output (“I/O”) component or I/O interface 114 (e.g.,input component 110 and output component 112 as I/O component or I/O interface 114). For example,input component 110 and output component 112 may sometimes be a single I/O component 114, such as a touch screen, that may receive input information through a user's touch of a display screen and that may also provide visual information to a user via that same display screen.Processor 102 ofelectronic device 100 may include any processing circuitry that may be operative to control the operations and performance of one or more components ofelectronic device 100. For example,processor 102 may receive input signals frominput component 110 and/or drive output signals through output component 112. As shown inFIG. 2 ,processor 102 may be used to run one or more applications, such as anapplication 103 and/or anapplication 113. As one example,application 103 may be an operating system application whileapplication 113 may be a third party application (e.g., an application associated with a merchant of merchant subsystem 200). -
NFC component 120 may be any suitable proximity-based communication mechanism that may enable contactless proximity-based transactions or communications betweenelectronic device 100 and a merchant terminal (e.g., a merchant payment terminal) ofmerchant subsystem 200.NFC component 120 may include any suitable modules for enabling contactless proximity-based communication betweenelectronic device 100 and such a merchant terminal. As shown inFIG. 2 , for example,NFC component 120 may include anNFC device module 130, anNFC controller module 140, and/or anNFC memory module 150.NFC device module 130 may include anNFC data module 132, an NFC antenna 134, and an NFC booster 136.NFC data module 132 may be configured to contain, route, or otherwise provide any suitable data that may be transmitted byNFC component 120 to a merchant terminal as part of a contactless proximity-based or NFC communication. Additionally or alternatively,NFC data module 132 may be configured to contain, route, or otherwise receive any suitable data that may be received byNFC component 120 from a merchant terminal as part of a contactless proximity-based communication.NFC controller module 140 may include at least oneNFC processor module 142.NFC processor module 142 may operate in conjunction withNFC device module 130 to enable, activate, allow, and/or otherwise controlNFC component 120 for communicating an NFC communication betweenelectronic device 100 and a merchant terminal.NFC controller module 140 may include at least oneNFC processor module 142 that may be used to run one or more applications, such as an NFC low power mode orwallet application 143 that may help dictate the function ofNFC component 120.NFC memory module 150 may operate in conjunction withNFC device module 130 and/orNFC controller module 140 to allow for NFC communications betweenelectronic device 100 andmerchant subsystem 200.NFC memory module 150 may be tamper resistant and may provide at least a portion of a secure element 145 (see, e.g.,FIG. 3 ). For example, such a secure element may be configured to provide a tamper-resistant platform (e.g., as a single or multiple chip secure microcontroller) that may be capable of securely hosting applications and their confidential and cryptographic data (e.g., applets 153 and keys 155) in accordance with rules and security requirements that may be set forth by a set of well-identified trusted authorities (e.g., an authority of financial institution subsystem and/or an industry standard, such as GlobalPlatform). - As shown in
FIG. 2 , for example,NFC memory module 150 may include one or more of an issuer security domain (“ISD”) 152 and a supplemental security domain (“SSD”) 154 (e.g., a service provider security domain (“SPSD”), a trusted service manager security domain (“TSMSD”), etc.), which may be defined and managed by an NFC specification standard (e.g., GlobalPlatform). For example,ISD 152 may be a portion ofNFC memory module 150 in which a trusted service manager (“TSM”) or issuing financial institution (e.g., financial institution subsystem 350) may store keys and/or other suitable information for creating or otherwise provisioning one or more credentials (e.g., credentials associated with various credit cards, bank cards, gift cards, access cards, transit passes, etc.) on electronic device 100 (e.g., via communications component 106), for credential content management, and/or security domain management. A credential may include credential data that may be assigned to a user/consumer and that may be stored securely onelectronic device 100, such as a credit card payment number.NFC memory module 150 may include at least two SSDs 154 (e.g., at least afirst SSD 154 a and asecond SSD 154 b). For example,first SSD 154 a (e.g., acredential SSD 154 a) may be associated with a specific credential (e.g., a specific credit card credential or a specific public transit card credential provisioned by financial institution subsystem 350) that may provide specific privileges or payment rights toelectronic device 100, whilesecond SSD 154 b (e.g., anaccess SSD 154 b) may be associated with a commercial entity (e.g., commercial entity ofcommercial entity subsystem 400, which may be a controlling entity for device 100) that may control access ofdevice 100 to a specific credential of another SSD (e.g.,first SSD 154 a), for example, to provide specific privileges or payment rights toelectronic device 100. Alternatively, each one offirst SSD 154 a andsecond SSD 154 b may be associated with a respective specific credential (e.g., a specific credit card credential or a specific public transit card credential provisioned by financial institution subsystem 350) that may provide specific privileges or payment rights toelectronic device 100. Each SSD 154 may include and/or be associated with at least one applet 153 (e.g.,SSD 154 a withapplet 153 a andSSD 154 b withapplet 153 b). For example, an applet 153 of an SSD 154 may be an application that may run on a secure element of NFC component 120 (e.g., in a GlobalPlatform environment). Each applet 153 may also include and/or be associated with at least one of its own keys 155 (e.g.,applet 153 a with at least one key 155 a andapplet 153 b with at least one key 155 b). - A key 155 of an SSD 154 may be a piece of information that can determine a functional output of a cryptographic algorithm or cipher. For example, in encryption, a key may specify a particular transformation of plaintext into ciphertext, or vice versa during decryption. Keys may also be used in other cryptographic algorithms, such as digital signature schemes and message authentication codes. Each key and applet may be loaded on the secure element of
device 100 by a TSM or an authorized agent or pre-loaded on the secure element when first provided ondevice 100. As one example, whilecredential SSD 154 a may be associated with a particular credit card credential, that particular credential may only be communicated as a commerce credential data communication to merchant subsystem 200 (e.g., as a contactless proximity-based communication to a merchant terminal and/or as an online-basedcommunication 670 to a merchant server 210) from a secure element of device 100 (e.g., from NFC component 120) for a financial transaction whenapplet 153 a of thatcredential SSD 154 a has been enabled or otherwise activated or unlocked for such use. - Security features may be provided for enabling use of
NFC component 120 that may be particularly useful when transmitting confidential payment information, such as credit card information or bank account information of a credential, fromelectronic device 100 tomerchant subsystem 200. Such security features also may include a secure storage area that may have restricted access. For example, user authentication via personal identification number (“PIN”) entry or via user interaction with a biometric sensor may need to be provided to access the secure storage area. As an example, anaccess SSD 154 b may leverageapplet 153 b to determine whether such authentication has occurred before allowing other SSDs 154 (e.g., acredential SSD 154 a) to be used for communicating its credential information. In certain embodiments, some or all of the security features may be stored withinNFC memory module 150. Further, security information, such as an authentication key, for communicating commerce credential data withmerchant subsystem 200 may be stored withinNFC memory module 150. In certain embodiments,NFC memory module 150 may include a microcontroller embedded withinelectronic device 100. As just one example,applet 153 b ofaccess SSD 154 b may be configured to determine intent and local authentication of a user of device 100 (e.g., via one ormore input components 110, such as a biometric input component) and, in response to such a determination, may be configured to enable another particular SSD for conducting a payment transaction (e.g., with a credential ofcredential SSD 154 a). - Referring now to
FIG. 3 ,FIG. 3 shows another detailed view of a portion ofelectronic device 100 ofsystem 1 described above with respect toFIGS. 1-2 . As shown inFIG. 3 , for example, asecure element 145 ofNFC component 120 may includeSSD 154 a, which may include or be associated withapplet 153 a, which may include an access key 155 a and/or acredential key 155 a′, andSSD 154 b, which may include or be associated withapplet 153 b, which may include anaccess key 155 b and/or acredential key 155 b′. In some embodiments, a specific supplemental security domain (“SSD”) 154 (e.g., one ofSSDs electronic device 100. Each SSD 154 may have its own manager key 155 (e.g., a respective one of keys 155 ak and 155 bk) that may need to be activated to enable a function of that SSD 154 for use byNFC device module 130. Additionally or alternatively, each SSD 154 may include and/or be associated with at least one of its own credential applications or credential applets (e.g., a Java card applet instances) associated with a particular commerce credential (e.g.,credential applet 153 a ofSSD 154 a may be associated with a first commerce credential andcredential applet 153 b ofSSD 154 b may be associated with a second commerce credential), where a credential applet may have its own access key (e.g., access key 155 a forcredential applet 153 a and access key 155 b forcredential applet 153 b) and/or its own credential key (e.g.,credential key 155 a′ forcredential applet 153 a andcredential key 155 b′ forcredential applet 153 b), and where a credential applet may need to be activated to enable its associated commerce credential for use byNFC device module 130 as an NFC communication and/or as an online-basedcommunications 670 betweenelectronic device 100 andmerchant subsystem 200. In some embodiments, a credential key of a credential applet (e.g.,credential key 155 a′ forcredential applet 153 a and/orcredential key 155 b′ forcredential applet 153 b) may be generated byfinancial institution subsystem 350 that may be responsible for such a credential and may be accessible by that financial institution subsystem 350 (e.g., as shown inFIG. 1A ) for enabling secure transmission of that credential applet betweensecure element 145 andfinancial institution subsystem 350. Additionally or alternatively, an access key of a credential applet (e.g., access key 155 a forcredential applet 153 a and/or access key 155 b forcredential applet 153 b) may be generated bycommercial entity subsystem 400 and may be accessible by commercial entity subsystem 400 (e.g., as shown inFIG. 1A ) for enabling secure transmission of that credential applet betweensecure element 145 andcommercial entity subsystem 400. - Additionally or alternatively, as shown in
FIG. 3 ,secure element 145 may includeISD 152, which may include an ISD key 156 k that may also be known to a trusted service manager associated with that security domain (e.g.,commercial entity subsystem 400, as shown inFIG. 1A ). ISD key 156 k may be leveraged bycommercial entity subsystem 400 andelectronic device 100 similarly to and/or instead of access key 155 a and/or access key 155 b for enabling secure transmissions betweencommercial entity subsystem 400 andsecure element 145 ofelectronic device 100. Moreover, as shown inFIG. 3 , and as described below in more detail, various data may be communicated betweenprocessor 102 andsecure element 145. For example,processor 102 ofdevice 100 may be configured to run adevice application 103 that may communicate information with amerchant application 113 ofprocessor 102 as well assecure element 145, an I/O component 114 a (e.g., for receiving I/O input data 115 i and/or for transmitting I/O output data 115 o), and/orcommunications component 106. - Additionally or alternatively, as shown in
FIG. 3 ,secure element 145 may include a controlling authority security domain (“CASD”) 158, which may be a special purpose security domain that may be configured to serve as a third-party on-element root of trust. An associated application ofCASD 158 may be configured to provide on-element confidential key generation as a global service to other applications and/or to a specific management layer (e.g., a GlobalPlatform management layer). Confidential key material that may be used withinCASD 158 may be configured such that it cannot be inspected or modified by any entity, including an issuer ofsecure element 145.CASD 158 may be configured to include and/or may be configured to generate and/or otherwise includeCASD access kit 158 k (e.g., a CASD private key (“CASD-SK”), a CASD public key (“CASD-PK”), a CASD certificate (“CASD-Cert.”), and/or a CASD-signing module). For example,CASD 158 may be configured to sign certain data on secure element 145 (e.g., usingCASD access kit 158 k) before providing such data to another portion of device 100 (e.g.,communications component 106 for sharing with other subsystems of system 1). As an example,CASD 158 may be configured to sign any data that is provided bysecure element 145 such that other subsystems (e.g., commercial entity subsystem 400) may be able to confirm that such signed data was signed by secure element 145 (e.g., using an associatedCASD kit 158 k at commercial entity subsystem 400). - Additionally or alternatively, as shown in
FIG. 3 ,secure element 145 may include a contactless registry services (“CRS”) applet orapplication 151 that may be configured to provide local functionality toelectronic device 100 for modifying a life cycle state (e.g., activated, deactivated, locked, etc.) of certain security domain elements and sharing certain output information 115 o about certain security domain elements in certain life cycle states with a user of device 100 (e.g., via a user I/O interface 114 a). Additionally or alternatively,CRS 151 may include a CRS access key 151 k that may also be known to a trusted service manager associated with CRS 151 (e.g.,commercial entity subsystem 400, as shown inFIG. 1A ). CRS access key 151 k may be leveraged bycommercial entity subsystem 400 andelectronic device 100 similarly to and/or instead of access key 155 a and/or access key 155 b for enabling secure transmissions betweencommercial entity subsystem 400 andsecure element 145 ofelectronic device 100. - As shown in
FIG. 4 , and as described below in more detail, a specific example ofelectronic device 100 may be a handheld electronic device, such as an iPhone™, where housing 101 may allow access tovarious input components 110 a-110 i, various output components 112 a-112 c, and various I/O components 114 a-114 d through whichdevice 100 and a user and/or an ambient environment may interface with each other. For example, a touch screen I/O component 114 a may include a display output component 112 a and an associated touch input component 110 f, where display output component 112 a may be used to display a visual or graphic user interface (“GUI”) 180, which may allow a user to interact withelectronic device 100. GUI 180 may include various layers, windows, screens, templates, elements, menus, and/or other components of a currently running application (e.g.,application 103 and/orapplication 113 and/or application 143) that may be displayed in all or some of the areas of display output component 112 a. For example, as shown inFIG. 4 , GUI 180 may be configured to display afirst screen 190 with one or more graphical elements oricons 182 of GUI 180. When aspecific icon 182 is selected,device 100 may be configured to open a new application associated with thaticon 182 and display a corresponding screen of GUI 180 associated with that application. For example, when thespecific icon 182 labeled with a “Merchant App” textual indicator 181 (i.e., specific icon 183) is selected,device 100 may launch or otherwise access a specific third party merchant application and may display screens of a specific user interface that may include one or more tools or features for interacting withdevice 100 in a specific manner (see, e.g.,FIGS. 14A-14E for specific examples of such displays of GUI 180 during use of a merchant application (e.g., application 113) that may be used by a user ofdevice 100 for making an online payment with a credential of NFC component 120 (e.g., a credential ofcredential SSD 154 a)). For each application, screens may be displayed on display output component 112 a and may include various user interface elements. Additionally or alternatively, for each application, various other types of non-visual information may be provided to a user via various other output components 112 ofdevice 100. - To facilitate the following discussion regarding the operation of
system 1 for securely conducting online payments betweendevice 100 and merchant subsystem 200 (e.g., when a credential of a secure element ofdevice 100 is being used as part of an online-basedcommunication 670 betweendevice 100 and merchant subsystem 200), reference is made to one or more processes of one or more flowcharts ofFIGS. 5-7 , to various components ofsystem 1 of the schematic diagrams ofFIGS. 1-4 , and to front views of screens 190-190 e that may be representative of a graphical user interface ofelectronic device 100 during such a payment (e.g., as shown in FIGS. 4 and 14A-14E). The operation described may be achieved with a wide variety of graphical elements and visual schemes. Therefore, the embodiments of FIGS. 4 and 14A-14E are not intended to be limited to the precise user interface conventions adopted herein. Rather, embodiments may include a wide variety of user interface styles. -
FIG. 5 is a flowchart of an illustrative process 500 for securely conducting online payments. Process 500 is shown being implemented byelectronic device 100,merchant subsystem 200, acquiringbank subsystem 300,commercial entity subsystem 400, andfinancial institution subsystem 350. However, it is to be understood that process 500 may be implemented using any other suitable components or subsystems. Process 500 may provide a seamless user experience for securely conducting online payments withmerchant subsystem 200 ondevice 100. Process 500 may begin atstep 502, whereelectronic device 100 may encrypt payment card data with a commercial entity key. For example,secure element 145 may encrypt payment card credential data fromSSD 154 a (e.g.,applet 153 a data) with access key 155 a,access key 155 b,CRS 151 k, and/or ISD key 156 k ofsecure element 145 that may be accessible tocommercial entity subsystem 400. Alternatively or additionally,secure element 145 may sign payment card credential data fromSSD 154 a withCASD 158 k that may be accessible tocommercial entity subsystem 400 atstep 502. Next, atstep 504, process 500 may includeelectronic device 100 communicating the encrypted payment card data ofstep 502 tocommercial entity subsystem 400. For example, such encrypted payment card data may be transmitted fromcommunications component 106 ofelectronic device 100 toserver 410 ofcommercial entity subsystem 400 viacommunications path 65 using any suitable communications protocol. Next, atstep 506, process 500 may includecommercial entity subsystem 400 decrypting the communicated encrypted payment card data ofstep 504 with a commercial entity key and then re-encrypting that decrypted payment card data with a merchant key. For example,server 410 ofcommercial entity subsystem 400 may receive the encrypted payment card data fromelectronic device 100, decrypt that encrypted payment card data with access key 155 a,access key 155 b,CRS 151 k, and/or ISD key 156 k ofcommercial entity subsystem 400 and/or unsign the payment card data withCASD 158 k ofcommercial entity subsystem 400, and re-encrypt that decrypted/unsigned payment card data withmerchant key 157 ofcommercial entity subsystem 400. By communicating the payment card data betweenelectronic device 100 andcommercial entity subsystem 400 in an encrypted form that has been encrypted using a commercial entity key known to bothelectronic device 100 and commercial entity subsystem 400 (e.g., access key 155 a,access key 155 b,CRS 151 k, and/or ISD key 156 k), process 500 may prohibit the communication of such encrypted payment card data from being intercepted and decrypted by an entity that does not have access to the commercial entity key. - Next, at
step 508, process 500 may includecommercial entity subsystem 400 communicating the re-encrypted payment card data ofstep 506 toelectronic device 100. For example, such re-encrypted payment card data may be transmitted fromcommercial entity subsystem 400 tocommunications component 106 ofelectronic device 100 viacommunications path 65 using any suitable communications protocol. Next, atstep 510, process 500 may includeelectronic device 100 communicating the communicated re-encrypted payment card data ofstep 508 tomerchant subsystem 200. For example, such re-encrypted payment card data may be transmitted fromcommunications component 106 ofelectronic device 100 toserver 210 ofmerchant subsystem 200 viacommunications path 15 using any suitable communications protocol. By communicating the payment card data fromcommercial entity subsystem 400 toelectronic device 100 and then tomerchant subsystem 200 in a re-encrypted form that has been re-encrypted using a merchant key known to bothcommercial entity subsystem 400 and merchant subsystem 200 (e.g., merchant key 157), process 500 may prohibit the communication of such re-encrypted payment card data from being decrypted and altered by an entity that does not have access to the merchant key (e.g., electronic device 100). In some embodiments, the data communicated fromelectronic device 100 tocommercial entity subsystem 400 atstep 504 may include a merchant identifier that may be indicative of a merchant subsystem with whichelectronic device 100 is attempting to conduct a financial transaction (e.g., via anonline resource 113 associated with merchant subsystem 200). Such a merchant identifier may be received and utilized bycommercial entity subsystem 400 atstep 506 to identify a particular one of many merchant keys accessible bycommercial entity subsystem 400 to use for the re-encryption of the payment card data at step 506 (e.g., through leveraging table 430 of commercial entity subsystem 400). - After the re-encrypted payment card data communicated from
electronic device 100 atstep 510 has been received bymerchant subsystem 200, process 500 may includemerchant subsystem 200 utilizing that re-encrypted payment card data to execute a financial transaction with acquiringbank 300 and/orfinancial institution subsystem 350 atstep 512. For example,merchant subsystem 200 may decrypt the re-encrypted payment card data with a merchant key accessible to merchant subsystem 200 (e.g., merchant key 157) and may then forward that payment card data to acquiringbank 300 and/or financial institution subsystem 350 (e.g., viacommunications path 25 and/or communications path 35) such that a funding account associated with that payment card data may be identified and used by acquiringbank 300 and/orfinancial institution subsystem 350 to fund a financial transaction. Next, after such a transaction has been executed atstep 512, process 500 may includemerchant subsystem 200 confirming that execution toelectronic device 100 atstep 514. For example,merchant subsystem 200 may communicate any suitable confirmation information toelectronic device 100 viacommunications path 15. - In some embodiments, the payment card data encrypted by
electronic device 100 atstep 502 may first be encrypted by a credential key (e.g.,credential key 155 a′ of secure element 145). Such a credential key may not be accessible bycommercial entity subsystem 400, such that the payment card data of not only the decrypted payment card data ofstep 506 but also the re-encrypted payment card data ofsteps bank 300 and/orfinancial institution subsystem 350 may have access to such a credential key (e.g.,credential key 155 a′ of financial institution subsystem 350), such that when the payment card data is forwarded to acquiringbank 300 and/orfinancial institution subsystem 350 bymerchant subsystem 200 atstep 512, acquiringbank 300 and/orfinancial institution subsystem 350 may decrypt the payment card data using the credential key before being able to identify the funding account associated with that payment card data. Therefore, process 500 may utilize a commercial entity subsystem to add a layer of security to an online financial transaction between an electronic device and a merchant. The commercial entity may be privy not only to a commercial entity key available at a secure element of the device but also to a merchant key available to the merchant. Therefore, the commercial entity may be in a unique position to manage any online transactions between the secure element of the device and the merchant, while at the same time not being privy to the payment card data being used to identify an account for funding that transaction (e.g., as the commercial entity may not have access to a credential key with which the credential data may be initially encrypted by the secure element). - It is understood that the steps shown in process 500 of
FIG. 5 are merely illustrative and that existing steps may be modified or omitted, additional steps may be added, and the order of certain steps may be altered. -
FIG. 6 is a flowchart of an illustrative process 600 for securely conducting online payments. Process 600 is shown being implemented byelectronic device 100,merchant subsystem 200, acquiringbank subsystem 300,commercial entity subsystem 400, andfinancial institution subsystem 350. However, it is to be understood that process 600 may be implemented using any other suitable components or subsystems. Process 600 may provide a seamless user experience for securely conducting online payments withmerchant subsystem 200 ondevice 100. Process 600 may begin atstep 602, where access data 652 (e.g.,access data 652 ofFIG. 1A ) may be provisioned on a secure element ofelectronic device 100 bycommercial entity subsystem 400. For example, at least one access SSD (e.g.,SSD 154 b) may be provisioned on a secure element (e.g., NFC component 120) ofdevice 100 asaccess data 652 fromserver 410 ofcommercial entity subsystem 400 in order to more securely enabledevice 100 to conduct a financial transaction withmerchant subsystem 200. As mentioned,access SSD 154 b may be at least partially provisioned on a secure element ofNFC component 120 ofelectronic device 100 directly from commercial entity subsystem 400 (e.g., asaccess data 652 viacommunication path 65 betweenserver 410 ofcommercial entity subsystem 400 andcommunications component 106 ofdevice 100, which may then be passed toNFC component 120 from communications component 106 (e.g., via bus 118)).Access data 652 viapath 65 may be provisioned on a secure element ofdevice 100 as at least a portion or all of anaccess SSD 154 b and may includeaccess applet 153 b and/or access key 155 b. Step 602 may be at least partially carried out whendevice 100 is initially configured (e.g., bycommercial entity subsystem 400 beforedevice 100 is sold to a user). Alternatively, step 602 may be at least partially carried out in response to a user ofdevice 100 initially setting upNFC component 120. Additionally or alternatively,access data 652 may include ISD key 156 k forISD 152 of the secure element ofelectronic device 100 and may be used in addition to or as an alternative to access key 155 b for enabling secure transmissions betweencommercial entity subsystem 400 andelectronic device 100. Additionally or alternatively,access data 652 may includeCRS 151 k ofCRS 151 and/orCASD 158 k ofCASD 158 ofsecure element 145 ofelectronic device 100 and may be used in addition to or as an alternative to access key 155 b and/or access key 155 a and/or ISD key 156 k for enabling secure transmissions betweencommercial entity subsystem 400 andelectronic device 100. - At
step 604, process 600 may include provisioning credential data 654 (e.g.,credential data 654 ofFIG. 1A ) on a secure element ofelectronic device 100 byfinancial institution subsystem 350, in some embodiments, viacommercial entity subsystem 400. For example,such credential data 654 may be at least partially provisioned on a secure element ofNFC component 120 ofelectronic device 100 directly from financial institution subsystem 350 (e.g., viacommunication path 75 ofFIG. 1A betweenfinancial institution subsystem 350 anddevice 100, which may be passed toNFC component 120 via communications component 106). Additionally or alternatively,such credential data 654 may be at least partially provisioned on a secure element ofNFC component 120 ofelectronic device 100 fromfinancial institution subsystem 350 via commercial entity subsystem 400 (e.g., viacommunication path 55 ofFIG. 1A betweenfinancial institution subsystem 350 andcommercial entity subsystem 400, which may be passed todevice 100 ascredential data 654 viacommunication path 65 ofFIG. 1A betweenserver 410 ofcommercial entity subsystem 400 andcommunications component 106 ofdevice 100, which may then be passed toNFC component 120 from communications component 106 (e.g., via bus 118)).Credential data 654 viapath 75 and/or viapath 65 may be provisioned on a secure element ofdevice 100 as at least a portion or all ofcredential SSD 154 a and may includecredential applet 153 a and/orcredential key 155 a′. Step 604 may be at least partially carried out when a user ofdevice 100 selects a particular credential to be provisioned ondevice 100. In some embodiments,credential data 654 may also include access key 155 a, which may be initially provided fromcommercial entity subsystem 400 tofinancial institution subsystem 350 and/or may be added bycommercial entity subsystem 400. - The credential data provisioned on
device 100 may include all data necessary to make a payment with that credential, such as, for example, a primary account number (“PAN”), a card security code (e.g., a card verification code (“CVV”)), expiration date, name associated with the credential, and the like. A “virtual” credential or virtual PAN or device PAN (“D-PAN”) may be provisioned ondevice 100 rather than the user's “actual” credential or actual PAN or funding PAN (“F-PAN”). For example, once it is determined that a credential is to be provisioned ondevice 100, it may be requested (e.g., byfinancial institution subsystem 350, bycommercial entity subsystem 400, and/or by a user of device 100) that a virtual credential be generated, linked to the actual credential, and provisioned ondevice 100 instead of the actual credential. Such creation and linking of a virtual credential with an actual credential may be performed by any suitable component offinancial institution subsystem 350. For example, a payment network subsystem 360 (e.g., a particularpayment network subsystem 360 that may be associated with the brand of the actual credential) may define and store a virtual-linking table 312 (e.g., as shown inFIG. 1A ) that may create associations between the actual credential and a virtual credential, such that anytime a virtual credential is utilized bydevice 100 for a financial transaction with merchant subsystem 200 (e.g., after being provisioned on device 100),payment network subsystem 360 may receive an authorization request indicative of that virtual credential (e.g., asdata 674 ofFIG. 1A ) and may conduct an analysis of that authorization request in light of the actual credential associated with the virtual credential as determined by table 312. By provisioning a virtual credential ondevice 100 rather than an actual credential,financial institution subsystem 350 may be configured to limit the fraudulent activity that may result when the virtual credential is intercepted by an unauthorized user, aspayment network subsystem 360 may only be configured to utilize table 312 for linking the virtual credential to the actual credential during certain transactions. - At
step 606, process 600 may include associating a merchant's online resource, such as amerchant application 113 or a merchant website, with amerchant key 157. For example,commercial entity subsystem 400 may populate a table 430 to associate amerchant key 157 with a merchant's resource (e.g.,application 113 or website) for enabling a secure commerce credential data communication (e.g., an online-basedcommunication 670 ofFIG. 1A ) betweendevice 100 andmerchant subsystem 200 using that merchant resource. Bothmerchant subsystem 200 andcommercial entity subsystem 400 may store a version of such a merchant key 157 (e.g., in a respective secure element ofmerchant subsystem 200 andcommercial entity subsystem 400, as shown inFIG. 1A ). In some embodiments, in order to participate in an online-resource payment program, a merchant may be required to register as a member of a program run by the commercial entity ofcommercial entity subsystem 400 and/or obtain a merchant certificate. Merchants may not be able to receive payment data without a certificate. Each certificate may contain a unique merchant identifier that may bind the merchant to the public key for that merchant (e.g., a public merchant key 157). A merchant may obtain multiple certificates, and thus may hold more than one identity. Such a unique merchant identifier may be provided bymerchant subsystem 200 to device 100 (e.g., atstep 610 as a portion ofdata 660 and/or as an inherent element of the online resource running on device 100 (e.g., merchant application 113), and such a merchant identifier may be provided fromdevice 100 tocommercial entity subsystem 400 during an attempted transaction (e.g., as at least a portion ofdata 664 atstep 614 described below). - At
step 608, process 600 may include a merchant's online resource 658 (e.g., a merchant'sthird party application 113 ofFIG. 1A or website) being accessed bydevice 100. As shown inFIG. 1A , a merchant'sthird party application 113 may be loaded ontodevice 100 from commercial entity subsystem 400 (e.g., from application store 420). For example, as shown inFIG. 4 , a user may select “Merchant App”icon 183 of aspecific screen 190 of GUI 180 using touch screen input component 110 f of I/O component 114 a, and this selection may be recognized byelectronic device 100 as an initiation event for providing the user with the ability to interact with a merchant'sthird party application 113. Alternatively or additionally, such anonline resource 658 may be accessed byelectronic device 100 directly frommerchant subsystem 200. In response to such a selection of amerchant application icon 183, GUI 180 may provide an interactive screen whereelectronic device 100 may enable the user to interact withapplication 113 to peruse commercially available items from the merchant for purchase. Alternatively, step 608 may includedevice 100 accessing a merchant'sonline resource 658 as a merchant's webpage from merchant subsystem 200 (e.g., via merchant server 210) using an internet application ofdevice 100, which may also be selectable by an “Internet”icon 182 ofspecific screen 190 of GUI 180 ofFIG. 4 for providing the user with the ability to interact with a merchant's webpage rather than with a merchant's third part application. - Next, at
step 610,device 100 may receivepotential transaction data 660 from the accessed online resource of the merchant. For example, as shown inFIG. 1A ,potential transaction data 660 may be provided todevice 100 from merchant subsystem 200 (e.g., from merchant server 210) whendevice 100 is interacting with the merchant'sthird party application 113 or the merchant's website or any other suitable online resource (e.g., resource 658) of the merchant. Alternatively or additionally, at least a portion ofpotential transaction data 660 may be locally accessible bydevice 100 viaapplication 113 local to device 100 (e.g., whenapplication 113 is stored in memory component 104 or being run byprocessor 102 of device 100), rather than the data being actively sent todevice 100 frommerchant server 210 atstep 610. For example, whenapplication 113 is initially stored on device 100 (e.g., atstep 608 as merchant's online resource 658), at least some ofpotential transaction data 660 may be generated by that initially storedapplication 113 absent any additional information provided todevice 100 bymerchant subsystem 200.Potential transaction data 660 may include any suitable data indicative of characteristics of a potential financial transaction to occur between a user ofdevice 100 and a merchant ofmerchant subsystem 200, including, but not limited to, identification ofdevice 100, identification of the merchant, identification of the particular merchant resource being used (e.g., theparticular merchant application 113 or website being accessed by device 100), identification of the particular product or service to be purchased or rented or otherwise paid for, identification of the price to be paid, identification of the currency to be used during the transaction, identification of a default or initial shipping address to be used, a list of financial institutions whose credentials may be accepted bymerchant subsystem 200, and/or any other suitable information.Potential transaction data 660 may define an online resource's request to produce a payment token for the purchase of products and/or services and may encapsulate any suitable information about the potential transaction including, for example, information about the merchant's payment processing capabilities, an amount to pay, and the currency code.Potential transaction data 660 may also include a list of one or more payment networks (e.g., payment network(s) 360) that may be supported by the merchant such thatdevice 100 may be configured to determine whether any of such listed one or more payment networks has an authorized payment credential ondevice 100. If such a match exists, for example, as shown inFIG. 14A , GUI 180 may providescreen 190 a, where a merchant's online resource may usetransaction data 660 to show to a user the name of the merchant (e.g., “Merchant A”) withinformation 1407 a, the name of the product (e.g., “Product B”) withinformation 1407 b, the price (e.g., “Price C”) withinformation 1407 c, and/or initial shipping data (e.g., “Address D”) withinformation 1407 d.Potential transaction data 660 that may be provided todevice 100 bymerchant server 210 may be indicative ofsuch information FIG. 14A and described below in more detail,screen 190 a may also include a choosealternate shipping prompt 1409 and/or apurchase prompt 1411.Potential transaction data 660 may be provided frommerchant server 210 todevice 100 viacommunication path 15 ofFIG. 1A and may be received bycommunications component 106 ofdevice 100.Communications component 106 may pass thispotential transaction data 660 on to processor 102 (e.g., for displaying onscreen 190 a as part of a user interface formerchant application 113 on device 100 (e.g., for information 1407 a-1407 d)) and/or toNFC component 120. For example,NFC component 120 may utilize suchpotential transaction data 660 for securely enabling a financial transaction betweendevice 100 andmerchant subsystem 200, as further described below. As described below in more detail (e.g., with respect to steps 702-714 of process 700 ofFIG. 7 ),shipping information 1407 d may be based on any suitable data known by the online resource and/or based on data discoverable and selectable by other resources available to device 100 (e.g., contact information local to device 100) for auto-populating and/or updating initial shipping information provided by the online resource. In some embodiments,potential transaction data 660 may be referred to as payment request data and/or a uniform resource locator (“URL”) or any other suitable reference character string and/or query string. - Next, at
step 611, process 600 may include receiving intent and authentication by a user ofdevice 100 to utilize a specific credential for carrying out a financial transaction for a particular merchant, product, price, and shipping destination based onpotential transaction data 660. For example, as shown inFIG. 14A ,screen 190 a of GUI 180 ofdevice 100 may also include a purchase prompt 1411 that may ask the user whether he or she wishes to make a purchase from the merchant according to the details ofpotential transaction data 660. Moreover, as shown inFIG. 14C , output display component 112 a may be configured to providescreen 190 c in response to receiving selection ofpurchase prompt 1411 ofscreen 190 a ofFIG. 14A and/or purchase prompt 1411 ofscreen 190 c ofFIG. 14C .Screen 190 c ofFIG. 14C may prompt a user to interact withdevice 100 in one or more ways to choose a specific credential available todevice 100 for making the purchase. As shown,screen 190 c may include acredential selection prompt 1413 that may enable a user to select one of potentially multiple credentials that may be provisioned on device 100 (e.g., the credential ofcredential SSD 154 a). Prompt 1413 may only include credentials that are associated with payment networks supported by the merchant (e.g., as may be determined bypotential transaction data 660, as mentioned above). As shown inFIG. 14D , output display component 112 a may be configured to providescreen 190 d in response to receiving user selection of a credential fromcredential selection prompt 1413 ofscreen 190 c ofFIG. 14C .Screen 190 d ofFIG. 14D may prompt a user to interact withdevice 100 in one or more ways to authenticate the user and its intent to utilize the selected credential. This may include prompting the user (e.g., with an authentication prompt 1415) to enter user authentication via personal identification number (“PIN”) entry or via user interaction with a biometric sensor in order to access the secure element ofdevice 100 and, thus, the credential to be used for the purchase.Access SSD 154 b may leverageapplet 153 b to determine whether such authentication has occurred before allowing other SSDs 154 (e.g.,credential SSD 154 a) to be used for enabling its credential information in a commerce credential data communication. As just one example ofstep 611,applet 153 b ofaccess SSD 154 b may be configured to determine intent and local authentication of a user of device 100 (e.g., via one ormore input components 110, such as a biometric input component 110 i ofFIG. 4 , as may be used by a user interacting withapplication 113 via GUI 180) and, in response to such a determination, may be configured to enable another particular SSD for conducting a payment transaction (e.g., with a credential ofcredential SSD 154 a). In some embodiments, after such a determination, but before such enablement, output display component 112 a may be configured to providescreen 190 e ofFIG. 14E that may prompt a user (e.g., with a payment prompt 1417) to interact withdevice 100 in one or more ways to finally initiate payment tomerchant subsystem 200 according topotential transaction data 660 using the selected and authenticated credential. Additional features ofFIGS. 14A-14E may be described below with respect to process 700 ofFIG. 7 . - Next, at steps 612-614, process 600 may include
device 100 generating, encrypting, and transmitting commercialentity credential data 664 for use bycommercial entity subsystem 400. Once the credential ofcredential SSD 154 a on a secure element ofdevice 100 has been selected, authenticated, and/or enabled for use in a financial transaction (e.g., at step 611), the secure element of device 100 (e.g.,processor module 142 of NFC component 120) may encrypt that credential data for use bycommercial entity subsystem 400. For example, secure element (“SE”)credential data 661 ofcredential SSD 154 a (e.g.,applet data 153 a) may be encrypted withcredential key 155 a′ atstep 612 as encryptedSE credential data 662, such that the encryptedSE credential data 662 may only be decrypted by an entity with access to thatcredential key 155 a′ (e.g., financial institution subsystem 350) for accessingSE credential data 661. ThatSE credential data 661 may include all data necessary to make a payment with that credential, such as, for example, a primary account number (e.g., an actual F-PAN or a virtual D-PAN), a card security code (e.g., a card verification code (“CVV”)), expiration date, name associated with the credential, and/or the like. Once some or all of thatSE credential data 661 ofcredential SSD 154 a has been encrypted withcredential key 155 a′ atstep 612 as encryptedSE credential data 662, that encryptedSE credential data 662, either alone or along with at least a first portion of potential transaction data 660 (e.g., a first portion ofpotential transaction data 660 that may include identification of the merchant, identification of the price, and/or identification of the product/service) and/or any other suitable information (e.g., anyinformation identifying device 100 itself), may be encrypted by access information (e.g., by access key 155 a ofSSD 154 a,access key 155 b ofaccess SSD 154 b, ISD key 156 k, and/orCRS 151 k and/or signed byCASD 158 k) atstep 613 as encrypted commercial entity (“CE”)credential data 663. For example,secure element 145 of device 100 (e.g.,processor module 142 of NFC component 120) may use access information to encrypt not only an identification of the merchant from data 660 (e.g., identification of the merchant or its resource being used for the purchase, such as application 113), but also the identification of the amount of the purchase and/or currency code fromdata 660, as well as the encryptedSE credential data 661 ofSSD 154 a (e.g., encrypted SE credential data 662) into encrypted commercialentity credential data 663. In some embodiments, such identification of the merchant fromdata 660 may first be converted by the secure element into a format that may be utilized by a protocol of the secure element (e.g., from a plaintext merchant identification format that may be variable in length as may be provided fromtransaction data 660 into a hashed merchant identification format of a fixed length that may be suitable encrypted by the secure element), as described in more detail below with respect to step 720 of process 700 ofFIG. 7 . - Next, encrypted commercial
entity credential data 663 along with any additional information, such as at least some of potential transaction data 660 (e.g., identification of the merchant, identification of the price, and/or identification of the product/service) and/or any other suitable information (e.g., anyinformation identifying device 100 itself and/or the merchant in unencrypted form), may together be transmitted as commercialentity transaction data 664 fromdevice 100 tocommercial entity subsystem 400 at step 614 (e.g., as described in more detail below with respect to step 724 of process 700 ofFIG. 7 ). Therefore, at least portions of commercial entity transaction data 664 (e.g., encrypted commercial entity credential data 663) may only be decrypted by an entity with access to that access information used for the encryption (e.g., access key 155 a,access key 155 b, ISD key 156 k,CRS 151 k, and/orCASD 158 k) that generated encrypted commercialentity credential data 663 of commercial entity transaction data 664 (e.g., commercial entity subsystem 400). Such commercialentity transaction data 664 may be generated at steps 612-614 and then transmitted tocommercial entity subsystem 400 at step 614 (e.g., from the secure element ofNFC component 120, viacommunications component 106 and communication path 65).Steps device 100 as part of commercialentity transaction data 664 has first been encrypted in such a way that it cannot be decrypted by another portion ofdevice 100. That is,SE credential data 661 of commercialentity transaction data 664 may be encrypted as encryptedSE credential data 662 with acredential key 155 a′ that may not be exposed to or accessible by any portion ofdevice 100 outside of its secure element. Moreover, such encryptedSE credential data 662 of commercialentity transaction data 664 may be encrypted as encrypted commercialentity credential data 663 with an access key (e.g., access key 155 a, 155 b, 156 k, 151 k, and/or 158 k (e.g., referred to herein as “access information”)) that may not be exposed to or accessible by any portion ofdevice 100 outside of its secure element. - Next, at step 616, process 600 may include
commercial entity subsystem 400 receiving and decrypting at least a portion of commercialentity transaction data 664. For example,commercial entity subsystem 400 may receive commercialentity transaction data 664 and may then decrypt encrypted commercialentity credential data 663 of commercialentity transaction data 664 using access information (e.g., 155 a, 155 b, 156 k, 151 k, and/or 158 k) as available atcommercial entity subsystem 400. This may enablecommercial entity subsystem 400 to determine an unencrypted identification of the merchant (e.g., from decrypted commercial entity credential data 663), while also maintainingSE credential data 661 in an encrypted state (e.g., as encrypted SE credential data 662), becausecommercial entity subsystem 400 may not have access tocredential key 155 a′ with which suchSE credential data 661 may have been encrypted by the secure element ofdevice 100 atstep 612 as encryptedSE credential data 662. Additionally or alternatively, the merchant may be identified by the additional data that may have been included in commercialentity transaction data 664 along with encrypted commercial entity credential data 663 (e.g., as described in more detail below with respect tosteps FIG. 7 ). Commercialentity transaction data 664 may includeinformation identifying device 100 or at least its secure element, such that, whendata 664 is received bycommercial entity subsystem 400,commercial entity subsystem 400 may know which access information (e.g., which ofaccess information commercial entity subsystem 400 may have access tomultiple access keys 155 a/155 b and/ormultiple ISD keys 156 k, each one of which may be particular to aspecific device 100 or to a specific secure element. - Next, at step 617, process 600 may include
commercial entity subsystem 400 identifying amerchant key 157 associated with the merchant that may have been identified from commercialentity transaction data 664 and then re-encrypting at least a portion of commercialentity credential data 664 using thatmerchant key 157. That is, after decrypting at least a first portion of commercialentity transaction data 664 using suitable access information at step 616 (e.g., after decrypting encryptedCE credential data 663 to realize encryptedSE credential data 662 and any other information that may have been encrypted in encrypted CE credential data 663),commercial entity subsystem 400 may then, at step 617, re-encrypt at least a second portion of commercial entity transaction data 664 (e.g., encrypted SE credential data 662) with an appropriate merchant key 157 that may be associated with merchant information identified in commercialentity transaction data 664. Such amerchant key 157 may be determined by comparing the merchant information identified in commercialentity transaction data 664 with data in table 430 ofFIG. 1A . With this determinedappropriate merchant key 157,commercial entity subsystem 400 may re-encrypt withmerchant key 157 at least a portion of commercialentity transaction data 664 as encrypted merchant credential data 667 at step 617. For example, encrypted merchant credential data 667 may include at least the encryptedSE credential data 662 from commercialentity transaction data 664 as well as the purchase amount data or other suitable transaction data from commercial entity transaction data 664 (e.g., data that may have been initially identified from transaction data 660). The merchant identification information from commercialentity transaction data 664 may not need to be included in encrypted merchant credential data 667 as that merchant identification may have already been used to determine themerchant key 157 with which encrypted merchant credential data 667 may be encrypted at step 617. Encrypted merchant credential data 667 may be signed bycommercial entity subsystem 400 in such a way that, when received bymerchant subsystem 200, may establishcommercial entity subsystem 400 as the creator of such encrypted merchant credential data 667 and/or may letmerchant subsystem 200 ensure that encrypted merchant credential data 667 has not been modified after being signed. Such encrypted merchant credential data 667 may be generated at steps 616 and 617 and then transmitted toelectronic device 100 along with any other suitable data asmerchant transaction data 668 at step 618 (e.g., fromserver 410 ofcommercial entity subsystem 400 tocommunications component 106 ofdevice 100 viapath 65 ofFIG. 1A ). -
Steps 616, 617, and 618 may ensure that credential data transmitted from thecommercial entity subsystem 400 as part ofmerchant transaction data 668 ofFIG. 1A (e.g., credential data of encrypted merchant credential data 667 of merchant transaction data 668) may be encrypted in such a way that it cannot be decrypted by a portion ofdevice 100 other than its secure element. That is,merchant transaction data 668 may be encrypted with amerchant key 157 that may not be exposed to or otherwise accessible by any portion ofdevice 100, including, in some embodiments, its secure element. Moreover, credential data of merchant transaction data 668 (e.g., encryptedSE credential data 662 of encrypted merchant credential data 667 of merchant transaction data 668) may be encrypted with acredential key 155 a′ that may not be exposed to or otherwise accessible by any portion ofdevice 100 outside of its secure element.Merchant transaction data 668 may then be forwarded on to merchant subsystem 200 (e.g., merchant server 210) bydevice 100 as online-based communication 670 (e.g., viacommunications component 106 andcommunication path 15 ofFIG. 1A ) atstep 620. Such online-basedcommunication 670 may at least include some of merchant transaction data 668 (e.g., encrypted merchant credential data 667) and any other suitable information (e.g., information that may be used bymerchant application 113 or any other merchant resource (e.g., a merchant website), such asshipping information 1407 d), as may be described in more detail below with respect tosteps FIG. 7 . Alternatively, rather than sharingmerchant transaction data 668 withmerchant subsystem 200 viadevice 100 as online-basedcommunication 670 atsteps commercial entity subsystem 400 may directly sharemerchant transaction data 668 withmerchant subsystem 200 as online-basedcommunication 671 at step 621 (e.g., viapath 85 ofFIG. 1A ). - Once such
merchant transaction data 668 is received by merchant subsystem 200 (e.g., as online-basedcommunication 671 fromcommercial entity subsystem 400 directly atstep 621 or as online-basedcommunication 670 fromdevice 100 at step 620), process 600 may include step 622 at whichmerchant subsystem 200 may sendconfirmation data 672 to device 100 (e.g., viacommunication path 15 ofFIG. 1A ).Such confirmation data 672 may be received bydevice 100 to indicate to a user ofdevice 100 that the user's payment instructions have been received bymerchant subsystem 200. After a user ofdevice 100 may provide intent and authentication to utilize a specific credential for carrying out a financial transaction based onpotential transaction data 660 atstep 611, the remaining steps of process 600 may occur transparent to the user. That is, once the user provides authentication and intent atstep 611, steps 612-620 or 621 as well as steps 622-630 may occur without any further user interaction and may seem instantaneous to a user, whereby process 600 may appear to a user as if, afterstep 611, credential data is automatically and instantaneously sent tomerchant subsystem 200 and confirmed atstep 622. - Moreover, once such
merchant transaction data 668 is received by merchant subsystem 200 (e.g., ascommunication 671 fromcommercial entity subsystem 400 directly atstep 621 or as online-basedcommunication 670 fromdevice 100 at step 620), process 600 may also includestep 623 at whichmerchant subsystem 200 may be configured to generate and transmitpayment data 673 to acquiring bank subsystem 300 (e.g., viacommunication path 25 betweenmerchant subsystem 200 and acquiringbank subsystem 300 ofFIG. 1A ), wheredata 673 may include payment information and an authorization request that may be indicative of the user's commerce credential and the merchant's purchase price for the product or service (e.g., as included incommunication 671 received fromcommercial entity subsystem 400 directly atstep 621 or in online-basedcommunication 670 received fromdevice 100 at step 620). For example, atstep 623,merchant subsystem 200 may leverage its knownmerchant key 157 to at least partially decrypt merchant transaction data 668 (e.g., as received fromcommunication 671 atstep 621 or fromcommunication 670 at step 620), such thatpayment data 673 may include theSE credential data 661 ofcredential SSD 154 a encrypted with itscredential key 155 a′ (e.g., encrypted SE credential data 662) but not with a key that is not available tofinancial institution subsystem 350. Then, atstep 624, acquiringbank subsystem 300 may forward the authorization request fromdata 673 tofinancial institution subsystem 350 as authorization request data 674 (e.g., viacommunication path 35 between acquiringbank subsystem 300 andfinancial institution subsystem 350 ofFIG. 1A ). Next, at step 626, when issuingbank subsystem 370 offinancial institution subsystem 350 receives an authorization request (e.g., directly from acquiringbank subsystem 300 asdata 674 atstep 624, or indirectly viapayment network subsystem 360 asdata 405 as described above), the payment information (e.g.,SE credential data 661 ofdevice 100 as encrypted bycredential key 155 a′ by the secure element of device 100 (e.g., encrypted SE credential data 662)) and the purchase amount, each of which may be included in theauthorization request data 674, as well as indata credential key 155 a′ at financial institution subsystem 350) and analyzed to determine if the account associated with the commerce credential has enough credit to cover the purchase amount. If sufficient funds are not present, issuingbank subsystem 370 may decline the requested transaction by transmitting a negative authorization response to acquiringbank subsystem 300. However, if sufficient funds are present, issuingbank subsystem 370 may approve the requested transaction by transmitting a positive authorization response to acquiringbank subsystem 300 and the financial transaction may be completed. Either type of authorization response may be provided by userfinancial subsystem 350 to acquiringbank subsystem 300 asauthorization response data 676 at step 626 of process 600 (e.g., directly from issuingbank subsystem 370 to acquiringbank subsystem 300 viacommunication path 35, or frompayment network subsystem 360 to acquiringbank subsystem 300 based onauthorization response data 415 that may be provided topayment network subsystem 360 from issuingbank subsystem 370 viacommunication path 45 ofFIG. 1A ). Next, in response to receivingauthorization response data 676 at step 626, process 600 may also include acquiringbank subsystem 300 or any other suitable subsystem may share such authorization response data withmerchant subsystem 200 asauthorization response data 678 atstep 628, which may then be shared withelectronic device 100 asauthorization response data 680 atstep 630. - Therefore,
merchant subsystem 200 may be configured to process online-basedcommunication 671 received fromcommercial entity subsystem 400 directly atstep 621 or online-basedcommunication 670 received fromdevice 100 atstep 620 in any suitable way. For example, to obtain the plain text payment credentials from such an online-based communication (e.g., SE credential data 661),merchant subsystem 200 may verify that a signature property of the received data is valid and thatcommercial entity subsystem 400 is the signer of that signature.Merchant subsystem 200 may use any suitable technique to determine which merchant key (e.g., which merchant public key 157) may have been used bycommercial entity subsystem 400 to construct the encrypted merchant credential data (e.g., data 667). Then,merchant subsystem 200 may retrieve the corresponding merchant private key (e.g., merchantprivate key 157 at merchant subsystem 200) and use that retrieved key to de-encapsulate and/or decrypt encrypted merchant credential data 667 to recover encryptedSE credential data 662. Thensuch data 662 may be provided to theappropriate payment network 360, which may leverage the appropriate credential key 155 a′ offinancial institution subsystem 350 to de-encapsulate and/or decrypt encryptedSE credential data 662 to recover SE credential data 661 (e.g., to recover the plain text payment information for the payment credential, such as full EMV (“Europay MasterCard Visa”) payment data). - In some embodiments, once
device 100 is ready to prepare CE transaction data (e.g., data 664) tocommercial entity subsystem 400 for a new online resource transaction (e.g., after step 611) but before doing so,device 100 may be configured to request certain data from commercial entity subsystem. For example, prior to step 612 but afterstep 610,device 100 may request certain CE feature information (e.g., an unpredictable number or other suitable data) that may be leveraged bydevice 100 and process 600 for adding an additional layer of security to process 600. For example, in response to such a request, such CE feature information may be provided fromcommercial entity 400 to device 100 (e.g., at a step (not shown) before step 612), and such CE feature information may be encrypted along with other data bysecure element 145. For example, such CE feature information may be encrypted along withSE credential data 661 as encryptedSE credential data 662 atstep 612. Alternatively or additionally, such CE feature information may be encrypted along with encryptedSE credential data 662 as encryptedCE credential data 663 atstep 613. In any event, such CE feature information may be included inCE transaction data 664 tocommercial entity subsystem 400 and may be accessed bycommercial entity subsystem 400 and compared to the CE feature information it generated earlier to confirm a match or determine any potential fraudulent behavior (e.g., if such CE feature information were encrypted at step 613). Additionally or alternatively, such CE feature information may be included inCE transaction data 664 and incommunication 670 such that it may be received by merchant subsystem 200 (e.g., via device 100). Moreover, such CE feature information may be provided directly fromcommercial entity subsystem 400 to merchant subsystem 200 (e.g., as acommunication 671 atstep 621 or at any other point in process 600 prior to step 622), such thatmerchant subsystem 200 may compare such CE feature information encrypted bydevice 100 and received bymerchant subsystem 200 as at least a portion ofcommunication 670 with such CE feature information that may be received bymerchant subsystem 200 directly fromcommercial entity subsystem 400. Such a comparison, if matching, may add another layer of security on whichmerchant subsystem 200 may rely when determining thatcommunication 670 is not fraudulent and may be used for conducting a financial transaction. Such CE feature information (e.g., an unpredictable number initially) may be generated bycommercial entity subsystem 400, may be encrypted on secure element 145 (e.g., atstep 612 and/or step 613) and provided to merchant subsystem 200 (e.g., as a portion ofcommunication 670 at step 620), and such CE feature information may also be provided tomerchant subsystem 200 directly from commercial entity subsystem 400 (e.g., ascommunication 671 at step 621), such that both instances of such CE feature information may be utilized bymerchant subsystem 200 and/or by any remaining step of process 600 as a layer of security to the process. - Process 600 may ensure that
system 1 may leverage security keys accessible to a security element ofdevice 100 so as to securely communicate credential data tomerchant subsystem 200 for use byfinancial institution subsystem 350 while enabling certain keys to be properly managed bycommercial entity subsystem 400. That is,secure element 145 of device 100 (e.g., NFC component 120) may containcredential key 155 a′ and access information (e.g., 155 a, 155 b, 156 k, 151 k, and/or 158 k),commercial entity subsystem 400 may contain access information (e.g., 155 a, 155 b, 156 k, 151 k, and/or 158 k) andmerchant key 157,merchant entity 200 may containmerchant key 157, andfinancial institution subsystem 350 may containcredential key 155 a′. Due to the fact thatdevice 100 andcommercial entity subsystem 400 may each contain or have access to access information (e.g., 155 a, 155 b, 156 k, 151 k, and/or 158 k),device 100 may securely share encrypted credential data with commercial entity subsystem 400 (e.g., asdata 664 at step 614). Similarly, due to the fact thatcommercial entity subsystem 400 andmerchant subsystem 200 may each contain or have access tomerchant key 157,commercial entity subsystem 400 may securely share encrypted credential data with merchant subsystem 200 (e.g., asdata 671 atstep 621 or viadevice 100 asdata 670 at step 620). Then,merchant subsystem 200, via acquiringbank subsystem 300, may share this encrypted credential data withfinancial institution subsystem 350 that may finally decrypt the encrypted credential data withcredential key 155 a′. However, in some embodiments, none of the credential data of the secure element of device 100 (e.g.,SE credential data 661 ofapplet 153 a ofSSD 154 a) may be shared with a non-secure element of device 100 (e.g.,processor 102 and/or communications component 106) in a decrypted state, nor may credential key 155 a′ be made available to such a non-secure element ofdevice 100. Credential key 155 a′ may be managed byfinancial institution subsystem 350, while certain access information (e.g., 155 a, 155 b, 156 k, 151 k, and/or 158 k) may be managed by or otherwise accessible tocommercial entity subsystem 400, whilemerchant key 157 may be managed bycommercial entity subsystem 400 and/ormerchant subsystem 200, such that each of these keys may be maintained and/or updated and/or deleted as needed to maintain their effectiveness. Therefore,merchant key 157 may never be stored on or otherwise accessible todevice 100. For example,merchant key 157 may not even be stored on a secure element ofdevice 100.Merchant key 157 can be revocable or may expire after a certain amount of time, which may requiremerchant subsystem 200 andcommercial entity subsystem 350 to communicate every so often to manage and/or updatemerchant key 157. This may enablecommercial entity subsystem 400 to dictate whichmerchant subsystems 200 may be able to conduct online transactions using secure credentials ofdevice 100. Moreover, certain access information (e.g., 155 a, 155 b, 156 k, 151 k, and/or 158 k) may never be stored on or otherwise accessible tomerchant subsystem 200. For example, certain access information can be revocable or may expire after a certain amount of time, which may requiredevice 100 andcommercial entity subsystem 400 to communicate every so often to manage and/or update such access information. This may enablecommercial entity subsystem 400 to dictate whichdevices 100 may be able to conduct online transactions using secure credentials ofdevice 100 with amerchant subsystem 200 viacommercial entity subsystem 400. - Therefore, process 600 may enable at least one credential provisioned on a secure element of
device 100 to be securely used for an online payment transaction withmerchant subsystem 200. Process 600 may be configured to provide a virtualized tunnel between the secure element ofdevice 100 andmerchant subsystem 200 that may transport a highly secure, EMV (“Europay, MasterCard, Visa”) standard-level (e.g., “Chip and PIN”) data set of credential data for use in a financial transaction. By only trusting data within the secure element ofdevice 100 and not any data or components ofdevice 100 off of such a secure element (e.g.,processor 102 orapplication 113 local to device 100), process 600 may require that any credential data transmitted out of the secure element (e.g.,SE credential data 661 ofapplet 153 a) be encrypted with acredential key 155 a′ that may only be known by the secure element and financial institution subsystem 350 (e.g., as encryptedSE credential data 662 at step 612), and, in some embodiments, then encrypted with access information (e.g., 155 a, 155 b, 156 k, 151 k, and/or 158 k) that may only be known bysecure element 145 and commercial entity subsystem 400 (e.g., as encrypted commercialentity credential data 663 at step 613).Commercial entity subsystem 400 may then leverage this data 663 (e.g., as part of received commercial entity transaction data 664) and its knowledge of such access information (e.g., 155 a, 155 b, 156 k, 151 k, and/or 158 k) andmerchant key 157 to decrypt/re-encrypt (e.g., at steps 616/617) the credential data transmitted bydevice 100 for later use bymerchant subsystem 200. By providingcommercial entity subsystem 400 in the middle of process 600, an extra layer of security is realized.Commercial entity subsystem 400 may be privy not only to certain access information (e.g., 155 a, 155 b, 156 k, 151 k, and/or 158 k) shared bysecure element 145 ofdevice 100 but also tomerchant key 157 shared bymerchant subsystem 200. Therefore,commercial entity subsystem 400 may be in a unique position to manage any online transactions between the secure element ofdevice 100 andmerchant subsystem 200, while at the same time not being privy to the credential data being used (e.g., not being privy toSE credential data 661 ofapplet 153 a that may be encrypted as encryptedSE credential data 662 atstep 612 bycredential key 155 a′, for example, becausecommercial entity subsystem 400 may not have access tocredential key 155 a′). -
Commercial entity subsystem 400 may be configured to provide a validation check after receiving commercialentity transaction data 664 but before providing merchant transaction data 668 (e.g., at steps 616-618/621). For example,commercial entity subsystem 400 may determine that received commercialentity transaction data 664 identifies a merchant whosemerchant key 157 has expired or has otherwise been terminated or not recognized (e.g., by table 430). Therefore, ifcommercial entity subsystem 400 at some point beforestep 618/621 determines that a particular merchant is no longer trustworthy,commercial entity subsystem 400 may remove or otherwise disable itsmerchant key 157 from table 430, such that, when a merchant associated with that key 157 is later identified bycommercial entity subsystem 400 from a received commercialentity transaction data 664 provided by anelectronic device 100,commercial entity subsystem 400 may not provide any associatedmerchant transaction data 668/671, thereby preventing the desired financial transaction. Alternatively, a merchant identified in commercialentity transaction data 664 received from anelectronic device 100 may never have had amerchant key 157 associated with table 430, such thatcommercial entity subsystem 400 may realize that commercialentity transaction data 664 may be an attempt to conduct a financial transaction with a merchant that is not recognized bycommercial entity subsystem 400 and, thus,commercial entity subsystem 400 may prevent the transaction from being carried out. However, if process 600 is able to be completed, not only maycommercial entity subsystem 400 be satisfied that the financial transaction is between a known device 100 (e.g., due to shared access information (e.g., 155 a, 155 b, 156 k, 151 k, and/or 158 k)) and a known merchant subsystem 200 (e.g., due to a known merchant key 157), butmerchant subsystem 200 may also be satisfied that the financial transaction is being conducted with a trusted device 100 (e.g., due to the receivedcommunication data 670/671 being encrypted with amerchant key 157 from a trusted commercial entity subsystem 400). - It is understood that the steps shown in process 600 of
FIG. 6 are merely illustrative and that existing steps may be modified or omitted, additional steps may be added, and the order of certain steps may be altered. For example, it is to be understood that some shared keys may be public keys while other shared keys may be private or secret keys (e.g., a mathematically linked key pair that includes a public key and a private key). A public key of a key pair may be used to encrypt data while a private key of that key pair may be used to decrypt the encrypted data. For example, access key 155 a ofSSD 154 a and/or access key 155 b ofSSD 154 b, which may be stored insecure element 145 ofdevice 100, may be a public key while access key 155 a and/or access key 155 b available atcommercial entity subsystem 400 may be an associated private key or vice versa. Additionally or alternatively, ISD key 156 k ofISD 152 that may be stored in a secure element ofdevice 100 may be a public key while ISD key 156 k available atcommercial entity subsystem 400 may be an associated private key or vice versa. Additionally or alternatively,CRS 151 k that may be stored in a secure element ofdevice 100 may be a public key whileCRS 151 k available atcommercial entity subsystem 400 may be an associated private key or vice versa. Additionally or alternatively,CASD 158 k that may be stored in a secure element ofdevice 100 may be public whileCASD 158 k available atcommercial entity subsystem 400 may be private or vice versa. Additionally or alternatively,merchant key 157 of table 430 or elsewhere atcommercial entity subsystem 400 may be a public key whilemerchant key 157 available atmerchant subsystem 200 may be an associated private key or vice versa. Moreover, certain data may be signed by a component transmitting that data. For example, commercialentity transaction data 664 may be signed bydevice 100 before being transmitted tocommercial entity subsystem 400 atstep 614 or encrypted commercialentity credential data 663 may be signed by the secure element at step 613 (e.g., byCASD 158 k) before being transmitted as at least a portion oftransaction data 664 atstep 614. Such a signature bydevice 100 may enablecommercial entity subsystem 400 to more confidently determine thatdata 664 was generated by atrusted device 100. Additionally or alternatively,data 668 may be signed bycommercial entity subsystem 400 before being transmitted todevice 100 atstep 618 and/or before being transmitted tomerchant subsystem 200 atstep 621. Such a signature bycommercial entity subsystem 400 may enabledevice 100 and/ormerchant subsystem 200 to more confidently determine thatdata 668/670/671 was generated by a trustedcommercial entity subsystem 400. It is to be understood thatdevice 100 need not be configured to handle NFC communications or any other contactless proximity-based communications with another device (e.g., an NFC communication with a merchant terminal of merchant subsystem 200). Instead,device 100 may include a secure element for storing credential information that may be used for online transactions, as described with respect to process 600, while not being leveraged for NFC transactions. For example,device 100 may include a secure element (e.g., withcontroller module 140 and/ormemory module 150, without device module 130). -
FIG. 7 is a flowchart of an illustrative process 700 for securely conducting online payments that may include specific implementations of certain portions of process 600 ofFIG. 6 . Process 700 is shown being implemented byelectronic device 100,merchant subsystem 200, andcommercial entity subsystem 400. However, it is to be understood that process 700 may be implemented using any other suitable components or subsystems. Process 700 may provide a seamless user experience for securely conducting online payments withmerchant subsystem 200 ondevice 100. Process 700 may begin atstep 702, wherepotential transaction data 752 may be generated bymerchant application 113 ofelectronic device 100 and/or received bymerchant application 113 ofelectronic device 100 frommerchant subsystem 200. For example,potential transaction data 752 may be similar topotential transaction data 660 described above with respect toFIG. 6 , and may include any suitable data indicative of characteristics of a potential financial transaction to occur between a user ofdevice 100 and a merchant ofmerchant subsystem 200, including, but not limited to, identification ofdevice 100, identification of the merchant, identification of the particular merchant resource being used (e.g., theparticular merchant application 113 or website being accessed by device 100), identification of the particular product or service to be purchased or rented or otherwise paid for, identification of the price to be paid, identification of the currency to be used during the transaction, identification of the payment networks supported by the merchant, and/or any other suitable information.Potential transaction data 752 may define an online resource's request to produce a payment token for the purchase of products and/or services and may encapsulate any suitable information about the potential transaction including, for example, information about the merchant's payment processing capabilities, an amount to pay, and the currency code.Potential transaction data 752 may also include shipping information (e.g., default shipping information) that may be initially provided by the online resource as the shipping address to be used for the transaction, where such default shipping information may be determined based on stored user settings for the merchant application 113 (e.g., a user profile of the online resource) or based on any other suitable data available to the online resource. - Next, at step 704, process 700 may include at least a portion of such
potential transaction data 752 being provided from the online resource (e.g., merchant application 113) asdevice transaction data 754 to a device application 103 (e.g., an operating system application and/or a software developer kit (“SDK”)) that may be available toprocessor 102 ofdevice 100 and that may be configured to communicate with the merchant online resource via any suitable techniques (e.g., via one or more application programming interfaces (“APIs”)).Device application 103 may be configured to access information available to device 100 (e.g., from memory 104 and/or secure element 145).Device transaction data 754 may include any suitable data that may be shared between the merchant online resource (e.g., merchant application 113) and other portions of device 100 (e.g., via device application 103). For example, at step 704,device transaction data 754 may include a request for any additional information that may not be included inpotential transaction data 752 but that may be used bymerchant application 113 for providing a desired user interface (e.g., screen 190 a ofFIG. 14A ). That is,device transaction data 754 may include a request to confirm thatsecure element 145 includes at least one commerce credential that is associated with a payment network used bymerchant subsystem 200. Additionally or alternatively,device transaction data 754 may include a request for default shipping information to be used asinitial shipping information 1407 d ofscreen 190 a ofFIG. 14A if such default shipping information is not known bymerchant application 113. - Next, at
step 706, process 700 may includedevice application 103 generating and transmittingresponse data 756 tomerchant application 113 in response todevice transaction data 754 received at step 704. For example, ifdevice transaction data 754 includes a request to confirm whetherelectronic device 100 is configured to use a credential associated with a financial institution supported by merchant subsystem 200 (e.g., aspecific payment network 360, such as MasterCard or Visa),device application 103 may be configured to pollsecure element 145 or another portion of device 100 (e.g., a “wallet” or “Passbook” application ofdevice 100 that may include information indicative of the credentials enabled onsecure element 145, such as may be illustrated by thespecific icon 182 labeled with a “Passbook” textual indicator 181 (i.e., specific icon 185) ofFIG. 4 ) in order to determine if there is at least one match between the financial entities indicated bydevice transaction data 754 and the credentials available todevice 100. In response to such polling,device application 103 may generate and transmitresponse data 756 that may include either an indication that there is a match or that there is no match, in which case a purchase prompt may or may not be included in a UI screen provided to a user. For example, in response to such a polling,device application 103 may generate and transmitresponse data 756 that may include an indication that there is a match, in which case a purchase prompt may be included in a UI screen provided to a user (e.g.,purchase prompt 1411 ofscreen 190 a ofFIG. 14A ). In response to receivingsuch response data 756,merchant application 113 may be configured to generate and provideinitial UI data 762 atstep 712 of process 700 on an I/O interface of device 100 (e.g., I/O interface 114 a). For example,such UI data 762 may be generated bymerchant application 113 alone or in combination withdevice application 103 atstep 712 in order to presentUI screen 190 a ofFIG. 14A with a purchase prompt 1411 that may be indicative of the fact that a credential ofsecure element 145 matches a financial entity supported by merchant subsystem 200 (e.g., based on response data 756). Other portions ofsuch UI screen 190 a may be indicative of information that may be included inpotential transaction data 752 and/or response data 756 (e.g.,merchant information 1407 a,product information 1407 b,price information 1407 c, and/orinitial shipping information 1407 d). - Additionally or alternatively, as another example, if
device transaction data 754 includes a request for default or initial shipping information to be used based on other information of device transaction data 754 (e.g., ifmerchant application 113 has no default or initial shipping information available),device application 103 may be configured to poll another portion of device 100 (e.g., an “address book” application ofdevice 100 that may include shipping address information indicative of a user of device 100 (e.g., a “MeCard” or “VCard”), such as may be illustrated by thespecific icon 182 labeled with a “Phone” textual indicator 181 (i.e., specific icon 184) ofFIG. 4 ) in order to determine if there is at least one available shipping address known bydevice 100 for a user ofdevice 100. In response to such polling,device application 103 may generate and transmitresponse data 756 that may include either a specific default address or an indication that no such address was found, in which case default shipping address information may or may not be included in a UI screen provided to a user. In such embodiments, whenresponse data 756 includes an initial or revised shipping address compared to what may or may not have been indicated bydevice transaction data 754, process 700 may also includemerchant application 113 generating and transmitting anupdate request 758 atstep 708 tomerchant subsystem 200 in order to potentially update certain transaction data (e.g., the price that may be partially based on shipping costs). For example,update request 758 may include at least a portion of the initial or revised shipping address of response data 756 (e.g., just a ZIP code or other identifying feature), and, in response to receiving such anupdate request 758,merchant subsystem 200 may generate and transmit updatedtransaction data 760 atstep 710 tomerchant application 113, where such updatedtransaction data 760 may include a different price for the potential transaction than may have been included inpotential transaction data 752 of step 702 (e.g., based on the initial or revised shipping address indicated by update request 758). For example, in response to such an update in default shipping information bydevice application 103 withresponse data 756 atstep 706 and a subsequent request for and receipt of updatedtransaction data 760 atsteps merchant application 113 may be configured to generate and provideinitial UI data 762 atstep 712 of process 700 on an I/O interface of device 100 (e.g., I/O interface 114 a). For example,such UI data 762 may be generated bymerchant application 113 alone or in combination withdevice application 103 atstep 712 in order to presentUI screen 190 a ofFIG. 14A withdefault shipping information 1407 d for address “D” as well asappropriate price information 1407 c for price “C” that may take into account the shipping cost requirements for default address D. Each one of steps 702-712 may occur transparent to the user. That is, once the user provides certain input that may causepotential transaction data 752 to be generated and/or received by an online resource (e.g., merchant application 113), steps 704-712 may occur without any further user interaction and may seem instantaneous to a user, whereby process 700 may appear to automatically auto-fill indefault shipping information 1407 d, which may or may not be populated bydevice application 103 based on information local todevice 100 independent ofmerchant application 113, and/or that may includeappropriate price information 1407 c that may be commensurate with suchdefault shipping information 1407 d. - In response to providing
UI screen 190 a ofFIG. 14A (e.g., based onUI data 762 ofstep 712 of process 700 as I/O output data 115 o ofFIG. 3 ), a user may interact with device 100 (e.g., with I/O interface 114 a) in one of many possible ways (e.g., with a user input 764 atstep 714 of process 700 as I/O input data 115 i ofFIG. 3 ). For example, a user may choose prompt 1409 ofFIG. 14A to choose an alternate shipping address (e.g., a shipping address different than the default shipping address D described above. In such instances, screen 190 b ofFIG. 14B may be generated and provided (e.g., by following steps similar to one or more of steps 702-714), in which at least one new shipping option may be provided to the user as prompt 1410, where such an option may be provided bydevice application 103 and/or may be entered manually by a user. In response to selection or entry of such a new shipping address,screen 190 c ofFIG. 14C may be generated and provided (e.g., by following steps similar to one or more of steps 702-714), in which at least a selected new shipping option from prompt 1410 ofFIG. 14B may be shown (e.g., shipping option “E” ofshipping information 1407 d ofFIG. 14C ) and updatedprice information 1407 c may also be shown (e.g., updated price “C*” ofprice information 1407 c ofFIG. 14C ), where price C* ofFIG. 14C may differ from price C ofFIGS. 14A and 14B based on updated shipping costs that may be due to the change from shipping address D ofFIGS. 14A and 14B to the new shipping address E, and where updated price C* may be determined seamlessly and/or transparently to the user (e.g., as described above with respect to steps 704-712). - Additionally or alternatively,
screen 190 a ofFIG. 14A and/orscreen 190 c ofFIG. 14C may prompt a user to interact withdevice 100 in one or more ways to make a purchase (e.g., purchase prompt 1411). In response to selection of such apurchase prompt 1411,screen 190 c ofFIG. 14C may be generated and provided (e.g., by following steps similar to one or more of steps 702-714), in which acredential selection prompt 1413 may be provided that may enable a user to select one of potentially multiple credentials that may be provisioned on device 100 (e.g., the credential ofcredential SSD 154 a), where such credential option(s) may be provided by device application 103 (e.g., as at least a portion of response data 756). In response to selection of one credential option ofscreen 190 c,screen 190 d ofFIG. 14D may be generated and provided (e.g., by following steps similar to one or more of steps 702-714), in which at least a selected credential from prompt 1413 ofFIG. 14C may be shown (e.g., credential option “X” ofcredential information 1407 e ofFIG. 14D ).Screen 190 d ofFIG. 14D may prompt a user to interact withdevice 100 in one or more ways to authenticate the user and its intent to utilize the selected credential in an online transaction. This may include prompting the user (e.g., with anauthentication prompt 1415 ofFIG. 14D ) to enter user authentication in any suitable way (e.g., via personal identification number (“PIN”) entry or via user interaction with a biometric sensor, for example, via I/O interface 114 a or any other suitable input component) in order to access the secure element ofdevice 100 and, thus, the credential to be used for the purchase (e.g., as described above with respect to step 611 of process 600). Therefore, in some embodiments, user input 764 ofstep 714 of process 700 may be substantially similar to authentication/intent described above with respect to step 611 of process 600 ofFIG. 6 .Access SSD 154 b may leverageapplet 153 b to determine whether such authentication has occurred before allowing other SSDs 154 (e.g.,credential SSD 154 a) to be used for enabling its credential information in a commerce credential data communication. As just one example of such astep 714,applet 153 b ofaccess SSD 154 b may be configured to determine intent and local authentication of a user of device 100 (e.g., via one ormore input components 110, such as a biometric input component 110 i ofFIG. 4 , as may be used by a user interacting withapplication 113 via GUI 180) and, in response to such a determination, may be configured to enable another particular SSD for conducting a payment transaction (e.g., with a credential ofcredential SSD 154 a). For example,SSD 154 b may communicate withSSD 154 a via a shareable interface object (“SIO”) or any other suitable techniques. In some embodiments, after such a determination, but before such enablement,device 100 may be configured to providescreen 190 e ofFIG. 14E that may prompt a user (e.g., with a payment prompt 1417) to interact withdevice 100 in one or more ways to finally initiate payment tomerchant subsystem 200 according topotential transaction data 752/762 using the selected and authenticated credential. - In response to a user input 764 that may appropriately provide necessary intent and authentication to enable a selected credential for use in an online transaction, process 700 may proceed to step 716, in which
merchant application 113 may generate and share updateddevice transaction data 766 withdevice application 103. Updateddevice transaction data 766 may include any suitable data as described above with respect totransaction data 752 and/ortransaction data 760 but may be updated based on any/all transaction selections made by a user (e.g., as shown byscreen 190 d orscreen 190 e). Next, atstep 718,device application 103 may usesuch transaction data 766 to generate and transmit acredential request 768 to secureelement 145. For example,device application 103 may be configured to communicate withsecure element 145 via a wired interface (e.g., via an NFC controller). In some embodiments,device application 103 may be configured to communicate directly withaccess SSD 154 b and/orISD 152, thereby authenticating a request to dispense payment credentials.Credential request 768 may not only include an authenticated request to utilize a selected credential in an online transaction withmerchant application 113, butcredential request 768 may include at least some information particular tomerchant application 113 and/or to the particular transaction as may be defined bytransaction data 766. For example,credential request 768 may include a unique merchant identifier formerchant application 113 and/or a merchant responsible for that online resource, where such a unique merchant identifier may be realized fromtransaction data 766. - In response to a
credential request 768 indicative of a unique merchant identifier being received bysecure element 145 atstep 718,secure element 145 may be configured atstep 720 to generate encryptedCE credential data 770, which may be similar to encryptedCE credential data 663 of process 600. For example, encryptedCE credential data 770 may be generated bysecure element 145 atstep 720 by encrypting SE credential data (e.g.,SE credential data 661 ofSSD 154 a) withcredential key 155 a′ as encrypted SE credential data (e.g., encrypted SE credential data 662) and then encrypting not only such encrypted SE credential data but also an SE merchant identifier 719 (e.g., a merchant identifier generated bysecure element 145 based on information from credential request 768) with any suitable access information (e.g., 155 a, 155 b, 156 k, 151 k, and/or 158 k) as encryptedCE credential data 770. Such anSE merchant identifier 719 that may be encrypted along with encrypted SE credential data as encryptedCE credential data 770 may also be generated atstep 720 using unique merchant identifier information fromcredential request 768. For example,secure element 145 may be configured to use a cryptographic hash function on the unique merchant identifier fromcredential request 768 in order to generateSE merchant identifier 719 that may then be processed (e.g., encrypted) bysecure element 145. That is,secure element 145 may deriveSE merchant identifier 719 from the unique merchant identifier of credential request 768 (e.g., from a merchant identifier query string), for example, using a key derivation function (e.g., the X9.63 key derivation function, which may derive at least one 32-byte field arraySE merchant identifier 719 using a secure hash algorithm (e.g., a SHA-256 function)). This may allowSE merchant identifier 719 to be appropriately encrypted along with encrypted SE credential data as encryptedCE credential data 770 atstep 720 bysecure element 145. By cryptographically binding a unique merchant identifier with encrypted credential data usingsecure element 145, that version of the unique merchant identifier may not be tampered with by other portions ofdevice 100 off of secure element 145 (e.g., by device application 103) that may not have access to the access information used (e.g., 155 a, 155 b, 156 k, 151 k, and/or 158 k). Then, atstep 722,secure element 145 may be configured to share such encryptedCE credential data 770 withdevice application 103. - At
step 724,device application 103 may be configured to generate and transmit commercialentity transaction data 774 tocommercial entity subsystem 400, where commercialentity transaction data 774 may include encryptedCE credential data 770 and any other suitable information.CE transaction data 774 may be similar toCE transaction data 664 of process 600.CE transaction data 774 may include not only encryptedCE credential data 770 but also an unencrypted merchant identifier (e.g., a unique merchant identifier fromtransaction data 766 that may have also been provided to secureelement 145 atstep 718 as a portion of credential request 768). That is, not only mayCE transaction data 774 include encryptedCE credential data 770, which itself may include a hashed and/or encrypted version of a unique merchant identifier (e.g., from device transaction data 766), butCE transaction data 774 may also include a non-hashed and unencrypted version of that unique merchant identifier (e.g., from device transaction data 766). Moreover, other information from thedevice transaction data 766, such as an identification of device 100 (e.g., an “SEID”), a transaction amount, a currency type, and/or any other suitable information, may also be included as part ofCE transaction data 774. - At
step 726 of process 700,commercial entity subsystem 400 may be configured to generate encrypted merchant credential data 776 based on receivedCE transaction data 774. In some embodiments, encrypted merchant credential data 776 may be similar to encrypted merchant credential data 667 of process 600. For example,commercial entity subsystem 400 may access the unencrypted unique merchant identifier from a first portion ofCE transaction data 774 and also decrypt a second portion of CE transaction data 774 (e.g., encrypted SE credential data 770) with certain access information (e.g., 155 a, 155 b, 156 k, 151 k, and/or 158 k) to access the hashed version of the unique merchant identifier (e.g., SE merchant identifier 719) as well as the encrypted SE credential data.Commercial entity subsystem 400 may use the unencrypted unique merchant identifier and/or the decrypted hashed version of the unique merchant identifier (e.g., SE merchant identifier 719) to identify the appropriate merchant key 157 accessible tocommercial entity subsystem 400 that may then be used for re-encrypting the encrypted SE credential data with that identifiedmerchant key 157 as encrypted merchant credential data 776.Commercial entity subsystem 400 may or may not re-encrypt the decrypted hashed version of the unique merchant identifier (e.g., SE merchant identifier 719) along with the encrypted SE credential data using the identifiedmerchant key 157 as encrypted merchant credential data 776 atstep 726. In some embodiments,commercial entity subsystem 400 may also be configured to compare the unencrypted unique merchant identifier with the decrypted hashed version of the unique merchant identifier (e.g., SE merchant identifier 719), for example, by using a similar key derivation function on the unencrypted unique merchant identifier as used by secure element 145 (e.g., the X9.63 key derivation function, which may derive at least one 32-byte field array using a secure hash algorithm (e.g., a SHA-256 function)) and comparing it to the decrypted hashed version of the unique merchant identifier (e.g., SE merchant identifier 719). In such embodiments, process 700 may only proceed if the comparison is successful or valid (e.g., if the two unique merchant identifiers are a match). Otherwise, an error may be generated for further investigation. In some embodiments, such a comparison may only be done after the unencrypted unique merchant identifier has been used to identify a valid merchant key 157 (e.g., so as not to waste time doing the comparison if the unencrypted unique merchant identifier will not reveal a valid merchant key 157 (e.g., through use of table 430)). Moreover, certain additional information included in CE transaction data 774 (e.g., merchant identifier, price amount, currency type, electronic device identification, etc.) may also be used by commercial entity subsystem 400 (e.g., at step 726) for various reasons, such as velocity checking, purchase fraud checking and alerting, and the like. - At
step 728,commercial entity subsystem 400 may generate and transmitmerchant transaction data 778 todevice application 103. In some embodiments,merchant transaction data 778 may be similar tomerchant transaction data 668 of process 600.Merchant transaction data 778 may include encrypted merchant credential data 776 and any other suitable information. For example, along with encrypted merchant credential data 776,merchant transaction data 778 may include a timestamp generated bycommercial entity subsystem 400 indicating the time that such encrypted merchant credential data 776 was generated bycommercial entity subsystem 400. Such a timestamp may be later used by another entity of system 1 (e.g., merchant subsystem 200) to determine whether the data it may receive during process 700 (e.g., encrypted merchant credential data 776 as at least a portion ofcommunication 782 described below) has been generated recently enough to reliably ensure that such received data was not fabricated maliciously. Atstep 730,device application 103 may be configured to generate and share updatedmerchant transaction data 780 withmerchant application 113, where updatedmerchant transaction data 780 may includemerchant transaction data 778 and any other suitable information, such as the full shipping information for the transaction (e.g.,shipping information 1407 d ofscreens step 732,merchant application 113 may be configured to generate and transmit online-basedcommunication 782 tomerchant subsystem 200, where online-basedcommunication 782 may include at least a portion of updated merchant transaction data 780 (e.g., at least merchant transaction data 778) and any other suitable information, such as information local tomerchant application 113. In some embodiments, online-basedcommunication 782 may be similar to online-basedcommunication 670 of process 600. In some embodiments, a time stamp that may have been generated and included indata 778 bycommercial entity subsystem 400 atstep 728 may be received and analyzed bymerchant subsystem 200 as a portion ofdata 782 atstep 732. Such analysis (e.g., comparison of the time stamp to the time at whichdata 782 was received) may be used bymerchant subsystem 200 to determine whetherdata 782 may be trustworthy or whether such a time stamp is missing or too old compared to receipt ofdata 782, which may thereby indicate potential fraud. If such time stamp analysis is acceptable,merchant subsystem 200 may leveragedata 782 to continue conducting a financial transaction (e.g., as described above with respect to steps 623-630 of process 600). As mentioned above, after a user ofdevice 100 may provide intent and authentication to utilize a specific credential for carrying out a financial transaction based onpotential transaction data step 714, the remaining steps of process 700 may occur transparent to the user. That is, once the user provides authentication and/or intent atstep 714, steps 716-732 may occur without any further user interaction and may seem instantaneous to a user, whereby process 700 appears to a user as if, afterstep 714, credential data is automatically and instantaneously sent tomerchant subsystem 200. - It is understood that the steps shown in process 700 of
FIG. 7 are merely illustrative and that existing steps may be modified or omitted, additional steps may be added, and the order of certain steps may be altered. -
FIG. 8 is a flowchart of anillustrative process 800 for securely conducting online payments. Atstep 802,process 800 may include receiving, with a commercial entity, first data from an electronic device, where the first data includes credential information and merchant information indicative of a merchant. For example,commercial entity subsystem 400 may receivedata 664 that may include credential data (e.g., encryptedSE credential data 662 associated withcredential SSD 154 a of device 100) and information indicative of a merchant (e.g., based on potential transaction data 660). Next, atstep 804,process 800 may include decrypting, with the commercial entity, the first data using an access key. For example,commercial entity subsystem 400 may decryptdata 664 using access information (e.g., 155 a, 155 b, 156 k, 151 k, and/or 158 k). Next, atstep 806,process 800 may include identifying, with the commercial entity, a merchant key based on the merchant information from the first data. For example,commercial entity subsystem 400 may identify amerchant key 157 based on the merchant information from data 664 (e.g., using table 430). Next, at step 808,process 800 may include encrypting, with the commercial entity, the credential information using the identified merchant key. For example,commercial entity subsystem 400 may encrypt the credential information from data 664 (e.g., encryptedSE credential data 662 from data 664) usingmerchant key 157. Then, atstep 810,process 800 may include transmitting, with the commercial entity, second data to at least one of the merchant and the electronic device, where the second data may include the credential information encrypted with the identified merchant key. For example,commercial entity subsystem 400 may transmitdata 668 todevice 100 and/ordata 671 tomerchant subsystem 200. - It is understood that the steps shown in
process 800 ofFIG. 8 are merely illustrative and that existing steps may be modified or omitted, additional steps may be added, and the order of certain steps may be altered. -
FIG. 9 is a flowchart of an illustrative process 900 for securely conducting online payments. Atstep 902, process 900 may include generating, with an electronic device, first data by encrypting credential data with a credential key. For example, a secure element ofdevice 100 may generate first data (e.g., encrypted SE credential data 662) by encrypting credential data (e.g.,SE credential data 661 ofapplet 153 a ofcredential SSD 154 a) withcredential key 155 a′. Next, atstep 904, process 900 may include generating, with the electronic device, second data by encrypting the first data with an access key. For example,device 100 may generate second data (e.g., encrypted commercial entity credential data 663) by encrypting the first data (e.g., encrypted SE credential data 662) with access information (e.g., 155 a, 155 b, 156 k, 151 k, and/or 158 k). Next, atstep 906, process 900 may include accessing, with the electronic device, an online resource of a merchant. For example,device 100 may access a third party application (e.g., application 113) or a website resource of a merchant ofmerchant subsystem 200. Next, atstep 908, process 900 may include identifying, with the electronic device, merchant information indicative of the merchant from the accessed online resource. For example,device 100 may identify merchant information (e.g., via potential transaction data 660) from the accessed online resource. Next, atstep 910, process 900 may include transmitting, with the electronic device, to a commercial entity the generated second data and the identified merchant information. For example,device 100 may transmit tocommercial entity subsystem 400 the generated second data (e.g., encrypted commercial entity credential data 663) and the identified merchant data as commercialentity transaction data 664. - It is understood that the steps shown in process 900 of
FIG. 9 are merely illustrative and that existing steps may be modified or omitted, additional steps may be added, and the order of certain steps may be altered. -
FIG. 10 is a flowchart of an illustrative process 1000 for securely conducting online payments. Atstep 1002, process 1000 includes generating, with an electronic device, first data that includes credential data. For example,device 100 may generate first data by encrypting credential data (e.g.,SE credential data 661 ofcredential SSD 154 a) withcredential key 155 a′. Next, atstep 1004, process 1000 may include generating, with the electronic device, second data by encrypting the first data with an access key. For example,device 100 may generate second data (e.g., encrypted commercial entity credential data 663) by encrypting the first data (e.g.,SE credential data 661 and/or encrypted SE credential data 662) with access information (e.g., 155 a, 155 b, 156 k, 151 k, and/or 158 k). Next, atstep 1006, process 1000 may include transmitting, with the electronic device, to a commercial entity the generated second data and merchant information. For example,device 100 may transmit tocommercial entity subsystem 400 the generated second data (e.g., encrypted commercial entity credential data 663) and merchant data (e.g., from transaction data 660) as commercialentity transaction data 664. Next, atstep 1008, process 1000 may include receiving, with the electronic device, third data that includes the first data encrypted with a merchant key that is associated with the merchant information. For example,electronic device 100 may receivemerchant transaction data 668 that may includeSE credential data 661 and/or encryptedSE credential data 662 encrypted with amerchant key 157. Then, atstep 1010, process 1000 may include transmitting, with the electronic device, the received third data to a merchant that is associated with the merchant information, where the merchant key is not accessible to the electronic device. For example,device 100 may transmitmerchant transaction data 668 as at least a portion of online-basedcommunication 670 on tomerchant subsystem 200, wheredevice 100 may not have access tomerchant key 157. - It is understood that the steps shown in process 1000 of
FIG. 10 are merely illustrative and that existing steps may be modified or omitted, additional steps may be added, and the order of certain steps may be altered. -
FIG. 11 is a flowchart of anillustrative process 1100 for securely conducting online payments. Atstep 1102,process 1100 may include receiving, with an electronic device, first potential transaction data from an online resource of a merchant. For example, as described above,device application 103 ofdevice 100 may receivetransaction data 754 frommerchant application 113 at step 704 of process 700. Next, atstep 1104,process 1100 may include automatically identifying, with the electronic device, additional information local to the electronic device based on the received first transaction data. For example, as described above,device application 103 may identifyresponse data 756 atstep 706 of process 700, such as default shipping address information from a contact card local todevice 100 for a potential transaction in response to receivingtransaction data 754 from amerchant application 113. Next, atstep 1106,process 1100 may include providing, with the electronic device, the identified additional information and at least a portion of the received first potential transaction data to a user of the electronic device. For example, as described,device application 103 and/ormerchant application 113 may providescreen 190 a ofFIG. 14A to a user ofdevice 100 wherescreen 190 a may includeshipping information 1407 d fromresponse data 756 andproduct information 1407 b fromtransaction data 752/754. - It is understood that the steps shown in
process 1100 ofFIG. 11 are merely illustrative and that existing steps may be modified or omitted, additional steps may be added, and the order of certain steps may be altered. -
FIG. 12 is a flowchart of anillustrative process 1200 for securely conducting online payments. Atstep 1202,process 1200 may include receiving, with an electronic device, transaction data from an online resource of a merchant. For example, as described above,device application 103 ofdevice 100 may receivetransaction data 754 frommerchant application 113 at step 704 of process 700. Next, atstep 1204,process 1200 may include accessing, with the electronic device, first data that comprises credential data. For example, as described above,device 100 may access credential data (e.g.,SE credential data 661 ofcredential SSD 154 a). Next, atstep 1206,process 1200 may include generating, with the electronic device, second data by encrypting the first data and a merchant identifier of the received transaction data with an access key. For example, as described above,secure element 145 may generate encryptedCE credential data 770 by encrypting SE credential data and anSE merchant ID 719 with access information (e.g., 155 a, 155 b, 156 k, 151 k, and/or 158 k). - It is understood that the steps shown in
process 1200 ofFIG. 12 are merely illustrative and that existing steps may be modified or omitted, additional steps may be added, and the order of certain steps may be altered. -
FIG. 13 is a flowchart of anillustrative process 1300 for securely conducting online payments. Atstep 1302,process 1300 may include receiving, with a commercial entity, first data and second data from an electronic device, wherein the first data may include credential information and a first merchant identifier encrypted by an access key, and wherein the second data may include a second merchant identifier. For example, as described above, commercialentity transaction data 774 may include credential information andSE merchant identifier 719 as well as another form of a merchant identifier. Next, atstep 1304,process 1300 may include identifying, with the commercial entity, a merchant key based on at least one of the first merchant identifier and the second merchant identifier. For example, as described above,commercial entity subsystem 400 may identify amerchant key 157 based on the merchant information from data 774 (e.g., using table 430) atstep 726 of process 700. - It is understood that the steps shown in
process 1300 ofFIG. 13 are merely illustrative and that existing steps may be modified or omitted, additional steps may be added, and the order of certain steps may be altered. - Although not shown,
commercial entity subsystem 400 ofFIG. 1A may be a secure platform system and may include a secure mobile platform (“SMP”) broker component, an SMP trusted services manager (“TSM”) component, an SMP crypto services component, an identity management system (“IDMS”) component, a fraud system component, a hardware security module (“HSM”) component, and/or a store component. One, some, or all components ofcommercial entity subsystem 400 may be implemented using one or more processor components, which may be the same as or similar toprocessor component 102 ofdevice 100, one or more memory components, which may be the same as or similar to memory component 104 ofdevice 100, and/or one or more communications components, which may be the same as or similar tocommunications component 106 ofdevice 100. One, some, or all components ofcommercial entity subsystem 400 may be managed by, owned by, at least partially controlled by, and/or otherwise provided by a single commercial entity (e.g., Apple Inc.) that may be distinct and independent fromfinancial institution subsystem 350. The components ofcommercial entity subsystem 400 may interact with each other and collectively with bothfinancial institution subsystem 350 andelectronic device 100 for providing a new layer of security and/or for providing a more seamless user experience. - An SMP broker component of
commercial entity subsystem 400 may be configured to manage user authentication with a commercial entity user account. Such an SMP broker component may also be configured to manage the life cycle and provisioning of credentials ondevice 100. An SMP broker component may be a primary end point that may control the user interface elements (e.g., elements of GUI 180) ondevice 100. An operating system or other application of device 100 (e.g.,application 103,application 113, and/or application 143) may be configured to call specific application programming interfaces (“APIs”) and an SMP broker component may be configured to process requests of those APIs and respond with data that may derive the user interface ofdevice 100 and/or respond with application protocol data units (“APDUs”) that may communicate withsecure element 145 of NFC component 120 (e.g., via acommunication path 65 betweencommercial entity subsystem 400 and electronic device 100). Such APDUs may be received bycommercial entity subsystem 400 fromfinancial institution subsystem 350 via a trusted services manager (“TSM”) of system 1 (e.g., a TSM of acommunication path 55 betweencommercial entity subsystem 400 and financial institution subsystem 350). An SMP TSM component ofcommercial entity subsystem 400 may be configured to provide GlobalPlatform-based services that may be used to carry out operations ondevice 100 in concert withfinancial institution subsystem 350. GlobalPlatform, or any other suitable secure channel protocol, may enable such an SMP TSM component to properly communicate and/or provision sensitive account data betweensecure element 145 ofdevice 100 and a TSM for secure data communication betweencommercial entity subsystem 400 andfinancial institution subsystem 350. - An SMP TSM component of
commercial entity subsystem 400 may be configured to use an HSM component ofcommercial entity subsystem 400 to protect its keys and generate new keys. An SMP crypto services component ofcommercial entity subsystem 400 may be configured to provide key management and cryptography operations that may be required for user authentication and/or confidential data transmission between various components ofsystem 1. Such an SMP crypto services component may utilize an HSM component ofcommercial entity subsystem 400 for secure key storage and/or opaque cryptographic operations. A payment crypto service of an SMP crypto services component ofcommercial entity subsystem 400 may be configured to interact with an IDMS component ofcommercial entity subsystem 400 to retrieve on-file credit cards or other types of commerce credentials associated with user accounts of the commercial entity. Such a payment crypto service may be configured to be the only component ofcommercial entity subsystem 400 that may have clear text (i.e., non-hashed) information describing commerce credentials (e.g., credit card numbers) of its user accounts in memory. A commercial entity fraud system component ofcommercial entity subsystem 400 may be configured to run a commercial entity fraud check on a commerce credential based on data known to the commercial entity about the commerce credential and/or the user (e.g., based on data (e.g., commerce credential information) associated with a user account with the commercial entity and/or any other suitable data that may be under the control of the commercial entity and/or any other suitable data that may not be under the control of financial institution subsystem 350). Such a commercial entity fraud system component ofcommercial entity subsystem 400 may be configured to determine a commercial entity fraud score for the credential based on various factors or thresholds. Additionally or alternatively,commercial entity subsystem 400 may include a store component, which may be a provider of various services to users of device 100 (e.g., the iTunes™ Store for selling/renting media to be played bydevice 100, the Apple App Store™ for selling/renting applications for use ondevice 100, the Apple iCloud™ Service for storing data fromdevice 100, the Apple Online Store for buying various Apple products online, etc.). As just one example, such a store component ofcommercial entity subsystem 400 may be configured to manage and provide anapplication 113 to device 100 (e.g., via communications path 65), whereapplication 113 may be any suitable application, such as a banking application, an e-mail application, a text messaging application, an internet application, or any other suitable application. Any suitable communication protocol or combination of communication protocols may be used bycommercial entity subsystem 400 to communicate data amongst the various components ofcommercial entity subsystem 400 and/or to communicate data betweencommercial entity subsystem 400 and other components of system 1 (e.g.,financial institution subsystem 350 viacommunications path 55 ofFIG. 1A and/orelectronic device 100 viacommunications path 65 ofFIG. 1A ). - When a credential of a secure element of
device 100 is appropriately enabled (e.g., commerce credential data associated with anenabled applet 153 a ofcredential SSD 154 a of NFC component 120) so as to be provided as a commerce credential data communication to merchant subsystem 200 (e.g., as a contactless proximity-based communication to a merchant terminal and/or as an online-basedcommunication 670 to a merchant server 210), acquiringbank subsystem 300 may utilize such a commerce credential data communication for completing a financial transaction withfinancial institution subsystem 350. For example, after a user ofelectronic device 100 has chosen a product for purchase and has appropriately enabled a specific credential ofdevice 100 to be used for payment,merchant subsystem 200 may receive an appropriate commerce credential data communication indicative of commerce credential data for the specific credential.Merchant server 210 and/or a merchant terminal may be provided by any suitable merchant or merchant agent ofmerchant subsystem 200 that may provide a product or service to a user ofdevice 100 in response todevice 100 providing payment credentials via such a commerce credential data communication. Based on such a received commerce credential data communication (e.g., communication 670),merchant subsystem 200 may be configured to generate and transmitdata 673 to acquiring bank subsystem 300 (e.g., via acommunication path 25 betweenmerchant subsystem 200 and acquiring bank subsystem 300), wheredata 673 may include payment information and an authorization request that may be indicative of the user's commerce credential and the merchant's purchase price for the product or service. Also known as a payment processor or acquirer, acquiringbank subsystem 300 may be a banking partner of the merchant associated withmerchant subsystem 200, and acquiringbank subsystem 300 may be configured to work withfinancial institution subsystem 350 to approve and settle credential transactions attempted byelectronic device 100 via a commerce credential data communication (e.g., via a contactless proximity-based communication and/or via an online-based communication 670) withmerchant subsystem 200. Acquiringbank subsystem 300 may then forward the authorization request fromdata 673 tofinancial institution subsystem 350 as data 674 (e.g., via acommunication path 35 between acquiringbank subsystem 300 and financial institution subsystem 350). -
Payment network subsystem 360 and issuingbank subsystem 370 may be a single entity or separate entities. For example, American Express may be both apayment network subsystem 360 and an issuingbank subsystem 370. In contrast, Visa and MasterCard may bepayment networks 360, and may work in cooperation with issuingbanks 370, such as Chase, Wells Fargo, Bank of America, and the like.Financial institution subsystem 350 may also include one or more acquiring banks, such as acquiringbank subsystem 300. For example, acquiringbank subsystem 300 may be the same entity as issuingbank subsystem 370. One, some, or all components of acquiringbank subsystem 300 may be implemented using one or more processor components, which may be the same as or similar toprocessor component 102 ofdevice 100, one or more memory components, which may be the same as or similar to memory component 104 ofdevice 100, and/or one or more communications components, which may be the same as or similar tocommunications component 106 ofdevice 100. One, some, or all components ofpayment network subsystem 360 may be implemented using one or more processor components, which may be the same as or similar toprocessor component 102 ofdevice 100, one or more memory components, which may be the same as or similar to memory component 104 ofdevice 100, and/or one or more communications components, which may be the same as or similar tocommunications component 106 ofdevice 100. One, some, or all components of issuingbank subsystem 370 may be implemented using one or more processor components, which may be the same as or similar toprocessor component 102 ofdevice 100, one or more memory components, which may be the same as or similar to memory component 104 ofdevice 100, and/or one or more communications components, which may be the same as or similar tocommunications component 106 ofdevice 100. In the case ofpayment network subsystem 360 and issuingbank subsystem 370 being separate entities,payment network subsystem 360 may receive the authorization request ofdata 674 from acquiringbank subsystem 300 and may then forward the request to issuingbank subsystem 370 as data 405 (e.g., via acommunication path 45 betweenpayment network subsystem 360 and issuing bank subsystem 370). In the case ofpayment network subsystem 360 and issuingbank subsystem 370 being the same entity, acquiringbank subsystem 300 may submit the authorization request ofdata 674 directly to issuingbank subsystem 370. Furthermore,payment network subsystem 360 may respond to acquiringbank subsystem 300 on behalf of issuing bank subsystem 370 (e.g., according to conditions agreed upon betweenpayment network subsystem 360 and issuing bank subsystem 370). By interfacing between acquiringbank subsystem 300 and issuingbank subsystem 370,payment network subsystem 360 may reduce the number of entities that each acquiringbank subsystem 300 and each issuingbank subsystem 370 may have to interact with directly. That is, to minimize direct integration points offinancial institution subsystem 350,payment network subsystem 360 may act as an aggregator for various issuingbanks 370 and/or various acquiringbanks 300.Financial institution subsystem 350 may also include one or more acquiring banks, such as acquiringbank subsystem 300. For example, acquiringbank subsystem 300 may be the same entity as issuingbank subsystem 370. - When issuing
bank subsystem 370 receives an authorization request (e.g., directly from acquiringbank subsystem 300 asdata 674 or indirectly viapayment network subsystem 360 as data 405), the payment information (e.g., commerce credential information of device 100) and the purchase amount included in the authorization request may be analyzed to determine if the account associated with the commerce credential has enough credit to cover the purchase amount. If sufficient funds are not present, issuingbank subsystem 370 may decline the requested transaction by transmitting a negative authorization response to acquiringbank subsystem 300. However, if sufficient funds are present, issuingbank subsystem 370 may approve the requested transaction by transmitting a positive authorization response to acquiringbank subsystem 300 and the financial transaction may be completed. Either type of authorization response may be provided by userfinancial subsystem 350 to acquiringbank subsystem 300 as authorization response data 676 (e.g.,authorization response data 676 may be provided directly from issuingbank subsystem 370 to acquiringbank subsystem 300 viacommunication path 35, orauthorization response data 676 may be provided frompayment network subsystem 360 to acquiringbank subsystem 300 based onauthorization response data 415 that may be provided topayment network subsystem 360 from issuingbank subsystem 370 via communication path 45). - As mentioned, and as shown in
FIG. 2 ,electronic device 100 can include, but is not limited to, a music player (e.g., an iPod™ available by Apple Inc. of Cupertino, Calif.), video player, still image player, game player, other media player, music recorder, movie or video camera or recorder, still camera, other media recorder, radio, medical equipment, domestic appliance, transportation vehicle instrument, musical instrument, calculator, cellular telephone (e.g., an iPhone™ available by Apple Inc.), other wireless communication device, personal digital assistant, remote control, pager, computer (e.g., a desktop, laptop, tablet (e.g., an iPad™ available by Apple Inc.), server, etc.), monitor, television, stereo equipment, set up box, set-top box, boom box, modem, router, printer, or any combination thereof. In some embodiments,electronic device 100 may perform a single function (e.g., a device dedicated to conducting financial transactions) and, in other embodiments,electronic device 100 may perform multiple functions (e.g., a device that conducts financial transactions, plays music, and receives and transmits telephone calls).Electronic device 100 may be any portable, mobile, hand-held, or miniature electronic device that may be configured to conduct financial transactions wherever a user travels. Some miniature electronic devices may have a form factor that is smaller than that of hand-held electronic devices, such as an iPod™. Illustrative miniature electronic devices can be integrated into various objects that may include, but are not limited to, watches, rings, necklaces, belts, accessories for belts, headsets, accessories for shoes, virtual reality devices, glasses, other wearable electronics, accessories for sporting equipment, accessories for fitness equipment, key chains, or any combination thereof. Alternatively,electronic device 100 may not be portable at all, but may instead be generally stationary. - As shown in
FIG. 2 , for example,electronic device 100 may include aprocessor 102, memory 104,communications component 106,power supply 108,input component 110, output component 112, antenna 116, and near field communication (“NFC”)component 120.Electronic device 100 may also include abus 118 that may provide one or more wired or wireless communication links or paths for transferring data and/or power to, from, or between various other components ofdevice 100. In some embodiments, one or more components ofelectronic device 100 may be combined or omitted. Moreover,electronic device 100 may include other components not combined or included inFIG. 2 . For example,electronic device 100 may include any other suitable components or several instances of the components shown inFIG. 2 . For the sake of simplicity, only one of each of the components is shown inFIG. 2 . - Memory 104 may include one or more storage mediums, including for example, a hard-drive, flash memory, permanent memory such as read-only memory (“ROM”), semi-permanent memory such as random access memory (“RAM”), any other suitable type of storage component, or any combination thereof. Memory 104 may include cache memory, which may be one or more different types of memory used for temporarily storing data for electronic device applications. Memory 104 may be fixedly embedded within
electronic device 100 or may be incorporated on one or more suitable types of cards that may be repeatedly inserted into and removed from electronic device 100 (e.g., a subscriber identity module (“SIM”) card or secure digital (“SD”) memory card). Memory 104 may store media data (e.g., music and image files), software (e.g., for implementing functions on device 100), firmware, preference information (e.g., media playback preferences), lifestyle information (e.g., food preferences), exercise information (e.g., information obtained by exercise monitoring equipment), transaction information (e.g., information such as credit card information), wireless connection information (e.g., information that may enabledevice 100 to establish a wireless connection), subscription information (e.g., information that keeps track of podcasts or television shows or other media a user subscribes to), contact information (e.g., telephone numbers and e-mail addresses), calendar information, any other suitable data, or any combination thereof. -
Communications component 106 may be provided to allowdevice 100 to communicate with one or more other electronic devices or servers or subsystems (e.g., one or more subsystems or other components of system 1) using any suitable communications protocol. For example, communications component 106 may support Wi-Fi (e.g., an 802.11 protocol), ZigBee (e.g., an 802.15.4 protocol), WiDi™, Ethernet, Bluetooth™, Bluetooth™ Low Energy (“BLE”), high frequency systems (e.g., 900 MHz, 2.4 GHz, and 5.6 GHz communication systems), infrared, transmission control protocol/internet protocol (“TCP/IP”) (e.g., any of the protocols used in each of the TCP/IP layers), Stream Control Transmission Protocol (“SCTP”), Dynamic Host Configuration Protocol (“DHCP”), hypertext transfer protocol (“HTTP”), BitTorrent™, file transfer protocol (“FTP”), real-time transport protocol (“RTP”), real-time streaming protocol (“RTSP”), real-time control protocol (“RTCP”), Remote Audio Output Protocol (“RAOP”), Real Data Transport Protocol™ (“RDTP”), User Datagram Protocol (“UDP”), secure shell protocol (“SSH”), wireless distribution system (“WDS”) bridging, any communications protocol that may be used by wireless and cellular telephones and personal e-mail devices (e.g., Global System for Mobile Communications (“GSM”), GSM plus Enhanced Data rates for GSM Evolution (“EDGE”), Code Division Multiple Access (“CDMA”), Orthogonal Frequency-Division Multiple Access (“OFDMA”), high speed packet access (“HSPA”), multi-band, etc.), any communications protocol that may be used by a low power Wireless Personal Area Network (“6LoWPAN”) module, any other communications protocol, or any combination thereof.Communications component 106 may also include or be electrically coupled to any suitable transceiver circuitry (e.g., transceiver circuitry or antenna 116 via bus 118) that can enabledevice 100 to be communicatively coupled to another device (e.g., a host computer or an accessory device) and communicate with that other device wirelessly, or via a wired connection (e.g., using a connector port).Communications component 106 may be configured to determine a geographical position ofelectronic device 100. For example,communications component 106 may utilize the global positioning system (“GPS”) or a regional or site-wide positioning system that may use cell tower positioning technology or Wi-Fi technology. -
Power supply 108 can include any suitable circuitry for receiving and/or generating power, and for providing such power to one or more of the other components ofelectronic device 100. For example,power supply 108 can be coupled to a power grid (e.g., whendevice 100 is not acting as a portable device or when a battery of the device is being charged at an electrical outlet with power generated by an electrical power plant). As another example,power supply 108 can be configured to generate power from a natural source (e.g., solar power using solar cells). As another example,power supply 108 can include one or more batteries for providing power (e.g., whendevice 100 is acting as a portable device). For example,power supply 108 can include one or more of a battery (e.g., a gel, nickel metal hydride, nickel cadmium, nickel hydrogen, lead acid, or lithium-ion battery), an uninterruptible or continuous power supply (“UPS” or “CPS”), and circuitry for processing power received from a power generation source (e.g., power generated by an electrical power plant and delivered to the user via an electrical socket or otherwise). The power can be provided bypower supply 108 as alternating current or direct current, and may be processed to transform power or limit received power to particular characteristics. For example, the power can be transformed to or from direct current, and constrained to one or more values of average power, effective power, peak power, energy per pulse, voltage, current (e.g., measured in amperes), or any other characteristic of received power.Power supply 108 can be operative to request or provide particular amounts of power at different times, for example, based on the needs or requirements ofelectronic device 100 or periphery devices that may be coupled to electronic device 100 (e.g., to request more power when charging a battery than when the battery is already charged). - One or
more input components 110 may be provided to permit a user to interact or interface withdevice 100. For example,input component 110 can take a variety of forms, including, but not limited to, a touch pad, dial, click wheel, scroll wheel, touch screen, one or more buttons (e.g., a keyboard), mouse, joy stick, track ball, microphone, camera, scanner (e.g., a bar code scanner or any other suitable scanner that may obtain product identifying information from a code, such as a bar code, a QR code, or the like), proximity sensor, light detector, motion sensor, biometric sensor (e.g., a fingerprint reader or other feature recognition sensor, which may operate in conjunction with a feature-processing application that may be accessible toelectronic device 100 for authenticating a user), and combinations thereof. Eachinput component 110 can be configured to provide one or more dedicated control functions for making selections or issuing commands associated with operatingdevice 100. -
Electronic device 100 may also include one or more output components 112 that may present information (e.g., graphical, audible, and/or tactile information) to a user ofdevice 100. For example, output component 112 ofelectronic device 100 may take various forms, including, but not limited to, audio speakers, headphones, audio line-outs, visual displays, antennas, infrared ports, haptic output components (e.g., rumblers, vibrators, etc.), or combinations thereof. - As a specific example,
electronic device 100 may include a display output component as output component 112. Such a display output component may include any suitable type of display or interface for presenting visual data to a user. A display output component may include a display embedded indevice 100 or coupled to device 100 (e.g., a removable display). A display output component may include, for example, a liquid crystal display (“LCD”), a light emitting diode (“LED”) display, an organic light-emitting diode (“OLED”) display, a surface-conduction electron-emitter display (“SED”), a carbon nanotube display, a nanocrystal display, any other suitable type of display, or combination thereof. Alternatively, a display output component can include a movable display or a projecting system for providing a display of content on a surface remote fromelectronic device 100, such as, for example, a video projector, a head-up display, or a three-dimensional (e.g., holographic) display. As another example, a display output component may include a digital or mechanical viewfinder, such as a viewfinder of the type found in compact digital cameras, reflex cameras, or any other suitable still or video camera. A display output component may include display driver circuitry, circuitry for driving display drivers, or both, and such a display output component can be operative to display content (e.g., media playback information, application screens for applications implemented onelectronic device 100, information regarding ongoing communications operations, information regarding incoming communications requests, device operation screens, etc.) that may be under the direction ofprocessor 102. - It should be noted that one or more input components and one or more output components may sometimes be referred to collectively herein as an input/output (“I/O”) component or I/O interface (e.g.,
input component 110 and output component 112 as I/O component or I/O interface 114). For example,input component 110 and output component 112 may sometimes be a single I/O component 114, such as a touch screen, that may receive input information through a user's touch of a display screen and that may also provide visual information to a user via that same display screen. -
Processor 102 ofelectronic device 100 may include any processing circuitry that may be operative to control the operations and performance of one or more components ofelectronic device 100. For example,processor 102 may receive input signals frominput component 110 and/or drive output signals through output component 112. As shown inFIG. 2 ,processor 102 may be used to run one or more applications, such as anapplication 103, anapplication 113, and/or anapplication 143. Eachapplication 103/113/143 may include, but is not limited to, one or more operating system applications, firmware applications, media playback applications, media editing applications, NFC low power mode applications, biometric feature-processing applications, or any other suitable applications. For example,processor 102 may loadapplication 103/113/143 as a user interface program to determine how instructions or data received via aninput component 110 or other component ofdevice 100 may manipulate the way in which information may be stored and/or provided to the user via an output component 112.Application 103/113/143 may be accessed byprocessor 102 from any suitable source, such as from memory 104 (e.g., via bus 118) or from another device or server (e.g., via communications component 106).Processor 102 may include a single processor or multiple processors. For example,processor 102 may include at least one “general purpose” microprocessor, a combination of general and special purpose microprocessors, instruction set processors, graphics processors, video processors, and/or related chips sets, and/or special purpose microprocessors.Processor 102 also may include on board memory for caching purposes. -
Electronic device 100 may also include near field communication (“NFC”)component 120.NFC component 120 may be any suitable proximity-based communication mechanism that may enable contactless proximity-based transactions or communications betweenelectronic device 100 and merchant subsystem 200 (e.g., a merchant payment terminal).NFC component 120 may allow for close range communication at relatively low data rates (e.g., 424 kbps), and may comply with any suitable standards, such as ISO/IEC 7816, ISO/IEC 18092, ECMA-340, ISO/IEC 21481, ECMA-352, ISO 14443, and/or ISO 15693. Alternatively or additionally,NFC component 120 may allow for close range communication at relatively high data rates (e.g., 370 Mbps), and may comply with any suitable standards, such as the TransferJet™ protocol. Communication betweenNFC component 120 andmerchant subsystem 200 may occur within any suitable close range distance betweendevice 100 and merchant subsystem 200 (see, e.g., distance D ofFIG. 1A ), such as a range of approximately 2 to 4 centimeters, and may operate at any suitable frequency (e.g., 13.56 MHz). For example, such close range communication ofNFC component 120 may take place via magnetic field induction, which may allowNFC component 120 to communicate with other NFC devices and/or to retrieve information from tags having radio frequency identification (“RFID”) circuitry.NFC component 120 may provide a manner of acquiring merchandise information, transferring payment information, and otherwise communicating with an external device (e.g., a merchant terminal of merchant subsystem 200). -
NFC component 120 may include any suitable modules for enabling contactless proximity-based communication betweenelectronic device 100 andmerchant subsystem 200. As shown inFIG. 2 , for example,NFC component 120 may include anNFC device module 130, anNFC controller module 140, and anNFC memory module 150. -
NFC device module 130 may include anNFC data module 132, an NFC antenna 134, and an NFC booster 136.NFC data module 132 may be configured to contain, route, or otherwise provide any suitable data that may be transmitted byNFC component 120 tomerchant subsystem 200 as part of a contactless proximity-based or NFC communication 5. Additionally or alternatively,NFC data module 132 may be configured to contain, route, or otherwise receive any suitable data that may be received byNFC component 120 frommerchant subsystem 200 as part of a contactless proximity-based communication 5. - NFC transceiver or NFC antenna 134 may be any suitable antenna or other suitable transceiver circuitry that may generally enable communication of communication from
NFC data module 132 tomerchant subsystem 200 and/or toNFC data module 132 fromsubsystem 200. Therefore, NFC antenna 134 (e.g., a loop antenna) may be provided specifically for enabling the contactless proximity-based communication capabilities ofNFC component 120. - Alternatively or additionally,
NFC component 120 may utilize the same transceiver circuitry or antenna (e.g., antenna 116) that another communication component of electronic device 100 (e.g., communication component 106) may utilize. For example,communication component 106 may leverage antenna 116 to enable Wi-Fi, Bluetooth™, cellular, or GPS communication betweenelectronic device 100 and another remote entity, whileNFC component 120 may leverage antenna 116 to enable contactless proximity-based or NFC communication betweenNFC data module 132 ofNFC device module 130 and another entity (e.g., merchant subsystem 200). In such embodiments,NFC device module 130 may include NFC booster 136, which may be configured to provide appropriate signal amplification for data of NFC component 120 (e.g., data within NFC data module 132) so that such data may be appropriately transmitted by shared antenna 116 as communication tosubsystem 200. For example, shared antenna 116 may require amplification from booster 136 before antenna 116 (e.g., a non-loop antenna) may be properly enabled for communicating contactless proximity-based or NFC communication betweenelectronic device 100 and merchant subsystem 200 (e.g., more power may be needed to transmit NFC data using antenna 116 than may be needed to transmit other types of data using antenna 116). -
NFC controller module 140 may include at least oneNFC processor module 142.NFC processor module 142 may operate in conjunction withNFC device module 130 to enable, activate, allow, and/or otherwise controlNFC component 120 for communicating an NFC communication betweenelectronic device 100 andmerchant subsystem 200.NFC processor module 142 may exist as a separate component, may be integrated into another chipset, or may be integrated withprocessor 102, for example, as part of a system on a chip (“SoC”). As shown inFIG. 2 ,NFC processor module 142 ofNFC controller module 140 may be used to run one or more applications, such as an NFC low power mode orwallet application 143 that may help dictate the function ofNFC component 120.Application 143 may include, but is not limited to, one or more operating system applications, firmware applications, NFC low power applications, or any other suitable applications that may be accessible to NFC component 120 (e.g.,application 103/113).NFC controller module 140 may include one or more protocols, such as the Near Field Communication Interface and Protocols (“NFCIP-1”), for communicating with another NFC device (e.g., merchant subsystem 200). The protocols may be used to adapt the communication speed and to designate one of the connected devices as the initiator device that controls the near field communication. -
NFC controller module 140 may control the near field communication mode ofNFC component 120. For example,NFC processor module 142 may be configured to switchNFC device module 130 between a reader/writer mode for reading information (e.g., communication 5) from NFC tags (e.g., from merchant subsystem 200) toNFC data module 132, a peer-to-peer mode for exchanging data (e.g., communication 5) with another NFC enabled device (e.g., merchant subsystem 200), and a card emulation mode for allowing another NFC enabled device (e.g., merchant subsystem 200) to read information (e.g., communication 5) fromNFC data module 132.NFC controller module 140 also may be configured to switchNFC component 120 between active and passive modes. For example,NFC processor module 142 may be configured to switch NFC device module 130 (e.g., in conjunction with NFC antenna 134 or shared antenna 116) between an active mode whereNFC device module 130 may generate its own RF field and a passive mode whereNFC device module 130 may use load modulation to transfer data to another device generating an RF field (e.g., merchant subsystem 200). Operation in such a passive mode may prolong the battery life ofelectronic device 100 compared to operation in such an active mode. The modes ofNFC device module 130 may be controlled based on preferences of a user and/or based on preferences of a manufacturer ofdevice 100, which may be defined or otherwise dictated by an application running on device 100 (e.g.,application 103 and/or application 143). -
NFC memory module 150 may operate in conjunction withNFC device module 130 and/orNFC controller module 140 to allow for NFC communication betweenelectronic device 100 andmerchant subsystem 200.NFC memory module 150 may be embedded within NFC device hardware or within an NFC integrated circuit (“IC”).NFC memory module 150 may be tamper resistant and may provide at least a portion of a secure element. For example,NFC memory module 150 may store one or more applications relating to NFC communications (e.g., application 143) that may be accessed byNFC controller module 140. For example, such applications may include financial payment applications, secure access system applications, loyalty card applications, and other applications, which may be encrypted. In some embodiments,NFC controller module 140 andNFC memory module 150 may independently or in combination provide a dedicated microprocessor system that may contain an operating system, memory, application environment, and security protocols intended to be used to store and execute sensitive applications onelectronic device 100.NFC controller module 140 andNFC memory module 150 may independently or in combination provide at least a portion of asecure element 145, which may be tamper resistant. For example, such asecure element 145 may be configured to provide a tamper-resistant platform (e.g., as a single or multiple chip secure microcontroller) that may be capable of securely hosting applications and their confidential and cryptographic data (e.g., applet 153 and key 155) in accordance with rules and security requirements that may be set forth by a set of well-identified trusted authorities (e.g., an authority of financial institution subsystem and/or an industry standard, such as GlobalPlatform).NFC memory module 150 may be a portion ofmemory 106 or at least one dedicated chip specific toNFC component 120.NFC memory module 150 may reside on a SIM, a dedicated chip on a motherboard ofelectronic device 100, or as an external plug in memory card.NFC memory module 150 may be completely independent fromNFC controller module 140 and may be provided by different components ofdevice 100 and/or provided toelectronic device 100 by different removable subsystems.Secure element 145 may be a highly secure, tamper-resistant hardware component within a chip, which may be used for storing sensitive data or applications onelectronic device 100. At least a portion ofsecure element 145 may be provided in a removable circuit card, such as a universal integrated circuit card (“UICC”) or a subscriber identity module (“SIM”) card, that may be used inelectronic devices 100 compatible within global system for mobile communications (“GSM”) networks, universal mobile telecommunications systems (“UMTS”) and/or long-term evolution (“LTE”) standard networks. Alternatively or additionally, at least a portion ofsecure element 145 may be provided in an integrated circuit that may be embedded intoelectronic device 100 during manufacturing ofdevice 100. Alternatively or additionally, at least a portion ofsecure element 145 may be provided in a peripheral device that can be plugged into, inserted into, or otherwise coupled toelectronic device 100, such as a micro secure digital (“SD”) memory card. - As shown in
FIG. 2 ,NFC memory module 150 may include one or more of an issuer security domain (“ISD”) 152 and a supplemental security domain (“SSD”) 154 (e.g., a service provider security domain (“SPSD”), a trusted service manager security domain (“TSMSD”), etc.), which may be defined and managed by an NFC specification standard (e.g., GlobalPlatform). For example,ISD 152 may be a portion ofNFC memory module 150 in which a trusted service manager (“TSM”) or issuing financial institution (e.g.,commercial entity subsystem 400 and/or financial institution subsystem 350) may store keys and/or other suitable information for creating or otherwise provisioning one or more credentials (e.g., commerce credentials associated with various credit cards, bank cards, gift cards, access cards, transit passes, digital currency (e.g., bitcoin and associated payment networks), etc.) on electronic device 100 (e.g., via communications component 106), for credential content management, and/or for security domain management. A specific supplemental security domain (“SSD”) 154 (e.g.,SSD 154 a) may be associated with a particular TSM and at least one specific commerce credential (e.g., a specific credit card credential or a specific public transit card credential) that may provide specific privileges or payment rights toelectronic device 100. For example, a first payment network subsystem 360 (e.g., Visa) may be the TSM forfirst SSD 154 a andapplet 153 a offirst SSD 154 a may be associated with a commerce credential managed by that firstpayment network subsystem 360, while a second payment network subsystem 360 (e.g., MasterCard) may be the TSM for another SSD 154. - Security features may be provided for enabling use of NFC component 120 (e.g., for enabling activation of commerce credentials provisioned on device 100) that may be particularly useful when transmitting confidential payment information, such as credit card information or bank account information of a credential, from
electronic device 100 tomerchant subsystem 200. Such security features also may include a secure storage area that may have restricted access. For example, user authentication via personal identification number (“PIN”) entry or via user interaction with a biometric sensor may need to be provided to access the secure storage area (e.g., for a user to alter a life cycle state of a security domain element of the secure element). In certain embodiments, some or all of the security features may be stored withinNFC memory module 150. Further, security information, such as an authentication key, for communicating withsubsystem 200 may be stored withinNFC memory module 150. In certain embodiments,NFC memory module 150 may include a microcontroller embedded withinelectronic device 100. - A merchant terminal of
merchant subsystem 200 ofFIG. 1A may include a reader for detecting, reading, or otherwise receiving an NFC communication from electronic device 100 (e.g., whenelectronic device 100 comes within a certain distance or proximity of such a merchant terminal). Accordingly, it is noted that an NFC communication between such a merchant terminal andelectronic device 100 may occur wirelessly and, as such, may not require a clear “line of sight” between the respective devices. As mentioned,NFC device module 130 may be passive or active. When passive,NFC device module 130 may only be activated when within a response range of a suitable reader of such a merchant terminal. For instance, a reader of such a merchant terminal may emit a relatively low-power radio wave field that may be used to power an antenna utilized by NFC device module 130 (e.g., shared antenna 116 or NFC-specific antenna 134) and, thereby, enable that antenna to transmit suitable NFC communication information (e.g., credit card credential information) fromNFC data module 132, via antenna 116 or antenna 134, to such a merchant terminal as an NFC communication. When active,NFC device module 130 may incorporate or otherwise have access to a power source local to electronic device 100 (e.g., power supply 108) that may enable shared antenna 116 or NFC-specific antenna 134 to actively transmit NFC communication information (e.g., credit card credential information) fromNFC data module 132, via antenna 116 or antenna 134, to such a merchant terminal as an NFC communication, rather than reflect radio frequency signals, as in the case of a passiveNFC device module 130. A merchant terminal may be provided by a merchant of merchant subsystem 200 (e.g., in a store of the merchant for selling products or services directly to the user ofdevice 100 at the store). WhileNFC component 120 has been described with respect to near field communication, it is to be understood thatcomponent 120 may be configured to provide any suitable contactless proximity-based mobile payment or any other suitable type of contactless proximity-based communication betweenelectronic device 100 and such a merchant terminal. For example,NFC component 120 may be configured to provide any suitable short-range communication, such as those involving electromagnetic/electrostatic coupling technologies. - While
NFC component 120 has been described with respect to near field communication, it is to be understood thatcomponent 120 may be configured to provide any suitable contactless proximity-based mobile payment or any other suitable type of contactless proximity-based communication betweenelectronic device 100 andmerchant subsystem 200. For example,NFC component 120 may be configured to provide any suitable short-range communication, such as those involving electromagnetic/electrostatic coupling technologies. -
Electronic device 100 may also be provided with a housing 101 that may at least partially enclose one or more of the components ofdevice 100 for protection from debris and other degrading forces external todevice 100. In some embodiments, one or more of the components may be provided within its own housing (e.g.,input component 110 may be an independent keyboard or mouse within its own housing that may wirelessly or through a wire communicate withprocessor 102, which may be provided within its own housing). - As mentioned, and as shown in
FIG. 4 , one specific example ofelectronic device 100 may be a handheld electronic device, such as an iPhone™, where housing 101 may allow access tovarious input components 110 a-110 i, various output components 112 a-112 c, and various I/O components 114 a-114 d through whichdevice 100 and a user and/or an ambient environment may interface with each other. Input component 110 a may include a button that, when pressed, may cause a “home” screen or menu of a currently running application to be displayed bydevice 100. Input component 110 b may be a button for togglingelectronic device 100 between a sleep mode and a wake mode or between any other suitable modes. Input component 110 c may include a two-position slider that may disable one or more output components 112 in certain modes ofelectronic device 100. Input components 110 d and 110 e may include buttons for increasing and decreasing the volume output or any other characteristic output of an output component 112 ofelectronic device 100. Each one ofinput components 110 a-110 e may be a mechanical input component, such as a button supported by a dome switch, a sliding switch, a control pad, a key, a knob, a scroll wheel, or any other suitable form. - An output component 112 a may be a display that can be used to display a visual or graphic user interface (“GUI”) 180, which may allow a user to interact with
electronic device 100. GUI 180 may include various layers, windows, screens, templates, elements, menus, and/or other components of a currently running application (e.g.,application 103 and/orapplication 113 and/or application 143) that may be displayed in all or some of the areas of display output component 112 a. For example, as shown inFIG. 4 , GUI 180 may be configured to display afirst screen 190. One or more ofuser input components 110 a-110 i may be used to navigate through GUI 180. For example, oneuser input component 110 may include a scroll wheel that may allow a user to select one or more graphical elements oricons 182 of GUI 180.Icons 182 may also be selected via a touch screen I/O component 114 a that may include display output component 112 a and an associated touch input component 110 f. Such a touch screen I/O component 114 a may employ any suitable type of touch screen input technology, such as, but not limited to, resistive, capacitive, infrared, surface acoustic wave, electromagnetic, or near field imaging. Furthermore, touch screen I/O component 114 a may employ single point or multi-point (e.g., multi-touch) input sensing. -
Icons 182 may represent various layers, windows, screens, templates, elements, and/or other components that may be displayed in some or all of the areas of display component 112 a upon selection by the user. Furthermore, selection of aspecific icon 182 may lead to a hierarchical navigation process. For example, selection of aspecific icon 182 may lead to a new screen of GUI 180 that may include one or more additional icons or other GUI elements of the same application or of a new application associated with thaticon 182.Textual indicators 181 may be displayed on or near eachicon 182 to facilitate user interpretation of eachgraphical element icon 182. It is to be appreciated that GUI 180 may include various components arranged in hierarchical and/or non-hierarchical structures. When aspecific icon 182 is selected,device 100 may be configured to open a new application associated with thaticon 182 and display a corresponding screen of GUI 180 associated with that application. For example, when thespecific icon 182 labeled with a “Merchant App” textual indicator 181 (i.e., specific icon 183) is selected,device 100 may launch or otherwise access a specific merchant application and may display screens of a specific user interface that may include one or more tools or features for interacting withdevice 100 in a specific manner. For each application, screens may be displayed on display output component 112 a and may include various user interface elements (e.g.,screens 190 a-190 e ofFIGS. 14A-14E ). Additionally or alternatively, for each application, various other types of non-visual information may be provided to a user via various other output components 112 ofdevice 100. The operations described with respect to various GUIs 180 may be achieved with a wide variety of graphical elements and visual schemes. Therefore, the described embodiments are not intended to be limited to the precise user interface conventions adopted herein. Rather, embodiments may include a wide variety of user interface styles. -
Electronic device 100 also may include various other I/O components 114 that may allow for communication betweendevice 100 and other devices. I/O component 114 b may be a connection port that may be configured for transmitting and receiving data files, such as media files or customer order files, from a remote data source and/or power from an external power source. For example, I/O component 114 b may be a proprietary port, such as a Lightning™ connector or a 30-pin dock connector from Apple Inc. of Cupertino, Calif. I/O component 114 c may be a connection slot for receiving a SIM card or any other type of removable component. I/O component 114 d may be a headphone jack for connecting audio headphones that may or may not include a microphone component.Electronic device 100 may also include at least oneaudio input component 110 g, such as a microphone, and at least one audio output component 112 b, such as an audio speaker. -
Electronic device 100 may also include at least one haptic ortactile output component 112 c (e.g., a rumbler), a camera and/orscanner input component 110 h (e.g., a video or still camera, and/or a bar code scanner or any other suitable scanner that may obtain product identifying information from a code, such as a bar code, a QR code, or the like), and a biometric input component 110 i (e.g., a fingerprint reader or other feature recognition sensor, which may operate in conjunction with a feature-processing application that may be accessible toelectronic device 100 for authenticating a user). As shown inFIG. 4 , at least a portion of biometric input component 110 i may be incorporated into or otherwise combined with input component 110 a or any othersuitable input component 110 ofdevice 100. For example, biometric input component 110 i may be a fingerprint reader that may be configured to scan the fingerprint of a user's finger as the user interacts with mechanical input component 110 a by pressing input component 110 a with that finger. As another example, biometric input component 110 i may be a fingerprint reader that may be combined with touch input component 110 f of touch screen I/O component 114 a, such that biometric input component 110 i may be configured to scan the fingerprint of a user's finger as the user interacts with touch screen input component 110 f by pressing or sliding along touch screen input component 110 f with that finger. Moreover, as mentioned,electronic device 100 may further includeNFC component 120, which may be communicatively accessible tosubsystem 200 via antenna 116 and/or antenna 134 (not shown inFIG. 4 ).NFC component 120 may be located at least partially within housing 101, and a mark orsymbol 121 can be provided on the exterior of housing 101 that may identify the general location of one or more of the antennas associated with NFC component 120 (e.g., the general location of antenna 116 and/or antenna 134). - Moreover, one, some, or all of the processes described with respect to
FIGS. 1-14E may each be implemented by software, but may also be implemented in hardware, firmware, or any combination of software, hardware, and firmware. Instructions for performing these processes may also be embodied as machine- or computer-readable code recorded on a machine- or computer-readable medium. In some embodiments, the computer-readable medium may be a non-transitory computer-readable medium. Examples of such a non-transitory computer-readable medium include but are not limited to a read-only memory, a random-access memory, a flash memory, a CD-ROM, a DVD, a magnetic tape, a removable memory card, and a data storage device (e.g., memory 104 and/ormemory module 150 ofFIG. 2 ). In other embodiments, the computer-readable medium may be a transitory computer-readable medium. In such embodiments, the transitory computer-readable medium can be distributed over network-coupled computer systems so that the computer-readable code is stored and executed in a distributed fashion. For example, such a transitory computer-readable medium may be communicated from one electronic device to another electronic device using any suitable communications protocol (e.g., the computer-readable medium may be communicated toelectronic device 100 via communications component 106 (e.g., as at least a portion of anapplication 103 and/or as at least a portion of anapplication 113 and/or as at least a portion of an application 143)). Such a transitory computer-readable medium may embody computer-readable code, instructions, data structures, program modules, or other data in a modulated data signal, such as a carrier wave or other transport mechanism, and may include any information delivery media. A modulated data signal may be a signal that has one or more of its characteristics set or changed in such a manner as to encode information in the signal. - It is to be understood that any, each, or at least one module or component or subsystem of
system 1 may be provided as a software construct, firmware construct, one or more hardware components, or a combination thereof. For example, any, each, or at least one module or component or subsystem ofsystem 1 may be described in the general context of computer-executable instructions, such as program modules, that may be executed by one or more computers or other devices. Generally, a program module may include one or more routines, programs, objects, components, and/or data structures that may perform one or more particular tasks or that may implement one or more particular abstract data types. It is also to be understood that the number, configuration, functionality, and interconnection of the modules and components and subsystems ofsystem 1 are merely illustrative, and that the number, configuration, functionality, and interconnection of existing modules, components, and/or subsystems may be modified or omitted, additional modules, components, and/or subsystems may be added, and the interconnection of certain modules, components, and/or subsystems may be altered. - At least a portion of one or more of the modules or components or subsystems of
system 1 may be stored in or otherwise accessible to an entity ofsystem 1 in any suitable manner (e.g., in memory 104 of device 100 (e.g., as at least a portion of anapplication 103 and/or as at least a portion of anapplication 113 and/or as at least a portion of an application 143)). For example, any or each module ofNFC component 120 may be implemented using any suitable technologies (e.g., as one or more integrated circuit devices), and different modules may or may not be identical in structure, capabilities, and operation. Any or all of the modules or other components ofsystem 1 may be mounted on an expansion card, mounted directly on a system motherboard, or integrated into a system chipset component (e.g., into a “north bridge” chip). - Any or each module or component of system 1 (e.g., any or each module of NFC component 120) may be a dedicated system implemented using one or more expansion cards adapted for various bus standards. For example, all of the modules may be mounted on different interconnected expansion cards or all of the modules may be mounted on one expansion card. With respect to
NFC component 120, by way of example only, the modules ofNFC component 120 may interface with a motherboard orprocessor 102 ofdevice 100 through an expansion slot (e.g., a peripheral component interconnect (“PCI”) slot or a PCI express slot). Alternatively,NFC component 120 need not be removable but may include one or more dedicated modules that may include memory (e.g., RAM) dedicated to the utilization of the module. In other embodiments,NFC component 120 may be integrated intodevice 100. For example, a module ofNFC component 120 may utilize a portion of device memory 104 ofdevice 100. Any or each module or component of system 1 (e.g., any or each module of NFC component 120) may include its own processing circuitry and/or memory. Alternatively, any or each module or component of system 1 (e.g., any or each module of NFC component 120) may share processing circuitry and/or memory with any other module ofNFC component 120 and/orprocessor 102 and/or memory 104 ofdevice 100. - As mentioned, an
input component 110 of device 100 (e.g., input component 110 f) may include a touch input component that can receive touch input for interacting with other components ofdevice 100 via wired orwireless bus 118. Such atouch input component 110 may be used to provide user input todevice 100 in lieu of or in combination with other input components, such as a keyboard, mouse, and the like. - A
touch input component 110 may include a touch sensitive panel, which may be wholly or partially transparent, semitransparent, non-transparent, opaque, or any combination thereof. Atouch input component 110 may be embodied as a touch screen, touch pad, a touch screen functioning as a touch pad (e.g., a touch screen replacing the touchpad of a laptop), a touch screen or touch pad combined or incorporated with any other input device (e.g., a touch screen or touch pad disposed on a keyboard), or any multi-dimensional object having a touch sensitive surface for receiving touch input. In some embodiments, the terms touch screen and touch pad may be used interchangeably. - In some embodiments, a
touch input component 110 embodied as a touch screen may include a transparent and/or semitransparent touch sensitive panel partially or wholly positioned over, under, and/or within at least a portion of a display (e.g., display output component 112 a). In other embodiments, atouch input component 110 may be embodied as an integrated touch screen where touch sensitive components/devices are integral with display components/devices. In still other embodiments, atouch input component 110 may be used as a supplemental or additional display screen for displaying supplemental or the same graphical data as a primary display and to receive touch input. - A
touch input component 110 may be configured to detect the location of one or more touches or near touches based on capacitive, resistive, optical, acoustic, inductive, mechanical, chemical measurements, or any phenomena that can be measured with respect to the occurrences of the one or more touches or near touches in proximity to inputcomponent 110. Software, hardware, firmware, or any combination thereof may be used to process the measurements of the detected touches to identify and track one or more gestures. A gesture may correspond to stationary or non-stationary, single or multiple, touches or near touches on atouch input component 110. A gesture may be performed by moving one or more fingers or other objects in a particular manner ontouch input component 110, such as by tapping, pressing, rocking, scrubbing, rotating, twisting, changing orientation, pressing with varying pressure, and the like at essentially the same time, contiguously, or consecutively. A gesture may be characterized by, but is not limited to, a pinching, pulling, sliding, swiping, rotating, flexing, dragging, or tapping motion between or with any other finger or fingers. A single gesture may be performed with one or more hands, by one or more users, or any combination thereof. - As mentioned,
electronic device 100 may drive a display (e.g., display output component 112 a) with graphical data to display a graphical user interface (“GUI”) 180. GUI 180 may be configured to receive touch input via a touch input component 110 f Embodied as a touch screen (e.g., with display output component 112 a as I/O component 114 a), touch I/O component 110 f may display GUI 180. Alternatively, GUI 180 may be displayed on a display (e.g., display output component 112 a) separate from touch input component 110 f. GUI 180 may include graphical elements displayed at particular locations within the interface. Graphical elements may include, but are not limited to, a variety of displayed virtual input devices, including virtual scroll wheels, a virtual keyboard, virtual knobs, virtual buttons, any virtual user interface (“UI”), and the like. A user may perform gestures at one or more particular locations on touch input component 110 f, which may be associated with the graphical elements of GUI 180. In other embodiments, the user may perform gestures at one or more locations that are independent of the locations of graphical elements of GUI 180. Gestures performed on atouch input component 110 may directly or indirectly manipulate, control, modify, move, actuate, initiate, or generally affect graphical elements, such as cursors, icons, media files, lists, text, all or portions of images, or the like within the GUI. For instance, in the case of a touch screen, a user may directly interact with a graphical element by performing a gesture over the graphical element on the touch screen. Alternatively, a touch pad may generally provide indirect interaction. Gestures may also affect non-displayed GUI elements (e.g., causing user interfaces to appear) or may affect other actions of device 100 (e.g., affect a state or mode of a GUI, application, or operating system). Gestures may or may not be performed on atouch input component 110 in conjunction with a displayed cursor. For instance, in the case in which gestures are performed on a touchpad, a cursor or pointer may be displayed on a display screen or touch screen and the cursor or pointer may be controlled via touch input on the touchpad to interact with graphical objects on the display screen. Alternatively, when gestures are performed directly on a touch screen, a user may interact directly with objects on the touch screen, with or without a cursor or pointer being displayed on the touch screen. Feedback may be provided to the user viabus 118 in response to or based on the touch or near touches on atouch input component 110. Feedback may be transmitted optically, mechanically, electrically, olfactory, acoustically, or the like or any combination thereof and in a variable or non-variable manner. - While there have been described systems, methods, and computer-readable media for securely conducting online payments, it is to be understood that many changes may be made therein without departing from the spirit and scope of the subject matter described herein in any way. Insubstantial changes from the claimed subject matter as viewed by a person with ordinary skill in the art, now known or later devised, are expressly contemplated as being equivalently within the scope of the claims. Therefore, obvious substitutions now or later known to one with ordinary skill in the art are defined to be within the scope of the defined elements.
- Therefore, those skilled in the art will appreciate that the invention can be practiced by other than the described embodiments, which are presented for purposes of illustration rather than of limitation.
Claims (29)
1. A method comprising:
at an electronic device:
generating first data that comprises payment card data;
generating second data by encrypting the first data and merchant information with a first key;
transmitting to a commercial entity subsystem the generated second data;
receiving third data that comprises the first data encrypted with a second key that is associated with the merchant information; and
transmitting the received third data to a merchant subsystem that is associated with the merchant information, wherein:
the first key is not accessible to the merchant subsystem; and
the second key is not accessible to the electronic device.
2. The method of claim 1 , wherein the third data is not encrypted with the first key.
3. (canceled)
4. The method of claim 1 , wherein:
the generating the first data comprises generating the first data by encrypting the payment card data with a third key; and
at least a portion of the third data is encrypted with the third key.
5. The method of claim 4 , wherein the third key is not accessible to the merchant subsystem.
6. The method of claim 4 , wherein the third key is not accessible to the commercial entity subsystem.
7. The method of claim 1 , further comprising:
at the electronic device:
accessing an online resource of the merchant subsystem; and
before the transmitting the generated second data, identifying the merchant information from the accessed online resource.
8. The method of claim 7 , wherein the transmitting the received third data comprises transmitting, with the electronic device, the received third data to the merchant subsystem via the accessed online resource.
9. (canceled)
10. (canceled)
11. An electronic device comprising:
a communication component;
an application processor configured to access an online resource of a merchant server; and
a secure element configured to store credential data, a credential key, and an access key, wherein:
the secure element is configured to generate first data comprising the credential data encrypted with the credential key;
the secure element is configured to generate second data comprising the first data encrypted with the access key;
the application processor is configured to identify merchant information from the accessed online resource; and
the communication component is configured to transmit to a commercial entity server the generated second data and the identified merchant information.
12. The electronic device of claim 11 , wherein the access key is not accessible to the application processor.
13. The electronic device of claim 11 , wherein the credential key is not accessible to the application processor.
14. The electronic device of claim 11 , wherein the credential key is not accessible to the commercial entity server.
15. The electronic device of claim 11 , wherein the communication component is configured to receive third data comprising the first data encrypted with a merchant key.
16. The electronic device of claim 15 , wherein the merchant key is not accessible to the electronic device.
17. (canceled)
18. The electronic device of claim 15 , wherein the communication component is configured to transmit the third data to the merchant server.
19. (canceled)
20. (canceled)
21. A method comprising:
at a commercial entity subsystem:
receiving first data from an electronic device, wherein the first data comprises credential information and merchant information indicative of a merchant subsystem;
decrypting the first data using an access key;
identifying a merchant key based on the merchant information from the first data;
encrypting the credential information using the identified merchant key; and
transmitting second data to at least one of the merchant subsystem and the electronic device, wherein the second data comprises the credential information encrypted with the identified merchant key.
22. The method of claim 21 , further comprising the commercial entity subsystem sharing the access key with the electronic device.
23. (canceled)
24. (canceled)
25. The method of claim 21 , wherein the identifying the merchant key comprises the commercial entity subsystem comparing the merchant information to a table of data that comprises a plurality of merchant keys.
26. The method of claim 25 , wherein:
at least a first merchant key of the plurality of merchant keys is associated with a first merchant;
at least a second merchant key of the plurality of merchant keys is associated with a second merchant; and
the first merchant is different than the second merchant.
27. The method of claim 21 , wherein the merchant key is not accessible by the electronic device.
28. The method of claim 21 , wherein the access key is not accessible by the merchant subsystem.
29-84. (canceled)
Priority Applications (12)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/481,526 US20150095238A1 (en) | 2013-09-30 | 2014-09-09 | Online payments using a secure element of an electronic device |
KR1020167008438A KR102051931B1 (en) | 2013-09-30 | 2014-09-23 | Online payments using a secure element of an electronic device |
KR1020187003517A KR102165708B1 (en) | 2013-09-30 | 2014-09-23 | Online payments using a secure element of an electronic device |
EP14782022.9A EP3053120A1 (en) | 2013-09-30 | 2014-09-23 | Online payments using a secure element of an electronic device |
CN201480049141.0A CN105556551B (en) | 2013-09-30 | 2014-09-23 | Online payment using a secure element of an electronic device |
PCT/US2014/056995 WO2015048024A1 (en) | 2013-09-30 | 2014-09-23 | Online payments using a secure element of an electronic device |
TW104110133A TWI686752B (en) | 2013-09-30 | 2014-09-30 | Online payments using a secure element of an electronic device |
TW103134097A TW201523471A (en) | 2013-09-30 | 2014-09-30 | Online payments using a secure element of an electronic device |
US15/274,841 US11748746B2 (en) | 2013-09-30 | 2016-09-23 | Multi-path communication of electronic device secure element data for online payments |
US15/274,929 US10878414B2 (en) | 2013-09-30 | 2016-09-23 | Multi-path communication of electronic device secure element data for online payments |
US17/135,876 US11941620B2 (en) | 2013-09-30 | 2020-12-28 | Multi-path communication of electronic device secure element data for online payments |
US18/241,844 US20230419310A1 (en) | 2013-09-30 | 2023-09-01 | Multi-path communication of electronic device secure element data for online payments |
Applications Claiming Priority (5)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201361884926P | 2013-09-30 | 2013-09-30 | |
US201461989107P | 2014-05-06 | 2014-05-06 | |
US201462002721P | 2014-05-23 | 2014-05-23 | |
US201462004182P | 2014-05-28 | 2014-05-28 | |
US14/481,526 US20150095238A1 (en) | 2013-09-30 | 2014-09-09 | Online payments using a secure element of an electronic device |
Related Child Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US15/274,929 Continuation-In-Part US10878414B2 (en) | 2013-09-30 | 2016-09-23 | Multi-path communication of electronic device secure element data for online payments |
US15/274,841 Continuation-In-Part US11748746B2 (en) | 2013-09-30 | 2016-09-23 | Multi-path communication of electronic device secure element data for online payments |
Publications (1)
Publication Number | Publication Date |
---|---|
US20150095238A1 true US20150095238A1 (en) | 2015-04-02 |
Family
ID=52741100
Family Applications (3)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/481,526 Abandoned US20150095238A1 (en) | 2013-09-30 | 2014-09-09 | Online payments using a secure element of an electronic device |
US14/503,246 Active 2036-05-25 US11488138B2 (en) | 2013-09-30 | 2014-09-30 | Initiation of online payments using an electronic device identifier |
US17/953,306 Pending US20230018976A1 (en) | 2013-09-30 | 2022-09-26 | Initiation of online payments using an electronic device identifier |
Family Applications After (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
US14/503,246 Active 2036-05-25 US11488138B2 (en) | 2013-09-30 | 2014-09-30 | Initiation of online payments using an electronic device identifier |
US17/953,306 Pending US20230018976A1 (en) | 2013-09-30 | 2022-09-26 | Initiation of online payments using an electronic device identifier |
Country Status (6)
Country | Link |
---|---|
US (3) | US20150095238A1 (en) |
EP (1) | EP3053120A1 (en) |
KR (2) | KR102051931B1 (en) |
CN (1) | CN105556551B (en) |
TW (2) | TW201523471A (en) |
WO (1) | WO2015048024A1 (en) |
Cited By (61)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20150186861A1 (en) * | 2013-11-12 | 2015-07-02 | Xtt Llc | Lockable POS Device, Method for Distributing Lockable POS Devices, and Method for Locking a Lockable POS Device |
US20160005009A1 (en) * | 2014-07-01 | 2016-01-07 | Mastercard Asia Pacific Pte. Ltd. | Method for conducting a transaction |
US20160048700A1 (en) * | 2014-08-14 | 2016-02-18 | Nagravision S.A. | Securing personal information |
US20170109742A1 (en) * | 2015-10-20 | 2017-04-20 | Paypal, Inc. | Secure multi-factor user authentication on disconnected mobile devices |
US9652767B2 (en) * | 2014-07-17 | 2017-05-16 | Mastercard International Incorporated | Method and system for maintaining privacy in scoring of consumer spending behavior |
US20170171183A1 (en) * | 2015-12-15 | 2017-06-15 | Phaneendra Ramaseshu Lingappa | Authentication of access request of a device and protecting confidential information |
US20170213211A1 (en) * | 2016-01-25 | 2017-07-27 | Apple Inc. | Document importation into secure element |
US20170262849A1 (en) * | 2016-03-14 | 2017-09-14 | Jpmorgan Chase Bank, N.A. | Systems and methods for device authentication |
US20170278174A1 (en) * | 2016-03-22 | 2017-09-28 | Paypal, Inc. | Automatic population of data on an internet web page via a browser plugin |
US20180225653A1 (en) * | 2017-02-03 | 2018-08-09 | Worldpay Limited | Terminal for conducting electronic transactions |
CN108496193A (en) * | 2016-01-25 | 2018-09-04 | 苹果公司 | It is traded using the electronic equipment with non-local authority |
US10142348B2 (en) * | 2014-05-07 | 2018-11-27 | Visa International Service Association | Enhanced data interface for contactless communications |
US20180349890A1 (en) * | 2017-06-02 | 2018-12-06 | Apple Inc. | Provisioning credentials for an electronic transaction on an electronic device |
US10212148B2 (en) | 2013-12-16 | 2019-02-19 | Mbr Innovations Llc | Systems and methods for verifying attributes of users of online systems |
US20190130384A1 (en) * | 2017-10-26 | 2019-05-02 | Jack Shauh | Mobile payment system and method using a mobile payment device without an installed application |
CN109716373A (en) * | 2016-08-12 | 2019-05-03 | 万事达卡国际公司 | Cipher authentication and tokenized transaction |
US10332170B2 (en) | 2014-03-31 | 2019-06-25 | Monticello Enterprises LLC | System and method of managing a buy option |
US20190279199A1 (en) * | 2016-07-29 | 2019-09-12 | Visa International Service Association | Multi-device authentication process and system utilizing cryptographic techniques |
US10444987B2 (en) * | 2016-12-19 | 2019-10-15 | Microsoft Technology Licensing, Llc | Facilitating selection of holographic keyboard keys |
US10497037B2 (en) * | 2014-03-31 | 2019-12-03 | Monticello Enterprises LLC | System and method for managing cryptocurrency payments via the payment request API |
US10504193B2 (en) | 2014-03-31 | 2019-12-10 | Monticello Enterprises LLC | System and method for providing a universal shopping cart |
US10511580B2 (en) | 2014-03-31 | 2019-12-17 | Monticello Enterprises LLC | System and method for providing a social media shopping experience |
US10592899B2 (en) * | 2014-05-13 | 2020-03-17 | Visa International Service Association | Master applet for secure remote payment processing |
US10621653B2 (en) * | 2014-03-31 | 2020-04-14 | Monticello Enterprises LLC | System and method for providing payments for users in connection with a device software module having a payment application programming interface |
US20200118186A1 (en) * | 2018-10-11 | 2020-04-16 | International Business Machines Corporation | Generating a quote to cash solution |
US10643266B2 (en) | 2014-03-31 | 2020-05-05 | Monticello Enterprises LLC | System and method for in-app payments |
US10650621B1 (en) | 2016-09-13 | 2020-05-12 | Iocurrents, Inc. | Interfacing with a vehicular controller area network |
US10699090B2 (en) | 2016-12-02 | 2020-06-30 | Koupon Media, Inc. | Using dynamic occlusion to protect against capturing barcodes for fraudulent use on mobile devices |
US10726472B2 (en) | 2014-03-31 | 2020-07-28 | Monticello Enterprises LLC | System and method for providing simplified in-store, product-based and rental payment processes |
US10769613B1 (en) * | 2013-10-22 | 2020-09-08 | Ondot Systems, Inc | Delegate cards |
US10832310B2 (en) | 2014-03-31 | 2020-11-10 | Monticello Enterprises LLC | System and method for providing a search entity-based payment process |
US10832244B1 (en) * | 2019-11-14 | 2020-11-10 | Capital One Services, Llc | Protocol to secure electronic transactions using two way handshakes |
US10937021B2 (en) | 2014-12-03 | 2021-03-02 | Trec Corporation | Proprietary token-based universal payment processing system |
US11004139B2 (en) | 2014-03-31 | 2021-05-11 | Monticello Enterprises LLC | System and method for providing simplified in store purchases and in-app purchases using a use-interface-based payment API |
US11080777B2 (en) | 2014-03-31 | 2021-08-03 | Monticello Enterprises LLC | System and method for providing a social media shopping experience |
US11082420B2 (en) | 2015-08-03 | 2021-08-03 | Coinplug, Inc. | Certificate issuing system based on block chain |
US20210256510A1 (en) * | 2015-08-14 | 2021-08-19 | Identitii Pty Ltd | Computer implemented method for processing a financial transaction and a system therefor |
US11127011B2 (en) | 2015-12-28 | 2021-09-21 | Samsung Electronics Co., Ltd. | Electronic device and payment performance method using handoff thereof |
US11151568B2 (en) * | 2018-05-09 | 2021-10-19 | Capital One Services, Llc | Real-time selection of authentication procedures based on risk assessment |
US20220005028A1 (en) * | 2016-02-01 | 2022-01-06 | Apple Inc. | Validating online access to secure device functionality |
US11250493B2 (en) | 2014-03-31 | 2022-02-15 | Monticello Enterprises LLC | System and method for performing social media cryptocurrency transactions |
US11282131B2 (en) | 2014-03-31 | 2022-03-22 | Monticello Enterprises LLC | User device enabling access to payment information in response to user input |
US11367064B1 (en) | 2015-07-31 | 2022-06-21 | Wells Fargo Bank, N.A. | Connected payment card systems and methods |
US20220207526A1 (en) * | 2020-12-28 | 2022-06-30 | Capital One Services, Llc | Secure contactless credential exchange |
US11379829B1 (en) | 2008-10-31 | 2022-07-05 | Wells Fargo Bank, N.A. | Payment vehicle with on and off function |
US11386223B1 (en) | 2016-07-01 | 2022-07-12 | Wells Fargo Bank, N.A. | Access control tower |
US11429975B1 (en) | 2015-03-27 | 2022-08-30 | Wells Fargo Bank, N.A. | Token management system |
US11501294B2 (en) | 2016-07-18 | 2022-11-15 | Advanced New Technologies Co., Ltd. | Method and device for providing and obtaining graphic code information, and terminal |
US11546338B1 (en) | 2021-01-05 | 2023-01-03 | Wells Fargo Bank, N.A. | Digital account controls portal and protocols for federated and non-federated systems and devices |
US11544710B2 (en) | 2017-06-02 | 2023-01-03 | Apple Inc. | Provisioning credentials on multiple electronic devices |
US11556936B1 (en) | 2017-04-25 | 2023-01-17 | Wells Fargo Bank, N.A. | System and method for card control |
US11615253B1 (en) | 2020-09-04 | 2023-03-28 | Wells Fargo Bank, N.A. | Synchronous interfacing with unaffiliated networked systems to alter functionality of sets of electronic assets |
US11615402B1 (en) | 2016-07-01 | 2023-03-28 | Wells Fargo Bank, N.A. | Access control tower |
US11645416B1 (en) | 2016-07-01 | 2023-05-09 | Wells Fargo Bank, N.A. | Control tower for defining access permissions based on data type |
US11736490B1 (en) | 2016-07-01 | 2023-08-22 | Wells Fargo Bank, N.A. | Access control tower |
US11741527B1 (en) * | 2022-08-11 | 2023-08-29 | Bambumeta, Llc | Systems and methods for distributed commerce based on a token economy |
US11756114B1 (en) | 2017-07-06 | 2023-09-12 | Wells Fargo Bank, N.A. | Data control tower |
US11868993B1 (en) | 2008-10-31 | 2024-01-09 | Wells Fargo Bank, N.A. | Payment vehicle with on and off function |
US11915303B2 (en) | 2014-03-31 | 2024-02-27 | Monticello Enterprises LLC | System and method for providing a social media shopping experience |
US11935020B1 (en) | 2016-07-01 | 2024-03-19 | Wells Fargo Bank, N.A. | Control tower for prospective transactions |
US11972473B2 (en) * | 2023-08-11 | 2024-04-30 | Bambumeta, Llc | Systems and methods for distributed commerce based on a token economy |
Families Citing this family (63)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9721314B2 (en) | 2013-10-28 | 2017-08-01 | Square, Inc. | Apportioning shared financial expenses |
CN104765999B (en) * | 2014-01-07 | 2020-06-30 | 腾讯科技(深圳)有限公司 | Method, terminal and server for processing user resource information |
US9767471B1 (en) | 2014-03-24 | 2017-09-19 | Square, Inc. | Determining recommendations from buyer information |
US11748736B1 (en) | 2014-04-30 | 2023-09-05 | Wells Fargo Bank, N.A. | Mobile wallet integration within mobile banking |
US9652770B1 (en) | 2014-04-30 | 2017-05-16 | Wells Fargo Bank, N.A. | Mobile wallet using tokenized card systems and methods |
US11288660B1 (en) | 2014-04-30 | 2022-03-29 | Wells Fargo Bank, N.A. | Mobile wallet account balance systems and methods |
US10997592B1 (en) | 2014-04-30 | 2021-05-04 | Wells Fargo Bank, N.A. | Mobile wallet account balance systems and methods |
US11615401B1 (en) * | 2014-04-30 | 2023-03-28 | Wells Fargo Bank, N.A. | Mobile wallet authentication systems and methods |
US11610197B1 (en) | 2014-04-30 | 2023-03-21 | Wells Fargo Bank, N.A. | Mobile wallet rewards redemption systems and methods |
US11461766B1 (en) | 2014-04-30 | 2022-10-04 | Wells Fargo Bank, N.A. | Mobile wallet using tokenized card systems and methods |
US20150339659A1 (en) * | 2014-05-23 | 2015-11-26 | Miguel Ballesteros | System And Method For Payment Credential-Based Mobile Commerce |
US10679212B2 (en) * | 2014-05-26 | 2020-06-09 | The Toronto-Dominion Bank | Post-manufacture configuration of pin-pad terminals |
US10445739B1 (en) | 2014-08-14 | 2019-10-15 | Wells Fargo Bank, N.A. | Use limitations for secondary users of financial accounts |
GB201419016D0 (en) * | 2014-10-24 | 2014-12-10 | Visa Europe Ltd | Transaction Messaging |
US10475296B1 (en) * | 2014-12-30 | 2019-11-12 | Jpmorgan Chase Bank, N.A. | Hybrid cash recycler |
US11853919B1 (en) | 2015-03-04 | 2023-12-26 | Wells Fargo Bank, N.A. | Systems and methods for peer-to-peer funds requests |
US10579983B2 (en) * | 2015-03-11 | 2020-03-03 | Paypal, Inc. | NFC rendezvous protocol for enhanced mobile transactions and payments |
US10026082B2 (en) | 2015-05-21 | 2018-07-17 | Mastercard International Incorporated | Method and system for linkage of blockchain-based assets to fiat currency accounts |
FR3038099A1 (en) * | 2015-06-26 | 2016-12-30 | Orange | METHOD AND DEVICE FOR MANAGING NON-CONTACT APPLICATIONS |
TW201712591A (en) * | 2015-09-30 | 2017-04-01 | Chunghwa Telecom Co Ltd | Data authorization management and verification method for smart card can respectively perform protection for data items on smart card to restrict the application service end to merely obtain authorized data items |
FR3045187B1 (en) * | 2015-12-15 | 2018-01-12 | Taklane | METHOD FOR TRANSMITTING DIGITAL INFORMATION |
CN106937150A (en) * | 2015-12-29 | 2017-07-07 | 北京巨象亿联科技有限责任公司 | IC-card payment devices and method based on digital television terminal and remote control |
CN106937145A (en) * | 2015-12-29 | 2017-07-07 | 北京巨象亿联科技有限责任公司 | Payment devices and method are connect based on digital television terminal and the non-of remote control |
CN106937146A (en) * | 2015-12-29 | 2017-07-07 | 北京巨象亿联科技有限责任公司 | Payment devices and method based on digital television terminal and remote control |
US10404469B2 (en) | 2016-04-08 | 2019-09-03 | Chicago Mercantile Exchange Inc. | Bilateral assertion model and ledger implementation thereof |
US10346428B2 (en) * | 2016-04-08 | 2019-07-09 | Chicago Mercantile Exchange Inc. | Bilateral assertion model and ledger implementation thereof |
US11048723B2 (en) | 2016-04-08 | 2021-06-29 | Chicago Mercantile Exchange Inc. | Bilateral assertion model and ledger implementation thereof |
KR101726420B1 (en) * | 2016-05-18 | 2017-05-25 | 주식회사 비코닉스 | Method And Apparatus for Payment Authorisation by Using Beacons |
CN105959287A (en) * | 2016-05-20 | 2016-09-21 | 中国银联股份有限公司 | Biological feature based safety certification method and device |
US10762505B1 (en) * | 2016-06-13 | 2020-09-01 | Wells Fargo Bank, N.A. | Authentication transaction |
GB2551543A (en) * | 2016-06-21 | 2017-12-27 | Eckoh Uk Ltd | Methods of authenticating a user for data exchange |
US11132682B1 (en) * | 2016-07-22 | 2021-09-28 | Wells Fargo Bank, N.A. | Piezoelectric biometric card security |
CN107846238B (en) * | 2016-09-18 | 2020-06-09 | 中兴通讯股份有限公司 | Method and device for controlling NFC (near field communication) route |
US11468414B1 (en) | 2016-10-03 | 2022-10-11 | Wells Fargo Bank, N.A. | Systems and methods for establishing a pull payment relationship |
EP3316202A1 (en) * | 2016-10-27 | 2018-05-02 | Gemalto SA | Method and system for automatically receiving and/or transmitting information relating to transactions |
KR20180055572A (en) * | 2016-11-17 | 2018-05-25 | 삼성전자주식회사 | Electronic device and method for remitting thereof |
WO2018098925A1 (en) * | 2016-11-29 | 2018-06-07 | 华为技术有限公司 | Method for payment and terminal device |
US10963887B1 (en) | 2016-11-30 | 2021-03-30 | Square, Inc. | Utilizing proxy contact information for merchant communications |
US10740822B1 (en) | 2016-12-19 | 2020-08-11 | Square, Inc. | Using data analysis to connect merchants |
CN106981003B (en) * | 2016-12-30 | 2020-08-25 | 中国银联股份有限公司 | Transaction method, device and system for virtual reality environment |
CN106850200B (en) * | 2017-01-25 | 2019-10-22 | 中钞信用卡产业发展有限公司杭州区块链技术研究院 | A kind of safety method, system and the terminal of digital cash of the use based on block chain |
CN110383316B (en) * | 2017-03-16 | 2022-08-19 | 苹果公司 | Payment switching system |
CN107133837A (en) * | 2017-03-22 | 2017-09-05 | 无锡中科富农物联科技有限公司 | A kind of means of agricultural production e-commerce system based on SSH frameworks |
TWI628606B (en) * | 2017-08-10 | 2018-07-01 | 歐付寶電子支付股份有限公司 | Electronic charging method and system |
TWI659374B (en) * | 2017-08-16 | 2019-05-11 | 臺灣銀行股份有限公司 | Mobile internet banking transaction authentication method and system |
US11348116B2 (en) * | 2017-11-07 | 2022-05-31 | Mastercard International Incorporated | Systems and methods for enhancing online user authentication using a personal cloud platform |
US11496462B2 (en) * | 2017-11-29 | 2022-11-08 | Jpmorgan Chase Bank, N.A. | Secure multifactor authentication with push authentication |
US10915904B2 (en) * | 2017-12-21 | 2021-02-09 | Mastercard International Incorporated | Systems and methods for facilitating network transactions based on user authentication |
US11295297B1 (en) | 2018-02-26 | 2022-04-05 | Wells Fargo Bank, N.A. | Systems and methods for pushing usable objects and third-party provisioning to a mobile wallet |
US11775955B1 (en) | 2018-05-10 | 2023-10-03 | Wells Fargo Bank, N.A. | Systems and methods for making person-to-person payments via mobile client application |
CN109035636A (en) | 2018-06-04 | 2018-12-18 | 阿里巴巴集团控股有限公司 | A kind of Cash collecting equipment, a kind of cashing method and device |
US11756029B2 (en) * | 2018-08-27 | 2023-09-12 | Mastercard International Incorporated | Secured end-to-end communication for remote payment verification |
US20200082472A1 (en) * | 2018-09-11 | 2020-03-12 | Apple Inc. | Systems and methods for providing electronic services at a point of sale |
CN109583910B (en) * | 2018-10-26 | 2023-05-12 | 蚂蚁金服(杭州)网络技术有限公司 | Commodity authorization identification method, device and equipment |
US11023490B2 (en) | 2018-11-20 | 2021-06-01 | Chicago Mercantile Exchange Inc. | Selectively replicated trustless persistent store |
EP3963821A4 (en) * | 2019-04-30 | 2022-05-04 | Visa International Service Association | Decentralized processing of interactions on delivery |
US11023896B2 (en) * | 2019-06-20 | 2021-06-01 | Coupang, Corp. | Systems and methods for real-time processing of data streams |
US11657432B2 (en) | 2019-07-02 | 2023-05-23 | Bsi Business Systems Integration Ag | Campaign management system—suspension |
US11328294B2 (en) * | 2019-11-14 | 2022-05-10 | Horus Foster, Inc. | Anonymous peer-to-peer near-field communication system |
FR3111441B1 (en) * | 2020-06-10 | 2022-08-05 | Proton World Int Nv | Secure start of an electronic circuit |
US11798079B2 (en) * | 2021-06-23 | 2023-10-24 | Procore Technologies, Inc. | Software technology for managing a construction project involving multiple currencies |
US11810123B1 (en) * | 2022-05-10 | 2023-11-07 | Capital One Services, Llc | System and method for card present account provisioning |
US11606360B1 (en) * | 2022-05-10 | 2023-03-14 | Capital One Services, Llc | System and method for multi-account provisioning |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7333615B1 (en) * | 2002-06-26 | 2008-02-19 | At&T Delaware Intellectual Property, Inc. | Encryption between multiple devices |
US20110161671A1 (en) * | 2009-12-31 | 2011-06-30 | Psi Systems, Inc. | System and method for securing data |
US20120143770A1 (en) * | 2010-12-06 | 2012-06-07 | Pauker Matthew J | Purchase transaction system with encrypted payment card data |
US20180322602A1 (en) * | 2006-11-15 | 2018-11-08 | Yuh-Shen Song | Private online transaction system |
Family Cites Families (26)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US6957334B1 (en) * | 1999-06-23 | 2005-10-18 | Mastercard International Incorporated | Method and system for secure guaranteed transactions over a computer network |
US20010032878A1 (en) * | 2000-02-09 | 2001-10-25 | Tsiounis Yiannis S. | Method and system for making anonymous electronic payments on the world wide web |
US7376629B1 (en) * | 2000-04-03 | 2008-05-20 | Incogno Corporation | Method of and system for effecting anonymous credit card purchases over the internet |
US8260723B2 (en) | 2000-12-01 | 2012-09-04 | Carrott Richard F | Transactional security over a network |
US20050144142A1 (en) * | 2002-03-20 | 2005-06-30 | Hisashi Takayama | Mobile settlement system and device |
US10679452B2 (en) * | 2003-09-04 | 2020-06-09 | Oracle America, Inc. | Method and apparatus having multiple identifiers for use in making transactions |
US7657489B2 (en) * | 2006-01-18 | 2010-02-02 | Mocapay, Inc. | Systems and method for secure wireless payment transactions |
US9240009B2 (en) * | 2006-09-24 | 2016-01-19 | Rich House Global Technology Ltd. | Mobile devices for commerce over unsecured networks |
US20090307140A1 (en) | 2008-06-06 | 2009-12-10 | Upendra Mardikar | Mobile device over-the-air (ota) registration and point-of-sale (pos) payment |
CN101295384A (en) * | 2008-06-27 | 2008-10-29 | 中兴通讯股份有限公司 | Electronic payment method |
KR20110083193A (en) * | 2010-01-14 | 2011-07-20 | 조동혁 | The mobile shopping or payment service by ss code which can input in handphone |
TWI588761B (en) | 2010-12-28 | 2017-06-21 | li-he Yao | Wireless secure transaction payment system and its method |
US8856043B2 (en) * | 2011-02-18 | 2014-10-07 | Visa International Service Association | Method and system for managing data and enabling payment transactions between multiple entities |
WO2012125759A2 (en) * | 2011-03-15 | 2012-09-20 | Visa International Service Association | System and method for processing payment transactions |
KR20120108599A (en) * | 2011-03-25 | 2012-10-05 | 주식회사 스마트솔루션 | Credit card payment service using online credit card payment device |
TW201241769A (en) * | 2011-04-13 | 2012-10-16 | Univ Chaoyang Technology | Mobile bank payment method |
US8880886B2 (en) * | 2011-05-26 | 2014-11-04 | First Data Corporation | Systems and methods for authenticating mobile devices |
TWM418352U (en) | 2011-07-11 | 2011-12-11 | zheng-dao Wu | Security mechanism system for network transaction |
US20130054473A1 (en) * | 2011-08-23 | 2013-02-28 | Htc Corporation | Secure Payment Method, Mobile Device and Secure Payment System |
US9105025B2 (en) * | 2011-10-17 | 2015-08-11 | Capital One Financial Corporation | Enhanced near field communications attachment |
US20130117186A1 (en) | 2011-11-05 | 2013-05-09 | Sequent Software Inc. | System and method for increasing security in internet transactions |
KR101409860B1 (en) * | 2011-12-13 | 2014-07-03 | 주식회사 신한은행 | Method and apparatus for providing electronic payment and banking service using smart device and credit card reader |
CN102609837A (en) | 2012-01-21 | 2012-07-25 | 伯泰雄森(北京)网络科技有限公司 | Payment method and payment system based on correlated specific information and terminal number |
KR20130100872A (en) * | 2012-02-22 | 2013-09-12 | 주식회사 엘지씨엔에스 | Payment method by means of one time response code, payment server and operator terminal performing the same |
US20140019367A1 (en) * | 2012-07-13 | 2014-01-16 | Apple Inc. | Method to send payment data through various air interfaces without compromising user data |
US9779396B2 (en) * | 2012-08-14 | 2017-10-03 | Chijioke Chukwuemeka UZO | Method of making mobile payments to a recipient lacking a wireless or contactless terminal |
-
2014
- 2014-09-09 US US14/481,526 patent/US20150095238A1/en not_active Abandoned
- 2014-09-23 WO PCT/US2014/056995 patent/WO2015048024A1/en active Application Filing
- 2014-09-23 EP EP14782022.9A patent/EP3053120A1/en not_active Withdrawn
- 2014-09-23 KR KR1020167008438A patent/KR102051931B1/en active IP Right Grant
- 2014-09-23 CN CN201480049141.0A patent/CN105556551B/en active Active
- 2014-09-23 KR KR1020187003517A patent/KR102165708B1/en active IP Right Grant
- 2014-09-30 TW TW103134097A patent/TW201523471A/en unknown
- 2014-09-30 US US14/503,246 patent/US11488138B2/en active Active
- 2014-09-30 TW TW104110133A patent/TWI686752B/en active
-
2022
- 2022-09-26 US US17/953,306 patent/US20230018976A1/en active Pending
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7333615B1 (en) * | 2002-06-26 | 2008-02-19 | At&T Delaware Intellectual Property, Inc. | Encryption between multiple devices |
US20180322602A1 (en) * | 2006-11-15 | 2018-11-08 | Yuh-Shen Song | Private online transaction system |
US20110161671A1 (en) * | 2009-12-31 | 2011-06-30 | Psi Systems, Inc. | System and method for securing data |
US20120143770A1 (en) * | 2010-12-06 | 2012-06-07 | Pauker Matthew J | Purchase transaction system with encrypted payment card data |
Cited By (125)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11379829B1 (en) | 2008-10-31 | 2022-07-05 | Wells Fargo Bank, N.A. | Payment vehicle with on and off function |
US11900390B1 (en) | 2008-10-31 | 2024-02-13 | Wells Fargo Bank, N.A. | Payment vehicle with on and off function |
US11915230B1 (en) | 2008-10-31 | 2024-02-27 | Wells Fargo Bank, N.A. | Payment vehicle with on and off function |
US11880827B1 (en) | 2008-10-31 | 2024-01-23 | Wells Fargo Bank, N.A. | Payment vehicle with on and off function |
US11676136B1 (en) | 2008-10-31 | 2023-06-13 | Wells Fargo Bank, N.A. | Payment vehicle with on and off function |
US11880846B1 (en) | 2008-10-31 | 2024-01-23 | Wells Fargo Bank, N.A. | Payment vehicle with on and off function |
US11868993B1 (en) | 2008-10-31 | 2024-01-09 | Wells Fargo Bank, N.A. | Payment vehicle with on and off function |
US10769613B1 (en) * | 2013-10-22 | 2020-09-08 | Ondot Systems, Inc | Delegate cards |
US20150186861A1 (en) * | 2013-11-12 | 2015-07-02 | Xtt Llc | Lockable POS Device, Method for Distributing Lockable POS Devices, and Method for Locking a Lockable POS Device |
US10212148B2 (en) | 2013-12-16 | 2019-02-19 | Mbr Innovations Llc | Systems and methods for verifying attributes of users of online systems |
US10516658B2 (en) | 2013-12-16 | 2019-12-24 | Mbr Innovations Llc | Systems and methods for verifying attributes of users of online systems |
US10977716B2 (en) | 2014-03-31 | 2021-04-13 | Monticello Enterprises LLC | System and method for providing multiple application programming interfaces for a browser to manage payments from a payment service |
US10650443B2 (en) | 2014-03-31 | 2020-05-12 | Monticello Enterprises LLC | System and method for providing data to a merchant device from a user device over a wireless link |
US11282131B2 (en) | 2014-03-31 | 2022-03-22 | Monticello Enterprises LLC | User device enabling access to payment information in response to user input |
US11244377B2 (en) | 2014-03-31 | 2022-02-08 | Monticello Enterprises LLC | System and method for providing a browser API for managing product purchases |
US11461828B2 (en) | 2014-03-31 | 2022-10-04 | Monticello Enterprises LLC | System and method for receiving data at a merchant device from a user device over a wireless link |
US11468497B2 (en) | 2014-03-31 | 2022-10-11 | Monticello Enterprises LLC | System and method for receiving data at a merchant device from a user device over a wireless link |
US10332170B2 (en) | 2014-03-31 | 2019-06-25 | Monticello Enterprises LLC | System and method of managing a buy option |
US10366429B2 (en) | 2014-03-31 | 2019-07-30 | Monticello Enterprises LLC | Browser payment request API |
US11080777B2 (en) | 2014-03-31 | 2021-08-03 | Monticello Enterprises LLC | System and method for providing a social media shopping experience |
US11669884B2 (en) | 2014-03-31 | 2023-06-06 | Monticello Enterprises LLC | System and method for providing data to a merchant device from a user device over a wireless link |
US11915303B2 (en) | 2014-03-31 | 2024-02-27 | Monticello Enterprises LLC | System and method for providing a social media shopping experience |
US11074640B2 (en) | 2014-03-31 | 2021-07-27 | Monticello Enterprises LLC | System and method for providing a universal shopping cart across multiple search platforms |
US10497037B2 (en) * | 2014-03-31 | 2019-12-03 | Monticello Enterprises LLC | System and method for managing cryptocurrency payments via the payment request API |
US10504193B2 (en) | 2014-03-31 | 2019-12-10 | Monticello Enterprises LLC | System and method for providing a universal shopping cart |
US10511580B2 (en) | 2014-03-31 | 2019-12-17 | Monticello Enterprises LLC | System and method for providing a social media shopping experience |
US11842380B2 (en) | 2014-03-31 | 2023-12-12 | Monticello Enterprises LLC | System and method for providing a social media shopping experience |
US11004139B2 (en) | 2014-03-31 | 2021-05-11 | Monticello Enterprises LLC | System and method for providing simplified in store purchases and in-app purchases using a use-interface-based payment API |
US11250493B2 (en) | 2014-03-31 | 2022-02-15 | Monticello Enterprises LLC | System and method for performing social media cryptocurrency transactions |
US10621653B2 (en) * | 2014-03-31 | 2020-04-14 | Monticello Enterprises LLC | System and method for providing payments for users in connection with a device software module having a payment application programming interface |
US11836784B2 (en) | 2014-03-31 | 2023-12-05 | Monticello Enterprises LLC | System and method for providing a search entity-based payment process |
US10643266B2 (en) | 2014-03-31 | 2020-05-05 | Monticello Enterprises LLC | System and method for in-app payments |
US10832310B2 (en) | 2014-03-31 | 2020-11-10 | Monticello Enterprises LLC | System and method for providing a search entity-based payment process |
US10650441B1 (en) | 2014-03-31 | 2020-05-12 | Monticello Enterprises LLC | System and method for providing data to a merchant device from a user device over a wireless link using a single function action |
US10825079B2 (en) | 2014-03-31 | 2020-11-03 | Monticello Enterprises LLC | System and method for providing data to a merchant device from a user device over a wireless link |
US10769717B2 (en) | 2014-03-31 | 2020-09-08 | Monticello Enterprises LLC | System and method for providing data to a merchant device from a user device over a wireless link |
US10726472B2 (en) | 2014-03-31 | 2020-07-28 | Monticello Enterprises LLC | System and method for providing simplified in-store, product-based and rental payment processes |
US10142348B2 (en) * | 2014-05-07 | 2018-11-27 | Visa International Service Association | Enhanced data interface for contactless communications |
US10382447B2 (en) * | 2014-05-07 | 2019-08-13 | Visa International Service Association | Enhanced data interface for contactless communications |
US10592899B2 (en) * | 2014-05-13 | 2020-03-17 | Visa International Service Association | Master applet for secure remote payment processing |
US20160005009A1 (en) * | 2014-07-01 | 2016-01-07 | Mastercard Asia Pacific Pte. Ltd. | Method for conducting a transaction |
US10482499B2 (en) * | 2014-07-01 | 2019-11-19 | Mastercard Asia Pacific Pte. Ltd. | Method for conducting a transaction |
US9652767B2 (en) * | 2014-07-17 | 2017-05-16 | Mastercard International Incorporated | Method and system for maintaining privacy in scoring of consumer spending behavior |
US20160048700A1 (en) * | 2014-08-14 | 2016-02-18 | Nagravision S.A. | Securing personal information |
US10937021B2 (en) | 2014-12-03 | 2021-03-02 | Trec Corporation | Proprietary token-based universal payment processing system |
US11823205B1 (en) | 2015-03-27 | 2023-11-21 | Wells Fargo Bank, N.A. | Token management system |
US11562347B1 (en) | 2015-03-27 | 2023-01-24 | Wells Fargo Bank, N.A. | Token management system |
US11429975B1 (en) | 2015-03-27 | 2022-08-30 | Wells Fargo Bank, N.A. | Token management system |
US11893588B1 (en) | 2015-03-27 | 2024-02-06 | Wells Fargo Bank, N.A. | Token management system |
US11651379B1 (en) | 2015-03-27 | 2023-05-16 | Wells Fargo Bank, N.A. | Token management system |
US11861594B1 (en) | 2015-03-27 | 2024-01-02 | Wells Fargo Bank, N.A. | Token management system |
US11727388B1 (en) | 2015-07-31 | 2023-08-15 | Wells Fargo Bank, N.A. | Connected payment card systems and methods |
US11847633B1 (en) | 2015-07-31 | 2023-12-19 | Wells Fargo Bank, N.A. | Connected payment card systems and methods |
US11900362B1 (en) | 2015-07-31 | 2024-02-13 | Wells Fargo Bank, N.A. | Connected payment card systems and methods |
US11367064B1 (en) | 2015-07-31 | 2022-06-21 | Wells Fargo Bank, N.A. | Connected payment card systems and methods |
US11082420B2 (en) | 2015-08-03 | 2021-08-03 | Coinplug, Inc. | Certificate issuing system based on block chain |
US20210256510A1 (en) * | 2015-08-14 | 2021-08-19 | Identitii Pty Ltd | Computer implemented method for processing a financial transaction and a system therefor |
US20220092590A1 (en) * | 2015-10-20 | 2022-03-24 | Paypal, Inc. | Secure multi-factor user authentication on disconnected mobile devices |
US20170109742A1 (en) * | 2015-10-20 | 2017-04-20 | Paypal, Inc. | Secure multi-factor user authentication on disconnected mobile devices |
US11257075B2 (en) * | 2015-10-20 | 2022-02-22 | Paypal, Inc. | Secure multi-factor user authentication on disconnected mobile devices |
US20170171183A1 (en) * | 2015-12-15 | 2017-06-15 | Phaneendra Ramaseshu Lingappa | Authentication of access request of a device and protecting confidential information |
US10523441B2 (en) * | 2015-12-15 | 2019-12-31 | Visa International Service Association | Authentication of access request of a device and protecting confidential information |
US11127011B2 (en) | 2015-12-28 | 2021-09-21 | Samsung Electronics Co., Ltd. | Electronic device and payment performance method using handoff thereof |
US11386424B2 (en) * | 2016-01-25 | 2022-07-12 | Apple Inc. | Conducting transactions using electronic devices with non-native credentials |
KR102576667B1 (en) * | 2016-01-25 | 2023-09-11 | 애플 인크. | Conducting transactions using electronic devices with non-native credentials |
US11734678B2 (en) * | 2016-01-25 | 2023-08-22 | Apple Inc. | Document importation into secure element |
US20170213211A1 (en) * | 2016-01-25 | 2017-07-27 | Apple Inc. | Document importation into secure element |
CN108496193A (en) * | 2016-01-25 | 2018-09-04 | 苹果公司 | It is traded using the electronic equipment with non-local authority |
US20220318798A1 (en) * | 2016-01-25 | 2022-10-06 | Apple Inc. | Conducting transactions using electronic devices with non-native credentials |
KR20180100369A (en) * | 2016-01-25 | 2018-09-10 | 애플 인크. | Performing transactions using electronic devices with non-native credentials |
US20220005028A1 (en) * | 2016-02-01 | 2022-01-06 | Apple Inc. | Validating online access to secure device functionality |
US20170262849A1 (en) * | 2016-03-14 | 2017-09-14 | Jpmorgan Chase Bank, N.A. | Systems and methods for device authentication |
US11087304B2 (en) * | 2016-03-14 | 2021-08-10 | Jpmorgan Chase Bank, N.A. | Systems and methods for device authentication |
US20220122152A1 (en) * | 2016-03-22 | 2022-04-21 | Paypal, Inc. | Automatic population of data on an internet web page via a browser plugin |
US11250492B2 (en) * | 2016-03-22 | 2022-02-15 | Paypal, Inc. | Automatic population of data on an internet web page via a browser plugin |
US20170278174A1 (en) * | 2016-03-22 | 2017-09-28 | Paypal, Inc. | Automatic population of data on an internet web page via a browser plugin |
US11386223B1 (en) | 2016-07-01 | 2022-07-12 | Wells Fargo Bank, N.A. | Access control tower |
US11762535B1 (en) | 2016-07-01 | 2023-09-19 | Wells Fargo Bank, N.A. | Control tower restrictions on third party platforms |
US11755773B1 (en) | 2016-07-01 | 2023-09-12 | Wells Fargo Bank, N.A. | Access control tower |
US11914743B1 (en) | 2016-07-01 | 2024-02-27 | Wells Fargo Bank, N.A. | Control tower for unlinking applications from accounts |
US11928236B1 (en) | 2016-07-01 | 2024-03-12 | Wells Fargo Bank, N.A. | Control tower for linking accounts to applications |
US11615402B1 (en) | 2016-07-01 | 2023-03-28 | Wells Fargo Bank, N.A. | Access control tower |
US11853456B1 (en) | 2016-07-01 | 2023-12-26 | Wells Fargo Bank, N.A. | Unlinking applications from accounts |
US11645416B1 (en) | 2016-07-01 | 2023-05-09 | Wells Fargo Bank, N.A. | Control tower for defining access permissions based on data type |
US11895117B1 (en) | 2016-07-01 | 2024-02-06 | Wells Fargo Bank, N.A. | Access control interface for managing entities and permissions |
US11899815B1 (en) | 2016-07-01 | 2024-02-13 | Wells Fargo Bank, N.A. | Access control interface for managing entities and permissions |
US11935020B1 (en) | 2016-07-01 | 2024-03-19 | Wells Fargo Bank, N.A. | Control tower for prospective transactions |
US11886613B1 (en) | 2016-07-01 | 2024-01-30 | Wells Fargo Bank, N.A. | Control tower for linking accounts to applications |
US11429742B1 (en) | 2016-07-01 | 2022-08-30 | Wells Fargo Bank, N.A. | Control tower restrictions on third party platforms |
US11409902B1 (en) | 2016-07-01 | 2022-08-09 | Wells Fargo Bank, N.A. | Control tower restrictions on third party platforms |
US11886611B1 (en) | 2016-07-01 | 2024-01-30 | Wells Fargo Bank, N.A. | Control tower for virtual rewards currency |
US11736490B1 (en) | 2016-07-01 | 2023-08-22 | Wells Fargo Bank, N.A. | Access control tower |
US11501294B2 (en) | 2016-07-18 | 2022-11-15 | Advanced New Technologies Co., Ltd. | Method and device for providing and obtaining graphic code information, and terminal |
US20190279199A1 (en) * | 2016-07-29 | 2019-09-12 | Visa International Service Association | Multi-device authentication process and system utilizing cryptographic techniques |
US11301844B2 (en) | 2016-08-12 | 2022-04-12 | Mastercard International Incorporated | Cryptographic authentication and tokenized transactions |
CN109716373A (en) * | 2016-08-12 | 2019-05-03 | 万事达卡国际公司 | Cipher authentication and tokenized transaction |
US10650621B1 (en) | 2016-09-13 | 2020-05-12 | Iocurrents, Inc. | Interfacing with a vehicular controller area network |
US11232655B2 (en) | 2016-09-13 | 2022-01-25 | Iocurrents, Inc. | System and method for interfacing with a vehicular controller area network |
US10699090B2 (en) | 2016-12-02 | 2020-06-30 | Koupon Media, Inc. | Using dynamic occlusion to protect against capturing barcodes for fraudulent use on mobile devices |
US10444987B2 (en) * | 2016-12-19 | 2019-10-15 | Microsoft Technology Licensing, Llc | Facilitating selection of holographic keyboard keys |
US11651347B2 (en) * | 2017-02-03 | 2023-05-16 | Worldpay Limited | Terminal for conducting electronic transactions |
US20180225653A1 (en) * | 2017-02-03 | 2018-08-09 | Worldpay Limited | Terminal for conducting electronic transactions |
US11556936B1 (en) | 2017-04-25 | 2023-01-17 | Wells Fargo Bank, N.A. | System and method for card control |
US11869013B1 (en) | 2017-04-25 | 2024-01-09 | Wells Fargo Bank, N.A. | System and method for card control |
US11875358B1 (en) | 2017-04-25 | 2024-01-16 | Wells Fargo Bank, N.A. | System and method for card control |
US11544710B2 (en) | 2017-06-02 | 2023-01-03 | Apple Inc. | Provisioning credentials on multiple electronic devices |
US11769144B2 (en) * | 2017-06-02 | 2023-09-26 | Apple Inc. | Provisioning credentials for an electronic transaction on an electronic device |
US20180349890A1 (en) * | 2017-06-02 | 2018-12-06 | Apple Inc. | Provisioning credentials for an electronic transaction on an electronic device |
US11756114B1 (en) | 2017-07-06 | 2023-09-12 | Wells Fargo Bank, N.A. | Data control tower |
US11645642B2 (en) * | 2017-10-26 | 2023-05-09 | Jack Shauh | Mobile payment system and method using a mobile payment device without an installed application |
US20190130384A1 (en) * | 2017-10-26 | 2019-05-02 | Jack Shauh | Mobile payment system and method using a mobile payment device without an installed application |
US11151568B2 (en) * | 2018-05-09 | 2021-10-19 | Capital One Services, Llc | Real-time selection of authentication procedures based on risk assessment |
US11727456B2 (en) * | 2018-10-11 | 2023-08-15 | International Business Machines Corporation | Generating a quote to cash solution |
US20200118186A1 (en) * | 2018-10-11 | 2020-04-16 | International Business Machines Corporation | Generating a quote to cash solution |
US11386430B2 (en) * | 2019-11-14 | 2022-07-12 | Capital One Services, Llc | Protocol to secure electronic transactions using two way handshakes |
US10832244B1 (en) * | 2019-11-14 | 2020-11-10 | Capital One Services, Llc | Protocol to secure electronic transactions using two way handshakes |
US20220284439A1 (en) * | 2019-11-14 | 2022-09-08 | Capital One Services, Llc | Protocol to Secure Electronic Transactions Using Two-Way Handshakes |
US11615253B1 (en) | 2020-09-04 | 2023-03-28 | Wells Fargo Bank, N.A. | Synchronous interfacing with unaffiliated networked systems to alter functionality of sets of electronic assets |
US11947918B2 (en) | 2020-09-04 | 2024-04-02 | Wells Fargo Bank, N.A. | Synchronous interfacing with unaffiliated networked systems to alter functionality of sets of electronic assets |
US20220207526A1 (en) * | 2020-12-28 | 2022-06-30 | Capital One Services, Llc | Secure contactless credential exchange |
US11546338B1 (en) | 2021-01-05 | 2023-01-03 | Wells Fargo Bank, N.A. | Digital account controls portal and protocols for federated and non-federated systems and devices |
US11818135B1 (en) | 2021-01-05 | 2023-11-14 | Wells Fargo Bank, N.A. | Digital account controls portal and protocols for federated and non-federated systems and devices |
US20240054549A1 (en) * | 2022-08-11 | 2024-02-15 | Bambumeta, Llc | Systems and Methods for Distributed Commerce Based on a Token Economy |
US11741527B1 (en) * | 2022-08-11 | 2023-08-29 | Bambumeta, Llc | Systems and methods for distributed commerce based on a token economy |
US11972473B2 (en) * | 2023-08-11 | 2024-04-30 | Bambumeta, Llc | Systems and methods for distributed commerce based on a token economy |
Also Published As
Publication number | Publication date |
---|---|
US11488138B2 (en) | 2022-11-01 |
TWI686752B (en) | 2020-03-01 |
TW201525892A (en) | 2015-07-01 |
KR102165708B1 (en) | 2020-10-14 |
WO2015048024A1 (en) | 2015-04-02 |
TW201523471A (en) | 2015-06-16 |
KR102051931B1 (en) | 2019-12-04 |
KR20160048951A (en) | 2016-05-04 |
CN105556551B (en) | 2020-05-19 |
US20230018976A1 (en) | 2023-01-19 |
KR20180017222A (en) | 2018-02-20 |
US20150095219A1 (en) | 2015-04-02 |
EP3053120A1 (en) | 2016-08-10 |
CN105556551A (en) | 2016-05-04 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US20230018976A1 (en) | Initiation of online payments using an electronic device identifier | |
US11941620B2 (en) | Multi-path communication of electronic device secure element data for online payments | |
US11488136B2 (en) | Management of credentials on an electronic device using an online resource | |
US20230419310A1 (en) | Multi-path communication of electronic device secure element data for online payments | |
US20220318798A1 (en) | Conducting transactions using electronic devices with non-native credentials | |
US20210174358A1 (en) | Credential provisioning for an electronic device | |
US11120442B2 (en) | Management of reloadable credentials on an electronic device using an online resource | |
US10346848B2 (en) | Provisioning multiple secure credentials on an electronic device | |
US11178124B2 (en) | Secure pairing of a processor and a secure element of an electronic device | |
TWI703521B (en) | Recommendation of payment credential to be used based on merchant information | |
US10929843B2 (en) | Storage of credential service provider data in a security domain of a secure element | |
US20150326545A1 (en) | Secure key rotation for an issuer security domain of an electronic device | |
AU2018101229A4 (en) | Conducting transactions using electronic devices with non-native credentials |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
AS | Assignment |
Owner name: APPLE INC., CALIFORNIA Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:KHAN, AHMER A.;HURLEY, TIMOTHY S.;DIEDERICH, ANTON K.;AND OTHERS;SIGNING DATES FROM 20140905 TO 20150925;REEL/FRAME:036698/0449 |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: RESPONSE AFTER FINAL ACTION FORWARDED TO EXAMINER |
|
STPP | Information on status: patent application and granting procedure in general |
Free format text: ADVISORY ACTION MAILED |
|
STCB | Information on status: application discontinuation |
Free format text: ABANDONED -- FAILURE TO RESPOND TO AN OFFICE ACTION |