多设备运行业务系统的方法及装置与流程

文档序号:18941817发布日期:2019-10-23 01:13阅读:214来源:国知局
多设备运行业务系统的方法及装置与流程

本发明涉及移动安全领域,具体而言,涉及一种多设备运行业务系统的方法及装置。



背景技术:

目前,现有技术的认证和多登录设备的安全管理,都是基于远程认证口令/短信等方式。当有新设备登录(如判断设备唯一id等信息)时,现有技术会进行额外的口令+短信或其它方式进行二次验证,验证成功方可登录。

然而,在本地认证的条件下,如比特币的场景,用户导入私钥文件则实现本地登录,并没有中心化的认证服务器。如果私钥丢失,攻击者在新设备登录并进行转账等操作,受害者得不到感知。现有技术缺乏在去中心化系统下方便的进行多设备登录管理和认证、检测的机制。或者,在一些区块链架构、或其它的本地认证的架构性,如使用fido协议的,都会在本地进行认证,使用本地终端中存储关键私钥,但在私钥泄露后,如何检测泄露并进行设备管控是个难题。

针对现有技术中,在本地认证的条件下,若私钥泄露或者丢失,如何检测私钥泄露以及进行设备管控的技术问题。目前尚未有有效的解决方案。



技术实现要素:

本发明实施例提供了一种多设备运行业务系统的方法及装置,以至少解决相关技术中在本地认证的条件下,若私钥泄露或者丢失,如何检测私钥泄露以及进行设备管控的问题。

根据本发明的一个实施例,提供了多设备运行业务系统的方法,包括:在第一设备采用业务帐号运行业务系统时,服务器获取第一设备的第一验证信息及服务请求,其中,第一验证信息用于指示第一设备的身份;服务器验证第一验证信息;在服务器验证第一验证信息通过的情况下,服务器执行服务请求。

可选地,所述方法还包括:在所述服务器验证所述第一验证信息未通过的情况下,所述服务器发送验证失败的消息至所述第一设备,并指示所述第一设备恢复第一安全文件,其中,所述第一安全文件中存储有以所述业务帐号运行过所述业务系统的所有设备的设备公开信息;所述服务器接收所述第一设备返回的第二安全文件,其中,所述第二安全文件包含所述第一设备的设备指纹信息、设备公开信息及设备哈希;所述服务器验证所述第一验证信息。

可选地,所述服务器验证所述第一验证信息,包括:所述服务器查找所述第一验证信息是否在设备指纹信息列表中,其中,所述设备指纹信息列表包括以所述业务帐号运行过所述业务系统的所有设备的设备指纹信息,所述第一验证信息包括第一设备的设备指纹信息。

可选地,所述服务器执行所述服务请求之后,还包括:所述服务器将所述第一设备运行所述业务系统的消息通知第二设备,其中,所述第二设备为以所述业务帐号运行所述业务系统的主设备。

可选地,所述服务请求中携带有所述第一设备的设备私钥签名。

可选地,在所述服务器将所述第一设备运行所述业务系统的消息通知第二设备之后,所述方法还包括:获取所述第二设备的操作指令,其中,所述操作指令用于禁用所述第一设备的设备公钥和/或所述业务帐号的帐号公钥。

可选地,所述方法还包括:所述服务器接收第二设备发起的重置命令,其中,所述重置命令用于重置所述服务器存储的第三安全文件,所述第二设备为以所述业务帐号运行所述业务系统的主设备;所述服务器根据所述重置命令删除所述服务器存储的第三安全文件;所述服务器接收所述第二设备发送的第四安全文件,并备份所述第四安全文件,其中,所述第四安全文件包含所述第二设备的设备指纹信息、设备公开信息及设备哈希。

可选地,所述服务器备份所述第四安全文件包括:所述服务器采用随机生成的第一对称加密密钥对所述第四安全文件进行加密,其中,所述第一对称加密密钥存储在所述服务器。

可选地,所述方法还包括:在所述服务器验证所述第一验证信息未通过的情况下,所述服务器发送验证失败的消息至所述第一设备,并指示所述第一设备恢复所述第四安全文件;所述服务器采用所述第二设备的设备公钥加密所述第一对称加密密钥发送到所述第二设备。

根据本发明的另一个实施例,提供了一种多设备运行业务系统的方法,包括:在第一设备采用业务帐号运行业务系统时,所述第一设备向服务器发送第一验证信息及服务请求,其中,所述第一验证信息用于指示所述第一设备的身份;所述第一设备获取所述服务器的反馈信息。

可选地,所述第一设备获取所述服务器的反馈信息包括:在所述第一验证信息验证通过的情况下,所述第一设备获取所述服务器响应所述服务请求后的响应信息。

可选地,所述第一设备获取所述服务器的反馈信息包括:在所述第一验证信息验证未通过的情况下,所述第一设备获取所述服务器发送的验证失败的消息,并恢复第一安全文件,其中,所述第一安全文件中存储有以所述业务帐号运行过所述业务系统的所有设备的设备公开信息;所述第一设备更新所述第一安全文件,生成第二安全文件,其中,所述第二安全文件包含所述第一设备的设备指纹信息、设备公开信息及设备哈希;所述第一设备向所述服务器发送第二安全文件。

可选地,所述第一设备恢复第一安全文件包括:所述第一设备获取备份口令,并根据所述备份口令及预设算法生成第二对称加密密钥,以所述第二对称加密密钥解密所述第一安全文件进行恢复。

根据本发明的又一个实施例,提供了一种多设备运行业务系统的装置,用于服务器中,包括:第一获取单元,用于在第一设备运行业务系统时,获取第一设备的第一验证信息及服务请求,其中,第一验证信息用于指示第一设备的身份;验证单元,用于验证第一验证信息;执行单元,用于在服务器验证第一验证信息通过的情况下,执行服务请求。

根据本发明的又一个实施例,提供了一种多设备运行业务系统的装置,用于第一设备中,包括:发送单元,用于在第一设备采用业务帐号运行业务系统时,向服务器发送第一验证信息及服务请求,其中,所述第一验证信息用于指示所述第一设备的身份;第二获取单元,用于获取所述服务器的反馈信息。

根据本发明的又一个实施例,还提供了一种存储介质,所述存储介质中存储有计算机程序,其中,所述计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。

根据本发明的又一个实施例,还提供了一种电子装置,包括存储器和处理器,所述存储器中存储有计算机程序,所述处理器被设置为运行所述计算机程序以执行上述任一项方法实施例中的步骤。

通过本发明,在第一设备运行业务系统时,服务器获取第一设备的第一验证信息及服务请求,其中,第一验证信息用于指示第一设备的身份;服务器验证第一验证信息;在服务器验证第一验证信息通过的情况下,服务器执行服务请求。即设备在运行业务系统时需发送设备验证信息至服务器,服务器仅在验证设备验证信息通过的情况下,才会执行服务请求,进而解决了相关技术中,在本地认证的条件下,若私钥泄露或者丢失,如何检测私钥泄露以及进行设备管控的技术问题。

附图说明

此处所说明的附图用来提供对本发明的进一步理解,构成本申请的一部分,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:

图1是根据本发明实施例的多设备运行业务系统的方法的流程图;

图2是根据本发明实施例的另一多设备运行业务系统的方法的流程图;

图3是根据本发明实施例的多设备运行业务系统的装置的结构框图;

图4是根据本发明实施例的另一多设备运行业务系统的装置的结构框图。

具体实施方式

下文中将参考附图并结合实施例来详细说明本发明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互组合。

需要说明的是,本发明的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不用于描述特定的顺序或先后次序。

实施例1

在本实施例中提供了一种多设备运行业务系统的方法,图1是根据本发明实施例的多设备运行业务系统的方法流程图,如图1所示,该多设备运行业务系统的方法流程包括如下步骤:

步骤s102,在第一设备采用业务帐号运行业务系统时,服务器获取第一设备的第一验证信息及服务请求,其中,第一验证信息用于指示第一设备的身份。

其中,上述业务系统可以包括但不限于:app,其中app可以包括即时通讯软件等。上述服务请求中可以携带有第一设备的设备私钥签名,进而可以根据设备私钥签名确认服务请求的来源方。

需要说明的是,第一验证信息可以包括:设备指纹信息。

其中,设备指纹由设备私钥对设备哈希进行签名获得,采用的签名算法可以是现有技术中任一签名算法,在此不再赘述;设备哈希可以由设备身份信息经哈希计算获得,设备身份信息可以包括设备唯一信息字符串deviceinfo(如为mac/imei/机器型号/cpu型号/核数/gpu型号/屏幕分辨率/是否越狱/是否支持指纹/是否支持nfc的信息组长的字符串)及业务系统对应此设备环境的唯一标记符号uuid。设备指纹信息用于校验设备的唯一性与正确性,设备指纹存储在安全文件中;而设备hash只在备份时存入安全文件,除此外,其只在需要用时计算产生。

还需要说明的是,上述服务请求可以用于第一设备请求登录服务器,也可以用于请求服务器向第一设备发送验证信息等等,此处不做一一列举。

步骤s104,服务器验证第一验证信息。

步骤s106,在服务器验证第一验证信息通过的情况下,服务器执行服务请求。

需要说明的是,在服务器验证第一验证信息未通过的情况下,服务器发送验证失败的消息至第一设备,并指示第一设备恢复第一安全文件,其中,第一安全文件中存储有以业务帐号运行过业务系统的所有设备的设备公开信息;服务器接收第一设备返回的第二安全文件,其中,第二安全文件包含第一设备的设备指纹信息、设备公开信息及设备哈希;服务器验证第一验证信息。

其中,在任何一台新设备(如第一设备)运行业务系统时,由于其设备指纹信息尚未存入安全文件,则服务器验证其设备验证信息(即第一验证信息)无法通过。服务器发送验证失败的消息至新设备,同时发送安全文件(如第一安全文件)至新设备,指示新设备恢复安全文件。新设备更新安全文件,将自身设备指纹信息、设备公开信息及设备哈希写入安全文件,并加密发送服务器。其中,设备公开信息包括:新设备第一次登录时间、新设备的设备名称、设备描述(如设备的操作系统信息及版本号等)。

其中,第一设备还可以通过从第三设备中将安全文件导入到第一设备以恢复安全文件,其中,第三设备为运行过业务系统的设备。

优选地,服务器验证第一验证信息,包括:服务器查找第一验证信息是否在设备指纹信息列表中,其中,设备指纹信息列表包括以业务帐号运行过业务系统的所有设备的设备指纹信息。

本实施例中,第一设备运行业务系统需携带其设备验证信息,服务器在验证第一设备的验证信息通过的情况下,执行服务请求;而在验证第一设备的验证信息未通过的情况下,服务器发送验证失败的消息至第一设备,并指示其恢复安全文件,并更新安全文件后发送服务器备份。即服务器可通过安全文件管理相关设备,进而解决了相关技术中,在本地认证的条件下,若私钥泄露或者丢失,如何检测私钥泄露以及进行设备管控的技术问题。

需要说明的是,本申请的技术方案基于多设备运行业务系统的方法展开,如无特殊说明,本申请的多设备均为以相同业务账号登录并运行同一业务系统的不同设备。

优选地,服务器执行服务请求之后,上述方法还可以包括:服务器将第一设备运行业务系统的消息通知第二设备,其中,第二设备为以业务帐号运行业务系统的主设备,第一设备运行业务系统的消息包括第一设备的设备公开信息。主设备可以由用户自由设定,包括但不限于常用设备、或首次以相同业务账号运行业务系统的设备。

在此优选方式下,服务器将新设备运行业务系统的消息发送除第一设备外的其他在线设备,包括但不限于主设备,从而使用户获知新设备的设备公开信息,若该设备为未知设备,则说明用户私钥已泄露或丢失。

优选地,在服务器将第一设备运行业务系统的消息通知第二设备之后,方法还包括:获取第二设备的操作指令,其中,操作指令用于禁用第一设备的设备公钥和/或业务帐号的帐号公钥。

在实际应用中,禁用第一设备的设备公钥,则服务器无法对第一设备的设备私钥签名进行验证,而设备私钥签名验证不通过,服务器则不会执行第一设备的服务请求;禁用业务账号的账号公钥,此时相当于直接封禁账号,则以该业务账号登录业务系统的设备都均将失去使用机会,包括主设备。禁用业务账号的账户公钥即相当于放弃该业务账号,实际应用中很少使用。

作为一种可选地实施例,上述方法还可以包括:服务器接收第二设备发起的重置命令,其中,重置命令用于重置服务器存储的第三安全文件,第二设备为以业务帐号运行业务系统的主设备;服务器根据重置命令删除服务器存储的第三安全文件;服务器接收第二设备发送的第四安全文件,并备份第四安全文件。

优选地,本实施例可以对不同的登录设备划分不同的权限,其权限的大小等级划分可依据设备登录顺序或安全文件恢复顺序确定,例如各设备的权限设定为:第一次登录的用户>第一次备份恢复的用户>第二次备份恢复的用户…>第n次备份恢复的用户。例如,可将初次登录的设备设置为主设备,还可根据实际需要,设置备设备,其中备设备的权限可小于或等于主设备,用于主设备丢失时的对各登录设备的管理。由上内容可知,登录越早的设备总能看到其后发生的设备登录变化,而后登录设备则无法得到之前登录设备的设备公开信息。即越早的设备可以对后续的登录设备进行管理和防护。

其中,为了进一步增强对运行设备的管理,服务器采用随机生成的第一对称加密密钥对第四安全文件进行加密,其中,第一对称加密密钥存储在服务器。

服务器对安全文件进行二次加密存储后,当第一设备以业务帐号运行业务系统时,在服务器验证第一验证信息未通过的情况下,服务器发送验证失败的消息至第一设备,并指示第一设备备份第四安全文件;服务器采用第二设备的设备公钥加密第一对称加密密钥发送到第二设备。

在实际应用中,为了防止非常用设备随意登录运行业务系统,用户可通过主设备对服务器存储的安全文件进行重置,服务器根据主设备的重置命令,删除其存储的安全文件;随后主设备更新本地安全文件,并备份新的安全文件到服务器。新的安全文件可仅保留主设备的相关信息(包括:设备指纹信息、设备公开信息及设备哈希),删除其他设备的信息。此时,为了提高新设备恢复安全文件的安全级别,服务器对新的安全文件以随机生成的对称加密密钥进行二次加密存储,并将该对称加密密钥存储在服务器本地。仅在有新设备需要恢复安全文件时,服务器才以主设备的设备公钥加密该对称加密密钥后发送主设备。主设备以其设备私钥解密获得该对称加密密钥后复制到新设备,如此,新设备才能解密并恢复安全文件。

优选地,服务器发送该对称加密密钥至主设备后,即删除其上存储的该对称加密密钥,当新设备更新安全文件并备份至服务器时,服务器再次随机生成新的对称加密密钥,并以新生成的对称加密密钥加密存储新设备发送的更新后的安全文件。即对称加密密钥每使用一次即进行更换,保证了安全文件的安全性,避免因用户备份口令丢失而使未知设备有机会登录运行业务系统。

优选地,为了避免主设备丢失或不在身边,可设置备设备具有发送重置命令的权限,或获取对称加密密钥的权限。在此情况下,当新设备需要恢复安全文件时,服务器将分别使用主设备和备设备的设备公钥加密对称加密密钥推送给主设备或备设备。由主设备或备设备解密获得对称加密密钥后复制到新设备。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本发明各个实施例所述的方法。

实施例2

在本实施例中提供了另一种多设备运行业务系统的方法,图2是根据本发明实施例的多设备运行业务系统的方法流程图,如图2所示,该多设备运行业务系统的方法流程包括如下步骤:

步骤s202,在第一设备采用业务帐号运行业务系统时,第一设备向服务器发送第一验证信息及服务请求,其中,第一验证信息用于指示第一设备的身份。

步骤s204,第一设备获取服务器的反馈信息。

还需要说明的是,第一设备获取服务器的反馈信息,包括:在所述第一验证信息验证通过的情况下,所述第一设备获取所述服务器对所述服务请求的响应信息;在第一验证信息验证未通过的情况下,第一设备获取服务器发送的验证失败的消息,并恢复第一安全文件,其中,第一安全文件中存储有以业务帐号运行过业务系统的所有设备的设备公开信息;第一设备更新第一安全文件,生成第二安全文件,其中,第二安全文件包含所述第一设备的设备指纹信息、设备公开信息及设备哈希;第一设备向服务器发送第二安全文件。

具体地,第一设备恢复第一安全文件,可从服务器下载,或从其他曾以相同业务帐号登录并运行过业务系统的设备复制;第一设备更新第一安全文件,获得第二安全文件,并以备份口令根据预设算法生成第二对称加密密钥对第二安全文件进行加密后发送至服务器备份,服务器存储加密的第二安全文件。由备份口令生成第二对称加密密钥所采用的算法优选kdf算法,如pbkdf2。

优选地,第一安全文件包括:所有曾以相同业务帐号登录并运行过业务系统的设备的设备公开信息、在第一设备之前以相同业务帐号最新登录并运行业务系统的设备的设备指纹信息及设备哈希;第一设备更新第一安全文件,增加第一设备的设备公开信息,并将原有设备指纹信息及设备哈希更新成第一设备的设备指纹信息及设备哈希。即安全文件中优选存储所有设备的设备公开信息,以及最新登录并运行业务系统的设备的设备指纹信息及设备哈希。其中,设备指纹信息以明文形式存储在安全文件的文件头中,同时,设备指纹信息与设备公开信息、设备哈希一并加密存储在安全文件的文件体中。

优选地,第一设备恢复第一安全文件包括:第一设备获取备份口令,并根据备份口令及预设算法生成第二对称加密密钥,以第二对称加密密钥解密第一安全文件进行恢复。

优选地,第一设备恢复安全文件时需输入第一对称加密密钥,此时,第一设备需通过主设备或备设备获取第一对称加密密钥,以第一对称加密密钥解密从服务器获取的安全文件,然后根据备份口令及预设算法生成第二对称加密密钥,以第二对称加密密钥对安全文件进行二次解密进行恢复。

通过上述步骤,在第一设备采用业务帐号运行业务系统时,第一设备向服务器发送第一验证信息及服务请求,其中,第一验证信息用于指示第一设备的身份;在服务器验证第一验证信息通过的情况下,服务请求用于服务器执行,在服务器验证第一验证信息未通过的情况下,第一设备须在本地恢复安全文件,并进行更新,然后将更新后的安全文件上传服务器备份,服务器根据更新后的安全文件再次验证第一验证信息。本实施例中,新设备运行业务系统须通过服务器的验证,从而解决了相关技术中,在本地认证的条件下,若私钥泄露或者丢失,如何检测私钥泄露以及进行设备管控的技术问题。

实施例3

在本实施例中还提供了一种多设备运行业务系统的装置,该装置用于实现上述实施例及优选实施方式,已经进行过说明的不再赘述。如以下所使用的,术语“模块”可以实现预定功能的软件和/或硬件的组合。尽管以下实施例所描述的装置较佳地以软件来实现,但是硬件,或者软件和硬件的组合的实现也是可能并被构想的。

图3是根据本发明实施例的多设备运行业务系统的装置的结构框图,该装置应用于服务器中,如图3所示,该多设备运行业务系统的装置包括:第一获取单元31、验证单元33以及执行单元35。具体详细如下。

第一获取单元31,用于在第一设备采用业务帐号运行业务系统时,获取第一设备的第一验证信息及服务请求,其中,第一验证信息用于指示第一设备的身份。

验证单元33,用于验证第一验证信息。

执行单元35,用于在服务器验证第一验证信息通过的情况下,执行服务请求。

通过上述装置,第一获取单元31在第一设备采用业务帐号运行业务系统时,获取第一设备的第一验证信息及服务请求,其中,第一验证信息用于指示第一设备的身份;验证单元33验证第一验证信息;执行单元35在服务器验证第一验证信息通过的情况下,执行服务请求。即在验证第一设备的验证信息通过的情况下,执行服务请求,进而解决了相关技术中,在本地认证的条件下,若私钥泄露或者丢失,如何检测私钥泄露以及进行设备管控的技术问题。

需要说明的是,上述各个模块是可以通过软件或硬件来实现的,对于后者,可以通过以下方式实现,但不限于此:上述模块均位于同一处理器中;或者,上述各个模块以任意组合的形式分别位于不同的处理器中。

实施例4

图4是根据本发明实施例的多设备运行业务系统的装置的结构框图,该装置应用于服务器中,如图3所示,该多设备运行业务系统的装置包括:发送单元41以及处理单元43。具体详细如下。

发送单元41,用于在第一设备采用业务帐号运行业务系统时,向服务器发送第一验证信息及服务请求,其中,第一验证信息用于指示第一设备的身份.

第二获取单元43,用于获取服务器的反馈信息。

通过上述装置,发送单元41在第一设备采用业务帐号运行业务系统时,第一设备向服务器发送第一验证信息及服务请求,其中,第一验证信息用于指示第一设备的身份,第二获取单元43用于获取服务器的反馈信息。进而解决了相关技术中,在本地认证的条件下,若私钥泄露或者丢失,如何检测私钥泄露以及进行设备管控的技术问题。

实施例5

本发明的实施例还提供了一种存储介质,该存储介质中存储有计算机程序,其中,该计算机程序被设置为运行时执行上述任一项方法实施例中的步骤。

可选地,在本实施例中,上述存储介质可以被设置为存储用于执行以下步骤的计算机程序:

s1,在第一设备采用业务帐号运行业务系统时,获取第一设备的第一验证信息及服务请求,其中,第一验证信息用于指示第一设备的身份;

s2,验证第一验证信息;

s3,在服务器验证第一验证信息通过的情况下,执行服务请求。

可选地,在本实施例中,上述存储介质可以包括但不限于:u盘、只读存储器(read-onlymemory,简称为rom)、随机存取存储器(randomaccessmemory,简称为ram)、移动硬盘、磁碟或者光盘等各种可以存储计算机程序的介质。

本发明的实施例还提供了一种电子装置,包括存储器和处理器,该存储器中存储有计算机程序,该处理器被设置为运行计算机程序以执行上述任一项方法实施例中的步骤。

可选地,上述电子装置还可以包括传输设备以及输入输出设备,其中,该传输设备和上述处理器连接,该输入输出设备和上述处理器连接。

可选地,在本实施例中,上述处理器可以被设置为通过计算机程序执行以下步骤:

s1,在第一设备采用业务帐号运行业务系统时,获取第一设备的第一验证信息及服务请求,其中,第一验证信息用于指示第一设备的身份;

s2,验证第一验证信息;

s3,在服务器验证第一验证信息通过的情况下,执行服务请求。

可选地,本实施例中的具体示例可以参考上述实施例及可选实施方式中所描述的示例,本实施例在此不再赘述。

显然,本领域的技术人员应该明白,上述的本发明的各模块或各步骤可以用通用的计算装置来实现,它们可以集中在单个的计算装置上,或者分布在多个计算装置所组成的网络上,可选地,它们可以用计算装置可执行的程序代码来实现,从而,可以将它们存储在存储装置中由计算装置来执行,并且在某些情况下,可以以不同于此处的顺序执行所示出或描述的步骤,或者将它们分别制作成各个集成电路模块,或者将它们中的多个模块或步骤制作成单个集成电路模块来实现。这样,本发明不限制于任何特定的硬件和软件结合。

以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1