云手机安全投屏的方法、移动终端和服务器与流程

文档序号:17429689发布日期:2019-04-17 03:19阅读:632来源:国知局
云手机安全投屏的方法、移动终端和服务器与流程

本发明涉及网络技术领域,特别涉及一种云手机安全投屏的方法、移动终端和服务器。



背景技术:

云手机,是一个基于云计算强大虚拟应用和移动互联网的智能手机应用云平台。基于云计算在大规模计算、强大的存储能力、虚拟化应用等方面突出的优势,云平台为智能手机用户提供多元化、全方位的虚拟手机应用和服务,全面支持各种手机应用程序的展示、下载、应用与管理服务,并卓越实现全天候云端智能托管应用,让用户脱离移动终端的状态下,也能将各种应用程序托管到到云端,保持全天候在线状态,全面实现智能手机应用虚拟化。

云手机的用户会在自己的真实手机上安装一个云手机的客户端,但云手机本身是没有屏幕的,如果产生的内容需要投屏到客户端上,当前的投屏使用方法通常没有加密会导致内容发生泄露的风险,或者整个投屏的过程全链路加密使得投屏使用过程效率相当低。



技术实现要素:

本发明的实施方式旨在至少解决现有技术中存在的技术问题之一。为此,本发明的实施方式需要提供一种云手机安全投屏的方法、移动终端和服务器。

本发明实施方式的一种云手机安全投屏的方法,其特征在于,客户端和服务器通过公网通信连接,服务器和云手机通过私网通信连接,该方法包括:

步骤1,利用非对称加密算法生成公钥并发送至服务器;

步骤2,接收服务器的反馈;其中,服务器先使用对称加密算法生成的唯一密钥,再利用接收的公钥对该密钥进行加密后将加密后的密钥反馈给客户端;

步骤3,利用公钥对应的私钥解出密钥,使用密钥加密验证信息发送给服务器进行鉴权;

步骤4,接收鉴权结果并在鉴权结果为成功时,向服务器发出投屏请求;

步骤5,通过公网接收服务器使用对称加密算法加密后转发的云手机推送的投屏内容;其中,云手机通过私网转发给服务器的投屏内容不加密。

一种实施方式中,投屏内容包括音视频流,则步骤5包括:通过公网接收服务器使用对称加密算法加密后转发的云手机推送的音视频流;其中,音视频流的音视频帧只加密前第一阈值数量的字节。

一种实施方式中,投屏内容包括指令信息,则步骤5包括:通过公网接收服务器使用对称加密算法加密后转发的云手机推送的指令信息;其中,指令信息全部加密。

一种实施方式中,非对称加密算法包括rsa算法、ecc算法、diffie-hellman算法、elgamal算法中的任意一项;对称加密算法包括des算法、3des算法、blowfish算法、rc4算法、rc5算法、rc6算法和aes算法中的任意一项。

本发明实施方式中提出一种移动终端,其特征在于,移动终端包括一个或多个第一处理器、第一存储器、以及一个或多个程序,移动终端和服务器通过公网通信连接,服务器和云手机通过私网通信连接,其中,一个或多个程序被存储在第一存储器中,并且被配置由一个或多个第一处理器执行,程序用于执行权利要求1-4任意一项云手机安全投屏的方法的指令。

本发明实施方式提出一种云手机安全投屏的方法,其特征在于,客户端和服务器通过公网通信连接,服务器和云手机通过私网通信连接,该方法包括:

步骤1,接收客户端利用非对称加密算法生成并发送的公钥;

步骤2,先使用对称加密算法生成的唯一密钥,再利用接收的公钥对该密钥进行加密后将加密后的密钥反馈给客户端;

步骤3,接收客户端利用公钥对应的私钥解出的密钥加密验证信息后发出的鉴权请求;

步骤4,向客户端发送鉴权结果,并在鉴权结果为成功时接收客户端发出的投屏请求;

步骤5,接收云手机通过私网转发的不加密的投屏内容,对投屏内容使用对称加密算法加密后通过公网发送至客户端进行投屏。

一种实施方式中,投屏内容包括音视频流,则步骤5包括:接收云手机通过私网转发的不加密的投屏内容,对投屏内容使用对称加密算法加密后通过公网发送至客户端进行投屏;其中,音视频流的音视频帧只加密前第一阈值数量的字节。

一种实施方式中,投屏内容包括指令信息,则步骤5包括:接收云手机通过私网转发的不加密的投屏内容,对投屏内容使用对称加密算法加密后通过公网发送至客户端进行投屏;其中,指令信息全部加密。

一种实施方式中,非对称加密算法包括rsa算法、ecc算法、diffie-hellman算法、elgamal算法中的任意一项;对称加密算法包括des算法、3des算法、blowfish算法、rc4算法、rc5算法、rc6算法和aes算法中的任意一项。

本发明实施方式提出一种服务器,其特征在于,服务器上包括一个或多个第二处理器、第二存储器以及一个或多个程序,移动终端和服务器通过公网通信连接,服务器和云手机通过私网通信连接,其中,一个或多个程序被存储在第二存储器中,并且被配置由一个或多个第二处理器执行,程序用于执行权利要求6-9任意一项云手机安全投屏的方法的指令。

本发明实施方式的云手机安全投屏的方法、移动终端和服务器,先利用非对称加密算法实现鉴权,在鉴权成功后开始投屏,并且云手机通过私网转发给服务器的投屏内容不加密,服务器通过公网发送至客户端的投屏内容使用对称加密算法加密,通过这种方式,即保证了安全,并且部分链路加密实现了对效率的兼顾。

本发明的附加方面的优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。

附图说明

本发明的实施方式的上述和/或附加的方面和优点从结合下面附图对实施方式的描述中将变得明显和容易理解,其中:

图1是本发明实施方式的一种云手机安全投屏的方法的流程示意图;

图2是本发明实施方式的网络结构示意图;

图3是本发明实施方式的另一种云手机安全投屏的方法的流程示意图。

具体实施方式

下面详细描述本发明的实施方式,实施方式的示例在附图中示出,其中相同或类似的标号自始至终表示相同或类似的元件或具有相同或类似功能的元件。下面通过参考附图描述的实施方式是示例性的,仅可用于解释本发明的实施方式,而不能理解为对本发明的实施方式的限制。

实施例1

请参阅图1,本发明实施方式的云手机安全投屏的方法,该方法包括:

步骤1,客户端利用非对称加密算法生成公钥并发送至服务器;

步骤2,客户端接收接收服务器的反馈;其中,服务器先使用对称加密算法生成的唯一密钥,再利用接收的公钥对该密钥进行加密后将加密后的密钥反馈给客户端;

步骤3,客户端利用公钥对应的私钥解出密钥,使用密钥加密验证信息发送给服务器进行鉴权;

步骤4,客户端接收鉴权结果并在鉴权结果为成功时,向服务器发出投屏请求;

步骤5,客户端通过公网接收服务器使用对称加密算法加密后转发的云手机推送的投屏内容;其中,云手机通过私网转发给服务器的投屏内容不加密。

请参阅图2,本实施方式中应用的网络结构包括用户的真实手机或真实移动终端,该移动终端上安装有客户端,客户端和服务器通过公网通信连接,服务器和云手机通过私网通信连接,一般来说,公网就是指的广域网(wan),私网就是指的局域网(lan)。广域网(wan)就是通常所说的internet,它是一个遍及全世界的网络。局域网(lan),相对于广域网(wan)而言,主要是指在小范围内的计算机互联网络。这个“小范围”可以是公司的一个机房,或者是一个网络集群。广域网上的每一台电脑(或其他网络设备)都有一个或多个广域网ip地址(或者说公网、外网ip地址),广域网ip地址一般要到isp处交费之后才能申请到,广域网ip地址不能重复;局域网(lan)上的每一台电脑(或其他网络设备)都有一个或多个局域网ip地址(或者说私网、内网ip地址),局域网ip地址是局域网内部分配的,不同局域网的ip地址可以重复,不会相互影响。

步骤1中,客户端生成公钥使用的是非对称加密算法。非对称加密算法指加密和解密使用不同密钥的加密算法,也称为公私钥加密。假设两个用户要加密交换数据,双方交换公钥,使用时一方用对方的公钥加密,另一方即可用自己的私钥解密。如果企业中有n个用户,企业需要生成n对密钥,并分发n个公钥。由于公钥是可以公开的,用户只要保管好自己的私钥即可,因此加密密钥的分发将变得十分简单。同时,由于每个用户的私钥是唯一的,其他用户除了可以可以通过信息发送者的公钥来验证信息的来源是否真实,还可以确保发送者无法否认曾发送过该信息。非对称加密的缺点是加解密速度要远远慢于对称加密,在某些极端情况下,甚至能比非对称加密慢上1000倍。本发明实施方式中,非对称加密算法包括但不限于rsa算法、ecc算法、diffie-hellman算法、elgamal算法中的任意一项。步骤1中以rsa算法为例,客户端生成唯一的rsa公钥然后发送给服务器。

步骤2中,客户端接收服务器反馈的密钥。服务器反馈的密钥是使用对称加密算法生成的。对称加密算法指加密和解密使用相同密钥的加密算法。对称加密算法的优点在于加解密的高速度和使用长密钥时的难破解性。本发明实施方式中,对称加密算法包括但不限于des算法、3des算法、blowfish算法、rc4算法、rc5算法、rc6算法和aes算法中的任意一项。步骤2中客户端接收服务器反馈的密钥,以服务器使用的对称加密算法是rc4算法为例,是服务器使用先使用对称加密算法rc4算法生成的唯一密钥,即rc4密钥,再利用接收的rsa公钥对该rc4密钥进行加密后反馈给客户端的。

步骤3中,客户端用发给服务器的rsa公钥对应的私钥解出rc4密钥,使用rc4密钥加密验证信息发送给服务器进行鉴权。客户端与服务器的鉴权是一个认证的过程,基于token的身份验证方法简要介绍如下:

1.客户端使用用户名跟密码请求登录

2.服务器收到请求去验证用户名与密码

3.验证成功后,服务器会签发一个token,再把这个token发送给客户端

4.客户端收到token以后可以把它存储起来,比如放在cookie里或者localstorage里

5.客户端每次向服务器请求资源的时候需要带着服务器签发的token

6.服务器收到请求,然后去验证客户端请求里面带着的token,如果验证成功,就向客户端返回请求的数据。

总的来说就是客户端在首次登陆以后,服务器再次接收鉴权请求的时候,就只认token了,请求只要每次把token带上就行了,服务器端会拦截所有的请求,然后校验token的合法性,合法即鉴权成功的情况下就放行,不合法即鉴权失败或鉴权不成功就返回401。所以,token合法则服务器反馈鉴权成功的结果给客户端,反之,反馈鉴权不成功的结果给客户端。当然,鉴权过程还可以是其他方式。

步骤4中,客户端接收鉴权结果并在鉴权结果为成功时,向服务器发出投屏请求,开始准备投屏。

步骤5中,客户端通过公网接收服务器转发的云手机推送的投屏内容。根据网络结构,这个过程可以细分为两部分,一个是私网内的通讯过程,另一个是公网间的通讯过程。服务器先将客户端的投屏请求以不加密的方式发送给云手机,云手机则同样以不加密的方式推送投屏内容,由于服务器和云手机之间是私网内进行通讯,私网间的通讯都能以不加密的方式进行传递。在收到云手机推送的投屏内容后,服务器可以根据不同的投屏内容,设置不同的加密方式再发送给客户端。

一种情况中,投屏内容包括音视频流,则步骤5包括:客户端通过公网接收服务器转发的云手机推送的音视频流。音视频流是服务器使用对称加密算法加密后发送给客户端的,但是由于音视频流的文件通常比较大,如果全部加密则可能影响投屏使用的效率,但不加密则会出现安全隐患。所以音视频流的音视频帧只加密前第一阈值数量的字节。本实施方式中,第一阈值数量可以是32或64,即音视频流的音视频帧只加密前32或64字节,这样实现效率和安全两者的兼顾。

另一种情况中,投屏内容包括指令信息,则步骤5包括:客户端通过公网接收服务器转发的云手机推送的指令信息;指令信息是服务器使用对称加密算法加密后发送给客户端的,由于指令信息通常对带宽开销影响不大,所以在整个投屏过程中,可以将服务器通过公网发送给客户端指令信息设置为全部加密。

综上所述,本实施方式先利用非对称加密算法实现鉴权,在鉴权成功后开始投屏,并且云手机通过私网转发给服务器的投屏内容不加密,服务器通过公网发送至客户端的投屏内容使用对称加密算法加密,通过这种方式,即保证了安全,并且部分链路加密实现了对效率的兼顾。

实施例2

本发明实施方式的一种移动终端,该移动终端包括一个或多个第一处理器、第一存储器、以及一个或多个程序,移动终端和服务器通过公网通信连接,服务器和云手机通过私网通信连接,其中,一个或多个程序被存储在第一存储器中,并且被配置由一个或多个第一处理器执行,程序用于执行实施例1中云手机安全投屏的方法的指令,即移动终端上安装有客户端,该客户端以一个或多个程序的方式执行以下方法:

步骤1,利用非对称加密算法生成公钥并发送至服务器;

步骤2,接收服务器的反馈;其中,服务器先使用对称加密算法生成的唯一密钥,再利用接收的公钥对该密钥进行加密后将加密后的密钥反馈给客户端;

步骤3,利用公钥对应的私钥解出密钥,使用密钥加密验证信息发送给服务器进行鉴权;

步骤4,接收鉴权结果并在鉴权结果为成功时,向服务器发出投屏请求;

步骤5,通过公网接收服务器使用对称加密算法加密后转发的云手机推送的投屏内容;其中,云手机通过私网转发给服务器的投屏内容不加密。

实施例3

请参阅图3,本发明实施方式的一种云手机安全投屏的方法,该方法包括:

步骤1,服务器接收客户端利用非对称加密算法生成并发送的公钥;

步骤2,服务器先使用对称加密算法生成的唯一密钥,再利用接收的公钥对该密钥进行加密后将加密后的密钥反馈给客户端;

步骤3,服务器接收客户端利用公钥对应的私钥解出的密钥加密验证信息后发出的鉴权请求;

步骤4,服务器向客户端发送鉴权结果,并在鉴权结果为成功时接收客户端发出的投屏请求;

步骤5,服务器接收云手机通过私网转发的不加密的投屏内容,对投屏内容使用对称加密算法加密后通过公网发送至客户端进行投屏。

本实施例中应用的网络结构请参阅图2。

步骤1中,客户端利用包括但不限于rsa算法、ecc算法、diffie-hellman算法、elgamal算法中的任意一项非对称加密算法生成公钥后,向服务器发送该公钥。此处以步骤1使用rsa算法为例,服务器接收客户端生成并发送的唯一的rsa公钥。

步骤2中,服务器使用包括但不限于des算法、3des算法、blowfish算法、rc4算法、rc5算法、rc6算法和aes算法中的任意一项对称加密算法生成密钥再反馈给客户端,此处以服务器使用的对称加密算法是rc4算法为例,服务器使用先使用rc4算法生成的唯一密钥,即rc4密钥,再利用接收的rsa公钥对该rc4密钥进行加密后反馈给客户端。

步骤3中,服务器接收客户端发送的鉴权请求,其中,该鉴权请求是客户端用发给服务器的rsa公钥对应的私钥解出rc4密钥,使用rc4密钥加密验证信息发出的鉴权请求。鉴权过程的介绍详见实施例1,在此不再赘述。

步骤4,服务器反馈给客户端的鉴权结果包括鉴权成功和鉴权不成功,鉴权结果可以是token的方式,也可以是其他方式。服务器向客户端发送鉴权结果,并在鉴权结果为成功时接收客户端发出的投屏请求。

步骤5中,服务器将云手机的投屏内容发送给客户端。此处包含两个过程,一个是私网内的通讯过程,另一个是公网间的通讯过程。服务器先将客户端的投屏请求以不加密的方式发送给云手机,云手机则同样以不加密的方式推送投屏内容,由于服务器和云手机之间是私网内进行通讯,私网间的通讯都能以不加密的方式进行传递。在收到云手机推送的投屏内容后,服务器可以根据不同的投屏内容,设置不同的加密方式再发送给客户端。

一种情况中,投屏内容包括音视频流,则步骤5包括:服务器接收云手机通过私网转发的不加密的投屏内容,对投屏内容使用对称加密算法加密后通过公网发送至客户端进行投屏。音视频流是服务器使用对称加密算法加密后发送给客户端的,但是由于音视频流的文件通常比较大,如果全部加密则可能影响投屏使用的效率,但不加密则会出现安全隐患。所以音视频流的音视频帧只加密前第一阈值数量的字节。本实施方式中,第一阈值数量可以是32或64,即音视频流的音视频帧只加密前32或64字节,这样实现效率和安全两者的兼顾。

另一种情况中,投屏内容包括指令信息,则步骤5包括:服务器接收云手机通过私网转发的不加密的投屏内容,对投屏内容使用对称加密算法加密后通过公网发送至客户端进行投屏。指令信息是服务器使用对称加密算法加密后发送给客户端的,由于指令信息通常对带宽开销影响不大,所以在整个投屏过程中,可以将服务器通过公网发送给客户端指令信息设置为全部加密。

综上所述,本实施方式先利用非对称加密算法实现鉴权,在鉴权成功后开始投屏,并且云手机通过私网转发给服务器的投屏内容不加密,服务器通过公网发送至客户端的投屏内容使用对称加密算法加密,通过这种方式,即保证了安全,并且部分链路加密实现了对效率的兼顾。

实施例4

本发明的实施方式提出一种服务器,该服务器上包括一个或多个第二处理器、第二存储器以及一个或多个程序,移动终端和服务器通过公网通信连接,服务器和云手机通过私网通信连接,其中,一个或多个程序被存储在第二存储器中,并且被配置由一个或多个第二处理器执行。具体地,服务器以一个或多个程序的方式执行以下方法的指令:

步骤1,接收客户端利用非对称加密算法生成并发送的公钥;

步骤2,先使用对称加密算法生成的唯一密钥,再利用接收的公钥对该密钥进行加密后将加密后的密钥反馈给客户端;

步骤3,接收客户端利用公钥对应的私钥解出的密钥加密验证信息后发出的鉴权请求;

步骤4,向客户端发送鉴权结果,并在鉴权结果为成功时接收客户端发出的投屏请求;

步骤5,接收云手机通过私网转发的不加密的投屏内容,对投屏内容使用对称加密算法加密后通过公网发送至客户端进行投屏。

本发明中,移动终端上的第一处理器和服务器上的第二处理器可以是相同的处理器,也可以是不同的处理器,此处命名上的区分是为了表述的方便。同理,移动终端上的第一存储器和服务器上的第二存储器可以是相同的存储器,也可以是不同的存储器,此处命名上的区分是为了表述的方便。即术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个所述特征。在本发明的实施方式的描述中,“多个”的含义是两个或两个以上,除非另有明确具体的限定。

在本发明的实施方式的描述中,需要说明的是,除非另有明确的规定和限定,术语“安装”、“相连”、“连接”应做广义理解,例如,可以是固定连接,也可以是可拆卸连接,或一体地连接;可以是机械连接,也可以是电连接或可以相互通讯;可以是直接相连,也可以通过中间媒介间接相连,可以是两个元件内部的连通或两个元件的相互作用关系。对于本领域的普通技术人员而言,可以根据具体情况理解上述术语在本发明的实施方式中的具体含义。

下文的公开提供了许多不同的实施方式或例子用来实现本发明的实施方式的不同结构。为了简化本发明的实施方式的公开,下文中对特定例子的部件和设置进行描述。当然,它们仅仅为示例,并且目的不在于限制本发明。此外,本发明的实施方式可以在不同例子中重复参考数字和/或参考字母,这种重复是为了简化和清楚的目的,其本身不指示所讨论各种实施方式和/或设置之间的关系。此外,本发明的实施方式提供了的各种特定的工艺和材料的例子,但是本领域普通技术人员可以意识到其他工艺的应用和/或其他材料的使用。

在本说明书的描述中,参考术语“一个实施方式”、“一些实施方式”、“示意性实施方式”、“示例”、“具体示例”或“一些示例”等的描述意指结合所述实施方式或示例描述的具体特征、结构、材料或者特点包含于本发明的至少一个实施方式或示例中。在本说明书中,对上述术语的示意性表述不一定指的是相同的实施方式或示例。而且,描述的具体特征、结构、材料或者特点可以在任何的一个或多个实施方式或示例中以合适的方式结合。

流程图中或在此以其他方式描述的任何过程或方法描述可以被理解为,表示包括一个或更多个用于实现特定逻辑功能或过程的步骤的可执行指令的代码的模块、片段或部分,并且本发明的优选实施方式的范围包括另外的实现,其中可以不按所示出或讨论的顺序,包括根据所涉及的功能按基本同时的方式或按相反的顺序,来执行功能,这应被本发明的实施例所属技术领域的技术人员所理解。

在流程图中表示或在此以其他方式描述的逻辑和/或步骤,例如,可以被认为是用于实现逻辑功能的可执行指令的定序列表,可以具体实现在任何计算机可读介质中,以供指令执行系统、装置或设备(如基于计算机的系统、包括处理模块的系统或其他可以从指令执行系统、装置或设备取指令并执行指令的系统)使用,或结合这些指令执行系统、装置或设备而使用。就本说明书而言,"计算机可读介质"可以是任何可以包含、存储、通信、传播或传输程序以供指令执行系统、装置或设备或结合这些指令执行系统、装置或设备而使用的装置。计算机可读介质的更具体的示例(非穷尽性列表)包括以下:具有一个或多个布线的电连接部(电子装置),便携式计算机盘盒(磁装置),随机存取存储器(ram),只读存储器(rom),可擦除可编辑只读存储器(eprom或闪速存储器),光纤装置,以及便携式光盘只读存储器(cdrom)。另外,计算机可读介质甚至可以是可在其上打印所述程序的纸或其他合适的介质,因为可以例如通过对纸或其他介质进行光学扫描,接着进行编辑、解译或必要时以其他合适方式进行处理来以电子方式获得所述程序,然后将其存储在计算机存储器中。

应当理解,本发明的实施方式的各部分可以用硬件、软件、固件或它们的组合来实现。在上述实施方式中,多个步骤或方法可以用存储在存储器中且由合适的指令执行系统执行的软件或固件来实现。例如,如果用硬件来实现,和在另一实施方式中一样,可用本领域公知的下列技术中的任一项或他们的组合来实现:具有用于对数据信号实现逻辑功能的逻辑门电路的离散逻辑电路,具有合适的组合逻辑门电路的专用集成电路,可编程门阵列(pga),现场可编程门阵列(fpga)等。

本技术领域的普通技术人员可以理解实现上述实施例方法携带的全部或部分步骤是可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,该程序在执行时,包括方法实施例的步骤之一或其组合。此外,在本发明的各个实施例中的各功能单元可以集成在一个处理模块中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个模块中。上述集成的模块既可以采用硬件的形式实现,也可以采用软件功能模块的形式实现。所述集成的模块如果以软件功能模块的形式实现并作为独立的产品销售或使用时,也可以存储在一个计算机可读取存储介质中。

上述提到的存储介质可以是只读存储器,磁盘或光盘等。

尽管上面已经示出和描述了本发明的实施例,可以理解的是,上述实施例是示例性的,不能理解为对本发明的限制,本领域的普通技术人员在本发明的范围内可以对上述实施例进行变化、修改、替换和变型。

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