智能家居的控制方法、系统、终端、FIDO服务器及安全设备与流程

文档序号:11205982阅读:1009来源:国知局
智能家居的控制方法、系统、终端、FIDO服务器及安全设备与流程

本发明涉及智能家居技术领域,尤其涉及智能家居的控制方法、系统、终端、fido服务器及安全设备。



背景技术:

物联网就是物物相连的互联网,其核心和基础仍然是互联网,是在互联网基础上延伸和扩展的网络,其用户端延伸和扩展到了任何物品与物品之间,进行信息交换和通信。基于物联网技术的智能家居系统具有广阔的市场需求,但总体看来我国的物联网产业发展仍处于初级阶段。

制约物联网发展的主要因素是安全性问题,安全物联网的构建仅仅依靠国家制定相关的政策和法律是远远不够的,还必须通过技术手段。目前基于物联网技术的智能家居系统常采用设置信息加密和进行用户认证等手段来解决安全性问题,但该技术手段对密码过于依赖,若用户遗忘密码则会带来极大的不便。



技术实现要素:

本发明实施例提供了一种智能家居的控制方法、系统、终端、fido服务器及安全设备,旨在解决目前安全控制智能家居系统过于依赖密码的问题。

本发明实施例的第一方面提供了一种智能家居控制方法,应用于智能家居控制系统,所述智能家居控制系统包括外部控制子系统和内部控制子系统;

所述外部控制子系统包括控制终端和与所述控制终端通信连接的安全设备,所述安全设备支持fido认证的标准协议;

所述内部控制子系统包括fido服务器、应用服务器和家居控制器,所述应用服务器支撑所述控制终端的应用;

所述智能家居控制方法包括:在所述安全设备注册用户账户,将所述用户账户下可用于控制智能家居的操作指令与所述用户账户进行映射关联,待用户输入目标操作指令后,所述安全设备验证与所述目标操作指令相关联的用户账户,验证通过后所述家居控制器执行所述目标操作指令;

所述注册用户账户的过程为:

所述控制终端发送注册请求信息给所述fido服务器;

所述fido服务器将所述注册请求信息构建成注册请求命令,将所述注册请求命令通过所述控制终端发送给所述安全设备;

所述安全设备接收所述注册请求命令后,判断所述用户账户是否已在所述安全设备中注册;

若未注册,则所述安全设备在获取到注册确认信息后,生成非对称密钥对,将所述非对称密钥对的私钥存放在所述安全设备,并将所述非对称密钥对的公钥通过所述控制终端发送给所述fido服务器;所述fido服务器存储所述公钥,并将所述公钥与所述用户账户相关联。

本发明实施例的第二方面提供了一种智能家居控制系统,包括:

外部控制子系统和内部控制子系统;

所述外部控制子系统包括控制终端和与所述控制终端通信连接的安全设备,所述安全设备支持fido认证的标准协议;

所述安全设备用于注册用户账户,将所述用户账户下可用于控制智能家居的操作指令与所述用户账户进行映射关联,待用户输入目标操作指令后,验证与所述目标操作指令相关联的用户账户,验证通过后所述家居控制器执行所述目标操作指令;

所述内部控制子系统包括fido服务器、应用服务器和家居控制器,所述应用服务器支撑所述控制终端的应用;

所述控制终端包括:

注册请求生成模块,用于生成并发送注册请求信息给所述fido服务器;

注册请求命令收发模块,用于接收所述fido服务器发送的注册请求命令并将所述注册请求命令发送给所述安全设备;

公钥收发模块,用于接收所述安全设备发送的公钥并将所述公钥发送给所述fido服务器;

所述安全设备包括:

注册请求命令接收模块,用于接收所述控制终端发送的由所述fido服务器构建的注册请求命令;

注册判断模块,用于判断所述用户账户是否已在所述安全设备中注册;

确认信息获取模块,用于获取注册确认信息;

公私密钥生成模块,用于若所述用户账户未在所述安全设备中注册,在获取到注册确认信息后,生成非对称密钥对,将所述非对称密钥对的私钥存放在所述安全设备,并将所述非对称密钥对的公钥通过所述控制终端发送给所述fido服务器;

所述fido服务器包括:

注册请求命令构建与发送模块,用于根据所述控制终端发送的注册请求信息构建注册请求命令并将所述注册请求命令发送给所述控制终端;

公钥接收模块,用于接收由所述安全设备生成的公钥;

公钥存储与关联模块,用于存储所述公钥,并将所述公钥与所述用户账户相关联。

本发明实施例的第三方面提供了一种控制终端控制智能家居的方法,应用于智能家居控制系统,所述智能家居控制系统包括外部控制子系统和内部控制子系统;

所述外部控制子系统包括控制终端和与所述控制终端通信连接的安全设备,所述安全设备支持fido认证的标准协议;

所述内部控制子系统包括fido服务器、应用服务器和家居控制器;

所述控制终端控制智能家居的方法为:

所述控制终端接收用户的注册请求信息,并发送给fido服务器;

所述控制终端接收由所述fido服务器发送的注册请求命令,所述注册请求命令是由所述fido服务器根据所述注册请求信息所构建的;

所述控制终端将所述注册请求命令发送给所述安全设备,以使所述安全设备接收到所述注册请求命令后,判断所述用户账户是否已在所述安全设备中注册,若未注册,所述安全设备则在获取到注册确认信息后,生成非对称密钥对,存储所述非对称密钥对的私钥,并将所述非对称密钥对的公钥发送给所述控制终端;

所述控制终端将所述公钥发送给所述fido服务器,以使所述fido服务器存储所述公钥,并将所述公钥与所述用户账户相关联;

所述控制终端将所述用户账户下可用于控制智能家居的操作指令与所述用户账户进行映射关联;

所述控制终端接收目标操作指令,以使所述安全设备验证与所述目标操作指令相关联的用户账户,并在验证通过后使所述家居控制器执行所述目标操作指令。

本发明实施例的第四方面提供了一种fido服务器控制智能家居的方法,应用于智能家居控制系统,所述智能家居控制系统包括外部控制子系统和内部控制子系统;

所述外部控制子系统包括控制终端和与所述控制终端通信连接的安全设备,所述安全设备支持fido认证的标准协议;

所述内部控制子系统包括fido服务器、应用服务器和家居控制器;

所述智能家居控制方法为:

所述fido服务器接收所述控制终端发送的的注册请求信息;

所述fido服务器将所述注册请求信息构建成注册请求命令,将所述注册请求命令通过所述控制终端发送给所述安全设备,以使所述安全设备接收到所述注册请求命令后,判断所述用户账户是否已在所述安全设备中注册,若未注册,所述安全设备则在获取到注册确认信息后,生成非对称密钥对,存储所述非对称密钥对的私钥,并将所述非对称密钥对的公钥通过所述控制终端发送给所述fido服务器;

所述fido服务器存储所述公钥,并将所述公钥与所述用户账户相关联;

在所述控制终端接收到目标操作指令后,所述fido服务器配合所述安全设备验证与所述目标操作指令相关联的用户账户,以使所述家居控制器在验证通过后执行所述目标操作指令。

本发明实施例的第五方面提供了一种安全设备控制智能家居的方法,应用于智能家居控制系统,所述智能家居控制系统包括外部控制子系统和内部控制子系统;

所述外部控制子系统包括控制终端和与所述控制终端通信连接的安全设备,所述安全设备支持fido认证的标准协议;

所述内部控制子系统包括fido服务器、应用服务器和家居控制器;

所述智能家居控制方法为:

所述安全设备接收由所述fido服务器通过所述控制终端发送的注册请求命令,所述注册请求命令是由所述fido服务器根据所述控制终端发送的注册请求信息所构建的;

所述安全设备解析所述注册请求命令,判断所述用户账户是否已在所述安全设备中注册;

若未注册,则所述安全设备在获取到注册确认信息后,生成非对称密钥对,存储所述非对称密钥对的私钥,并将所述非对称密钥对的公钥通过所述控制终端发送给所述fido服务器,以使所述fido服务器存储所述公钥,并将所述公钥与所述用户账户相关联;

在所述控制终端接收到目标操作指令后,所述安全设备结合所述fido服务器验证与所述目标操作指令相关联的用户账户,以使所述家居控制器在验证通过后执行所述目标操作指令。

本发明实施例的第六方面提供了一种控制终端,应用于智能家居控制系统,分别与fido服务器和安全设备进行数据交互,所述控制终端包括:

注册请求信息收发模块,用于接收用户的注册请求信息并发送给所述fido服务器;

注册请求命令收发模块,用于接收所述fido服务器发送的注册请求命令并将所述注册请求命令发送给所述安全设备,以使所述安全设备接收到所述注册请求命令后,判断所述用户账户是否已在所述安全设备中注册,若未注册,所述安全设备则在获取到注册确认信息后,生成非对称密钥对,存储所述非对称密钥对的私钥,并将所述非对称密钥对的公钥发送给所述控制终端,所述注册请求命令是所述fido服务器根据所述注册请求信息构建的;

公钥收发模块,用于接收所述安全设备发送的公钥并将所述公钥发送给所述fido服务器,以使所述fido服务器存储所述公钥,并将所述公钥与所述用户账户相关联;

操作指令收发模块,用于接收目标操作指令,并在所述用户账户验证通过后,将目标操作指令发送给所述家居控制器,以使所述家居控制器执行所述目标操作指令;

验证模块,用于结合所述fido服务器和所述安全设备对与目标操作指令相关联的用户账户进行验证。

本发明实施例的第七方面提供了一种fido服务器,应用于智能家居控制系统,与控制终端通信连接,并通过所述控制终端与安全设备进行数据交互,所述fido服务器包括:

注册请求信息接收模块,用于接收所述控制终端发送的注册请求信息;

注册请求命令构建与发送模块,用于根据注册请求信息构建注册请求命令并将所述注册请求命令通过所述控制终端发送给所述安全设备,以使所述安全设备接收到所述注册请求命令后,判断所述用户账户是否已在所述安全设备中注册,若未注册,所述安全设备则在获取到注册确认信息后,生成非对称密钥对,存储所述非对称密钥对的私钥,并将所述非对称密钥对的公钥发送给所述控制终端;

公钥接收模块,用于从所述控制终端接收公钥;

公钥存储与关联模块,用于存储所述公钥,并将所述公钥与所述用户账户相关联;

验证模块,用于结合所述控制终端和所述安全设备对目标操作指令相关联的用户账户进行验证,以使所述家居控制器在所述用户账户验证通过后执行所述目标操作指令。

本发明实施例的第八方面提供了一种安全设备,应用于智能家居控制系统,通过控制终端与fido服务器进行数据交互,所述安全设备包括:

注册请求命令接收模块,用于接收所述控制终端发送的由所述fido服务器构建的注册请求命令,所述注册请求命令是由所述fido服务器根据注册请求信息所构建的,所述注册请求信息由用户在所述控制终端输入并通过所述控制终端发送给所述fido服务器;

注册判断模块,用于判断所述用户账户是否已在所述安全设备中注册;

确认信息获取模块,用于获取注册确认信息;

公私密钥生成模块,用于若所述用户账户未在所述安全设备中注册,在获取到注册确认信息后,生成非对称密钥对,存储所述非对称密钥对的私钥,并将所述非对称密钥对的公钥通过所述控制终端发送给所述fido服务器,以使所述fido服务器存储所述公钥,并将所述公钥与所述用户账户相关联;

验证模块,用于结合所述控制终端和所述fido服务器对目标操作指令相关联的用户账户进行验证,以使所述家居控制器在所述用户账户验证通过后执行所述目标操作指令。

本发明利用安全设备与fido服务器对智能家居系统控制的用户账户进行操作权限认证,在用户进行在线高安全级别操作时,安全设备作为第二身份验证因素,完成对用户账户进行强安全级别身份验证,能在不依赖于传统密码复杂度的基础上保证智能家居系统控制的安全性,避免用户在操作智能家居系统时由于忘记密码而出现的各种不便,整个过程不受传统密码的强弱影响,提升用户的信息安全。

附图说明

图1为本发明实施例中一种智能家居控制系统的结构示意图;

图2为本发明实施例中一种用于控制如图1所示的智能家居控制系统的控制方法的流程图;

图3为本发明实施例中一种智能家居控制系统在一个应用场景下的结构示意图;

图4为本发明实施例中一种用于控制如图3所示的智能家居控制系统在一个应用场景下的控制方法的流程图;

图5为本发明实施例中一种智能家居控制系统在一个应用场景下的结构示意图;

图6为本发明实施例中一种用于控制如图5所示的智能家居控制系统在一个应用场景下的控制方法的流程图。

具体实施方式

本发明实施例提供了一种智能家居的控制方法、系统、终端、fido服务器及安全设备,能在不依赖于传统密码复杂度的基础上保证智能家居系统控制的安全性,避免用户在操作智能家居系统时由于忘记密码而出现的各种不便。

为使得本发明的发明目的、特征、优点能够更加的明显和易懂,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,下面所描述的实施例仅仅是本发明一部分实施例,而非全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。

请参阅图1,本发明实施例中一种智能家居控制系统包括:

外部控制子系统10和内部控制子系统11;

所述外部控制子系统包括控制终端101和与所述控制终端通信的安全设备102;所述安全设备支持fido认证的标准协议;

所述安全设备用于注册用户账户,将所述用户账户下可用于控制智能家居的操作指令与所述用户账户进行映射关联,待用户输入目标操作指令后,验证与所述目标操作指令相关联的用户账户,验证通过后所述家居控制器执行所述目标操作指令;

所述内部控制子系统包括fido服务器111、家居控制器112和应用服务器113,所述fido服务器和所述家居控制器通信连接,所述应用服务器支撑所述控制终端的应用;

所述控制终端101包括:

注册请求生成模块1010,用于生成并发送注册请求信息给所述fido服务器;

注册请求命令收发模块1011,用于接收所述fido服务器发送的注册请求命令并将所述注册请求命令发送给所述安全设备;

公钥收发模块1012,用于接收所述安全设备发送的公钥并将所述公钥发送给所述fido服务器;

所述安全设备102包括:

注册请求命令接收模块1020,用于接收所述控制终端发送的由所述fido服务器构建的注册请求命令;

注册判断模块1021,用于判断所述用户账户是否已在所述安全设备中注册;

确认信息获取模块1022,用于获取注册确认信息;

公私密钥生成模块1023,用于若所述用户账户未在所述安全设备中注册,在获取到注册确认信息后,生成非对称密钥对,将所述非对称密钥对的私钥存放在所述安全设备,并将所述非对称密钥对的公钥通过所述控制终端发送给所述fido服务器;

所述fido服务器111包括:

注册请求命令构建与发送模块1110,用于根据所述控制终端发送的注册请求信息构建注册请求命令并将所述注册请求命令发送给所述控制终端;

公钥接收模块1111,用于接收由所述安全设备生成的公钥;

公钥存储与关联模块1112,用于存储所述公钥,并将所述公钥与所述用户账户相关联。

其中,所述内部控制子系统是位于家庭范围以内的控制系统,所述外部控制子系统是可以位于任意位置(包括家庭范围以外)远程控制智能家居电器的控制系统。

所述控制终端指用于控制所述智能家居系统的移动或者固定终端,可以是安装好智能家居系统操作app的各类智能手机、智能手表、笔记本、平板电脑、pos机甚至包括车载电脑,与安全设备的通讯方式可以是usb、蓝牙、nfc或者三者之间的相互组合,本实施例对其通讯方式不作限定。

所述安全设备支持fido认证的标准协议,属于安全密钥设备,用于结合fido服务器实现用户账户在fido认证体系下的注册和操作权限认证,与控制终端的通讯方式可以是usb、蓝牙、nfc或者三者之间的相互组合,本实施例对其通讯方式不作限定,也可以是内置在控制终端的模块或设备,在控制终端内部与控制终端数据通信。

所述fido服务器指支持fido(fastidentityonline)认证协议的服务器,包含两部分,一部分用来存储认证密钥,另一部分用来存储认证设备的特性和信任的设备证书。

所述家居控制器包括家居电器控制开关和家居电器监控单元,实现对照明、电视、空调、热水器等电器的开关控制和各类参数的监控。家居电器控制开关可以采用继电器或其它形式的电器控制器件,也可以采用智能开关。

进一步地,所述家居控制器可以有多个,每个家居控制器分别与其需要控制的家居电器连接。

所述应用服务器主要用于给智能家居操作app提供全功能可靠的运行环境,能够支持fido认证的标准协议。

进一步的,所述控制终端还包括:

获取模块1013,用于获取目标操作指令,所述目标操作指令为用户在控制终端选择的操作指令;

验证请求发送模块1014,用于根据所述目标操作指令对应的用户账户发送验证请求至所述fido服务器;

待验证信息收发模块1015,用于接收所述fido服务器产生的挑战数据以及所述fido服务器根据所述验证请求构建的验证命令并将所述挑战数据和验证命令发送至所述安全设备;

已签名信息收发模块1016,用于接收来自所述安全设备的已签名信息并将所述已签名信息发送至所述fido服务器;

操作指令发送模块1017,用于若来自所述fido服务器的验签结果为验签成功,将所述目标操作指令发送至家居控制器。

进一步的,所述安全设备还可以包括:

待验证信息接收模块1024,用于接收所述控制终端发送的由所述fido服务器构建的挑战数据和验证命令;

fido服务器验证模块1025,用于解析所述验证命令并验证所述fido服务器的真伪;

验证确认信息获取模块1026,用于获取验证确认信息;

签名模块1027,用于若所述fido服务器为真,在获取到验证确认信息后,对所述挑战数据进行签名得到已签名信息;

已签名信息发送模块1028,用于将所述已签名信息返回至所述控制终端;

所述确认信息获取模块1022还用于获取验证确认信息;

进一步的,所述fido服务器还可以包括:

验证请求接收模块1113,用于接收所述控制终端根据所述目标操作指令对应的用户账户发送的验证请求;

待验证信息构建模块1114,用于产生挑战数据和根据所述验证请求构建验证命令;

待验证信息发送模块1115,用于将所述挑战数据和验证命令发送给所述控制终端;

已签名信息接收模块1116,用于接收来自所述控制终端的由所述安全设备生成的已签名信息;

验签模块1117,用于对所述已签名信息进行验签,得到验签结果。

进一步地,所述fido服务器111还可以包括:

映射模块1118,用于将操作指令与所述用户账户进行映射关联。

进一步地,所述fido服务器111还用于将不同的操作指令与相同或不同的用户账户映射关联;不同的用户账户注册于同一个或不同的安全设备中。

家居电器的不同操作指令可与同一个用户账户进行映射关联,也可分别与不同的用户账户进行映射关联;而不同的用户账户可注册于同一个安全设备中,也可注册于不同的安全设备中。

例如:在一个安全设备中注册一个用户账户,将全部操作指令与该用户账户进行映射关联;或者,在一个安全设备中注册多个用户账户,将全部操作指令分组与不同的用户账户进行映射关联;又或者,在多个不同的安全设备中注册一个或多个用户账户。

可根据不同家居电器的操作指令进行分组,利用同一个安全设备分别注册相应多个用户账户,将家居电器操作指令按分组分别与相应的用户账户映射关联。登录其中一个用户账户时只能发送与所述用户账户相关联的操作指令,从而对家居电器的控制管理更为便捷,用户体验好。

进一步地,针对多个家居电器可能涉及到不同的隐私级别,相对应于家居电器的家居控制器的数量多于两个的情况,可按隐私级别设置相应数量的安全设备,对具有相同隐私级别的家居电器的操作控制的用户账户分别注册到相应的安全设备下。每个安全设备下的用户账户分别对不同隐私级别的家居电器进行控制操作,只有在需要控制相应隐私级别的家居电器时再取出并使用其安全设备,降低单个安全设备的使用率,尤其降低隐私性级别较高的家居电器相应的安全设备的使用率。这样不会因其中一个安全设备的丢失而导致对整个智能家居系统的安全控制瘫痪失效,对家居电器的隐私性控制更安全可靠,用户体验更好。

进一步地,所述fido服务器还可以包括注册模块1119;

所述注册模块用于判断所述安全设备是否位于预设区域内,和/或判断所述安全设备是否指定用户持有或已知的安全设备,若所述安全设备位于预设区域内,和/或所述安全设备是指定用户持有或已知的安全设备,则执行所述fido服务器将所述注册请求信息构建成注册请求命令的步骤;否则终止注册过程。

进一步地,所述安全设备102可以是带有按键的u2f设备;

所述安全设备的确认信息获取模块具体可以包括:

检测单元,用于检测所述按键是否被按下;

第一获取单元,用于若所述按键被按下,获取所述注册确认信息和验证确认信息。

u2f设备指支持u2f协议的安全密钥设备,与控制终端的通讯方式可以是usb、蓝牙、nfc或者三者之间的相互组合,本实施例对其通讯方式不作限定。u2f(universalsecondfactorprotocol)协议即通用“第二因子”协议,用双因子(密码和能与用户交互的设备)来保护用户的账户和隐私。u2f是在现有的用户名+密码认证的基础之上,增加一个更安全的认证因子用于登录认证。用户可以像以前一样通过用户名和密码登录服务,服务会提示用户出示一个第二因子设备来进行认证。u2f可以使用简单的密码(比如4个数字的pin)而不牺牲安全性,出示第二因子的形式一般是按一下u2f设备上的按键。

具体地,所述u2f设备可以包括:

u2f客户端,指处理u2f信息的软件实体,用于与控制终端101上的智能家居操作app进行交互,并利用用户端的接口实现与fido服务器的通信,接受所述fido服务器的命令并进行解析,组建相对应的命令信息发送给asm模块进行相关操作;

asm模块,是在硬件和u2f客户端之间提供一个统一接口的与u2f认证器相关联的模块,具体地说是u2f客户端与u2f认证器之间的通信媒介;

u2f认证器,符合u2f协议,具有用户认证功能和保存可信方认可的密码素材的认证实体。

进一步地,在利用所述u2f设备进行智能家居系统用户账户在fido认证体系下的注册时,在生成公私密钥对之前,即确认进行注册之前,需要对所述u2f设备进行激活。所述激活操作可以是用户按下所述u2f设备上的按钮,在等待用户按下按钮的时候可以提示用户按下按钮表示确认执行用户账户的所述注册操作。

进一步地,在利用所述u2f设备进行所述用户账户的操作权限认证时,在所述u2f设备对验证信息做签名之前,需要对所述u2f设备进行激活。所述激活操作可以是用户按下所述u2f设备上的按钮,在等待用户按下按钮的时候可以提示用户按下按钮表示确认执行用户账户的操作权限认证。

进一步地,所述安全设备102也可以是uaf设备;

所述安全设备的确认信息获取模块具体可以包括:

采集单元,用于采集指定用户的用于注册的第一生物识别信息以及用于验证的第二生物识别信息;

第二获取单元,用于若采集到所述第一生物识别信息,则存储所述第一生物识别信息并确认获取所述注册确认信息,

对比认证单元,用于若采集到所述第二生物识别信息,将所述第二生物识别信息与所述第一生物识别信息作对比认证;

第三获取单元,用于若所述对比认证单元的对比认证通过,则获取所述验证确认信息。

uaf设备指支持uaf协议的安全密钥设备,无需使用用户密码,直接利用生物识别方式进行验证交易,可以内置在pc机或智能手机里直接与控制终端数据通信,也可以是外接设备。当uaf为控制终端的外接设备时,与控制终端的通讯方式可以是usb、蓝牙、nfc或者三者之间的相互组合,本实施例对其通讯方式不作限定。uaf(universalauthenticationframeworkprotocol)协议即通用认证框架协议,旨在实现“去密码化”的用户体验,有多种身份认证机制可供用户选择,例如语音、虹膜、指纹、脸部识别等生物识别方式。

具体地,所述uaf设备可以包括:

uaf客户端,指处理uaf信息的软件实体,用于与控制终端101上的智能家居操作app进行交互,并利用用户端的接口实现与fido服务器的通信,接受所述fido服务器的命令并进行解析,组建相对应的命令信息发送给asm模块进行相关操作;

asm模块,是在硬件和uaf客户端之间提供一个统一接口的与uaf认证器相关联的模块,具体地说是uaf客户端与uaf认证器之间的通信媒介;

uaf认证器,符合uaf协议,具有用户认证功能和保存可信方认可的密码素材的认证实体。

本发明实施例利用安全设备与fido服务器对智能家居系统控制的用户账户进行注册和操作权限认证,在用户进行在线高安全级别操作时,安全设备作为第二身份验证因素,完成对用户账户进行强安全级别身份验证,能在不依赖于传统密码复杂度的基础上保证智能家居系统控制的安全性,避免用户在操作智能家居系统时由于忘记密码而出现的各种不便,整个过程不受传统密码的强弱影响,提升用户的信息安全。

本发明实施例公开的智能家居控制系统的具体工作原理与详细的操作步骤参见下面的智能家居系统控制方法的具体描述。

请参阅图2,本实施例中一种用于控制如图1所示的智能家居系统的控制方法包括:

在所述安全设备注册用户账户,将所述用户账户下可用于控制智能家居的操作指令与所述用户账户进行映射关联,待用户输入目标操作指令后,所述安全设备验证与所述目标操作指令相关联的用户账户,验证通过后所述家居控制器执行所述目标操作指令。

所述注册用户账户的过程包括:

201、所述控制终端发送注册请求信息给所述fido服务器;

假如用户账户未在fido认证体系下注册,可以利用所述安全设备对用户账户进行注册,所述控制终端智能家居app的操作界面会弹出一个fido身份识别注册的界面,提示用户是否要进行fido认证体系的注册。用户通过安全设备上的与用户交互的模块确定要进行fido认证体系的注册后,所述控制终端生成并发送注册请求信息给所述fido服务器。

进一步地,为了使注册过程更加安全,所述fido服务器还可以包括注册模块,在所述fido服务器将所述注册请求信息构建成注册请求命令之前,还可以包括:

所述注册模块判断所述安全设备是否位于预设区域内,和/或判断所述安全设备是否指定用户持有或已知的安全设备;

若所述安全设备位于预设区域内,和/或所述安全设备是指定用户持有或已知的安全设备,则执行所述fido服务器将所述注册请求信息构建成注册请求命令的步骤;否则终止注册过程。

上述的预设区域是指预先设定的空间范围,例如可以将家庭住宅范围设定为预设区域。可以在家庭内部某位置设置距离感应器,获取所述安全设备与距离感应器之间的距离信息。然后再判断该距离是否小于某个设定好的阈值(如20米),如果是则判断所述安全设备位于家庭住宅范围内,也即位于预设区域内。也可以通过gps定位等无线通讯方式判断所述安全设备是否位于预设范围内,在此不做限定。上述步骤对注册范围进行了限定,只有安全设备位于预设范围内才可以进行用户账户的注册,进一步确保注册过程的安全。

fido服务器在收到所述注册请求后可以直接构建注册请求命令传送给安全设备,也可以先判断所述安全设备是否是指定用户所持有或已知的安全设备,确认是指定用户持有或已知的安全设备之后再构建注册请求命令传送给安全设备,进一步保证注册过程的安全。

202、所述fido服务器将所述注册请求信息构建成注册请求命令,将所述注册请求命令通过所述控制终端发送给所述安全设备;

所述fido服务器在接收到所述控制终端发送的注册请求信息后,将所述注册请求信息构建成注册请求命令,发送给所述安全设备。

203、所述安全设备接收所述注册请求命令后,判断所述用户账户是否已在所述安全设备中注册;

所述安全设备接收到所述注册请求命令后,判断所述用户账户是否已在所述安全设备中注册,如果已经注册,代表与所述用户账户相关联的账户信息已经在所述安全设备中生成,此时跳出注册的操作。

204、若未注册,所述安全设备在获取到注册确认信息后,生成非对称密钥对,将所述非对称密钥对的私钥存放在所述安全设备,并将所述非对称密钥对的公钥通过所述控制终端发送给所述fido服务器;

若在步骤203中所述用户账户没有在所述安全设备中注册,则所述安全设备在获取到注册确认信息后,生成非对称密钥对,将所述非对称密钥对的私钥存放在所述安全设备,并将所述非对称密钥对的公钥通过所述控制终端发送给所述fido服务器。所述安全设备获取到的注册确认信息指所述安全设备通过与用户交互的手段获取到的用于确认进行注册的信息,所述手段可以是按下按键、检测指纹、声音或虹膜等手段。

205、所述fido服务器存储所述公钥,并将所述公钥与所述用户账户相关联。

所述fido服务器保存所述安全设备发送的公钥,并将所述公钥和所述用户账户相关联,表明相对应的用户账户已经注册成功。

另外,所述安全设备在生成非对称密钥对时,还为该非对称密钥对分配一个密钥句柄,并将该密钥句柄和公钥传给所述fido服务器,所述fido服务器将注册的用户账户相关信息、公钥、密钥句柄全部关联在一起并保存。

进一步地,在上述步骤205之后还可以包括:所述fido服务器将操作指令与所述用户账户进行映射关联。

为了能够使不同的所述用户账户具备发送不同操作指令的操作权限,可以利用fido服务器将操作指令与所述用户账户进行映射关联,相当于建立了操作指令与所述用户账户之间的对应关系,代表为所述用户账户设置具备发送所述操作指令的操作权限。

进一步地,为了能够更加方便、直观地对家居电器进行控制,可以在所述控制终端上将对家居电器的控制构建成智能家居操作app中的操作指令,并将操作指令与所述用户账户进行映射关联。

例如,可以将单个家居电器的控制(如风扇打开)构建成一个操作指令,也可以将多个家居电器的控制(如风扇打开、电灯打开)构建成一个操作指令。此步骤相当于为每个用户账户的控制家居电器的权限进行设置,即确定某个已完成fido注册的用户账户具体可以执行对哪个电器的哪个控制动作。将某个操作指令与某个已完成fido注册的用户账户进行映射关联,则代表这个用户账户具备执行这个操作指令的权限。例如,可以将“风扇打开”构建成一个操作指令,将所述“风扇打开”的操作指令与已完成fido注册的用户账户a进行映射关联,则代表用户账户a具备执行“风扇打开”这个操作指令的操作权限。

进一步地,不同的操作指令可以与相同或不同的用户账户映射关联,不同的用户账户可以注册于同一个或不同的安全设备中。

例如,可以将“风扇和电灯都打开”、“空调打开”、“所有电器都关闭”分别构建成3个操作指令,将所述“风扇和电灯都打开”和“空调打开”的操作指令与已完成fido注册的用户账户b进行映射关联,将所述“所有电器都关闭”的操作指令与已完成fido注册的用户账户c进行映射关联。则代表用户账户b具备执行“风扇和电灯都打开”和“空调打开”这两个操作指令的操作权限,不具备执行“所有电器都关闭”这个操作指令的操作权限;而用户账户c则具备执行“所有电器都关闭”这个操作指令的操作权限,不具备执行“风扇和电灯都打开”和“空调打开”这两个操作指令的操作权限。以上组合可以有很多,在此不做限定。又比如,可以用安全设备1注册用户账户a,将用户账户a与常规家居电器(灯、风扇等)的操作指令进行映射关联,说明用户账户a具备操作常规家居电器的权限,在登录用户账户a选择相关的操作指令后利用该安全设备1进行权限认证。可以用安全设备2注册用户账户b,将用户账户b与隐私性较强的家居电器(如摄像头等)的操作指令进行映射关联,说明用户账户b具备操作隐私性较强的家居电器的权限,在登录用户账户b选择相关的操作指令后利用该安全设备2进行权限认证。当然,上述用户账户a和b也可以用同一个安全设备进行注册与权限认证。

根据不同家居电器的操作进行分组,可以在同一个安全设备注册多个用户账户,从而不同的用户账户具有不同的控制各自分组家居电器操作的权限,实现对家居电器的控制管理更为便捷,用户体验好。也可以将常规家居电器的操作权限与隐私性较强的家居电器的操作权限分别赋予不同的用户账户,且注册于不同的安全设备以进行操作权限的认证,能更好地保护用户的隐私,用户体验更好。

在所述注册过程完成之后,就可以利用所述控制终端、所述fido服务器和所述安全设备对目标操作指令进行验证,所述目标操作指令为用户在控制终端选择的操作指令。

所述验证用户账户的过程可以包括以下步骤a至f:

a、所述控制终端获取目标操作指令;

用户可以在控制终端上安装智能家居操作app,在所述app上设置用户对智能家居电器的各种操作指令,可以是打开或者关闭某个或多个家居电器设备、显示或调节某个或多个家居电器设备的各种状态参数、处理相关的报警信息等指令。控制终端通过app获取目标操作指令,即用户输入的操作指令。

进一步地,用户在使用所述app前可以先用自己的账户和密码进行登录,由于所述智能家居控制系统使用了安全设备和fido服务器进行用户账户的注册和操作权限认证,利用密码和安全设备上能与用户交互的特性(例如按键或采集识别用户生物识别信息)来保护用户的账户隐私,能在不依赖于密码高复杂度的情况下保证安全性,因此用户在所述app设置的登录密码可以很简单,例如4位数的密码,甚至可以不设密码。

b、所述控制终端根据所述目标操作指令对应的用户账户发送验证请求至所述fido服务器;

所述控制终端获取到目标操作指令之后,根据所述目标操作指令对应的用户账户发送验证请求至所述fido服务器。

在执行步骤b之前必须保证安全设备已经与控制终端正常通信,所述安全设备与所述控制终端的通信方式可以是usb、蓝牙、nfc或者三者之间的相互组合,本实施例对其通讯方式不作限定;另外,所述安全设备也可以是内置于控制终端的模块或设备,安全设备在控制终端内部与控制终端之间通信。假如是usb的连接方式,则将安全设备的usb口插在所述控制终端的usb接口上,使安全设备与控制终端间能正常通讯。假如所述安全设备是内置于控制终端的模块,可以是集成于控制终端上的指纹采集模块。所述用户账户是利用所述安全设备在fido认证体系下注册时生成的,所述用户账户的信息与所述fido服务器存储的公钥相关联。所述待验证信息是判断所述用户账户是否已完成在fido认证体系下的注册的依据,只有完成所述注册的所述用户账户才具有发送目标操作指令的权限。

c、所述fido服务器产生挑战数据,根据所述验证请求构建验证命令,并将所述挑战数据和验证命令通过所述控制终端发送至所述安全设备;

所述挑战数据可以为随机数或其他任意数据,所述fido服务器构建的验证命令包括所述fido服务器的相关信息和与所述用户账户相关的密钥句柄。结合注册过程中生成的公钥和私钥来验证所述fido服务器以及所述安全设备,从而验证用户账户的合法性。

d、所述安全设备解析所述验证命令,并验证所述fido服务器的真伪;

所述控制终端接收到所述fido服务器构建的挑战数据和验证命令后,将所述挑战数据和验证命令发送给所述安全设备,所述安全设备对所述验证命令进行解析,验证所述fido服务器的真伪。

所述安全设备验证所述fido服务器的真伪的过程为:安全设备使用接收到的密钥句柄寻找对应的密钥对,如果密钥对存在,检验密钥对应的fido服务器信息是否和传入的fido服务器信息匹配:如果不匹配,说明fido服务器是伪造或者不正确的,终止验证;如果匹配,说明fido服务器为真。

e、若所述fido服务器为真,所述安全设备在获取到验证确认信息后,对所述挑战数据进行签名得到已签名信息,将所述已签名信息通过所述控制终端发送至所述fido服务器;

假如所述fido服务器是真的,则所述安全设备在获取到验证确认信息后,将调用在注册时生成的私钥对所述挑战数据进行签名得到已签名信息,然后将所述已签名信息发送回所述控制终端。

签名指附加在数据单元上的一些数据,或是对数据单元所作的密码变换。所述私钥是所述用户账户在fido认证体系下注册时生成的,保存在所述安全设备的安全区中。在对所述待验证信息进行签名加密后得到已签名信息,必须用与所述私钥配对的公钥才能成功对所述已签名信息进行验签。所述安全设备获取到的验证确认信息指所述安全设备通过与用户交互的手段获取到的用于确认进行验证的信息,所述手段可以是按下按键、检测指纹、检测声音或虹膜等手段。

f、所述fido服务器对所述已签名信息进行验签,得到验签结果。

所述控制终端在接收到所述安全设备发送的已签名信息后,将所述已签名信息发送至所述fido服务器,此时所述fido服务器调用所述公钥对所述已签名信息进行解析验签,得到验签结果。所述公钥是所述用户账户在fido认证体系下注册时生成的,保存在所述fido服务器中。若所述公钥不是与所述私钥配对的,将无法对所述已签名信息解析,验签失败,所述用户账户不具备发送所述目标操作指令的操作权限,无法发送所述目标操作指令对家居电器进行操作。

如果验签成功,说明所述用户账户已经完成在fido认证体系下的注册操作并且具备发送所述目标操作指令的权限,则所述目标操作指令成功由所述控制终端发送给所述家居控制器,由家居控制器完成对家居电器的操作控制。

可选的,所述安全设备可以是带有按键的u2f设备,所述注册确认信息的获取过程包括:

检测所述按键是否被按下;

若所述按键被按下,则获取到所述注册确认信息;

所述验证确认信息的获取过程包括:

检测所述按键是否被按下;

若所述按键被按下,则获取到所述验证确认信息。

u2f设备指支持u2f协议的安全密钥设备,与控制终端的通讯方式可以是usb、蓝牙、nfc或者三者之间的相互组合,本实施例对其通讯方式不作限定。u2f(universalsecondfactorprotocol)协议即通用“第二因子”协议,用双因子(密码和能与用户交互的设备)来保护用户的账户和隐私。u2f是在现有的用户名+密码认证的基础之上,增加一个更安全的认证因子用于登录认证。用户可以像以前一样通过用户名和密码登录服务,服务会提示用户出示一个第二因子设备来进行认证。u2f可以使用简单的密码(比如4个数字的pin)而不牺牲安全性,出示第二因子的形式一般是按一下u2f设备上的按键。

在所述用户账户的注册过程中,安全设备在获取到注册确认信息后,生成非对称密钥对。若所述安全设备是带有按键的u2f设备,则通过用户按下所述按键来说明确认进行注册。在所述目标操作指令与所述用户账户操作权限的认证过程中,所述安全设备在获取到验证确认信息后,调用私钥对所述待验证信息进行签名得到已签名信息。若所述安全设备是带有按键的u2f设备,则通过用户按下所述按键来说明确认进行验证。

具体地,所述u2f设备可以包括:

u2f客户端,指处理u2f信息的软件实体,用于与控制终端上的智能家居操作app进行交互,并利用用户端的接口实现与fido服务器的通信,接受所述fido服务器的命令并进行解析,组建相对应的命令信息发送给asm模块进行相关操作;

asm模块,是在硬件和u2f客户端之间提供一个统一接口的与u2f认证器相关联的模块,具体地说是u2f客户端与u2f认证器之间的通信媒介;

u2f认证器,符合u2f协议,具有用户认证功能和保存可信方认可的密码素材的认证实体。

所述用户账户在fido认证体系下的注册过程中的步骤(3)和步骤(4)具体可以包括:所述注册请求命令传送给u2f客户端,u2f客户端接收到命令之后进行解析,根据命令类型组建相应的命令信息发送给asm模块。asm模块收到所述命令信息后,启动注册操作,生成一个保护认证器命令的数值。u2f认证器接收到所述asm模块发送的数值后,根据储存的密码素材来判定该用户账户是否已经注册。如果没注册,控制终端上的app弹出注册确认提醒框,若用户确认需要注册用户账户,用户按下u2f设备上的按键确认需要注册后,u2f认证器生成包含该用户账户信息的非对称公私钥对和密钥句柄,将私钥存放在u2f设备内指定的安全区,将公钥和密钥句柄经过asm模块传回给u2f客户端。u2f客户端将公钥和密钥句柄构造注册响应命令并传回给fido服务器。

所述目标操作指令对应的用户账户在操作权限认证过程中的步骤204具体可以包括:u2f客户端接收所述待验证信息之后进行解析,根据信息类型组建相应的命令信息发送给asm模块。asm模块收到所述命令信息后,启动认证操作,发送命令给所述u2f认证器。等用户按下u2f设备上的按钮确认验证后,调用u2f设备安全区内用户账户注册时生成的私钥对所述待验证信息进行签名操作,最后将所述已签名信息经asm模块传回给u2f客户端,由所述u2f客户端将所述已签名信息返回至所述控制终端。

可选的,所述安全设备可以是uaf设备,所述注册确认信息的获取过程包括:

采集指定用户的用于注册的第一生物识别信息;

若采集到所述第一生物识别信息,则存储所述第一生物识别信息并确认获取到所述注册确认信息;

所述验证确认信息的获取过程包括:

采集用户的用于验证的第二生物识别信息;

若采集到所述第二生物识别信息,将所述第二生物识别信息与所述第一生物识别信息作对比认证;

若所述对比认证通过,则获取到所述验证确认信息。

uaf设备指支持uaf协议的安全密钥设备,无需使用用户密码,直接利用生物识别方式进行验证交易,可以内置在pc机或智能手机里,也可以是外接设备。当uaf设备是控制终端的外接设备时,与控制终端的通讯方式可以是usb、蓝牙、nfc或者三者之间的相互组合,本实施例对其通讯方式不作限定。uaf(universalauthenticationframeworkprotocol)协议即通用认证框架协议,旨在实现“去密码化”的用户体验,有多种身份认证机制可供用户选择,例如语音、虹膜、指纹、脸部识别等生物识别方式。

在所述用户账户的注册过程中,安全设备在获取到注册确认信息后,生成非对称密钥对。若所述安全设备是uaf设备,则所述注册确认信息的获取过程的第一步是采集指定用户的用于注册的第一生物识别信息。指定用户指某个正进行注册操作的合法用户,生物识别信息的种类有很多,例如语音、虹膜、指纹和脸部识别等,第一生物识别信息是用于注册的生物识别信息。在采集到所述第一生物识别信息后(比如采集到指定用户的指纹),则存储所述第一生物识别信息并确认获取到所述注册确认信息。在所述目标操作指令与所述用户账户操作权限的认证过程中,所述安全设备在获取到验证确认信息后,调用私钥对所述待验证信息进行签名得到已签名信息。若所述安全设备是uaf设备,首先采集用户的用于验证的第二生物识别信息,即当前用户输入自身相应的生物识别信息(比如当前用户的指纹),然后,若采集到所述第二生物识别信息,将所述第二生物识别信息与所述第一生物识别信息作对比认证(比如将当前用户的指纹与注册时指定用户的指纹作对比)。最后,若所述对比认证通过,则说明当前用户身份信息正确,获取到所述验证确认信息。若所述对比认证错误,则说明当前用户身份信息错误,终止所述认证过程。

具体地,所述uaf设备可以包括:

uaf客户端,指处理uaf信息的软件实体,用于与控制终端上的智能家居操作app进行交互,并利用用户端的接口实现与fido服务器的通信,接受所述fido服务器的命令并进行解析,组建相对应的命令信息发送给asm模块进行相关操作;

asm模块,是在硬件和uaf客户端之间提供一个统一接口的与uaf认证器相关联的模块,具体地说是uaf客户端与uaf认证器之间的通信媒介;

uaf认证器,符合uaf协议,具有用户认证功能和保存可信方认可的密码素材的认证实体。

所述用户账户在fido认证体系下的注册过程中的步骤(3)和步骤(4)具体可以包括:所述注册请求命令传送给uaf客户端,uaf客户端接收到命令之后进行解析,根据命令类型组建相应的命令信息发送给asm模块。asm模块收到所述命令信息后,启动注册操作,生成一个保护认证器命令的数值。uaf认证器接收到所述asm模块发送的数值后,根据储存的密码素材来判定该用户账户是否已经注册。如果没注册,根据所述uaf设备所能支持的生物识别方式供用户选择,在控制终端上的app上提示用户提供身份识别信息素材,采集用户相应的生物识别信息。然后uaf认证器生成包含该用户账户信息的非对称公私钥对和密钥句柄,将私钥存放在uaf设备内指定的安全区,将公钥和密钥句柄经过asm模块传回给uaf客户端。uaf客户端将公钥和密钥句柄构造注册响应命令并传回给fido服务器。

所述目标操作指令对应的用户账户在操作权限认证过程中的步骤204具体可以包括:uaf客户端接收所述待验证信息之后进行解析,根据信息类型组建相应的命令信息发送给asm模块。asm模块收到所述命令信息后,将所述命令信息发送给uaf认证器,uaf认证器根据密钥句柄来检验该fido服务器是否为真,若所述fido服务器为真,则采集当前用户输入的生物识别信息,将其与注册时指定用户存储的生物识别信息进行对比认证。如果所述对比认证通过,则调用uaf设备安全区内用户账户注册时生成的私钥对所述待验证信息进行签名操作,最后将所述已签名信息经asm模块传回给uaf客户端,由所述uaf客户端将所述已签名信息返回至所述控制终端。

本发明实施例利用安全设备与fido服务器对智能家居系统控制的用户账户进行注册和操作权限认证,在用户进行在线高安全级别操作时,安全设备作为第二身份验证因素,完成对用户账户进行强安全级别身份验证,能在不依赖于传统密码复杂度的基础上保证智能家居系统控制的安全性,避免用户在操作智能家居系统时由于忘记密码而出现的各种不便,整个过程不受传统密码的强弱影响,提升用户的信息安全。

图3示出了本发明实施例中一种智能家居控制系统在一个应用场景下的结构示意图。

请参阅图3,本发明实施例在一个应用场景下所示的智能家居控制系统包括:外部控制子系统30和内部控制子系统31;

所述外部控制子系统包括控制终端301和与所述控制终端连接的u2f设备302;

所述u2f设备302包括:

u2f客户端3021,指处理u2f信息的软件实体,用于与控制终端101上的智能家居操作app进行交互,并利用控制终端的接口实现与fido服务器的通信,接受所述fido服务器的命令并进行解析,组建相对应的命令信息发送给asm模块进行相关操作;

asm模块3022,是在硬件和u2f客户端之间提供一个统一接口的与u2f认证器相关联的模块,具体地说是u2f客户端与u2f认证器之间的通信媒介;

u2f认证器3023,符合u2f协议,具有用户认证功能和保存可信方认可的密码素材的认证实体。

所述内部控制子系统包括fido服务器311、应用服务器312和家居控制器313。

图4示出了本发明实施例中一种控制如图3所示的智能家居控制系统的控制方法在一个应用场景下的流程图。

请参阅图4,一种控制如图3所示的智能家居控制系统的控制方法包括:

401、用户在控制终端上安装好智能家居操作app,输入用户名和密码登录所述app;

在控制终端上安装好智能家居操作app,所述app包含控制家居电器的各种操作指令,比如打开或者关闭某个或多个家居电器设备、显示某个或多个家居电器设备的各种状态参数和处理相关的报警信息等,用户在使用该app前需用自己的账户和密码进行登录操作。由于所述智能家居控制系统使用了u2f设备和fido服务器进行用户账户的注册和操作权限认证,能在不依赖于密码的情况下保证安全性,因此用户在所述app的登录密码可以设置得很简单,例如4位数的密码,甚至可以不设密码。运行所述app,输入账户及密码,应用服务器验证了该账户和密码后进入app(支持u2f协议)。

402、所述app提示是否进行所述用户账户在fido认证体系下的注册;

所述控制终端的操作界面会弹出一个fido身份识别注册的界面,提示用户是否要进行fido认证体系的注册。用户确定要进行fido认证体系的注册后,所述控制终端生成并发送注册请求信息给所述fido服务器,此时必须确定所述u2f设备与所述控制终端正常通讯。

在所述控制终端发送注册请求信息给所述fido服务器之前,所述fido服务器的注册模块判断所述u2f设备是否位于预设区域内,若所述u2f设备位于预设区域内,所述控制终端则发送注册请求信息给所述fido服务器。所述fido服务器接收到注册请求信息后,先判断u2f设备是否是指定用户持有或已知的安全设备,在确认是指定用户持有或已知的安全设备之后,根据注册请求信息构建注册请求命令,并通过控制终端发送给u2f设备。

u2f客户端接收到注册请求命令之后进行解析,根据命令类型组建相应的命令信息发送给asm模块。asm模块收到所述命令信息后,启动注册操作,生成一个保护认证器命令的数值。u2f认证器接收到所述asm模块发送的数值后,根据储存的密码素材来判定该用户账户是否已经注册,如果没注册,等用户按下u2f设备上的按钮(控制终端的app上需要提醒用户按键确认)确认注册后,会生成包含该用户账户信息的非对称公私钥对和密钥句柄,将私钥存放在u2f设备内指定的安全区,将公钥和密钥句柄经过asm模块传回给u2f客户端,u2f客户端将公钥和密钥句柄构造注册响应命令并传回给fido服务器。

403、将用户账户与操作指令进行关联;

为了能够更加方便、直观地对家居电器进行操作,可以在所述控制终端上将对家居电器的控制构建成智能家居操作app中的操作指令,并将所述操作指令与所述用户账户进行映射关联。此步骤相当于为每个用户账户的控制家居电器的权限进行设置,即确定某个已完成fido注册的用户账户具体可以执行对哪个电器的哪个控制动作。将某个操作指令与某个已完成fido注册的用户账户进行映射关联,则代表这个用户账户具备执行这个操作指令的权限。例如,可以将“风扇打开”构建成一个操作指令,将所述“风扇打开”的操作指令与已完成fido注册的用户账户a进行映射关联,则代表用户账户a具备执行“风扇打开”这个操作指令的操作权限。

404、选择具体的操作指令;

用户根据想对家居电器进行的操作在控制终端上选择具体的操作指令,假设用户登录用户账户a选择了“风扇打开”的操作指令。

405、利用所述u2f设备对所述用户账户进行操作权限认证;

利用所述u2f设备和所述fido服务器验证所述用户账户是否已经完成在fido认证体系下的注册。

所述步骤405具体可以为:用户在控制终端上选择的操作指令,即为目标操作指令。控制终端获取该目标操作指令,并根据所述目标操作指令对应的用户账户发送验证请求至所述fido服务器,以使所述fido服务器根据所述验证请求构建验证命令,所述验证命令包含密钥句柄等相关信息。fido服务器还产生挑战数据,将验证命令和挑战数据发送至所述控制终端;所述控制终端将接收到的所述验证命令和挑战数据发送至所述u2f设备的u2f客户端,u2f客户端接收所述验证命令之后进行解析,根据信息类型组建相应的命令信息发送给asm模块。asm模块收到所述命令信息后,启动认证操作,发送命令给所述u2f认证器,所述u2f认证器根据密钥句柄来检验该fido服务器是否为真。若所述fido服务器为真,等用户按下u2f设备上的按钮确认验证后,调用u2f设备安全区内用户账户注册时生成的私钥对所述挑战数据进行签名操作,得到已签名信息,最后将所述已签名信息经asm模块传回给u2f客户端,由所述u2f客户端将所述已签名信息返回至所述控制终端。所述控制终端将所述已签名信息发送至所述fido服务器,以使所述fido服务器调用公钥对所述已签名信息进行验签。

406、若所述操作权限认证通过,所述家居控制器对家居电器进行操作。

若步骤405的验签结果为验签成功,代表用户账户为合法用户,即该用户具有目标操作指令的操作权限,所述家居控制器接收目标操作指令并对家居电器进行操作。假如用户账户a发送“风扇打开”操作指令的验签结果为验签成功,则说明用户账户a具备执行“风扇打开”这个操作指令的操作权限,则所述家居控制器控制风扇打开。若在步骤405中的验签结果为验签失败,则说明用户账户a不具备执行“风扇打开”这个操作指令的操作权限,无法打开风扇。

通过本应用场景可以看出,由于所述智能家居控制系统使用了可与用户交互的按钮的u2f设备和fido服务器进行用户账户的注册和操作权限认证,能在不依赖于密码的情况下保证安全性,因此用户在所述app的登录密码可以设置得很简单,例如4位数的密码,甚至可以不设密码。

请参阅图5,本发明实施例在一个应用场景下所示的智能家居控制系统包括:外部控制子系统50和内部控制子系统51;

所述外部控制子系统包括控制终端501和与所述控制终端连接的uaf设备502;

所述uaf设备502包括:

uaf客户端5021,指处理uaf信息的软件实体,用于与控制终端101上的智能家居操作app进行交互,并利用用户端的接口实现与fido服务器的通信,接受所述fido服务器的命令并进行解析,组建相对应的命令信息发送给asm模块进行相关操作;

asm模块5022,是在硬件和uaf客户端之间提供一个统一接口的与uaf认证器相关联的模块,具体地说是uaf客户端与uaf认证器之间的通信媒介;

uaf认证器5023,符合uaf协议,具有用户认证功能和保存可信方认可的密码素材的认证实体。

所述内部控制子系统包括fido服务器511、应用服务器512和家居控制器513。

图6示出了本发明实施例中一种控制如图5所示的智能家居控制系统的控制方法在一个应用场景下的流程图。

请参阅图6,一种控制如图5所示的智能家居控制系统的控制方法包括:

601、用户在控制终端上安装好智能家居操作app,输入用户名和密码登录所述app;

在控制终端上安装好智能家居操作app,所述app包含控制家居电器的各种操作指令,比如打开或者关闭某个或多个家居电器设备、显示某个或多个家居电器设备的各种状态参数和处理相关的报警信息等,用户在使用该app前需用自己的账户和密码进行登录操作。由于所述智能家居控制系统使用了uaf设备和fido服务器进行用户账户的注册和操作权限认证,能在不依赖于密码的情况下保证安全性,因此用户在所述app的登录密码可以设置得很简单,例如4位数的密码,甚至可以不设密码。运行所述app,输入账户及密码,应用服务器验证了该账户和密码后进入app(支持uaf协议)。

602、所述app提示是否进行所述用户账户在fido认证体系下的注册;

所述控制终端的操作界面会弹出一个fido身份识别注册的界面,提示用户是否要进行fido认证体系的注册。用户确定要进行fido认证体系的注册后,所述控制终端生成并发送注册请求信息给所述fido服务器,此时必须确定所述uaf设备与所述控制终端正常通讯。

在所述控制终端发送注册请求信息给所述fido服务器之前,所述fido服务器的注册模块判断所述uaf设备是否位于预设区域内,若所述uaf设备位于预设区域内,所述控制终端则发送注册请求信息给所述fido服务器。fido服务器接收到注册请求信息后,先判断uaf设备是否是指定用户持有或已知的安全设备,在确认是指定用户持有或已知的安全设备之后,根据注册请求信息构建注册请求命令,并通过控制终端发送给uaf设备。

uaf客户端接收到注册请求命令之后进行解析,根据命令类型组建相应的命令信息发送给asm模块。asm模块收到所述命令信息后,启动注册操作,生成一个保护认证器命令的数值。uaf认证器接收到所述asm模块发送的数值后,根据储存的密码素材来判定该用户账户是否已经注册。如果没注册,根据所述uaf设备所能支持的生物识别方式供用户选择,在控制终端上的app上提示用户提供身份识别信息素材,采集用户相应的生物识别信息。然后uaf认证器生成包含该用户账户信息的非对称公私钥对和密钥句柄,将私钥存放在uaf设备内指定的安全区,将公钥和密钥句柄经过asm模块传回给uaf客户端。uaf客户端将公钥和密钥句柄构造注册响应命令并传回给fido服务器。

603、将用户账户与操作指令进行关联;

为了能够更加方便、直观地对家居电器进行操作,可以在所述控制终端上将对家居电器的控制构建成智能家居操作app中的操作指令,并将所述操作指令与所述用户账户进行映射关联。此步骤相当于为每个用户账户的控制家居电器的权限进行设置,即确定某个已完成fido注册的用户账户具体可以执行对哪个电器的哪个控制动作。将某个操作指令与某个已完成fido注册的用户账户进行映射关联,则代表这个用户账户具备执行这个操作指令的操作权限。例如,可以将“风扇打开”构建成一个操作指令,将所述“风扇打开”的操作指令与已完成fido注册的用户账户a进行映射关联,则代表用户账户a具备执行“风扇打开”这个操作指令的操作权限。

604、选择具体的操作指令;

用户根据想对家居电器进行的操作在控制终端上选择具体的操作指令,构成目标操作指令,假设用户登录用户账户a选择了“风扇打开”的操作指令。

605、利用所述uaf设备对所述用户账户进行操作权限认证;

利用所述uaf设备和所述fido服务器验证所述用户账户是否已经完成在fido认证体系下的注册。

所述步骤605具体可以为:用户在控制终端上选择的操作指令,即为目标操作指令。控制终端获取该目标操作指令,并根据所述目标操作指令对应的用户账户发送验证请求至所述fido服务器,以使所述fido服务器根据所述验证请求构建验证命令,所述验证命令包含密钥句柄等相关信息。fido服务器还产生挑战数据,将验证命令和挑战数据发送至所述控制终端;所述控制终端将接收到的所述验证命令发送至所述uaf设备的uaf客户端,uaf客户端接收所述验证命令之后进行解析,根据信息类型组建相应的命令信息发送给asm模块。asm模块收到所述命令信息后,将所述命令信息发送给uaf认证器,uaf认证器根据密钥句柄来检验该fido服务器是否为真,若所述fido服务器为真,则采集当前用户输入的生物识别信息,将其与注册时指定用户存储的生物识别信息进行对比认证。如果所述对比认证通过,则调用uaf设备安全区内用户账户注册时生成的私钥对挑战数据进行签名操作,得到已签名信息,最后将所述已签名信息经asm模块传回给uaf客户端,由所述uaf客户端将所述已签名信息返回至所述控制终端。所述控制终端将所述已签名信息发送至所述fido服务器,以使所述fido服务器调用公钥对所述已签名信息进行验签。

606、若所述操作权限认证通过,所述家居控制器对家居电器进行操作。

若步骤605的验签结果为验签成功,代表用户账户为合法用户,即该用户具有目标操作指令的操作权限,所述家居控制器接收目标操作指令并对家居电器进行操作。假如用户账户a发送“风扇打开”操作指令的验签结果为验签成功,则说明用户账户a具备执行“风扇打开”这个操作指令的操作权限,则所述家居控制器控制风扇打开。若在步骤605中的验签结果为验签失败,则说明验证账户a不具备执行“风扇打开”这个操作指令的操作权限,无法打开风扇。

通过本应用场景可以看出,由于所述智能家居控制系统使用了可采集用户生物识别信息的uaf设备和fido服务器进行用户账户的注册和操作权限认证,能在不依赖于密码的情况下保证安全性,因此用户在所述app的登录密码可以设置得很简单,例如4位数的密码,甚至可以不设密码。

本发明实施例还提供一种控制终端控制智能家居的方法,应用于智能家居控制系统,所述智能家居控制系统包括外部控制子系统和内部控制子系统;

所述外部控制子系统包括控制终端和与所述控制终端通信连接的安全设备,所述安全设备支持fido认证的标准协议;

所述内部控制子系统包括fido服务器、应用服务器和家居控制器;

所述控制终端控制智能家居的方法为:

所述控制终端接收用户的注册请求信息,并发送给fido服务器;

所述控制终端接收由所述fido服务器发送的注册请求命令,所述注册请求命令是由所述fido服务器根据所述注册请求信息所构建的;

所述控制终端将所述注册请求命令发送给所述安全设备,以使所述安全设备接收到所述注册请求命令后,判断所述用户账户是否已在所述安全设备中注册,若未注册,所述安全设备则在获取到注册确认信息后,生成非对称密钥对,存储所述非对称密钥对的私钥,并将所述非对称密钥对的公钥发送给所述控制终端;

所述控制终端将所述公钥发送给所述fido服务器,以使所述fido服务器存储所述公钥,并将所述公钥与所述用户账户相关联;

所述控制终端将所述用户账户下可用于控制智能家居的操作指令与所述用户账户进行映射关联;

所述控制终端接收目标操作指令,以使所述安全设备验证与所述目标操作指令相关联的用户账户,并在验证通过后使所述家居控制器执行所述目标操作指令。

进一步的,所述fido服务器包括注册模块,所述控制终端将所述注册请求信息发送给所述fido服务器之前还可以包括:

所述控制终端从所述安全设备获取所述安全设备的位置信息和/或设备信息;

所述控制终端将所述位置信息和/或设备信息组建成注册请求信息,以使所述注册模块根据接收到的所述位置信息判断所述安全设备是否位于预设区域内,和/或根据接收到的所述设备信息判断所述安全设备是否指定用户持有或已知的安全设备,若所述安全设备位于预设区域内,和/或所述安全设备是指定用户持有或已知的安全设备,所述fido服务器执行将所述注册请求信息构建成注册请求命令的步骤。

本发明实施例还提供一种fido服务器控制智能家居的方法,应用于智能家居控制系统,所述智能家居控制系统包括外部控制子系统和内部控制子系统;

所述外部控制子系统包括控制终端和与所述控制终端通信连接的安全设备,所述安全设备支持fido认证的标准协议;

所述内部控制子系统包括fido服务器、应用服务器和家居控制器;

所述智能家居控制方法为:

所述fido服务器接收所述控制终端发送的的注册请求信息;

所述fido服务器将所述注册请求信息构建成注册请求命令,将所述注册请求命令通过所述控制终端发送给所述安全设备,以使所述安全设备接收到所述注册请求命令后,判断所述用户账户是否已在所述安全设备中注册,若未注册,所述安全设备则在获取到注册确认信息后,生成非对称密钥对,存储所述非对称密钥对的私钥,并将所述非对称密钥对的公钥通过所述控制终端发送给所述fido服务器;

所述fido服务器存储所述公钥,并将所述公钥与所述用户账户相关联;

在所述控制终端接收到目标操作指令后,所述fido服务器配合所述安全设备验证与所述目标操作指令相关联的用户账户,以使所述家居控制器在验证通过后执行所述目标操作指令。

进一步的,所述fido服务器包括注册模块,所述注册请求信息包括所述控制终端从所述安全设备获取的所述安全设备的位置信息和/或设备信息,在所述fido服务器将所述注册请求信息构建成注册请求命令之前,还可以包括:

所述注册模块接收所述注册请求信息,

所述注册模块根据所述位置信息判断所述安全设备是否位于预设区域内,和/或根据所述设备信息判断所述安全设备是否指定用户持有或已知的安全设备;

若所述安全设备位于预设区域内,和/或所述安全设备是指定用户持有或已知的安全设备,所述fido服务器执行将所述注册请求信息构建成注册请求命令的步骤,否则终止注册过程。

本发明实施例还提供一种安全设备控制智能家居的方法,应用于智能家居控制系统,其特征在于,所述智能家居控制系统包括外部控制子系统和内部控制子系统;

所述外部控制子系统包括控制终端和与所述控制终端通信连接的安全设备,所述安全设备支持fido认证的标准协议;

所述内部控制子系统包括fido服务器、应用服务器和家居控制器;

所述智能家居控制方法为:

所述安全设备接收由所述fido服务器通过所述控制终端发送的注册请求命令,所述注册请求命令是由所述fido服务器根据所述控制终端发送的注册请求信息所构建的;

所述安全设备解析所述注册请求命令,判断所述用户账户是否已在所述安全设备中注册;

若未注册,则所述安全设备在获取到注册确认信息后,生成非对称密钥对,存储所述非对称密钥对的私钥,并将所述非对称密钥对的公钥通过所述控制终端发送给所述fido服务器,以使所述fido服务器存储所述公钥,并将所述公钥与所述用户账户相关联;

在所述控制终端接收到目标操作指令后,所述安全设备结合所述fido服务器验证与所述目标操作指令相关联的用户账户,以使所述家居控制器在验证通过后执行所述目标操作指令。

进一步的,所述fido服务器包括注册模块,所述安全设备接收所述注册请求命令之前还可以包括:

所述安全设备发送所述安全设备的位置信息和/或设备信息给所述控制终端,以使所述控制终端根据所述位置信息和/或设备信息组建所述注册请求信息,以及所述注册模块根据所述位置信息判断所述安全设备是否位于预设的范围内,和/或根据所述设备信息判断所述安全设备是否用户持有或已知的安全设备;

当所述安全设备位于预设区域内,和/或所述安全设备是用户持有或已知的安全设备,执行所述安全设备接收所述fido服务器发送的注册请求命令。

本发明实施例还提供一种控制终端,应用于智能家居控制系统,分别与fido服务器和安全设备进行数据交互,所述控制终端包括:

注册请求信息收发模块,用于接收用户的注册请求信息并发送给所述fido服务器;

注册请求命令收发模块,用于接收所述fido服务器发送的注册请求命令并将所述注册请求命令发送给所述安全设备,以使所述安全设备接收到所述注册请求命令后,判断所述用户账户是否已在所述安全设备中注册,若未注册,所述安全设备则在获取到注册确认信息后,生成非对称密钥对,存储所述非对称密钥对的私钥,并将所述非对称密钥对的公钥发送给所述控制终端,所述注册请求命令是所述fido服务器根据所述注册请求信息构建的;

公钥收发模块,用于接收所述安全设备发送的公钥并将所述公钥发送给所述fido服务器,以使所述fido服务器存储所述公钥,并将所述公钥与所述用户账户相关联;

操作指令收发模块,用于接收目标操作指令,并在所述用户账户验证通过后,将目标操作指令发送给所述家居控制器,以使所述家居控制器执行所述目标操作指令。

验证模块,用于结合所述fido服务器和所述安全设备对与目标操作指令相关联的用户账户进行验证。

进一步的,所述fido服务器包括注册模块,所述注册请求信息收发模块还可以用于:

从所述安全设备获取所述安全设备的位置信息和/或设备信息,并组建成注册请求信息;

将所述位置信息和/或设备信息发送给所述注册模块,以使所述注册模块根据所述位置信息判断所述安全设备是否位于预设区域内,和/或根据所述设备信息判断所述安全设备是否指定用户持有或已知的安全设备;

若所述安全设备位于预设区域内,和/或所述安全设备是指定用户持有或已知的安全设备,使所述fido服务器执行将所述注册请求信息构建成注册请求命令的步骤。

该控制终端应用于智能家居控制系统,分别与fido服务器和安全设备进行数据交互,以验证用户账户是否具有控制智能家居的操作权限。当用户需要控制智能家居时,在控制终端选择操作指令,通过安全设备和fido服务器对操作指令所对应的用户账户进行验证其是否具有该操作指令的权限,如果验证通过,即该用户具有所选择的操作指令的权限,控制终端即发送操作指令给家居控制器,家居控制器执行操作指令,完成对智能家居的控制。

因此,本控制终端应用于智能家居控制系统,使得系统完成对用户账户的验证,保证智能家居系统控制的安全性,避免用户在操作智能家居系统时由于忘记密码而出现的各种不便,整个过程不受传统密码的强弱影响,提升用户的信息安全。

本发明实施例还提供一种fido服务器,应用于智能家居控制系统,与控制终端通信连接,并通过所述控制终端与安全设备进行数据交互,所述fido服务器包括:

注册请求信息接收模块,用于接收所述控制终端发送的注册请求信息;

注册请求命令构建与发送模块,用于根据注册请求信息构建注册请求命令并将所述注册请求命令通过所述控制终端发送给所述安全设备,以使所述安全设备接收到所述注册请求命令后,判断所述用户账户是否已在所述安全设备中注册,若未注册,所述安全设备则在获取到注册确认信息后,生成非对称密钥对,存储所述非对称密钥对的私钥,并将所述非对称密钥对的公钥发送给所述控制终端;

公钥接收模块,用于从所述控制终端接收公钥;

公钥存储与关联模块,用于存储所述公钥,并将所述公钥与所述用户账户相关联;

验证模块,用于结合所述控制终端和所述安全设备对目标操作指令相关联的用户账户进行验证,以使所述家居控制器在所述用户账户验证通过后执行所述目标操作指令。

进一步的,所述fido服务器还包括注册模块,所述注册请求信息包括所述安全设备的位置信息和/或设备信息,所述注册模块用于:

接收所述注册请求信息,并根据所述安全设备的位置信息判断所述安全设备是否位于预设区域内,和/或根据所述设备信息判断所述安全设备是否指定用户持有或已知的安全设备;

若所述安全设备位于预设区域内,和/或所述安全设备是指定用户持有或已知的安全设备,使所述fido服务器执行将所述注册请求信息构建成注册请求命令的步骤,否则终止注册过程。

该fido服务器应用于智能家居控制系统,通过所述控制终端与安全设备进行数据交互,验证用户账户对智能家居的操作权限。当用户需要控制智能家居时,在控制终端选择操作指令,通过该fido服务器和安全设备对操作指令所对应的用户账户进行验证其是否具有该操作指令的权限,如果验证通过,即该用户具有所选择的操作指令的权限,控制终端再发送操作指令给家居控制器,家居控制器执行操作指令,完成对智能家居的控制。

因此,本fido服务器应用于智能家居控制系统,使得系统能在不依赖于传统密码复杂度的基础上,完成对用户账户的验证,保证智能家居系统控制的安全性,避免用户在操作智能家居系统时由于忘记密码而出现的各种不便,整个过程不受传统密码的强弱影响,提升用户的信息安全。

本发明实施例还提供一种安全设备,应用于智能家居控制系统,通过控制终端与fido服务器进行数据交互,所述安全设备包括:

注册请求命令接收模块,用于接收所述控制终端发送的由所述fido服务器构建的注册请求命令,所述注册请求命令是由所述fido服务器根据注册请求信息所构建的,所述注册请求信息由用户在所述控制终端输入并通过所述控制终端发送给所述fido服务器;

注册判断模块,用于判断所述用户账户是否已在所述安全设备中注册;

确认信息获取模块,用于获取注册确认信息;

公私密钥生成模块,用于若所述用户账户未在所述安全设备中注册,在获取到注册确认信息后,生成非对称密钥对,存储所述非对称密钥对的私钥,并将所述非对称密钥对的公钥通过所述控制终端发送给所述fido服务器,以使所述fido服务器存储所述公钥,并将所述公钥与所述用户账户相关联;

验证模块,用于结合所述控制终端和所述fido服务器对目标操作指令相关联的用户账户进行验证,以使所述家居控制器在所述用户账户验证通过后执行所述目标操作指令。

进一步的,所述fido服务器包括注册模块,所述安全设备还可以包括位置信息发送模块,所述位置信息发送模块用于:

将所述安全设备的位置信息和/或设备信息发送给所述控制终端以组建成注册请求信息,从而使所述注册模块根据接收到的位置信息判断所述安全设备是否位于预设的范围内,和/或根据所述设备信息判断所述安全设备是否用户持有或已知的安全设备;

当所述安全设备位于预设区域内,和/或所述安全设备是用户持有或已知的安全设备,所述安全设备接收所述fido服务器发送的注册请求命令。

该安全设备应用于智能家居控制系统,通过所述控制终端与安全设备进行数据交互,验证用户账户对智能家居的操作权限。当用户需要控制智能家居时,在控制终端选择操作指令,通过该安全设备和fido服务器对操作指令所对应的用户账户进行验证其是否具有该操作指令的权限,如果验证通过,即该用户具有所选择的操作指令的权限,控制终端再发送操作指令给家居控制器,家居控制器执行操作指令,完成对智能家居的控制。

因此,本安全设备应用于智能家居控制系统,使得系统能在不依赖于传统密码复杂度的基础上,完成对用户账户的验证,保证智能家居系统控制的安全性,避免用户在操作智能家居系统时由于忘记密码而出现的各种不便,整个过程不受传统密码的强弱影响,提升用户的信息安全。

在本申请所提供的几个实施例中,应该理解到,所揭露的系统,装置和方法,可以通过其它的方式实现。例如,以上所描述的装置实施例仅仅是示意性的,例如,所述单元的划分,仅仅为一种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,装置或单元的间接耦合或通信连接,可以是电性,机械或其它的形式。

所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。

另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。

所述集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

以上所述,以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

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