CN109102293A - 支付控制方法及装置、电子设备、存储介质 - Google Patents
支付控制方法及装置、电子设备、存储介质 Download PDFInfo
- Publication number
- CN109102293A CN109102293A CN201810967478.XA CN201810967478A CN109102293A CN 109102293 A CN109102293 A CN 109102293A CN 201810967478 A CN201810967478 A CN 201810967478A CN 109102293 A CN109102293 A CN 109102293A
- Authority
- CN
- China
- Prior art keywords
- barcode scanning
- scanning equipment
- payment
- equipment
- information
- 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.)
- Pending
Links
- 238000000034 method Methods 0.000 title claims abstract description 47
- 238000004590 computer program Methods 0.000 claims description 4
- 238000012545 processing Methods 0.000 description 11
- 230000006870 function Effects 0.000 description 8
- 230000003993 interaction Effects 0.000 description 8
- 230000005540 biological transmission Effects 0.000 description 6
- 238000004891 communication Methods 0.000 description 4
- 238000010586 diagram Methods 0.000 description 4
- 238000005516 engineering process Methods 0.000 description 4
- 230000002452 interceptive effect Effects 0.000 description 4
- 238000012790 confirmation Methods 0.000 description 3
- 238000013478 data encryption standard Methods 0.000 description 3
- 238000011161 development Methods 0.000 description 3
- 230000003287 optical effect Effects 0.000 description 3
- 102000009030 Member 1 Subfamily D ATP Binding Cassette Transporter Human genes 0.000 description 2
- 108010049137 Member 1 Subfamily D ATP Binding Cassette Transporter Proteins 0.000 description 2
- 230000005291 magnetic effect Effects 0.000 description 2
- 230000008569 process Effects 0.000 description 2
- 230000007306 turnover Effects 0.000 description 2
- 230000001133 acceleration Effects 0.000 description 1
- 230000006978 adaptation Effects 0.000 description 1
- 230000003044 adaptive effect Effects 0.000 description 1
- 210000004027 cell Anatomy 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000000470 constituent Substances 0.000 description 1
- 238000007796 conventional method Methods 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 238000013461 design Methods 0.000 description 1
- 230000005611 electricity Effects 0.000 description 1
- 238000012423 maintenance Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 239000013307 optical fiber Substances 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000003014 reinforcing effect Effects 0.000 description 1
- 230000004044 response Effects 0.000 description 1
- 239000004065 semiconductor Substances 0.000 description 1
- 210000000352 storage cell Anatomy 0.000 description 1
- 238000010408 sweeping Methods 0.000 description 1
- 238000012546 transfer 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/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
- G06K—GRAPHICAL DATA READING; PRESENTATION OF DATA; RECORD CARRIERS; HANDLING RECORD CARRIERS
- G06K17/00—Methods or arrangements for effecting co-operative working between equipments covered by two or more of main groups G06K1/00 - G06K15/00, e.g. automatic card files incorporating conveying and reading operations
- G06K17/0022—Methods or arrangements for effecting co-operative working between equipments covered by two or more of main groups G06K1/00 - G06K15/00, e.g. automatic card files incorporating conveying and reading operations arrangements or provisious for transferring data to distant stations, e.g. from a sensing device
Landscapes
- Engineering & Computer Science (AREA)
- Business, Economics & Management (AREA)
- Physics & Mathematics (AREA)
- Accounting & Taxation (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Finance (AREA)
- Strategic Management (AREA)
- Computer Security & Cryptography (AREA)
- General Business, Economics & Management (AREA)
- General Engineering & Computer Science (AREA)
- Financial Or Insurance-Related Operations Such As Payment And Settlement (AREA)
- Storage Device Security (AREA)
- Cash Registers Or Receiving Machines (AREA)
Abstract
本公开是关于一种支付控制方法及装置、电子设备、存储介质,涉及互联网技术领域,该方法包括:获取扫码设备的信息;根据所述扫码设备的信息为所述扫码设备动态生成第一设备密钥;接收所述扫码设备根据所述第一设备密钥对扫描到的支付码进行加密得到的支付密文;基于所述支付密文进行支付。本公开可以提高支付安全性。
Description
技术领域
本公开涉及互联网技术领域,具体而言,涉及一种支付控制方法、支付控制装置、电子设备以及计算机可读存储介质。
背景技术
随着互联网技术的发展以及支付软件的广泛应用,支付方式也逐渐发展为通过智能手机等移动终端进行扫码支付。
为了支付操作的安全性,会对接收到的明文数据进行加密。相关技术中,支付插件和扫码设备可通过虚拟键盘模式进行交互,例如扫码设备接入到PC端后,将本身枚举成键盘模式,在扫描到支付码的明文数据后,以键盘模式将明文数据发送给操作系统,进而操作系统将键盘数据发送给注册有获取键盘信息的应用程序,以使所有应用程序都可以获取到该支付码。除此之外,也可使用SDK模式进行交互,具体由扫码设备厂商提供SDK动态库,支付插件调用SDK(Software Development Kit,软件开发工具包)接口来获取扫码设备获取的支付码等数据。
但是,在上述方式中,将扫码得到的支付码数据通过虚拟键盘方式发出时,任何软件都可以通过技术手段获取,而且交互都是通过明文数据进行交互,交互安全性较差;除此之外,扫码设备的第一设备密钥只可以通过设备厂商提供的SDK动态库获取,不同类型的扫码设备需要集成多个厂家的SDK,灵活性较差且开发维护成本较高。
需要说明的是,在上述背景技术部分公开的信息仅用于加强对本公开的背景的理解,因此可以包括不构成对本领域普通技术人员已知的现有技术的信息。
发明内容
本公开的目的在于提供一种支付控制方法及装置、电子设备、存储介质,进而至少在一定程度上克服由于相关技术的限制和缺陷而导致的不能安全进行扫码支付的问题。
本公开的其他特性和优点将通过下面的详细描述变得显然,或部分地通过本公开的实践而习得。
根据本公开的一个方面,提供一种支付控制方法,包括:获取扫码设备的信息;根据所述扫码设备的信息为所述扫码设备动态生成第一设备密钥;接收所述扫码设备根据所述第一设备密钥对扫描到的支付码进行加密得到的支付密文;基于所述支付密文进行支付。
在本公开的一种示例性实施例中,所述方法还包括:若启动支付插件,则重新获取所述扫码设备的信息;根据重新获取到的所述扫码设备的信息重新为所述扫码设备生成所述第一设备密钥。
在本公开的一种示例性实施例中,获取扫码设备的信息包括:发送信息获取指令并接收所述扫码设备响应所述信息获取指令返回的所述扫码设备的信息;或接收所述扫码设备自动发送的所述扫码设备的信息。
在本公开的一种示例性实施例中,根据所述扫码设备的信息为所述扫码设备动态生成所述第一设备密钥包括:根据所述扫码设备的信息生成一随机数,并将所述随机数作为所述扫码设备的所述第一设备密钥。
在本公开的一种示例性实施例中,所述方法还包括:根据所述扫码设备的信息以及加密算法计算所述扫码设备的第二设备密钥,并根据所述第二设备密钥对所述第一设备密钥进行加密,得到设备密文;将所述设备密文发送至所述扫码设备,以使所述扫码设备进行解密得到所述第一设备密钥。
在本公开的一种示例性实施例中,所述方法还包括:获取所述扫码设备的待更新固件,并将所述待更新固件发送至所述扫码设备。
在本公开的一种示例性实施例中,将所述待更新固件发送至所述扫码设备包括:采用通用协议向所述扫码设备发送所述待更新固件对应的多个数据包;其中,在向所述扫码设备发送一个数据包后,若接收到所述扫码设备返回的成功接收的应答码,则继续向所述扫码设备发送下一个数据包。
在本公开的一种示例性实施例中,所述方法还包括:向所述扫码设备发送固件更新指令,以使所述扫码设备根据所述固件更新指令将当前固件更新为所述待更新固件。
根据本公开的一个方面,提供一种支付控制装置,包括:信息获取模块,用于获取扫码设备的信息;设备密钥生成模块,用于根据所述扫码设备的信息为所述扫码设备动态生成第一设备密钥;密文接收模块,用于接收所述扫码设备根据所述第一设备密钥对扫描到的支付码进行加密得到的支付密文;密文支付模块,用于基于所述支付密文进行支付。
根据本公开的一个方面,提供一种电子设备,包括:处理器;以及存储器,用于存储所述处理器的可执行指令;其中,所述处理器配置为经由执行所述可执行指令来执行上述任意一项所述的支付控制方法。
根据本公开的一个方面,提供一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现上述任意一项所述的支付控制方法。
本公开示例性实施例中提供的一种支付控制方法、支付控制装置、电子设备以及计算机可读存储介质中,根据扫码设备的信息为所述扫码设备动态生成第一设备密钥,并根据接收到的支付密文进行支付。一方面,通过扫码设备的信息为扫码设备动态生成第一设备密钥,提高了第一设备密钥的安全性;并且通过生成的第一设备密钥对扫描到的支付码进行加密,提高了交互安全性;另一方面,根据扫码设备的信息为扫码设备动态生成第一设备密钥,不需要依赖于扫码设备的厂家,增加了生成第一设备密钥的灵活性,解决了采用固定密钥而导致安全性较低的问题,并且降低了成本。
应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,并不能限制本公开。
附图说明
此处的附图被并入说明书中并构成本说明书的一部分,示出了符合本公开的实施例,并与说明书一起用于解释本公开的原理。显而易见地,下面描述中的附图仅仅是本公开的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1示意性示出本公开示例性实施例中一种支付控制方法示意图;
图2示意性示出本公开示例性实施例中支付控制的具体流程图;
图3示意性示出本公开示例性实施例中一种支付控制装置的框图;
图4示意性示出本公开示例性实施例中一种电子设备的框图;
图5示意性示出本公开示例性实施例中一种程序产品。
具体实施方式
现在将参考附图更全面地描述示例实施方式。然而,示例实施方式能够以多种形式实施,且不应被理解为限于在此阐述的范例;相反,提供这些实施方式使得本公开将更加全面和完整,并将示例实施方式的构思全面地传达给本领域的技术人员。所描述的特征、结构或特性可以以任何合适的方式结合在一个或更多实施方式中。在下面的描述中,提供许多具体细节从而给出对本公开的实施方式的充分理解。然而,本领域技术人员将意识到,可以实践本公开的技术方案而省略所述特定细节中的一个或更多,或者可以采用其它的方法、组元、装置、步骤等。在其它情况下,不详细示出或描述公知技术方案以避免喧宾夺主而使得本公开的各方面变得模糊。
此外,附图仅为本公开的示意性图解,并非一定是按比例绘制。图中相同的附图标记表示相同或类似的部分,因而将省略对它们的重复描述。附图中所示的一些方框图是功能实体,不一定必须与物理或逻辑上独立的实体相对应。可以采用软件形式来实现这些功能实体,或在一个或多个硬件模块或集成电路中实现这些功能实体,或在不同网络和/或处理器装置和/或微控制器装置中实现这些功能实体。
本示例实施方式中首先提供了一种支付控制方法,可以应用于智能终端与扫码设备之间进行扫码支付操作的各个线下场景。参考图1所示,该支付控制方法可以包括以下步骤:
在步骤S110中,获取扫码设备的信息;
在步骤S120中,根据所述扫码设备的信息为所述扫码设备动态生成第一设备密钥;
在步骤S130中,接收所述扫码设备根据所述第一设备密钥对扫描到的支付码进行加密得到的支付密文;
在步骤S140中,基于所述支付密文进行支付。
在本示例性实施例中提供的支付控制方法中,一方面,通过扫码设备的信息为扫码设备动态生成第一设备密钥,提高了第一设备密钥的安全性;并且通过生成的第一设备密钥对扫描到的支付码进行加密,提高了交互安全性;另一方面,根据扫码设备的信息为扫码设备动态生成第一设备密钥,不需要依赖于扫码设备的厂家,增加了生成第一设备密钥的灵活性,解决了采用固定密钥而导致安全性较低的问题,并且降低了成本。
接下来,结合附图对本示例性实施例中的支付控制方法进行进一步解释说明。
在步骤S110中,获取扫码设备的信息。
本示例中,扫码设备例如可以为扫码枪、扫码盒子等硬件扫码设备。扫码设备中可包括用于控制支付操作的支付插件。扫码设备的信息例如可包括扫码设备的标识号,该标识号相当于扫码设备的设备ID,可用于唯一表示一个扫码设备,标识号例如可以为由字母和/或数字组成的字符串。其中,不同的扫码设备对应的标识号以及标识号的形式均可不同,例如扫码设备1对应的标识号为ABCD1,扫码设备2对应的标识号为BCDFR2。
扫码设备可通过数据线以及数据接口接入电脑等终端设备。具体可以在支付插件检测到扫码设备接入终端设备时,获取扫码设备的信息,也可以在其他合适的时间获取,本示例中以在扫码设备接入终端设备之后获取为例进行说明。获取扫码设备的信息具体可包括两种方式:支付插件发送信息获取指令,并接收扫码设备响应所述信息获取指令返回的所述扫码设备的标识号;或者是扫码设备接入时,自动向支付插件发送自身的标识号。获取的扫码设备的信息例如可以为标识号或者是其他唯一表示该扫码设备的信息,此处以标识号为例进行说明。
在步骤S120中,根据所述扫码设备的信息为所述扫码设备动态生成第一设备密钥。
本示例性实施例中,在检测到扫码设备接入时,可通过获取的扫码设备的信息例如标识号,为接入的扫码设备动态生成第一设备密钥。扫码设备每次接入时,支付插件生成的第一设备密钥均不相同。除此之外,在扫码设备接入后,如果需要启动扫码设备中的支付插件或者更新支付插件,则需要重新获取扫码设备的信息,并根据重新获取的扫码设备的信息为扫码设备重新生成第一设备密钥,以保证第一设备密钥的安全性和准确性。
生成第一设备密钥的操作具体由支付插件执行,举例而言,支付插件首先可向扫码设备发送标识号获取指令,扫码设备可响应接收到的标识号获取指令,将自身的标识号例如ABCD1发送至支付插件,以使支付插件接收。接下来,支付插件可通过获取的标识号为每一个对应的扫码设备动态生成第一设备密钥。具体可根据扫码设备的标识号生成一随机数,并将所述随机数作为扫码设备的第一设备密钥。其中,随机数例如可以为与标识号关联的随机数,且每次生成的随机数均不同。每次生成的随机数可与设置第一设备密钥的时间相关联,也可随机设置。例如第一次为扫码设备1生成第一设备密钥ABCD13579,第二次为扫码设备1生成第一设备密钥ABCD16890等等,通过将随机数作为扫码设备的第一设备密钥,则可实现为每一个扫码设备动态设置随机的第一设备密钥的功能,在一定程度上保证了扫码设备交互的安全性。为了进一步提高安全性,可对生成的随机数进行逻辑运算处理,并将逻辑运算后的结果作为扫码设备的第一设备密钥。
进一步地,在为扫码设备生成第一设备密钥之后,可根据扫码设备的标识号以及加密算法计算所述扫码设备的第二设备密钥,并根据所述第二设备密钥对所述第一设备密钥进行加密,得到设备密文;进而将所述设备密文发送至所述扫码设备,以使所述扫码设备对设备密文进行解密得到所述第一设备密钥。本示例性实施中,第二设备密钥可用于对生成的第一设备密钥进行加密,可以为对扫码设备的标识号进行加密得到的编码,也可直接为设备标识号。加密算法可以为任意合适的对称加密算法或非对称加密算法,例如DES(Data Encryption Standard,数据加密标准)、AES(Advanced Encryption Standard,高级加密标准)或RSA(Rivest Shamir Adlemen,因特网加密和认证体系)算法中的任意一种,此处以AES加密算法为例进行说明。在AES加密算法中,加密和解密使用的密钥是相同的,因此为了保证第一设备密钥的安全性,避免第一设备密钥被其他扫码设备识别,提高支付安全性,对扫码设备的第一设备密钥进行加密的第二设备密钥可以使用较长的密钥。
举例而言,支付插件在为扫码设备1生成第一设备密钥例如随机数A后,可使用由AES加密算法对由设备标识进行加密得到的第二设备密钥对随机数A进行加密,得到设备密文B;接下来,可通过网络传输将生成的设备密文B发送至扫码设备1,以使扫码设备1对接收到的设备密文B进行解密得到设备密文B中包含的随机数A。
在此基础上,如果扫码设备接收到支付插件发送的设备密文,则可以根据AES解密算法对得到的设备密文进行解密,获取支付插件为扫码设备动态生成的第一设备密钥,并基于该第一设备密钥进行后续支付操作。本示例性实施例中,通过在检测到扫码设备接入或者是支付插件开启时,为扫码设备动态生成随机的第一设备密钥,提高了扫码通道的安全性和第一设备密钥的安全性,进而能够实现安全交互。
在步骤S130中,接收所述扫码设备根据所述第一设备密钥对扫描到的支付码进行加密得到的支付密文。
本示例性实施例中,扫码设备可扫描用户通过智能终端上的支付应用展示的支付码,随后,在扫码设备接收到支付插件为自身生成的第一设备密钥时,可使用该第一设备密钥对扫描到的支付码进行加密,以生成支付密文。举例而言,扫码设备1可将生成的随机数A作为加密密钥,采用AES加密算法对支付码C进行加密,以得到支付密文D。接下来,扫码设备可通过无线或者是有线传输方式将生成的支付密文D发送至支付插件,以使支付插件得到支付密文D。接收到的支付密文会随着第一设备密钥的动态生成而实时更新,以保证包含的支付码的安全性。
在步骤S140中,基于所述支付密文进行支付。
本示例性实施例中,在支付插件接收到支付密文进行支付时,首先需要对支付密文进行解密得到支付密文中包含的支付码,以通过该支付码进行支付操作。对支付密文进行解密时,可将第一设备密钥作为解密密钥,采用AES解密算法对支付密文进行解密,得到支付码。举例而言,支付码为扫码设备1生成随机数A,扫码设备1可将生成的随机数A作为加密密钥,采用AES加密算法对支付码C进行加密,以得到支付密文D。如果支付插件接收到支付密文D,可将随机数A作为解密密钥,采用AES解密算法对支付密文D进行解密,得到与支付密文D对应的支付码C,以通过支付码C进行支付操作。如果采用其它解密秘钥例如随机数E则无法对支付密文D进行解密,从而保证了支付交互的安全性。
需要说明的是,支付插件与扫码设备之间的所有交互操作均可基于通用协议进行,通用协议由开发人员通过编写程序生成,可用于不同扫码设备与支付插件的交互。在通过通用协议控制支付插件与扫码设备之间进行交互时,避免了必须通过扫码设备厂商提供的SDK获取扫码数据等操作限制,提高了灵活性和便捷性。除此之外,避免了由于不同扫码设备厂商提供的交互方案各不相同,而需要适配各个厂商的设备的问题,降低了开发成本。
通用协议例如可以为Hid-pos协议,该通用协议的协议格式如表1所示,其中包括报文ID字段、数据长度字段、Datablock字段、保留Datablock字段以及结束标记字段,其中,可在Datablock字段中定义自己的私有协议即定义协议类型,例如置指令集、数据交互指令集,以使支付插件和扫码设备根据定义的私有指令执行对应的功能。接收数据协议的具体格式如表2所示,每个数据块的最大字节为56字节。
表1
Bit | |
Byte | 7 6 5 4 3 2 1 0 |
0 | 报文ID=0x02 |
1 | 数据块长度 |
2-57 | 数据块(1-56) |
58-62 | 保留数据块 |
63 | 结束标记 |
表2
在执行指令时,支付插件发送的数据格式可如表3所示,扫码设备返回的数据格式如表4所示。需要说明的是,相对于表3而言,表4中增加了指令执行结果项。通过特定字段0x06表示设置操作成功、通过0x15表示数据值是否不合法以及通过0x05表示指令集是否错误或不存在三种状态。除此之外,指令前缀也发生了变化,发送数据时,指令前缀为“0x7E、0x01”;接收到数据时,指令前缀为“0x02、0x01”。
表3
表4
本示例性实施例中,为了提升操作流畅度,如果扫码设备中的软件更新,则需要对扫码设备的固件进行更新,例如增加新功能或者清除已知的漏洞。具体可包括:获取所述扫码设备的待更新固件,并将所述待更新固件发送至所述扫码设备。待更新固件指的是与当前固件版本不同的任意版本固件,例如最新固件等等。首先支付插件可获取针对扫码设备的待更新固件,进而将该待更新固件发送至扫码设备,以使扫码设备进行更新。具体地,可将扫码设备的待更新固件放置在后台系统上,支付插件将待更新固件下载到本地,然后再通过包含通用协议的通道将待更新固件发送到扫码设备,其中通用协议可为Hid-pos协议。参考表1中所示的Hid-pos协议的格式,如果Hid-pos协议中Datablock字段表示的是固件更新指令,则扫码设备可根据Datablock字段进行固件版本的更新,以将扫码设备的当前固件更新为待更新固件,例如将扫码设备的当前固件更新为最新固件。
更具体地,参考表1中所示的Hid-pos协议的格式可知,每个数据包最大为56字节,因此在向扫码设备发送待更新固件时,可采用通用协议向扫码设备发送待更新固件对应的多个数据包。在传输过程中,接收端收到一个数据段后,会用ACK(ACKnowledgment)应答码向发送端回复一个IP包进行应答,应答码ACK用来告诉发送端哪些数据包已经成功接收。需要说明的是,为了保证数据包的可靠传输,在支付插件向扫码设备发送一个数据包后,如果支付插件接收到由扫码设备返回的该数据包被成功接收的应答码,则继续向扫码设备发送下一个数据包。如果没有接收到返回的针对某一数据包成功接收的应答码,则支付插件停止发送下一个数据包。在将待更新固件对应的多个数据包发送完毕后,支付插件可向扫码设备发送固件更新指令,扫码设备根据接收到的固件更新指令进行固件更新,并在更新完毕后向支付插件发送更新完成确认信息。本示例性实施例中,采用通用协议可以对扫码设备的固件进行热更新,无需人工干预,节省人工成本,提高了固件更新效率。
对于扫码设备而言,在检测到支付插件开启或者检测到扫码设备接入时,可响应支付插件通过Hid-pos协议发送的标识号获取指令,将扫码设备的标识号返回支付插件,以使支付插件根据标识号以及AES加密算法生成第一设备密钥,第一设备密钥例如可为随机数。接下来,扫码设备可接收由支付插件发送的对第一设备密钥进行加密得到的设备密文,并根据扫码设备的标识号以及AES解密算法对设备密文进行解密,得到第一设备密钥。进一步地,扫码设备可对用户通过智能终端上支付应用展示的支付码进行扫描,并通过支付插件为扫码设备生成的设备密文对扫描的支付码进行加密,得到支付密文,并采用Hid-pos协议将支付密文发送至支付插件,以使支付插件进行支付操作。
图2示出了本公开示例性实施例中支付控制的具体流程图,其中包括:后台服务、支付插件以及扫码设备三个组成部分。具体包括以下步骤:
在步骤S21中,支付插件为扫码设备动态配置第一设备密钥,第一设备密钥可用于对支付码进行加密,具体包括:
S211,支付插件向扫码设备发送标识号获取指令。
S212,接收由扫码设备返回的标识号。
S213,根据标识号以及AES加密算法计算出第一设备密钥,例如随机数,并通过第二设备密钥对第一设备密钥进行加密,得到设备密文;第二设备密钥例如为根密钥。
S214,向扫码设备发送设备密文。
S215,接收扫码设备返回的确认信息。
S216,根据标识号以及AES解密算法对设备密文进行解密,得到第一设备密钥。
在步骤S22中,支付插件与扫码设备进行扫码交互;具体包括:
S221,扫码设备扫描得到支付码,通过第一设备密钥以及AES加密算法对支付码进行加密,得到支付密文。
S222,扫码设备将支付密文发送至支付插件。
S223,支付插件通过第一设备密钥以及AES解密算法对支付密文进行解密,得到支付码。
在步骤S23中,对扫码设备的固件进行更新;具体包括:
S231,后台服务通过超文本传输协议http下载扫码设备的待更新固件对应的文件或者数据包。
S232,支付插件通过Hid-pos协议将下载的扫码设备的待更新固件对应的数据包推送至扫码设备。
S233,扫码设备将当前固件更新为待更新固件后,向支付插件发送更新成功确认信息。
通过图2中所示的流程,可在扫码设备接入后,或者扫码设备接入后重新开启支付插件时,为扫码设备动态生成随机的第一设备密钥,提高了安全性;采用Hid-pos协议进行支付插件与扫码设备之间的支付交互,避免了由于不同扫码设备厂商提供的交互方案各不相同,而需要适配各个厂商的设备的问题,降低了开发成本;采用通用协议对扫码设备的固件进行热更新,无需人工干预,节省人工成本,提高固件更新效率。
本公开还提供了一种支付控制装置。参考图3所示,该支付控制装置300可以包括:
信息获取模块301,可以用于获取扫码设备的信息;
设备密钥生成模块302,可以用于根据所述扫码设备的信息为所述扫码设备动态生成第一设备密钥;
密文接收模块303,可以用于接收所述扫码设备根据所述第一设备密钥对扫描到的支付码进行加密得到的支付密文;
密文支付模块304,可以用于基于所述支付密文进行支付。
需要说明的是,上述支付控制装置中各模块的具体细节已经在对应的支付控制方法中进行了详细描述,因此此处不再赘述。
应当注意,尽管在上文详细描述中提及了用于动作执行的设备的若干模块或者单元,但是这种划分并非强制性的。实际上,根据本公开的实施方式,上文描述的两个或更多模块或者单元的特征和功能可以在一个模块或者单元中具体化。反之,上文描述的一个模块或者单元的特征和功能可以进一步划分为由多个模块或者单元来具体化。
此外,尽管在附图中以特定顺序描述了本公开中方法的各个步骤,但是,这并非要求或者暗示必须按照该特定顺序来执行这些步骤,或是必须执行全部所示的步骤才能实现期望的结果。附加的或备选的,可以省略某些步骤,将多个步骤合并为一个步骤执行,以及/或者将一个步骤分解为多个步骤执行等。
在本公开的示例性实施例中,还提供了一种能够实现上述方法的电子设备。
所属技术领域的技术人员能够理解,本发明的各个方面可以实现为系统、方法或程序产品。因此,本发明的各个方面可以具体实现为以下形式,即:完全的硬件实施方式、完全的软件实施方式(包括固件、微代码等),或硬件和软件方面结合的实施方式,这里可以统称为“电路”、“模块”或“系统”。
下面参照图4来描述根据本发明的这种实施方式的电子设备400。图4显示的电子设备400仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图4所示,电子设备400以通用计算设备的形式表现。电子设备400的组件可以包括但不限于:上述至少一个处理单元410、上述至少一个存储单元420、连接不同系统组件(包括存储单元420和处理单元410)的总线430。
其中,所述存储单元存储有程序代码,所述程序代码可以被所述处理单元410执行,使得所述处理单元410执行本说明书上述“示例性方法”部分中描述的根据本发明各种示例性实施方式的步骤。例如,所述处理单元410可以执行如图1中所示的步骤:在步骤S110中,获取扫码设备的信息;在步骤S120中,根据所述扫码设备的信息为所述扫码设备动态生成第一设备密钥;在步骤S130中,接收所述扫码设备根据所述第一设备密钥对扫描到的支付码进行加密得到的支付密文;在步骤S140中,基于所述支付密文进行支付。
存储单元420可以包括易失性存储单元形式的可读介质,例如随机存取存储单元(RAM)4201和/或高速缓存存储单元4202,还可以进一步包括只读存储单元(ROM)4203。
存储单元420还可以包括具有一组(至少一个)程序模块4205的程序/实用工具4204,这样的程序模块4205包括但不限于:操作系统、一个或者多个应用程序、其它程序模块以及程序数据,这些示例中的每一个或某种组合中可能包括网络环境的实现。
总线430可以为表示几类总线结构中的一种或多种,包括存储单元总线或者存储单元控制器、外围总线、图形加速端口、处理单元或者使用多种总线结构中的任意总线结构的局域总线。
电子设备400也可以与一个或多个外部设备600(例如键盘、指向设备、蓝牙设备等)通信,还可与一个或者多个使得用户能与该电子设备400交互的设备通信,和/或与使得该电子设备400能与一个或多个其它计算设备进行通信的任何设备(例如路由器、调制解调器等等)通信。这种通信可以通过输入/输出(I/O)接口450进行。并且,电子设备400还可以通过网络适配器460与一个或者多个网络(例如局域网(LAN),广域网(WAN)和/或公共网络,例如因特网)通信。如图所示,网络适配器460通过总线430与电子设备400的其它模块通信。应当明白,尽管图中未示出,可以结合电子设备400使用其它硬件和/或软件模块,包括但不限于:微代码、设备驱动器、冗余处理单元、外部磁盘驱动阵列、RAID系统、磁带驱动器以及数据备份存储系统等。
在本公开的示例性实施例中,还提供了一种计算机可读存储介质,其上存储有能够实现本说明书上述方法的程序产品。在一些可能的实施方式中,本发明的各个方面还可以实现为一种程序产品的形式,其包括程序代码,当所述程序产品在终端设备上运行时,所述程序代码用于使所述终端设备执行本说明书上述“示例性方法”部分中描述的根据本发明各种示例性实施方式的步骤。
参考图5所示,描述了根据本发明的实施方式的用于实现上述方法的程序产品500,其可以采用便携式紧凑盘只读存储器(CD-ROM)并包括程序代码,并可以在终端设备,例如个人电脑上运行。然而,本发明的程序产品不限于此,在本文件中,可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。
所述程序产品可以采用一个或多个可读介质的任意组合。可读介质可以是可读信号介质或者可读存储介质。可读存储介质例如可以为但不限于电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。可读存储介质的更具体的例子(非穷举的列表)包括:具有一个或多个导线的电连接、便携式盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。
计算机可读信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了可读程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。可读信号介质还可以是可读存储介质以外的任何可读介质,该可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。
可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于无线、有线、光缆、RF等等,或者上述的任意合适的组合。
可以以一种或多种程序设计语言的任意组合来编写用于执行本发明操作的程序代码,所述程序设计语言包括面向对象的程序设计语言—诸如Java、C++等,还包括常规的过程式程序设计语言—诸如“C”语言或类似的程序设计语言。程序代码可以完全地在用户计算设备上执行、部分地在用户设备上执行、作为一个独立的软件包执行、部分在用户计算设备上部分在远程计算设备上执行、或者完全在远程计算设备或服务器上执行。在涉及远程计算设备的情形中,远程计算设备可以通过任意种类的网络,包括局域网(LAN)或广域网(WAN),连接到用户计算设备,或者,可以连接到外部计算设备(例如利用因特网服务提供商来通过因特网连接)。
此外,上述附图仅是根据本发明示例性实施例的方法所包括的处理的示意性说明,而不是限制目的。易于理解,上述附图所示的处理并不表明或限制这些处理的时间顺序。另外,也易于理解,这些处理可以是例如在多个模块中同步或异步执行的。
本领域技术人员在考虑说明书及实践这里公开的发明后,将容易想到本公开的其他实施例。本申请旨在涵盖本公开的任何变型、用途或者适应性变化,这些变型、用途或者适应性变化遵循本公开的一般性原理并包括本公开未公开的本技术领域中的公知常识或惯用技术手段。说明书和实施例仅被视为示例性的,本公开的真正范围和精神由权利要求指出。
Claims (11)
1.一种支付控制方法,其特征在于,包括:
获取扫码设备的信息;
根据所述扫码设备的信息为所述扫码设备动态生成第一设备密钥;
接收所述扫码设备根据所述第一设备密钥对扫描到的支付码进行加密得到的支付密文;
基于所述支付密文进行支付。
2.根据权利要求1所述的支付控制方法,其特征在于,所述方法还包括:
若启动支付插件,则重新获取所述扫码设备的信息;
根据重新获取到的所述扫码设备的信息重新为所述扫码设备生成所述第一设备密钥。
3.根据权利要求1或2所述的支付控制方法,其特征在于,获取扫码设备的信息包括:
发送信息获取指令并接收所述扫码设备响应所述信息获取指令返回的所述扫码设备的信息;或
接收所述扫码设备自动发送的所述扫码设备的信息。
4.根据权利要求1所述的支付控制方法,其特征在于,根据所述扫码设备的信息为所述扫码设备动态生成所述第一设备密钥包括:
根据所述扫码设备的信息生成一随机数,并将所述随机数作为所述扫码设备的所述第一设备密钥。
5.根据权利要求1所述的支付控制方法,其特征在于,所述方法还包括:
根据所述扫码设备的信息以及加密算法计算所述扫码设备的第二设备密钥,并根据所述第二设备密钥对所述第一设备密钥进行加密,得到设备密文;
将所述设备密文发送至所述扫码设备,以使所述扫码设备进行解密得到所述第一设备密钥。
6.根据权利要求1所述的支付控制方法,其特征在于,所述方法还包括:
获取所述扫码设备的待更新固件,并将所述待更新固件发送至所述扫码设备。
7.根据权利要求6所述的支付控制方法,其特征在于,将所述待更新固件发送至所述扫码设备包括:
采用通用协议向所述扫码设备发送所述待更新固件对应的多个数据包;
其中,在向所述扫码设备发送一个数据包后,若接收到所述扫码设备返回的成功接收的应答码,则继续向所述扫码设备发送下一个数据包。
8.根据权利要求6所述的支付控制方法,其特征在于,所述方法还包括:
向所述扫码设备发送固件更新指令,以使所述扫码设备根据所述固件更新指令将当前固件更新为所述待更新固件。
9.一种支付控制装置,其特征在于,包括:
信息获取模块,用于获取扫码设备的信息;
设备密钥生成模块,用于根据所述扫码设备的信息为所述扫码设备动态生成第一设备密钥;
密文接收模块,用于接收所述扫码设备根据所述第一设备密钥对扫描到的支付码进行加密得到的支付密文;
密文支付模块,用于基于所述支付密文进行支付。
10.一种电子设备,其特征在于,包括:
处理器;以及
存储器,用于存储所述处理器的可执行指令;
其中,所述处理器配置为经由执行所述可执行指令来执行权利要求1-8任意一项所述的支付控制方法。
11.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现权利要求1-8任意一项所述的支付控制方法。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810967478.XA CN109102293A (zh) | 2018-08-23 | 2018-08-23 | 支付控制方法及装置、电子设备、存储介质 |
CA3228194A CA3228194A1 (en) | 2018-08-23 | 2019-08-23 | Payment control method and device, electronic device, and storage medium |
CA3052849A CA3052849C (en) | 2018-08-23 | 2019-08-23 | Payment control method and device, electronic device, and storage medium |
CA3228191A CA3228191A1 (en) | 2018-08-23 | 2019-08-23 | Payment control method and device, electronic device, and storage medium |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810967478.XA CN109102293A (zh) | 2018-08-23 | 2018-08-23 | 支付控制方法及装置、电子设备、存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN109102293A true CN109102293A (zh) | 2018-12-28 |
Family
ID=64851061
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810967478.XA Pending CN109102293A (zh) | 2018-08-23 | 2018-08-23 | 支付控制方法及装置、电子设备、存储介质 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN109102293A (zh) |
CA (3) | CA3052849C (zh) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111968360A (zh) * | 2020-08-27 | 2020-11-20 | 高斯贝尔数码科技股份有限公司 | 一种电子产品遥控功能定制方法及系统 |
CN113204772A (zh) * | 2021-04-26 | 2021-08-03 | 五八有限公司 | 数据处理方法、装置、系统、终端、服务器和存储介质 |
-
2018
- 2018-08-23 CN CN201810967478.XA patent/CN109102293A/zh active Pending
-
2019
- 2019-08-23 CA CA3052849A patent/CA3052849C/en active Active
- 2019-08-23 CA CA3228191A patent/CA3228191A1/en active Pending
- 2019-08-23 CA CA3228194A patent/CA3228194A1/en active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111968360A (zh) * | 2020-08-27 | 2020-11-20 | 高斯贝尔数码科技股份有限公司 | 一种电子产品遥控功能定制方法及系统 |
CN111968360B (zh) * | 2020-08-27 | 2021-05-28 | 高斯贝尔数码科技股份有限公司 | 一种电子产品遥控功能定制方法及系统 |
CN113204772A (zh) * | 2021-04-26 | 2021-08-03 | 五八有限公司 | 数据处理方法、装置、系统、终端、服务器和存储介质 |
Also Published As
Publication number | Publication date |
---|---|
CA3052849C (en) | 2024-03-19 |
CA3052849A1 (en) | 2020-02-23 |
CA3228194A1 (en) | 2020-02-23 |
CA3228191A1 (en) | 2020-02-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN202738112U (zh) | 附件、控制器以及在其间建立无线通信链路的系统 | |
US10818291B2 (en) | Method and apparatus for interacting information | |
CN103825871B (zh) | 一种鉴权系统及其发射终端、接收终端和权限认证方法 | |
US9235701B2 (en) | Light-operated electronic equipment and mobile electronic device for controlling electronic equipment with light | |
WO2015070799A1 (zh) | 指令信息的发送和接收方法及其装置 | |
CN107341387A (zh) | 用于安全增强的电子图章系统及其控制方法 | |
US20140001253A1 (en) | Method and apparatus of processing symbology interactions between mobile stations and a control system | |
CN103793815A (zh) | 适用于银行卡和行业卡的移动智能终端收单系统及方法 | |
CN106375167A (zh) | 一种基于nfc的智能家居的配网设备及配网方法 | |
US8032753B2 (en) | Server and system for transmitting certificate stored in fixed terminal to mobile terminal and method using the same | |
CN102387482A (zh) | 手机服务信息获取方法、系统及手机 | |
CN109102293A (zh) | 支付控制方法及装置、电子设备、存储介质 | |
CN103839160A (zh) | 一种网络交易数字签名方法和装置 | |
WO2023029386A1 (zh) | 通信方法及装置、电子设备、存储介质和计算机程序 | |
CN108632020A (zh) | 数据发送方法、接收方法及装置 | |
CN109951294A (zh) | 电子标签系统中的信息更新管理方法及相关设备 | |
CN109460646A (zh) | 用户身份识别方法、装置、系统、电子设备及可读介质 | |
KR100971443B1 (ko) | 이동 통신 단말기를 이용한 인식 시스템 및 방법 | |
WO2019153975A1 (zh) | 基于近场通信的资源转移 | |
EP3410332A1 (en) | A system and method for transferring data to an authentication device | |
CN107172718B (zh) | 一种信息处理方法及电子设备 | |
KR101853970B1 (ko) | 인증번호 중계 방법 | |
CN108601064A (zh) | 一种提供及获取无线接入点相关信息的方法 | |
KR20090038078A (ko) | 개인용 컴퓨터 네트워크 시스템 및 개인용 컴퓨터 네트워크시스템의 관리 방법 | |
KR102403759B1 (ko) | 환자 인증 및 카드 정보를 이용한 전자 결제 시스템, 그 방법 및 컴퓨터 프로그램이 기록된 비휘발성 기록매체 |
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 |