掌桥专利:专业的专利平台
掌桥专利
首页

加密通话方法、装置及终端设备

文献发布时间:2024-04-18 19:58:30


加密通话方法、装置及终端设备

技术领域

本申请实施例涉及通信技术领域,尤其涉及一种加密通话方法、装置及终端设备。

背景技术

用户可以使用终端设备的加密通话功能进行语音通话,以保护用户在通话过程中的隐私信息。

在相关技术中,可以通过如下方式进行加密通话:主叫终端响应于用户在主叫终端中输入的加密呼叫指令,确定加密呼叫指令对应的被叫终端。在确定被叫终端满足加密通话条件时,主叫终端向被叫终端发送加密呼叫请求。在确定与被叫终端建立通话连接之后,主叫终端与被叫终端进行密钥协商处理,以得到密钥信息。在确定得到密钥信息之后,根据密钥信息与被叫终端进行加密通话。

在上述过程中,在确定与被叫终端建立通话连接之后,主叫终端与被叫终端进行密钥协商处理,以得到密钥信息。用户在确定建立通话连接之后,还需要等待一定的时长使得主叫终端与被叫终端进行密钥协商处理,以得到密钥信息,导致加密通话的效率较低。

发明内容

本申请实施例提供一种加密通话方法、装置及终端设备,用以解决加密通话效率较低的问题。

第一方面,本申请实施例提供一种加密通话方法,包括:

获取加密呼叫指令,确定所述加密呼叫指令对应的被叫终端,向所述被叫终端发送加密呼叫请求;

在所述被叫终端接听所述加密呼叫请求对应的通话之前,通过网络连接方式与所述被叫终端进行密钥协商处理,得到第一协商结果;

若所述第一协商结果为协商成功,则将所述第一协商结果对应的信息确定为密钥信息;

若所述第一协商结果为协商失败,则通过带内传输方式与所述被叫终端进行密钥协商处理,得到所述密钥信息;

根据所述密钥信息与所述被叫终端进行加密通话。

在一种可能的实施方式中,向所述被叫终端发送加密呼叫请求,包括:

判断主叫终端和所述被叫终端是否满足加密通话条件;

在确定所述主叫终端和所述被叫终端分别满足加密通话条件时,向所述被叫终端发送加密呼叫请求。

在一种可能的实施方式中,判断所述被叫终端是否满足加密通话条件,包括:

获取所述被叫终端的第一终端能力和网络质量,所述第一终端能力用于指示所述被叫终端是否支持加密通话;

根据所述第一终端能力和所述网络质量,判断所述被叫终端是否满足加密通话条件。

在一种可能的实施方式中,根据所述第一终端能力和所述网络状态,判断所述被叫终端是否满足加密通话条件,包括:

若所述第一终端能力指示所述被叫终端支持加密通话,且所述网络质量大于或等于预设阈值,则确定所述被叫终端满足所述加密通话条件;

若所述第一终端能力指示所述被叫终端不支持加密通话,或者所述网络质量小于所述预设阈值,则确定所述被叫终端不满足所述加密通话条件。

在一种可能的实施方式中,获取所述被叫终端的第一终端能力和网络质量,包括:

向服务器发送能力查询请求,所述能力查询请求包括所述被叫终端的终端标识;

接收所述服务器发送的所述第一终端能力;

在所述第一终端能力指示所述被叫终端支持加密通话时,向所述服务器发送网络质量测量请求,所述网络质量测量请求包括所述被叫终端的终端标识;

接收所述服务器发送的所述被叫终端的网络质量。

在一种可能的实施方式中,判断所述主叫终端是否满足加密通话条件,包括:

获取所述主叫终端的第二终端能力;

若所述第二终端能力指示所述主叫终端支持加密通话,则确定所述主叫终端满足加密通话条件;

若所述第二终端能力指示所述主叫终端不支持加密通话,则确定所述主叫终端不满足加密通话条件。

在一种可能的实施方式中,通过网络连接方式与所述被叫终端进行密钥协商处理,得到第一协商结果,包括:

确定协商起始时刻;

若在所述协商起始时刻之后的预设时长内,所述主叫终端通过网络连接方式与所述被叫终端协商得到密钥信息,则确定所述第一协商结果为所述协商成功;

若在所述协商起始时刻之后的预设时长内,所述主叫终端通过网络连接方式与所述被叫终端未协商得到密钥信息,则确定所述第一协商结果为所述协商失败。

在一种可能的实施方式中,所述方法还包括:

若所述被叫终端不满足加密通话条件,则生成提示信息,所述提示信息用于提示所述被叫终端由于不满足所述加密通话条件未能执行加密通话;

向所述被叫终端发送所述提示信息。

第二方面,本申请实施例提供一种加密通话装置,所述装置包括:

第一发送模块,用于获取加密呼叫指令,确定所述加密呼叫指令对应的被叫终端,向所述被叫终端发送加密呼叫请求;

第一处理模块,用于在所述被叫终端接听所述加密呼叫请求对应的通话之前,通过网络连接方式与所述被叫终端进行密钥协商处理,得到第一协商结果;

确定模块,用于若所述第一协商结果为协商成功,则将所述第一协商结果对应的信息确定为密钥信息;

第二处理模块,用于若所述第一协商结果为协商失败,则通过带内传输方式与所述被叫终端进行密钥协商处理,得到所述密钥信息;

通话模块,用于根据所述密钥信息与所述被叫终端进行加密通话。

在一种可能的实施方式中,所述第一发送模块具体用于:

判断主叫终端和所述被叫终端是否满足加密通话条件;

在确定所述主叫终端和所述被叫终端分别满足加密通话条件时,向所述被叫终端发送加密呼叫请求。

在一种可能的实施方式中,所述第一发送模块具体用于:

获取所述被叫终端的第一终端能力和网络质量,所述第一终端能力用于指示所述被叫终端是否支持加密通话;

根据所述第一终端能力和所述网络质量,判断所述被叫终端是否满足加密通话条件。

在一种可能的实施方式中,所述第一发送模块具体用于:

若所述第一终端能力指示所述被叫终端支持加密通话,且所述网络质量大于或等于预设阈值,则确定所述被叫终端满足所述加密通话条件;

若所述第一终端能力指示所述被叫终端不支持加密通话,或者所述网络质量小于所述预设阈值,则确定所述被叫终端不满足所述加密通话条件。

在一种可能的实施方式中,所述第一发送模块具体用于:

向服务器发送能力查询请求,所述能力查询请求包括所述被叫终端的终端标识;

接收所述服务器发送的所述第一终端能力;

在所述第一终端能力指示所述被叫终端支持加密通话时,向所述服务器发送网络质量测量请求,所述网络质量测量请求包括所述被叫终端的终端标识;

接收所述服务器发送的所述被叫终端的网络质量。

在一种可能的实施方式中,所述第一发送模块具体用于:

获取所述主叫终端的第二终端能力;

若所述第二终端能力指示所述主叫终端支持加密通话,则确定所述主叫终端满足加密通话条件;

若所述第二终端能力指示所述主叫终端不支持加密通话,则确定所述主叫终端不满足加密通话条件。

在一种可能的实施方式中,所述第一处理模块具体用于:

确定协商起始时刻;

若在所述协商起始时刻之后的预设时长内,所述主叫终端通过网络连接方式与所述被叫终端协商得到密钥信息,则确定所述第一协商结果为所述协商成功;

若在所述协商起始时刻之后的预设时长内,所述主叫终端通过网络连接方式与所述被叫终端未协商得到密钥信息,则确定所述第一协商结果为所述协商失败。

在一种可能的实施方式中,所述装置还包括第二发送模块。

其中,所述第二发送模块用于:

若所述被叫终端不满足加密通话条件,则生成提示信息,所述提示信息用于提示所述被叫终端由于不满足所述加密通话条件未能执行加密通话;

向所述被叫终端发送所述提示信息。

第三方面,本申请提供一种芯片,所述芯片上存储有计算机程序,所述计算机程序被所述芯片执行时,实现如第一方面任一项所述的方法。

第四方面,本申请提供一种芯片模组,所述芯片模组上存储有计算机程序,所述计算机程序被所述芯片模组执行时,实现如第一方面任一项所述的方法。

第五方面,本申请实施例提供一种终端设备,包括:

至少一个处理器;以及

与所述至少一个处理器通信连接的存储器;其中,

所述存储器存储有可被所述至少一个处理器执行的指令,所述指令被所述至少一个处理器执行,以使所述至少一个处理器能够执行第一方面任一项所述的方法。

第六方面,本申请实施例提供一种存储有计算机指令的非瞬时计算机可读存储介质,其中,所述计算机指令用于使所述计算机执行第一方面中任一项所述的方法。

第七方面,本申请实施例提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时实现第一方面中任一项所述的方法。

本申请实施例提供的加密通话方法、装置及终端设备,获取加密呼叫指令,确定加密呼叫指令对应的被叫终端。并向被叫终端发送加密呼叫请求。在被叫终端接听加密呼叫请求对应的通话之前,通过网络连接方式与被叫终端进行密钥协商处理,得到第一协商结果。若第一协商结果为协商成功,则将第一协商结果对应的信息确定为密钥信息。若第一协商结果为协商失败,则通过带内传输方式与被叫终端进行密钥协商处理,得到密钥信息。根据密钥信息与被叫终端进行加密通话。在上述过程中,由于在被叫终端接听加密呼叫请求对应的通话之前,启动与被叫终端进行密钥协商处理。而不是在确定与被叫终端建立通话连接之后,主叫终端与被叫终端进行密钥协商处理,用户可以在建立通话连接之后直接进行语音通话,提高了加密通话的效率。

附图说明

图1为本申请实施例提供的应用场景的示意图;

图2为本申请实施例提供的一种加密通话方法的流程示意图;

图3为本申请实施例提供的确定加密呼叫指令对应的被叫终端的过程示意图;

图4为本申请实施例提供的另一种加密通话方法的流程示意图;

图5为本申请实施例提供的生成提示信息的过程示意图;

图6为本申请实施例提供的加密通话的过程示意图;

图7为本申请实施例提供的一种加密通话装置的结构示意图;

图8为本申请实施例提供的另一种加密通话装置的结构示意图;

图9为本申请实施例提供的终端设备的结构示意图。

具体实施方式

这里将详细地对示例性实施例进行说明,其示例表示在附图中。下面的描述涉及附图时,除非另有表示,不同附图中的相同数字表示相同或相似的要素。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。

需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者装置不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者装置所固有的要素。在没有更多限制的情况下,由语句“包括一个……”限定的要素,并不排除在包括该要素的过程、方法、物品或者装置中还存在另外的相同要素。

需要说明的是,本申请所涉及的用户信息(包括但不限于用户设备信息、用户个人信息等)和数据(包括但不限于用于分析的数据、存储的数据、展示的数据等),均为经用户授权或者经过各方充分授权的信息和数据,并且相关数据的收集、使用和处理需要遵守相关法律法规和标准,并提供有相应的操作入口,供用户选择授权或者拒绝。

为了便于理解,下面,结合图1,对本申请实施例所适用的应用场景进行说明。

图1为本申请实施例提供的应用场景的示意图。请参见图1,包括主叫终端101和被叫终端102。主叫终端101和被叫终端102可以为手机、智能手表、平板电脑等。用户可以通过主叫终端101向被叫终端102发送加密通话请求,以避免用户在通过主叫终端101进行语音通话时泄露隐私信息。

在相关技术中,可以通过如下方式进行加密通话:主叫终端响应于用户在主叫终端中输入的加密呼叫指令,确定加密呼叫指令对应的被叫终端。在确定被叫终端满足加密通话条件时,主叫终端向被叫终端发送加密呼叫请求。在确定与被叫终端建立通话连接之后,主叫终端与被叫终端进行密钥协商处理,以得到密钥信息。在确定得到密钥信息之后,根据密钥信息与被叫终端进行加密通话。在上述过程中,在确定与被叫终端建立通话连接之后,主叫终端与被叫终端进行密钥协商处理,以得到密钥信息。用户在确定建立通话连接之后,还需要等待一定的时长使得主叫终端与被叫终端进行密钥协商处理,以得到密钥信息,导致加密通话的效率较低。

本申请实施例中,主叫终端获取加密呼叫指令,确定加密呼叫指令对应的被叫终端。并向被叫终端发送加密呼叫请求。在被叫终端接听加密呼叫请求对应的通话之前,通过网络连接方式与被叫终端进行密钥协商处理,得到第一协商结果。若第一协商结果为协商成功,则将第一协商结果对应的信息确定为密钥信息。若第一协商结果为协商失败,则通过带内传输方式与被叫终端进行密钥协商处理,得到密钥信息。并根据密钥信息与被叫终端进行加密通话。在上述过程中,由于在被叫终端接听加密呼叫请求对应的通话之前,启动与被叫终端进行密钥协商处理。而不是在确定与被叫终端建立通话连接之后,主叫终端与被叫终端进行密钥协商处理,用户可以在建立通话连接之后直接进行语音通话,提高了加密通话的效率。

下面,通过具体实施例对本申请所示的方法进行说明。需要说明的是,下面几个实施例可以单独存在,也可以互相结合,对于相同或相似的内容,在不同的实施例中不再重复说明。

图2为本申请实施例提供的一种加密通话方法的流程示意图。请参见图2,该方法可以包括:

S201、获取加密呼叫指令,确定加密呼叫指令对应的被叫终端,向被叫终端发送加密呼叫请求。

本申请实施例的执行主体可以为终端设备,也可以为设置在终端设备中的芯片、芯片模组或加密通话装置等。加密通话装置可以通过软件实现,也可以通过软件和硬件的结合实现。终端设备可以为手机、智能手表等。

加密呼叫指令包括被叫终端的电话号码。

用户可以在终端设备的设置页面,确认打开加密通话。然后拨打被叫终端的电话号码。或者,终端设备默认通话模式为加密通话模式,用户拨打被叫终端的电话号码。终端设备响应于用户在主叫终端中输入的电话号码,获取加密呼叫指令。根据被叫终端的电话号码,确定加密呼叫指令对应的被叫终端。

下面,结合图3,对确定加密呼叫指令对应的被叫终端的过程进行说明。图3为本申请实施例提供的确定加密呼叫指令对应的被叫终端的过程示意图。请参见图3,包括界面301~界面302。界面301~界面302为主叫终端提供的页面。请参见界面301,用户A在主叫终端中打开通话设置页面,并点击打开加密通话的按钮。主叫终端响应于用户的点击操作,确定终端设备的通话为加密通话。请参见界面302,用户A在主叫终端的通话页面拨打用户B的电话号码。主叫终端响应于用户在主叫终端中输入的加密呼叫指令,确定加密呼叫指令对应的被叫终端为用户B的终端设备。

可以通过如下方式,向被叫终端发送加密呼叫请求:判断主叫终端和被叫终端是否满足加密通话条件;在确定主叫终端和被叫终端分别满足加密通话条件时,向被叫终端发送加密呼叫请求。

例如,根据图3所示,用户A通过主叫终端中输入的加密呼叫指令,主叫终端在主叫终端和被叫终端分别满足加密通话条件时,向被叫终端发送加密呼叫请求。

S202、在被叫终端接听加密呼叫请求对应的通话之前,通过网络连接方式与被叫终端进行密钥协商处理,得到第一协商结果。

网络连接方式可以为移动蜂窝网络或者无线网络。

第一协商结果可以为协商成功或者协商失败。

例如,根据上述举例所示,确定用户A的终端设备向用户B的终端设备发送加密呼叫请求。在用户B的终端设备接听加密呼叫请求对应的通话之前,用户A的终端设备通过网络连接方式与用户B的终端设备进行密钥协商处理,得到第一协商结果。

S203、若第一协商结果为协商成功,则将第一协商结果对应的信息确定为密钥信息。

密钥信息可以为生成密钥的参数信息。例如,密钥信息至少包括加密通话标识、密钥句柄等。

例如,根据上述举例所示,确定第一协商结果为协商成功,则将第一协商结果对应的信息确定为密钥信息。密钥信息包括加密通话标识ABCD。

若可以通过网络连接方式与被叫终端进行密钥协商处理,得到的第一协商结果为协商成功,则用户可以在与被叫终端建立通话连接之后,直接进行加密通话。而不需要通过带内传输方式与被叫终端进行密钥协商处理,得到密钥信息。提高了加密通话的效率。

S204、若第一协商结果为协商失败,则通过带内传输方式与被叫终端进行密钥协商处理,得到密钥信息。

带内传输方式可以为建立通话连接(即被叫终端接听主叫终端发送的通话请求)之后,将接通后的语音数据替换为协商处理过程产生的数据。即建立通话连接之后与被叫终端进行密钥协商处理,得到密钥信息。

例如,根据上述举例所示,确定第一协商结果为协商失败。用户A的终端设备等待用户B的终端设备接听通话。直至用户B的终端设备接听加密呼叫请求对应的通话,使得用户A的终端设备与用户B的终端设备建立通话连接。此时,用户A的终端设备与用户B的终端设备进行密钥协商处理,得到密钥信息。

S205、根据密钥信息与被叫终端进行加密通话。

例如,根据上述举例所示,用户A的终端设备通过网络连接方式与用户B的终端设备通过网络连接方式进行密钥协商处理,得到密钥信息。此时,等待用户B的终端设备接听通话。直至用户B的终端设备接听加密呼叫请求对应的通话,使得用户A的终端设备与用户B的终端设备建立通话连接。此时,用户A和用户B根据密钥信息进行加密通话。

例如,根据上述举例所示,用户A的终端设备通过网络连接方式与用户B的终端设备通过带内传输方式进行密钥协商处理,得到密钥信息。此时,用户A的终端设备与用户B的终端设备已建立通话连接,可以直接根据密钥信息进行加密通话。

本申请实施例提供的加密通话方法,获取加密呼叫指令,确定加密呼叫指令对应的被叫终端,向被叫终端发送加密呼叫请求。在被叫终端接听加密呼叫请求对应的通话之前,通过网络连接方式与被叫终端进行密钥协商处理,得到第一协商结果。若第一协商结果为协商成功,则将第一协商结果对应的信息确定为密钥信息。若第一协商结果为协商失败,则通过带内传输方式与被叫终端进行密钥协商处理,得到密钥信息。根据密钥信息与被叫终端进行加密通话。在上述过程中,由于在被叫终端接听加密呼叫请求对应的通话之前,启动与被叫终端进行密钥协商处理。而不是在确定与被叫终端建立通话连接之后,主叫终端与被叫终端进行密钥协商处理,用户可以在建立通话连接之后直接进行语音通话,提高了加密通话的效率。

在上述任意一个实施例基础上,下面,结合图4,对加密通话的详细过程进行说明。

图4为本申请实施例提供的另一种加密通话方法的流程示意图。请参见图4,该方法包括:

S401、获取加密呼叫指令,确定加密呼叫指令对应的被叫终端。

需要说明的是,当主叫终端支持加密通话时,用户才能在主叫终端中输入加密呼叫指令。

用户在终端设备输入加密呼叫指令之前,用户需要通过终端设备的应用程序进行信息注册,以开通加密通话的权限。注册信息至少包括:用户的电话号码、终端设备的国际移动设备识别码(International Mobile Equipment Identity,IMEI)、volte的注册状态、密话卡的签约信息等。

用户通过应用程序输入注册信息,终端设备响应于用户的输入选中操作,将注册信息发送至服务器。服务器接收到用户发送的注册信息之后,将注册信息存储至服务器的预设存储空间。当用户通过终端设备更新注册信息时,终端设备可以实时向服务器发送更新后的注册信息。

用户还可以将电话号码与终端设备的IMEI进行绑定处理,绑定处理之后,用户使用电话号码进行加密通话时,通过电话号码确定绑定的IMEI号。只有用户使用的终端设备的IMEI号与绑定的IMEI号相同时,用户才能使用加密通话功能。

S402、向服务器发送能力查询请求。

能力查询请求包括被叫终端的终端标识。

终端标识可以为终端设备的电话号码。

例如,终端设备1响应于用户1在终端设备1中输入的加密呼叫指令,确定加密呼叫指令对应的被叫终端为终端设备2。终端设备1向服务器发送能力查询请求,能力查询请求包括终端设备2的电话号码123456。

S403、接收服务器发送的第一终端能力。

第一终端能力用于指示被叫终端是否支持加密通话。

例如,服务器在接收到终端设备1发送的能力查询请求之后,服务器在预设存储空间中根据终端设备2的电话号码,获取终端设备2的第一终端能力为指示终端设备2支持加密通话。服务器向终端设备1发送第一终端能力。

S404、在第一终端能力指示被叫终端支持加密通话时,向服务器发送网络质量测量请求。

网络质量测量请求包括被叫终端的终端标识。

例如,根据上述举例所示,终端设备1确定终端设备2的第一终端能力为指示终端设备2支持加密通话。此时,终端设备1向服务器发送网络质量测量请求。网络质量测量请求包括终端设备2的电话号码123456。

S405、接收服务器发送的被叫终端的网络质量。

网络质量可以为当前网络对应的网速。其中,网速包括上行速度和下行速度。

例如,服务器在接收到终端设备1发送的网络质量测量请求之后,服务器根据终端设备2的电话号码,确定终端设备2的网络质量。并向终端设备1发送终端设备2的网络质量。

S406、根据第一终端能力和网络质量,判断被叫终端是否满足加密通话条件。

可以通过如下方式根据第一终端能力和网络质量,判断被叫终端是否满足加密通话条件:若第一终端能力指示被叫终端支持加密通话,且网络质量大于或等于预设阈值,则确定被叫终端满足加密通话条件;若第一终端能力指示被叫终端不支持加密通话,或者网络质量小于预设阈值,则确定被叫终端不满足加密通话条件。

可以提前设置预设阈值,并将预设阈值存储至终端设备的预设存储空间。

例如,终端设备1在确定终端设备2的第一终端能力和网络质量之后,确定第一终端能力指示终端设备2支持加密通话,且网络质量大于预设阈值,则可以确定则确定终端设备2满足加密通话条件。

若被叫终端不满足加密通话条件,则生成提示信息,并向被叫终端发送提示信息。提示信息用于提示被叫终端由于不满足加密通话条件未能执行加密通话。

在确定被叫终端不满足加密通话条件时,主叫设备生成提示信息并显示提示信息。同时,通过服务器向被叫终端发送提示信息。

当主叫终端确定被叫终端不满足加密通话条件时,若被叫终端接听主叫终端发起的通话请求,则语音通话变为普通通话。

下面,结合图5,对生成提示信息的过程进行说明。图5为本申请实施例提供的生成提示信息的过程示意图。请参见图5,包括界面501。当主叫终端确定被叫终端不满足加密通话条件时,主叫设备生成提示信息并显示提示信息。提示信息用于指示被叫终端由于不满足加密通话条件未能执行加密通话,将进入普通通话。

S407、判断主叫终端是否满足加密通话条件。

可以通过如下方式,判断主叫终端是否满足加密通话条件:获取主叫终端的第二终端能力;若第二终端能力指示主叫终端支持加密通话,则确定主叫终端满足加密通话条件;若第二终端能力指示主叫终端不支持加密通话,则确定主叫终端不满足加密通话条件。

可以根据服务器中存储的注册信息,确定第二终端能力。例如,若主叫终端对应的volte的注册状态为已注册状态,且密话卡的签约信息为已签约时,确定第二终端能力指示主叫终端支持加密通话。

S408、在确定主叫终端和被叫终端分别满足加密通话条件时,向被叫终端发送加密呼叫请求。

例如,根据上述举例所示,确定主叫终端为终端设备1,被叫终端为终端设备2。终端设备1确定终端设备1和终端设备2分别满足加密通话条件,此时,终端设备1向终端设备2发送加密呼叫请求。

S409、在被叫终端接听加密呼叫请求对应的通话之前,通过网络连接方式与被叫终端进行密钥协商处理,得到第一协商结果。

可以通过如下方式,得到第一协商结果:确定协商起始时刻;若在协商起始时刻之后的预设时长内,主叫终端通过网络连接方式与被叫终端协商得到密钥信息,则确定第一协商结果为协商成功;若在协商起始时刻之后的预设时长内,主叫终端通过网络连接方式与被叫终端未协商得到密钥信息,则确定第一协商结果为协商失败。

可以提前设置预设时长,并将预设时长存储至终端设备的预设存储空间中。

密钥协商处理可以为通过非对称加密算法处理,通过密钥交换算法处理,或者依靠通信双方事先已经共享的信息处理。

非对称加密算法可以为公钥密码算法(RSA算法)、SM2算法。密钥交换算法可以为密钥交换(Diffie-Hellman,DH)算法。

在实际应用过程中,可以根据终端设备的配置信息、通信双方的约定等,确定密钥协商处理的方式。本申请不做限制。

S410、若第一协商结果为协商成功,则将第一协商结果对应的信息确定为密钥信息。

例如,根据上述举例所示,确定主叫终端为终端设备1,被叫终端为终端设备2。假设预设时长为1s,终端设备1确定协商起始时刻为2023/09/14 16:31:03。在2023/09/1416:31:03~2023/09/14 16:31:04内,终端设备1通过网络连接方式与终端设备2协商得到密钥信息1,则终端设备1确定第一协商结果为协商成功,并确定密钥信息为密钥信息1。

S411、若第一协商结果为协商失败,则通过带内传输方式与被叫终端进行密钥协商处理,得到密钥信息。

通过带内传输方式进行密钥协商处理的过程与通过网络连接方式进行密钥协商处理的过程相同。但是,进行密钥协商处理时,传输数据的方式不同。网络连接方式为蜂窝网络或者无线网络。带内传输方式为语音通话时对应的数据传输方式。

例如,根据上述举例所示,确定主叫终端为终端设备1,被叫终端为终端设备2。假设预设时长为1s,终端设备1确定协商起始时刻为2023/09/14 16:31:03。在2023/09/1416:31:04内,终端设备1通过网络连接方式与终端设备2未协商得到密钥信息。此时,终端设备1通过带内传输方式与终端设备2进行密钥协商处理,得到密钥信息1。

S412、根据密钥信息与被叫终端进行加密通话。

例如,根据上述举例所示,终端设备1与终端设备2进行密钥协商处理,得到密钥信息1。终端设备1根据密钥信息1与终端设备2进行加密通话。

若两次密钥协商结果都为协商失败,则将加密通话转为普通通话。

本申请实施例提供的加密通话方法,获取加密呼叫指令,确定加密呼叫指令对应的被叫终端。获取被叫终端的第一终端能力和网络质量。根据第一终端能力和网络质量,判断被叫终端是否满足加密通话条件。判断主叫终端是否满足加密通话条件。在确定主叫终端和被叫终端分别满足加密通话条件时,向被叫终端发送加密呼叫请求。在被叫终端接听加密呼叫请求对应的通话之前,通过网络连接方式与被叫终端进行密钥协商处理,得到第一协商结果。若第一协商结果为协商成功,则将第一协商结果对应的信息确定为密钥信息。若第一协商结果为协商失败,则通过带内传输方式与被叫终端进行密钥协商处理,得到密钥信息。根据密钥信息与被叫终端进行加密通话。在上述过程中,由于在被叫终端接听加密呼叫请求对应的通话之前,启动与被叫终端进行密钥协商处理。而不是在确定与被叫终端建立通话连接之后,主叫终端与被叫终端进行密钥协商处理,用户可以在建立通话连接之后直接进行语音通话,提高了加密通话的效率。

在上述任意一个实施例基础上,下面,结合图6,对加密通话的过程进行举例说明。

图6为本申请实施例提供的加密通话的过程示意图。请参见图6,包括主叫终端601、被叫终端602以及服务器603。主叫终端601和被叫终端602可以为手机、智能手表等。服务器603的预设存储空间存储有多个终端设备的注册信息。

用户A在使用主叫终端601进行加密通话之前,可以通过主叫终端601的应用程序进行信息注册,以开通加密通话的权限。主叫终端601响应于用户的输入选中操作,生成注册信息并向服务器603发送注册信息。服务器603接收到主叫终端601发送的注册信息之后,将注册信息存储至预设存储空间。

用户A在主叫终端601中打开通话设置页面,并点击打开加密通话的按钮。用户A在主叫终端601的通话页面拨打用户B的电话号码。主叫终端601响应于用户在主叫终端601中输入的加密呼叫指令,确定加密呼叫指令对应的被叫终端602为用户B的终端设备。主叫终端601向服务器603发送能力查询请求。服务器603在接收到主叫终端601发送的能力查询请求之后,服务器603在预设存储空间中根据终端设备2的电话号码,获取终端设备2的注册信息。并根据注册信息,确定第一终端能力为指示被叫终端602支持加密通话。服务器603向主叫终端601发送第一终端能力。主叫终端601在确定第一终端能力指示被叫终端602支持加密通话时,向服务器603发送网络质量测量请求。主叫终端601接收服务器603发送的被叫终端602的网络质量。主叫终端601确定第一终端能力指示被叫终端602支持加密通话,且网络质量大于预设阈值,则确定被叫终端602满足加密通话条件。

主叫终端601确定第二终端能力指示主叫终端601支持加密通话。此时,主叫终端601向被叫终端602发送加密呼叫请求。在被叫终端602接听加密呼叫请求对应的通话之前,主叫终端601确定协商起始时刻为2023/09/14 16:50:55。假设预设时长为2s,在2023/09/14 16:50:55~2023/09/14 16:50:57内,主叫终端601通过网络连接方式与被叫终端602为协商未得到密钥信息。则可以确定第一协商结果为协商失败。此时,等待被叫终端602接听主叫终端601的加密通话请求。在确定主叫终端601与被叫终端602建立通话连接时,主叫终端601通过带内传输方式与被叫终端602进行密钥协商处理,得到密钥信息E。主叫终端601根据密钥信息E与被叫终端601进行加密通话。

本申请实施例提供的加密通话方法,响应于用户在主叫终端中输入的加密呼叫指令,确定加密呼叫指令对应的被叫终端。获取被叫终端的第一终端能力和网络质量。根据第一终端能力和网络质量,判断被叫终端是否满足加密通话条件。判断主叫终端是否满足加密通话条件。在确定主叫终端和被叫终端分别满足加密通话条件时,向被叫终端发送加密呼叫请求。在被叫终端接听加密呼叫请求对应的通话之前,通过网络连接方式与被叫终端进行密钥协商处理,得到第一协商结果。若第一协商结果为协商成功,则将第一协商结果对应的信息确定为密钥信息。若第一协商结果为协商失败,则通过带内传输方式与被叫终端进行密钥协商处理,得到密钥信息。根据密钥信息与被叫终端进行加密通话。在上述过程中,由于在被叫终端接听加密呼叫请求对应的通话之前,启动与被叫终端进行密钥协商处理。而不是在确定与被叫终端建立通话连接之后,主叫终端与被叫终端进行密钥协商处理,用户可以在建立通话连接之后直接进行语音通话,提高了加密通话的效率。

图7为本申请实施例提供的一种加密通话装置的结构示意图。加密通话装置可以为芯片或芯片模组。请参见图7,该加密通话装置10可以包括:

第一发送模块11,用于获取加密呼叫指令,确定所述加密呼叫指令对应的被叫终端,向所述被叫终端发送加密呼叫请求;

第一处理模块12,用于在所述被叫终端接听所述加密呼叫请求对应的通话之前,通过网络连接方式与所述被叫终端进行密钥协商处理,得到第一协商结果;

确定模块13,用于若所述第一协商结果为协商成功,则将所述第一协商结果对应的信息确定为密钥信息;

第二处理模块14,用于若所述第一协商结果为协商失败,则通过带内传输方式与所述被叫终端进行密钥协商处理,得到所述密钥信息;

通话模块15,用于根据所述密钥信息与所述被叫终端进行加密通话。

在一种可能的实施方式中,所述第一发送模块11具体用于:

判断主叫终端和所述被叫终端是否满足加密通话条件;

在确定所述主叫终端和所述被叫终端分别满足加密通话条件时,向所述被叫终端发送加密呼叫请求。

在一种可能的实施方式中,所述第一发送模块11具体用于:

获取所述被叫终端的第一终端能力和网络质量,所述第一终端能力用于指示所述被叫终端是否支持加密通话;

根据所述第一终端能力和所述网络质量,判断所述被叫终端是否满足加密通话条件。

在一种可能的实施方式中,所述第一发送模块11具体用于:

若所述第一终端能力指示所述被叫终端支持加密通话,且所述网络质量大于或等于预设阈值,则确定所述被叫终端满足所述加密通话条件;

若所述第一终端能力指示所述被叫终端不支持加密通话,或者所述网络质量小于所述预设阈值,则确定所述被叫终端不满足所述加密通话条件。

在一种可能的实施方式中,所述第一发送模块11具体用于:

向服务器发送能力查询请求,所述能力查询请求包括所述被叫终端的终端标识;

接收所述服务器发送的所述第一终端能力;

在所述第一终端能力指示所述被叫终端支持加密通话时,向所述服务器发送网络质量测量请求,所述网络质量测量请求包括所述被叫终端的终端标识;

接收所述服务器发送的所述被叫终端的网络质量。

在一种可能的实施方式中,所述第一发送模块11具体用于:

获取所述主叫终端的第二终端能力;

若所述第二终端能力指示所述主叫终端支持加密通话,则确定所述主叫终端满足加密通话条件;

若所述第二终端能力指示所述主叫终端不支持加密通话,则确定所述主叫终端不满足加密通话条件。

在一种可能的实施方式中,所述第一处理模块12具体用于:

确定协商起始时刻;

若在所述协商起始时刻之后的预设时长内,所述主叫终端通过网络连接方式与所述被叫终端协商得到密钥信息,则确定所述第一协商结果为所述协商成功;

若在所述协商起始时刻之后的预设时长内,所述主叫终端通过网络连接方式与所述被叫终端未协商得到密钥信息,则确定所述第一协商结果为所述协商失败。

本申请实施例提供的加密通话装置可以执行上述方法实施例所示的技术方案,其实现原理以及有益效果类似,此处不再进行赘述。

图8为本申请实施例提供的另一种加密通话装置的结构示意图。在图7所示实施例的基础上,请参见图8,加密通话装置10还包括第二发送模块16。

其中,所述第二发送模块16用于:

若所述被叫终端不满足加密通话条件,则生成提示信息,所述提示信息用于提示所述被叫终端由于不满足所述加密通话条件未能执行加密通话;

向所述被叫终端发送所述提示信息。

本申请实施例提供的加密通话装置可以执行上述方法实施例所示的技术方案,其实现原理以及有益效果类似,此处不再进行赘述。

图9为本申请实施例提供的终端设备的结构示意图。终端设备可以为主叫终端或者被叫终端。请参见图9,该终端设备20可以包括:存储器21、处理器22。示例性地,存储器21、处理器22,各部分之间通过总线23相互连接。

存储器21用于存储程序指令;

处理器22用于执行该存储器所存储的程序指令,用以使得终端设备20执行上述方法实施例所示的方法。

本申请实施例提供的终端设备可以执行上述方法实施例所示的技术方案,其实现原理以及有益效果类似,此处不再进行赘述。

本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当所述计算机执行指令被处理器执行时用于实现上述方法。

本申请实施例还可提供一种计算机程序产品,包括计算机程序,该计算机程序被处理器执行时,可实现上述方法。

实现上述各方法实施例的全部或部分步骤可以通过程序指令相关的硬件来完成。前述的程序可以存储于一可读取存储器中。该程序在执行时,执行包括上述各方法实施例的步骤;而前述的存储器(存储介质)包括:只读存储器(read-only memory,ROM)、随机存取存储器(Random Access Memory,RAM)、快闪存储器、硬盘、固态硬盘、磁带(magnetictape)、软盘(floppy disk)、光盘(optical disc)及其任意组合。

本申请实施例是参照根据本申请实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理单元以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理单元执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。

这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。

这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。

显然,本领域的技术人员可以对本申请实施例进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请实施例的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。

在本申请中,术语“包括”及其变形可以指非限制性的包括;术语“或”及其变形可以指“和/或”。本申请中术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。本申请中,“多个”是指两个或两个以上。“和/或”,描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。字符“/”一般表示前后关联对象是一种“或”的关系。

相关技术
  • 终端设备的触觉反馈方法、触觉反馈装置及终端设备
  • 终端设备的重心调整方法、重心调整装置及终端设备
  • 一种检测装置的校准方法、装置和终端设备
  • 一种视频处理方法、视频索引方法、装置及终端设备
  • 图像加密隐藏方法及装置、图像解密方法及装置
  • 一种加密通话方法与通话加密装置
  • 一种实现GSM手机的加密通话方法和加密装置
技术分类

06120116503410