本发明涉及互联网领域,尤其是涉及一种身份认证的方法、终端注册的方法、服务器及终端。
背景技术:
随着网络技术的不断发展,物联网终端也逐步的被接入到互联网中,当物联网终端接入到互联网后,通过云端可以对接入云端的互联网终端进行管理。但是,在互联网终端接入云端时,需要云端先对互联网终端进行身份认证,以确定接入的互联网终端是合法的。
在现有技术中,通常是让互联网终端向云端发送自身携带的验证信息(TOKEN)或令牌信息等方式,来完成身份认证的。然而,在这个过程中,黑客可以通过破解其他合法终端的通信信息来得到的对应的TOKEN,然后再通过使用模拟器或者恶意的经过改装的传感器来与云端建立连接,进而给云端传输错误的信息或者带有病毒的信息,从而达到攻击的目的。
鉴于此,如何有效防止云端被攻击成为一个亟待解决的技术问题。
技术实现要素:
本发明提供一种身份认证的方法、终端注册的方法、服务器及终端,用于防止云端服务器被攻击。
本发明实施例的第一方面,提供一种身份认证的方法,包括:
云端服务器接收来自第一终端的第一信息;其中,所述第一信息中至少包括有所述第一终端的第一标识和第一验证信息,及第二终端的第二标识和第二验证信息,所述第一终端为已在所述云端服务器完成注册的终端,所述第二终端为需要在所述云端服务器进行注册的终端,所述第一终端与所述第二终端位于同一自组网络中;
所述云端服务器根据所述第一信息对所述第一终端及所述第二终端的合法性进行验证,获得第一验证结果;
所述云端服务器基于所述第一验证结果确定所述第一终端和所述第二终端均合法时,通过所述第一终端将临时会话密匙发送至所述第二终端,令所述第二终端通过所述临时会话密匙对所述第一验证信息进行加密,并采用加密后的信息在所述云端服务器完成注册。
可选的,所述云端服务器根据所述第一信息对所述第一终端及所述第二终端的合法性进行验证,获得第一验证结果,包括:
所述云端服务器根据所述第一标识和所述第一验证信息,对所述第一终端的合法性进行验证,以获得第二验证结果;
当所述第二验证结果确定所述第一终端合法时,所述云端服务器根据所述第二标识及所述第二验证信息,对所述第二终端的合法性进行验证,以获得第三验证结果;
将所述第二验证结果和第三验证结果进行合并,作为所述第一验证结果。
可选的,进一步包括:
根据所述第二验证结果确定所述第一终端非法时,所述云端服务器断开与所述第一终端的连接;或/和,
根据所述第二验证结果确定所述第一终端合法及根据所述第三验证结果确定所述第二终端非法时,所述云端服务器通知所述第一终端断开与所述第二终端的连接。
可选的,所述云端服务器对所述第一终端的合法性进行验证,包括:
所述云端服务器在本地查找是否预存有所述第一标识,在判断结果为是时,通过预设算法对所述第一标识进行计算,以获得第一核验信息;
所述云端服务器比较所述第一核验信息与所述第一验证信息是否相同,在比较结果为相同时,确定所述第一终端为合法终端;
所述云端服务器对所述第二终端的合法性进行验证,包括:
所述云端服务器在本地查找是否预存有所述第二标识,在判断结果为是时,通过所述预设算法对所述第二标识进行计算,以获得第二核验信息;
所述云端服务器比较所述第二核验信息与所述第二验证信息是否相同,在比较结果为相同时,确定所述第二终端为合法终端。
可选的,所述云端服务器令所述第二终端通过所述临时会话密匙对所述第一验证信息进行加密,并采用加密后的信息在所述云端服务器完成注册,包括:
所述云端服务器接收第二终端发送的所述加密后的信息,并对所述加密后的信息进行解密,获得待验证信息;
所述云端服务器判断所述待验证信息与所述第一验证信息是否相同,在判断结果为是时,在本地对所述第二终端进行注册。
可选的,进一步包括:
所述云端服务器判断所述待验证信息与所述第一验证信息不相同时,通知所述第一终端与所述第二终端断开连接,并启动安全响应策略。
第二方面,本发明实施例提供了一种终端注册的方法,包括:
第二终端通过所述第一终端将所述第二终端的第二标识和第二验证信息发送给云端服务器,以便所述云端服务器通过所述第一终端的第一标识信息和第一验证信息及所述第二标识信息和第二验证信息,验证所述第一终端及所述第二终端的合法性;其中,所述第一终端与所述第二终端位于同一自组网络中,所述第一终端已在所述云端服务器注册,所述第二终端尚未在所述云端服务器注册;
在所述云端服务器验证所述第二终端合法后,所述第二终端通过所述第一终端接收所述第一验证信息和所述云端服务器与所述第二终端的临时会话密匙;
所述第二终端通过所述临时会话密匙对所述第一验证信息进行加密,以获得加密后的信息;并采用所述加密后的信息在所述云端服务器进行注册。
可选的,在第二终端通过所述第一终端将所述第二终端的第二标识和第二验证信息发送给云端服务器之前,还包括:
所述第二终端向所述第一终端发送自组网请求;
并在接收到所述第一终端基于所述自组网请求返回的响应信息后,完成与所述第一终端的自组网连接。
第三方面,本发明实施例提供了一种服务器,包括:
接收模块,用于接收来自第一终端的第一信息;其中,所述第一信息中至少包括有所述第一终端的第一标识和第一验证信息,及第二终端的第二标识和第二验证信息,所述第一终端为已在所述服务器完成注册的终端,所述第二终端为需要在所述服务器进行注册的终端,所述第一终端与所述第二终端位于同一自组网络中;
验证模块,用于根据所述第一信息对所述第一终端及所述第二终端的合法性进行验证,获得第一验证结果;
注册模块,用于基于所述第一验证结果确定所述第一终端和所述第二终端均合法时,通过所述第一终端将临时会话密匙发送至所述第二终端,令所述第二终端通过所述临时会话密匙对所述第一验证信息进行加密,并采用加密后的信息在所述服务器完成注册。
可选的,所述根据所述第一信息对所述第一终端及所述第二终端的合法性进行验证,获得第一验证结果时,所述验证模块还用于:
根据所述第一标识和所述第一验证信息,对所述第一终端的合法性进行验证,以获得第二验证结果;
当所述第二验证结果确定所述第一终端合法时,根据所述第二标识及所述第二验证信息,对所述第二终端的合法性进行验证,以获得第三验证结果;
将所述第二验证结果和第三验证结果进行合并,作为所述第一验证结果。
可选的,所述服务器还用于:
根据所述第二验证结果确定所述第一终端非法时,断开与所述第一终端的连接;或/和,
根据所述第二验证结果确定所述第一终端合法及根据所述第三验证结果确定所述第二终端非法时,通知所述第一终端断开与所述第二终端的连接。
可选的,所述对所述第一终端的合法性进行验证时,所述验证模块还用于:
在本地查找是否预存有所述第一标识,在判断结果为是时,通过预设算法对所述第一标识进行计算,以获得第一核验信息;
比较所述第一核验信息与所述第一验证信息是否相同,在比较结果为相同时,确定所述第一终端为合法终端;
对所述第二终端的合法性进行验证,包括:
在本地查找是否预存有所述第二标识,在判断结果为是时,通过所述预设算法对所述第二标识进行计算,以获得第二核验信息;
比较所述第二核验信息与所述第二验证信息是否相同,在比较结果为相同时,确定所述第二终端为合法终端。
可选的,所述令所述第二终端通过所述临时会话密匙对所述第一验证信息进行加密,并采用加密后的信息在所述服务器完成注册,所述注册模块还用于:
接收第二终端发送的所述加密后的信息,并对所述加密后的信息进行解密,获得待验证信息;
判断所述待验证信息与所述第一验证信息是否相同,在判断结果为是时,在本地对所述第二终端进行注册。
可选的,所述服务器还用于:
判断所述待验证信息与所述第一验证信息不相同时,通知所述第一终端与所述第二终端断开连接,并启动安全响应策略。
第四方面,本发明实施例提供了第二终端,包括:
发送模块,用于通过第一终端将所述第二终端的第二标识和第二验证信息发送给云端服务器,以便所述云端服务器通过所述第一终端的第一标识信息和第一验证信息及所述第二标识信息和第二验证信息,验证所述第一终端及所述第二终端的合法性;其中,所述第一终端与所述第二终端位于同一自组网络中,所述第一终端已在所述云端服务器注册,所述第二终端尚未在所述云端服务器注册;
接收模块,用于在所述云端服务器验证所述第二终端合法后,所述第二终端通过所述第一终端接收所述第一验证信息和所述云端服务器与所述第二终端的临时会话密匙;
加密模块,用于通过所述临时会话密匙对所述第一验证信息进行加密,以获得加密后的信息;并采用所述加密后的信息在所述云端服务器进行注册。
可选的,在第二终端通过所述第一终端将所述第二终端的第二标识和第二验证信息发送给云端服务器之前,所述发送模块还用于:
向所述第一终端发送自组网请求;
并在接收到所述第一终端基于所述自组网请求返回的响应信息后,完成与所述第一终端的自组网连接。通过本发明实施例的上述一个或多个实施例中的技术方案,本发明实施例至少具有如下技术效果:
在本发明提供的实施例中,是在云端服务器先确定已注册的第一终端的合法性之后,再验证第二终端的合法性,并在确定第二终端为合法终端后,通过第一终端将与第二终端的临时会话密匙发送给第二终端,使第二终端能通过从第一终端获得的第一验证信息和临时会话密匙在云端服务器完成注册。换言之,待注册终端(即第二终端)通过位于同一自组网络中且已在云端服务器注册了的相邻终端(即第一终端),来证明待注册终端(即第二终端)的合法性后,让第二终端通过第一终端的第一验证信息和临时会话密匙,来完成自主监督式注册,从而能有效的避免人为注册或第二终端单独注册时存在云端服务器被中间人攻击或仿冒第二终端实施攻击的弊端,进而能有效的防止云端服务器被攻击。
附图说明
图1为本发明实施例提供的一种终端注册的流程图;
图2为本发明实施例提供的一种身份认证的流程图;
图3为本发明实施例提供的终端在云端服务器进行注册的流程图;
图4为本发明实施例提供的一种终端的结构示意图;
图5为本发明实施例提供的一种服务器的结构示意图。
具体实施方式
本发明提供一种身份认证的方法及装置,用于防止云端服务器被攻击。
本申请实施例中的技术方案为解决上述的技术问题,总体思路如下:
提供一种身份认证的方法,包括:云端服务器接收来自第一终端的第一信息;其中,所述第一信息中至少包括有所述第一终端的第一标识和第一验证信息,及第二终端的第二标识和第二验证信息,所述第一终端为已在所述云端服务器完成注册的终端,所述第二终端为需要在所述云端服务器进行注册的终端,所述第一终端与所述第二终端位于同一自组网络中;所述云端服务器根据所述第一信息对所述第一终端及所述第二终端的合法性进行验证,获得第一验证结果;所述云端服务器基于所述第一验证结果确定所述第一终端和所述第二终端均合法时,通过所述第一终端将临时会话密匙发送至所述第二终端,令所述第二终端通过所述临时会话密匙对所述第一验证信息进行加密,并采用加密后的信息在所述云端服务器完成注册。
由于在上述方案中,是在云端服务器先确定已注册的第一终端的合法性之后,再验证第二终端的合法性,并在确定第二终端为合法终端后,通过第一终端将与第二终端的临时会话密匙发送给第二终端,使第二终端能通过从第一终端获得的第一验证信息和临时会话密匙在云端服务器完成注册。换言之,待注册终端(即第二终端)通过位于同一自组网络中且已在云端服务器注册了的相邻终端(即第一终端),来证明待注册终端(即第二终端)的合法性后,让第二终端通过第一终端的第一验证信息和临时会话密匙,来完成自主监督式注册,从而能有效的避免人为注册或第二终端单独注册时存在云端服务器被中间人攻击或仿冒第二终端实施攻击的弊端,进而能有效的防止云端服务器被攻击。
为了更好的理解上述技术方案,下面通过附图以及具体实施例对本发明技术方案做详细的说明,应当理解本发明实施例以及实施例中的具体特征是对本发明技术方案的详细的说明,而不是对本发明技术方案的限定,在不冲突的情况下,本发明实施例以及实施例中的技术特征可以相互组合。
请参见图1,本发明实施例提供一种终端注册的方法,该方法的处理过程如下。
步骤101:第二终端通过第一终端将第二终端的第二标识和第二验证信息发送给云端服务器,以便云端服务器通过第一终端的第一标识信息和第一验证信息及第二标识信息和第二验证信息,验证第一终端及第二终端的合法性;其中,第一终端与第二终端位于同一自组网络中,第一终端已在所述云端服务器注册,第二终端尚未在所述云端服务器注册。
在第二终端通过第一终端将第二终端的第二标识和第二验证信息发送给云端服务器之前,第二终端向第一终端发送自组网请求;并在接收到第一终端基于自组网请求返回的响应信息后,完成与第一终端的自组网连接。
在第二终端与第一终端完成自组网连接之后,第二终端将表征自身身份信息的第二标识和第二验证信息发送给第一终端,以便通过第一终端在云端服务器为第二终端验证其合法性。具体的,第一终端将表征自身身份的信息的第一标识和第一验证信息及表征第二终端身份的第二标识和第二验证信息,发送给云端服务器,以便验证第一终端和第二终端的合法性。
步骤102:在云端服务器验证第二终端合法后,第二终端通过第一终端接收第一验证信息和云端服务器与第二终端的临时会话密匙。
步骤103:第二终端通过临时会话密匙对第一验证信息进行加密,以获得加密后的信息;并采用加密后的信息在云端服务器进行注册。
在第二终端通过第一终端将第二终端的第二标识和第二验证信息,发送给云端服务器之后,云端服务器对第二终端进行注册的过程具体请参见下述方法。
请参见图2,本发明实施例提供一种身份认证的方法,该方法的处理过程如下。
步骤:201:云端服务器接收来自第一终端的第一信息;其中,第一信息中至少包括有第一终端的第一标识和第一验证信息,及第二终端的第二标识和第二验证信息,第一终端为已在云端服务器完成注册的终端,第二终端为需要在云端服务器进行注册的终端,第一终端与第二终端位于同一自组网络中。
步骤202:云端服务器根据第一信息对第一终端及第二终端的合法性进行验证,获得第一验证结果。
具体的,云端服务器根据第一标识和第一验证信息,对第一终端的合法性进行验证,以获得第二验证结果;当第二验证结果确定第一终端合法时,云端服务器根据第二标识及第二验证信息,对第二终端的合法性进行验证,以获得第三验证结果;将第二验证结果和第三验证结果进行合并,作为第一验证结果。
其中,云端服务器对第一终端的合法性进行验证的具体过程为:
首先,验证第一终端的合法性。具体的为,云端服务器在本地查找是否预存有第一标识,在判断结果为是时,通过预设算法对第一标识进行计算,以获得第一核验信息;云端服务器比较第一核验信息与第一验证信息是否相同,在比较结果为相同时,确定第一终端为合法终端;
进一步的,当根据第二验证结果确定第一终端非法时,云端服务器断开与第一终端的连接。
其次,在确定第一终端为合法终端后,再验证第二终端的合法性。具体为,云端服务器在本地查找是否预存有第二标识,在判断结果为是时,通过预设算法对第二标识进行计算,以获得第二核验信息;云端服务器比较第二核验信息与第二验证信息是否相同,在比较结果为相同时,确定第二终端为合法终端。
进一步的,当根据第二验证结果确定第一终端合法及根据第三验证结果确定第二终端非法时,云端服务器通知第一终端断开与第二终端的连接。
步骤203:云端服务器基于第一验证结果确定第一终端和第二终端均合法时,通过第一终端将临时会话密匙发送至第二终端,令第二终端通过临时会话密匙对第一验证信息进行加密,并采用加密后的信息在云端服务器完成注册。
具体的,云端服务器接收第二终端发送的加密后的信息,并对加密后的信息进行解密,获得待验证信息;云端服务器判断待验证信息与第一验证信息是否相同,在判断结果为是时,在本地对第二终端进行注册。
进一步的,云端服务器判断待验证信息与第一验证信息不相同时,通知第一终端与第二终端断开连接,并启动安全响应策略。
为了使本领域的技术人员能更为清楚的理解本发明所提供的实施例,下面将举一个具体的例子,对上述过程进行详细的描述。
实施例一,请参见图3。
步骤301:第二终端向第一终端发送组网请求。
步骤302:第二终端返回组网请求的响应信息。
通步骤301、步骤302便完成了第二终端发起的与第一终端的自组网络的建立。于是第二终端便执行步骤303。
需要理解的是,第一终端是已经在云端服务器完成了注册的终端,第二终端是尚未在云端服务器注册的终端,且第一终端与第二终端的距离较近,使得第二终端可以通过短距离通信协议如蓝牙或ZigBee等,与第一终端建立一个自组织网络,以便于第一终端进行通信。再第一终端与第二终端建立好自组织网络后,便可执行步骤303。
步骤303:第二终端将其的身份信息第二标识和第二验证信息发送给第一终端。
其中,第二标识可以是第二终端的ID、MAC等能唯一标识第二终端的标识信息,第二验证信息是通过预设算法对第二标识进行计算后得到的信息,如TOKEN。
第二终端将其的身份信息第二标识和第二验证信息发送给第一终端,可以让第一终端替第二终端在云端服务器验证第二终端是否合法,在此之前,第一终端需要先把相关信息发送给云端服务器,具体请见步骤304。
步骤304:第一终端将自己及第二终端的身份信息发送给云端服务器,以便云端服务器对它们的合法性进行验证。即第一终端发送包含有第一标识和第一验证信息及第二标识和第二验证信息的第一信息给云端服务器。
其中,第一标识可以是第一终端的ID、MAC等能唯一标识第一终端的标识信息,第一验证信息是通过预设算法对第一标识进行计算后得到的信息,如TOKEN。
在第一终端将第一信息发送给云端服务器之后,云端服务去便可开始对第一终端及第二终端的合法性进行验证了,具体请见步骤305。
步骤305:云端服务器在本地查找是否预存有第一标识,在判断结果为是时,用预设算法对第一标识进行计算,获得第一核验信息。
步骤306:云端服务器比较第一核验信息与第一验证信息是否相同。
步骤307:若云端服务器确定第一核验信息与第一验证信息不同时,则认定第一终端为非法终端,云端服务器断开与第一终端的连接。
需要理解的是,在合法终端出厂时,合法终端的标识信息都会同时写入到云端服务器的数据库和终端的存储器中,所以云端服务器可以在本地的数据库中查找是否有预存的第一标识或第二标识所代表的终端是否为合法终端。
但合法终端的标识信息也有可能被攻击者冒用,所以云端服务器在实际确定一个终端是否为合法终端时,首先要确定这个标识信息是否已在本地的数据库中,然后双方采用的预设算法是否为相同的算法,这样才能确定云端服务器接收到的信息是否为来自合法终端的信息。
以验证第一终端是否为合法终端为例,具体的验证过程为,首先,在云端服务器本地的数据库中,查找第一标识是否已存在于本地的数据库中,若是,则说明该第一标识为有效的标识信息;然后,云端服务器用预设算法对第一标识进行计算,获得第一核验信息,并将第一终端传送过来的同样通过预设算法对第一标识进行计算后产生的第一验证信息与第一核验信息进行比较,如果相同则说明云端服务器和第一终端采用的是相同的预设算法,进而证明第一终端为合法终端。如果不同,则说明第一终端是冒充的,为非法终端,云端服务器便会立即断开与第一终端的连接。
需要理解的是,第一验证信息可以是在第一终端中通过预设的算法自行计算出来的,也可以是在第一终端出厂时预先计算好第一验证信息之后,将第一标识和第一验证信息存储到第一终端中的,具体第一终端是在什么时候获得第一验证信息的,在此不做限定。
在云端服务器确定第一终端为合法终端后,便可对第二终端的合法性进行验证了,具体请见步骤308。
步骤308:在云端服务器确定第一终端为合法终端后,便在本地查找是否预存有第二标识,在判断结果为是时,用预设算法对第二标识进行计算,获得第二核验信息。
步骤309:云端服务器比较第二核验信息与第二验证信息是否相同。
如果比较结果为第二核验信息与第二验证信息不同,则说明第二终端为非法终端,需执行步骤310。
步骤310:云端服务器通知第一设备与第二设备断开连接。
如果比较结果为第二核验信息与第二验证信息相同,则说明第二终端为合法终端,需执行步骤311。
步骤311:云端服务器发送第二终端为合法终端的确认指令,及云端服务器与第二终端的临时会话密匙给第一终端,以便第二终端利用临时会话密匙到云端服务器完成注册。
第一终端接收到确认指令及临时会话密匙之后,便执行步骤312。
步骤312:第一终端发送第一验证信息和临时会话密匙给第二终端。
通过第一终端发送的第一验证信息可以证明临时会话密匙是通过第一终端传送给第二终端的,从而确保了信息传递路径的正确性。
即,云端服务器经确认指令下发到第一终端,并携带与第二终端的临时会话密匙,以便第一终端在收到确认指令之后,将临时会话密匙和由第一终端的第一标识生成的第一验证信息一同传送给第二终端,以此证明临时会话密匙是经由第一终端传递的,而非攻击者生成的。
在第二终端接收到第一终端传送的第一验证信息和临时会话信息之后,执行步骤313。
步骤313:第二终端用临时会话密匙对第一标识进行加密,获得加密后的信息。
步骤314:第二终端发送加密后的信息到云端服务器。
云端服务器在接收到第二终端发送的加密信息后,执行步骤315。
步骤315:云端服务器解密加密后的信息,获得待验证信息,并比较待验证信息与第一验证信息是否相同。
若云端服务器确定待验证信息与第一验证信息不同,则说明第二终端为非法终端,立即启动安全响应策略,并执行步骤316。
步骤316:云端服务器通知第一终端与第二终端断开连接。
若云端服务器确定待验证信息与第一验证信息相同,则说明第二终端为合法终端,执行步骤317。
步骤317:云端服务器确定第二终端为合法终端,并对第二终端进行注册。
在云端服务器完成对第二终端的注册之后,执行步骤318。
步骤318:云端服务器发送注册成功的信息给第二终端。
在第二终端接收到云端服务器发送的注册成功的信息之后,便可结束与第一终端的自组网络,执行步骤319。
步骤319:第二终端断开与第一终端的连接。
至此,第二终端便通过已注册的合法终端即第二终端,完成了在云端服务器的注册。
基于同一发明构思,本发明一实施例中提供一种可以进行自主注册的终端,该终端的注册方法的具体实施方式可参见方法实施例部分的描述,重复之处不再赘述,请参见图4,该终端包括:
发送模块401,用于通过第一终端将所述第二终端的第二标识和第二验证信息发送给云端服务器,以便所述云端服务器通过所述第一终端的第一标识信息和第一验证信息及所述第二标识信息和第二验证信息,验证所述第一终端及所述第二终端的合法性;其中,所述第一终端与所述第二终端位于同一自组网络中,所述第一终端已在所述云端服务器注册,所述第二终端尚未在所述云端服务器注册;
接收模块402,用于在所述云端服务器验证所述第二终端合法后,所述第二终端通过所述第一终端接收所述第一验证信息和所述云端服务器与所述第二终端的临时会话密匙;
加密模块403,用于通过所述临时会话密匙对所述第一验证信息进行加密,以获得加密后的信息;并采用所述加密后的信息在所述云端服务器进行注册。
可选的,在第二终端通过所述第一终端将所述第二终端的第二标识和第二验证信息发送给云端服务器之前,所述发送模块401还用于:
向所述第一终端发送自组网请求;
并在接收到所述第一终端基于所述自组网请求返回的响应信息后,完成与所述第一终端的自组网连接。
基于同一发明构思,本发明一实施例中提供一种可以进行身份认证的服务器,该服务器进行身份认证的方法的具体实施方式可参见方法实施例部分的描述,重复之处不再赘述,请参见图5,该服务器包括:
接收模块501,用于接收来自第一终端的第一信息;其中,所述第一信息中至少包括有所述第一终端的第一标识和第一验证信息,及第二终端的第二标识和第二验证信息,所述第一终端为已在所述服务器完成注册的终端,所述第二终端为需要在所述服务器进行注册的终端,所述第一终端与所述第二终端位于同一自组网络中;
验证模块502,用于根据所述第一信息对所述第一终端及所述第二终端的合法性进行验证,获得第一验证结果;
注册模块503,用于基于所述第一验证结果确定所述第一终端和所述第二终端均合法时,通过所述第一终端将临时会话密匙发送至所述第二终端,令所述第二终端通过所述临时会话密匙对所述第一验证信息进行加密,并采用加密后的信息在所述服务器完成注册。
可选的,所述根据所述第一信息对所述第一终端及所述第二终端的合法性进行验证,获得第一验证结果时,所述验证模块502还用于:
根据所述第一标识和所述第一验证信息,对所述第一终端的合法性进行验证,以获得第二验证结果;
当所述第二验证结果确定所述第一终端合法时,根据所述第二标识及所述第二验证信息,对所述第二终端的合法性进行验证,以获得第三验证结果;
将所述第二验证结果和第三验证结果进行合并,作为所述第一验证结果。
可选的,所述服务器还用于:
根据所述第二验证结果确定所述第一终端非法时,断开与所述第一终端的连接;或/和,
根据所述第二验证结果确定所述第一终端合法及根据所述第三验证结果确定所述第二终端非法时,通知所述第一终端断开与所述第二终端的连接。
可选的,所述对所述第一终端的合法性进行验证时,所述验证模块502还用于:
在本地查找是否预存有所述第一标识,在判断结果为是时,通过预设算法对所述第一标识进行计算,以获得第一核验信息;
比较所述第一核验信息与所述第一验证信息是否相同,在比较结果为相同时,确定所述第一终端为合法终端;
对所述第二终端的合法性进行验证,包括:
在本地查找是否预存有所述第二标识,在判断结果为是时,通过所述预设算法对所述第二标识进行计算,以获得第二核验信息;
比较所述第二核验信息与所述第二验证信息是否相同,在比较结果为相同时,确定所述第二终端为合法终端。
可选的,所述令所述第二终端通过所述临时会话密匙对所述第一验证信息进行加密,并采用加密后的信息在所述服务器完成注册,所述注册模块503还用于:
接收第二终端发送的所述加密后的信息,并对所述加密后的信息进行解密,获得待验证信息;
判断所述待验证信息与所述第一验证信息是否相同,在判断结果为是时,在本地对所述第二终端进行注册。
可选的,所述服务器还用于:
判断所述待验证信息与所述第一验证信息不相同时,通知所述第一终端与所述第二终端断开连接,并启动安全响应策略。
在本发明提供的实施例中,是在云端服务器先确定已注册的第一终端的合法性之后,再验证第二终端的合法性,并在确定第二终端为合法终端后,通过第一终端将与第二终端的临时会话密匙发送给第二终端,使第二终端能通过从第一终端获得的第一验证信息和临时会话密匙在云端服务器完成注册。换言之,待注册终端(即第二终端)通过位于同一自组网络中且已在云端服务器注册了的相邻终端(即第一终端),来证明待注册终端(即第二终端)的合法性后,让第二终端通过第一终端的第一验证信息和临时会话密匙,来完成自主监督式注册,从而能有效的避免人为注册或第二终端单独注册时存在云端服务器被中间人攻击或仿冒第二终端实施攻击的弊端,进而能有效的防止云端服务器被攻击。
本领域内的技术人员应明白,本发明实施例可提供为方法、系统、或计算机程序产品。因此,本发明实施例可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明实施例可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明实施例是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。