CN110998527B - 对计算设备的远程控制 - Google Patents
对计算设备的远程控制 Download PDFInfo
- Publication number
- CN110998527B CN110998527B CN201880050588.8A CN201880050588A CN110998527B CN 110998527 B CN110998527 B CN 110998527B CN 201880050588 A CN201880050588 A CN 201880050588A CN 110998527 B CN110998527 B CN 110998527B
- Authority
- CN
- China
- Prior art keywords
- computing device
- bridge module
- connection
- response
- projection
- 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
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3247—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving digital signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/451—Execution arrangements for user interfaces
- G06F9/452—Remote windowing, e.g. X-Window System, desktop virtualisation
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/31—User authentication
- G06F21/33—User authentication using certificates
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F3/00—Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
- G06F3/14—Digital output to display device ; Cooperation and interconnection of the display device with other functional units
- G06F3/1454—Digital output to display device ; Cooperation and interconnection of the display device with other functional units involving copying of the display data of a local workstation or window to a remote workstation or window so that an actual copy of the data is displayed simultaneously on two or more displays, e.g. teledisplay
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0823—Network architectures or network communication protocols for network security for authentication of entities using certificates
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/08—Network architectures or network communication protocols for network security for authentication of entities
- H04L63/0884—Network architectures or network communication protocols for network security for authentication of entities by delegation of authentication, e.g. a proxy authenticates an entity to be authenticated on behalf of this entity vis-à-vis an authentication entity
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/08—Protocols specially adapted for terminal emulation, e.g. Telnet
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/14—Session management
- H04L67/141—Setup of application sessions
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04W—WIRELESS COMMUNICATION NETWORKS
- H04W4/00—Services specially adapted for wireless communication networks; Facilities therefor
- H04W4/30—Services specially adapted for particular environments, situations or purposes
- H04W4/40—Services specially adapted for particular environments, situations or purposes for vehicles, e.g. vehicle-to-pedestrians [V2P]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/12—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks
- H04L67/125—Protocols specially adapted for proprietary or special-purpose networking environments, e.g. medical networks, sensor networks, networks in vehicles or remote metering networks involving control of end-device applications over a network
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- Human Computer Interaction (AREA)
- Computer And Data Communications (AREA)
- Telephonic Communication Services (AREA)
- Telephone Function (AREA)
- Mobile Radio Communication Systems (AREA)
Abstract
一种在第一计算设备与第二计算设备之间建立远程控制会话以使由第一计算设备的处理器执行的应用的图形用户界面能够在第二计算设备上被远程控制和查看的方法,该方法在第一计算设备上实现并且包括:建立与桥接模块的连接,桥接模块在第一计算设备的外部;使用连接,执行与所述桥接模块的认证过程;在连接上建立到桥接模块的安全通信信道;从桥接模块接收从第二计算设备发送的认证请求;响应于接收到认证请求(i)使用安全通信信道访问在桥接模块的安全数据存储部中存储的投影证书链,(ii)生成包括投影证书链的响应,并且(iii)通过安全通信信道,指示桥接模块使用与桥接模块相关联并存储在安全数据存储部中的私钥来对响应进行密码签名,并作为响应,通过安全通信信道从桥接模块接收签名;以及经由桥接模块向第二计算设备发送经签名的认证响应以建立远程控制会话,经签名的认证响应包括投影证书链和签名。
Description
技术领域
本发明涉及一种用于远程控制和/或查看计算设备的方法和***。
背景技术
已知使用第一计算机设备来查看和控制第二计算机设备,第二计算机设备使用运行在第一计算机设备(VNC查看器)上的虚拟网络计算(VNC)查看器应用和运行在第二计算机设备(VNC服务器)上的VNC服务器应用。第二计算机设备的显示器的内容被复制在第一计算机设备上。第一计算机设备具有接口机构,该接口机构允许用户向被控制的第二计算机设备发送用户输入事件,例如按压设备上的物理键、移动鼠标光标或触摸触摸屏输入。可以理解,数据链路的形式和计算机设备的性质可以根据所使用的情况而变化。
诸如MirrorLink之类的智能设备车载应用投影技术允许在智能设备(例如但不限于智能手机)上运行的应用使用车辆的本机显示器和控制机构来显示并用于车辆中。
从智能设备的角度来看,车辆是在技术特定的硬件和软件接口规范之后抽象出来的。
当前的智能设备车载应用投影技术依赖于:(i)设备之间的物理连接,通常在发送方(VNC服务器)的***空间中受控制;(ii)强制使用安全元件的认证层,通常在发送方的***空间中受控制,以存储受信任的证书链或其他认证方式;以及(iii)要集成在发送方中的***组件,必须用该***组件来启用投影。
发明内容
根据本发明的一个方面,提供了一种在第一计算设备与第二计算设备之间建立远程控制会话以使由第一计算设备的处理器执行的应用的图形用户界面能够在第二计算设备上被远程控制和查看的方法,该方法在第一计算设备上实现并且包括:建立与桥接模块的连接,桥接模块在第一计算设备的外部;使用连接,执行与所述桥接模块的认证过程;在连接上建立到桥接模块的安全通信信道;从桥接模块接收从第二计算设备发送的认证请求;响应于接收到认证请求(i)使用安全通信信道访问在桥接模块的安全数据存储部中存储的投影证书链,(ii)生成包括投影证书链的响应,并且(iii)通过安全通信信道,指示桥接模块使用与桥接模块相关联并存储在安全数据存储部中的私钥来对响应进行密码签名,并作为响应,通过安全通信信道从桥接模块接收签名;以及经由桥接模块向第二计算设备发送经签名的认证响应以建立远程控制会话,经签名的认证响应包括投影证书链和签名。
访问投影证书链可以包括:经由安全通信信道向桥接模块发送对投影证书链的请求;以及经由安全通信信道从桥接模块接收投影证书链。
执行认证过程可以包括:从所述第一计算设备上的存储装置中取回与所述第一计算设备相关联的证书链;用与第一计算设备相关联的私钥对与第一计算设备相关联的证书链进行签名;以及向所述桥接模块发送经签名的证书链,以供所述桥接模块进行证实,所述私钥存储在所述第一计算设备的存储器中。
执行认证过程可以包括:接收与桥接模块相关联的经签名的证书链以及与桥接模块相关联的公钥;以及使用存储在所述第一计算设备上的存储器中的根证书来证实与所述桥接模块相关联的所述证书链。
在连接上建立到桥接模块的安全通信信道可以包括:生成至少一个对称加密密钥;使用与桥接模块相关联的公钥来加密至少一个对称加密密钥,以生成至少一个经加密的对称加密密钥;以及向所述桥接模块发送所述至少一个经加密的对称加密密钥。
该方法还可以包括响应于检测到所述连接的丢失,使至少一个对称加密密钥无效。
该方法还可以包括:从桥接模块接收请求,用于启动所述图形用户界面向第二计算设备的投影,请求源自第二计算设备;以及向所述桥接模块发送命令,用于设立桥接以允许数据在所述第一计算设备与所述第二计算设备之间路由。
建立与桥接模块的连接可以是响应于在第一计算设备处接收到的用户输入的。
在第一计算设备和第二计算设备两者外部的桥接设备可以包括桥接模块,所述建立与桥接模块的连接包括建立与桥接设备的连接。
第二计算设备可以包括桥接模块,所述建立与桥接模块的连接包括建立与第二计算设备的连接。
与桥接模块建立的连接可以是无线连接。可以根据对等无线协议来建立无线连接。无线连接可以是Wi-Fi直接连接或蓝牙连接
与桥接模块建立的连接可以是有线连接。
第二计算设备可以是集成到车辆中的车辆头部单元,车辆头部单元包括用于显示所述应用的图形用户界面的显示器。
第一计算设备可以是移动计算设备,移动计算是移动电话、膝上型计算机、平板计算机和无头计算设备中的一个。
根据本发明的另一方面,提供了一种计算机程序产品,用于在第一计算设备与第二计算设备之间建立远程控制会话,以使由第一计算设备的处理器执行的应用的图形用户界面能够在第二计算设备上被远程控制和查看,该计算机程序产品包括代码,代码具体化在非暂态计算机可读介质上并被配置为在第一计算设备的处理器上执行时执行本文所述的方法步骤。
代码可以被设置在诸如磁盘、CD-或DVD-ROM之类的载体上、在诸如只读存储器(固件)之类的编程存储器上、或在诸如光或电信号载体之类的数据载体上。实现本发明的实施例的代码(和/或数据)可以包括诸如C的常规编程语言(解释或编译)的源代码、目标代码或可执行代码、或汇编代码、用于设立或控制ASIC(专用集成电路)或FPGA(现场可编程门阵列)的代码、或用于硬件描述语言的代码。
根据本发明的另一方面,提供了一种计算设备,包括:处理器,被配置为运行用于在所述计算设备与第二计算设备之间建立远程控制会话的应用,以使得能够在所述第二计算设备上远程控制和查看由所述计算设备的所述处理器执行的用户应用的图形用户界面,其中,所述应用被配置为:建立与桥接模块的连接,所述桥接模块在所述计算设备的外部;使用所述连接,执行与所述桥接模块的认证过程;在所述连接上建立到所述桥接模块的安全通信信道;从所述桥接模块接收从所述第二计算设备发送的认证请求;响应于接收到认证请求(i)使用安全通信信道访问存储在桥接模块的安全数据存储部中的投影证书链,(ii)生成包括投影证书链的响应,以及(iii)通过安全通信信道,指示桥接模块使用与桥接模块相关联并存储在安全数据存储部中的私钥来对响应进行密码签名,并作为响应,通过安全通信信道从桥接模块接收签名;以及经由所述桥接模块向所述第二计算设备发送经签名的认证响应以建立远程控制会话,经签名的认证响应包括所述投影证书链和所述签名。
根据本发明的另一方面,提供了一种方法,在第一计算设备与第二计算设备之间建立远程控制会话以使由第一计算设备的处理器执行的应用的图形用户界面能够在第二计算设备上被远程控制和查看,该方法在桥接模块上实现并且包括:建立与第一计算设备的连接,桥接模块在第一计算设备的外部;使用所述连接,执行与所述第一计算设备的认证过程;在所述连接上建立到所述第一计算设备的安全通信信道;向所述第一计算设备发送从所述第二计算设备接收的认证请求;经由所述安全通信信道从所述第一计算设备接收对存储在所述桥接模块的安全数据存储部中的投影证书链的请求,并且作为响应,从所述安全数据存储部中取回所述投影证书链并经由所述安全通信信道向所述第一计算设备发送所述投影证书链;经由所述安全通信信道从所述第一计算设备接收包括所述投影证书链的响应以及对所述响应进行签名的请求;使用与桥接模块相关联并存储在安全数据存储部中的私钥来对响应进行密码签名,以生成用于第一计算设备的签名,并且通过安全通信信道向第一计算设备发送签名;以及向所述第二计算设备发送从所述第一计算设备接收到的经签名的认证响应以建立所述远程控制会话,经签名的认证响应包括所述投影证书链和所述签名。
执行认证过程可以包括:从第一计算设备接收与第一计算设备相关联的经签名的证书链;以及使用存储在所述安全数据存储部中的根证书来证实与所述第一计算设备相关联的所述证书链。
执行认证过程可以包括:从所述安全数据存储部中取回与所述桥接模块相关联的证书链;用与桥接模块关联的私钥对与桥接模块相关联的证书链进行签名;以及向所述第一计算设备发送经签名的证书链以供所述第一计算设备进行证实,所述私钥存储在所述安全数据存储部中。
该方法可以包括建立桥接,以允许数据在第一计算设备与第二计算设备之间路由。
在建立桥梁之后,该方法可以包括:从第二计算设备接收第一格式的数据以用于到第一计算设备的传输,并向第一计算设备中继第二格式的数据;以及从所述第一计算设备接收所述第二格式的数据以用于到所述第二计算设备的传输,并向所述第二计算设备中继所述第一格式的所述数据。
第一格式和第二格式可以相同。
备选地,第一格式和第二格式可以不同,该方法包括在第一格式和第二格式之间执行数据的转换。
该方法还可以包括:向第一计算设备发送请求,以启动图形用户界面向第二计算设备的投影,请求源自第二计算设备;以及作为响应,从所述第一计算设备接收命令以设立所述桥接以允许数据在所述第一计算设备与所述第二计算设备之间路由。
与第一计算设备建立的连接可以是有线或无线连接。
根据本发明的另一方面,提供了一种桥接模块,用于在第一计算设备与第二计算设备之间建立远程控制会话,以使得由第一计算设备的处理器执行的应用的图形用户界面能够在第二计算设备上被远程控制和查看,其中,该桥接模块被配置为:建立与所述第一计算设备的连接,所述桥接模块在所述第一计算设备的外部;使用所述连接,执行与所述第一计算设备的认证过程;在所述连接上建立到所述第一计算设备的安全通信信道;向所述第一计算设备发送从所述第二计算设备接收的认证请求;经由所述安全通信信道从所述第一计算设备接收对存储在所述桥接模块的安全数据存储部中的投影证书链的请求,并且作为响应,从所述安全数据存储部中取回所述投影证书链并经由所述安全通信信道向所述第一计算设备发送所述投影证书链;经由所述安全通信信道从所述第一计算设备接收包括所述投影证书链的响应以及对所述响应进行签名的请求;使用与桥接模块相关联并存储在安全数据存储部中的私钥来对响应进行密码签名,以生成用于第一计算设备的签名,并且通过安全通信信道向第一计算设备发送签名;以及向所述第二计算设备发送从所述第一计算设备接收到的经签名的认证响应以建立所述远程控制会话,经签名的认证响应包括所述投影证书链和所述签名。
桥接模块可以被集成到桥接设备中,桥接设备在第一计算设备和第二计算设备两者的外部。
桥接模块可以被集成到第二计算设备中。
这些和其他方面将从下面描述的实施例中显而易见。本公开的范围意图既不限于该概述,也不限于必须解决所指出的任何或所有缺点的实现。
附图说明
为了更好地理解本公开并示出实施例如何生效,对附图进行参考,在附图中:
图1是已知的车载应用投影技术实现的示意性框图;
图2是根据本发明实施例的车载应用投影技术实现的示意性框图;
图3是根据本发明实施例的车载应用投影技术实现的更详细的示意性框图;
图4示出了密钥供应过程;
图5示出了各种***组件之间的证书和密钥的交换;
图6a示出了投影会话序列的概述;
图6b示出了投影会话序列中的相互认证序列;
图6c示出了投影会话序列中的投影会话建立序列;以及
图6d示出了投影会话序列中的投影认证序列。
具体实施方式
图1示出了已知的车载应用投影技术实现100的示意性框图。
如图1所示,用户应用122(例如,导航应用、通信应用、音乐应用等)在移动计算设备12上的用户空间中运行。
为了将显示在移动计算设备12的显示器上的用户应用122的图形用户界面投影在远程计算设备10的显示器(例如,集成到车辆中的车辆头部单元)上,在移动计算设备12上的***空间(例如,在AndroidTM操作***上)运行的VNC服务器应用124用于捕获显示在移动计算设备的显示器上的图像并通过传输链路(例如,USB电缆)向远程计算设备10发送该图像;因此,由于移动计算设备12正在发送要在远程计算设备10上查看的信息,因此可以将移动计算设备12称为VNC服务器。相应的VNC查看器应用102在远程计算设备10上运行,以接收移动计算设备12的显示器的图像并将该图像输出在远程计算设备10上的显示器上。因此,远程设备可以称为VNC查看器。
如本领域技术人员所公知的,现代计算设备操作***通常将虚拟存储器分离为***空间和用户空间。首先,这种分离用于提供存储器保护和硬件保护,以防止恶意或错误的软件行为。严格保留***空间,以运行特权操作***内核、内核扩展和大多数设备驱动程序。相反,用户空间是应用软件和某些驱动程序执行的存储器区。
远程计算设备意指物理上远离移动计算设备的任何设备。远程计算设备可以位于距移动设备相当大的距离处,或者可以位于移动设备附近(例如,远程计算设备和移动设备两者在车辆内)。
已知的MirrorLink车载应用投影技术依赖于:
·使用USB CDC/NCM(通用串行总线通信设备类网络控制模式)作为传输层128,然而这不被已知操作***(例如AndroidTM)本地支持,因此不容易可用于VNC服务器应用124;
·认证层,强制使用安全存储在智能设备上的安全数据存储部126中的私钥/公钥对和投影设备证书链,该投影设备证书链导致回到存储在计算设备10上的汽车连接联盟(CCC)信任根证书106;以及
·具有***特权的MirrorLink服务器(例如VNC服务器应用124),能够访问安全数据存储部126以取回投影设备证书链,进行符号交换,并且能够将用户应用122的图形用户界面转发到使用***级API的MirrorLink客户端(例如VNC查看器应用102)。
因此以作为移动电话的移动计算设备12为例。为了实施MirrorLink车载应用投影技术,移动电话的供应商必须修改在移动电话上运行的操作***,以添加所需的USB协议并还获得经认证的移动电话,例如经认证的DAP(设备证明协议),以使安全数据存储部126存储投影设备证书链,以便移动电话可以将自己作为经认证的MirrorLink服务器设备呈现给车辆头部单元。
本发明的实施例克服了已知解决方案的硬件限制。
在图2中示出了根据本发明实施例的车载应用投影技术实现200的示意性框图。
图2所示的计算设备10(或者在本文中也称为第二计算设备)与图1所示的计算设备10相同。
在本发明的实施例中,桥接模块114变得负责实现硬件和软件***功能,该硬件和软件***功能通常以***级别内置在移动计算设备12(或者在本文中称为第一计算设备和智能设备)中。
如图2所示,桥接设备14可以包括桥接模块114。在这些实施例中,桥接设备14是独立设备(在计算设备10和移动计算设备12两者外部),该桥接设备14被布置为与计算设备10和移动计算设备12两者通信。
因此,桥接设备14包括与目标查看器的传输要求108相匹配的传输组件146;安全数据存储部(例如,安全元件)144,提供与移动计算设备投影技术(例如MirrorLink)的安全要求相匹配的存储、加密和签名操作;以及安全的P2P通信接口142和API,允许在移动计算设备12上运行的VNC服务器应用124利用桥接设备的传输元件146和安全元件144充当兼容智能设备投影技术的服务器。
桥接设备14连接到计算设备10。桥接设备14可以被配置为使用有线连接来连接到计算设备10。例如,桥接设备14可以采用加密狗的形式,该加密狗将被***计算设备10上的端口(例如,USB端口)中。桥接设备14可以被配置为使用基于USB协议(诸如USB CDC/NCM协议)的以太网与计算设备10进行通信,但是应当理解,可以使用用于计算设备10与桥接设备14之间的传输层的其他协议。在备选实施例中,桥接设备14被配置为使用无线连接来连接到计算设备10。
桥接设备14还连接到移动计算设备12。桥接设备14可以被配置为根据对等无线协议使用无线连接而连接到计算设备10,该对等无线协议可用于用户空间应用,例如Wi-Fi直接连接、通用即插即用连接或蓝牙连接。因此,显而易见的是,桥接设备14可以将无线能力增加给其他有线接收器(计算设备10)。在备选实施例中,桥接设备14被配置为使用有线连接(例如,USB、HDMI、通用即插即用连接等)连接到移动计算设备12。
桥接设备14和VNC服务器应用124通过安全信道(例如安全套接字层(SSL)连接)进行通信。如将在下面更详细解释的,可以通过部署独立于投影技术(用于认证)的受信任的信证书链以及交换至少一个对称加密密钥来建立安全信道,来实现桥接设备14与VNC服务器应用124之间的安全通信。
计算设备10连接到桥接设备14,并且出于所有意图和目的,计算设备10将桥接设备14和用户空间VNC服务器应用124的组合视为常规的智能设备,该智能设备具有对投影技术的内置***级支持(如在图1所示的现有技术的移动计算设备中那样)。
为了将用户应用122的图形用户界面投影到远程计算设备10的显示器(例如具有集成到车辆中的显示器的车辆头部单元)上,在移动计算设备12的用户空间中运行的VNC服务器应用124用于:捕获显示在移动计算设备12的显示器上的图像,并经由桥接设备14通过P2P通信接口127向远程计算设备10发送该图像。
运行在远程计算设备10上的相应的VNC查看器应用102被配置为:接收移动计算设备12的显示器的图像,并将该图像输出在远程计算设备10上的显示器上。
移动计算设备12的“显示器”可以是物理显示器,例如移动电话、PDA、笔记本电脑或平板电脑等的显示器。然而,移动计算设备12的显示器不需要是物理的,即它可以是计算设备12的存储器中的虚拟显示器。也就是说,移动计算设备12可以是无头便携式计算设备(没有物理显示器的计算设备),例如计算棒。在显示器是虚拟显示器的这些备选实施例中,可以使用具有与无头便携式计算设备12进行有线或无线通信的显示器的外部计算设备,以查看正在投影到VNC查看器应用102的用户应用122的图形用户界面。
显然,桥接设备14的目的是双重的:
1.在远程计算设备10和移动计算设备12之间透明地桥接所有相关的远程控制会话数据。也就是说,在其传输层接口146(例如,USB CDC-NCM接口)与其P2P通信接口142之间透明地桥接远程控制会话数据。
术语“远程控制会话数据”包括经由桥接设备14在计算设备10与移动计算设备12之间交换的任何数据,例如,为在计算设备10与移动设备之间建立远程控制会话而交换的消息、在远程控制会话期间所交换的图像数据、在远程控制会话期间所交换的用户输入事件消息(例如,当用户对计算设备10上的投影应用104进行输入操作或对运行在移动计算设备12上的用户应用122进行输入操作时)、以及为终止计算设备10和移动计算设备12之间的远程控制会话所交换的消息。
2.充当安全元件,该安全元件存储证书,VNC服务器应用124将使用该证书来将其自身作为经认证的设备呈现给远程计算设备10,并代表VNC服务器应用124对证明响应(例如,DAP证明响应)进行签名。
在本发明的实施例中对桥接设备14的使用使得任何第三方能够独立于智能设备操作***和优选的投影技术来实现完全符合目标投影技术的任何智能设备投影技术。
在图3中示出车载应用投影技术实现200的更详细的示意框图。
如图3所示,移动计算设备12包括在用户空间中可访问的密钥存储部129,密钥存储部129存储服务器应用证书链121、桥接制造商信任根证书和服务器应用公钥/私钥对125。
如图3所示,桥接设备14上的安全数据存储部(例如,安全元件)144存储桥接设备证书链140、投影设备证书链143、桥接设备公钥/私钥对141和服务器应用信任根证书145。
如图3所示,计算设备10存储投影信任根证书105。
图4示出了根据本发明实施例的密钥供应过程,该过程参考了投影证书权限、桥接设备供应商、桥接设备供应商证书权限、服务器应用供应商和服务器应用供应商证书权限。图4所示的一个或多个步骤可以被实现为桥接设备14、VNC服务器应用124和/或VNC查看器应用102的制造/生产过程的一部分。替代地或附加地,在桥接设备14、VNC服务器应用124和/或VNC查看器应用102已经被制造/生产之后,可以实施图4所示的一个或多个步骤。
应当理解,服务器应用供应商和服务器应用供应商证书权限实际上可以是同一实体。类似地,桥接设备供应商和桥接设备供应商证书权限实际上可以是同一实体。此外,桥接设备供应商和服务器应用供应商实际上可以是同一实体。
如图4所示,在步骤1处,桥接设备供应商证书权限生成制造商公用/专用密钥对(SK桥接/PK桥接),其中SK是秘密(私有)密钥,而PK是公钥。在步骤2处,桥接设备供应商证书权限向投影证书权限发送投影制造商证书(或者在本文中也称为桥接制造商证书)签名请求。在步骤3处,投影证书权限向桥接设备供应商证书权限颁布经签名的投影制造商证书(Cert桥接),该证书制造商证书权限对应于用投影证书权限的私钥SK投影签名的桥接设备供应商的公钥PK桥接。也就是说,投影证书权限验证桥接设备供应商的公钥PK桥接的真实性。
投影制造商证书允许桥接设备供应商充当投影证书权限的子证书权限。因此,当用桥接设备公钥PK设备的CA私钥SK桥接对桥接设备公钥PK设备进行签名时,桥接设备供应商建立两个信任链(或证书链):一个信任链导致桥接制造商信任根证书123(允许VNC服务器应用124信任桥接设备14),并且另一个信任链导致投影信任根证书105(允许VNC查看器应用102经由桥接设备14信任VNC服务器应用124)。
在步骤4处,桥接设备14生成桥接设备公钥/私钥对141(SK设备/PK设备).在步骤5处,桥接设备14向桥接设备供应商证书权限发送具有桥接设备公钥141的桥接设备证书签名请求。在步骤6处,桥接设备供应商证书权限向桥接设备14颁布经签名的桥接设备证书140(Cert设备)(或者在本文中也称为设备证书),经签名的桥接设备证书140对应于用桥接设备供应商的私钥SK桥接签名的桥接设备的公钥PK设备。也就是说,桥接设备供应商证书权限验证桥接设备的公钥PK设备的真实性。同样在步骤6处,桥接设备供应商证书权限向桥接设备14颁布经签名的投影设备证书链143。
投影设备证书链143包括顶部处的投影信任根证书105、投影制造商证书(Cert桥接)和桥接设备证书140(Cert设备)。桥接设备证书链140包括顶部处的桥接设备供应商信任根证书123和桥接设备证书(Cert设备)。
在步骤7处,服务器应用供应商生成服务器应用公钥/私钥对125。在步骤8处,服务器应用供应商向服务器应用供应商证书权限发送具有服务器应用公钥125的服务器应用证书签名请求。在步骤9处,服务器应用供应商证书权限向服务器应用供应商颁布经签名的服务器应用证书链121,该服务器应用证书链121对应于用服务器应用供应商的私钥SK供应商签名的服务器应用的公钥PK服务器。也就是说,服务器应用供应商证书权限验证服务器应用的公钥PK服务器的真实性。经签名的服务器应用证书链121和公钥/私钥对125在创建时作为VNC服务器应用124的一部分提供,或随后由用户从服务器应用供应商下载。
在步骤10处,桥接设备供应商证书权限向服务器应用供应商发布桥接设备供应商信任根证书123(或者在本文中也称为桥接制造商信任根证书)。在步骤11处,服务器应用供应商安装桥接设备供应商信任根证书123,作为VNC服务器应用124的一部分。
在步骤12处,服务器应用供应商证书权限向桥接设备供应商发布服务器应用供应商信任根证书145。在步骤13处,桥接设备供应商在桥接设备14上安装服务器应用供应商信任根证书145。
最后,在步骤14处,投影证书权限向VNC查看器应用102发布投影信任根证书105。
图5还显示了投影证书权限、桥接设备供应商、服务器应用供应商、桥接设备14和VNC服务器应用124之间的证书和公钥的分布。图5中使用的编号与图4中所示的步骤编号相对应。图5示出了投影技术信任链如何可以与桥接设备自己的信任链和VNC服务器应用自己的信任链无缝集成。
现在参考图6a,其示出了投影会话序列的概述。
在步骤1处,用户启动计算设备10上的VNC查看器应用102。这使VNC查看器应用102为桥接设备14供电(步骤2)并连接到桥接设备14(步骤3)。
在步骤4处,用户启动计算设备12的VNC服务器应用124。在步骤5处,VNC服务器应用124根据所选择的P2P层(例如USB枚举、蓝牙、WiFi-P2P等)扫描桥接设备,并且在步骤6处,桥接设备14和VNC服务器应用124在所选择的通信层(USB物理连接、UPnP控制点、WiFi-P2P组形成等)上配对。
然后,投影会话序列进行到安全连接建立阶段602,在该阶段中,在步骤7处,VNC服务器应用124和桥接设备14对VNC服务器应用124和桥接设备14彼此自身进行认证,并且在步骤8处,VNC服务器应用124和桥接设备14在VNC服务器应用124和桥接设备14之间建立安全通信信道(例如,SSL连接)。
本领域技术人员将理解,存在多种方式来实现安全连接建立阶段602。
现在参考图6b,图6b示出了实现安全连接建立阶段602的一种方式。
如图6b的步骤6所示,P2P通信接口127向桥接设备的P2P通信接口142发送用服务器应用私钥125签名的服务器应用证书链121。也就是说,服务器应用证书链121(包括VNC服务器应用的公钥125)被打包在一消息中,并且该消息自身由VNC服务器应用124使用其私钥125进行签名。在接收时,在步骤7处,桥接设备14通过验证消息的签名对应于服务器应用证书链121中的服务器应用的公钥来验证该消息是真实的。如本领域技术人员已知的,签名是由私钥加密的消息的散列。桥接设备14通过计算消息的散列来执行此验证,使用VNC服务器应用的公钥(包括在服务器应用证书链121中)对签名进行解密,并比较两个值——如果它们与签名匹配则视为有效。在步骤7处,通过使用服务器应用供应商信任根证书145证实服务器应用证书链121,桥接设备14进一步验证VNC服务器应用124是它所说的那个应用。如果认证成功,则P2P通信接口142在步骤8处向P2P通信接口127发送认证接受消息,否则在认证失败的情况下,P2P通信接口142与P2P通信接口127断开连接(步骤18)。
以类似的方式,在步骤9处,桥接设备14通过从桥接设备的P2P通信接口142向P2P通信接口127发送其用桥接设备私钥141签名的桥接设备证书链140来进行响应。也就是说,桥接设备证书链140(包括桥接设备的公钥141)被打包在一消息中,并且该消息自身由桥接设备14使用其私钥141进行签名。在接收时,在步骤10处,VNC服务器应用124通过验证消息的签名对应于桥接设备证书链140中的桥接设备的公钥,来验证该消息是真实的。VNC服务器应用124通过计算消息的散列来执行该验证,使用桥接设备的公钥(包括在桥接设备证书链140中)来解密该签名,并且比较两个值——如果它们与签名匹配则视为有效。在步骤10处,通过使用桥接设备供应商信任根证书123证实桥接设备证书链140,VNC服务器应用124进一步验证桥接设备14是它所说的那个设备。假设认证成功,则VNC服务器应用124在步骤11处通过P2P通信接口127向桥接设备的P2P通信接口142发送认证接受消息,否则在认证失败的情况下,P2P通信接口142与P2P通信接口127断开连接(步骤17)。
如图6b所示,在VNC服务器应用124和桥接设备14之间建立安全通信信道。VNC服务器应用124和桥接设备14可以建立SSL连接,这参考图6b中的步骤12-16示出。
在步骤12处,P2P通信接口127生成至少一个对称加密密钥,该对称加密密钥将由VNC服务器应用124和桥接设备14两者用于对在安全通信信道上传输的数据进行加密和解密。P2P通信接口127可以生成一对对称加密密钥,以分别由VNC服务器应用124和桥接设备14两者用于加密和解密,该对密钥可以相同或者可以在两个密钥之间进行简单的变换。
在步骤13处,P2P通信接口127使用桥接设备的公钥(在以上的步骤9处接收到)来加密至少一个对称加密密钥,以生成至少一个经加密的对称加密密钥。
在步骤14处,P2P通信接口127向桥接设备14的P2P通信接口14发送至少一个经加密的对称加密密钥,以便建立SSL连接。P2P通信接口142使用桥接设备私钥141解密至少一个经加密的对称加密密钥。
在步骤15处,P2P通信接口142将用至少一个对称加密密钥加密的确认发送回P2P通信接口127以开始加密会话。在步骤16处,P2P通信接口12通知VNC服务器应用124:安全通信信道已经建立。一旦建立了安全通信信道,VNC服务器应用124和桥接设备14都能够使用至少一个对称加密密钥来加密发送的数据。
现在返回来参考图6a所示的投影会话序列的概述。
在步骤9处,用户向运行在计算设备10上的VNC查看器应用102提供用户输入,以开始将显示在移动计算设备12的显示器上的用户应用122的图形用户界面投影在计算设备10的显示器上。
然后,投影会话序列进行到投影会话建立阶段604,在该阶段,VNC查看器应用102在步骤10处向桥接设备14发送请求以启动投影,并且在步骤11处,桥接设备14在VNC查看器应用102和VNC服务器应用124之间建立通信隧穿(tunnelling)。
也就是说,桥接设备14设立桥接,从而允许投影协议数据流将通过P2P连接从VNC查看器应用102通过桥接设备传输层146和P2P通信接口142路由到VNC服务器应用124。类似地,桥接允许投影协议数据流通过P2P连接从VNC服务器应用124路由到P2P通信接口142,通过桥接设备传输层146到达VNC查看器应用102。
在图6c中更详细地示出了投影会话建立阶段604。如图6c所示,VNC查看器应用102经由桥接设备向VNC服务器应用124发送消息(开始投影消息)(步骤1-4),以指示VNC服务器应用124开始向VNC查看器应用102投影用户应用122。这在图6a中显示在步骤12处。作为响应,VNC服务器应用124向桥接设备的P2P接口142发送消息(步骤5和6),从而指示P2P接口142在桥接设备的传输接口146和P2P接口142之间建立“隧道”,使得从VNC查看器应用102发送的第一格式的远程控制会话数据可以由桥接设备14接收(使用传输接口146)并以第二格式(使用P2P接口142)向VNC服务器应用124发送,并且相反地,使得从VNC服务器应用124发送的第二格式的远程控制会话数据可以由桥接设备接收(使用P2P接口142)并以第一格式向VNC查看器应用102发送(使用传输接口146)。
P2P接口142将自身配置为:在从VNC查看器应用102或VNC服务器应用124接收数据的情况下,执行通信隧穿(以充当桥接);并且向VNC查看器应用102通知通信隧穿的建立(步骤7和8)。
在一些实施例中,由P2P接口142执行的通信隧穿仅是将由桥接设备14(使用传输接口146)接收的远程控制会话数据中继到VNC服务器应用124(使用P2P接口142),并在相反的方向上中继远程控制会话数据。也就是说,以上提到的第一格式和第二格式相同。P2P接口142可以执行对接收到的远程控制会话数据的封装。例如,P2P接口142可以执行IP隧穿以将接收到的IP分组封装为另一IP分组,并且朝向其目的地(VNC查看器应用102或VNC服务器应用124)向前发送封装的IP分组。
在其他实施例中,由P2P接口142执行的通信隧穿包括:P2P接口142在不同数据格式之间执行转换(和逆转换)。换句话说,P2P接口142接收从VNC查看器应用102发送的第一格式的远程控制会话数据,对第一格式的远程控制会话数据执行功能以生成第二格式的远程控制会话数据(从而第二格式不同于第一格式),并且向VNC服务器应用124发送第二格式的远程控制会话数据。类似地,P2P接口142接收从VNC服务器应用124发送的第二格式的远程控制会话数据,对第二格式的远程控制会话数据执行逆功能以生成第一格式的远程控制会话数据,并将第一格式的远程控制会话数据提供给传输接口146以传输到VNC查看器应用102。
以上提到的功能可以包括封装。例如,第一格式可以是USB数据,并且第二格式可以是IP数据。在该示例中,P2P接口142将从VNC查看器应用102接收的USB分组封装为IP分组以传输到VNC服务器应用124,并且类似地将从VNC服务器应用124接收的IP分组封装为USB分组以传输到VNC查看器应用102。因此,在实施例中,当移动计算设备12对于与计算设备10的通信不兼容时(例如,当使用USB CDC/NCM作为传输层不可用于VNC服务器应用124时),桥接设备14使得能够在VNC服务器应用124与VNC查看器应用102之间进行通信。
以上提到的功能可以包括加密(对应的逆功能是解密),例如,第一格式可以是未加密的IP数据,并且第二格式可以是加密的IP数据。将理解的是,本文未描述的其他功能可以由P2P接口142执行。
VNC服务器应用124向VNC查看器应用102宣布自身。这可以响应于由VNC查看器应用102发送并由VNC服务器应用124检测到的搜索消息,如图6c所示(步骤7-8)。
一旦在VNC查看器应用102和VNC服务器应用124之间的通信隧穿是活动的,则投影会话序列然后进行到投影认证阶段606,其中在步骤13处,VNC查看器应用102经由桥接设备14向VNC服务器应用124发送认证请求;以及作为答复,在步骤14处,VNC服务器应用124通过桥接设备14向VNC查看器应用102发送认证响应。
在图6d中更详细地示出了投影认证阶段606。
一旦VNC查看器应用102发现了VNC服务器应用124,则在步骤12处VNC查看器应用102经由桥接设备14向VNC服务器应用124发送认证请求(要求VNC服务器应用124对自身进行验证)。
在本发明中,VNC服务器应用124将无法对计算设备执行的协议特定的操作委托给桥接设备14上的桥接模块114。特别地,VNC服务器应用124利用桥接设备14来执行投影协议认证机制所需的密码操作。
在步骤13处,VNC服务器应用124经由在图6a的步骤8处建立的安全信道(即,使用至少一个对称加密密钥)向桥接设备14发送对存储在安全数据存储部144中的投影设备证书链143的请求。在步骤14至16中,P2P接口142访问安全数据存储部144以取回投影设备证书链143,并且经由安全信道向VNC服务器应用124发送投影设备证书链143。
VNC服务器应用124生成包括投影证书链143的响应,并且在步骤17处通过安全信道指示桥接设备14使用桥接设备私钥141对响应进行密码签名(在图6d中参考,作为智能设备投影设备私钥)。
在步骤18至20处,P2P接口142从安全数据存储部144中取回桥接设备私钥141,并使用桥接设备私钥141对在步骤17处接收到的响应进行密码签名,然后,至少作为经签名的证明响应的签名通过安全信道从P2P接口142向VNC服务器应用124发送。在步骤20处发送的经签名的证明响应可以仅包括使用桥接设备私钥141生成的签名,或者可以包括使用桥接设备私钥141生成的签名和投影设备证书链143。
在步骤21处,VNC服务器应用124经由桥接设备14向VNC查看器应用102发送认证响应,作为对在步骤12处接收到的认证请求的答复。在步骤21处向VNC查看器应用102发送的认证响应包括在步骤20处接收到的签名和投影设备证书链143。VNC查看器应用102使用投影信任根证书105来证实投影设备证书链143。因此,VNC查看器应用102将桥接设备14和用户空间VNC服务器应用124的组合视为具有对投影技术的内置***级支持的常规智能设备。
图6d中还示出了“投影传输连接建立”阶段,该阶段在场景中在图6a中的步骤3之后实施,其中桥接设备被配置为***计算设备10上的USB端口。如本领域技术人员所公知的,当将USB***设备***计算设备上的USB端口时,该计算设备将自动检测和自动配置***设备。投影传输连接建立阶段配置并激活桥接设备14上的USB投影传输功能,以便可以在桥接设备和计算设备10之间的USB接口上交换远程控制会话数据。
再次参考图6a,投影会话序列然后进行到投影阶段608,在该阶段,在步骤15处,VNC查看器应用102向VNC查看器应用102发送以下请求:VNC服务器应用124投影显示在移动计算设备12的显示器上的用户应用122的图形用户界面。在步骤15处,VNC查看器应用102经由桥接设备14向VNC服务器应用124发送请求。
在步骤16处,VNC服务器应用124捕获用户应用122的图形用户界面的图像数据,并且经由桥接设备14向VNC查看器应用102发送所捕获的图像数据,使得VNC查看器应用102在计算设备10的显示器上显示投影的应用104。
如步骤17所示,用户能够使用计算设备10上的输入机制,通过VNC查看器应用102操作投影的应用104,例如通过按下计算设备10上的物理按钮、转动计算设备10上的旋转按钮、或在计算设备10的显示器上进行触摸屏选择(在计算设备10的显示器是触摸敏感的情况下)。在远程控制会话期间,VNC查看器应用102被配置为向VNC服务器应用124发送用户输入事件,并作为响应接收图像数据,该图像数据反映了由用户输入事件引起的用户应用122的图形用户界面的变化。
在投影阶段608期间,独立于移动计算设备12的内置能力,透明地在远程计算设备10与移动计算设备12之间桥接所有相关的远程控制会话数据。根据本发明的实施例,VNC服务器应用124能够在没有***级依赖性的情况下实现投影协议。
如图6a所示,可以通过用户向VNC服务器应用124提供用户输入来终止远程控制会话(步骤18),VNC服务器应用124被配置为:将远程控制会话的终止传送给VNC查看器应用102(步骤19),并终止在投影会话建立阶段604中建立的通信隧穿(步骤22)。
如图6a所示,可以通过用户向VNC查看器应用102提供用户输入来终止远程控制会话(步骤20),VNC查看器应用102被配置为向VNC服务器应用124传送远程控制会话的终止(步骤21),响应于此,VNC服务器应用124被配置为终止在投影会话建立阶段604中建立的通信隧穿(步骤22)。
如图6a所示,VNC服务器应用124被配置为响应于接收到终止(即,关闭)在移动计算设备12上运行的VNC服务器应用124的用户输入来终止与桥接设备14的安全通信信道。
从以上将认识到,桥接设备14的使用允许在以下领域中增强目标智能设备投影技术:
·智能设备电源管理,通过对投影技术透明地扩展了VNC服务器应用124可用的可用传输信道的数量(即,将低能量蓝牙(Bluetooth Low Energy)用于低带宽流量并将Wi-Fi用于高带宽流量)。
·隐私,通过限制VNC服务器应用124自身内的数据处理,而无需与专有***组件进行交互。
·篡改,通过在单独的独立模块内将协议特定的安全元件隔离在智能设备上的用户空间外部。
·安全性,通过允许独立于原始投影技术的加密能力而完全加密整个无线通信。
在不改变对原始投影技术的一致性的情况下实现了上述所有优点。
尽管本文已经讨论了MirrorLink车载应用投影技术,但这只是车载应用投影技术的一个示例,并且VNC服务器应用124可以配置为根据任何已知的车载应用投影技术(例如如Android Auto Projection、CarPlay、Miracast等)进行操作。也就是说,服务器应用124和查看器应用102不必根据VNC协议进行操作,这仅是示例。因此,可以将VNC服务器应用124更一般地视为投影服务器应用,并且将VNC查看器应用102更一般地视为投影查看器应用。
尽管以上已经参考包括桥接模块114的独立桥接设备14讨论了实施例,但是在备选实施例中,计算设备10包括桥接模块114。也就是说,桥接模块114被集成到计算设备10中。
尽管已经参考本发明的示例性实施例具体示出和描述了本发明构思,但本领域普通技术人员将理解,在不脱离所附权利要求所限定的本发明的精神和范围的情况下,可以在形式和细节上做出各种改变。
Claims (32)
1.一种在第一计算设备与第二计算设备之间建立远程控制会话以使由所述第一计算设备的处理器执行的应用的图形用户界面能够在所述第二计算设备上被远程控制和查看的方法,所述方法在所述第一计算设备上实现并且包括:
建立与桥接模块的连接,桥接模块在第一计算设备的外部;
使用连接,执行与所述桥接模块的认证过程;
在连接上建立到桥接模块的安全通信信道;
从桥接模块接收从第二计算设备发送的认证请求;
响应于接收到所述认证请求(i)使用所述安全通信信道访问在所述桥接模块的安全数据存储部中存储的投影证书链,(ii)生成包括所述投影证书链的响应,并且(iii)经由所述安全通信信道,指示所述桥接模块使用与所述桥接模块相关联并存储在所述安全数据存储部中的私钥来对所述响应进行密码签名,并作为响应,通过所述安全通信信道从所述桥接模块接收签名;以及
经由桥接模块向第二计算设备发送经签名的认证响应以建立远程控制会话,经签名的认证响应包括投影证书链和签名。
2.根据权利要求1所述的方法,其中,访问所述投影证书链包括:经由所述安全通信信道向所述桥接模块发送对所述投影证书链的请求;以及经由所述安全通信信道从所述桥接模块接收所述投影证书链。
3.根据权利要求1所述的方法,其中,执行所述认证过程包括:
从所述第一计算设备上的存储装置中取回与所述第一计算设备相关联的证书链;
用与所述第一计算设备相关联的私钥对与所述第一计算设备相关联的证书链进行签名;以及
向所述桥接模块发送经签名的证书链,以供所述桥接模块进行证实,所述私钥存储在所述第一计算设备的存储器中。
4.根据权利要求1所述的方法,其中,执行所述认证过程包括:
接收与所述桥接模块相关联的经签名的证书链以及与所述桥接模块相关联的公钥;以及
使用存储在所述第一计算设备上的存储器中的根证书来证实与所述桥接模块相关联的所述证书链。
5.根据权利要求1所述的方法,其中,在所述连接上建立到所述桥接模块的安全通信信道包括:
生成至少一个对称加密密钥;
使用与所述桥接模块相关联的公钥来加密所述至少一个对称加密密钥,以生成至少一个经加密的对称加密密钥;以及
向所述桥接模块发送所述至少一个经加密的对称加密密钥。
6.根据权利要求5所述的方法,其中,所述方法还包括:响应于检测到所述连接的丢失,使所述至少一个对称加密密钥无效。
7.根据权利要求1至6中任一项所述的方法,其中,所述方法还包括:
从所述桥接模块接收请求,用于启动所述图形用户界面向所述第二计算设备的投影,所述请求源自所述第二计算设备;以及
向所述桥接模块发送命令,用于设立桥接以允许数据在所述第一计算设备与所述第二计算设备之间路由。
8.根据权利要求1至6中任一项所述的方法,其中,与所述桥接模块建立所述连接是响应于在所述第一计算设备处接收到的用户输入的。
9.根据权利要求1至6中任一项所述的方法,其中,在所述第一计算设备和所述第二计算设备两者外部的桥接设备包括所述桥接模块,所述建立与所述桥接模块的连接包括建立与所述桥接设备的连接。
10.根据权利要求1至6中任一项所述的方法,其中,所述第二计算设备包括所述桥接模块,所述建立与所述桥接模块的连接包括建立与所述第二计算设备的连接。
11.根据权利要求1至6中任一项所述的方法,其中,与所述桥接模块建立的所述连接是无线连接。
12.根据权利要求11所述的方法,其中,所述无线连接是根据对等无线协议建立的。
13.根据权利要求12所述的方法,其中,所述无线连接是Wi-Fi直接连接或蓝牙连接。
14.根据权利要求1至6中任一项所述的方法,其中,与所述桥接模块建立的所述连接是有线连接。
15.根据权利要求1至6中任一项所述的方法,其中,所述第二计算设备是集成到车辆中的车辆头部单元,所述车辆头部单元包括用于显示所述应用的所述图形用户界面的显示器。
16.根据权利要求1至6中任一项所述的方法,其中,所述第一计算设备是移动计算设备,所述移动计算是移动电话、膝上型计算机、平板计算机和无头计算设备中的一个。
17.一种非暂态计算机可读介质,存储有代码,用于在第一计算设备与第二计算设备之间建立远程控制会话,以使由所述第一计算设备的处理器执行的应用的图形用户界面能够在所述第二计算设备上被远程控制和查看,所述代码在所述第一计算设备的处理器上执行时执行任一前述权利要求的方法。
18.一种计算设备,包括:
处理器,被配置为运行用于在所述计算设备与第二计算设备之间建立远程控制会话的应用,以使得能够在所述第二计算设备上远程控制和查看由所述计算设备的所述处理器执行的用户应用的图形用户界面,其中,所述应用被配置为:
建立与桥接模块的连接,所述桥接模块在所述计算设备的外部;
使用所述连接,执行与所述桥接模块的认证过程;
在所述连接上建立到所述桥接模块的安全通信信道;
从所述桥接模块接收从所述第二计算设备发送的认证请求;
响应于接收到所述认证请求,(i)使用所述安全通信信道访问存储在所述桥接模块的安全数据存储部中的投影证书链,(ii)生成包括所述投影证书链的响应,以及(iii)经由所述安全通信信道,指示所述桥接模块使用与所述桥接模块相关联并存储在所述安全数据存储部中的私钥来对所述响应进行密码签名,并作为响应,通过所述安全通信信道从所述桥接模块接收签名;以及
经由所述桥接模块向所述第二计算设备发送经签名的认证响应以建立远程控制会话,经签名的认证响应包括所述投影证书链和所述签名。
19.一种在第一计算设备与第二计算设备之间建立远程控制会话以使由所述第一计算设备的处理器执行的应用的图形用户界面能够在所述第二计算设备上被远程控制和查看的方法,所述方法在桥接模块上实现并且包括:
建立与所述第一计算设备的连接,所述桥接模块在所述第一计算设备的外部;
使用所述连接,执行与所述第一计算设备的认证过程;
在所述连接上建立到所述第一计算设备的安全通信信道;
向所述第一计算设备发送从所述第二计算设备接收的认证请求;
经由所述安全通信信道从所述第一计算设备接收对存储在所述桥接模块的安全数据存储部中的投影证书链的请求,并且作为响应,从所述安全数据存储部中取回所述投影证书链并经由所述安全通信信道向所述第一计算设备发送所述投影证书链;
经由所述安全通信信道从所述第一计算设备接收包括所述投影证书链的响应以及对所述响应进行签名的请求;
使用与所述桥接模块相关联并存储在所述安全数据存储部中的私钥来对所述响应进行密码签名,以生成用于所述第一计算设备的签名,并且通过所述安全通信信道向所述第一计算设备发送所述签名;以及
向所述第二计算设备发送从所述第一计算设备接收到的经签名的认证响应以建立所述远程控制会话,经签名的认证响应包括所述投影证书链和所述签名。
20.根据权利要求19所述的方法,其中,执行所述认证过程包括:
从所述第一计算设备接收与所述第一计算设备相关联的经签名的证书链;以及
使用存储在所述安全数据存储部中的根证书来证实与所述第一计算设备相关联的所述证书链。
21.根据权利要求19所述的方法,其中,执行所述认证过程包括:
从所述安全数据存储部中取回与所述桥接模块相关联的证书链;
用与所述桥接模块关联的私钥对与所述桥接模块相关联的所述证书链进行签名;以及
向所述第一计算设备发送经签名的证书链以供所述第一计算设备进行证实,所述私钥存储在所述安全数据存储部中。
22.根据权利要求19所述的方法,其中,所述方法包括建立桥接,以允许数据在所述第一计算设备与所述第二计算设备之间路由。
23.根据权利要求22所述的方法,其中,在建立所述桥接之后,所述方法包括:
从所述第二计算设备接收第一格式的数据以用于到所述第一计算设备的传输,并向所述第一计算设备中继第二格式的所述数据;以及
从所述第一计算设备接收所述第二格式的数据以用于到所述第二计算设备的传输,并向所述第二计算设备中继所述第一格式的所述数据。
24.根据权利要求23所述的方法,其中,所述第一格式和所述第二格式相同。
25.根据权利要求23所述的方法,其中,所述第一格式和所述第二格式不同,所述方法包括执行所述数据在所述第一格式和所述第二格式之间的转换。
26.根据权利要求22至25中任一项所述的方法,其中,所述方法还包括:
向所述第一计算设备发送请求以启动所述图形用户界面向所述第二计算设备的投影,所述请求源自所述第二计算设备;以及
作为响应,从所述第一计算设备接收命令以设立所述桥接以允许数据在所述第一计算设备与所述第二计算设备之间路由。
27.根据权利要求19至25中任一项所述的方法,其中,与所述第一计算设备建立的所述连接是无线连接。
28.根据权利要求19至25中任一项所述的方法,其中,与所述第一计算设备建立的所述连接是有线连接。
29.一种非暂态计算机可读介质,存储有代码,用于在第一计算设备与第二计算设备之间建立远程控制会话以使由所述第一计算设备的处理器执行的应用的图形用户界面能够在所述第二计算设备上被远程控制和查看,所述代码在处理器上执行时执行根据权利要求19至28中任一项所述的方法。
30.一种桥接模块,用于在第一计算设备与第二计算设备之间建立远程控制会话,以使得由所述第一计算设备的处理器执行的应用的图形用户界面能够在所述第二计算设备上被远程控制和查看,其中,所述桥接模块被配置为:
建立与所述第一计算设备的连接,所述桥接模块在所述第一计算设备的外部;
使用所述连接,执行与所述第一计算设备的认证过程;
在所述连接上建立到所述第一计算设备的安全通信信道;
向所述第一计算设备发送从所述第二计算设备接收的认证请求;
经由所述安全通信信道从所述第一计算设备接收对存储在所述桥接模块的安全数据存储部中的投影证书链的请求,并且作为响应,从所述安全数据存储部中取回所述投影证书链并经由所述安全通信信道向所述第一计算设备发送所述投影证书链;
经由所述安全通信信道从所述第一计算设备接收包括所述投影证书链的响应以及对所述响应进行签名的请求;
使用与所述桥接模块相关联并存储在所述安全数据存储部中的私钥来对所述响应进行密码签名,以生成用于所述第一计算设备的签名,并且通过所述安全通信信道向所述第一计算设备发送所述签名;以及
向所述第二计算设备发送从所述第一计算设备接收到的经签名的认证响应以建立所述远程控制会话,经签名的认证响应包括所述投影证书链和所述签名。
31.根据权利要求30所述的桥接模块,其中,所述桥接模块被集成到桥接设备中,所述桥接设备在所述第一计算设备和所述第二计算设备两者的外部。
32.根据权利要求30所述的桥接模块,其中,所述桥接模块被集成到所述第二计算设备中。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
GB1712441.3 | 2017-08-02 | ||
GB1712441.3A GB2565282B (en) | 2017-08-02 | 2017-08-02 | Remote control of a computing device |
PCT/GB2018/051335 WO2019025749A1 (en) | 2017-08-02 | 2018-05-17 | REMOTE CONTROL OF A COMPUTER DEVICE |
Publications (2)
Publication Number | Publication Date |
---|---|
CN110998527A CN110998527A (zh) | 2020-04-10 |
CN110998527B true CN110998527B (zh) | 2023-08-25 |
Family
ID=59778860
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201880050588.8A Active CN110998527B (zh) | 2017-08-02 | 2018-05-17 | 对计算设备的远程控制 |
Country Status (7)
Country | Link |
---|---|
US (1) | US11251972B2 (zh) |
EP (1) | EP3662366B1 (zh) |
JP (1) | JP7024980B2 (zh) |
CN (1) | CN110998527B (zh) |
ES (1) | ES2963487T3 (zh) |
GB (1) | GB2565282B (zh) |
WO (1) | WO2019025749A1 (zh) |
Families Citing this family (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11329954B1 (en) * | 2019-07-30 | 2022-05-10 | Berryville Holdings, LLC | Traceless access to remote deployed devices in undisclosed locations |
WO2021040205A1 (ko) * | 2019-08-23 | 2021-03-04 | 삼성전자 주식회사 | 전자 디바이스 및 전자 디바이스가 타겟 디바이스에게 제어 명령을 전달하는 방법 |
RU2767710C2 (ru) * | 2020-08-24 | 2022-03-18 | Акционерное общество "Лаборатория Касперского" | Система и способ обнаружения удаленного управления средством удаленного администрирования с использованием сигнатур |
FR3119906B1 (fr) * | 2021-02-12 | 2024-01-19 | Renault Sas | Procédé de vérification de l’authenticité d’une commande d’un actionneur |
CN113138739B (zh) * | 2021-05-17 | 2023-06-27 | 北京字跳网络技术有限公司 | 一种投屏方法、***、装置、电子设备及存储介质 |
CN113778590B (zh) * | 2021-08-23 | 2024-05-14 | 维沃移动通信有限公司 | 远程协助方法、装置、电子设备及介质 |
Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1885771A (zh) * | 2005-06-23 | 2006-12-27 | 国际商业机器公司 | 用于建立安全通信会话的方法与装置 |
CN101171782A (zh) * | 2005-04-20 | 2008-04-30 | 微软公司 | 对等认证和授权 |
CN102857492A (zh) * | 2011-06-27 | 2013-01-02 | 通用电气公司 | 基于位置感知证书的认证的方法和*** |
CN104094270A (zh) * | 2012-02-08 | 2014-10-08 | 微软公司 | 针对计算设备保护用户证书 |
CN104575142A (zh) * | 2015-01-29 | 2015-04-29 | 上海开放大学 | 体验式数字化多屏无缝跨媒体互动开放教学实验室 |
CN105099694A (zh) * | 2014-05-06 | 2015-11-25 | 苹果公司 | 凭证服务提供商数据在安全元件的安全域中的存储方法和*** |
Family Cites Families (39)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2001134534A (ja) * | 1999-11-08 | 2001-05-18 | Ntt Communications Kk | 認証代行方法、認証代行サービスシステム、認証代行サーバ装置及びクライアント装置 |
US20170169225A1 (en) * | 2007-03-06 | 2017-06-15 | Unisys Corporation | Methods and systems for providing and controlling cryptographic secure communications terminal operable in a plurality of languages |
CN101272295B (zh) * | 2007-03-21 | 2012-01-25 | 联想(北京)有限公司 | 支持多投影源的虚拟网络投影***及方法 |
US20080320566A1 (en) * | 2007-06-25 | 2008-12-25 | Microsoft Corporation | Device provisioning and domain join emulation over non-secured networks |
WO2010095403A1 (ja) * | 2009-02-17 | 2010-08-26 | パナソニック株式会社 | 再生装置、再生方法、プログラム |
JP5499524B2 (ja) * | 2009-06-12 | 2014-05-21 | 富士通株式会社 | 中継プログラムおよび中継装置 |
US8887250B2 (en) * | 2009-12-18 | 2014-11-11 | Microsoft Corporation | Techniques for accessing desktop applications using federated identity |
US9009219B2 (en) * | 2010-01-27 | 2015-04-14 | Vmware, Inc. | Native viewer use for service results from a remote desktop |
US8505083B2 (en) * | 2010-09-30 | 2013-08-06 | Microsoft Corporation | Remote resources single sign on |
US8699709B2 (en) * | 2011-07-08 | 2014-04-15 | Motorola Solutions, Inc. | Methods for obtaining authentication credentials for attaching a wireless device to a foreign 3GPP wireless domain |
US20160342784A1 (en) * | 2011-07-15 | 2016-11-24 | Vmware, Inc. | Mobile device authentication |
US10291721B2 (en) * | 2011-07-15 | 2019-05-14 | Vmware, Inc. | Remote document signing |
US9413538B2 (en) * | 2011-12-12 | 2016-08-09 | Microsoft Technology Licensing, Llc | Cryptographic certification of secure hosted execution environments |
JP5799880B2 (ja) * | 2012-04-04 | 2015-10-28 | 株式会社デンソー | 通信装置、プログラムおよび通信確立方法 |
US9380048B2 (en) * | 2012-10-15 | 2016-06-28 | Saife, Inc. | Certificate authority server protection |
TWI629902B (zh) * | 2012-12-20 | 2018-07-11 | 中強光電股份有限公司 | 具有視訊功能的投影裝置及利用投影裝置進行視訊會談的方法 |
EP2936861B1 (en) * | 2012-12-20 | 2021-07-21 | Airbiquity, Inc. | Efficient headunit communication integration |
US9348555B2 (en) * | 2013-03-15 | 2016-05-24 | Volkswagen Ag | In-vehicle access of mobile device functions |
GB2505268B (en) * | 2013-04-10 | 2017-10-11 | Realvnc Ltd | Methods and apparatus for remote connection |
IN2013MU02698A (zh) * | 2013-08-19 | 2015-06-19 | Deere & Co | |
AU2015214079C1 (en) * | 2014-02-05 | 2017-01-19 | Apple Inc. | Uniform communication protocols for communication between controllers and accessories |
JP6226197B2 (ja) * | 2014-05-23 | 2017-11-08 | パナソニックIpマネジメント株式会社 | 証明書発行システム、クライアント端末、サーバ装置、証明書取得方法、及び証明書発行方法 |
EP3183680B1 (en) * | 2014-08-18 | 2018-03-21 | Csík, Balázs | Methods for digitally signing an electronic file, and authenticating method |
US9491161B2 (en) * | 2014-09-30 | 2016-11-08 | Citrix Systems, Inc. | Systems and methods for performing single sign-on by an intermediary device for a remote desktop session of a client |
US10841316B2 (en) * | 2014-09-30 | 2020-11-17 | Citrix Systems, Inc. | Dynamic access control to network resources using federated full domain logon |
US10021088B2 (en) * | 2014-09-30 | 2018-07-10 | Citrix Systems, Inc. | Fast smart card logon |
US9755976B2 (en) * | 2014-12-10 | 2017-09-05 | GM Global Technology Operations LLC | Method and apparatus for remote vehicle screen operation |
US9525672B2 (en) * | 2014-12-19 | 2016-12-20 | Amazon Technologies, Inc. | Multi-faceted compute instance identity |
KR101929048B1 (ko) * | 2015-06-24 | 2018-12-13 | 한국전자통신연구원 | 인메모리 기반 가상 데스크탑 서비스를 위한 장치 및 방법 |
US10075532B2 (en) * | 2016-01-12 | 2018-09-11 | Jens Schmidt | Method and system for controlling remote session on computer systems |
US10757079B2 (en) * | 2016-01-12 | 2020-08-25 | Jens Schmidt | Method and system for controlling remote session on computer systems using a virtual channel |
MA45323A (fr) * | 2016-03-18 | 2019-01-23 | Forticode Ltd | Procédé et système d'authentification d'utilisateur à sécurité améliorée |
US10469268B2 (en) * | 2016-05-06 | 2019-11-05 | Pacific Star Communications, Inc. | Unified encryption configuration management and setup system |
US10523632B2 (en) * | 2016-09-19 | 2019-12-31 | Verisign, Inc. | GTLD domain name registries RDAP architecture |
US10285051B2 (en) * | 2016-09-20 | 2019-05-07 | 2236008 Ontario Inc. | In-vehicle networking |
US10523445B2 (en) * | 2016-11-28 | 2019-12-31 | Ssh Communications Security Oyj | Accessing hosts in a hybrid computer network |
US10505917B2 (en) * | 2017-06-05 | 2019-12-10 | Amazon Technologies, Inc. | Secure device-to-device process for granting access to a physical space |
US11321465B2 (en) * | 2019-04-04 | 2022-05-03 | Cisco Technology, Inc. | Network security by integrating mutual attestation |
US11379571B2 (en) * | 2019-07-12 | 2022-07-05 | Hewlett Packard Enterprise Development Lp | Presence terminal-based side channel communications |
-
2017
- 2017-08-02 GB GB1712441.3A patent/GB2565282B/en active Active
-
2018
- 2018-05-17 WO PCT/GB2018/051335 patent/WO2019025749A1/en unknown
- 2018-05-17 US US16/635,632 patent/US11251972B2/en active Active
- 2018-05-17 EP EP18727386.7A patent/EP3662366B1/en active Active
- 2018-05-17 JP JP2020528520A patent/JP7024980B2/ja active Active
- 2018-05-17 ES ES18727386T patent/ES2963487T3/es active Active
- 2018-05-17 CN CN201880050588.8A patent/CN110998527B/zh active Active
Patent Citations (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101171782A (zh) * | 2005-04-20 | 2008-04-30 | 微软公司 | 对等认证和授权 |
CN1885771A (zh) * | 2005-06-23 | 2006-12-27 | 国际商业机器公司 | 用于建立安全通信会话的方法与装置 |
CN102857492A (zh) * | 2011-06-27 | 2013-01-02 | 通用电气公司 | 基于位置感知证书的认证的方法和*** |
CN104094270A (zh) * | 2012-02-08 | 2014-10-08 | 微软公司 | 针对计算设备保护用户证书 |
CN105099694A (zh) * | 2014-05-06 | 2015-11-25 | 苹果公司 | 凭证服务提供商数据在安全元件的安全域中的存储方法和*** |
CN104575142A (zh) * | 2015-01-29 | 2015-04-29 | 上海开放大学 | 体验式数字化多屏无缝跨媒体互动开放教学实验室 |
Non-Patent Citations (1)
Title |
---|
Youming Lin.Performance evaluation of remote display access for mobile cloud computing.Computer Communications.2015,第72卷全文. * |
Also Published As
Publication number | Publication date |
---|---|
GB2565282A (en) | 2019-02-13 |
EP3662366B1 (en) | 2023-08-23 |
US11251972B2 (en) | 2022-02-15 |
GB201712441D0 (en) | 2017-09-13 |
JP2020530733A (ja) | 2020-10-22 |
GB2565282B (en) | 2021-12-22 |
EP3662366A1 (en) | 2020-06-10 |
WO2019025749A1 (en) | 2019-02-07 |
JP7024980B2 (ja) | 2022-02-24 |
US20210126795A1 (en) | 2021-04-29 |
ES2963487T3 (es) | 2024-03-27 |
CN110998527A (zh) | 2020-04-10 |
EP3662366C0 (en) | 2023-08-23 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110998527B (zh) | 对计算设备的远程控制 | |
WO2019120091A1 (zh) | 身份认证方法、***及计算设备 | |
CN106663162B (zh) | 安全地将计算设备配对 | |
US11736304B2 (en) | Secure authentication of remote equipment | |
US10601590B1 (en) | Secure secrets in hardware security module for use by protected function in trusted execution environment | |
US10075439B1 (en) | Programmable format for securely configuring remote devices | |
WO2022140903A1 (zh) | 一种ota升级方法及装置 | |
RU2685975C2 (ru) | Обеспечение безопасности связи с расширенными мультимедийными платформами | |
US20220191693A1 (en) | Remote management of hardware security modules | |
KR102643372B1 (ko) | 장치를 탐색하는 전자 장치 및 그 방법 | |
CN112994873B (zh) | 一种证书申请方法及设备 | |
CN110213039B (zh) | 一种管理方法、终端和服务器 | |
WO2019120231A1 (zh) | 确定tpm可信状态的方法、装置及存储介质 | |
KR20200084388A (ko) | Intel SGX를 사용한 투명하고 안전한 IoT 게이트웨이 연결법 | |
WO2023073198A1 (en) | Method to store data persistently by a software payload | |
CN109684852B (zh) | 一种数据交换的导引装置及方法 | |
KR20210071815A (ko) | 전자 디바이스 및 전자 디바이스가 디지털 키들을 관리하는 방법 | |
KR102049262B1 (ko) | 보안기능을 가진 확장 텔레매틱스 시스템 | |
CN113316916A (zh) | 数字密钥共享***中更新防盗令牌的设备及方法 | |
US20220377550A1 (en) | Secure and trusted peer-to-peer offline communication systems and methods | |
Bourdoucen | Securing Communication Channels in IoT using an Android Smart Phone | |
EP4175219A1 (en) | Method to establish a secure channel | |
CN115242395A (zh) | 数据通信方法、装置、分布式***及存储介质 | |
CN116961973A (zh) | 数据传输方法、装置、电子设备及计算机可读存储介质 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |