CN110322237A - 一种生成交易码的方法、装置及存储介质 - Google Patents
一种生成交易码的方法、装置及存储介质 Download PDFInfo
- Publication number
- CN110322237A CN110322237A CN201910431890.4A CN201910431890A CN110322237A CN 110322237 A CN110322237 A CN 110322237A CN 201910431890 A CN201910431890 A CN 201910431890A CN 110322237 A CN110322237 A CN 110322237A
- Authority
- CN
- China
- Prior art keywords
- predetermined sequence
- transaction
- sequence
- random
- code
- 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
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/327—Short range or proximity payments by means of M-devices
- G06Q20/3276—Short range or proximity payments by means of M-devices using a pictured code, e.g. barcode or QR-code, being read by the M-device
-
- 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
Landscapes
- Business, Economics & Management (AREA)
- Engineering & Computer Science (AREA)
- Accounting & Taxation (AREA)
- Strategic Management (AREA)
- Physics & Mathematics (AREA)
- General Business, Economics & Management (AREA)
- General Physics & Mathematics (AREA)
- Theoretical Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Security & Cryptography (AREA)
- Finance (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本申请涉及交易验证领域,提供一种生成交易码的方法、装置及存储介质,方法包括:接收终端设备发送的支付请求;对终端设备的身份验证通过后,生成预设序列,预设序列的长度固定或可动态调整,预设序列的长度根据业务需求或商户终端所在的区域不同对应设置;将预设序列添加至交易码串,得到交易码;向终端设备发送交易码;预设序列满足以下特性之一:预设序列的增长速度反映一段时长内银联交易的发展状态,增长速度跟随整点时刻统计的交易总量递增而递增,增长速度为因变量,整点时刻统计的交易总量为自变量;预设序列在不同交易周期内不重现;或者,预设序列在同一个交易周期内不重现。采用本方案,能够提高交易码的随机性抗破解性、模仿或篡改。
Description
技术领域
本申请涉及交易验证领域,尤其涉及一种生成交易码的方法、装置及存储介质。
背景技术
目前的银联交易中,一般是消费者通过手机上的应用(application,APP)向消费管理中心发送支付请求,支付管理将支付卡信息并向支付管理中心发送支付请求,支付管理中心接收到支付请求后对消费者进行身份验证,通过验证后,生成对应的二维码到APP,APP显示收到的二维码供商户终端的所有者进行扫描,然后将扫描得到的二维码传送到支付***进行支付授权。
由于目前线上支付的银联交易的并发数量庞大,要求更低的银联交易耗时,由于目前在定域范围内二维码时采用时序随机取值的方式生成,因此,在更低耗时的前提下,这种方式生成的二维码在微秒级别时间内的相似度越来越高,容易导致码值相似,容易被模仿或串改,导致线上支付的安全性不高。
发明内容
本申请提供了一种生成交易码的方法、装置及存储介质,能够解决现有技术中支付的安全性不高的问题。
第一方面,本申请提供一种生成交易码的方法,所述方法包括:
接收终端设备发送的支付请求;
对所述终端设备的身份验证通过后,生成预设序列,其中,所述预设序列的长度固定或可动态调整,所述预设序列的长度根据业务需求或商户终端所在的区域不同对应设置;
将所述预设序列添加至交易码串,得到交易码;
向所述终端设备发送所述交易码;
其中,所述预设序列至少满足以下特性之一:
所述预设序列的增长速度反映一段时长内银联交易的发展状态,所述增长速度跟随整点时刻统计的交易总量递增而递增,增长速度为因变量,整点时刻统计的交易总量为自变量;
或者,所述预设序列在不同交易周期内不重现;
或者,所述预设序列在同一个交易周期内不重现。
一种可能的设计中,所述生成预设序列至少包括以下实现方式之一:
为第一地区的商户终端设置第一长度的预设序列,为第二地区的商户终端设置第二长度的预设序列,第一长度和第二长度不相等;
或者,根据商户装置所在的地区的区号设置与区号位数匹配的预设序列;
或者,以自然规律变化生成所述预设序列,所述自然规律至少包括指数增长、线性增长、多项式增长或非线性增长中的一项;所述预设序列的长度采用公式S=FUN(S1)得到;
或者,将所述预设序列的一个字段作为随机位置,当需要生成交易码时,重新计算所述随机位置的变化数值,所述预设序列中的其他位置固定不变,所述预设序列包括固定字段和动态字段,动态字段为随机位置,根据公式C=RANDOM()计算所述随机位置的变化数值。
一种可能的设计中,所述方法还包括:
当业务需求变更时,将计算所述随机位置的变化数值的公式从C=RANDOM()切换到以下公式之一,以更改与所述业务需求匹配的预设序列的生成规则:
C=S[RANDOM()%STRLEN(S)]
C=FUN(S1[RANDOM()%STRLEN(S1)],S2[RANDOM()%STRLEN(S2)],…)。
一种可能的设计中,所述将所述预设序列添加至交易码串,包括:
重复取序列随机位置的值添加到所述预设序列中的随机位置,直到所述预设序列的所有位置的值添加完毕;
其中,所述重复选取是指一次交易的二维码生成,每重复选取一次,则将预设序列中的一个随机位置的字符***到所述交易码串中的随机位置,直至所述交易码串的随机位置被填满。
一种可能的设计中,所述重复取序列随机位置的值添加到所述预设序列中的随机位置,直到所述预设序列的所有位置的值添加完毕,包括:
每次从所述预设序列的随机位置中选取一位随机数或者随机符号;
将本次选取的选取随机数或者随机符号添加到所述交易码串,直到所述预设序列中所有随机位置的随机数或随机符号全部添加到所述交易码串中。
一种可能的设计中,所述重复取序列随机位置的值添加到所述预设序列中的随机位置,直到所述预设序列的所有位置的值添加完毕,包括:
按照顺序,将待加入所述交易码串的所述预设序列拆解为多个随机的单个字符;
将拆解得到的各单个字符随机***到初始交易码串中,得到所述交易串码。
一种可能的设计中,所述方法还包括:
构建至少一个第一容器和至少一个第二容器;
在所述第一容器内创建生成所述预设序列的实例,在所述第二容器内创建生成所述交易码的实例,以隔离所述预设序列的生成环境与所述交易码的生成环境。
第二方面,本申请提供一种用于生成交易码的装置,具有实现对应于上述第一方面提供的生成交易码的方法的功能。所述功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。硬件或软件包括一个或多个与上述功能相对应的模块,所述模块可以是软件和/或硬件。
一种可能的设计中,所述装置包括:
收发模块,用于接收终端设备发送的支付请求;
处理模块,用于对所述终端设备的身份验证通过后,生成预设序列,将所述预设序列添加至交易码串,得到交易码;通过所述收发模块向所述终端设备发送所述交易码;
其中,所述预设序列的长度固定或可动态调整,所述预设序列的长度根据业务需求或商户终端所在的区域不同对应设置;
所述预设序列至少满足以下特性之一:
所述预设序列的增长速度反映一段时长内银联交易的发展状态,所述增长速度跟随整点时刻统计的交易总量递增而递增,增长速度为因变量,整点时刻统计的交易总量为自变量;
或者,所述预设序列在不同交易周期内不重现;
或者,所述预设序列在同一个交易周期内不重现。
一种可能的设计中,所述处理模块至少执行以下操作之一生成预设序列:
为第一地区的商户终端设置第一长度的预设序列,为第二地区的商户终端设置第二长度的预设序列,第一长度和第二长度不相等;
或者,根据商户装置所在的地区的区号设置与区号位数匹配的预设序列;
或者,以自然规律变化生成所述预设序列,所述自然规律至少包括指数增长、线性增长、多项式增长或非线性增长中的一项;所述预设序列的长度采用公式S=FUN(S1)得到;
或者,将所述预设序列的一个字段作为随机位置,当需要生成交易码时,重新计算所述随机位置的变化数值,所述预设序列中的其他位置固定不变,所述预设序列包括固定字段和动态字段,动态字段为随机位置,根据公式C=RANDOM()计算所述随机位置的变化数值。
一种可能的设计中,所述处理模块还用于:
当业务需求变更时,将计算所述随机位置的变化数值的公式从C=RANDOM()切换到以下公式之一,以更改与所述业务需求匹配的预设序列的生成规则:
C=S[RANDOM()%STRLEN(S)]
C=FUN(S1[RANDOM()%STRLEN(S1)],S2[RANDOM()%STRLEN(S2)],…)。
一种可能的设计中,所述处理模块具体用于:
重复取序列随机位置的值添加到所述预设序列中的随机位置,直到所述预设序列的所有位置的值添加完毕;
其中,所述重复选取是指一次交易的二维码生成,每重复选取一次,则将预设序列中的一个随机位置的字符***到所述交易码串中的随机位置,直至所述交易码串的随机位置被填满。
一种可能的设计中,所述处理模块具体用于:
每次从所述预设序列的随机位置中选取一位随机数或者随机符号;
将本次选取的选取随机数或者随机符号添加到所述交易码串,直到所述预设序列中所有随机位置的随机数或随机符号全部添加到所述交易码串中。
一种可能的设计中,所述处理模块具体用于:
按照顺序,将待加入所述交易码串的所述预设序列拆解为多个随机的单个字符;
将拆解得到的各单个字符随机***到初始交易码串中,得到所述交易串码。
一种可能的设计中,所述处理模块还用于:
构建至少一个第一容器和至少一个第二容器;
在所述第一容器内创建生成所述预设序列的实例,在所述第二容器内创建生成所述交易码的实例,以隔离所述预设序列的生成环境与所述交易码的生成环境。
本申请又一方面提供了一种计算机装置,其包括至少一个连接的处理器、存储器和收发器,其中,所述存储器用于存储程序代码,所述处理器用于调用所述存储器中的程序代码来执行上述第一方面所述的方法。
本申请又一方面提供了一种计算机存储介质,其包括指令,当其在计算机上运行时,使得计算机执行上述第一方面所述的方法。
相较于现有技术,本申请提供的方案中,通过把所述预设序列加入到码值中,重复取序列随机位置的值添加到码值随机位置,直到序列所有值添加完毕,最终得到交易码。由于该序列由交易***内所有交易共享,其自增速度不固定,取决于时点交易量,且周期内不重复,所以,本申请生成的交易码的随机性很高、不易被破解、模仿或篡改,从而提高整个支付的安全性。
附图说明
图1为本申请实施例中生成交易码的方法的一种流程示意图;
图2为本申请实施例中随机序列的一种示意图;
图3为本申请实施例中随机序列的一种示意图;
图4为本申请实施例中随机序列的一种示意图;
图5为本申请实施例中随机序列的一种示意图;
图6为本申请实施例中用于生成交易码的装置的一种结构示意图;
图7为本申请实施例中计算机装置的一种结构示意图。
本申请目的的实现、功能特点及优点将结合实施例,参照附图做进一步说明。
具体实施方式
应当理解,此处所描述的具体实施例仅用以解释本申请,并不用于限定本申请。本申请的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的实施例能够以除了在这里图示或描述的内容以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或模块的过程、方法、***、产品或设备不必限于清楚地列出的那些步骤或模块,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或模块,本申请中所出现的模块的划分,仅仅是一种逻辑上的划分,实际应用中实现时可以有另外的划分方式,例如多个模块可以结合成或集成在另一个***中,或一些特征可以忽略,或不执行。
本申请提供一种生成交易码的方法、装置及存储介质,可用于银联交易。
为解决上述技术问题,本申请主要提供以下技术方案:
通过把一种定长序列加入到码值中,重复取序列随机位置的值添加到码值随机位置,直到序列所有值添加完毕。由于该序列由交易***内所有交易共享,其自增速度不固定,取决于时点交易量,且周期内不重复。所以,本申请生成的二维码的随机性很高、不易被破解、模仿或篡改,从而提高整个支付的安全性。
请参照图1,以下对本申请提供一种生成交易码的方法进行举例说明,所述方法包括:
101、接收终端设备发送的支付请求。
其中,所述支付请求包括交易号、交易账户、交易商品名称和交易金额。例如,用户在饮品店内买一杯20元的果汁,用户用手机扫描商家的付款码后,选择第三方支付平台,手机向第三方支付平台发送支付请求,以向饮品店支付20元。
102、对所述终端设备的身份验证通过后,生成预设序列。
其中,所述预设序列的长度固定或可动态调整,所述预设序列的长度根据业务需求或商户终端所在的区域不同对应设置。
一些实施方式中,本申请中的预设序列至少满足以下特性之一:
(1)所述预设序列的增长速度反映一段时长内银联交易的发展状态,所述增长速度跟随整点时刻统计的交易总量递增而递增,增长速度为因变量,整点时刻统计的交易总量为自变量。例如,所述预设序列的长度为9位。在早上10点整的交易总量为100万,增长速度为27笔每秒;在中午12点整的交易总量为400万,增长速度为416笔每秒;在下午15点整的交易总量为3200万,增长速度为2592笔每秒。
(2)所述预设序列在不同交易周期内不重现。例如,在第一天的12整点,所述预设序列为10001011,在第二天的12整点或者其他交易时刻点,所述预设序列都不会为10001011,可能为10001011或10101011。
(3)所述预设序列在同一个交易周期内不重现。例如,在第一天的9整点,所述预设序列为10001011,在第一天的13整点或者其他交易时刻点,所述预设序列都不会为10001011,可能为10001011或10101011。
可见,通过将预设序列设置为不可再现性,能够有效提高交易码的抗破解性,不易被破解变化规律,安全性较高。
一些实施方式中,所述预设序列的生成规则至少包括以下实现方式之一:
(1)为第一地区的商户终端设置第一长度的预设序列,为第二地区的商户终端设置第二长度的预设序列,第一长度和第二长度不相等。
(2)根据商户装置所在的地区的区号设置与区号位数匹配的预设序列。
例如,在广州的商户终端和在深圳的商户终端所用的预设序列的长度不同,广州的区号比深圳的区号少一位,这样也便于支付***在一定时间内有规律的生成二维码,便于二维码的后台管理。
(3)以自然规律变化生成所述预设序列,所述自然规律至少包括指数增长、线性增长、多项式增长或非线性增长中的一项;所述预设序列的长度采用公式一S=FUN(S1)得到。
(4)由于每个时刻发生的交易量很多且交易发生不定时。为便于管理所述预设序列,以及便于后台有规律的、高效的生成不同取值且相同长度的预设序列,还可以将所述预设序列的一个字段作为随机位置,当需要生成交易码时,重新计算所述随机位置的变化数值。
其中,所述预设序列中的其他位置固定不变,所述预设序列包括固定字段和动态字段,动态字段为随机位置。在重新计算所述随机位置的变化数值时,可根据公式二C=RANDOM()计算所述随机位置的变化数值,无需根据随机位置的位数变化而不断的切换计算公式。
本申请不对公式一的数量和表现形式作限定,只要能够实现本申请中预设序列的长度的计算即可。本申请不对公式二的数量和表现形式作限定,只要能够实现本申请的随机位置的计算即可。
具体本申请不对预设序列的长度的设置方式、以及预设序列的生成规则作限定。
103、将所述预设序列添加至交易码串,得到交易码。
其中,交易码串是指可以为二维码串,可认为是生成交易码的初始字符串。
所述交易码是指在网上银行、手机银行交易确认过程中,用手机短信进行验证的一种交易认证方式。所述交易码包括消费者身份标识和所述预设序列等信息,所述交易码中的随机数字用于检验交易码的真假。例如用户下单后,跳转到支付界面,在支付界面生成一个二维码,该二维码便是支付***在后台生成的交易码。
一些实施方式中,所述将所述预设序列添加至交易码串,包括:
重复取序列随机位置的值添加到所述预设序列中的随机位置,直到所述预设序列的所有位置的值添加完毕。其中,所述重复选取是指一次交易的二维码生成,每重复选取一次,则将预设序列中的一个随机位置的字符***到所述交易码串中的随机位置,直至所述交易码串的随机位置被填满。
104、向所述终端设备发送所述交易码。
用户将所述终端设备展示给商户终端后,商户终端通过扫描消费者的终端设备获得所述交易码后,输入支付***即可获得消费者的支付金额,进而完成本次交易支付。
与现有机制相比,本申请实施例中,通过把所述预设序列加入到码值中,重复取序列随机位置的值添加到码值随机位置,直到序列所有值添加完毕,最终得到交易码。由于该序列由交易***内所有交易共享,其自增速度不固定,取决于时点交易量,且周期内不重复,所以,本申请生成的交易码的随机性很高、不易被破解、模仿或篡改,从而提高整个支付的安全性。
可选的,在本申请的一些实施例中,当业务需求变更时,将计算所述随机位置的变化数值的公式从C=RANDOM()切换到以下公式之一,以更改与所述业务需求匹配的预设序列的生成规则:
C=S[RANDOM()%STRLEN(S)]
C=FUN(S1[RANDOM()%STRLEN(S1)],S2[RANDOM()%STRLEN(S2)],…)。
可选的,在本申请的一些实施例中,所述重复取序列随机位置的值添加到所述预设序列中的随机位置,直到所述预设序列的所有位置的值添加完毕,包括下述两种方式之一:
方式一:
每次从所述预设序列的随机位置中选取一位随机数或者随机符号,将本次选取的选取随机数或者随机符号添加到所述交易码串,直到所述预设序列中所有随机位置的随机数或随机符号全部添加到所述交易码串中。
方式二:
按照顺序,将待加入所述交易码串的所述预设序列拆解为多个随机的单个字符,将拆解得到的各单个字符随机***到初始交易码串中,得到所述交易串码。
可选的,在本申请的一些实施例中,由于本申请的预设序列是基于其他***(数据库)产生,不在交易码(例如二维码)的生成***内,所以能够将预设序列的生成环境与交易码的生成环境隔离。隔离的方式可采用容器实现,即设置容器1和容器2,在容器1中创建生成预设序列的实例,在容器2中创建生成交易码的实例。具体来说,所述方法还包括:
构建至少一个第一容器和至少一个第二容器;
在所述第一容器内创建生成所述预设序列的实例,在所述第二容器内创建生成所述交易码的实例,以隔离所述预设序列的生成环境与所述交易码的生成环境。
可见,一方面中,本申请的这种2容器隔离生成交易码的方式能够保证生成的交易码串相比初始交易码串更不容易被模仿、串改。
另一方面中,将预设序列***到原交易码串时,对预设序列进行了二重随机处理(即上述方式一和方式二),所以能够使得交易码串的字符顺序和取值更复杂,不容易被模仿。
为便于理解,下面以二维码为例说明生成交易码的过程:
生成二维码顺序如下:
1.生成基础的二维码串,此过程中做基础的重复校验,连续位字符保证不重复。
2.生成预设序列。
3.随即获取预设序列中的单个字符。
4.将获取的字符***到基础二维码串的随机位置。
5.更新二维码串。
6.更新预设序列。
7.重复步骤1至步骤6,直到预设序列中的所有字符***到二维码串中,最终得到新的二维码串。
例如,初始二维码串在被***一个预设序列字符后,相应的初始二维码串中的各字符位置自相应变化,如下:
初始二维码串:19BT67D
预设序列:456321
将预设序列中的‘2’***到初始二维码串中的正序的第3位置,那么初始二维码串变为:192BT67D,而预设序列变成:45631。通过将预设序列中每个字符设置为不重复,直至预设序列中的每个字符均完全***初始二维码串。
可选的,在本申请的一些实施例中,所述预设序列中随机位置为位连续或位间断的字段。例如图2所示,图2中a表示随机位置为位连续的预设序列,图2中b表示随机位置为位间断的预设序列。
如果交易规则发生变化,或者业务需求变化,需要相应更新预设序列的生成规则时,还可以调整随机位置在所述预设序列中的位置和占据长度。例如图3所示的更新预设序列的生成规则之前的预设序列的一种结构示意图,随机位置占据的位数为4,并且随机位置占据的字段从位4至位7。
当需要更新图3所示的预设序列的生成规则后,例如将随机位置占据的字段从位4到位7更新为从位5到位8,更新后的预设序列如图4所示。
或者,当需要更新图3所示的预设序列的生成规则后,将随机位置占据的字段从位4到位7更新为位2、以及从位5到位7,更新后的预设序列如图5所示。
上述图1-图5中任一实施例或实施方式中所提及的技术特征也同样适用于本申请中的图6和图7所对应的实施例,后续类似之处不再赘述。
以上对本申请中一种生成交易码的方法进行说明,以下对执行上述生成交易码的方法的装置进行描述。
如图6所示的一种用于生成二维码的装置60的结构示意图,其可应用于银联交易。本申请实施例中的装置60能够实现对应于上述图1-图5中任一实施例或实施方式中所执行的生成交易码的方法的步骤。装置60实现的功能可以通过硬件实现,也可以通过硬件执行相应的软件实现。硬件或软件包括一个或多个与上述功能相对应的模块,所述模块可以是软件和/或硬件。所述装置60可包括收发模块601和处理模块602,所述处理模块602和收发模块601的功能实现可参考图1-图5中任一实施例或实施方式中所执行的操作,此处不作赘述。所述处理模块602可用于控制所述收发模块601的收发操作。
一些实施方式中,所述收发模块601可用于接收终端设备发送的支付请求;
所述处理模块602可用于对所述终端设备的身份验证通过后,生成预设序列,将所述预设序列添加至交易码串,得到交易码;通过所述收发模块601向所述终端设备发送所述交易码;
其中,所述预设序列的长度固定或可动态调整,所述预设序列的长度根据业务需求或商户终端所在的区域不同对应设置;
所述预设序列至少满足以下特性之一:
所述预设序列的增长速度反映一段时长内银联交易的发展状态,所述增长速度跟随整点时刻统计的交易总量递增而递增,增长速度为因变量,整点时刻统计的交易总量为自变量;
或者,所述预设序列在不同交易周期内不重现;
或者,所述预设序列在同一个交易周期内不重现。
本申请实施例中,所述处理模块602通过把所述预设序列加入到码值中,重复取序列随机位置的值添加到码值随机位置,直到序列所有值添加完毕,最终得到交易码。由于该序列由交易***内所有交易共享,其自增速度不固定,取决于时点交易量,且周期内不重复,所以,本申请生成的交易码的随机性很高、不易被破解、模仿或篡改,从而提高整个支付的安全性。
一些实施方式中,所述处理模块602至少执行以下操作之一生成预设序列:
为第一地区的商户终端设置第一长度的预设序列,为第二地区的商户终端设置第二长度的预设序列,第一长度和第二长度不相等;
或者,根据商户装置所在的地区的区号设置与区号位数匹配的预设序列;
或者,以自然规律变化生成所述预设序列,所述自然规律至少包括指数增长、线性增长、多项式增长或非线性增长中的一项;所述预设序列的长度采用公式S=FUN(S1)得到;
或者,将所述预设序列的一个字段作为随机位置,当需要生成交易码时,重新计算所述随机位置的变化数值,所述预设序列中的其他位置固定不变,所述预设序列包括固定字段和动态字段,动态字段为随机位置,根据公式C=RANDOM()计算所述随机位置的变化数值。
一些实施方式中,所述处理模块602还用于:
当业务需求变更时,将计算所述随机位置的变化数值的公式从C=RANDOM()切换到以下公式之一,以更改与所述业务需求匹配的预设序列的生成规则:
C=S[RANDOM()%STRLEN(S)]
C=FUN(S1[RANDOM()%STRLEN(S1)],S2[RANDOM()%STRLEN(S2)],…)。
一些实施方式中,所述处理模块602具体用于:
重复取序列随机位置的值添加到所述预设序列中的随机位置,直到所述预设序列的所有位置的值添加完毕;
其中,所述重复选取是指一次交易的二维码生成,每重复选取一次,则将预设序列中的一个随机位置的字符***到所述交易码串中的随机位置,直至所述交易码串的随机位置被填满。
一些实施方式中,所述处理模块602具体用于:
每次从所述预设序列的随机位置中选取一位随机数或者随机符号;
将本次选取的选取随机数或者随机符号添加到所述交易码串,直到所述预设序列中所有随机位置的随机数或随机符号全部添加到所述交易码串中。
一些实施方式中,所述处理模块602具体用于:
按照顺序,将待加入所述交易码串的所述预设序列拆解为多个随机的单个字符;
将拆解得到的各单个字符随机***到初始交易码串中,得到所述交易串码。
一些实施方式中,所述处理模块602还用于:
构建至少一个第一容器和至少一个第二容器;
在所述第一容器内创建生成所述预设序列的实例,在所述第二容器内创建生成所述交易码的实例,以隔离所述预设序列的生成环境与所述交易码的生成环境。
上面从模块化功能实体的角度分别介绍了本申请实施例中的装置60,以下从硬件角度介绍一种计算机装置,如图7所示,其包括:处理器、存储器、收发器(也可以是输入输出单元,图7中未标识出)以及存储在所述存储器中并可在所述处理器上运行的计算机程序。例如,该计算机程序可以为图1-图5中任一实施例或实施方式中生成交易码的方法对应的程序。例如,当计算机装置实现如图6所示的装置60的功能时,所述处理器执行所述计算机程序时实现上述图6所对应的实施例中由装置60执行的生成交易码的方法中的各步骤;或者,所述处理器执行所述计算机程序时实现上述图6所对应的实施例的装置60中各模块的功能。又例如,该计算机程序可以为图1-图5中任一实施例或实施方式中生成交易码的方法对应的程序。
所称处理器可以是中央处理单元(Central Processing Unit,CPU),还可以是其他通用处理器、数字信号处理器(Digital Signal Processor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现成可编程门阵列(Field-Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等,所述处理器是所述计算机装置的控制中心,利用各种接口和线路连接整个计算机装置的各个部分。
所述存储器可用于存储所述计算机程序和/或模块,所述处理器通过运行或执行存储在所述存储器内的计算机程序和/或模块,以及调用存储在存储器内的数据,实现所述计算机装置的各种功能。所述存储器可主要包括存储程序区和存储数据区,其中,存储程序区可存储操作***、至少一个功能所需的应用程序(比如声音播放功能、图像播放功能等)等;存储数据区可存储根据手机的使用所创建的数据(比如音频数据、视频数据等)等。此外,存储器可以包括高速随机存取存储器,还可以包括非易失性存储器,例如硬盘、内存、插接式硬盘,智能存储卡(Smart Media Card,SMC),安全数字(SecureDigital,SD)卡,闪存卡(Flash Card)、至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。
所述收发器也可以用接收器和发送器代替,可以为相同或者不同的物理实体。为相同的物理实体时,可以统称为收发器。该收发器可以为输入输出单元。
所述存储器可以集成在所述处理器中,也可以与所述处理器分开设置。
通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到上述实施例方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如ROM/RAM)中,包括若干指令用以使得一台终端(可以是手机,计算机,服务器或者网络设备等)执行本申请各个实施例所述的方法。
上面结合附图对本申请的实施例进行了描述,但是本申请并不局限于上述的具体实施方式,上述的具体实施方式仅仅是示意性的,而不是限制性的,本领域的普通技术人员在本申请的启示下,在不脱离本申请宗旨和权利要求所保护的范围情况下,还可做出很多形式,凡是利用本申请说明书及附图内容所作的等效结构或等效流程变换,或直接或间接运用在其他相关的技术领域,这些均属于本申请的保护之内。
Claims (10)
1.一种生成交易码的方法,其特征在于,所述方法包括:
接收终端设备发送的支付请求;
对所述终端设备的身份验证通过后,生成预设序列,其中,所述预设序列的长度固定或可动态调整,所述预设序列的长度根据业务需求或商户终端所在的区域不同对应设置;
将所述预设序列添加至交易码串,得到交易码;
向所述终端设备发送所述交易码;
其中,所述预设序列至少满足以下特性之一:
所述预设序列的增长速度反映一段时长内银联交易的发展状态,所述增长速度跟随整点时刻统计的交易总量递增而递增,增长速度为因变量,整点时刻统计的交易总量为自变量;
或者,所述预设序列在不同交易周期内不重现;
或者,所述预设序列在同一个交易周期内不重现。
2.根据权利要求1所述的方法,其特征在于,所述生成预设序列至少包括以下实现方式之一:
为第一地区的商户终端设置第一长度的预设序列,为第二地区的商户终端设置第二长度的预设序列,第一长度和第二长度不相等;
或者,根据商户装置所在的地区的区号设置与区号位数匹配的预设序列;
或者,以自然规律变化生成所述预设序列,所述自然规律至少包括指数增长、线性增长、多项式增长或非线性增长中的一项;所述预设序列的长度采用公式S=FUN(S1)得到;
或者,将所述预设序列的一个字段作为随机位置,当需要生成交易码时,重新计算所述随机位置的变化数值,所述预设序列中的其他位置固定不变,所述预设序列包括固定字段和动态字段,动态字段为随机位置,根据公式C=RANDOM()计算所述随机位置的变化数值。
3.根据权利要求2所述的方法,其特征在于,所述方法还包括:
当业务需求变更时,将计算所述随机位置的变化数值的公式从C=RANDOM()切换到以下公式之一,以更改与所述业务需求匹配的预设序列的生成规则:
C=S[RANDOM()%STRLEN(S)]
C=FUN(S1[RANDOM()%STRLEN(S1)],S2[RANDOM()%STRLEN(S2)],…)。
4.根据权利要求1-3中任一项所述的方法,其特征在于,所述将所述预设序列添加至交易码串,包括:
重复取序列随机位置的值添加到所述预设序列中的随机位置,直到所述预设序列的所有位置的值添加完毕;
其中,所述重复选取是指一次交易的二维码生成,每重复选取一次,则将预设序列中的一个随机位置的字符***到所述交易码串中的随机位置,直至所述交易码串的随机位置被填满。
5.根据权利要求4所述的方法,其特征在于,所述重复取序列随机位置的值添加到所述预设序列中的随机位置,直到所述预设序列的所有位置的值添加完毕,包括:
每次从所述预设序列的随机位置中选取一位随机数或者随机符号;
将本次选取的选取随机数或者随机符号添加到所述交易码串,直到所述预设序列中所有随机位置的随机数或随机符号全部添加到所述交易码串中。
6.根据权利要求5所述的方法,其特征在于,所述重复取序列随机位置的值添加到所述预设序列中的随机位置,直到所述预设序列的所有位置的值添加完毕,包括:
按照顺序,将待加入所述交易码串的所述预设序列拆解为多个随机的单个字符;
将拆解得到的各单个字符随机***到初始交易码串中,得到所述交易串码。
7.根据权利要求1-3中任一项所述的方法,其特征在于,所述方法还包括:
构建至少一个第一容器和至少一个第二容器;
在所述第一容器内创建生成所述预设序列的实例,在所述第二容器内创建生成所述交易码的实例,以隔离所述预设序列的生成环境与所述交易码的生成环境。
8.一种用于生成交易码的装置,其特征在于,所述装置包括:
收发模块,用于接收终端设备发送的支付请求;
处理模块,用于对所述终端设备的身份验证通过后,生成预设序列,将所述预设序列添加至交易码串,得到交易码;通过所述收发模块向所述终端设备发送所述交易码;
其中,所述预设序列的长度固定或可动态调整,所述预设序列的长度根据业务需求或商户终端所在的区域不同对应设置;
所述预设序列至少满足以下特性之一:
所述预设序列的增长速度反映一段时长内银联交易的发展状态,所述增长速度跟随整点时刻统计的交易总量递增而递增,增长速度为因变量,整点时刻统计的交易总量为自变量;
或者,所述预设序列在不同交易周期内不重现;
或者,所述预设序列在同一个交易周期内不重现。
9.一种计算机的装置,其特征在于,所述装置包括:
至少一个处理器、存储器和收发器;
其中,所述存储器用于存储程序代码,所述处理器用于调用所述存储器中存储的程序代码来执行如权利要求1-7中任一项所述的方法。
10.一种计算机存储介质,其特征在于,其包括指令,当其在计算机上运行时,使得计算机执行如权利要求1-7中任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910431890.4A CN110322237A (zh) | 2019-05-23 | 2019-05-23 | 一种生成交易码的方法、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201910431890.4A CN110322237A (zh) | 2019-05-23 | 2019-05-23 | 一种生成交易码的方法、装置及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN110322237A true CN110322237A (zh) | 2019-10-11 |
Family
ID=68113381
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201910431890.4A Pending CN110322237A (zh) | 2019-05-23 | 2019-05-23 | 一种生成交易码的方法、装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN110322237A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111144872A (zh) * | 2019-12-27 | 2020-05-12 | ***股份有限公司 | 交易码生成、基于交易码的处理方法、装置及*** |
Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102012005693A1 (de) * | 2012-03-20 | 2013-09-26 | Giesecke & Devrient Gmbh | Verfahren und System zum Durchführen eines Geldgeschäfts |
CN104376464A (zh) * | 2014-11-19 | 2015-02-25 | 中城智慧科技有限公司 | 一种安全的扫码付款方法 |
CN104376465A (zh) * | 2014-11-19 | 2015-02-25 | 中城智慧科技有限公司 | 一种安全的移动支付方法 |
CN107833046A (zh) * | 2017-11-28 | 2018-03-23 | 恒宝股份有限公司 | 一种移动支付方法及其结账终端 |
CN108154365A (zh) * | 2017-12-19 | 2018-06-12 | 恒宝股份有限公司 | 一种生成动态二维码的安全设备、方法及*** |
-
2019
- 2019-05-23 CN CN201910431890.4A patent/CN110322237A/zh active Pending
Patent Citations (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
DE102012005693A1 (de) * | 2012-03-20 | 2013-09-26 | Giesecke & Devrient Gmbh | Verfahren und System zum Durchführen eines Geldgeschäfts |
CN104376464A (zh) * | 2014-11-19 | 2015-02-25 | 中城智慧科技有限公司 | 一种安全的扫码付款方法 |
CN104376465A (zh) * | 2014-11-19 | 2015-02-25 | 中城智慧科技有限公司 | 一种安全的移动支付方法 |
CN107833046A (zh) * | 2017-11-28 | 2018-03-23 | 恒宝股份有限公司 | 一种移动支付方法及其结账终端 |
CN108154365A (zh) * | 2017-12-19 | 2018-06-12 | 恒宝股份有限公司 | 一种生成动态二维码的安全设备、方法及*** |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN111144872A (zh) * | 2019-12-27 | 2020-05-12 | ***股份有限公司 | 交易码生成、基于交易码的处理方法、装置及*** |
WO2021128871A1 (zh) * | 2019-12-27 | 2021-07-01 | ***股份有限公司 | 交易码生成、基于交易码的处理方法、装置及*** |
CN111144872B (zh) * | 2019-12-27 | 2024-04-26 | ***股份有限公司 | 交易码生成、基于交易码的处理方法、装置及*** |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105099688B (zh) | 一种电子账户的操作方法、支付页面的展示方法及装置 | |
CN107833040A (zh) | 支付方法、装置、存储介质及终端 | |
CN111177690B (zh) | 一种二维码扫码登录方法及装置 | |
WO2011041341A2 (en) | Systems and methods to facilitate online transactions | |
CN105550869A (zh) | 基于nfc的远程代付方法、***及智能终端 | |
CN108009854A (zh) | 基于微信平台的商业活动推广方法 | |
CN110309022A (zh) | 模拟交易测试的方法、模拟器、设备及存储介质 | |
AU2013221800A1 (en) | Authentication platform for pin debit issuers | |
CN106096940A (zh) | 一种支付方法和装置 | |
US20240121613A1 (en) | Access controlling network architectures and systems, having cellular network components and elements modified to host access controlling schemas designed to transform and/or facilitate cellular communication signals in accordance with novel cellular communications protocols with multi-part multi-functional address signaling, and methods for use thereof | |
CN109493075A (zh) | 用于确定虚拟资源对象的方法及设备 | |
CN105809466A (zh) | 一种请求发送方法及其装置 | |
CN109767205A (zh) | 一种无需二次认证的支付二维码安全付费方法及*** | |
CN110322237A (zh) | 一种生成交易码的方法、装置及存储介质 | |
CN112184248B (zh) | 卡组织拒付调单数据处理方法及装置 | |
US20030071115A1 (en) | Data transmission method and device | |
CN109447652A (zh) | 一种快捷支付方法、装置及设备 | |
CN110348823A (zh) | 网络支付方法及设备 | |
EP2411947A1 (en) | Systems and methods to process transactions based on social networking | |
CN106302367B (zh) | 事务处理方法和*** | |
AU2715501A (en) | A system for recharging a prepaid value in respect of a telephone connection | |
CN111723362A (zh) | 一种权限密码生成方法、***、装置及终端设备 | |
CN107291953A (zh) | 一种信息查询方法、装置、电子设备及存储介质 | |
CN108805543A (zh) | 一种输出收款信息的方法及终端 | |
CN108021639A (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 |