对云支付限制密钥进行加密及解密的方法、装置和系统的制作方法

文档序号:10596995阅读:606来源:国知局
对云支付限制密钥进行加密及解密的方法、装置和系统的制作方法
【专利摘要】本发明提供了一种对云支付的限制密钥进行加解密的方法、装置及系统,其中解密方法包括:基于非对称加密算法计算得到私钥和公钥,其中,所述私钥是基于用户因子、随机因子、设备因子,经密钥生成算法生成的,其中,所述用户因子是用户为解密所述限制密钥输入的口令的、特定于用户的因子,所述设备因子是用户输入口令的移动设备上的、特定于移动设备的因子;所述密钥生成算法是保证用户因子、随机因子、设备因子中任何一项不同,所生成的私钥都不同的算法;基于分段倍点运算的算法,采用所述私钥对已采用所述公钥加密的限制密钥进行解密。通过本发明,基于分段倍点运算算法利用非对称私钥对限制密钥进行解密,可提高云支付的安全性。
【专利说明】
对云支付限制密钥进行加密及解密的方法、装置和系统
技术领域
[0001]本发明涉及移动设备安全技术领域,尤其涉及一种对云支付限制密钥进行加密及解密的方法、装置和系统。【背景技术】[00〇2] HCE(Host Card Emulat1n)技术又称为主机模拟卡片技术,最初由美国初创公司 SimplyTapp提出并开发,目前在我国主要应用于移动支付行业,例如云支付(也称:云闪付) 等创新应用。HCE模式下传统NFC的实体安全模块SE被远程托管的云端SE(Cloud Secure Element或SE on the Cloud)所取代,移动设备即使没有SE模块也可实现安全的NFC应用。
[0003]HCE云支付的核心原理是基于动态更新策略,提前推送限制密钥(LUK,Limit Usage Key)到移动应用,用户拍卡消费时,移动应用使用限制密钥生成应用密文,应用密文由云端系统联机验证。HCE云支付的主要特点是通过后台风控手段降低风险,例如对限制密钥的使用时间、使用次数、累计金额等多方面限制,当限制密钥超过限制后,触发限制密钥的更新与下载。
[0004]虽然通过风控手段可以降低风险,但由于限制密钥提前推送的特点,无法预先判断该密钥所应用的交易额度;另外,由于Android系统的开放性,无法实现高安全级别的密钥存储。因此,卡模拟应用需要额外的安全防护,以保障用户权益及系统的安全性。
[0005]为此,目前主流HCE方案采用基于Access PIN(访问密码)的限制密钥保护机制。 Access PIN是为保护限制密钥而设置的用户口令,用户在注册申请云端支付账户时需要同时设置Access PIN,并由云端支付平台保存。[〇〇〇6]云端支付平台生成限制密钥后,以Access PIN作为输入参数,通过对称加密过程 (FuncLUK2PX)将限制密钥(LUK_A2)转化为移动应用可以存储的字符串(PX_LUK);当云端支付平台下发新的参数信息到移动应用后,移动应用将PX_LUK保存在本地安全存储库中;用户在启动闪付交易时,移动应用提示用户输入Ac ce s s P i n,通过对称解密过程 (FuncPX2LUK)完成限制密钥的恢复及应用密文计算;应用密文经NFC非接通道最终由云端支付平台联机验证。
[0007]虽然Access PIN可以对限制密钥起到一定的保护作用,但由于云端支付平台需要保存Access PIN的必要性,以及对称加密手段保护限制密钥的特点,导致经营管理以及交易过程等方面存在不可避免的潜在隐患。此问题可应用国密数字证书技术有效解决。
【发明内容】

[0008]本发明的目的是提高云支付的安全性。
[0009]根据本发明的一个方面,提供了一种对云支付的限制密钥进行加密的方法,所述方法包括:
[0010]获取基于非对称加密算法计算得到的公钥;
[0011]采用所述公钥对云支付的限制密钥进行加密;
[0012]其中,与所述公钥对应的私钥是基于用户因子、随机因子、设备因子,经密钥生成算法生成的,其中,所述用户因子是用户为解密所述限制密钥输入的口令的、特定于用户的因子,所述设备因子是用户输入口令的移动设备上的、特定于移动设备的因子;所述密钥生成算法是保证用户因子、随机因子、设备因子中任何一项不同,所生成的私钥都不同的算法。
[0013]根据本发明的另一个方面,提供了一种对云支付的限制密钥进行解密的方法,所述方法包括:
[0014]基于非对称加密算法计算得到私钥和公钥,其中,所述私钥是基于用户因子、随机因子、设备因子,经密钥生成算法生成的,其中,所述用户因子是用户为解密所述限制密钥输入的口令的、特定于用户的因子,所述设备因子是用户输入口令的移动设备上的、特定于移动设备的因子;所述密钥生成算法是保证用户因子、随机因子、设备因子中任何一项不同,所生成的私钥都不同的算法;
[0015]基于分段倍点运算的算法,采用所述私钥对已采用所述公钥加密的限制密钥进行解密。
[0016]根据本发明的另一个方面,提供一种对云支付的限制密钥进行加解密的方法,所述方法包括:
[0017]在移动设备端基于非对称加密算法计算得到私钥和公钥,其中,所述私钥是基于用户因子、随机因子、设备因子,经密钥生成算法生成的,其中,所述用户因子是用户为解密所述限制密钥输入的口令的、特定于用户的因子,所述设备因子是用户输入口令的移动设备上的、特定于移动设备的因子;所述密钥生成算法是保证用户因子、随机因子、设备因子中任何一项不同,所生成的私钥都不同的算法;
[0018]在云端获取所述公钥,并利用所述公钥对限制密钥进行加密;
[0019]当用户进行云支付操作时,在移动设备端,基于分段倍点运算的算法,采用所述私钥对已采用所述公钥加密的限制密钥进行解密。
[0020]根据本发明的另一个方面,提供一种对云支付的限制密钥进行加密的装置,所述装置包括:
[0021]用于获取基于非对称加密算法计算得到的公钥的装置;
[0022]用于采用所述公钥对云支付的限制密钥进行加密的装置;
[0023]其中,与所述公钥对应的私钥是基于用户因子、随机因子、设备因子,经密钥生成算法生成的,其中,所述用户因子是用户为解密所述限制密钥输入的口令的、特定于用户的因子,所述设备因子是用户输入口令的移动设备上的、特定于移动设备的因子;所述密钥生成算法是保证用户因子、随机因子、设备因子中任何一项不同,所生成的私钥都不同的算法。
[0024]根据本发明的另一个方面,提供一种对云支付的限制密钥进行解密的装置,所述装置包括:
[0025]用于基于非对称加密算法计算公钥和私钥的装置,其中,所述私钥是基于用户因子、随机因子、设备因子,经密钥生成算法生成的,其中,所述用户因子是用户为解密所述限制密钥输入的口令的、特定于用户的因子,所述设备因子是用户输入口令的移动设备上的、 特定于移动设备的因子;所述密钥生成算法是保证用户因子、随机因子、设备因子中任何一项不同,所生成的私钥都不同的算法;以及,
[0026]用于基于分段倍点运算的算法,采用所述私钥对已用公钥加密的限制密钥进行解密的装置。
[0027]根据本发明的另一个方面,提供一种对云支付的限制密钥进行加解密的系统,所述系统包括:
[0028]用于基于非对称加密算法计算得到私钥和公钥的,以及,当用户进行云支付操作时,基于分段倍点运算的算法,采用所述私钥对已采用所述公钥加密的限制密钥进行解密的移动设备,其中,所述私钥是基于用户因子、随机因子、设备因子,经密钥生成算法生成的,其中,所述用户因子是用户为解密所述限制密钥输入的口令的、特定于用户的因子,所述设备因子是用户输入口令的移动设备上的、特定于移动设备的因子;所述密钥生成算法是保证用户因子、随机因子、设备因子中任何一项不同,所生成的私钥都不同的算法
[0029]用于获取所述公钥,并利用所述公钥对限制密钥进行加密的云端设备。
[0030]与现有技术相比,本发明具有以下优点:通过非对称算法生成私钥和公钥,在云端设备上利用公钥对限制密钥进行加密,在移动设备上利用私钥进行解密,由于非对称算法的安全性高,由此提高限制密钥的安全性。另外,由于基于用户因子、设备因子、随机因子三个互不相关因子生成私钥,这三个因子缺一不可,用户因子不作存储而由用户掌握,设备因子是移动设备特有的,只能在用户生成私钥时绑定的移动设备上设置,这三个方面互相牵制,在私钥解密时这三个因子必须与生成私钥时的三个因子一致,极大提高加密保护的安全性。私钥解密过程通过三个因子迭代运算,不暴露完整私钥,极大提高了私钥安全性。
[0031]另外,由于本发明实施例中,私钥采用干扰保护机制,即通过移动设备盾插件对私钥进行加扰,后台的分布式密钥机进行解扰才能恢复数字签名。只有分布式密钥机才能解扰。如果加扰的私钥被任何第三方拦截,第三方都无法解扰恢复数字签名。即,采用干扰机制,每一个数字签名,都需要移动端、后台密钥机共同作用完成,私钥彼此屏蔽,过程彼此牵制,缺一不可,大大提高了私钥的安全性。而分布式密钥机只能消除签名干扰成分,即解扰, 不能生成用户签名,确保用户签名生成的私密性。【附图说明】[〇〇32]通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本发明的其它特征、目的和优点将会变得更明显:
[0033]图1示出了根据本发明的一个实施例的限制密钥加解密方法在移动设备及云端设备之间的双端交互流程图。
[0034]图2示出了根据本发明的一个实施例的限制密钥加解密私钥方法在移动设备盾插件及分布式密钥机之间生成私钥的双端交互流程图。
[0035]图3示出了根据本发明的一个实施例的限制密钥加解密方法中在移动设备盾插件及分布式密钥机之间验证私钥的双端交互流程图。
[0036]图4示出了根据本发明的一个实施例的云端侧的限制密钥加密设备的框图。
[0037]图5示出了根据本发明的一个实施例的移动设备侧的限制密钥解密设备的框图。 [〇〇38]图6示出了本发明的一个实施例的限制密钥加解密系统的框图。【具体实施方式】
[0039]下面结合附图对本发明作进一步详细描述。
[0040]图1示出了根据本发明的一个实施例的限制密钥加解密方法在移动设备及云端设备之间的双端交互流程图。本申请的一个实施例的云支付限制密钥的加解密系统包括移动设备和云端设备。其中,移动设备例如手机、ipad等智能移动终端,云端设备例如是云端支付平台设备。在移动设备侧,负责利用非对称算法生成用于对云支付限制密钥进行加解密的公钥和私钥,并在用户进行云支付操作时,利用私钥对已采用公钥加密的限制密钥进行解密。在云端设备侧,负责获取公钥,并利用公钥对限制密钥进行加密。[0041 ]如图1所示,一种对云支付的限制密钥进行加解密的方法包括:
[0042]S11、移动设备基于非对称加密算法计算得到私钥和公钥;[〇〇43]S12、云端设备获取公钥;
[0044]S13、云端设备利用公钥对限制密钥进行加密;
[0045]S14、移动设备获取加密后的限制密钥;
[0046]S15、当用户进行云支付操作时,基于分段倍点运算的算法,移动设备采用私钥对已加密的限制密钥进行解密。
[0047]其中,非对称加密算法是一种密钥的保护算法。非对称加密算法需要两个密钥:公开密钥(publickey,本文简称公钥)和私有密钥(privatekey,本文简称私钥)。公钥与私钥是一对,如果用公钥对数据进行加密,只有用对应的私钥才能解密。因为加密和解密使用的是两个不同的密钥,所以这种算法叫作非对称加密算法。非对称加密算法实现机密信息交换的基本过程是:甲方生成一对密钥并将其中的一把作为公用密钥向其它方公开;得到该公用密钥的乙方使用该密钥对机密信息进行加密后再发送给甲方;甲方再用自己保存的另一把专用密钥对加密后的信息进行解密。[〇〇48]本申请对采取何种分段倍点运算的算法不做限制。例如,可以采用SM2(椭圆曲线公钥密码算法),等等。例如采取SM2椭圆曲线的算法,其核心是倍点运算,倍点运算基于离散对数分解的挑战保障私钥安全,倍点运算同时也满足分配律。
[0049]特别的,本申请实施例中,在移动设备端基于用户因子、随机因子、设备因子,经密钥生成算法生成的私钥。其中,用户因子是用户为解密限制密钥输入的口令的、特定于用户的因子,设备因子是用户输入口令的移动设备上的、特定于移动设备的因子;密钥生成算法是保证用户因子、随机因子、设备因子中任何一项不同,所生成的私钥都不同的算法。
[0050]由于本申请实施例中对私钥采取多因子分段生成的方式,因此可极大提高私钥的安全性。下面介绍私钥生成的原理及过程。
[0051]图2示出了根据本发明的一个实施例的私钥生成过程在移动设备盾插件及分布式密钥机之间的双端交互流程图。本申请的一个实施例的私钥生成验证系统包括移动设备盾插件、分布式密钥机、以及认证平台。移动设备盾插件位于用户的移动设备上,例如绑定移动设备的应用中。而分布式密钥机位于后台服务器,例如机房中。二者分布式协同运算,为用户提供私钥功能。移动设备盾插件作为安全插件嵌入移动设备应用程序中,供移动设备应用程序调用。移动设备盾插件协同分布式密钥机完成密钥运算。分布式密钥机可以是专门的密码设备,部署在服务器端的专用设备,作为辅助设备协同移动设备盾插件实现分布式密钥运算,辅助保障签名过程的安全。
[0052]以用户移动设备(如手机)上的云支付应用为例。用户在开通移动设备上的云支付应用(例如通过下载云支付应用(例如云闪付app)安装到移动设备上)时,云支付应用绑定有一个移动设备盾插件,该插件与U盾不同,它不是单独存在,而是绑定在安装的云支付应用中的,用于在私钥生成和验证中与分布式密钥机协同运算,完成私钥的生成和验证。安装云支付应用后,用户需要完成注册。在注册时输入用户口令。用户要记住该口令,并且在以后每次通过云支付应用办理业务(例如转账)时要输入相同的口令。这时,移动设备盾插件根据基于该用户口令生成的用户因子、获取到的随机因子和特定于移动设备的设备因子, 生成私钥,并利用加扰因子加扰后发给后台的分布式密钥机。分布式密钥机对该私钥解扰后发给认证平台登记。当用户以后需要通过该云支付应用办理业务(如转账)时,需要完成私钥的验证过程。验证用户才能办理该业务,否则交易不安全。这时,用户需要输入自己在注册时输入的用户口令。移动设备盾插件基于该用户口令通过与在注册时基于用户口令得到用户因子相同的算法得到与注册时相同的用户因子。用户在注册时生成私钥的过程中获取的随机因子是固定保存在用户的移动设备中的,因此,移动设备盾插件也可以获取到存储的生产私钥的过程中使用的随机因子。设备因子是特定于移动设备的,也可以由移动设备盾插件获取到。此时获取到的设备因子也是与生成私钥时相同的。因此,此时移动设备盾插件基于此时的用户因子、随机因子、设备因子生成的待验证私钥应该也是与生成私钥时生成的私钥相同的。移动设备盾插件将该待验证私钥加扰后发到分布式密钥机,由分布式密钥机解扰后发到认证平台,与用户注册时生成且登记在认证平台的私钥进行比对验证。 从理论上,该待验证私钥与用户注册时生成且登记在认证平台的私钥应该相同。如不相同, 则说明用户输入了错误的用户口令、用户使用的不是一开始注册所用的移动设备、或者生成的私钥或待认证私钥在传输的过程中遭到了非法篡改。由于本发明实施例中,基于用户因子、设备因子、随机因子三个互不相关因子生成私钥,这三个因子缺一不可,用户因子不作存储而由用户掌握,设备因子是移动设备特有的,这三个因子互相牵制,在验证私钥时这三个因子必须完全与生成私钥时的三个因子一致,才能验证通过,使得即使在用户口令泄露等情况下其他人也很难仅凭用户口令验证成功,极大提高了私钥安全性。而且,私钥采用干扰保护机制,即通过移动设备盾插件对私钥进行加扰,后台的分布式密钥机进行解扰才能恢复私钥。只有分布式密钥机才能解扰。如果加扰的私钥被任何第三方拦截,第三方都无法解扰恢复私钥而分布式密钥机只能消除签名干扰成分,即解扰,不能生成用户签名,因此分布式密钥机端的管理者也无法私自篡改用户签名,这种移动设备盾插件和分布式密钥机相互牵制的方式确保了用户签名生成的私密性。
[0053]分布式密钥机在后台用于与移动设备盾插件相配合完成私钥生成和验证过程中的运算,如解扰等。例如,每个云支付应用的机房设置一台分布式密钥机,负责该应用所下发的所有云支付应用相关的私钥的生成和验证。[〇〇54]如图2所示,根据本发明一个实施例的移动设备盾插件侧的一种私钥生成方法包括:
[0055]步骤S110、获取基于用户为生成私钥输入的口令的、特定于用户的用户因子;[〇〇56]步骤S120、获取随机因子;[〇〇57]步骤S130、获取用户输入口令的移动设备上的、特定于移动设备的设备因子;
[0058] 步骤S140、基于所述用户因子、随机因子、设备因子,经私钥生成算法,生成私钥, 其中私钥生成算法是保证用户因子、随机因子、设备因子中任何一项不同,私钥都不同的算法。[〇〇59]下面对这些步骤进行详细描述。[〇〇6〇]步骤S110、获取基于用户为生成私钥输入的口令的、特定于用户的用户因子。[〇〇61 ] 在一个实施例中,步骤S110包括:[〇〇62]获取用户输入的口令;
[0063]将获取的口令输入用户因子生成算法,得到特定于用户的用户因子,其中所述用户因子生成算法是保证输入的口令不同,产生的用户因子都不同的算法。[〇〇64]如前所述,用户输入的口令是用户在注册时输入用户口令。一般,在用户注册时, 与移动设备盾插件所绑定的应用的界面会提示用户输入用户口令。当用户输入该口令后, 移动设备盾插件就获取了该口令。用户要记住该口令,并且在以后每次通过云支付应用办理业务(例如转账)时要输入相同的口令。[〇〇65]所述用户因子生成算法是保证输入的口令不同,产生的用户因子都不同的算法。 而且,在验证待验证私钥时,产生待验证私钥也要采用同样的用户因子生成算法生成验证时的用户因子。
[0066]用户因子是已有概念,是特定于用户的一个因子,例如随用户不同而不同的一个数。用户因子生成算法的特点是输入的口令与输出的值(用户因子)都唯一对应性,即输入的口令不同,产生的用户因子都不同。目前已知许多算法可用于用户因子生成算法,故不赘述。[〇〇67] 步骤S120、获取随机因子。[〇〇68] 在一个实施例中,步骤S120包括:
[0069]接收分布式密钥机发送的硬件随机数;
[0070]在本地产生本地随机数;
[0071]将所述硬件随机数与所述本地随机数合成,得到随机因子。[〇〇72]随机因子一般是指随机产生的数。
[0073]该实施例中的随机因子分为两部分。一部分是硬件随机数,是从分布式密钥机接收来的。另一部分是本地随机数,是移动设备盾插件本地产生的。该随机因子由两部分合成的好处是,由于该随机因子一部分来自于分布式密钥机,即使移动设备盾插件受到攻击,攻击者也仅仅是能掌握本地产生的随机数;而该随机因子还有一部分来自本地,即使分布式密钥机受到攻击,也仅仅是其中来自分布式密钥机的部分遭到破译,仍然无法窃取整个随机因子,提高了私钥生成的安全性。[〇〇74]步骤S130、获取用户输入口令的移动设备上的、特定于移动设备的设备因子。[〇〇75]该设备因子可以是用户输入口令的移动设备上的设备ID或设备出厂号等,也可以是基于设备ID或设备出厂号等进行某种特定的运算而得到的一个数。移动设备上的设备ID 或设备出厂号等可以存储在移动设备的存储器中的某一特定位置。移动设备盾插件只要读取该位置处存储的内容,就可以得到移动设备上的设备ID或设备出厂号等。某种特定的运算是已知的,并且固定的,对于任何移动设备计算设备因子时就采用同样的运算。例如,该特定的运算是移动设备上的设备ID异或后与设备出厂号串联等。一般来说,该运算需要具有输入输出一对一性,即对于不同的输入,必然会产生不同的输出。
[0076] 步骤S140、基于所述用户因子、随机因子、设备因子,经私钥生成算法,生成私钥, 其中私钥生成算法是保证用户因子、随机因子、设备因子中任何一项不同,私钥都不同的算法。[〇〇77]私钥生成算法具有输入输出一对一性,即保证用户因子、随机因子、设备因子中任何一项不同,私钥都不同。已知许多算法具有输入输出一对一性,可以用作私钥生成算法。 这一部分在本文中不赘述。
[0078] 优选地,该私钥生成算法包括迭代算法,用户因子、设备因子、随机因子经过迭代算法,不需要将三个因子组装成完整的用户签名,从完整的用户签名难以分析出迭代前的三个因子,极大提高了私钥的安全性。[〇〇79] 在步骤S140之前,在一个实施例中,该方法还包括:步骤S135、获取用于对私钥进行加扰的干扰因子。
[0080]在将私钥发送到分布式密钥机之前对私钥进行加扰的作用在于,防止私钥被第三方拦截而泄露。在加扰的情况下,技术私钥被第三方拦截,由于第三方不知道加扰用的干扰因子,仍然无法恢复私钥。即,采用干扰机制,每一个数字签名,都需要移动端、后台密钥机共同作用完成,私钥彼此屏蔽,过程彼此牵制,缺一不可,大大提高了私钥的安全性。而分布式密钥机只能消除签名干扰成分,即解扰,不能生成用户签名,确保用户签名生成的私密性。[0081 ] 在一个实施例中,步骤S135包括:
[0082]接收分布式密钥机发送的干扰公钥;
[0083]根据所述干扰公钥确定干扰因子。
[0084]分布式密钥机中设置有干扰公钥、干扰私钥对。干扰公钥、干扰私钥对可以对每次私钥的生成和验证都相同,但优选是对每次私钥的生成和验证采用不同的干扰公钥、干扰私钥对。分布式密钥机将干扰公钥发送给移动设备盾插件,供移动设备盾插件据此确定干扰因子。分布式密钥机在本地对干扰私钥进行安全存储。在移动设备盾插件用干扰因子对生成的私钥加扰后发回分布式密钥机后,分布式密钥机用干扰私钥解扰。由于干扰私钥与干扰公钥是对应的,分布式密钥机可以解扰开生成的私钥,而其他设备即使拦截到该私钥, 也因为缺少干扰私钥,无法对其解扰。
[0085]干扰因子是用于对生成的私钥进行加扰的数等。根据所述干扰公钥确定干扰因子往往是通过预定干扰因子产生算法。该干扰因子产生算法具有输入输出一对一性,即对于不同的输入产生不同的输出。已知许多算法具有输入输出一对一性,可以作为干扰因子产生算法,故不赘述。[〇〇86]在步骤S140之后,所述方法还包括:步骤S145、利用获取的干扰因子对生成的私钥进行加扰,生成加扰后的数字签名。
[0087]加扰属于已有技术。有许多加扰算法可被用来利用获取的干扰因子对生成的私钥进行加扰,生成加扰后的数字签名,故不赘述。[〇〇88]如图2所示,在一个实施例中,在步骤S145之后,所述方法包括:步骤S150、向分布式密钥机发送加扰后的数字签名。
[0089]向分布式密钥机发送加扰后的数字签名的目的是使分布式密钥机能够利用干扰私钥解扰加扰后的数字签名,从而将恢复的私钥发送给认证平台登记,以便以后验证待验证私钥。
[0090]如图3所示,在一个实施例中,根据本发明一个实施例的在分布式密钥机侧的一种私钥处理方法包括:
[0091]步骤S210、从移动设备盾插件接收移动设备盾插件生成的私钥,其中所述私钥在从移动设备盾插件端基于用户为生成私钥输入的口令的特定于用户的用户因子、随机因子、用户输入口令的移动设备上的特定于移动设备的设备因子,经私钥生成算法生成,并利用获取的用于对私钥进行加扰的干扰因子进行加扰;[〇〇92]步骤S220、对所述私钥进行解扰;[〇〇93]步骤S230、将解扰后的私钥发送给认证平台。[〇〇94]私钥处理方法是指对从移动设备盾插件接收到的加扰后的数字签名进行解扰等处理,并发送给认证平台作为用户登记的私钥的方法。[〇〇95]下面对这些步骤进行详细描述。
[0096]步骤S210、从移动设备盾插件接收移动设备盾插件生成的私钥,其中所述私钥在从移动设备盾插件端基于用户为生成私钥输入的口令的特定于用户的用户因子、随机因子、用户输入口令的移动设备上的特定于移动设备的设备因子,经私钥生成算法生成,并利用获取的用于对私钥进行加扰的干扰因子进行加扰。
[0097]所述私钥在从移动设备盾插件端基于用户为生成私钥输入的口令的特定于用户的用户因子、随机因子、用户输入口令的移动设备上的特定于移动设备的设备因子,经私钥生成算法生成,并利用获取的用于对私钥进行加扰的干扰因子进行加扰的过程前面结合步骤S110-S145已经描述,因此不再赘述。[〇〇98]步骤S220、对所述私钥进行解扰。
[0099]在一个实施例中,在干扰因子是基于发送到移动设备盾插件的干扰公钥确定出的情况下,所述对所述私钥进行解扰的步骤包括:用干扰私钥对私钥进行解扰。
[0100]如前所述,分布式密钥机中设置有干扰公钥、干扰私钥对。分布式密钥机将干扰公钥发送给移动设备盾插件,供移动设备盾插件据此确定干扰因子。分布式密钥机保留干扰私钥。在移动设备盾插件用干扰因子对生成的私钥加扰后发回分布式密钥机后,分布式密钥机用干扰私钥解扰。由于干扰私钥与干扰公钥是对应的,分布式密钥机可以解扰开生成的私钥,而其他设备即使拦截到该私钥,也因为缺少干扰私钥,无法对其解扰。
[0101]步骤S230、将解扰后的私钥发送给认证平台。
[0102]将解扰后的私钥发送给认证平台的目的是作为用户在认证平台登记的私钥。当以后用户需要使用移动设备盾插件所绑定的应用(如云支付应用)进行某个操作时,按后述方式生成待验证私钥,发送到认证平台与生成私钥时用户登记在认证平台的私钥进行比对。 如一致则通过验证。
[0103]参见图4,为本申请实施例提供的一种对云支付的限制密钥进行加密的装置4,所述装置包括:
[0104]用于获取基于非对称加密算法计算得到的公钥的装置401(以下简称公钥获取装置401);[〇1〇5]用于采用所述公钥对云支付的限制密钥进行加密的装置402(以下简称加密装置402);
[0106]其中,与所述公钥对应的私钥是基于用户因子、随机因子、设备因子,经密钥生成算法生成的,其中,所述用户因子是用户为解密所述限制密钥输入的口令的、特定于用户的因子,所述设备因子是用户输入口令的移动设备上的、特定于移动设备的因子;所述密钥生成算法是保证用户因子、随机因子、设备因子中任何一项不同,所生成的私钥都不同的算法。
[0107]参见图5,为本申请实施例提供的一种对云支付的限制密钥进行解密的装置5,所述装置包括:
[0108]用于基于非对称加密算法计算公钥和私钥的装置501 (以下简称密钥生成装置 501),其中,所述私钥是基于用户因子、随机因子、设备因子,经密钥生成算法生成的,其中, 所述用户因子是用户为解密所述限制密钥输入的口令的、特定于用户的因子,所述设备因子是用户输入口令的移动设备上的、特定于移动设备的因子;所述密钥生成算法是保证用户因子、随机因子、设备因子中任何一项不同,所生成的私钥都不同的算法;以及,
[0109]用于基于分段倍点运算的算法,采用所述私钥对已用公钥加密的限制密钥进行解密的装置502(以下简称解密装置502)。
[0110]其中,装置501可以通过如前描述的移动设备盾插件实现。移动设备盾插件与分布式密钥机、以及认证平台,共同完成私钥的生成及验证。移动设备盾插件位于用户的移动设备上,例如绑定移动设备的应用中。而分布式密钥机位于后台服务器,例如机房中。二者分布式协同运算,为用户提供私钥功能。移动设备盾插件作为安全插件嵌入移动设备应用程序中,供移动设备应用程序调用。移动设备盾插件协同分布式密钥机完成密钥运算。分布式密钥机可以是专门的密码设备,部署在服务器端的专用设备,作为辅助设备协同移动设备盾插件实现分布式密钥运算,辅助保障签名过程的安全。[〇111]以用户移动设备(如手机)上的云支付应用为例。用户在开通移动设备上的云支付应用(例如通过下载云支付应用(例如云闪付app)安装到移动设备上)时,云支付应用绑定有一个移动设备盾插件,该插件与U盾不同,它不是单独存在,而是绑定在安装的云支付应用中的,用于在私钥生成和验证中与分布式密钥机协同运算,完成私钥的生成和验证。安装云支付应用后,用户需要完成注册。在注册时输入用户口令。用户要记住该口令,并且在以后每次通过云支付应用办理业务(例如转账)时要输入相同的口令。这时,移动设备盾插件根据基于该用户口令生成的用户因子、获取到的随机因子和特定于移动设备的设备因子, 生成私钥,并利用加扰因子加扰后发给后台的分布式密钥机。分布式密钥机对该私钥解扰后发给认证平台登记。当用户以后需要通过该云支付应用办理业务(如转账)时,需要完成私钥的验证过程。验证用户才能办理该业务,否则交易不安全。这时,用户需要输入自己在注册时输入的用户口令。移动设备盾插件基于该用户口令通过与在注册时基于用户口令得到用户因子相同的算法得到与注册时相同的用户因子。用户在注册时生成私钥的过程中获取的随机因子是固定保存在用户的移动设备中的,因此,移动设备盾插件也可以获取到存储的生产私钥的过程中使用的随机因子。设备因子是特定于移动设备的,也可以由移动设备盾插件获取到。此时获取到的设备因子也是与生成私钥时相同的。因此,此时移动设备盾插件基于此时的用户因子、随机因子、设备因子生成的待验证私钥应该也是与生成私钥时生成的私钥相同的。移动设备盾插件将该待验证私钥加扰后发到分布式密钥机,由分布式密钥机解扰后发到认证平台,与用户注册时生成且登记在认证平台的私钥进行比对验证。 从理论上,该待验证私钥与用户注册时生成且登记在认证平台的私钥应该相同。如不相同, 则说明用户输入了错误的用户口令、用户使用的不是一开始注册所用的移动设备、或者生成的私钥或待认证私钥在传输的过程中遭到了非法篡改。由于本发明实施例中,基于用户因子、设备因子、随机因子三个互不相关因子生成私钥,这三个因子缺一不可,用户因子不作存储而由用户掌握,设备因子是移动设备特有的,这三个因子互相牵制,在验证私钥时这三个因子必须完全与生成私钥时的三个因子一致,才能验证通过,使得即使在用户口令泄露等情况下其他人也很难仅凭用户口令验证成功,极大提高了私钥安全性。而且,私钥采用干扰保护机制,即通过移动设备盾插件对私钥进行加扰,后台的分布式密钥机进行解扰才能恢复私钥。只有分布式密钥机才能解扰。如果加扰的私钥被任何第三方拦截,第三方都无法解扰恢复私钥而分布式密钥机只能消除签名干扰成分,即解扰,不能生成用户签名,因此分布式密钥机端的管理者也无法私自篡改用户签名,这种移动设备盾插件和分布式密钥机相互牵制的方式确保了用户签名生成的私密性。
[0112]优选的,装置501还包括:
[0113]用于获取用于对私钥进行加扰的干扰因子的装置503(以下简称干扰因子获取装置503);以及,
[0114]用于利用获取的干扰因子对生成的私钥进行加扰,生成加扰后的数字签名的装置 504(以下简称加扰装置504)。
[0115]优选的,装置5还包括:
[0116]用于向分布式密钥机发送加扰后的数字签名的装置505(以下简称发送装置505)。
[0117]优选的,所述用于基于非对称加密算法计算公钥和私钥的装置501用于:
[0118]获取用户输入的口令;
[0119]将获取的口令输入用户因子生成算法,得到特定于用户的用户因子,其中所述用户因子生成算法是保证输入的口令不同,产生的用户因子都不同的算法。
[0120]如前所述,用户输入的口令是用户在注册时输入用户口令。一般,在用户注册时, 与移动设备盾插件所绑定的应用的界面会提示用户输入用户口令。当用户输入该口令后, 移动设备盾插件就获取了该口令。用户要记住该口令,并且在以后每次通过云支付应用办理业务(例如转账)时要输入相同的口令。
[0121]所述用户因子生成算法是保证输入的口令不同,产生的用户因子都不同的算法。 而且,在验证待验证私钥时,产生待验证私钥也要采用同样的用户因子生成算法生成验证时的用户因子。
[0122]用户因子是已有概念,是特定于用户的一个因子,例如随用户不同而不同的一个数。用户因子生成算法的特点是输入的口令与输出的值(用户因子)都唯一对应性,即输入的口令不同,产生的用户因子都不同。目前已知许多算法可用于用户因子生成算法,故不赘述。
[0123]优选的,所述用于基于非对称加密算法计算公钥和私钥的装置501用于:
[0124]接收分布式密钥机发送的硬件随机数;
[0125]在本地产生本地随机数;
[0126]将所述硬件随机数与所述本地随机数合成,得到随机因子。
[0127]该实施例中的随机因子分为两部分。一部分是硬件随机数,是从分布式密钥机接收来的。另一部分是本地随机数,是移动设备盾插件本地产生的。该随机因子由两部分合成的好处是,由于该随机因子一部分来自于分布式密钥机,即使移动设备盾插件受到攻击,攻击者也仅仅是能掌握本地产生的随机数;而该随机因子还有一部分来自本地,即使分布式密钥机受到攻击,也仅仅是其中来自分布式密钥机的部分遭到破译,仍然无法窃取整个随机因子,提高了私钥生成的安全性。
[0128]优选的,所述用于获取用于对私钥进行加扰的干扰因子的装置503用于:
[0129]接收分布式密钥机发送的干扰公钥;
[0130]根据所述干扰公钥确定干扰因子。[〇131]分布式密钥机中设置有干扰公钥、干扰私钥对。干扰公钥、干扰私钥对可以对每次私钥的生成和验证都相同,但优选是对每次私钥的生成和验证采用不同的干扰公钥、干扰私钥对。分布式密钥机将干扰公钥发送给移动设备盾插件,供移动设备盾插件据此确定干扰因子。分布式密钥机在本地对干扰私钥进行安全存储。在移动设备盾插件用干扰因子对生成的私钥加扰后发回分布式密钥机后,分布式密钥机用干扰私钥解扰。由于干扰私钥与干扰公钥是对应的,分布式密钥机可以解扰开生成的私钥,而其他设备即使拦截到该私钥, 也因为缺少干扰私钥,无法对其解扰。
[0132]干扰因子是用于对生成的私钥进行加扰的数等。根据所述干扰公钥确定干扰因子往往是通过预定干扰因子产生算法。该干扰因子产生算法具有输入输出一对一性,即对于不同的输入产生不同的输出。已知许多算法具有输入输出一对一性,可以作为干扰因子产生算法,故不赘述。
[0133]参见图6,为本申请实施例提供的一种对云支付的限制密钥进行加解密的系统6, 所述系统包括:
[0134]用于基于非对称加密算法计算得到私钥和公钥的,以及,当用户进行云支付操作时,基于分段倍点运算的算法,采用所述私钥对已采用所述公钥加密的限制密钥进行解密的移动设备601,其中,所述私钥是基于用户因子、随机因子、设备因子,经密钥生成算法生成的,其中,所述用户因子是用户为解密所述限制密钥输入的口令的、特定于用户的因子, 所述设备因子是用户输入口令的移动设备上的、特定于移动设备的因子;所述密钥生成算法是保证用户因子、随机因子、设备因子中任何一项不同,所生成的私钥都不同的算法
[0135]用于获取所述公钥,并利用所述公钥对限制密钥进行加密的云端设备602。
[0136]其中,移动设备601可以通过如前描述的移动设备盾插件实现公钥和私钥的计算和保存。移动设备盾插件与分布式密钥机、以及认证平台,共同完成私钥的生成及验证。移动设备盾插件位于用户的移动设备上,例如绑定移动设备的应用中。而分布式密钥机位于后台服务器,例如机房中。二者分布式协同运算,为用户提供私钥功能。移动设备盾插件作为安全插件嵌入移动设备应用程序中,供移动设备应用程序调用。移动设备盾插件协同分布式密钥机完成密钥运算。分布式密钥机可以是专门的密码设备,部署在服务器端的专用设备,作为辅助设备协同移动设备盾插件实现分布式密钥运算,辅助保障签名过程的安全。
[0137]以用户移动设备(如手机)上的云支付应用为例。用户在开通移动设备上的云支付应用(例如通过下载云支付应用(例如云闪付app)安装到移动设备上)时,云支付应用绑定有一个移动设备盾插件,该插件与U盾不同,它不是单独存在,而是绑定在安装的云支付应用中的,用于在私钥生成和验证中与分布式密钥机协同运算,完成私钥的生成和验证。安装云支付应用后,用户需要完成注册。在注册时输入用户口令。用户要记住该口令,并且在以后每次通过云支付应用办理业务(例如转账)时要输入相同的口令。这时,移动设备盾插件根据基于该用户口令生成的用户因子、获取到的随机因子和特定于移动设备的设备因子, 生成私钥,并利用加扰因子加扰后发给后台的分布式密钥机。分布式密钥机对该私钥解扰后发给认证平台登记。当用户以后需要通过该云支付应用办理业务(如转账)时,需要完成私钥的验证过程。验证用户才能办理该业务,否则交易不安全。这时,用户需要输入自己在注册时输入的用户口令。移动设备盾插件基于该用户口令通过与在注册时基于用户口令得到用户因子相同的算法得到与注册时相同的用户因子。用户在注册时生成私钥的过程中获取的随机因子是固定保存在用户的移动设备中的,因此,移动设备盾插件也可以获取到存储的生产私钥的过程中使用的随机因子。设备因子是特定于移动设备的,也可以由移动设备盾插件获取到。此时获取到的设备因子也是与生成私钥时相同的。因此,此时移动设备盾插件基于此时的用户因子、随机因子、设备因子生成的待验证私钥应该也是与生成私钥时生成的私钥相同的。移动设备盾插件将该待验证私钥加扰后发到分布式密钥机,由分布式密钥机解扰后发到认证平台,与用户注册时生成且登记在认证平台的私钥进行比对验证。 从理论上,该待验证私钥与用户注册时生成且登记在认证平台的私钥应该相同。如不相同, 则说明用户输入了错误的用户口令、用户使用的不是一开始注册所用的移动设备、或者生成的私钥或待认证私钥在传输的过程中遭到了非法篡改。由于本发明实施例中,基于用户因子、设备因子、随机因子三个互不相关因子生成私钥,这三个因子缺一不可,用户因子不作存储而由用户掌握,设备因子是移动设备特有的,这三个因子互相牵制,在验证私钥时这三个因子必须完全与生成私钥时的三个因子一致,才能验证通过,使得即使在用户口令泄露等情况下其他人也很难仅凭用户口令验证成功,极大提高了私钥安全性。而且,私钥采用干扰保护机制,即通过移动设备盾插件对私钥进行加扰,后台的分布式密钥机进行解扰才能恢复私钥。只有分布式密钥机才能解扰。如果加扰的私钥被任何第三方拦截,第三方都无法解扰恢复私钥而分布式密钥机只能消除签名干扰成分,即解扰,不能生成用户签名,因此分布式密钥机端的管理者也无法私自篡改用户签名,这种移动设备盾插件和分布式密钥机相互牵制的方式确保了用户签名生成的私密性。
[0138]优选的,所述移动设备601用于:获取用于对私钥进行加扰的干扰因子;以及,利用获取的干扰因子对生成的私钥进行加扰,生成加扰后的数字签名。
[0139]优选的,所述移动设备601用于:向分布式密钥机发送加扰后的数字签名。
[0140]优选的,所述移动设备601用于:
[0141]获取用户输入的口令;
[0142]将获取的口令输入用户因子生成算法,得到特定于用户的用户因子,其中所述用户因子生成算法是保证输入的口令不同,产生的用户因子都不同的算法。
[0143]如前所述,用户输入的口令是用户在注册时输入用户口令。一般,在用户注册时, 与移动设备盾插件所绑定的应用的界面会提示用户输入用户口令。当用户输入该口令后, 移动设备盾插件就获取了该口令。用户要记住该口令,并且在以后每次通过云支付应用办理业务(例如转账)时要输入相同的口令。
[0144]所述用户因子生成算法是保证输入的口令不同,产生的用户因子都不同的算法。而且,在验证待验证私钥时,产生待验证私钥也要采用同样的用户因子生成算法生成验证时的用户因子。
[0145]用户因子是已有概念,是特定于用户的一个因子,例如随用户不同而不同的一个数。用户因子生成算法的特点是输入的口令与输出的值(用户因子)都唯一对应性,即输入的口令不同,产生的用户因子都不同。目前已知许多算法可用于用户因子生成算法,故不赘述。
[0146]优选的,所述移动设备601用于:
[0147]接收分布式密钥机发送的硬件随机数;
[0148]在本地产生本地随机数;
[0149]将所述硬件随机数与所述本地随机数合成,得到随机因子。[〇15〇]该实施例中的随机因子分为两部分。一部分是硬件随机数,是从分布式密钥机接收来的。另一部分是本地随机数,是移动设备盾插件本地产生的。该随机因子由两部分合成的好处是,由于该随机因子一部分来自于分布式密钥机,即使移动设备盾插件受到攻击,攻击者也仅仅是能掌握本地产生的随机数;而该随机因子还有一部分来自本地,即使分布式密钥机受到攻击,也仅仅是其中来自分布式密钥机的部分遭到破译,仍然无法窃取整个随机因子,提高了私钥生成的安全性。[〇151]优选的,所述移动设备601用于:
[0152]接收分布式密钥机发送的干扰公钥;
[0153]根据所述干扰公钥确定干扰因子。
[0154]分布式密钥机中设置有干扰公钥、干扰私钥对。干扰公钥、干扰私钥对可以对每次私钥的生成和验证都相同,但优选是对每次私钥的生成和验证采用不同的干扰公钥、干扰私钥对。分布式密钥机将干扰公钥发送给移动设备盾插件,供移动设备盾插件据此确定干扰因子。分布式密钥机在本地对干扰私钥进行安全存储。在移动设备盾插件用干扰因子对生成的私钥加扰后发回分布式密钥机后,分布式密钥机用干扰私钥解扰。由于干扰私钥与干扰公钥是对应的,分布式密钥机可以解扰开生成的私钥,而其他设备即使拦截到该私钥, 也因为缺少干扰私钥,无法对其解扰。
[0155]干扰因子是用于对生成的数字签名进行加扰的数等。根据所述干扰公钥确定干扰因子往往是通过预定干扰因子产生算法。该干扰因子产生算法具有输入输出一对一性,即对于不同的输入产生不同的输出。已知许多算法具有输入输出一对一性,可以作为干扰因子产生算法,故不赘述。
[0156]其中,根据本发明的方法通过包含于计算机设备中的装置来实现。所述计算机设备包括一种能够按照事先设定或存储的指令,自动进行数值计算和/或信息处理的电子设备,其硬件包括但不限于微处理器、专用集成电路(ASIC)、可编程门阵列(FPGA)、数字处理器(DSP)、嵌入式设备等。所述计算机设备包括网络设备和/或用户设备。其中,所述网络设备包括但不限于单个网络服务器、多个网络服务器组成的服务器组或基于云计算(Cloud Comput ing)的由大量主机或网络服务器构成的云,其中,云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个超级虚拟计算机。所述用户设备包括但不限于任何一种可与用户通过键盘、鼠标、遥控器、触摸板、或声控设备等方式进行人机交互的电子产品, 例如,个人计算机、平板电脑、智能手机、PDA、游戏机、或IPTV等。其中,所述用户设备及网络设备所处的网络包括但不限于互联网、广域网、城域网、局域网、VPN网络等。
[0157]需要说明的是,所述用户设备、网络设备以及网络仅为举例,其他现有的或今后可能出现的用户设备、网络设备以及网络如可适用于本发明,也应包含在本发明保护范围以内,并以引用方式包含于此。
[0158]本发明的软件程序可以通过处理器执行以实现上文所述步骤或功能。同样地,本发明的软件程序(包括相关的数据结构)可以被存储到计算机可读记录介质中,例如,RAM存储器,磁或光驱动器或软磁盘及类似设备。另外,本发明的一些步骤或功能可采用硬件来实现,例如,作为与处理器配合从而执行各个功能或步骤的电路。
[0159]另外,本发明的一部分可被应用为计算机程序产品,例如计算机程序指令,当其被计算机执行时,通过该计算机的操作,可以调用或提供根据本发明的方法和/或技术方案。 而调用本发明的方法的程序指令,可能被存储在固定的或可移动的记录介质中,和/或通过广播或其他信号承载媒体中的数据流而被传输,和/或被存储在根据所述程序指令运行的计算机设备的工作存储器中。在此,根据本发明的一个实施例包括一个装置,该装置包括用于存储计算机程序指令的存储器和用于执行程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发该装置运行基于前述根据本发明的多个实施例的方法和/或技术方案。[〇16〇]对于本领域技术人员而言,显然本发明不限于上述示范性实施例的细节,而且在不背离本发明的精神或基本特征的情况下,能够以其他的具体形式实现本发明。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本发明的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本发明内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此夕卜,显然“包括”一词不排除其他单元或步骤,单数不排除复数。系统权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。[〇161]虽然前面特别示出并且描述了示例性实施例,但是本领域技术人员将会理解的是,在不背离权利要求书的精神和范围的情况下,在其形式和细节方面可以有所变化。这里所寻求的保护在所附权利要求书中做了阐述。
【主权项】
1.一种对云支付的限制密钥进行加密的方法,其特征在于,所述方法包括:获取基于非对称加密算法计算得到的公钥;采用所述公钥对云支付的限制密钥进行加密;其中,与所述公钥对应的私钥是基于用户因子、随机因子、设备因子,经密钥生成算法 生成的,其中,所述用户因子是用户为解密所述限制密钥输入的口令的、特定于用户的因 子,所述设备因子是用户输入口令的移动设备上的、特定于移动设备的因子;所述密钥生成 算法是保证用户因子、随机因子、设备因子中任何一项不同,所生成的私钥都不同的算法。2.—种对云支付的限制密钥进行解密的方法,其特征在于,所述方法包括:基于非对称加密算法计算得到私钥和公钥,其中,所述私钥是基于用户因子、随机因 子、设备因子,经密钥生成算法生成的,其中,所述用户因子是用户为解密所述限制密钥输 入的口令的、特定于用户的因子,所述设备因子是用户输入口令的移动设备上的、特定于移 动设备的因子;所述密钥生成算法是保证用户因子、随机因子、设备因子中任何一项不同, 所生成的私钥都不同的算法;基于分段倍点运算的算法,采用所述私钥对已采用所述公钥加密的限制密钥进行解I_Lj 〇3.根据权利要求2所述的方法,其特征在于,在经密钥生成算法生成私钥之前,所述方 法还包括:获取用于对私钥进行加扰的干扰因子;在经密钥生成算法生成私钥的步骤之后,所述方法还包括:利用获取的干扰因子对生 成的私钥进行加扰,生成加扰后的数字签名。4.根据权利要求3所述的方法,其特征在于,在生成加扰后的数字签名之后,所述方法 还包括:向分布式密钥机发送加扰后的数字签名。5.根据权利要求4所述的方法,其特征在于,通过以下步骤得到所述用户因子:获取用户输入的口令;将获取的口令输入用户因子生成算法,得到特定于用户的用户因子,其中所述用户因 子生成算法是保证输入的口令不同,产生的用户因子都不同的算法。6.根据权利要求4所述的方法,其特征在于,通过以下步骤获取所述随机因子:接收分布式密钥机发送的硬件随机数;在本地产生本地随机数;将所述硬件随机数与所述本地随机数合成,得到随机因子。7.根据权利要求5所述的方法,其特征在于,所述获取用于对私钥进行加扰的干扰因子 的步骤包括:接收分布式密钥机发送的干扰公钥;根据所述干扰公钥确定干扰因子。8.—种对云支付的限制密钥进行加解密的方法,其特征在于,所述方法包括:在移动设备端基于非对称加密算法计算得到私钥和公钥,其中,所述私钥是基于用户 因子、随机因子、设备因子,经密钥生成算法生成的,其中,所述用户因子是用户为解密所述 限制密钥输入的口令的、特定于用户的因子,所述设备因子是用户输入口令的移动设备上 的、特定于移动设备的因子;所述密钥生成算法是保证用户因子、随机因子、设备因子中任何一项不同,所生成的私钥都不同的算法;在云端获取所述公钥,并利用所述公钥对限制密钥进行加密;当用户进行云支付操作时,在移动设备端,基于分段倍点运算的算法,采用所述私钥对 已采用所述公钥加密的限制密钥进行解密。9.根据权利要求8所述的方法,其特征在于,在经密钥生成算法生成私钥之前,所述方 法还包括:获取用于对私钥进行加扰的干扰因子;在经密钥生成算法生成私钥的步骤之后,所述方法还包括:利用获取的干扰因子对生 成的私钥进行加扰,生成加扰后的数字签名。10.根据权利要求9所述的方法,其特征在于,在生成加扰后的数字签名之后,所述方法 还包括:向分布式密钥机发送加扰后的数字签名。11.根据权利要求10所述的方法,其特征在于,通过以下步骤得到所述用户因子:获取用户输入的口令;将获取的口令输入用户因子生成算法,得到特定于用户的用户因子,其中所述用户因 子生成算法是保证输入的口令不同,产生的用户因子都不同的算法。12.根据权利要求8所述的方法,其特征在于,通过以下步骤获取所述随机因子:接收分布式密钥机发送的硬件随机数;在本地产生本地随机数;将所述硬件随机数与所述本地随机数合成,得到随机因子。13.根据权利要求9所述的方法,其特征在于,所述获取用于对私钥进行加扰的干扰因 子的步骤包括:接收分布式密钥机发送的干扰公钥;根据所述干扰公钥确定干扰因子。14.一种对云支付的限制密钥进行加密的装置,其特征在于,所述装置包括:用于获取基于非对称加密算法计算得到的公钥的装置;用于采用所述公钥对云支付的限制密钥进行加密的装置;其中,与所述公钥对应的私钥是基于用户因子、随机因子、设备因子,经密钥生成算法 生成的,其中,所述用户因子是用户为解密所述限制密钥输入的口令的、特定于用户的因 子,所述设备因子是用户输入口令的移动设备上的、特定于移动设备的因子;所述密钥生成 算法是保证用户因子、随机因子、设备因子中任何一项不同,所生成的私钥都不同的算法。15.—种对云支付的限制密钥进行解密的装置,其特征在于,所述装置包括:用于基于非对称加密算法计算公钥和私钥的装置,其中,所述私钥是基于用户因子、随 机因子、设备因子,经密钥生成算法生成的,其中,所述用户因子是用户为解密所述限制密 钥输入的口令的、特定于用户的因子,所述设备因子是用户输入口令的移动设备上的、特定 于移动设备的因子;所述密钥生成算法是保证用户因子、随机因子、设备因子中任何一项不 同,所生成的私钥都不同的算法;以及,用于基于分段倍点运算的算法,采用所述私钥对已用公钥加密的限制密钥进行解密的装置。16.根据权利要求15所述的装置,其特征在于,所述装置还包括:用于获取用于对私钥进行加扰的干扰因子的装置;以及,用于利用获取的干扰因子对生成的私钥进行加扰,生成加扰后的数字签名的装置。17.根据权利要求16所述的装置,其特征在于,所述装置还包括:用于向分布式密钥机发送加扰后的数字签名的装置。18.根据权利要求15所述的装置,其特征在于,所述用于基于非对称加密算法计算公钥 和私钥的装置用于:获取用户输入的口令;将获取的口令输入用户因子生成算法,得到特定于用户的用户因子,其中所述用户因 子生成算法是保证输入的口令不同,产生的用户因子都不同的算法。19.根据权利要求18所述的装置,其特征在于,所述用于基于非对称加密算法计算公钥 和私钥的装置用于:接收分布式密钥机发送的硬件随机数;在本地产生本地随机数;将所述硬件随机数与所述本地随机数合成,得到随机因子。20.根据权利要求16所述的装置,其特征在于,所述用于获取用于对私钥进行加扰的干 扰因子的装置用于:接收分布式密钥机发送的干扰公钥;根据所述干扰公钥确定干扰因子。21.—种对云支付的限制密钥进行加解密的系统,其特征在于,所述系统包括:用于基于非对称加密算法计算得到私钥和公钥的,以及,当用户进行云支付操作时,基于分段倍点运算的算法,采用所述私钥对已采用所述公钥加密的限制密钥进行解密的移动 设备,其中,所述私钥是基于用户因子、随机因子、设备因子,经密钥生成算法生成的,其中, 所述用户因子是用户为解密所述限制密钥输入的口令的、特定于用户的因子,所述设备因 子是用户输入口令的移动设备上的、特定于移动设备的因子;所述密钥生成算法是保证用 户因子、随机因子、设备因子中任何一项不同,所生成的私钥都不同的算法 用于获取所述公钥,并利用所述公钥对限制密钥进行加密的云端设备。22.根据权利要求21所述的系统,其特征在于,所述移动设备用于:获取用于对私钥进 行加扰的干扰因子;以及,利用获取的干扰因子对生成的私钥进行加扰,生成加扰后的数字 签名。23.根据权利要求22所述的方法,其特征在于,所述移动设备用于:向分布式密钥机发 送加扰后的数字签名。24.根据权利要求23所述的方法,其特征在于,所述移动设备用于:获取用户输入的口令;将获取的口令输入用户因子生成算法,得到特定于用户的用户因子,其中所述用户因 子生成算法是保证输入的口令不同,产生的用户因子都不同的算法。25.根据权利要求22所述的方法,其特征在于,所述移动设备用于:接收分布式密钥机发送的硬件随机数;在本地产生本地随机数;将所述硬件随机数与所述本地随机数合成,得到随机因子。26.根据权利要求21所述的方法,其特征在于,所述移动设备用于: 接收分布式密钥机发送的干扰公钥;根据所述干扰公钥确定干扰因子。
【文档编号】H04L9/08GK105959108SQ201610483731
【公开日】2016年9月21日
【申请日】2016年6月27日
【发明人】吕文华, 宛海加, 刘永
【申请人】收付宝科技有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1