本技术涉及计算机,尤其涉及一种设备授权方法和系统。
背景技术:
1、fido(fast identity online,线上快速身份验证)是一套开放的、标准化的身份验证协议,旨在最终消除密码,从安全角度来看,密码往往是无效的和过时的。在所有的fido中使用的基本协议是非对称密钥对。对于每个用户,都会生成由公钥和私钥构成的非对称密钥对。非对称密钥对的公钥存储用于提供在线服务的在线服务服务器上,私钥存储在用户的安全设备上,并且永远不会离开用户的设备。
2、通常,fdio认证过程包括:(1)当用户注册在线服务账号时,在线服务服务器会提示绑定安全设备,安全设备(可以是个人电脑或手机等)使用用户选择的身份验证方法(如指纹、人脸、声纹、虹膜等)进行用户身份验证;(2)安全设备验证用户身份通过之后,安全设备会创建一个非对称密钥对,用户的安全设备保留私钥,并将公钥发送给在线服务服务器;(3)在线服务服务器将安全设备生成的公钥与该用户注册的账号绑定,完成注册过程。
3、另一方面,fdio认证过程包括:(1)用户每次尝试登陆在线服务账号时,在线服务服务器向该账号绑定的安全设备发送一个挑战;(2)安全设备被激活之后,使用安全设备中该账号绑定的私钥的对挑战进行签名,并将签名后的挑战发送给在线服务服务器;(3)在线服务服务器收到安全设备返回的签名后的挑战,使用该账号的公钥进行验证,验证通过后用户可以登陆在线服务服务器。
4、如上所述,由于在线服务账号绑定的非对称密钥对的私钥只能在该在线服务账号注册时绑定的安全设备上使用,因此安全设备的拥有者将拥有在线服务账号的所有权。并且,只能由安全设备的拥有者使用该在线服务账号,而无法授权其他设备使用该在线服务账号。
技术实现思路
1、本技术实施例的目的在于提供一种设备授权方法和系统,可以将在线服务账号授权给多个设备使用。
2、根据本技术的实施例的一个方面,提供了一种设备授权方法,该设备授权方法包括:在用于提供在线服务的服务器上创建与第一设备绑定的一个在线服务账号,其中,由所述第一设备创建第一非对称密钥对;响应于所述第一设备的请求,在加密机上生成属于所述第一非对称密钥对的第二非对称密钥对;当授权所述第二设备时,所述设备授权方法还包括:在第二设备中生成第三非对称密钥对;响应于所述第一设备的请求,在所述加密机上为所述第二设备签发所述第二非对称密钥对对所述第三非对称密钥对的许可;响应于所述第一设备的请求,在所述服务器上将所述第二设备与所述在线服务账号绑定;其中,所述许可用于在所述第二设备的认证过程中调用所述加密机使用所述第二非对称密钥对的私钥对所述服务器发送的挑战进行签名,以认证所述第二设备。
3、在一些实施例中,所述第二非对称密钥对的公钥存储于所述服务器,其中,在所述第二设备的认证过程中,使用所述第二非对称密钥对的公钥在所述服务器处对所述挑战的签名进行验签。
4、在一些实施例中,所述第二非对称密钥对的公钥存储于所述服务器,所述第三非对称密钥对的公钥存储于所述加密机上;其中,在所述第二设备的认证过程中,使用所述第三非对称密钥对的公钥在加密机处加密所述签名;使用所述第三非对称密钥对的私钥在第二设备处解密被加密的签名;使用所述第二非对称密钥对的公钥在所述服务器处对从第二设备接收到的所述挑战的签名进行验签。
5、在一些实施例中,当授权所述第一设备时,所述授权方法还包括:响应于所述第一设备的请求,在所述加密机上为所述第一设备签发所述第二非对称密钥对对所述第一非对称密钥对的另一许可;其中,所述另一许可用于在所述第一设备的认证过程中调用所述加密机使用所述第二非对称密钥对的私钥对所述服务器发送的另一挑战进行签名,以认证所述第一设备。
6、在一些实施例中,所述第二非对称密钥对的公钥存储于所述服务器,其中,在所述第一设备的认证过程中,使用所述第二非对称密钥对的公钥在所述服务器处对所述另一挑战的签名进行验签。
7、在一些实施例中,所述第二非对称密钥对的公钥存储于所述服务器,第一非对称密钥对的公钥存储于所述加密机上,其中,在所述第一设备的认证过程中,使用所述第一非对称密钥对的公钥在加密机处加密另一挑战的签名;使用所述第一非对称密钥对的私钥在第一设备处解密被加密的所述另一挑战的签名;使用所述第二非对称密钥对的公钥在所述服务器处对从第一设备接收到的另一挑战的签名进行验签。
8、在一些实施例中,设备授权方法还包括:响应于所述第一设备的请求,在所述加密机上撤销所述许可;响应于所述第一设备的请求,在所述服务器处将所述第二设备与所述在线服务账号解绑。
9、根据本技术的实施例的另一个方面,提供了一种设备授权系统,包括:
10、用于提供在线服务的服务器,与第一设备和第二设备通信连接,其中,所述服务器用于创建一个与第一设备绑定的在线服务账号,所述第一设备用于创建第一非对称密钥对,所述第二设备用于创建第三非对称密钥对;
11、加密机,与所述第一设备和所述第二设备通信连接,所述加密机用于响应于所述第一设备的请求生成属于所述第一非对称密钥对的第二非对称密钥对;
12、当通过所述第一设备授权所述第二设备时:
13、所述加密机还用于:响应于所述第一设备的请求,为所述第二设备签发所述第二非对称密钥对对所述第三非对称密钥对的许可;
14、所述服务器还用于:响应于所述第一设备的请求,将所述第二设备与所述在线服务账号绑定;
15、其中,所述许可用于在所述第二设备的认证过程中调用所述加密机使用所述第二非对称密钥对的私钥对所述服务器发送的挑战进行签名,以认证所述第二设备。
16、在一些实施例中,在所述第二设备的认证过程中,所述服务器还用于:使用所述第二非对称密钥对的公钥对所述挑战的签名进行验签。其中,所述第二非对称密钥对的公钥存储于所述服务器上。
17、在一些实施例中,在所述第二设备的认证过程中,所述加密机还用于:使用所述第三非对称密钥对的公钥加密所述签名;所述第二设备还用于:使用所述第三非对称密钥对的私钥解密被加密的签名;所述服务器还用于:使用所述第二非对称密钥对的公钥对从第二设备接收到的所述挑战的签名进行验签。其中,所述第二非对称密钥对的公钥存储于所述服务器,所述第三非对称密钥对的公钥存储于所述加密机上。
18、在一些实施例中,所述加密机还用于:响应于所述第一设备的请求,为所述第一设备签发所述第二非对称密钥对对所述第一非对称密钥对的另一许可;其中,所述另一许可用于在所述第一设备的认证过程中调用所述加密机使用所述第二非对称密钥对的私钥对所述服务器发送的另一挑战进行签名,以认证所述第一设备。
19、在一些实施例中,在所述第一设备的认证过程中,所述服务器还用于:使用所述第二非对称密钥对的公钥对所述另一挑战的签名进行验签。其中,所述第二非对称密钥对的公钥存储于所述服务器。
20、在一些实施例中,在所述第一设备的认证过程中,所述加密机还用于:使用所述第一非对称密钥对的公钥加密另一挑战的签名;所述第一设备还用于:使用所述第一非对称密钥对的私钥解密被加密的所述另一挑战的签名;所述服务器还用于:使用所述第二非对称密钥对的公钥对从第一设备接收到的另一挑战的签名进行验签。其中,所述第二非对称密钥对的公钥存储于所述服务器,第一非对称密钥对的公钥存储于所述加密机上,
21、在一些实施例中,所述加密机还用于:响应于所述第一设备的请求,撤销所述许可;所述服务器还用于:响应于所述第一设备的请求,将所述第二设备与所述在线服务账号解绑。
22、根据本技术的实施例的第三方面,提供了一种设备授权系统,包括:
23、第一模块,所述第一模块能够被存储在用于提供在线服务的服务器上,所述服务器用于创建一个与第一设备绑定的在线服务账号;所述第一模块用于:响应于所述第一设备的请求,在所述服务器上将所述第二设备与所述在线服务账号绑定;
24、第二模块,所述第二模块能够被安装在第一设备上,所述第二模块用于创建第一非对称密钥对;
25、第三模块,所述第三模块能够被安装在第二设备上,所述第三模块用于创建第三非对称密钥对;
26、第四模块,所述第四模块能够被存储在加密机上,所述第四模块用于:响应于所述第一设备的请求,在加密机上生成属于所述第一非对称密钥对的第二非对称密钥对;以及,响应于所述第一设备的请求,在所述加密机上为所述第二设备签发所述第二非对称密钥对对所述第三非对称密钥对的许可;
27、其中,所述许可用于在所述第二设备的认证过程中调用所述加密机使用所述第二非对称密钥对的私钥对所述服务器发送的挑战进行签名,以认证所述第二设备。
28、在一些实施例中,在所述第二设备的认证过程中,所述第一模块还用于:使用所述第二非对称密钥对的公钥在所述服务器处对所述挑战的签名进行验签。其中,所述第二非对称密钥对的公钥存储于所述服务器,
29、在一些实施例中,在所述第二设备的认证过程中,所述第四模块还用于:使用所述第三非对称密钥对的公钥在加密机处加密所述签名;所述第三模块还用于:使用所述第三非对称密钥对的私钥在第二设备处解密被加密的签名;所述第一模块还用于:使用所述第二非对称密钥对的公钥在所述服务器处对从第二设备接收到的所述挑战的签名进行验签。其中,所述第二非对称密钥对的公钥存储于所述服务器,所述第三非对称密钥对的公钥存储于所述加密机上。
30、在一些实施例中,所述第四模块还用于:响应于所述第一设备的请求,在所述加密机上为所述第一设备签发所述第二非对称密钥对对所述第一非对称密钥对的另一许可;其中,所述另一许可用于在所述第一设备的认证过程中调用所述加密机使用所述第二非对称密钥对的私钥对所述服务器发送的另一挑战进行签名,以认证所述第一设备。
31、在一些实施例中,在所述第一设备的认证过程中,所述第一模块还用于:使用所述第二非对称密钥对的公钥在所述服务器处对所述另一挑战的签名进行验签。其中,所述第二非对称密钥对的公钥存储于所述服务器。
32、在一些实施例中,在所述第一设备的认证过程中,所述第四模块还用于:使用所述第一非对称密钥对的公钥在加密机处加密另一挑战的签名;所述第二模块还用于:使用所述第一非对称密钥对的私钥在第一设备处解密被加密的所述另一挑战的签名;所述第一模块还用于:使用所述第二非对称密钥对的公钥在所述服务器处对从第一设备接收到的另一挑战的签名进行验签。其中,所述第二非对称密钥对的公钥存储于所述服务器,第一非对称密钥对的公钥存储于所述加密机上。
33、在一些实施例中,所述第四模块还用于:响应于所述第一设备的请求,在所述加密机上撤销所述许可;所述第一模块还用于:响应于所述第一设备的请求,在所述服务器处将所述第二设备与所述在线服务账号解绑。
34、根据本技术的实施例的第四方面,提供了一种计算机可读存储介质,所述存储介质上存储有至少一个计算机程序,所述至少一个计算机程序被至少一个处理器运行,以实现第一方面的任一种方法的部分或全部步骤。
35、本技术的上述设备认证方法和设备认证系统,利用加密机的密钥保护和授权功能提供了一种可授权多个设备的认证方案,使得安全设备(如第一安全设备)的所有者可以将在线服务账号的授权给另外的安全设备(如第二安全设备)使用。