1.一种动态支付方法,其特征在于,包括:
步骤S100客户端根据当前时间、用户的银行卡序号、客户端设备标识信息生成动态码;
步骤S200客户端根据生成的所述动态码对所属客户端中对应银行卡插件的唯一标识信息进行加密;步骤S300客户端根据所属客户端中的银行卡序号信息、所述动态码、所述步骤S200中加密后的唯一标识信息生成动态银行卡号;
步骤S400服务器根据所述动态银行卡号进行验证,当验证成功后,完成支付,否则,返回执行步骤S100。
2.根据权利要求1所述的动态支付方法,其特征在于,步骤S200包括:
步骤S210客户端获取所属客户端中对应银行卡插件的唯一标识信息;
步骤S220根据所述动态码利用FPE算法生成FPE密钥;
步骤S230根据步骤S210中所述插件唯一标识信息、所述FPE密钥利用FPE算法对所述插件唯一标识信息进行加密处理。
3.根据权利要求2所述的动态支付方法,其特征在于,所述插件唯一标识信息加密的模型包括:
加密后的插件ID=FPE加密(插件ID,FPE密钥);
插件ID--所属客户端中对应银行卡插件的唯一标识信息。
4.根据权利要求1所述的动态支付方法,其特征在于,步骤S400包括:
步骤S410通过FPE加密算法的逆运算从所述动态银行卡号中获取所属客户端中对应银行卡插件的唯一标识信息;
步骤S420根据所述步骤S410中获取的所述插件的唯一标识信息进一步获取客户端的密钥信息;
步骤S430获取服务器在对所述动态卡号进行验证时的当前时间;
步骤S440根据步骤S420获取的客户端的密钥信息、步骤S430中获取的服务器对所述动态银行卡号进行验证时的当前时间,利用AES白盒算法生成验证码;
步骤S450在预设的时间内将所述动态码与所述验证码进行对比,当验证成功后,完成支付。
5.根据权利要求4所述的动态支付方法,其特征在于,生成所述验证码的模型包括:
验证码1=截位算法(加密算法(硬件信息+TD/60,key));
验证码2=截位算法(加密算法(硬件信息+TD/60+1,key));
验证码3=截位算法(加密算法(硬件信息+TD/60-1,key));
TD--服务器在对所述动态银行卡号进行验证时的当前时间;
硬件信息--客户端的标识信息;
Key--客户端的密钥信息。
6.根据权利要求1所述的动态支付方法,其特征在于,生成所述动态码的模型包括:
动态码=截位算法(白盒算法(客户端的标识信息+(T+t)/60));
T--生成动态码的当前时间;
t--客户端与服务器的同步时间差。
7.根据权利要求6所述的动态支付方法,其特征在于,所述步骤S100中获取客户端与服务器的同步时间差包括:
步骤S110获取客户端向服务器发送同步时间请求包的第一时间信息;
步骤S120获取服务器接收到所述同步时间请求包的第二时间信息;
步骤S130获取服务器返回至客户端的所述同步时间请求包的第三时间信息;
步骤S140获取客户端接收所述同步时间请求包的第四时间信息;
步骤S150根据所述第一时间信息、所述第二时间信息、所述第三时间信息、所述第四时间信息获取与服务器的所述同步时间差。
8.根据权利要求7所述的动态支付方法,其特征在于,获取客户端与服务器的所述同步时间差的模型为包括:
T1--第一时间信息;T2--第二时间信息;T3--第三时间信息;T4--第四时间信息;d--同步时间的往返延迟时间;t--客户端与服务器的所述同步时间差。
9.根据权利要求1-8任一所述的动态支付方法,其特征在于,所述动态银行卡号包括:支付机构代码、所属客户端中对应银行卡序号、加密插件唯一标识信息、所述动态码。
10.一种动态支付方法系统,可执行权利要求1-9任一所述的动态支付方法,其特征在于,包括:
动态码生成模块,客户端根据当前时间、用户的银行卡序号、客户端的设备标识信息生成动态码;
加密处理模块,客户端根据生成的所述动态码对所属客户端中对应银行卡插件的唯一标识信息进行加密;
动态卡号生成模块,客户端根据所属客户端中的银行卡序号信息、所述动态码、所述加密处理模块中加密后的唯一标识信息生成动态银行卡号;
动态卡号验证模块,服务器根据所述动态银行卡号进行验证;
控制模块,分别与所述动态码生成模块、所述加密处理模块、所述动态卡号生成模块、所述动态卡号验证模块电连接,控制动态码生成模块根据客户端的当前时间、客户端与服务器之间的时间差、客户端的标识信息生成动态码,控制所述加密处理模块根据生成的动态码对所属客户端中对应银行卡插件的唯一标识信息进行加密,根据所属客户端中的银行卡序号信息、所述动态码、进一步控制动态卡号生成模块生成动态银行卡号,根据生成所述动态银行卡号进行支付,在进行支付时控制服务器所述动态卡号验证模块对动态银行卡号进行验证,当服务器验证成功后,完成支付,否则,控制执行所述动态码生成模块重新获取动态码。