一种多方通话呼叫方法、装置、服务器及系统的制作方法_4

文档序号:9219620阅读:来源:国知局
请求后,组员会选择加入或不加入多方通话,如果选择加入多方通话,则组员终端向服务器发送加入响应,且响应中携带有该组员的用户ID,由于服务器保存有用户ID与终端的通信标识的对应关系,因此,服务器可以明了是哪个组员终端确认加入多方通话,从而建立包含有该组员终端的多方通话群组。
[0127]如果组员收到建立多方通话请求后,选择拒绝加入多方通话,则服务器接收到拒绝加入多方通话的组员终端的拒绝响应,拒绝加入多方通话的组员终端包括一个或多个,拒绝响应中携带有拒绝加入多方通话的组员的用户ID,服务器可以明了是哪个组员终端拒绝加入多方通话,从而建立多方通话群组不会包含该组员终端。可选地,服务器还将拒绝加入多方通话的组员终端的拒绝响应发送至发起终端,以使发起终端明了哪个组员终端拒绝加入多方通话。
[0128]在本实施例中的一种可选实施方式中,在接收到确认加入多方通话的组员终端的加入响应之后,本方法还包括:将确认加入多方通话的组员终端的加入响应发送至发起终端;接收发起终端发送的共享传输密钥;将共享传输密钥发送至确认加入多方通话的组员终端。基于该共享传输密钥本实施例的技术方案可以保证多方通话中各个用户之间通话的安全性,各个用户之间(发起者与各个组员之间,以及各个组员之间)的通话数据或者其他数据可以经由共享传输密钥进行加密后在线路上传输,并且,各个用户可以利用共享传输密钥对接收到的数据进行解密。
[0129]在该可选实施方式中,在发送终端接收到服务器返回的确认加入多方通话的组员终端的加入响应后,为了保证组员终端的身份合法性,还可以进一步对该组员终端进行身份认证,在认证通过后,对共享传输密钥加密得到传输密钥密文,将该传输密钥密文发送至服务器。其中,对共享传输密钥加密得到传输密钥密文包括以下方式之一:使用确认加入多方通话的组员终端的第一签名设备的公钥对共享传输密钥加密得到传输密钥密文,或者,使用组员终端和发起终端均知道的一对称密钥对共享传输密钥加密得到传输密钥密文,从而保证了共享传输密钥的安全性,此时,服务器并不知晓该共享传输密钥的明文,第三方无法窃取该加密后的共享传输密钥,进一步保证了多方通话的安全性。
[0130]具体的,加入响应中携带有第一待认证数据,发起终端对该组员终端进行身份认证可以是利用发起终端的第二签名设备对第一待认证数据进行认证,例如,第一待认证数据为签名数据,第二签名设备利用组员终端的第一签名设备的公钥对签名数据进行验签。由此保证只有在认证确认加入多方通话的组员身份合法后,发起终端才将共享传输密钥通过服务器发送至该组员终端,保证共享传输密钥被安全获取。
[0131]在该可选实施方式中,可选地,服务器在接收到发起终端发送的传输密钥密文时,还接收到发起终端发送的第二待认证数据;将第二待认证数据发送至确认加入多方通话的组员终端;
[0132]将传输密钥密文发送至确认加入多方通话的组员终端之后,本方法还包括:
[0133]确认加入多方通话的组员终端在接收到传输密钥密文后,利用确认加入多方通话的组员终端的第一签名设备对第二待认证数据进行认证,在认证通过后,对传输密钥密文解密得到共享传输密钥。其中,对传输密钥密文解密得到共享传输密钥包括以下方式之一:使用确认加入多方通话的组员终端的第一签名设备的私钥对传输密钥密文解密得到共享传输密钥,或者,使用组员终端和发起终端均知道的一对称密钥对传输密钥密文解密得到共享传输密钥,从而保证了共享传输密钥的安全性。由此保证只有在认证发起者的身份合法后,组员终端才使用获取到的共享传输密钥对通话数据进行加密,从而保证通话数据的安全性。
[0134]至此,组员终端加入多方通话完成。
[0135]S404:建立多方通话群组,多方通话群组记录有发起者以及确认加入多方通话的组员的用户ID,以及各个用户ID与通信标识的对应关系;
[0136]在本实施例中的一种可选实施方式中,可以建立以多方通话群组关系表,记录发起者以及确认加入多方通话的组员的用户ID,以及各个用户ID与终端的通信标识的对应关系,从而使得服务器在接收到该关系表中的用户ID对应的终端的通话数据后,广播至所以用户ID对应的终端上,实现多方通话。
[0137]在本发明实施例的一个可选实施方案中,在将组员的用户ID与组员终端的通信标识进行关联并存储之后,本方法还可以包括,服务器删除组员的用户ID与组员终端的通信标识的关联关系,并更新多方通话群组的记录,即更新后的多方通话群组不再包含删除的用户ID,服务器将多方通话的通话数据不再广播至该删除的用户ID对应的终端。基于此,服务器可以释放对组员的签到,不影响被组员签到的终端的正常使用,进而提高了终端的利用率。
[0138]在该可选实施方案中,服务器可以通过如下方式至少之一触发释放对组员的签到的流程:接收组员终端发送的释放签到指令后、服务器判断需要释放签到后。
[0139]在本发明实施例的一个可选实施方案中,如果服务器接收到组员终端发送的释放签到指令,则服务器还可以进一步对组员的身份进行验证,以保证释放签到的组员身份合法。此时,服务器可以接收组员终端返回的第二身份认证数据,并进行身份认证,在身份认证通过后,执行服务器删除组员的用户ID与组员终端的通信标识的关联关系的步骤。具体的,组员终端返回的第二身份认证数据可以采用与组员终端发送签到请求时相同的方式生成,服务器可以采用对应的认证方法进行认证,在此不再赘述。
[0140]当然,在本发明实施例的另一个可选实施方案中,在将发起者的用户ID与发起终端的通信标识进行关联并存储之后,本方法还可以包括,服务器删除发起者的用户ID与发起终端的通信标识的关联关系,并更新多方通话群组的记录。此时,更新后的多方通话群组不再包含发起者的用户ID,服务器将多方通话的通话数据不再广播至发起终端。基于此,月艮务器可以释放对发起者的签到,不影响被发起者签到的终端的正常使用,进而提高了终端的利用率。
[0141]在本发明实施例的一个可选实施方案中,如果服务器接收到发起终端发送的释放签到指令,则服务器还可以进一步对发起者的身份进行验证,以保证释放签到的发起者身份合法。此时,服务器可以接收发起终端返回的第四身份认证数据,并进行身份认证,在身份认证通过后,执行服务器删除发起者的用户ID与发起终端的通信标识的关联关系的步骤。具体的,发起终端返回的第四身份认证数据可以采用与发起终端发送签到请求时相同的方式生成,服务器可以采用对应的认证方法进行认证,在此不再赘述。
[0142]S405:在多方通话过程中,接收到发起终端、一个或多个确认加入多方通话的组员终端中的至少之一发送的通话数据,并将通话数据广播至记录的所有用户ID关联的通信标识对应的终端。
[0143]在本实施例中的一种可选实施方式中,在多方通话过程中,所有用户ID关联的通信标识对应的终端(即多方通话中的发起终端和组员终端)利用共享传输密钥对多方通话过程中的通话数据进行加解密。基于该共享传输密钥,本实施例的技术方案可以保证多方通话中各个用户之间通话的安全性,各个用户之间(发起者与各个组员之间,以及各个组员之间)的通话数据或者其他数据可以经由共享传输密钥进行加密后在线路上传输,并且,各个用户可以利用共享传输密钥对接收到的数据进行解密。
[0144]在本实施例中的一种可选实施方式中,在多方通话过程中,本方法还包括:服务器接收发起终端发送的更新的共享传输密钥;将更新的共享传输密钥发送至确认加入多方通话的组员终端。本实施例中,发起终端通过将当前的共享传输密钥随机跳变为新的共享传输密钥,并发送至多方通话的各个组员终端,以此来保证共享传输密钥不易被窃取,保证共享传输密钥的安全性,最终达到保证多方通话的通话安全。
[0145]在本实施例中的一种可选实施方式中,发起终端根据预设的跳变规则将当前的共享传输密钥跳变为新的共享传输密钥,包括但不限于以下方式至少之一:
[0146]方式一:根据跳变触发因子,将当前的共享传输密钥跳变为新的共享传输密钥;具体的,该跳变触发因子,包括以下至少之一:跳变周期、跳变时间点、和通话数据量等。即发起终端可以预先确定跳变周期,之后可以根据跳变周期进行密钥跳变,也可以预先确定跳变时间点,之后可以根据跳变时间点进行密钥跳变,还可以预先确定通话数据量阈值,之后可以根据通话数据量阈值进行密钥跳变,即到达时间跳变点或通话数据量阈值时将当前的共享传输密钥跳变为新的共享传输密钥。
[0147]方式二:获取到密钥跳变指令,将当前的共享传输密钥跳变为新的共享传输密钥。具体的,密钥跳变指令包括以下至少之一:服务器发送的密钥跳变指令、输入的密钥跳变指令、和根据预设规则生成的密钥跳变指令。即发起终端可以接收服务器发送的密钥跳变指令,并在接收到密钥跳变指令后进行密钥跳变;还可以自主生产密钥跳变指令,例如:发起终端判断可以进行密钥跳变(例如周期到、时间点到、数据量到、有监听等)后,生成密钥跳变指令,以指示发起终端进行密钥跳变,即将当前的共享传输密钥跳变为新的共享传输密钥。
[0148]在本发明实施例中,为了进一步保证多方通话的安全性,在本发明实施例的一个可选实施方案中,在多方通话的过程中,服务器还可以根据预设的线路跳变规则将当前的传输线路跳变为新的传输线路,并利用新的传输线路接收发起终端、一个或多个确认加入多方通话的组员终端中的至少之一发送的通话数据,并将通话数据广播至记录的所有用户ID关联的通信标识对应的终端。由此可以保证传输线路的安全性,防止通话被监听。具体的,服务器可以预先存储有通话线路池,服务器可以根据预设的跳变规则在通话线路池中选择与本通话线路不同的线路进行数据传输。该预设的跳变规则可以包括但不限于如下方式至少之一:
[0149]方式一:根据跳变触发因子,将当前的传输线路跳变为新的传输线路。具体的,该跳变触发因子,包括以下至少之一:跳变周期、跳变时间点、和通话数据量等。即服务器可以预先设置跳变周期,之后可以根据跳变周期进行密钥跳变,服务器也可以预先设置跳变时间点,之后可以根据跳变时间点进行密钥跳变,服务器还可以预先设置通话数据量,之后可以根据通话数据量进行密钥跳变。
[0150]方式二:获取到线路跳变指令,将当前的传输线路跳变为新的传输线路。具体的,线路跳变指令包括以下至少之一:发起终端和/或组员终端发送的跳变指令、和根据预设规则生成的线路跳变指令。即服务器可以接收组员终端和/或发起终端发送的线路跳变指令,并在接收到线路跳变指令后进行线路跳变;服务器还可以自主生产线路跳变指令,例如:服务器判断可以进行线路跳变(例如周期到、时间点到、数据量到、有监听等)后,进行线路跳变。
[0151]通过本实施例的技术方案可以将用户的ID与不同终端关联,从而使得用户只需要携带与用户ID唯一对应的电子签名设备,便可以通过同一用户ID使用不同的终端拨打或接听电话,相对于现有技术中用户的电话号码只能固定在一个终端上的缺陷,实现了电话号码可以灵活关联到任意一个终端,即实现了电话号码的灵活移动。而且,不同的用户也可以通过同一终端接听电话,提高了设备的利用率。在多方通话过程中,终端可以利用其电子签名设备进行身份认证以及协商传输密钥,通过对发起者或组员进行身份认证,避免了通话某一方恶意模仿进行诈骗的情况,提高了多方通话的安全性。在多方通话过程中,使用共享传输密钥对通话数据进行加解密,保证多方通话中通话数据的安全。
[0152]实施例4
[0153]在实施例3中的多方通话的呼叫方法中,均涉及到发起终端向服务器发起签到,以及组员终端向服务器发起签到的过程。在本实施例中,提供了一种终端向服务器发起签到的流程,终端包括发起终端和/或组员终端,相应的,用户包括发起者和/或组员,电子签名设备以KEY(例如:工行使用的U盾、农行使用的K宝等)为例,如图5所示,具体包括以下步骤:
[0154]S501:终端向服务器发送签到指令;
[0155]S502:服务器向终端返回待签名数据;
[0156]其中,待签名数据中可以包括只能为单次认证数据,例如,服务器生成的随机数,从而可以避免重放攻击。
[0157]S503:终端将待签名数据发送至与其连接的KEY ;
[0158]S504:KEY对服务器发送的单次认证数据、用户ID或KEY自身生成的单次认证数据之一或其组合进行签名得到身份认证数据;
[0159]其中,KEY自身生成的单次认证数据例如为随机数,从而可以避免重放攻击。用户ID为用户在服务器上为用户使用的KEY注册的唯一标识。用户ID的获取方式包括以下方式至少之一:在注册时,KEY保存用户的ID ;由用户在终端上输入用户ID,终端将该用户ID发送至KEY ;终端接收到服务器发送的用户ID,并转发至KEY ;用户在KEY上输入用户ID。
[0160]S505:KEY将身份认证数据以及用户ID发送至终端;
[0161]其中,KEY还需发送其数字证书至终端,如果在步骤S504中对终端自身生成的随机数签名,则KEY还需将终端自身生成的随机数发送至终端。
[0162]S506:终端向服务器发送签到请求,签到请求中至少携带有用户的ID,此外还可以携带身份认证数据;
[0163]其中,终端还需发送KEY的数字证书至服务器,如果在步骤S504中对终端自身生成的随机数签名,则签到请求中还需携带终端自身生成的随机数,以便服务器进行身份认证。
[0164]S507:服务器对接收到的终端发送的身份认证数据进行认证;
[0165]其中,服务器对身份认证数据进行认证,具体包括:校验终端发送的证书以及校验签名后的身份认证数据,此为现有技术,这里不再赘述。
[0166]S508:服务器在认证通过后,将用户的ID与终端的通信标识进行关联并存储。
[0167]通过本实施例中提供的方法,用户只要随身携带其KEY,将其KEY连接到任意一个终端上,这个终端在服务器签到后,即服务器将用户的ID与终端的通信标识关联后,该终端就可以接收到其他终端对该用户的ID的呼叫,在呼叫其他终端时,在对端的来电显示也是该用户的ID,从而利用KEY实现移动接听或拨打电话。并且,在签到时,服务器可以通过主被叫终端发送的身份认证数据验证主被叫用户的身份是否合法,以保证与终端的通信标识关联的ID的身份合法性,从而保证通话安全。
[0168]如图6所示,本实施例还提供了一种发起释放签到的流程,终端包括发起终端和/或组员终端,相应的,用户包括发起者和/或组员,电子签名设备以KEY(例如:工行使用的U盾、农行使用的K宝等)为例,具体包括以下步骤:
[0169]S601:终端接收到释放签到指令;
[0170]其中,释放签到的发起方可以是通话的一方,也可以是服务器。终端接收到释放签到指令,具体包括以下方式的一种或多种:
[0171]方式一:终端接收到用户输入的释放签到指令,例如,用户输入“9#”,表示用户请求释放签到;
[0172]方式二:终端接收到服务器发送的释放签到指令;
[0173]方式三:终端接收到与其连接的KEY的释放签到指令,例如,用户按着KEY上的C键断开KEY与终端的连接,这时,KEY在与终端断开连接时也会发出一个释放签到指令给终端。
[0174]S602:终端向服务器发送释放签到指令;
[0175]S603:服务器向终端返回待签名数据;
[0176]其中,待签名数据中可以包括只能为单次认证数据,例如,服务器生成的随机数,从而可以避免重放攻击。
[0177]S604:终端将待签名数据发送至与其连接的KEY ;
当前第4页1 2 3 4 5 6 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1