CN105100052B - 服务器、手机终端及其帐号与设备绑定执行、控制方法 - Google Patents

服务器、手机终端及其帐号与设备绑定执行、控制方法 Download PDF

Info

Publication number
CN105100052B
CN105100052B CN201510290054.0A CN201510290054A CN105100052B CN 105100052 B CN105100052 B CN 105100052B CN 201510290054 A CN201510290054 A CN 201510290054A CN 105100052 B CN105100052 B CN 105100052B
Authority
CN
China
Prior art keywords
mobile phone
phone terminal
key
smart machine
condition code
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201510290054.0A
Other languages
English (en)
Other versions
CN105100052A (zh
Inventor
刘文剑
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Qihoo Technology Co Ltd
Original Assignee
Beijing Qihoo Technology Co Ltd
Qizhi Software Beijing Co Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Qihoo Technology Co Ltd, Qizhi Software Beijing Co Ltd filed Critical Beijing Qihoo Technology Co Ltd
Priority to CN201510290054.0A priority Critical patent/CN105100052B/zh
Publication of CN105100052A publication Critical patent/CN105100052A/zh
Application granted granted Critical
Publication of CN105100052B publication Critical patent/CN105100052B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • H04L63/0815Network architectures or network communication protocols for network security for authentication of entities providing single-sign-on or federations
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/02Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]

Abstract

本发明公开的一种手机终端及其所采用的帐号与设备绑定控制方法,该方法包括如下步骤:调用远程接口完成用户帐号登录;从远程接口获取对应于外部智能设备的唯一性特征信息的特征码及其相应的密钥;发送包含所述特征码和密钥的广播指令以供接入相同局域网络的所述智能设备保存;向远程接口发起持有该密钥的请求以将相应的特征码与所述帐号绑定。此外,本发明还公开一种相适配的云端服务器及其所采用的帐号与设备绑定执行方法。本发明的实施,使帐号与设备之间的绑定过程更为便捷高效,且安全可靠。

Description

服务器、手机终端及其帐号与设备绑定执行、控制方法
技术领域
本发明涉及智能设备联网控制技术,具体涉及一种手机终端及其采用的帐号与设备绑定控制方法及装置,以及一种云端服务器及其采用的帐号与设备绑定执行方法。
背景技术
物联网的发展,使得各种通信接入技术出现了越来越多的交叉。早期基于WiFi而实现的Ad-Hoc技术,实现了WiFi设备之间的点对点的连接,但由于这一技术只能实现单点对单点的通信,而且不具有安全防范技术等,因此虽然便于连接但却很快被WiFi Direct(直连)技术所弱化甚至代替。WiFi直连技术,可以使得任意一台经过WiFi直连认证的设备,既可工作于AP(服务节点)模式,又可工作于STA(工作站)模式,其以小组为单元实现两台或多台WiFi设备之间的互连互通,其中有且只有一部WiFi设备用作管理中心,对小组内其余的工作站的连接进行集中管理。WiFi直连技术还可以兼容WiFi协议中的各种加密方式,因此更为安全,而且由于其具有服务发现和基础设备发现等功能,使用便利,接入可靠,相对于其它技术更受欢迎,目前正广泛应用中。借助这些技术,可实现多台设备之间的互联,而无需依赖于路由器之类的中间设备。
促进物联网技术发展的一个基础技术是云端服务的提供,云端服务以用户帐号为基础,为每个用户提供专用的管理空间,集中包括用户的个人数据在内的各种数字化资源,允许用户只需基于用户帐号进行鉴权,即可不受时间和地域限制地访问其已经预存在云端上的资源。有鉴于此,用户都希望通过云端实现物联网时代对多台智能设备所进行的集中管控,使各种智能终端通过云端服务实现互联互通,省去频率的重复设备,提高互联互通效率。
为了实现智能设备之间的互联互通,传统的做法即是采用上述的点对点的连接,这种连接方式显然已经无法满足用户需求。而通过云端服务解决这一问题,则将遭遇数据传输安全和接入效率等问题,而其中的首要问题,便是如何实现多台设备之间的相互关联。
发明内容
本发明的首要目的旨在解决上述至少一个问题,借助云端服务提供的用户帐号,实现多台设备的关联管理,而提供一种手机终端及其所采用的帐号与设备绑定控制方法。
本发明的另一目的旨在因应前一目的的需要,提供一种云端服务器及其所采用的帐号与设备绑定执行方法,以有助于云端服务器的实现。
为了实现本发明的目的,本发明采取如下技术方案:
本发明首要目的所提供的一种帐号与设备绑定控制方法,包括如下步骤:
调用远程接口完成用户帐号登录;
从远程接口获取对应于外部智能设备的唯一性特征信息的特征码及其相应的密钥;
发送包含所述特征码和密钥的广播指令以供接入相同局域网络的所述智能设备保存;
向远程接口发起持有该密钥的请求以将相应的特征码与所述帐号绑定。
进一步,该方法还包括如下后续步骤:
显示用于访问所述外部智能设备和/或其相关数据的用户界面。
较佳的,通过所述的用户界面接收用户指令,以发起访问所述外部智能设备和/或其相关数据的请求。
具体的,基于所述特征码进行的通信,以安全套接字层超文本传输协议的数据报文的格式进行封装。
较佳的,所述数据报文经过远程接口中转传输给所述特征码指向的所述外部智能设备。
具体的,该数据报文为请求报文,其中包含所述外部智能设备的特征码及其相应的密钥。
进一步,该方法包括用于接入所述智能设备以获取其唯一性特征信息的步骤。
具体的,采取如下步骤获取智能设备的唯一性特征信息:
断开与所述局域网络的当前连接;
接入处于WiFi Direct协议所规范的接入点模式的所述智能设备;
获取该智能设备的唯一性特征信息。
进一步,接入所述智能设备以获取其唯一性特征信息之后还包括如下步骤:
向该智能设备传输用于接入所述局域网络的配置信息以使该智能设备接入所述局域网络;
恢复接入所述局域网络。
较佳的,所述广播指令以UDP数据包格式发送。
进一步,完成用户帐号登录后,本机通过远程接口获取为自身分配的特征码及相应的密钥,进行通信时,在通信数据中包含该密钥。
较佳的,所述特征码为随机码或者与所述唯一性特征信息具有数学上的关联。
本发明提供的一种手机终端,其包括:
登录单元,用于调用远程接口完成用户帐号登录;
获取单元,用于从远程接口获取对应于外部智能设备的唯一性特征信息的特征码及其相应的密钥;
广播单元,用于发送包含所述特征码和密钥的广播指令以供接入相同局域网络的所述智能设备保存;
绑定单元,用于向远程接口发起持有该密钥的请求以将相应的特征码与所述帐号绑定。
所述手机终端进一步还包括:
显示单元,被配置为显示用于访问所述外部智能设备和/或其相关数据的用户界面。
进一步,所述显示单元被配置为通过所述的用户界面接收用户指令,以发起访问所述外部智能设备和/或其相关数据的请求。
较佳的,该手机终端被配置为基于所述特征码进行的通信,以安全套接字层超文本传输协议的数据报文的格式进行封装。
具体的,所述数据报文经过远程接口中转传输给所述特征码指向的所述外部智能设备。
较佳的,该数据报文为请求报文,其中包含所述外部智能设备的特征码及其相应的密钥。
进一步,所述手机终端还包括配置单元,用于接入所述智能设备以获取其唯一性特征信息。
具体的,所述配置单元包括:
断开连接模块,用于断开与所述局域网络的当前连接;
接入模块,用于接入处于WiFi Direct协议所规范的接入点模式的所述智能设备;
信息获取模块,用于获取该智能设备的唯一性特征信息。
进一步,所述配置单元还包括:
传输模块,用于向该智能设备传输用于接入所述局域网络的配置信息以使该智能设备接入所述局域网络;
恢复连接模块,用于恢复接入所述局域网络。
较佳的,所述广播指令被配置为以UDP数据包格式发送。
具体的,所述登录单元被配置为完成用户帐号登录后,使本机通过远程接口获取为自身分配的特征码及相应的密钥,进行通信时,在通信数据中包含该密钥。
较佳的,所述特征码为随机码或者与所述唯一性特征信息具有数学上的关联。
本发明另一目的所提供的一种帐号与设备绑定执行方法,包括如下步骤:
响应于第一来源的请求,生成并返回相应的特征码和密钥,激活用户帐号对请求方的授权;
响应于该第一来源的包含第二来源的唯一性特征信息的请求,生成对应于该特征信息的特征码和密钥并反馈之;
响应于该第一来源的包含所述第二来源的特征码和密钥的请求,将所述第二来源的特征码与所述用户帐号绑定。
较佳的,所述请求的数据报文格式为安全套接字层超文本传输协议所规范的格式。
较佳的,所述特征码随机生成,所述密钥与相应的特征码之间具有数学上的关联。
进一步,该方法还包括如下步骤:响应于第一来源的包含第二来源的特征码的请求,向所述第一来源反馈第二来源的数据。
同理,该方法还包括如下步骤:响应于第一来源的包含第二来源的特征码的请求,向所述第二来源发送控制指令。
本发明所提供的一种云端服务器,其包括:
激活单元,被配置为响应于第一来源的请求,生成并返回相应的特征码和密钥,激活用户帐号对请求方的授权;
生成单元,被配置为响应于该第一来源的包含第二来源的唯一性特征信息的请求,生成对应于该特征信息的特征码和密钥并反馈之;
绑定执行单元,被配置为响应于该第一来源的包含所述第二来源的特征码和密钥的请求,将所述第二来源的特征码与所述用户帐号绑定。
较佳的,所述请求的数据报文格式为安全套接字层超文本传输协议所规范的格式。
较佳的,所述特征码随机生成,所述密钥与相应的特征码之间具有数学上的关联。
进一步,所述云端服务器包括访问响应单元,被配置为响应于第一来源的包含第二来源的特征码的请求,向所述第一来源反馈第二来源的数据。
同理,所述云端服务器进一步包括访问响应单元,被配置为响应于第一来源的包含第二来源的特征码的请求,向所述第二来源发送控制指令。
与现有技术相比较,本发明的方案具有以下优点:
本发明基于用户注册的云端服务帐号,通过接收外部智能设备向云端服务方申请的特征码和相应的密钥,该特征码与该智能设备的唯一特征信息相对应以便通过该特征码来确定该智能设备,以此来向云端服务申请建立与该特征码相对应的外部智能设备与该用户帐号之间的绑定关系,以便建立通过云端服务到达所述外部智能设备的通信。以此种方式建立基于帐号的设备与帐号之间的关联关系,也便可以通过帐号建立多台智能设备之间的关联关系,过程高效,而且更为安全可控,可以通过用户帐号实现对多台设备的集中管理,能够在移动终端提供更为便捷的人性化管理服务。
本发明附加的方面和优点将在下面的描述中部分给出,这些将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中:
图1为本发明帐号与设备绑定控制方法的一个实施例的流程示意图;
图2为本发明的手机终端与智能设备交互的流程示意图;
图3为本发明帐号与设备绑定控制方法的另一实施例的流程示意图;
图4为本发明帐号与设备绑定执行方法的一个实施例的流程示意图;
图5为本发明的手机终端的一个实施例的结构示意图;
图6为本发明的手机终端的另一实施例的结构示意图;
图7为本发明的云端服务器的一个实施例的结构示意图;
图8为用于说明本发明的应用场景的原理示意图。
具体实施方式
下面详细描述本发明的实施例,所述实施例的示例在附图中示出,其中自始至终相同或类似的标号表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施例是示例性的,仅用于解释本发明,而不能解释为对本发明的限制。
本技术领域技术人员可以理解,除非特意声明,这里使用的单数形式“一”、“一个”、“所述”和“该”也可包括复数形式。应该进一步理解的是,本发明的说明书中使用的措辞“包括”是指存在所述特征、整数、步骤、操作、元件和/或组件,但是并不排除存在或添加一个或多个其他特征、整数、步骤、操作、元件、组件和/或它们的组。应该理解,当我们称元件被“连接”或“耦接”到另一元件时,它可以直接连接或耦接到其他元件,或者也可以存在中间元件。此外,这里使用的“连接”或“耦接”可以包括无线连接或无线耦接。这里使用的措辞“和/或”包括一个或更多个相关联的列出项的全部或任一单元和全部组合。
本技术领域技术人员可以理解,除非另外定义,这里使用的所有术语(包括技术术语和科学术语),具有与本发明所属领域中的普通技术人员的一般理解相同的意义。还应该理解的是,诸如通用字典中定义的那些术语,应该被理解为具有与现有技术的上下文中的意义一致的意义,并且除非像这里一样被特定定义,否则不会用理想化或过于正式的含义来解释。
本技术领域技术人员可以理解,这里所使用的“终端”、“终端设备”、“智能终端”、“智能设备”、“手机终端”等概念,并无严格的区分,它们既包括无线信号接收器的设备,其仅具备无发射能力的无线信号接收器的设备,又包括接收和发射硬件的设备,其具有能够在双向通信链路上,执行双向通信的接收和发射硬件的设备。这种设备可以包括:蜂窝或其他通信设备,其具有单线路显示器或多线路显示器或没有多线路显示器的蜂窝或其他通信设备;PCS(Personal Communications Service,个人通信系统),其可以组合语音、数据处理、传真和/或数据通信能力;PDA(Personal Digital Assistant,个人数字助理),其可以包括射频接收器、寻呼机、互联网/内联网访问、网络浏览器、记事本、日历和/或GPS(GlobalPositioning System,全球定位系统)接收器;常规膝上型和/或掌上型计算机或其他设备,其具有和/或包括射频接收器的常规膝上型和/或掌上型计算机或其他设备。这里所使用的各种“终端”可以是便携式、可运输、安装在交通工具(航空、海运和/或陆地)中的,或者适合于和/或配置为在本地运行,和/或以分布形式,运行在地球和/或空间的任何其他位置运行。这里所使用的各种概念所指向的硬件形式还可以是各种通信终端、上网终端、音乐/视频播放终端,例如可以是PDA、MID(Mobile Internet Device,移动互联网设备)和/或具有音乐/视频播放功能的移动电话,也可以是智能电视、机顶盒、智能摄像头、智能遥控器、智能插座等设备。
本技术领域技术人员可以理解,这里所使用的远端网络设备,其包括但不限于计算机、网络主机、单个网络服务器、多个网络服务器集或多个服务器构成的云。在此,云由基于云计算(Cloud Computing)的大量计算机或网络服务器构成,其中,云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个超级虚拟计算机。本发明的实施例中,远端网络设备、终端设备与WNS服务器之间可通过任何通信方式实现通信,包括但不限于,基于3GPP、LTE、WIMAX的移动通信、基于TCP/IP、UDP协议的计算机网络通信以及基于蓝牙、红外传输标准的近距无线传输方式。
本发明是为了因应物联网的发展而提出的网络接入技术解决方案,其应用场景更为适合以WiFi技术实现的局域网,但理论上应与操作系统无必然关联。本发明期望利用其技术方案实现在手机终端的操控下,使外部智能设备与已经在手机终端实现登录的用户帐号进行绑定,以此建立该智能设备与该用户帐号的关联关系,这种绑定关系对于手机终端自身而言,在手机终端进行用户登录之后可能便已完成,也即,手机终端也已经实现了自身与该帐号的绑定。由此,本发明将使得起中央控制作用的类似手机之类的移动智能终端能够用于自动化配置类似智能摄像头、智能手表、NAS存储服务器之类的智能终端,以便使一个或多个此类智能终端在同一帐户体系的同一帐户下实现协同互联和集中管理。
如下详细揭示本发明的帐号与设备绑定控制方法,该方法实现于手机终端。对手机终端这一概念的理解,应扩展到包括手机、平板电脑、智能手表之类的用于通过配置相应的用于执行该方法的应用程序而实现的手持控制设备。通过该设备,提供一个人机交互用户界面,来实现用户指令的执行,从而获得用户期望的结果。
请参阅图1,本发明的帐号与设备绑定控制方法的典型实施例中,该方法包括如下步骤:
步骤S11、调用远程接口完成用户帐号登录。
如前所述,手机终端上安装有相应的应用程序,该应用程序可以提供用于登录云端服务器的用户帐号登录验证界面,用户在该验证界面中输入其早先向云端服务器注册的帐号及相应的密码,甚至相关验证码等,由应用程序进程调用远程接口,将这些信息提交给云端服务器进行登录验证。
应用程序可以将用户的用户帐号登录信息,包括其帐号名称及其密码等,存储于本机中。二次登录时,不必要求用户再次提供,而可以在应用程序启动时,利用预存储的登录信息静默提交数据到云端,自动完成验证过程。
云端服务器负责对用户帐号及其关联到该帐号的相关信息进行组织和管理,通常以数据库的形式对各种信息进行存储。云端服务器完成对登录信息的校验后,执行该用户帐号对该手机终端的授权,完成用户帐号在该手机终端上的激活,向手机终端反馈为其分配的特征码和相应的密钥。在未完成登录验证之前,手机终端与云端服务器之间的通信,也可由云端服务器先为手机终端分配一临时密钥,在完成登录后更新该临时密钥为正式的访问密钥。无论如何,手机终端与云端服务器的通信,将以处于有效期的密钥为凭据进行,如果该密钥失效,将导致云端服务器不再处理包含了失效密钥的数据报文。密钥的这种管理机制,是基于云端服务器与外部终端通信而预备的,因此,不仅适用于手机终端,也适用于本发明所称的需要与所述帐号绑定的其它智能设备。而所述的特征码,是云端服务器为手机终端或者其它智能设备生成的,既可以采用随机码的方式生成,在某些实施例中,也可以表现为依据终端设备提供的唯一性特征信息利用数学运算得出结果而产生,只要将随机码类型的特征码或者依据唯一性特征信息产生的特征码与所述唯一性特征信息进行关联存储,即可建立特征码与该唯一性特征信息所指向的终端设备。终端设备的唯一性特征信息可以是其UUID,也可以是其MAC地址,在手机终端向云端服务器发送的握手请求或者其他类型的数据报文中,即可包含这一信息,以便云端服务器采用自有算法,对该唯一性特征信息进行运算,形成受自身规范的特定格式的特征码,对于云端而言,通过该特征码便可确定对应的终端设备,无论该终端设备是手机终端还是智能设备。
作为本发明的终端设备的唯一性特征信息之一,MAC地址来表示互联网上每一个站点的标识符,采用十六进制数表示,共六个字节(48位)。其中,前三个字节是由IEEE的注册管理机构RA负责给不同厂家分配的代码(高位24位),也称为“编制上唯一的标识符”(Organizationally Unique Identifier),后三个字节(低位24位)由各厂家自行指派给生产的适配器接口,称为扩展标识符(唯一性)。一个地址块可以生成224个不同的地址。MAC地址实际上就是适配器地址或适配器标识符EUI-48。可以看出,MAC地址本身具有唯一性,因此,属于该终端设备的唯一性的特征信息,借助MAC地址的利用可以体现智能终端的唯一性特征。
作为终端设备的唯一性特征信息的另一示例,是通过UUID来表达的。UUID含义是通用唯一识别码(Universally Unique Identifier),是一个软件建构的标准,也是被开源软件基金会(Open Software Foundation,OSF)的组织应用在分布式计算环境(Distributed Computing Environment,DCE)领域的一部分。UUID的目的,是让分布式系统中的所有元素,都能有唯一的辨识资讯,而不需要透过中央控制端来做辨识资讯的指定。如此一来,每个人都可以建立不与其它人冲突的UUID。在这样的情况下,就不需考虑数据库建立时的名称重复问题。目前最广泛应用的UUID,即是微软的Microsoft's Globally UniqueIdentifiers(GUIDs),而其他重要的应用,则有Linux ext2/ext3档案系统、LUKS加密分割区、GNOME、KDE、Mac OSX等等。
UUID在表达形式上是指在一台机器(智能终端)上生成的数字,它保证对在同一时空中的所有机器都是唯一的。通常平台会提供生成的API供程序调用。按照开放软件基金会(OSF)制定的标准计算,其组成用到了以太网卡地址、纳秒级时间、芯片ID码和许多可能的数字。具体而言,UUID可以为以下几部分的组合:
(1)当前日期和时间,UUID的第一个部分与时间有关,如果在生成一个UUID之后,过几秒又生成一个UUID,则第一个部分不同,其余部分相同。
(2)时钟序列。
(3)全局唯一的IEEE机器识别号,如果有网卡,从网卡MAC地址获得,没有网卡以其他方式获得。
关于UUID这个标准使用最普遍的是微软的GUID(Globals Unique Identifiers)。在ColdFusion的语言CFML中可以用CreateUUID()函数很简单地生成UUID,其格式为:
xxxxxxxx-xxxx-xxxx-xxxxxxxxxxxxxxxx(8-4-4-16),
其中每个x是0-9或a-f范围内的一个十六进制的数字。而标准的UUID格式为:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx(8-4-4-4-12),可以从cflib下载CreateGUID()UDF进行转换。
因此,可以看出,由于与本发明的应用场景相关的终端设备均具有WiFi模组,具有MAC地址,因而,不管是引用了MAC地址的UUID还是MAC地址本身,均属于终端设备的唯一性特征信息。
此外,在本发明的其它实施例中,当然也可以利用智能终端的设备信息本身来生成其唯一性特征。例如智能终端可以由其所属品牌名称字符串、型号字符串以及序列号字符串等可以灵活选用组合的特征项构造而成,从而构造出本发明所需的特征信息。
由此可见,手机终端通过调用远程接口与云端服务器通信,完成用户帐号登录,使本手机终端基于特定用户帐号建立了与云端服务器的通信渠道,这个过程中,手机终端也便获得了该用户帐号对自身的授权,激活了该用户帐号在本机上的合法使用权限,并且,也在云端服务器上将本机与该用户帐号建立了绑定关系。在同一用户帐号下,云端服务器为手机终端分配的特征码成为了该手机终端的身份识别依据,特征码与终端设备之间具有一一对应性,由此,基于同一用户帐号的多个终端设备之间的互联互通,只要实现了这种与同一帐号绑定的关联关系,便不需要再行进行基于帐号的用户身份验证。有鉴于此,本发明后续涉及智能设备唯一性特征信息、特征码和密钥之处,与上述的技术实现便是完全相同的,后续将不再赘述。但是,作为主控的一端,手机终端完成用户帐号登录是实现设备间互联互通的基础。
步骤S12、从远程接口获取对应于外部智能设备的唯一性特征信息的特征码及其相应的密钥。
本发明的实施例中,实现互联互通的示例性的各方,分别是手机终端、智能设备以及云端服务器,其中,手机终端与智能设备处于同一物理空间区域,属于同一局域网络的无线信号可以覆盖的范围,以便使手机终端与智能设备接入相同的局域网络实现本发明的绑定控制。至于所述的云端服务器,则是本发明在实现绑定的过程中,所述手机终端与所述智能设备均需与之交互的对象。
如前揭示的云端服务器为手机终端分配相应的特征码和密钥的实例,同理也可作用于所述的智能设备。然而,本发明中,智能设备并不自行通过远程接口向云端服务器获取其对应的特征码和相应的密钥,而是由手机终端从智能设备获取智能设备的唯一性特征信息之后,将其通过远程接口发送请求给云端服务器,再由云端服务器为该智能设备分配相应的特征码和密钥,将对特征码与密钥的组合反馈给手机终端以响应于该请求。持有正确密钥的终端设备发起的数据报文便能获得相应的通信权限,与其他目标地址进行通信。
参阅图2,本实施例中,为了从远程接口获取智能设备的特征码和密钥,并且为了便于后续步骤执行的连贯性,首先需要建立手机终端与智能设备进行通信的功能,本实施例通过如下具体步骤实施:
步骤S121,断开与手机终端所处的局域网络的当前连接。
通常手机终端处于接入当前的局域网络所提供的接入点(AP)的状态,因此,这种情况下,为了执行后续具体步骤,手机终端将自行断开与自身所处的局域网络的当前连接。
步骤S122、手机终端接入处于接入点模式下的智能设备。
智能设备与手机终端均具有WiFi模组,符合WiFi Direct协议的规范,因而智能设备可以通过设置使自身在接入点模式和工作模式之间实现切换。而智能设备在未能接入当前局域网络的情况下,手机终端需要对其建立点对点连接,以便后续向其传输用于接入当前局域网络的配置信息,因此,手机终端首先需要接入处于接入点模式的该智能设备。
手机终端要接入所述的智能设备,需要先获得智能设备的登录信息。获取智能设备的登录信息的途径有多种,可以从智能设备的说明书中获得,通过在手机终端提供用户界面来获取用户输入的相应登录信息,包括智能设备的服务集标识SSID、登录密码等,其中SSID也可以是手机终端自行通过扫描智能设备广播的Beacon帧来获得,或者由手机终端发送
Probe Request帧给所述智能设备来获取其响应帧Probe Response来获得。登录信息也可以通过手机终端扫描智能设备提供的二维码图案之后,依据该二维码图案所包含的该智能终端的唯一性特征信息(考虑到这一种情况的存在,可以理解,手机终端接入智能设备并不是获取唯一性特征的必要手段,本领域技术人员应当知晓),向云端服务器查询获得。无论采用何种方式,手机终端均可以获得接入智能设备所需的登录信息,以此配置手机终端自身,使手机终端接入所述的智能设备。
由于手机终端与智能设备均遵守802.11协议,因而,手机终端控制外部智能设备接入当前局域网络的过程,无论是在本步骤还是后续步骤中,均可以通过802.11协议所规范的工作在数据链路层的网络帧来传输控制指令和数据,实现两者彼此间的通信。网络帧包括前述的Beacon控制帧,还包括各种管理帧及数据帧等,视指令和数据传输的需要而定。
步骤S123、获取该智能设备的唯一性特征信息。
如前所述,手机终端可以通过二维码扫描后获得与访智能设备相对应的唯一性特征信息。除此之外,手机终端可以在接入智能设备之后,通过智能设备提供的数据帧来获取其唯一性特征信息。该数据帧可以由智能设备自行广播,也可以由手机终端向智能设备发起请求帧来获取响应而获得。
至此,手机终端便获得了智能设备的唯一性特征信息,但由于此时手机终端尚处于与智能设备连接的状态,两者均未接入相同局域网络,因此,作为较佳的实施方式,为缩短程序流程的缘故,可以继续完成后续的步骤。
步骤S124、向所述智能设备传输用于接入所述局域网络的配置信息以使之接入当前局域网络。
手机终端基于WiFi协议建立起与智能设备的通信后,便可以借用802.11协议所规范的工作在数据链路层的网络帧来实现数据传输,作为示例,手机终端将接入目标局域网络的配置信息,包括当前局域网络的服务集标识和密码(如非开放网络时)等包含在数据帧中传输给所述的智能设备,智能设备从数据帧中解析出所述的配置信息后,便断开与手机终端的连接,利用其获得的所述配置信息完成自身网络配置,然后接入当前局域网络,使接入该局域网络中,自此,智能终端便具备通过该局域网络的路由功能来实现广播通信的功能。由于配置信息占用的字节并不多,因此,某些实施例中,在手机终端与智能设备预协议的情况下,也可以将所述配置信息包含在管理帧甚至控制帧中进行传输。
步骤S125、恢复接入所述局域网络。
手机终端与所述智能设备断开连接后,将自动恢复与所述局域网络的WiFi AP的连接,由此,手机终端便与智能设备接入相同的局域网络,利用局域网络固有路由功能,手机终端与智能设备之间便可通过诸如UDP广播之类的形式实现通信。
通过上述的步骤,手机终端获取了智能设备的唯一性特征信息,并且也通过向智能设备传输接入局域网络的配置信息实现控制智能设备接入该局域网络。但是,需要注意的是,对于前述隐含的另一实施例而言,所述唯一性特征信息并不需要通过接入所述智能设备来获取的情况下,上述用于接入智能设备以及控制智能设备接入局域网络的整个过程,并不需要急于在本步骤S12中执行,而可以在本步骤S12执行完毕之后再执行,只要不影响步骤S13的执行即可。因此,本领域技术人员应当知晓这一变通的实施方式,不应以上述的过程来限制本发明各步骤的灵活实现。
步骤S12无论以何种方式获取智能设备的唯一性特征信息,均将该唯一性特征信息包含到其用户请求中,通过远程接口向云端服务器发起该请求,以期从云端服务器获得对应于该唯一性特征信息的特征码和密钥。
云端服务器接收到手机终端关于获取智能设备的特征码和密钥的请求后,运用前述关于手机终端获得其特征码和相应的密钥的相同方式,随机地,或者依据自身预设算法或者规则,基于智能设备的唯一性特征信息为所述智能设备生成相对应的特征码和相应的密钥,并反馈给手机终端,手机终端便可获得对应于该外部智能设备的唯一性特征信息的特征码及相应的密钥。如前所述,该特征码及其相应的密钥,足以使智能设备具有身份认证的能力,特征码用于使一台智能设备区别于另一智能设备,密钥用于验证对应于该特征码的设备所实施的通信的权限,以此使该设备获得通过云端服务器的通信鉴权的资格。
步骤S13、发送包含所述特征码和密钥的广播指令以供接入相同局域网络的所述智能设备保存。
手机终端获得智能设备的特征码和密钥之后,因智能设备已与手机终端处于同一WiFi局域网络,因而,手机终端可以将智能设备的特征码和密钥封装于UDP协议规范的数据包中,在局域网络中进行广播。由于UDP协议是基于不可靠传输的协议,因而,手机终端在进行广播时,适宜一次性发送多个相同的数据包,例如20至30个相同内容的数据包,以便确保智能设备能够接收到正确的数据包并提取出其中的特征码和密钥。
在智能设备一侧,当其接入局域网络之后,在预设程序的控制下,开始监听在当前局域网络中广播的UDP数据包,当其接收到手机终端广播的所述UDP数据包之后,便对其进行解析,提取出其中的对应于自身的特征码和相应的密钥。智能设备获取所述的对应于自身的唯一性特征信息的特征码和密钥之后,即可将该特征码和密钥写入其存储单元中,以备后用。作为确认,智能设备成功保存其特征码和密钥之后,可以响应于手机终端的广播而回发一个保存成功的回复,以便通知手机终端做后续处理。智能设备以数据报文进行通信时,在数据报文中附上其密钥,即可被云端服务器验证接受。
步骤S14、向远程接口发起持有该密钥的请求,以将相应的特征码与所述帐号绑定。
经过上述步骤,手机终端、智能设备、云端服务器均已知悉智能设备的特征码及其密钥。手机终端获知智能设备已经成功保存自身特征码和密钥后,便可通过远程接口向远端服务器发送一个数据报文,例如发起一个POST请求,提供自身的密钥为通信凭据以便确保与云端服务器的正常通信,同时将待绑定的智能设备的特征码和密钥包含在该数据报文中,通过远程接口向云端服务器发起该请求。以下示例性给出该请求的编程实现:
请求方法:POST
请求地址:https://openapi.iot.360.cn/home/device/bind
请求Header:
Accept:application/json
Content-Type:application/json
Cookie:
access_key=a47d0b72975427f32335c7155260b82e6369d102;
请求Body
上面的代码上,access_key是手机终端自有的密钥,binded_iot_id是待绑定的智能设备的特征码,而binded_key是待绑定的智能设备的密钥,其余相关变量的说明从略。
从上述的示例性程序源码中可以看出,手机终端只需要通过远程接口向云端服务器发起相应的绑定请求,向云端服务器传送智能设备的特征码和密钥,便可结束后续任务,云端服务器将自行在云端完成绑定操作。
当然,出于手机终端的后续管控的需要,手机终端可以接收云端服务器的反馈数据。同理,作为示例性说明,请参阅以下源码:
这段源码是云端服务器针对手机终端发起的绑定请求而反馈的,其中的"errno":0表示绑定过程未产生任何错误,"errmsg":"ok"表示成功完成手机终端的绑定请求交付的绑定任务。手机终端接收到这一数据报文后,便知悉所述的智能设备已经以其特征码与所述的用户帐号之间建立了某种数据上的映射关系,也便完成两者之间的绑定,后续其与智能设备之间,便可以以对方的特征码为目标身份识别依据,以对方的密钥为与该目标身份进行通信的凭据,实现彼此的相互通信,而不必再需要各方分别进行用户帐号认证。
表现在云端服务器的实现上,云端服务器接收到手机终端发起的请求之后,确认该数据报文所包含的access_key是手机终端的合法密钥,从而继续对该数据报文进行处理。云端服务器从该数据报文中解析出属于所述智能终端的特征码binded_iot_id与密钥binded_key之后,与服务器预存的信息进行比较验证(可以是非必须的),验证通过后,便知通信过程安全且通信各方身份可靠,于是,便将该手机终端上登录的用户帐号与该智能设备的特征码建立关联,具体而言,可以在用户数据库中添加从用户帐号名称到所述特征码的直接或间接映射的相关记录,实现用户帐号与所述智能设备的特征码之间的绑定,也就实现了用户帐号与该智能设备的绑定,同理也是实现了该智能设备与所述手机终端的间接绑定。后续云端服务器便可以从用户数据库中确定该用户帐号,进而确定该用户帐号拥有的一个或多个智能终端,以此为关系,可以在云端服务器中设置供用户存储某个智能设备的数据区域,并允许其他已绑定的终端设备访问该数据区域的内容。诸如此类,一旦智能设备与用户帐号实现了绑定,以该用户帐号登录的任何终端设备,理论上便可以利用这种帐号与设备之间的绑定关系,实现对其他已绑定的终端设备的直接的指令控制或者数据访问。如果该终端设备将部分数据存储于云端服务器的相应存储区域中,则这些登录了用户帐号的终端设备还可以获得云端服务器直接从云存储中查找到的内容,而不必一定要对目标终端设备进行直接的数据或指令访问。
如前所述,在云端服务器实现了智能设备的特征码与当前用户帐号的绑定之后,将向手机终端返回相应的结果,以便提供给手机终端进行后续处理。因此,在本发明的另一实施例中,还可以如图3所示进一步包括如下步骤:
S15、显示用于访问所述外部智能设备和/或其相关数据的用户界面。
访问所述外部智能设备和/或其相关数据,包括几方面情况,其一是通过手机终端向智能设备发送控制指令,例如使一台网络摄像机关闭其状态显示灯的控制指令;其二是通过手机终端读取智能设备的SD卡上存储的数据;其三可以是手机终端从云端服务器上读取智能设备已经上传的数据,当然,也可以是这几方面情况的任意组合。可以知晓,无论何一类型的访问操作,均是基于所述用户帐号已经完成登录之后,在该帐号所允许的权限范围内执行的,因此,访问外部智能设备和/或其相关数据的过程,是关联于该用户帐号的,必然的,为了便于人机交互而提供给用户进行访问控制的用户界面,也是关联于该用户帐号而提供的。
被显示的用户界面,以Android系统的编程为例,可以通过在应用程序中构造一个活动组件(Activity),当手机终端上的该应用程序进程接收到前述云端服务器返回的绑定结果之后,即将该活动组件激活到Activity栈顶进行显示,在该用户界面中,可以列出用于生成作用于该智能设备的对应控制指令的各项控制按钮。当某个控制按钮被触控时,便执行相应的指令,通过远程端口提交相应的请求,发送数据报文,以便实现对智能设备的远程控制或者数据交互。
需要指出的是,参照上述有关由手机终端发送请求数据报文实现绑定的程序实例,可以知晓,作为本发明的优选实施例,手机终端、云端服务器以及智能设备之间的通信协议,适宜采用安全套接字层超文本传输协议即HTTPS的方式实现。HTTPS(Hyper TextTransfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道,简单讲是HTTP的安全版。即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。它是一个URI scheme(抽象标识符体系),句法类同http:体系,用于安全的HTTP数据传输。https:URL表明它使用了HTTP,但HTTPS存在不同于HTTP的默认端口及一个加密/身份验证层(在HTTP与TCP之间)。SSL(Secure Sockets Layer安全套接层),及其继任者传输层安全(Transport Layer Security,TLS)是为网络通信提供安全及数据完整性的一种安全协议。TLS与SSL在传输层对网络连接进行加密。SSL协议提供的服务主要有1)认证用户和服务器,确保数据发送到正确的客户机和服务器;2)加密数据以防止数据中途被窃取;3)维护数据的完整性,确保数据在传输过程中不被改变。本发明由于需要在多个网络节点之间进行通信,进行特征码及其相应的密钥的传送,因而,需要借助HTTPS的这种优点来进一步提升其安全性能,实现身份认证功能,故而将本文通信所涉及的诸如特征码、密钥等数据封装在HTTPS格式的数据报文中,并以此为基础进行通信,确保通信安全。作为一个优选实施例,手机终端发起的这些数据报文,例如上述属于绑定请求的数据报文,指定了远程云端服务器,因此,将通过远程接口发送给云端服务器,由云端服务器中转传输给所述特征码指向的所述智能设备,如果该数据报文包含单向的控制指令,则可能智能设备不必返回任何数据,如果该数据报文是为了获取智能设备的实时数据而发起的,则智能设备可能需要向云端服务器返回相应的结果集的数据报文,再由服务器将其返回给手机终端做后续处理。
为了强化对手机终端与智能终端之间基于HTTPS协议所进行的通信过程的理解,以下进一步揭示若干程序实例。
一、获取设备数据的程序源码示例:
请求方法:POST
请求地址:https://openapi.iot.360.cn/home/data/get
请求Header:
Accept:application/json
Content-Type:application/json
Cookie:
access_key=3254393f0607288b8e7df4e64aa288464ad0520d;
请求参数表:
请求Body:
数据内容:
字段名 类型 说明
timestamp uint64 数据产生的时间
element bytes 具体内容
返回字段:
字段名 类型 说明
data_value DataValue数组 数据内容
返回结果:
上述源码所表达的数据报文,向云端服务器的请求地址发起该请求,其中access_key为手机终端自身所持密钥,通过其请求body向云端服务器表明要获取binded_iot_id所指向的智能设备的特定数据。该请求被云端服务器处理并向智能设备获取对应的数据后,作为结果,向手机终端返回应答数据报文,包含一个data_value结构体,内含请求数据报文期望得到的相关数据,手机终端据此可作后续处理。
二、解除智能设备与用户帐号的绑定:
请求方法:POST
请求地址:https://openapi.iot.360.cn/home/device/unbind
请求Header:
Accept:application/json
Content-Type:application/json
Cookie:
access_key=4d6be41685b9376bffb0f108e02fc058b0790479;
请求Body:
返回结果
可见,解除绑定的步骤较为简单,其形式与请求绑定的数据报文接近,只需在报文中指明binded_iot_id即可,而相应的,手机终端得到的结果报文,只需要一个表征绑定是否成功的赋值变量即可。
三、修改设备配置
请求方法:POST
请求地址:https://openapi.iot.360.cn/home/device/modify
请求Header:
Accept:application/json
Content-Type:application/json
Cookie:
access_key=8cfe6e14cc24b727683634173afc7585453b38ae;
请求Body:
返回结果:
修改智能设备的配置信息,相当于向智能设备发送一个控制指令,除其他必要的报文信外,在该数据报文中还需指定message_dec字段的内容为“device modify”(修改设备),这个字段是能够被云端服务器和/或智能设备解析的内容,一旦被接收,可以用于实施一个修改配置参数的操作,相应地,可以进一步返回结果,与前述各例同理,恕不赘述。
结合上述对本发明的详细的、多样化的示例,可以看出,本发明的帐号与设备绑定控制方法,能够更高效且更完全地实现智能设备与用户帐号之间的绑定控制,简化操作步骤,提高用户体验。
依据以上关于手机终端所执行的方法的示例性说明,以下进一步结合图4概括出本发明的云端服务器的执行方法的实现。
如前所述,云端服务器的实现,是为了配合手机终端对智能设备的绑定控制的目的而配备的,因此,本发明的帐号与设备绑定执行方法,包括如下步骤:
步骤S21、响应于第一来源的请求,生成并返回相应的特征码和密钥,激活用户帐号对请求方的授权。
如前所述,第一来源是指手机终端,云端服务器接收手机终端发起的请求的HTTPS数据报文,实质上是响应于手机终端登录用户帐号的验证请求,对用户帐号登录信息进行验证,验证通过后,即为手机终端生成相应的特征码和相应的密钥,这个过程中,自然将手机终端与该用户帐号实现了绑定,实现了该用户帐号对该手机终端的授权和激活。继而,云端服务器便可以向属于第一来源的手机终端返回相应的特征码和密钥。
步骤S22、响应于第一来源的包含第二来源的唯一性特征信息的请求,生成对应于该特征信息的特征码和密钥并反馈之。
第二来源是指需要被绑定到帐号的智能设备,智能设备并不直接向云端服务器获取其特征码和密钥,而是通过手机终端来实现这一目的。手机终端将其所获取的智能设备的唯一性特征信息包含到其请求数据报文中,发送给云端服务器。云端服务器接收该手机终端发起的请求,从中解析出智能设备即所述第二来源的唯一性特征信息,然后为其生成相应的特征码和密钥,反馈给该手机终端。如前所述,手机终端将通过局域网络广播其获得的智能设备的特征码和密钥,以便智能设备接收到该特征码和密钥进行保存,手机终端进而确认智能设备保存成功后,便可继续执行后续请求绑定的步骤。
步骤S23、响应于第一来源的包含所述第二来源的特征码和密钥的请求,将所述第二来源的特征码与所述用户帐号绑定。
这里,需要指出,云端服务器识别所述的第一来源和第二来源,可以从其接收的数据包中通过其中的IP地址或者MAC地址等唯一性地址信息来识别。本步骤中,云端服务器所接收的来自手机终端这一第一来源的请求中,包含有手机终端持有的智能设备这一第二来源的特征码和密钥,云端服务器可以对这一特征码和密钥进行验证,通过后,即可参阅前述将智能设备的特征码与该用户帐号关联性存储实现绑定。
参阅前述,云端服务器将所述的帐号与相应的智能设备执行绑定之后,后续可以响应于手机终端的访问请求,而允许手机终端向智能设备发送控制指令或者获取智能设备的数据,云端服务器响应于手机终端的此类请求,这类请求中应包含指向第二来源即智能设备的特征码,在此基础上,可以向所述第一来源反馈已经由第二来源上传到云端服务器的数据或者直接中转给智能设备提供相应的数据。同理,云端服务器也可以仅仅向所述第二来源发送由第一来源在请求数据报文中包含的控制指令。
可见,云端服务器的上述执行过程中,基于所述的用户帐号为单位执行,但在智能设备与帐号完成绑定之后,云端服务器便可不再为每一终端设备对用户帐号进行鉴权,而仅需要依据于所述的特征码和密钥构成的鉴权机制对多终端设备之间的通信进行管理即可。
以下基于模块化思维,进一步揭示依照本发明的方法所实现的手机终端及云端服务器的实施方式。
请参阅图5,本发明依照所述帐号与设备绑定控制方法构造的手机终端的典型实施例中,该手机终端包括登录单元11、获取单元12、广播单元13以及绑定单元14。后续将揭示,在如图7所示的另一实施例中,还包括显示单元15。以下详细揭示各单元所实现的功能。
所述的登录单元11,用于调用远程接口完成用户帐号登录。
如前所述,手机终端上安装有相应的应用程序,该应用程序可以提供用于登录云端服务器的用户帐号登录验证界面,用户在该验证界面中输入其早先向云端服务器注册的帐号及相应的密码,甚至相关验证码等,由应用程序进程调用远程接口,将这些信息提交给云端服务器进行登录验证。
应用程序可以将用户的用户帐号登录信息,包括其帐号名称及其密码等,存储于本机中。二次登录时,不必要求用户再次提供,而可以在应用程序启动时,利用预存储的登录信息静默提交数据到云端,自动完成验证过程。
云端服务器负责对用户帐号及其关联到该帐号的相关信息进行组织和管理,通常以数据库的形式对各种信息进行存储。云端服务器完成对登录信息的校验后,执行该用户帐号对该手机终端的授权,完成用户帐号在该手机终端上的激活,向手机终端反馈为其分配的特征码和相应的密钥。在未完成登录验证之前,手机终端与云端服务器之间的通信,也可由云端服务器先为手机终端分配一临时密钥,在完成登录后更新该临时密钥为正式的访问密钥。无论如何,手机终端与云端服务器的通信,将以处于有效期的密钥为凭据进行,如果该密钥失效,将导致云端服务器不再处理包含了失效密钥的数据报文。密钥的这种管理机制,是基于云端服务器与外部终端通信而预备的,因此,不仅适用于手机终端,也适用于本发明所称的需要与所述帐号绑定的其它智能设备。而所述的特征码,是云端服务器为手机终端或者其它智能设备生成的,既可以采用随机码的方式生成,在某些实施例中,也可以表现为依据终端设备提供的唯一性特征信息利用数学运算得出结果而产生,只要将随机码类型的特征码或者依据唯一性特征信息产生的特征码与所述唯一性特征信息进行关联存储,即可建立特征码与该唯一性特征信息所指向的终端设备。终端设备的唯一性特征信息可以是其UUID,也可以是其MAC地址,在手机终端向云端服务器发送的握手请求或者其他类型的数据报文中,即可包含这一信息,以便云端服务器采用自有算法,对该唯一性特征信息进行运算,形成受自身规范的特定格式的特征码,对于云端而言,通过该特征码便可确定对应的终端设备,无论该终端设备是手机终端还是智能设备。
作为本发明的终端设备的唯一性特征信息之一,MAC地址来表示互联网上每一个站点的标识符,采用十六进制数表示,共六个字节(48位)。其中,前三个字节是由IEEE的注册管理机构RA负责给不同厂家分配的代码(高位24位),也称为“编制上唯一的标识符”(Organizationally Unique Identifier),后三个字节(低位24位)由各厂家自行指派给生产的适配器接口,称为扩展标识符(唯一性)。一个地址块可以生成224个不同的地址。MAC地址实际上就是适配器地址或适配器标识符EUI-48。可以看出,MAC地址本身具有唯一性,因此,属于该终端设备的唯一性的特征信息,借助MAC地址的利用可以体现智能终端的唯一性特征。
作为终端设备的唯一性特征信息的另一示例,是通过UUID来表达的。UUID含义是通用唯一识别码(Universally Unique Identifier),是一个软件建构的标准,也是被开源软件基金会(Open Software Foundation,OSF)的组织应用在分布式计算环境(Distributed Computing Environment,DCE)领域的一部分。UUID的目的,是让分布式系统中的所有元素,都能有唯一的辨识资讯,而不需要透过中央控制端来做辨识资讯的指定。如此一来,每个人都可以建立不与其它人冲突的UUID。在这样的情况下,就不需考虑数据库建立时的名称重复问题。目前最广泛应用的UUID,即是微软的Microsoft's Globally UniqueIdentifiers(GUIDs),而其他重要的应用,则有Linux ext2/ext3档案系统、LUKS加密分割区、GNOME、KDE、Mac OSX等等。
UUID在表达形式上是指在一台机器(智能终端)上生成的数字,它保证对在同一时空中的所有机器都是唯一的。通常平台会提供生成的API供程序调用。按照开放软件基金会(OSF)制定的标准计算,其组成用到了以太网卡地址、纳秒级时间、芯片ID码和许多可能的数字。具体而言,UUID可以为以下几部分的组合:
(1)当前日期和时间,UUID的第一个部分与时间有关,如果在生成一个UUID之后,过几秒又生成一个UUID,则第一个部分不同,其余部分相同。
(2)时钟序列。
(3)全局唯一的IEEE机器识别号,如果有网卡,从网卡MAC地址获得,没有网卡以其他方式获得。
关于UUID这个标准使用最普遍的是微软的GUID(Globals Unique Identifiers)。在ColdFusion的语言CFML中可以用CreateUUID()函数很简单地生成UUID,其格式为:
xxxxxxxx-xxxx-xxxx-xxxxxxxxxxxxxxxx(8-4-4-16),
其中每个x是0-9或a-f范围内的一个十六进制的数字。而标准的UUID格式为:xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx(8-4-4-4-12),可以从cflib下载CreateGUID()UDF进行转换。
因此,可以看出,由于与本发明的应用场景相关的终端设备均具有WiFi模组,具有MAC地址,因而,不管是引用了MAC地址的UUID还是MAC地址本身,均属于终端设备的唯一性特征信息。
此外,在本发明的其它实施例中,当然也可以利用智能终端的设备信息本身来生成其唯一性特征。例如智能终端可以由其所属品牌名称字符串、型号字符串以及序列号字符串等可以灵活选用组合的特征项构造而成,从而构造出本发明所需的特征信息。
由此可见,手机终端通过调用远程接口与云端服务器通信,完成用户帐号登录,使本手机终端基于特定用户帐号建立了与云端服务器的通信渠道,这个过程中,手机终端也便获得了该用户帐号对自身的授权,激活了该用户帐号在本机上的合法使用权限,并且,也在云端服务器上将本机与该用户帐号建立了绑定关系。在同一用户帐号下,云端服务器为手机终端分配的特征码成为了该手机终端的身份识别依据,特征码与终端设备之间具有一一对应性,由此,基于同一用户帐号的多个终端设备之间的互联互通,只要实现了这种与同一帐号绑定的关联关系,便不需要再行进行基于帐号的用户身份验证。有鉴于此,本发明后续涉及智能设备唯一性特征信息、特征码和密钥之处,与上述的技术实现便是完全相同的,后续将不再赘述。但是,作为主控的一端,手机终端完成用户帐号登录是实现设备间互联互通的基础。
所述的获取单元12,用于从远程接口获取对应于外部智能设备的唯一性特征信息的特征码及其相应的密钥。
本发明的实施例中,实现互联互通的示例性的各方,分别是手机终端、智能设备以及云端服务器,其中,手机终端与智能设备处于同一物理空间区域,属于同一局域网络的无线信号可以覆盖的范围,以便使手机终端与智能设备接入相同的局域网络实现本发明的绑定控制。至于所述的云端服务器,则是本发明在实现绑定的过程中,所述手机终端与所述智能设备均需与之交互的对象。
如前揭示的云端服务器为手机终端分配相应的特征码和密钥的实例,同理也可作用于所述的智能设备。然而,本发明中,智能设备并不自行通过远程接口向云端服务器获取其对应的特征码和相应的密钥,而是由手机终端的获取单元12从智能设备获取智能设备的唯一性特征信息之后,将其通过远程接口发送请求给云端服务器,再由云端服务器为该智能设备分配相应的特征码和密钥,将对特征码与密钥的组合反馈给手机终端以响应于该请求。持有正确密钥的终端设备发起的数据报文便能获得相应的通信权限,与其他目标地址进行通信。
本实施例中,为了从远程接口获取智能设备的特征码和密钥,并且为了便于其他单元执行的连贯性,首先需要建立手机终端与智能设备进行通信的功能,参阅图6,本实施例通过构造一个配置单元,由该配置单元所构造的断开连接模块121、接入模块122、信息获取模块123、传输模块124以及恢复连接模块125实现。各模块实现的功能如下:
所述的断开连接模块121,用于断开与手机终端所处的局域网络的当前连接。
通常手机终端处于接入当前的局域网络所提供的接入点(AP)的状态,因此,这种情况下,手机终端将通过所述配置单元的断开连接模块121自行断开与手机终端自身所处的局域网络的当前连接。
所述的接入模块122,用于使手机终端接入处于WiFi Direct协议所规范的接入点模式下的智能设备。
智能设备与手机终端均具有WiFi模组,符合WiFi Direct协议的规范,因而智能设备可以通过设置使自身在接入点模式和工作模式之间实现切换。而智能设备在未能接入当前局域网络的情况下,手机终端需要对其建立点对点连接,以便后续向其传输用于接入当前局域网络的配置信息,因此,手机终端首先需要接入处于接入点模式的该智能设备。
所述接入模块122要接入所述的智能设备,需要先获得智能设备的登录信息。获取智能设备的登录信息的途径有多种,可以从智能设备的说明书中获得,通过在手机终端提供用户界面来获取用户输入的相应登录信息,包括智能设备的服务集标识SSID、登录密码等,其中SSID也可以是手机终端自行通过扫描智能设备广播的Beacon帧来获得,或者由手机终端发送Probe Request帧给所述智能设备来获取其响应帧Probe Response来获得。登录信息也可以通过手机终端扫描智能设备提供的二维码图案之后,依据该二维码图案所包含的该智能终端的唯一性特征信息(考虑到这一种情况的存在,可以理解,手机终端接入智能设备并不是获取唯一性特征的必要手段,本领域技术人员应当知晓),向云端服务器查询获得。无论采用何种方式,手机终端的接入模块122均可以获得接入智能设备所需的登录信息,以此配置手机终端自身,使手机终端接入所述的智能设备。
由于手机终端与智能设备均遵守802.11协议,因而,手机终端控制外部智能设备接入当前局域网络的过程,无论是在接入模块122还是其他模块中,均可以通过802.11协议所规范的工作在数据链路层的网络帧来传输控制指令和数据,实现两者彼此间的通信。网络帧包括前述的Beacon控制帧,还包括各种管理帧及数据帧等,视指令和数据传输的需要而定。
所述的信息获取模块123,用于获取该智能设备的唯一性特征信息。
如前所述,手机终端可以通过二维码扫描后获得与访智能设备相对应的唯一性特征信息。除此之外,手机终端可以在接入智能设备之后,通过该信息获取模块123接收智能设备提供的数据帧来获取其唯一性特征信息。该数据帧可以由智能设备自行广播,也可以由手机终端向智能设备发起请求帧来获取响应而获得。
至此,手机终端便获得了智能设备的唯一性特征信息,但由于此时手机终端尚处于与智能设备连接的状态,两者均未接入相同局域网络,因此,作为较佳的实施方式,为缩短程序流程的缘故,可以相继启动其余模块的执行。
所述的传输模块124,用于向所述智能设备传输用于接入所述局域网络的配置信息以使之接入当前局域网络。
手机终端基于WiFi协议建立起与智能设备的通信后,便可以借用802.11协议所规范的工作在数据链路层的网络帧来实现数据传输,作为示例,手机终端的传输模块124将接入目标局域网络的配置信息,包括当前局域网络的服务集标识和密码(如非开放网络时)等包含在数据帧中传输给所述的智能设备,智能设备从数据帧中解析出所述的配置信息后,便断开与手机终端的连接,利用其获得的所述配置信息完成自身网络配置,然后接入当前局域网络,使接入该局域网络中,自此,智能终端便具备通过该局域网络的路由功能来实现广播通信的功能。由于配置信息占用的字节并不多,因此,某些实施例中,在手机终端与智能设备预协议的情况下,也可以将所述配置信息包含在管理帧甚至控制帧中进行传输。
所述的恢复连接模块125,用于恢复接入所述局域网络。
手机终端与所述智能设备断开连接后,其恢复连接模块125将自动恢复与所述局域网络的WiFi AP的连接,由此,手机终端便与智能设备接入相同的局域网络,利用局域网络固有路由功能,手机终端与智能设备之间便可通过诸如UDP广播之类的形式实现通信。
通过该配置单元所实现的功能的运行,手机终端获取了智能设备的唯一性特征信息,并且也通过向智能设备传输接入局域网络的配置信息实现控制智能设备接入该局域网络。但是,需要注意的是,对于前述隐含的另一实施例而言,所述唯一性特征信息并不需要通过接入所述智能设备来获取的情况下,上述配置单元实现的用于接入智能设备以及控制智能设备接入局域网络的整个过程,并不需要包含于本获取单元12中执行,而可以独立于该获取单元12,与该获取单元12同步,或者在该获取单元12被执行后再执行,只要该配置单元能够为所述的广播单元13提供数据即可。因此,本领域技术人员应当知晓这一变通的实施方式,不应以上述的配置单元所实现的功能来限制本发明的获取单元12和广播单元13的灵活实现。
本发明的获取单元12无论以何种方式获取智能设备的唯一性特征信息,均将该唯一性特征信息包含到其用户请求中,通过远程接口向云端服务器发起该请求,以期从云端服务器获得对应于该唯一性特征信息的特征码和密钥。
云端服务器接收到手机终端关于获取智能设备的特征码和密钥的请求后,运用前述关于手机终端获得其特征码和相应的密钥的相同方式,随机地,或者依据自身预设算法或者规则,基于智能设备的唯一性特征信息为所述智能设备生成相对应的特征码和相应的密钥,并反馈给手机终端,手机终端便可获得对应于该外部智能设备的唯一性特征信息的特征码及相应的密钥。如前所述,该特征码及其相应的密钥,足以使智能设备具有身份认证的能力,特征码用于使一台智能设备区别于另一智能设备,密钥用于验证对应于该特征码的设备所实施的通信的权限,以此使该设备获得通过云端服务器的通信鉴权的资格。
所述的广播单元13,用于发送包含所述特征码和密钥的广播指令以供接入相同局域网络的所述智能设备保存。
手机终端获得智能设备的特征码和密钥之后,因智能设备已与手机终端处于同一WiFi局域网络,因而,手机终端可以通过其广播单元13将智能设备的特征码和密钥封装于UDP协议规范的数据包中,在局域网络中进行广播。由于UDP协议是基于不可靠传输的协议,因而,广播单元13在进行广播时,适宜一次性发送多个相同的数据包,例如20至30个相同内容的数据包,以便确保智能设备能够接收到正确的数据包并提取出其中的特征码和密钥。
在智能设备一侧,当其接入局域网络之后,在预设程序的控制下,开始监听在当前局域网络中广播的UDP数据包,当其接收到手机终端广播的所述UDP数据包之后,便对其进行解析,提取出其中的对应于自身的特征码和相应的密钥。智能设备获取所述的对应于自身的唯一性特征信息的特征码和密钥之后,即可将该特征码和密钥写入其存储单元中,以备后用。作为确认,智能设备成功保存其特征码和密钥之后,可以响应于手机终端的广播而回发一个保存成功的回复,以便通知所述广播单元13做后续处理。智能设备以数据报文进行通信时,在数据报文中附上其密钥,即可被云端服务器验证接受。
所述的绑定单元14,用于向远程接口发起持有该密钥的请求,以将相应的特征码与所述帐号绑定。
在前述手机终端的各个单元的协助下,手机终端、智能设备、云端服务器均已知悉智能设备的特征码及其密钥。手机终端获知智能设备已经成功保存自身特征码和密钥后,便可由其绑定单元14,通过远程接口向远端服务器发送一个数据报文,例如发起一个POST请求,提供自身的密钥为通信凭据以便确保与云端服务器的正常通信,同时将待绑定的智能设备的特征码和密钥包含在该数据报文中,通过远程接口向云端服务器发起该请求。以下示例性给出该请求的编程实现:
请求方法:POST
请求地址:https://openapi.iot.360.cn/home/device/bind
请求Header:
Accept:application/json
Content-Type:application/json
Cookie:
access_key=a47d0b72975427f32335c7155260b82e6369d102;
请求Body
上面的代码上,access_key是手机终端自有的密钥,binded_iot_id是待绑定的智能设备的特征码,而binded_key是待绑定的智能设备的密钥,其余相关变量的说明从略。
从上述的示例性程序源码中可以看出,手机终端只需要借助其绑定单元14通过远程接口向云端服务器发起相应的绑定请求,向云端服务器传送智能设备的特征码和密钥,便可结束后续任务,云端服务器将自行在云端完成绑定操作。
当然,出于手机终端的后续管控的需要,绑定单元14可以接收云端服务器的反馈数据。同理,作为示例性说明,请参阅以下源码:
这段源码是云端服务器针对手机终端发起的绑定请求而反馈的,其中的"errno":0表示绑定过程未产生任何错误,"errmsg":"ok"表示成功完成手机终端的绑定请求交付的绑定任务。手机终端的绑定单元14接收到这一数据报文后,便知悉所述的智能设备已经以其特征码与所述的用户帐号之间建立了某种数据上的映射关系,也便完成两者之间的绑定,后续其与智能设备之间,便可以以对方的特征码为目标身份识别依据,以对方的密钥为与该目标身份进行通信的凭据,实现彼此的相互通信,而不必再需要各方分别进行用户帐号认证。
表现在云端服务器的实现上,云端服务器接收到手机终端发起的请求之后,确认该数据报文所包含的access_key是手机终端的合法密钥,从而继续对该数据报文进行处理。云端服务器从该数据报文中解析出属于所述智能终端的特征码binded_iot_id与密钥binded_key之后,与服务器预存的信息进行比较验证(可以是非必须的),验证通过后,便知通信过程安全且通信各方身份可靠,于是,便将该手机终端上登录的用户帐号与该智能设备的特征码建立关联,具体而言,可以在用户数据库中添加从用户帐号名称到所述特征码的直接或间接映射的相关记录,实现用户帐号与所述智能设备的特征码之间的绑定,也就实现了用户帐号与该智能设备的绑定,同理也是实现了该智能设备与所述手机终端的间接绑定。后续云端服务器便可以从用户数据库中确定该用户帐号,进而确定该用户帐号拥有的一个或多个智能终端,以此为关系,可以在云端服务器中设置供用户存储某个智能设备的数据区域,并允许其他已绑定的终端设备访问该数据区域的内容。诸如此类,一旦智能设备与用户帐号实现了绑定,以该用户帐号登录的任何终端设备,理论上便可以利用这种帐号与设备之间的绑定关系,实现对其他已绑定的终端设备的直接的指令控制或者数据访问。如果该终端设备将部分数据存储于云端服务器的相应存储区域中,则这些登录了用户帐号的终端设备还可以获得云端服务器直接从云存储中查找到的内容,而不必一定要对目标终端设备进行直接的数据或指令访问。
如前所述,在云端服务器实现了智能设备的特征码与当前用户帐号的绑定之后,将向手机终端返回相应的结果,以便提供给手机终端的绑定单元14进行后续处理。因此,在本发明的另一实施例中,还可以如图7所示进一步包括一显示单元15:
所述的显示单元15,被配置为显示用于访问所述外部智能设备和/或其相关数据的用户界面。
访问所述外部智能设备和/或其相关数据,包括几方面情况,其一是通过手机终端向智能设备发送控制指令,例如使一台网络摄像机关闭其状态显示灯的控制指令;其二是通过手机终端读取智能设备的SD卡上存储的数据;其三可以是手机终端从云端服务器上读取智能设备已经上传的数据,当然,也可以是这几方面情况的任意组合。可以知晓,无论何一类型的访问操作,均是基于所述用户帐号已经完成登录之后,在该帐号所允许的权限范围内执行的,因此,访问外部智能设备和/或其相关数据的过程,是关联于该用户帐号的,必然的,为了便于人机交互而提供给用户进行访问控制的用户界面,也是关联于该用户帐号而提供的。
被所述显示单元15所显示的用户界面,以Android系统的编程为例,可以通过在应用程序中构造一个活动组件(Activity),当手机终端上的该应用程序进程接收到前述云端服务器返回的绑定结果之后,即将该活动组件激活到Activity栈顶进行显示,在该用户界面中,可以列出用于生成作用于该智能设备的对应控制指令的各项控制按钮。当某个控制按钮被触控时,便执行相应的指令,通过远程端口提交相应的请求,发送数据报文,以便实现对智能设备的远程控制或者数据交互。
需要指出的是,参照上述有关由手机终端发送请求数据报文实现绑定的程序实例,可以知晓,作为本发明的优选实施例,手机终端、云端服务器以及智能设备之间的通信协议,适宜采用安全套接字层超文本传输协议即HTTPS的方式实现。HTTPS(Hyper TextTransfer Protocol over Secure Socket Layer),是以安全为目标的HTTP通道,简单讲是HTTP的安全版。即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。它是一个URI scheme(抽象标识符体系),句法类同http:体系,用于安全的HTTP数据传输。https:URL表明它使用了HTTP,但HTTPS存在不同于HTTP的默认端口及一个加密/身份验证层(在HTTP与TCP之间)。SSL(Secure Sockets Layer安全套接层),及其继任者传输层安全(Transport Layer Security,TLS)是为网络通信提供安全及数据完整性的一种安全协议。TLS与SSL在传输层对网络连接进行加密。SSL协议提供的服务主要有1)认证用户和服务器,确保数据发送到正确的客户机和服务器;2)加密数据以防止数据中途被窃取;3)维护数据的完整性,确保数据在传输过程中不被改变。本发明由于需要在多个网络节点之间进行通信,进行特征码及其相应的密钥的传送,因而,需要借助HTTPS的这种优点来进一步提升其安全性能,实现身份认证功能,故而将本文通信所涉及的诸如特征码、密钥等数据封装在HTTPS格式的数据报文中,并以此为基础进行通信,确保通信安全。作为一个优选实施例,手机终端发起的这些数据报文,例如上述属于绑定请求的数据报文,指定了远程云端服务器,因此,将通过远程接口发送给云端服务器,由云端服务器中转传输给所述特征码指向的所述智能设备,如果该数据报文包含单向的控制指令,则可能智能设备不必返回任何数据,如果该数据报文是为了获取智能设备的实时数据而发起的,则智能设备可能需要向云端服务器返回相应的结果集的数据报文,再由服务器将其返回给手机终端做后续处理。
为了强化对手机终端与智能终端之间基于HTTPS协议所进行的通信过程的理解,以下进一步揭示若干程序实例。
一、获取设备数据的程序源码示例:
请求方法:POST
请求地址:https://openapi.iot.360.cn/home/data/get
请求Header:
Accept:application/json
Content-Type:application/json
Cookie:
access_key=3254393f0607288b8e7df4e64aa288464ad0520d;
请求参数表:
请求Body:
数据内容:
字段名 类型 说明
timestamp uint64 数据产生的时间
element bytes 具体内容
返回字段:
字段名 类型 说明
data_value DataValue数组 数据内容
返回结果:
上述源码所表达的数据报文,向云端服务器的请求地址发起该请求,其中access_key为手机终端自身所持密钥,通过其请求body向云端服务器表明要获取binded_iot_id所指向的智能设备的特定数据。该请求被云端服务器处理并向智能设备获取对应的数据后,作为结果,向手机终端返回应答数据报文,包含一个data_value结构体,内含请求数据报文期望得到的相关数据,手机终端据此可作后续处理。
二、解除智能设备与用户帐号的绑定:
请求方法:POST
请求地址:https://openapi.iot.360.cn/home/device/unbind
请求Header:
Accept:application/json
Content-Type:application/json
Cookie:
access_key=4d6be41685b9376bffb0f108e02fc058b0790479;
请求Body:
返回结果
可见,解除绑定的过程较为简单,其形式与请求绑定的数据报文接近,只需在报文中指明binded_iot_id即可,而相应的,手机终端得到的结果报文,只需要一个表征绑定是否成功的赋值变量即可。
三、修改设备配置
请求方法:POST
请求地址:https://openapi.iot.360.cn/home/device/modify
请求Header:
Accept:application/json
Content-Type:application/json
Cookie:
access_key=8cfe6e14cc24b727683634173afc7585453b38ae;
请求Body:
返回结果:
修改智能设备的配置信息,相当于向智能设备发送一个控制指令,除其他必要的报文信外,在该数据报文中还需指定message_dec字段的内容为“device modify”(修改设备),这个字段是能够被云端服务器和/或智能设备解析的内容,一旦被接收,可以用于实施一个修改配置参数的操作,相应地,可以进一步返回结果,与前述各例同理,恕不赘述。
结合上述对本发明的详细的、多样化的示例,可以看出,本发明的手机终端能够更高效且更完全地实现智能设备与用户帐号之间的绑定控制,简化操作步骤,提高用户体验。
依据以上关于手机终端的示例性说明,以下进一步结合图8概括出本发明的云端服务器的构造。
如前所述,云端服务器的实现,是为了配合手机终端对智能设备的绑定控制的目的而配备的,因此,云端服务器包括激活单元21、生成单元22以及绑定执行单元23。以下详细揭示各单元所执行的功能:
所述的激活单元21,被配置为响应于第一来源的请求,生成并返回相应的特征码和密钥,激活用户帐号对请求方的授权。
如前所述,第一来源是指手机终端,云端服务器的激活单元21接收手机终端发起的请求的HTTPS数据报文,实质上是响应于手机终端登录用户帐号的验证请求,对用户帐号登录信息进行验证,验证通过后,即为手机终端生成相应的特征码和相应的密钥,这个过程中,自然将手机终端与该用户帐号实现了绑定,实现了该用户帐号对该手机终端的授权和激活。继而,云端服务器便可以向属于第一来源的手机终端返回相应的特征码和密钥。
所述的生成单元22,被配置为响应于第一来源的包含第二来源的唯一性特征信息的请求,生成对应于该特征信息的特征码和密钥并反馈之。
第二来源是指需要被绑定到帐号的智能设备,智能设备并不直接向云端服务器获取其特征码和密钥,而是通过手机终端来实现这一目的。手机终端将其所获取的智能设备的唯一性特征信息包含到其请求数据报文中,发送给云端服务器。云端服务器的生成单元22接收该手机终端发起的请求,从中解析出智能设备即所述第二来源的唯一性特征信息,然后为其生成相应的特征码和密钥,反馈给该手机终端。如前所述,手机终端将通过局域网络广播其获得的智能设备的特征码和密钥,以便智能设备接收到该特征码和密钥进行保存,手机终端进而确认智能设备保存成功后,便可激活所述的绑定执行单元23。
所述的绑定执行单元23,被配置为响应于第一来源的包含所述第二来源的特征码和密钥的请求,将所述第二来源的特征码与所述用户帐号绑定。
这里,需要指出,云端服务器识别所述的第一来源和第二来源,可以从其接收的数据包中通过其中的IP地址或者MAC地址等唯一性地址信息来识别。绑定执行单元23中,其接收的来自手机终端这一第一来源的请求中,包含有手机终端持有的智能设备这一第二来源的特征码和密钥,云端服务器的绑定执行单元23可以对这一特征码和密钥进行验证,通过后,即可参阅前述将智能设备的特征码与该用户帐号关联性存储实现绑定。
参阅前述,云端服务器的绑定执行单元23将所述的帐号与相应的智能设备执行绑定之后,后续云端服务器便可以响应于手机终端的访问请求,而允许手机终端向智能设备发送控制指令或者获取智能设备的数据,云端服务器响应于手机终端的此类请求,这类请求中应包含指向第二来源即智能设备的特征码,在此基础上,可以向所述第一来源反馈已经由第二来源上传到云端服务器的数据或者直接中转给智能设备提供相应的数据。同理,云端服务器也可以仅仅向所述第二来源发送由第一来源在请求数据报文中包含的控制指令。
可见,云端服务器的各单元的功能的运行,基于所述的用户帐号为单位执行,但在智能设备与帐号完成绑定之后,云端服务器便可不再为每一终端设备对用户帐号进行鉴权,而仅需要依据于所述的特征码和密钥构成的鉴权机制对多终端设备之间的通信进行管理即可。
为了便于更直观地理解本发明,如下提供一个应用场景供参照。
本发明的一个应用场景中,用户欲将购置回来的智能设备接入家庭的WiFi网络中,以便接入互联网使用,使得后续可以不受地域限制地利用智能设备自身提供的云存储功能,在服务器上观看该智能设备的实时或回放录像,以便实现对家庭的室内的安防监控。为此,用户需要下载一个实现了本发明的方法的应用程序(APP)并安装到手机或者平板电脑之类的手机终端上,然后在手机终端上执行设置操作。
用户使用手机终端,运行所述的应用程序,应用程序要求用户帐号登录,用户输入用户帐号及相应的密码之后,应用程序进程将其提交到云端服务器完成验证和授权,获得为手机终端提供的特征码(iot_id)及相应的密钥(key),使手机终端获得基于所述用户帐号传输数据报文的权限。
继而,用户欲控制所述智能设备,应用程序响应于用户操作而提供一个接受当前局域网络的密码(程序进程已提供SSID)的用户界面,用户输入的信息构成了接入当前局域网络的配置信息,可以提供给智能设备接入当前局域网络。
应用程序可以在获得智能设备的唯一性特征信息之后,例如MAC地址或者通过扫描二维码获得的智能设备的UUID,通过一系列的无需用户干预的操作,利用该特征信息完成向云服务器的远程查询,获得适配于该智能设备的登录信息,必要时先行断开已存在的WiFi网络连接,并且利用该登录信息配置自身的网络配置,建立与所述智能终端之间的点对点连接,向该智能终端传输之前已经获取的目标网络的配置信息。智能终端同理以无需用户干预的方式,接受所述智能终端的连接,接收所述的配置信息,断开与手机终端的连接,配置自身网络配置,接入家庭的所述目标网络,最终实现智能终端接入互联网。
在手机终端成功获得智能设备的唯一性特征信息之后,将自行向云端服务器申请获得与智能设备相对应的特征码和密钥,然后将其以UDP数据包的格式广播这些信息。已经接入同一局域网络的智能设备便接收这些广播,从这些广播中获得智能设备的特征码和密钥并写入自身的存储单元中,并向手机终端发送确认信息。手机终端获知智能设备已经成功写入其特征码和密钥之后,便可将智能设备的特征码和密钥包含到相应的请求数据报文中,通过远程接口向云端服务器请求绑定,云端服务器接收到该请求数据报文之后,即将智能设备的特征码与用户帐号进行绑定,完成绑定之后,将向手机终端反馈结果。
手机终端知悉云端服务器完成智能设备与帐号的绑定之后,便可弹出或者更新用户界面,在该用户界面上显示智能设备的图标,并且接收用户访问该智能设备的指令,用户由此便可通过该用户界面来实施对智能设备的控制。
综上所述,本发明的实施,使帐号与设备之间的绑定过程更为便捷高效,且安全可靠。
以上所述仅是本发明的部分实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本发明的保护范围。

Claims (32)

1.一种帐号与设备绑定控制方法,其特征在于,包括如下步骤:
调用远程接口完成用户帐号登录;完成用户帐号登录后,本机通过远程接口获取为自身分配的特征码及相应的密钥,进行通信时,在通信数据中包含该密钥;
从远程接口获取对应于外部智能设备的唯一性特征信息的特征码及其相应的密钥;
发送包含对应于外部智能设备的特征码和密钥的广播指令以供接入相同局域网络的所述智能设备保存;
向远程接口发起持有对应于外部智能设备的密钥的请求以将相应的特征码与所述帐号绑定。
2.根据权利要求1所述的方法,其特征在于,还包括如下后续步骤:
显示用于访问所述外部智能设备和/或其相关数据的用户界面。
3.根据权利要求2所述的方法,其特征在于,通过所述的用户界面接收用户指令,以发起访问所述外部智能设备和/或其相关数据的请求。
4.根据权利要求1所述的方法,其特征在于,基于所述特征码进行的通信,以安全套接字层超文本传输协议的数据报文的格式进行封装。
5.根据权利要求4所述的方法,其特征在于,所述数据报文经过远程接口中转传输给所述特征码指向的所述外部智能设备。
6.根据权利要求4所述的方法,其特征在于,该数据报文为请求报文,其中包含所述外部智能设备的特征码及其相应的密钥。
7.根据权利要求1所述的方法,其特征在于,其包括用于接入所述智能设备以获取其唯一性特征信息的步骤。
8.根据权利要求7所述的方法,其特征在于,采取如下步骤用于获取智能设备的唯一性特征信息:
断开与所述局域网络的当前连接;
接入处于WiFi Direct协议所规范的接入点模式的所述智能设备;
获取该智能设备的唯一性特征信息。
9.根据权利要求8所述的方法,其特征在于,接入所述智能设备以获取其唯一性特征信息之后还包括如下步骤:
向该智能设备传输用于接入所述局域网络的配置信息以使该智能设备接入所述局域网络;
恢复接入所述局域网络。
10.根据权利要求1所述的方法,其特征在于,所述广播指令以UDP数据包格式发送。
11.根据权利要求1所述的方法,其特征在于,所述特征码为随机码或者与所述唯一性特征信息具有数学上的关联。
12.一种手机终端,其特征在于,其包括:
登录单元,用于调用远程接口完成用户帐号登录;所述登录单元被配置为完成用户帐号登录后,使本机通过远程接口获取为自身分配的特征码及相应的密钥,进行通信时,在通信数据中包含该密钥;
获取单元,用于从远程接口获取对应于外部智能设备的唯一性特征信息的特征码及其相应的密钥;
广播单元,用于发送包含对应于外部智能设备的特征码和密钥的广播指令以供接入相同局域网络的所述智能设备保存;
绑定单元,用于向远程接口发起持有对应于外部智能设备的密钥的请求以将相应的特征码与所述帐号绑定。
13.根据权利要求12所述的手机终端,其特征在于,其还包括:
显示单元,被配置为显示用于访问所述外部智能设备和/或其相关数据的用户界面。
14.根据权利要求13所述的手机终端,其特征在于,所述显示单元被配置为通过所述的用户界面接收用户指令,以发起访问所述外部智能设备和/或其相关数据的请求。
15.根据权利要求12所述的手机终端,其特征在于,该手机终端被配置为基于所述特征码进行的通信,以安全套接字层超文本传输协议的数据报文的格式进行封装。
16.根据权利要求15所述的手机终端,其特征在于,所述数据报文经过远程接口中转传输给所述特征码指向的所述外部智能设备。
17.根据权利要求15所述的手机终端,其特征在于,该数据报文为请求报文,其中包含所述外部智能设备的特征码及其相应的密钥。
18.根据权利要求12所述的手机终端,其特征在于,其包括配置单元,用于接入所述智能设备以获取其唯一性特征信息。
19.根据权利要求18所述的手机终端,其特征在于,所述配置单元具体包括:
断开连接模块,用于断开与所述局域网络的当前连接;
接入模块,用于接入处于WiFi Direct协议所规范的接入点模式的所述智能设备;
信息获取模块,用于获取该智能设备的唯一性特征信息。
20.根据权利要求19所述的手机终端,其特征在于,所述配置单元还包括:
传输模块,用于向该智能设备传输用于接入所述局域网络的配置信息以使该智能设备接入所述局域网络;
恢复连接模块,用于恢复接入所述局域网络。
21.根据权利要求12所述的手机终端,其特征在于,所述广播指令被配置为以UDP数据包格式发送。
22.根据权利要求12所述的手机终端,其特征在于,所述特征码为随机码或者与所述唯一性特征信息具有数学上的关联。
23.一种帐号与设备绑定执行方法,其特征在于,包括如下步骤:
响应于第一来源的请求,生成并返回相应的特征码和密钥,激活用户帐号对请求方的授权;
响应于该第一来源的包含第二来源的唯一性特征信息的请求,生成对应于该特征信息的特征码和密钥并反馈之;
响应于该第一来源的包含所述第二来源的特征码和密钥的请求,将所述第二来源的特征码与所述用户帐号绑定。
24.根据权利要求23所述的方法,其特征在于,所述请求的数据报文格式为安全套接字层超文本传输协议所规范的格式。
25.根据权利要求23所述的方法,其特征在于,所述特征码随机生成,所述密钥与相应的特征码之间具有数学上的关联。
26.根据权利要求23所述的方法,其特征在于,还包括如下步骤:响应于第一来源的包含第二来源的特征码的请求,向所述第一来源反馈第二来源的数据。
27.根据权利要求23所述的方法,其特征在于,还包括如下步骤:响应于第一来源的包含第二来源的特征码的请求,向所述第二来源发送控制指令。
28.一种云端服务器,其特征在于,其包括:
激活单元,被配置为响应于第一来源的请求,生成并返回相应的特征码和密钥,激活用户帐号对请求方的授权;
生成单元,被配置为响应于该第一来源的包含第二来源的唯一性特征信息的请求,生成对应于该特征信息的特征码和密钥并反馈之;
绑定执行单元,被配置为响应于该第一来源的包含所述第二来源的特征码和密钥的请求,将所述第二来源的特征码与所述用户帐号绑定。
29.根据权利要求28所述的云端服务器,其特征在于,所述请求的数据报文格式为安全套接字层超文本传输协议所规范的格式。
30.根据权利要求28所述的云端服务器,其特征在于,所述特征码随机生成,所述密钥与相应的特征码之间具有数学上的关联。
31.根据权利要求28所述的云端服务器,其特征在于,其包括访问响应单元,被配置为响应于第一来源的包含第二来源的特征码的请求,向所述第一来源反馈第二来源的数据。
32.根据权利要求28所述的云端服务器,其特征在于,其包括访问响应单元,被配置为响应于第一来源的包含第二来源的特征码的请求,向所述第二来源发送控制指令。
CN201510290054.0A 2015-05-29 2015-05-29 服务器、手机终端及其帐号与设备绑定执行、控制方法 Active CN105100052B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201510290054.0A CN105100052B (zh) 2015-05-29 2015-05-29 服务器、手机终端及其帐号与设备绑定执行、控制方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201510290054.0A CN105100052B (zh) 2015-05-29 2015-05-29 服务器、手机终端及其帐号与设备绑定执行、控制方法

Publications (2)

Publication Number Publication Date
CN105100052A CN105100052A (zh) 2015-11-25
CN105100052B true CN105100052B (zh) 2019-07-05

Family

ID=54579599

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201510290054.0A Active CN105100052B (zh) 2015-05-29 2015-05-29 服务器、手机终端及其帐号与设备绑定执行、控制方法

Country Status (1)

Country Link
CN (1) CN105100052B (zh)

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106874309B (zh) * 2015-12-14 2020-06-09 阿里巴巴集团控股有限公司 设备与对象之间映射关系的建立方法及装置
CN105610866A (zh) * 2016-02-18 2016-05-25 四川长虹电器股份有限公司 实现智能设备自动接入家庭无线局域网系统及方法
CN107357597B (zh) * 2016-05-10 2021-11-12 霍尼韦尔环境自控产品(天津)有限公司 成批设备的配置方法
CN105929719A (zh) * 2016-06-08 2016-09-07 东莞市利发爱尔空气净化系统有限公司 一种基于净化器的数据通信方法及装置
CN107872312B (zh) * 2016-09-26 2020-02-07 北京京东尚科信息技术有限公司 对称密钥动态生成方法、装置、设备及系统
CN106709713B (zh) * 2016-12-16 2023-03-28 捷德(中国)科技有限公司 一种管理用户多个可穿戴设备的方法
DE102017205887A1 (de) * 2017-04-06 2018-10-11 Siemens Aktiengesellschaft Verfahren zur Zuordnung von industriellen Feldgeräten in einer Cloud-Umgebung
CN107666726A (zh) * 2017-09-06 2018-02-06 广州艾考教育科技有限公司 一种电子积木控制方法
CN109936547A (zh) 2017-12-18 2019-06-25 阿里巴巴集团控股有限公司 身份认证方法、系统及计算设备
CN108391085A (zh) * 2018-02-07 2018-08-10 深圳市亿联智能有限公司 一种具有高安全性能的基于网络摄像头云录像系统
CN109088731B (zh) * 2018-09-04 2021-09-21 杭州涂鸦信息技术有限公司 一种物联网云端通信方法及其装置
CN111314501B (zh) * 2020-02-21 2021-08-17 广州欢网科技有限责任公司 解决智能终端唯一标识重复的方法及装置
CN112995137B (zh) * 2021-02-03 2023-04-07 深圳市凯迪仕智能科技有限公司 一种智能锁的绑定方法及智能锁系统
CN113341787B (zh) * 2021-05-06 2022-11-08 中国科学院国家空间科学中心 一种面向空间站高温柜地面匹配实验的遥操作系统
CN113596090B (zh) * 2021-06-25 2023-10-24 青岛海尔科技有限公司 终端设备的绑定方法、装置、计算机设备和存储介质
CN115063921B (zh) * 2022-06-01 2023-10-24 河海大学 一种工地智能闸机系统及搭建方法

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102769619A (zh) * 2012-07-20 2012-11-07 南京小网科技有限责任公司 一种智能家电在网络中一键自动注册的方法
CN104270758A (zh) * 2014-10-10 2015-01-07 乐鑫信息科技(上海)有限公司 通过wifi与服务器安全建立连接并授权的方法
CN104468837A (zh) * 2014-12-29 2015-03-25 小米科技有限责任公司 智能设备的绑定方法和装置

Family Cites Families (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR101844211B1 (ko) * 2011-12-28 2018-05-15 삼성전자주식회사 가전기기의 네트워크 시스템 및 그 네트워크 설정 방법
CN104580265B (zh) * 2015-02-13 2018-12-18 小米科技有限责任公司 设备绑定方法和装置

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102769619A (zh) * 2012-07-20 2012-11-07 南京小网科技有限责任公司 一种智能家电在网络中一键自动注册的方法
CN104270758A (zh) * 2014-10-10 2015-01-07 乐鑫信息科技(上海)有限公司 通过wifi与服务器安全建立连接并授权的方法
CN104468837A (zh) * 2014-12-29 2015-03-25 小米科技有限责任公司 智能设备的绑定方法和装置

Also Published As

Publication number Publication date
CN105100052A (zh) 2015-11-25

Similar Documents

Publication Publication Date Title
CN105100052B (zh) 服务器、手机终端及其帐号与设备绑定执行、控制方法
CN104994073B (zh) 手机终端、服务器及其帐号与设备绑定控制、执行方法
US10885198B2 (en) Bootstrapping without transferring private key
US10575153B2 (en) Enhanced operations between service layer and management layer in an M2M system by allowing the execution of a plurality of commands on a plurality of devices
RU2291581C2 (ru) Способ равноправного соединения устройств в динамически работающих домашних сетях
US20190222426A1 (en) Smart Object Identification In The Digital Home
EP3576379B1 (en) Service layer interworking using mqtt protocol
CN102687547B (zh) 机器对机器网关体系结构
CN105554098B (zh) 一种设备配置方法、服务器及系统
CN108881308B (zh) 一种用户终端及其认证方法、系统、介质
CN104836814B (zh) 智能硬件云端接入控制方法及其相应的装置
CN110741614B (zh) 数据通信系统和方法
WO2008022589A1 (fr) Système et procédé destinés à authentifier une demande d'accès pour un réseau local
CN105450546A (zh) 可穿戴设备及其局域网接入方法、智能终端
CN104604295B (zh) 用于在无线通信系统中由服务器管理终端对资源的访问权限的方法及其设备
CN103702312A (zh) 无线信息传输方法和设备
CN103973785A (zh) 一种基于p2p的日志读取系统及其方法
CN105722072A (zh) 一种业务授权方法、装置、系统及路由器
CN106453349A (zh) 账号登录方法及装置
KR102051839B1 (ko) M2m 시스템에서 메시지를 처리하는 방법 및 그 장치
CN115955358B (zh) 基于点对点通信的数据流传输系统
CN114884771B (zh) 基于零信任理念的身份化网络构建方法、装置和系统
CN107925583A (zh) 服务层任播和些播
CN108307683A (zh) 通讯方法、微基站、微基站控制器、终端和系统
CN105142098A (zh) 一种数据共享方法及装置

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant
TR01 Transfer of patent right
TR01 Transfer of patent right

Effective date of registration: 20220725

Address after: Room 801, 8th floor, No. 104, floors 1-19, building 2, yard 6, Jiuxianqiao Road, Chaoyang District, Beijing 100015

Patentee after: BEIJING QIHOO TECHNOLOGY Co.,Ltd.

Address before: 100088 room 112, block D, 28 new street, new street, Xicheng District, Beijing (Desheng Park)

Patentee before: BEIJING QIHOO TECHNOLOGY Co.,Ltd.

Patentee before: Qizhi software (Beijing) Co.,Ltd.