CN109690596B - 用于卡交易的动态安全码 - Google Patents
用于卡交易的动态安全码 Download PDFInfo
- Publication number
- CN109690596B CN109690596B CN201780056423.7A CN201780056423A CN109690596B CN 109690596 B CN109690596 B CN 109690596B CN 201780056423 A CN201780056423 A CN 201780056423A CN 109690596 B CN109690596 B CN 109690596B
- Authority
- CN
- China
- Prior art keywords
- card
- time
- security code
- electronic device
- dynamic security
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
- 238000000034 method Methods 0.000 claims description 44
- 238000004891 communication Methods 0.000 claims description 11
- 230000006870 function Effects 0.000 description 24
- 238000012545 processing Methods 0.000 description 6
- 230000008569 process Effects 0.000 description 5
- 230000008901 benefit Effects 0.000 description 3
- 238000013475 authorization Methods 0.000 description 2
- 238000010586 diagram Methods 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000003287 optical effect Effects 0.000 description 2
- 238000005192 partition Methods 0.000 description 2
- 230000003068 static effect Effects 0.000 description 2
- 230000004913 activation Effects 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 238000002360 preparation method Methods 0.000 description 1
- 230000001902 propagating effect Effects 0.000 description 1
- 238000000638 solvent extraction Methods 0.000 description 1
- 238000012546 transfer Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
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/34—Payment architectures, schemes or protocols characterised by the use of specific devices or networks using cards, e.g. integrated circuit [IC] cards or magnetic cards
- G06Q20/341—Active cards, i.e. cards including their own processing means, e.g. including an IC or chip
-
- 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
- G06Q20/401—Transaction verification
- G06Q20/4018—Transaction verification using the card verification value [CVV] associated with the card
-
- 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/38—Payment protocols; Details thereof
- G06Q20/385—Payment protocols; Details thereof using an alias or single-use codes
-
- 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
- G06Q20/401—Transaction verification
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Accounting & Taxation (AREA)
- General Business, Economics & Management (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Finance (AREA)
- Microelectronics & Electronic Packaging (AREA)
- Computer Security & Cryptography (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
- Storage Device Security (AREA)
- Credit Cards Or The Like (AREA)
Abstract
卡(35)生成用于卡交易,例如无卡(CNP)交易的动态安全码。该卡(35)经由外部卡接口(330)从卡外部的电子设备(10)接收生成动态安全码的请求(83)。该卡(35)经由外部卡接口(330)接收包括时间的消息(87)。该卡(35)基于时间和存储在该卡处的密钥(dCVV‑key)计算(89)动态安全码。该卡(35)经由外部卡接口(330)将动态安全码(90)发送到电子设备(10),以显示在电子设备(10)的显示器(14)上。该卡(35)可以确定(88)包括所述时间的所述消息的真实性。
Description
背景技术
欺诈性地使用诸如***和借记卡之类的支付卡是一直存在的问题。无卡(Cardnot Present,CNP)交易带来尤其高的风险。CNP交易可以是在线进行的支付交易,或者可以是通过电话进行的支付交易。在最简单的情况下,欺诈方可以通过仅获取主账号(PAN)和支付卡的到期日期来进行欺诈交易。现在,许多支付卡都包含卡验证值(CVV)来提高安全性。CVV被印在卡的签名板上或者卡的正面上。但是,由于CVV是另一个静态值,因此欺诈方有可能在CNP交易中获取和使用CVV。
提高安全性的一种方法是动态生成安全码。US2014/0279555 A1描述了一种可以动态生成安全码的卡。图1显示了这种类型的卡。卡1具有磁条2、签名板3和微型显示器4。当用户激活卡上的按钮5时,卡内的处理器生成安全码并在显示器4上显示该安全码。
虽然具有动态码生成器和显示器的卡可以提高安全性,但是这种布置的缺点是卡的成本增加。
发明内容
本发明的一个方面提供了一种为卡交易生成动态安全码的方法,所述方法包括在卡处:
经由外部卡接口从所述卡外部的电子设备接收生成动态安全码的请求;
经由外部卡接口接收包括时间的消息;
基于所述时间和存储在所述卡处的密钥计算动态安全码;
经由外部卡接口将动态安全码发送到所述电子设备。
所述方法可以确定包括所述时间的所述消息的真实性。
可选地,只有在包括所述时间的所述消息被确定为真实的情况下才执行以下项中的至少一个:计算动态安全码;发送动态安全码。。
包括所述时间的所述消息可以包括消息认证码MAC,并且确定所述消息的真实性可以包括:使用存储在所述卡处的密钥在所述卡处计算消息认证码;以及将计算出的消息认证码与接收到的所述消息中的消息认证码进行比较。
所述卡可以存储标识符,所述标识符识别存储在所述卡处用于认证所述消息的时间密钥;并且所述方法可以包括:经由所述卡的外部卡接口从所述电子设备接收对所述标识符的请求;以及经由外部卡接口将所述标识符发送到所述电子设备。
该方法可以包括:经由外部卡接口从所述电子设备接收个人识别号PIN;确定个人识别号是否正确;以及只在个人识别号被确定为正确的情况下,才计算动态安全码。
另一方面提供了一种为卡交易生成动态安全码的方法,所述方法包括在卡外部的电子设备处:
接收生成动态安全码的用户请求;
经由设备到卡接口向所述卡发送生成动态安全码的请求;
向所述电子设备外部的时间源发送时间请求;
从时间源接收包括时间的消息;
经由设备到卡接口向所述卡发送包括所述时间的所述消息;
经由设备到卡接口从所述卡接收动态安全码,其中动态安全码的值基于所述时间;以及
使动态安全码显示在所述电子设备的显示器上。
所述卡可以存储标识符,所述标识符识别用于认证包括所述时间的所述消息的密钥,并且所述方法可以包括:经由设备到卡接口向所述卡发送对所述标识符的请求;以及经由设备到卡接口接收所述标识符。
所述方法可以包括利用时间请求将所述标识符发送到时间服务器。
所述方法可以包括:使所述电子设备的显示器显示对个人识别号PIN的请求;接收由用户在所述电子设备的用户输入设备上输入的PIN;以及经由设备到卡接口将PIN发送到所述卡。
电子设备可以与多个不同的卡一起使用,并且所述方法可以包括:存储针对多个卡中每个卡的多个标识符,每个标识符识别用于认证包括所述时间的所述消息的密钥;使所述电子设备显示对选择多个卡中的一个卡的用户输入的邀请;接收选择多个卡中的一个卡的用户输入;检索所选择的卡的标识符;以及利用时间请求将检索到的标识符发送到时间源。
外部卡接口和设备到卡接口中的可以是近场通信(NFC)接口。
另一方面提供了一种能够为交易生成动态安全码的卡,包括:
带有处理器和存储装置的安全元件;
外部卡接口;
其中存储装置被配置为存储密钥,并且其中安全元件被配置为:
经由外部卡接口从所述卡外部的电子设备接收生成动态安全码的请求;
经由外部卡接口接收包括时间的消息;
基于所述时间和存储的密钥计算动态安全码;
经由外部卡接口将动态安全码发送到所述电子设备。
安全元件可以被配置为确定包括所述时间的所述消息的真实性。
另一方面提供了一种能够为卡交易动态生成安全码的电子设备,所述电子设备与卡分离,所述电子设备包括:
处理器;
存储装置;
设备到卡接口;
用户输入设备;
显示器;
其中所述电子设备被配置为:
从用户输入设备接收生成动态安全码的用户请求;
经由设备到卡接口向所述卡发送生成动态安全码的请求;
向所述电子设备外部的时间源发送时间请求;
从时间源接收包括时间的消息;
经由设备到卡接口将包括所述时间的所述消息发送到所述卡;
经由设备到卡接口从所述卡接收动态安全码;以及
使动态安全码显示在所述电子设备的显示器上。
术语“动态安全码”意味着安全码不是静态的,而是随时间变化的。
至少一个实施例的优点是:生成动态安全码而无需带有显示器和电池的较昂贵的卡。替代地,卡生成动态安全码,并且电子设备用于提供显示和接收用户输入。卡为码的生成和密钥的存储提供安全的环境。电子设备可以是以下之一:电话、平板电脑、个人计算机或类似设备。
至少一个实施例的优点是针对特定时间生成动态安全码。可选地,时间服务器可以向主机设备提供时间以及允许卡检查消息的真实性并因此检查由消息携带的时间的信息。这可以防止欺诈方获取用于未来时间的安全码值。
这里描述的功能可以用硬件、由处理装置执行的软件、或通过硬件和软件的组合来实现。处理装置可以包括计算机、处理器、状态机、逻辑阵列或任何其它合适的处理装置。处理装置可以是通用处理器,其执行软件以使通用处理器执行所需任务,或者处理装置可以专用于执行所需功能。本发明的另一方面提供了机器可读指令(软件),当由其由处理器执行时,执行任何所描述的或要求保护的方法。机器可读指令可以存储在电子存储器设备、硬盘、光盘或其它机器可读存储介质上。机器可读介质可以是非暂态机器可读介质。术语“非暂态机器可读介质”包括除暂态、传播信号之外的所有机器可读介质。机器可读指令可以经由网络连接下载到存储介质。
附图说明
仅作为示例,将参考附图描述本发明的实施例,附图中:
图1示出了可以动态生成安全码的卡;
图2示出了用于执行诸如CNP交易之类的交易的***;
图3示出了在图2的***中执行交易和动态生成安全码的方法;
图4示出了在时间服务器上准备时间消息;
图5示出了在卡上认证时间消息;
图6示出了在主机设备上计算安全码;
图7A示出了存储在授权实体和时间服务器上的数据的示例;
图7B示出了存储在授权实体和时间服务器上的功能和数据的示例;
图8示出了利用PIN输入执行交易的修改方法;
图9示出了在主机设备上选择卡;
图10示出了主机设备上的用户界面的示例图序列;
图11示意性地示出了主机设备的可能的实现;
图12示意性地示出了主机设备的另一种可能的实现;
图13示意性地示出了主机设备的另一种可能的实现。
具体实施方式
图2示出了用于执行交易的***。交易使用卡35的详细信息。卡35可以是支付卡,诸如借记卡或***之类。图1的***可以用于无卡(CNP)交易。在CNP交易中,卡本身在交易期间不呈现给商家。商家处的读卡器/支付终端与卡之间没有通信。替代地,在交易中仅使用印在卡上的卡详细信息(例如***、到期日期、安全码)。CNP交易的示例是持卡人和商家之间的电话交易,其中持卡人与商家交谈并且口头提供他们的卡详细信息。CNP交易的另一个示例是持卡人和商家之间的在线交易,其中持卡人在与商家或商家的支付处理器的在线会话期间将他们的卡详细信息输入到支付表单中。图2的***中所示的实体是:主机设备10、卡35、商家45、授权实体40、时间服务器50和用户60。用户60是希望使用卡35进行交易的人(例如,持卡人)。
卡35包括安全元件310。安全元件310包括处理器312和存储装置313。安全元件310提供安全的存储和执行环境。安全元件310可以是符合Europay、MasterCard和Visa(EMV)的。安全元件310具有为交易动态生成安全码的功能。卡35存储码生成软件326(例如,小应用(applet))和由码生成软件326使用的密钥327。安全元件310的处理器312可以执行码生成软件326并且安全元件310内的存储装置313存储密钥327。卡35还可以存储标识符ID328,该标识符识别存储在卡35上的(一个或多个)密钥。该ID可以被发送到时间服务器50以允许时间服务器选择适合于卡35的密钥。卡35具有近场通信(NFC)接口330。NFC接口的另一个术语是非接触式接口。卡还可以具有接触式接口。非接触式接口和接触式接口是外部卡接口的类型。去往/来自安全元件310的通信典型地采用ISO 7816应用协议数据单元(APDU)的形式。卡35具有印在外表面上的信息,诸如:PAN、到期日期、持卡人姓名之类。
主机设备10是具有显示安全码的功能的电子设备。主机设备10具有用户输入设备13以接收来自用户的输入。当主机设备10提供显示器和输入设备时,卡35可以是没有显示器或输入设备的常规卡。主机设备10具有NFC接口16,该接口能够与卡35的NFC接口330通信。主机设备10还可以存储和执行与卡35通信的应用25、输出用于在显示器14上呈现的信息、以及从用户输入设备13接收输入。
用户60可以使用设备10来执行CNP交易。用户可以使用设备10来呼叫商家45并与之通话,或者用户60可以使用设备10上的浏览器软件来执行与商家45的在线交易。这通过主机设备10和商家45之间的通信路径32示出。在这种情况下,主机设备10用于执行与商家45的CNP交易并且与卡35结合生成安全码。可选地,使用另一个设备30用于CNP交易。这通过设备30和商家45之间的通信路径31示出。例如,用户可以使用设备30来呼叫商家45并与之通话,或者用户60可以使用设备30上的浏览器软件来执行与商家45的在线交易。在这种情况下,主机设备10与卡35结合仅用于生成安全码,并且在主机设备10或卡35与商家45之间没有通信路径32。授权实体40是负责批准交易的实体,诸如发卡方、银行、支付处理器或类似实体。网络48将主机设备10连接到商家45和时间服务器50。网络将商家45连接到授权实体40。
卡35可以存储两种主要类型的密钥327:
(i)用于生成安全码的第一密钥(dCVV-key(dCVV-密钥));
(ii)用于认证携带从时间服务器50接收到的时间信息的消息的第二密钥(time-key_ID)。
主机设备10存储标识符(ID),所述标识符可以由另一个网络实体用于在与设备10通信时选择适当的密钥。例如,时间服务器50在向设备10发送时间消息时使用该ID来选择适当的时间密钥(time-key)。在发卡前(例如,在个性化期间),卡35被编程有用于生成安全码的dCVV密钥。授权实体40将知道已经被编程到卡35中的dCVV密钥。因此,不需要将卡登记到授权实体。
主机设备10的示例是智能电话、平板电脑、个人计算机(PC)或任何其它合适的计算设备。主机设备10能够执行其它任务。例如,智能电话可以能够执行应用以执行一系列其它任务,诸如消息传送、电子邮件、办公应用之类。主机设备10可以是便携式设备或固定设备。主机设备10包括输入设备13,诸如键盘、鼠标、触摸屏或从用户接收输入的其它设备。主机设备10的显示器14用于向用户提供信息,诸如针对输入的提示、生成的码、码生成的状态等。主机设备10可以提供图形用户界面(GUI)。
授权实体40存储用于本地计算安全码的一个或多个密钥。作为CNP交易的一部分,实体40将其已计算的安全码与从设备10、30接收到的安全码进行比较。如果安全码匹配,则根据满足其它要求批准交易。如果安全码不匹配,则拒绝该交易。商家/授权实体40存储将卡数据(例如,PAN、到期日期)与码生成密钥、dCVV密钥相关联的数据。
时间服务器50存储在向主机设备10发送时间消息时使用的一个或多个密钥。
卡35基于时间生成安全码。生成的安全码具有时间有限的有效期。在该有效期之后,安全码不再有效,并且试图使用过期安全码的交易将失败。时间服务器50提供时间。卡35使用从时间服务器50接收到的时间来生成安全码。有利地,时间是准确的,以避免欺诈方计算用于未来时间的安全码。时间服务器可以向主机设备10提供时间。如下面更全面地描述的,主机设备10将时间转发到卡35,并且卡35可以检查包含时间的消息的真实性并且如果消息不是真实的,则可以不生成安全码。
图3示出了使用卡35、主机设备10、商家45、授权实体40、时间服务器50和用户60执行CNP交易的示例。使用阶段还使用主机设备10与商家45通信,或使用设备30与商家45通信。用户开始与商家45进行CNP交易。交易可以是电话交易,或与在线商家或服务提供商的在线交易。CNP交易可以被转移到授权实体40,诸如商家的支付处理器之类。作为CNP交易的一部分,要求用户输入卡数据,诸如:PAN和卡的到期日期之类。用户在80处输入该数据。CNP交易还可以要求用户提供关于持卡人的其它数据,诸如以下中的一个或多个:持卡人姓名、持卡人地址、邮政编码(ZIP编码)。CNP交易要求用户输入安全码。获得安全码的过程在步骤81-91中示出。
首先,用户在主机设备10上打开81应用25。用户请求82生成安全码。用户可以与主机设备10上的应用25交互以请求码生成。例如,用户选择在显示器14上的用户界面上显示的图标以生成安全码。用户将主机设备10移动(“轻拍”)靠近需要码的卡35。应用25经由NFC接口将码请求83发送到卡35的安全元件310。为特定时间点计算安全码。应用25向时间服务器50发送时间请求84。时间请求84包括卡35上的密钥的标识符(ID)。
主机设备可以按两种可能的方式来获取卡的ID:
(i)应用25可以在应用25与卡35通信的每个时机从卡35请求ID。应用不存储ID。图3示出了应用25和卡35之间的交换。应用25向卡35发送ID请求74,并且卡35发送带有ID的回复75。
(ii)应用25可以在主机设备10第一次与卡35通信时执行登记。在登记期间,应用25重获(recover)与这个卡35相关联的ID并将该ID存储在主机设备10中。登记过程可以使用图3中所示的类似交换74、75。注册只需执行一次。当应用25随后与同一卡35通信时,应用25已经知道该卡的ID。
时间服务器50接收时间请求84并使用ID来检索卡35的适当密钥。时间服务器50准备包括当前时间的消息。该消息包括允许接收者认证消息的信息。可以以各种方式执行认证。认证消息的一种合适的方法是在时间服务器50和卡35处使用对称密钥以及消息认证码(MAC)。时间服务器50计算使用消息内容和特定于设备的密钥作为输入的MAC。MAC被添加到发送到卡35的消息中。MAC可以允许卡35确定另一方是否已经篡改消息的内容。时间消息86被发送到主机设备10。应用25接收时间消息86并将其转发到安全元件310。时间请求84和时间消息86可以通过任何合适的网络传送,诸如:局域网(LAN)接口;广域网(WAN)接口;无线接口(例如,WiFi、2G、3G、4G);有线接口。
在88处,安全元件310确定时间消息是否是真实的。例如,安全元件310可以使用与时间服务器相同的输入(即,消息内容(减去接收到的MAC)和特定于设备的密钥)来计算MAC。如果由卡35计算的MAC与接收到的消息中的MAC相同,则消息内容(即,时间)被确定为真实的。在89处,安全元件310继续计算安全码。生成的安全码被发送90到应用25并且被转发到用户界面,并显示在主机设备10的显示器14上。该方法可以只在包含时间的消息被确定为真实的情况下,才继续在89处计算动态安全码。如果包含时间的消息被确定为不是真实的,则该方法不计算动态安全码。卡35可以向应用25返回错误消息,以便在显示器14上显示。
返回到CNP交易,用户现在可以在主机设备10的显示器14上看到安全码。用户经由设备30向商家45或授权实体40提供显示的代码92。授权实体40独立地计算安全码。授权实体40使用卡数据(例如,PAN、到期日期)来检索卡35的密钥。授权实体40然后使用特定于卡的密钥来计算安全码。将从用户接收到的安全码92与在93处计算出的安全码进行比较94。如果安全码匹配,则交易被批准。如果安全码不匹配,则交易不被批准。可以使用其它标准来做出是否批准交易的决定,诸如信用限额、消费模式、交易地点等。图3示出了组合的商家/授权实体。将理解的是,CNP交易通常将涉及设备10/30与商家45之间的一些初始通信。当需要授权时,涉及授权实体40。商家45可以联系授权实体40(例如,如果交易是通过语音呼叫进行的),或者商家可以将交易转移到授权实体40(例如,在在线交易期间、在用户已输入卡详细信息之前或之后)。
应该理解的是,该方法的步骤可以以任何合适的次序执行,或者在适当的情况下同时执行。例如,安全码请求83和时间消息87可以一起发送到卡35,或者安全码请求83可以晚于图3所示发送到卡35。
时间消息认证
图4和5示出了在时间服务器50和卡35处使用对称密钥对时间消息进行认证的示例。图4示出了时间服务器50处的功能。MAC计算函数113接收要发送的消息内容111(包括时间)和特定于设备的密钥(时间-密钥_ID)112作为输入。MAC 114由函数113计算并且输出。计算出的MAC 114被添加到发送到设备10的消息115,并且被转发到卡35。
图5示出了卡35处的功能。类似于时间服务器50处的MAC计算函数113,MAC计算函数123接收来自时间服务器50的消息和特定于设备的密钥112作为输入。MAC 124由函数123计算并且输出。然后,卡确定由卡计算出的MAC是否等于由时间服务器计算出的MAC,即,是否MAC(设备)=MAC(时间服务器)。如果由卡计算出的MAC与接收到的消息中的密码相同,则消息内容(即,时间)被确定为真实的。时间服务器和卡可以使用具有相同值的一对对称密钥112、122。可以在消息的全部或部分上计算MAC。该方法可以使用散列函数来计算散列,并且可以在散列上计算MAC计算函数113。合适的散列函数的示例是基于散列的消息认证码(HMAC)。合适的基于块密码的函数的示例是密码块链接消息认证码(CBC-MAC)和基于密码的消息认证码(CMAC)。经认证的时间服务的示例是由美国国家标准与技术研究院(NIST)提供的服务。
认证时间消息的另一种方法是通过使用非对称密钥对(私钥,公钥)和数字签名。时间服务器50具有私钥和公钥。时间服务器执行消息的散列并使用时间服务器的私钥来计算数字签名。卡35使用时间服务器50的公钥对数字签名进行解码,并检查解码的签名是否与消息数据的散列匹配。如果存在匹配,则该消息被确定为真实的。该方法需要主机设备10存储时间服务器的公钥。有几种可能的方法将时间服务器的公钥提供给主机设备10:
-预先(例如,在卡35的个性化时)存储时间服务器的公钥。
-在稍后的“激活”阶段期间接收时间服务器的公钥。卡35已经存储了证书颁发机构(CA)的公钥。时间服务器的公钥作为证书的一部分被接收。在存储时间服务器的公钥之前,卡35使用CA的公钥检查包含时间服务器的公钥的证书的有效性。
-永远不存储时间服务器的公钥。时间服务器的公钥与时间消息一起被接收(例如,作为证书)。如上所述,证书已被验证。这允许在时间服务器50的选择中具有更大的灵活性。
图6示意性地示出了在卡35的安全元件310处计算安全码的功能。函数133接收时间131(如从时间服务器50接收的)和特定于卡的密钥(dCVV-密钥)132作为输入。函数113计算安全码并输出安全码134。
密钥存储和计算
图7A和7B示出了授权实体40和时间服务器50的一些示例。在图7A中,授权实体40存储针对需要与其通信的卡的密钥41。授权实体40存储卡数据和特定于卡的密钥之间的关联42。可以使用在个性化卡时获得的数据来形成所述关联。卡数据可以用作查找相应键51的索引。
图7B示出了授权实体40和时间服务器50的另一个示例。在图7B中,授权实体40存储主密钥(dCVV-key_master(dCVV-密钥_主))并且导出针对每个设备的密钥dCVV-key(dCVV-key_card-x(dCVV-密钥_卡-x)):
dCVV-key_card-x=f(dCVV-key_master,(卡x的卡数据))
其中f(dCVV-key_master,(card-x的卡数据))是具有dCVV-key_master和(card-x的卡数据)作为输入的密码函数。
时间服务器50存储主密钥(time-key_master(时间-密钥_主))并导出针对每个设备的时间密钥(time-key_ID(时间-密钥_ID)):
time-key_ID=f(time-key_master,ID)
其中f(time-key_master,ID)是具有time-key_master和ID作为输入的密码函数。标识符ID用于导出相应的密钥。例如,(time-key_ID 1由具有time-key_master和ID1作为输入的函数导出,time-key_ID2由具有time-key_master和ID2作为输入的函数导出,依此类推。
图7A和7B示出了其中使用对称密钥的时间服务器50并且时间服务器50检索特定卡的密钥的示例。如果使用非对称密钥对(私钥,公钥)认证时间消息,则时间服务器50存储私钥,并且可选地存储被发送到卡35的公钥。
PIN输入
图8示出了执行CNP交易的另一个示例。该示例类似于图3,但具添加了个人识别号(PIN)输入的特征。初始步骤81-83与图3中所示的相同。当安全元件310接收到安全码请求83时,它通过向应用25发送PIN请求83A来响应。应用25使PIN请求消息被显示在主机设备10的显示器14上83B。用户在83C处输入PIN。应用25将PIN 83D转发到安全元件310。在83E处,安全元件检查输入的PIN是否正确。如果输入的PIN不正确,则安全元件310可以发出另一个PIN请求。重复步骤83A-83E。在预定数量的不正确的PIN输入尝试之后,安全元件310可以拒绝进一步的尝试。如果输入的PIN是正确的,则安全元件310如图3所示继续进行。应用25可以在PIN输入过程(83A-83E)之后、在PIN输入过程的开始83A之前、或在PIN输入过程期间(83A-83E)向时间服务器50发送时间请求84。
多个卡
用户可能希望结合多个卡使用主机设备10。例如,用户可能有借记卡和若干个***。有若干种工作方式。
在第一选项中,主机设备10和应用25可以与呈现给主机设备10的任何卡结合操作。应用25不存储任何卡详细信息。在图3所示的方法期间,应用获得卡的ID(74,75)。
在第二选项中,主机设备10和应用25可以存储关于用户的卡的一些详细信息。例如,应用可以存储用户的每个卡的ID。每个卡可以与卡的某个标识符一起存储,诸如PAN的最后四位数字、短名称(例如,借记卡1)或足以提醒用户其与哪个卡相关的一些其它信息。可以如图9所示修改图3的方法的初始部分。用户打开应用25。在141处,用户请求生成安全码。应用25使用户界面显示关于多个登记的卡的信息142。在143处,用户选择所显示的卡之一。应用25使用户界面显示所选择的卡144。应用25向该卡发送安全码请求145。应用25向时间服务器发送时间请求146,所述时间请求具有在142处选择的卡的标识符(ID)。该方法以与图3所示类似的方式继续。该方法存储卡ID。
用户界面
图10示出了主机设备10上的用户界面的示例图序列A-D。在图A中,用户界面显示用于安全码生成应用(dCVV)的图标100。当用户选择图标100时,安全码生成应用开始,并且用户界面改变为图B中所示的用户界面。窗口102显示应用生成安全码104的选项。当被选择时,用户界面改变为图C中所示的用户界面。窗口102显示每个登记的卡的图标106。在该示例中,假设用户选择生成用于具有以*6789结尾的PAN的卡的安全码的选项。窗口102改变为图D并显示输入PIN的消息108。主机设备10执行图3所示的方法(83-90),并且用户界面改变为图E中所示的用户界面。窗口102显示从卡接收到的安全码109。在该示例中,安全码是三位数字“479”。用户界面可以在有限时段(例如,30秒)内显示安全码。
在其它示例中,可以扩展或缩短用户界面动作的序列。例如,如果不支持PIN输入,则可以省略图D。
主机设备
图11示意性地示出了主机设备10的实现。处理器12可以包括一个或多个处理器,该一个或多个处理器可以是微处理器、微控制器或用于执行指令的任何其它合适类型的处理器。处理器可以被称为应用处理器(AP)。处理器12经由一条或多条总线连接到设备的其它组件。可以使用诸如存储装置24之类的任何计算机可读介质来提供处理器可执行指令。处理器可执行指令可以包括用于实现上述应用25的指令。存储装置24可以是任何合适的类型,诸如非易失性存储器(例如闪存、电可擦除可编程只读存储器(EEPROM))、只读存储器(ROM)、随机存取存储器(RAM)、诸如磁性或光学存储设备之类的任何类型的存储设备。设备10包括一个或多个网络接口15。网络接口可以是以下中的一个或多个:局域网(LAN)接口;广域网(WAN)接口;无线接口(例如,WiFi、2G、3G、4G);有线接口;或任何其它合适的网络接口。网络接口15可以用于发送时间请求(84,图3)和接收时间消息(86,图3)。设备10包括输入设备13,诸如一个或多个按钮、键盘、指示设备、触摸屏之类。设备10包括显示器14。设备10包括NFC接口16。
在图12中,通用处理器12的处理环境被分区以提供安全分区11。安全分区11可以用于执行应用25,或可能对恶意软件敏感的功能,诸如PIN输入之类。分区可以以不同的方式完成,诸如:集成到片上***(SoC)的特定硬件IP块;如由全局平台定义的管理程序或可信执行环境(TEE)实现的TEE。
在图13中,主机设备10具有安全元件(SE)210。SE可以是嵌入式SE。嵌入式SE可以是主机设备的电路板上的单独硬件元件。其它可能形式的安全元件是:SIM卡中的SE-通用集成电路卡(UICC);嵌入式SIM中的SE-eUICC;集成SIM中的SE-iUICC;单独的卡中的SE,诸如安全数字(SD)卡。
在上述任何示例中,可以在安全元件310的个性化阶段期间安装一个或多个密钥。
本文描述的方法的步骤可以以任何合适的次序执行,或者在适当的情况下同时执行。
受益于前述描述和相关联附图中呈现的教导的本领域技术人员将想到所公开发明的修改和其它实施例。因此,应该理解的是,本发明不限于所公开的具体实施例,并且修改和其它实施例旨在被包括在本公开的范围内。虽然本文可能采用了特定术语,但它们仅用于一般性和描述性意义,而不是用于限制的目的。
Claims (11)
1.一种为卡交易生成动态安全码的方法,所述卡存储标识符ID,所述标识符ID识别存储在所述卡处用于认证包括时间的消息的时间密钥:时间-密钥_ID,所述方法包括在卡处:
经由外部卡接口从所述卡外部的电子设备接收生成动态安全码的请求;
经由所述卡的外部卡接口从所述电子设备接收对所述标识符ID的请求;
经由外部卡接口将所述标识符ID发送到所述电子设备;
经由外部卡接口接收包括所述时间的所述消息;
确定包括所述时间的所述消息的真实性;
基于所述时间和存储在所述卡处的密钥计算动态安全码;
经由外部卡接口将动态安全码发送(90)到所述电子设备。
2.如权利要求1所述的方法,其中只有在包括所述时间的所述消息被确定为真实的情况下才执行以下项中的至少一个:
计算动态安全码,以及
发送动态安全码。
3.如权利要求1或2所述的方法,其中包括所述时间的所述消息包括消息认证码MAC,并且确定所述消息的真实性包括:
使用存储在所述卡处的时间密钥:时间-密钥_ID在所述卡处计算消息认证码;以及
将计算出的消息认证码与接收到的所述消息中的消息认证码进行比较。
4.如权利要求1或2所述的方法,包括:
经由外部卡接口从所述电子设备接收个人识别号PIN;
确定个人识别号是否正确;以及
只在个人识别号被确定为正确的情况下,才计算动态安全码。
5.一种为卡交易生成动态安全码的方法,所述卡存储标识符ID,所述标识符ID识别用于认证包括时间的消息的密钥,所述方法包括在卡外部的电子设备处:
接收生成动态安全码的用户请求;
经由设备到卡接口向所述卡发送生成动态安全码的请求;
经由设备到卡接口向所述卡发送对所述标识符ID的请求;
经由设备到卡接口接收所述标识符ID;
向所述电子设备外部的时间源发送时间请求;
从时间源接收包括所述时间的所述消息;
经由设备到卡接口向所述卡发送包括所述时间的所述消息;
经由设备到卡接口从所述卡接收动态安全码,其中动态安全码的值基于所述时间;以及
使动态安全码显示在所述电子设备的显示器上。
6.如权利要求5所述的方法,还包括利用时间请求将所述标识符ID发送到时间源。
7.如权利要求5或6所述的方法,还包括:
使所述电子设备的显示器显示对个人识别号PIN的请求;
接收由用户在所述电子设备的用户输入设备上输入的PIN;以及
经由设备到卡接口将PIN发送到所述卡。
8.如权利要求5或6所述的方法,其中所述电子设备能与多个不同的卡一起使用,并且所述方法还包括:
存储针对多个卡中每个卡的多个标识符ID,每个标识符识别用于认证包括所述时间的所述消息的密钥;
使所述电子设备显示对选择多个卡中的一个卡的用户输入的邀请;
接收选择所述多个卡中的一个卡的用户输入;
检索所选择的卡的标识符ID;以及
利用时间请求将检索到的标识符ID发送到时间源。
9.如权利要求1-2和5-6中任一项所述的方法,其中外部卡接口和设备到卡接口中的至少一个是近场通信NFC接口。
10.一种能够为交易生成动态安全码的卡,包括:
带有处理器和存储装置的安全元件;以及
外部卡接口,
其中存储装置被配置为存储密钥:dCVV-密钥、标识符ID和时间密钥:时间-密钥_ID,所述标识符ID识别用于认证包括时间的消息的所述时间密钥,并且其中安全元件被配置为:
经由外部卡接口从所述卡外部的电子设备接收生成动态安全码的请求;
经由所述卡的外部卡接口从所述电子设备接收对所述标识符ID的请求;
经由外部卡接口将所述标识符ID发送到所述电子设备;
经由外部卡接口接收包括所述时间的所述消息;
确定包括所述时间的所述消息的真实性;
基于所述时间和存储的密钥计算动态安全码;以及
经由外部卡接口将动态安全码发送到所述电子设备。
11.一种能够为卡交易动态生成安全码的电子设备,所述卡存储标识符ID,所述标识符ID识别用于认证包括时间的消息的密钥,所述电子设备与所述卡分离,所述电子设备包括:
处理器;
存储装置;
设备到卡接口;
用户输入设备;以及
显示器;
其中所述电子设备被配置为:
从用户输入设备接收生成动态安全码的用户请求;
经由设备到卡接口向所述卡发送生成动态安全码的请求;
经由设备到卡接口向所述卡发送对所述标识符ID的请求;
经由设备到卡接口接收所述标识符ID;
向所述电子设备外部的时间源发送时间请求;
从时间源接收包括所述时间的所述消息;
经由设备到卡接口将包括所述时间的所述消息发送到所述卡;
经由设备到卡接口从所述卡接收动态安全码;以及
使动态安全码显示在所述电子设备的显示器上。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
EP16306003.1A EP3279849B1 (en) | 2016-08-02 | 2016-08-02 | Dynamic security code for a card transaction |
EP16306003.1 | 2016-08-02 | ||
PCT/EP2017/069091 WO2018024615A2 (en) | 2016-08-02 | 2017-07-27 | Dynamic security code for a card transaction |
Publications (2)
Publication Number | Publication Date |
---|---|
CN109690596A CN109690596A (zh) | 2019-04-26 |
CN109690596B true CN109690596B (zh) | 2023-12-08 |
Family
ID=56618110
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201780056423.7A Active CN109690596B (zh) | 2016-08-02 | 2017-07-27 | 用于卡交易的动态安全码 |
Country Status (6)
Country | Link |
---|---|
US (1) | US11763292B2 (zh) |
EP (1) | EP3279849B1 (zh) |
CN (1) | CN109690596B (zh) |
DK (1) | DK3279849T3 (zh) |
ES (1) | ES2912594T3 (zh) |
WO (1) | WO2018024615A2 (zh) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11521262B2 (en) * | 2019-05-28 | 2022-12-06 | Capital One Services, Llc | NFC enhanced augmented reality information overlays |
EP3923224A1 (en) * | 2020-06-11 | 2021-12-15 | Mastercard International Incorporated | Transaction device security |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1614924A (zh) * | 2004-11-26 | 2005-05-11 | 王小矿 | 基于智能卡和动态密码的身份认证*** |
CN102034307A (zh) * | 2010-12-31 | 2011-04-27 | 上海众人网络安全技术有限公司 | 一种基于电子钱包的动态密码认证***及方法 |
WO2016018255A1 (en) * | 2014-07-29 | 2016-02-04 | Hewlett-Packard Development Company, L.P. | Financial transaction medium |
Family Cites Families (16)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7584153B2 (en) * | 2004-03-15 | 2009-09-01 | Qsecure, Inc. | Financial transactions with dynamic card verification values |
WO2007149830A2 (en) * | 2006-06-19 | 2007-12-27 | Visa U.S.A. Inc. | Portable consumer device configured to generate dynamic authentication data |
US8359630B2 (en) * | 2007-08-20 | 2013-01-22 | Visa U.S.A. Inc. | Method and system for implementing a dynamic verification value |
US8577804B1 (en) * | 2008-02-20 | 2013-11-05 | Collective Dynamics LLC | Method and system for securing payment transactions |
WO2011112393A2 (en) * | 2010-03-09 | 2011-09-15 | Visa International Service Association | System and method including security parameters used for generation of verification value |
US20120153028A1 (en) * | 2010-12-15 | 2012-06-21 | Poznansky Amir | Transaction Card with dynamic CVV |
US8577803B2 (en) * | 2011-06-03 | 2013-11-05 | Visa International Service Association | Virtual wallet card selection apparatuses, methods and systems |
PL2885904T3 (pl) * | 2012-08-03 | 2018-09-28 | Vasco Data Security International Gmbh | Dogodny dla użytkownika sposób uwierzytelniania i urządzenie stosujące mobilną aplikację uwierzytelniania |
US10572873B2 (en) * | 2013-02-15 | 2020-02-25 | Mastercard International Incorporated | Method and system for the transmission of authenticated authorization requests |
US20140279555A1 (en) | 2013-03-14 | 2014-09-18 | Nagraid Security, Inc. | Dynamically allocated security code system for smart debt and credit cards |
US20160148194A1 (en) * | 2013-03-14 | 2016-05-26 | Nagraid Security, Inc. | Radio Frequency Powered Smart, Debit and Credit Card System Employing a Light Sensor to Enable Authorized Transactions |
US9947001B2 (en) * | 2013-03-15 | 2018-04-17 | Mastercard International Incorporated | System and method for using multiple payment accounts using a single payment device |
US9646303B2 (en) * | 2013-08-15 | 2017-05-09 | Visa International Service Association | Secure remote payment transaction processing using a secure element |
US10223694B2 (en) * | 2013-09-10 | 2019-03-05 | Visa International Service Association | Mobile payment application provisioning and personalization on a mobile device |
US11620654B2 (en) * | 2014-12-04 | 2023-04-04 | Mastercard International Incorporated | Methods and apparatus for conducting secure magnetic stripe card transactions with a proximity payment device |
SG11201705800SA (en) * | 2015-02-17 | 2017-08-30 | Visa Int Service Ass | Secure authentication of user and mobile device |
-
2016
- 2016-08-02 EP EP16306003.1A patent/EP3279849B1/en active Active
- 2016-08-02 DK DK16306003.1T patent/DK3279849T3/da active
- 2016-08-02 ES ES16306003T patent/ES2912594T3/es active Active
-
2017
- 2017-07-27 CN CN201780056423.7A patent/CN109690596B/zh active Active
- 2017-07-27 US US16/322,136 patent/US11763292B2/en active Active
- 2017-07-27 WO PCT/EP2017/069091 patent/WO2018024615A2/en active Application Filing
Patent Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1614924A (zh) * | 2004-11-26 | 2005-05-11 | 王小矿 | 基于智能卡和动态密码的身份认证*** |
CN102034307A (zh) * | 2010-12-31 | 2011-04-27 | 上海众人网络安全技术有限公司 | 一种基于电子钱包的动态密码认证***及方法 |
WO2016018255A1 (en) * | 2014-07-29 | 2016-02-04 | Hewlett-Packard Development Company, L.P. | Financial transaction medium |
Also Published As
Publication number | Publication date |
---|---|
WO2018024615A2 (en) | 2018-02-08 |
US11763292B2 (en) | 2023-09-19 |
WO2018024615A3 (en) | 2018-03-15 |
EP3279849B1 (en) | 2022-03-23 |
EP3279849A1 (en) | 2018-02-07 |
CN109690596A (zh) | 2019-04-26 |
DK3279849T3 (da) | 2022-04-11 |
ES2912594T3 (es) | 2022-05-26 |
US20210295308A1 (en) | 2021-09-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US10037516B2 (en) | Secure transactions using a point of sale device | |
US12028337B2 (en) | Techniques for token proximity transactions | |
CN113507377B (zh) | 用于使用基于交易特定信息的令牌和密码的交易处理的装置和方法 | |
US9262761B2 (en) | Time-varying security code for enabling authorizations and other uses of financial accounts | |
US9491626B2 (en) | Enhanced data interface for contactless communications | |
CN110169035B (zh) | 具有协议特性的绑定密码 | |
US20130226812A1 (en) | Cloud proxy secured mobile payments | |
CN117252593A (zh) | 交易授权 | |
JP7345509B2 (ja) | 安全な読み取り専用の認証のためのシステム及び方法 | |
US11936684B2 (en) | Systems and methods for protecting against relay attacks | |
US20150142669A1 (en) | Virtual payment chipcard service | |
US20150142667A1 (en) | Payment authorization system | |
US20220156722A1 (en) | Tokenizing a primary account number prior to transmission to a terminal | |
AU2023200221A1 (en) | Remote transaction system, method and point of sale terminal | |
US10504116B2 (en) | Verification for payment transactions | |
CN109690596B (zh) | 用于卡交易的动态安全码 | |
US11526880B2 (en) | Dynamic security code for a card transaction | |
EP4020360A1 (en) | Secure contactless credential exchange | |
CN117999553A (zh) | 多重交互处理 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |