一种双主机事件共享转接装置和方法转让专利

申请号 : CN202110547514.9

文献号 : CN113190489B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 彭金辉马征宇韩金池马盼盼王凯霖

申请人 : 郑州信大捷安信息技术股份有限公司

摘要 :

本发明提出一种双主机事件共享转接装置和方法,所述双主机事件共享转接装置包括:第一主机,用于将自身的键盘鼠标事件通过USB接口发送至转接器的第一芯片;转接器,用于通过第一芯片接收所述键盘鼠标事件,并通过SPI接口发送至第二芯片;还用于通过第二芯片接收键盘鼠标事件,并通过USB接口发送至第二主机;第二主机,用于通过USB接口接收键盘鼠标事件;本发明通过转接器中的第一芯片和第二芯片能够将第一主机的键盘鼠标事件共享给第二主机,并保证整个双主机事件共享转接装置的键盘鼠标事件共享过程的绝对安全。

权利要求 :

1.一种双主机事件共享转接装置,其特征在于,所述共享转接装置包括:第一主机、转接器和第二主机,所述转接器包括第一芯片和第二芯片;所述转接器分别与所述第一主机、所述第二主机通过设置的USB接口进行通信连接,所述第一芯片和所述第二芯片之间通过SPI接口进行通信连接;

所述第一主机,用于将自身的键盘鼠标事件通过USB接口发送至所述转接器的第一芯片;

所述转接器,用于通过所述第一芯片接收所述键盘鼠标事件,并通过SPI接口发送至所述第二芯片;还用于通过所述第二芯片接收所述键盘鼠标事件,并通过所述USB接口发送至所述第二主机;

所述第二主机,用于通过USB接口接收所述键盘鼠标事件;

所述转接器的第一芯片还用于接收所述第一主机发送的PIN口令,与第一芯片自身的PIN码进行比对,以对第一主机的身份进行认证;若比对结果一致,所述第一芯片则生成一组密钥对,并将该密钥对的公钥发送至所述第一主机;

所述转接器的第一芯片还用于生成随机数A,并采用所述密钥对的私钥对所述随机数A进行加密并传输至所述第一主机;所述第一主机还用于在接收到随机数A的密文后,采用所述密钥对的公钥进行解密获得随机数A;所述第一芯片和所述第一主机分别采用预设算法对所述随机数A进行计算获得第一事件共享密钥;

所述第一芯片还用于在获得所述第一事件共享密钥后,生成第一密钥协商参数,采用预置的第一SM2公私钥对的私钥加密处理后传输至所述第二芯片;

所述第二芯片还用于在接收到第一密钥协商参数密文后,通过预置的第一SM2公私钥对的公钥解密后获得第一密钥协商参数,以及用于生成第二密钥协商参数,并采用预置的第二SM2公私钥对的私钥加密处理后传输至所述第一芯片;

所述第一芯片还用于在接收到第二密钥协商参数密文后,通过预置的第二SM2公私钥对的公钥解密后获得第二密钥协商参数,所述第一芯片和所述第二芯片分别基于第一密钥协商参数和第二密钥协商参数获得第二事件共享密钥;

所述第一主机用于通过第一事件共享密钥将自身的键盘鼠标事件加密处理后发送至所述转接器的第一芯片,所述第一芯片用于采用第一事件共享密钥进行解密,获得所述键盘鼠标事件,并采用所述第二事件共享密钥加密处理后传输至所述第二芯片,所述第二芯片用于通过所述第二事件共享密钥解密处理后转发至所述第二主机。

2.根据权利要求1所述的共享转接装置,其特征在于,所述第一主机包括设备枚举模块I、事件抓取模块、上位机模块和事件发送模块I;所述第一芯片包括设备模拟模块I;

所述第一主机,用于将自身的键盘鼠标事件通过USB接口发送至所述转接器的第一芯片,具体包括:

所述第一芯片通过所述设备模拟模块I模拟符合USB HID标准协议的设备;

所述第一主机通过所述设备枚举模块I枚举到所述符合USB HID标准协议的设备后,与所述第一芯片建立通信连接;

所述第一主机通过所述事件抓取模块抓取所述第一主机上的键盘鼠标事件并发送至上位机模块;

所述上位机模块将所述键盘鼠标事件通过所述事件发送模块I发送至所述转接器的第一芯片。

3.根据权利要求1所述的共享转接装置,其特征在于,所述第一芯片包括数据接收模块和SPI发送模块;所述第二芯片包括SPI接收模块、设备模拟模块II和事件发送模块II;所述第二主机包括设备枚举模块II;

所述转接器,用于通过所述第一芯片接收所述键盘鼠标事件,并通过SPI接口发送至所述第二芯片,还通过所述第二芯片接收所述键盘鼠标事件,并通过所述USB接口发送至所述第二主机,具体包括:

所述转接器通过所述第一芯片的数据接收模块接收所述事件发送模块I发送的键盘鼠标事件,并转发至所述SPI发送模块;

所述转接器还通过所述第一芯片的SPI发送模块将所述键盘鼠标事件发送至所述第二芯片;

所述转接器还通过所述第二芯片的设备模拟模块II模拟USB复合设备,所述USB复合设备包括符合USB HID标准协议的键盘和鼠标设备;

所述第二主机通过所述设备枚举模块II枚举到所述USB复合设备后,与所述第二芯片建立通信连接;

所述转接器还通过所述第二芯片的SPI接收模块接收所述SPI发送模块发送的键盘鼠标事件;

所述转接器还通过所述第二芯片的事件发送模块将所述键盘鼠标事件发送至所述第二主机。

4.根据权利要求1所述的共享转接装置,其特征在于,所述第一芯片为SPI主模式,所述第二芯片为SPI从模式,所述第一芯片和所述第二芯片之间采用六线SPI传输协议进行事件传输,所述六线SPI传输协议对应的连接线包括SCK时钟线、MOSI主发从收线、MISO主收从发线、CS片选线和状态线1、状态线2;

所述第一芯片通过状态线1获取所述第二芯片的状态,若所述第二芯片为空闲状态,所述第一芯片则拉低状态线2并向所述第二芯片发送所述键盘鼠标事件,并在发送完成后拉高状态线2以通知所述第二芯片发送完成;

所述第二芯片配置EDMA增强型直接存储器后,将状态线1切换为空闲状态;实时检测状态线2是否处于上升沿,当检测到状态线2为上升沿时,从EDMA增强型直接存储器配置的接收缓冲区中读取所述第一芯片发送的键盘鼠标事件。

5.根据权利要求1所述的共享转接装置,其特征在于,所述转接器的第一芯片还用于在第一主机的鼠标键盘切换至控制第二主机的过程中,获取鼠标键盘的监管权限,基于鼠标键盘的监管权限监听针对所述第二主机的输入内容,以及暂停第一主机的鼠标键盘监管权限,使得第一主机无法感知针对所述第二主机的输入内容,以及在第一主机的鼠标键盘切换至控制第一主机后,恢复第一主机的鼠标键盘监管权限。

6.一种双主机事件共享转接方法,其特征在于,所述共享转接方法包括:步骤S1,第一主机将自身的键盘鼠标事件通过USB接口发送至转接器的第一芯片;

步骤S2,所述转接器通过所述第一芯片接收所述键盘鼠标事件,并通过SPI接口发送至第二芯片;所述第二芯片接收所述键盘鼠标事件,并通过所述USB接口发送至第二主机;

步骤S3,所述第二主机通过USB接口接收所述键盘鼠标事件;

所述共享转接方法还包括:

所述转接器的第一芯片接收所述第一主机发送的PIN口令,与第一芯片自身的PIN码进行比对,以对第一主机的身份进行认证;若比对结果一致,所述第一芯片则生成一组密钥对,并将该密钥对的公钥发送至所述第一主机;

所述转接器的第一芯片生成随机数A,并采用所述密钥对的私钥对所述随机数A进行加密并传输至所述第一主机;所述第一主机还用于在接收到随机数A的密文后,采用所述密钥对的公钥进行解密获得随机数A;所述第一芯片和所述第一主机分别采用预设算法对所述随机数A进行计算获得第一事件共享密钥;

所述第一芯片在获得所述第一事件共享密钥后,生成第一密钥协商参数,采用预置的第一SM2公私钥对的私钥加密处理后传输至所述第二芯片;

所述第二芯片在接收到第一密钥协商参数密文后,通过预置的第一SM2公私钥对的公钥解密后获得第一密钥协商参数,以及用于生成第二密钥协商参数,并采用预置的第二SM2公私钥对的私钥加密处理后传输至所述第一芯片;

所述第一芯片在接收到第二密钥协商参数密文后,通过预置的第二SM2公私钥对的公钥解密后获得第二密钥协商参数,所述第一芯片和所述第二芯片分别基于第一密钥协商参数和第二密钥协商参数获得第二事件共享密钥;

所述第一主机通过第一事件共享密钥将自身的键盘鼠标事件加密处理后发送至所述转接器的第一芯片,所述第一芯片用于采用第一事件共享密钥进行解密,获得所述键盘鼠标事件,并采用所述第二事件共享密钥加密处理后传输至所述第二芯片,所述第二芯片用于通过所述第二事件共享密钥解密处理后转发至所述第二主机。

7.根据权利要求6所述的共享转接方法,其特征在于,所述步骤S1具体包括:第一芯片通过修改配置描述符、HID描述符和报告描述符后使得所述第一芯片为符合USB HID标准协议的设备;同时将所述第一芯片的中断类型端点1设置为输入输出端点;

所述第一主机在枚举到符合USB HID标准协议的设备后,与所述第一芯片建立通信连接;

所述第一主机通过设置的事件抓取模块抓取所述第一主机上的键盘鼠标事件,并发送至所述第一主机设置的上位机模块;

所述上位机模块将所述键盘鼠标事件通过USB接口发送至所述转接器的第一芯片。

8.根据权利要求6所述的共享转接方法,其特征在于,所述步骤S2具体包括:所述第二芯片通过修改配置描述符、增加鼠标及键盘接口描述符和鼠标及键盘报告描述符后使得所述第二芯片为USB复合设备,所述USB复合设备包括符合USB HID标准协议的键盘和鼠标设备;同时将所述第二芯片的中断类型端点1设置为键盘输出端点、将中断类型端点2设置为鼠标输出端点;

所述第二主机在枚举到所述USB复合设备后,与所述第二芯片建立通信连接;

所述第一芯片通过USB接口接收上位机模块发送的键盘鼠标事件后,再通过SPI接口将所述键盘鼠标事件发送至所述第二芯片;

所述第二芯片通过SPI接口接收到所述键盘鼠标事件,再通过USB接口发送至所述第二主机。

9.根据权利要求6所述的共享转接方法,其特征在于,所述第一芯片设置为SPI主模式,所述第二芯片设置为SPI从模式,所述第一芯片和所述第二芯片之间采用六线SPI传输协议进行事件传输,所述六线SPI传输协议对应的连接线包括SCK时钟线、MOSI主发从收线、MISO主收从发线、CS片选线和状态线1、状态线2;

所述第一芯片通过状态线1获取所述第二芯片的状态,若所述第二芯片为空闲状态,所述第一芯片则拉低状态线2并通过MOSI主发从收线向所述第二芯片发送所述键盘鼠标事件,并在发送完成后拉高状态线2以通知所述第二芯片发送完成;

所述第二芯片配置EDMA增强型直接存储器后,所述第二芯片将状态线1切换为空闲状态;实时检测状态线2是否处于上升沿,当检测到状态线2为上升沿时,从EDMA配置的接收缓冲区中读取第一芯片发送的所述键盘鼠标事件。

说明书 :

一种双主机事件共享转接装置和方法

技术领域

[0001] 本发明涉及计算机控制技术领域,具体涉及一种双主机事件共享转接装置和方法。

背景技术

[0002] 随着双主机协同办公的需求增加,通常面临在一台办公电脑上连接键盘鼠标,另一台电脑上没有鼠标键盘的问题。通常采用的方法是在两台电脑主机上均安装有相同的一
款协同软件,保证两台电脑在同一个局域网下,将一台电脑设置为客户端,另一台电脑设置
为服务端,成功运行之后服务端的鼠标键盘可以控制客户端;但是这种方法需要在两台主
机上均安装有相应软件,并且进行相应交互配置,响应速度慢。
[0003] 因此如何设计一种双主机事件共享转接装置和方法,不需要在两台主机上安装相应协同软件,就能够实现键盘鼠标的共享且不受限于同一局域网,响应速度快是目前急需
解决的问题。

发明内容

[0004] 本发明针对上述问题,有必要提供一种双主机事件共享转接装置和方法,不需要在两台主机上安装相应协同软件,就能够实现键盘鼠标的共享且不受限于同一局域网,响
应速度快。
[0005] 本发明第一方面提出一种双主机事件共享转接装置,所述共享转接装置包括:第一主机、转接器和第二主机,所述转接器包括第一芯片和第二芯片;所述转接器分别与所述
第一主机、所述第二主机通过设置的USB接口进行通信连接,所述第一芯片和所述第二芯片
之间通过SPI接口进行通信连接;
[0006] 所述第一主机,用于将自身的键盘鼠标事件通过USB接口发送至所述转接器的第一芯片;
[0007] 所述转接器,用于通过所述第一芯片接收所述键盘鼠标事件,并通过SPI接口发送至所述第二芯片;还用于通过所述第二芯片接收所述键盘鼠标事件,并通过所述USB接口发
送至所述第二主机;
[0008] 所述第二主机,用于通过USB接口接收所述键盘鼠标事件。
[0009] 进一步的,所述第一芯片为SPI主模式,所述第二芯片为SPI从模式,所述第一芯片和所述第二芯片之间采用六线SPI传输协议进行事件传输,所述六线SPI传输协议对应的连
接线包括SCK时钟线、MOSI主发从收线、MISO主收从发线、CS片选线和状态线1、状态线2;
[0010] 所述第一芯片通过状态线1获取所述第二芯片的状态,若所述第二芯片为空闲状态,所述第一芯片则拉低状态线2并向所述第二芯片发送所述键盘鼠标事件,并在发送完成
后拉高状态线2以通知所述第二芯片发送完成;
[0011] 所述第二芯片配置EDMA增强型直接存储器后,将状态线1切换为空闲状态;实时检测状态线2是否处于上升沿,当检测到状态线2为上升沿时,从EDMA增强型直接存储器配置
的接收缓冲区中读取所述第一芯片发送的所述键盘鼠标事件。
[0012] 进一步的,所述转接器的第一芯片还用于在第一主机的鼠标键盘切换至控制第二主机的过程中,获取鼠标键盘的监管权限,基于鼠标键盘的监管权限监听针对所述第二主
机的输入内容,以及暂停第一主机的鼠标键盘监管权限,使得第一主机无法感知针对所述
第二主机的输入内容,以及在第一主机的鼠标键盘切换至控制第一主机后,恢复第一主机
的鼠标键盘监管权限。
[0013] 进一步的,所述转接器的第一芯片还用于接收所述第一主机发送的PIN口令,与第一芯片自身的PIN码进行比对,以对第一主机的身份进行认证;若比对结果一致,所述第一
芯片则生成一组密钥对,并将该密钥对的公钥发送至所述第一主机;
[0014] 所述转接器的第一芯片还用于生成随机数A,并采用所述密钥对的私钥对所述随机数A进行加密并传输至所述第一主机;所述第一主机还用于在接收到随机数A的密文后,
采用所述密钥对的公钥进行解密获得随机数A;所述第一芯片和所述第一主机分别采用预
设算法对所述随机数A进行计算获得第一事件共享密钥;
[0015] 所述第一芯片还用于在获得所述第一事件共享密钥后,生成第一密钥协商参数,采用预置的第一SM2公私钥对的私钥加密处理后传输至所述第二芯片;
[0016] 所述第二芯片还用于在接收到第一密钥协商参数密文后,通过预置的第一SM2公私钥对的公钥解密后获得第一密钥协商参数,以及用于生成第二密钥协商参数,并采用预
置的第二SM2公私钥对的私钥加密处理后传输至所述第一芯片;
[0017] 所述第一芯片还用于在接收到第二密钥协商参数密文后,通过预置的第二SM2公私钥对的公钥解密后获得第二密钥协商参数,所述第一芯片和所述第二芯片分别基于第一
密钥协商参数和第二密钥协商参数获得第二事件共享密钥;
[0018] 所述第一主机用于通过第一事件共享密钥将自身的键盘鼠标事件加密处理后发送至所述转接器的第一芯片,所述第一芯片用于采用第一事件共享密钥进行解密,获得所
述键盘鼠标事件,并采用所述第二事件共享密钥加密处理后传输至所述第二芯片,所述第
二芯片用于通过所述第二事件共享密钥解密处理后转发至所述第二主机。
[0019] 本发明第二方面还提出一种双主机事件共享转接方法,所述共享转接方法包括:
[0020] 步骤S1,第一主机将自身的键盘鼠标事件通过USB接口发送至转接器的第一芯片;
[0021] 步骤S2,所述转接器通过所述第一芯片接收所述键盘鼠标事件,并通过SPI接口发送至所述第二芯片;所述第二芯片接收所述键盘鼠标事件,并通过所述USB接口发送至第二
主机;
[0022] 步骤S3,所述第二主机通过USB接口接收所述键盘鼠标事件。
[0023] 进一步的,所述第一芯片设置为SPI主模式,所述第二芯片设置为SPI从模式,所述第一芯片和所述第二芯片之间采用六线SPI传输协议进行事件传输,所述六线SPI传输包括
SCK时钟线、MOSI主发从收线、MISO主收从发线、CS片选线和状态线1、状态线2;
[0024] 所述第一芯片通过状态线1获取所述第二芯片状态,若为空闲状态,则拉低状态线2向所述第二芯片发送所述键盘鼠标事件,并在发送完成后拉高状态线2通知所述第二芯片
发送完成;
[0025] 所述第二芯片配置EDMA增强型直接存储器后,将状态线1切换为空闲状态,当检测到状态线2为上升沿时,从EDMA配置的接收缓冲区中读取所述第一芯片发送的所述键盘鼠
标事件。
[0026] 进一步的,所述转接器的第一芯片在第一主机的鼠标键盘切换至控制第二主机的过程中,获取鼠标键盘的监管权限,基于鼠标键盘的监管权限监听针对所述第二主机的输
入内容,以及暂停第一主机的鼠标键盘监管权限,使得第一主机无法感知针对所述第二主
机的输入内容,以及在第一主机的鼠标键盘切换至控制第一主机后,恢复第一主机的鼠标
键盘监管权限。
[0027] 进一步的,所述第一芯片还接收所述第一主机发送的PIN口令,与第一芯片自身的PIN码进行比对,以对第一主机的身份进行认证;若比对结果一致,所述第一芯片则生成一
组密钥对,并将该密钥对的公钥发送至所述第一主机;
[0028] 所述转接器的第一芯片还生成随机数A,并采用所述密钥对的私钥对所述随机数A进行加密并传输至所述第一主机;所述第一主机还在接收到随机数A的密文后,采用所述密
钥对的公钥进行解密获得随机数A;所述第一芯片和所述第一主机分别采用预设算法对所
述随机数A进行计算获得第一事件共享密钥;
[0029] 所述第一芯片获得所述第一事件共享密钥后,还生成第一密钥协商参数,采用第一芯片预置的第一SM2公私钥对的私钥加密处理后获得第一密钥协商参数密文,并传输至
所述第二芯片;
[0030] 所述第二芯片在接收到所述第一密钥协商参数密文后,还通过预置的第一SM2公私钥对的公钥解密后获得第一密钥协商参数,所述第二芯片还生成第二密钥协商参数,并
采用第二芯片预置的第二SM2公私钥对的私钥加密处理后获得第二密钥协商参数密文,并
传输至所述第一芯片;
[0031] 所述第一芯片在接收到第二密钥协商参数密文后,通过预置的第二SM2公私钥对的公钥解密后获得第二密钥协商参数,所述第一芯片和所述第二芯片分别基于第一密钥协
商参数和第二密钥协商参数获得第二事件共享密钥;
[0032] 所述第一主机用于通过第一事件共享密钥将自身的键盘鼠标事件加密处理后发送至所述转接器的第一芯片,所述第一芯片用于采用第一事件共享密钥进行解密,获得所
述键盘鼠标事件,并采用所述第二事件共享密钥加密处理后传输至所述第二芯片,所述第
二芯片用于通过所述第二事件共享密钥解密处理后转发至所述第二主机。
[0033] 本发明具有突出的实质性特点和显著的进步,具体的说:本发明通过转接器设置的第一芯片将第一主机的键盘鼠标事件传输至第二芯片,再通过第二芯片将键盘鼠标事件
传输至第二主机,实现第一主机和第二主机键盘鼠标的共享,避免了在双主机上均安装协
同软件且受限于同一局域网的问题。
[0034] 本发明的附加方面和优点将在下面的描述部分中变得明显,或通过本发明的实践了解到。

附图说明

[0035] 本发明的上述和/或附加的方面和优点从结合下面附图对实施例的描述中将变得明显和容易理解,其中:
[0036] 图1示出本发明一种双主机事件共享转接装置示意图;
[0037] 图2示出本发明一种双主机事件共享转接方法流程图;
[0038] 图3示出本发明的一种实施例的转接器的结构示意图;
[0039] 图4示出本发明的另一种实施例的转接器的结构示意图。

具体实施方式

[0040] 下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于
本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他
实施例,都属于本发明保护的范围。
[0041] 需要说明的是,当一个组件被认为是“连接”另一个组件,它可以是直接连接到另一个组件或者可能同时存在居中组件。
[0042] 除非另有定义,本文所使用的所有的技术和科学术语与属于本发明的技术领域的技术人员通常理解的含义相同。本文中在本发明的说明书中所使用的术语只是为了描述具
体的实施例的目的,不是旨在于限制本发明。
[0043] 实施例1
[0044] 如图1所示,本发明第一方面提出一种双主机事件共享转接装置,所述共享转接装置包括:第一主机、转接器和第二主机,所述转接器包括第一芯片和第二芯片;所述转接器
分别与所述第一主机、所述第二主机通过设置的USB接口进行通信连接,所述第一芯片和所
述第二芯片之间通过SPI接口进行通信连接;
[0045] 所述第一主机,用于将自身的键盘鼠标事件通过USB接口发送至所述转接器的第一芯片;
[0046] 所述转接器,用于通过所述第一芯片接收所述键盘鼠标事件,并通过SPI接口发送至所述第二芯片;还用于通过所述第二芯片接收所述键盘鼠标事件,并通过所述USB接口发
送至所述第二主机;
[0047] 所述第二主机,用于通过USB接口接收所述键盘鼠标事件。
[0048] 需要说明的是,对于警务、政务人员来说,一方面要面临出差及日常办公,需要对其配备安全性能较高且只能接入内网的办公笔记本电脑;另一方面要兼顾其日常生活需
要,还需要配备一台用于生活娱乐的笔记本电脑,该笔记本电脑只能接入互联网。可以看
出,这种情况不但存在使用过程中内外网混用的风险,还会给警务、政务人员带来工作生活
的不便,增加成本。
[0049] 基于此种需求,本申请提出一种双主机事件共享转接装置,能够将本地笔记本电脑的键盘鼠标事件共享到便携式安全终端(第二主机)的内部操作系统;那么,为警务、政务
人员配备一台普通笔记本电脑(第一主机),并同时为警务、政务人员配备一个便携式安全
终端(第二主机)即可,当需要访问互联网时,直接用该普通笔记本电脑连接互联网,当需要
办公时,通过转接器将便携式安全终端插入该普通笔记本电脑的USB口,启动便携式安全终
端内部安全操作系统,访问警务和政务专网,实现了一机两用、内外网隔离的目的,完全不
存在内外网混用的风险,大大提高安全可靠性。
[0050] 如遇到需要远程办公或者外出现场办公,用户将便携式安全终端通过转接器连接至普通笔记本电脑中,借助普通笔记本电脑的屏幕、鼠标、键盘进行远程安全办公即可,同
样不存在内外网混用的风险。
[0051] 具体的,所述第一主机包括设备枚举模块I、事件抓取模块、上位机模块和事件发送模块I;所述第一芯片包括设备模拟模块I;
[0052] 所述第一主机,用于将自身的键盘鼠标事件通过USB接口发送至所述转接器的第一芯片,具体包括:
[0053] 所述第一芯片通过所述设备模拟模块I模拟符合USB HID标准协议的设备;
[0054] 所述第一主机通过所述设备枚举模块I枚举到所述符合USB HID标准协议的设备后,与所述第一芯片建立通信连接,构建第一主机与第一芯片之间的专用事件共享通道;
[0055] 所述第一主机通过所述事件抓取模块抓取所述第一主机上的键盘鼠标事件并发送至上位机模块;
[0056] 所述上位机模块将所述键盘鼠标事件通过所述事件发送模块I经所述专用事件共享通道发送至所述转接器的第一芯片。
[0057] 需要说明的是,所述第一主机中的设备枚举模块I、事件抓取模块、上位机模块和事件发送模块I预先存储在转接器的光盘中,首次使用时,将转接器插入第一主机中,打开
第一主机的资源管理器,此时第一主机(主控机笔记本)会识别出符合HID标准的供应商定
义设备和一个CDROM分区,打开转接器的CDROM分区,打开共享软件,从而实现对第一主机即
插即用,无需手动安装。
[0058] 目前市面上已有的转接线,需要在两边主机安装驱动程序,一旦被控机端(第二主机)安装的驱动内部植入恶意木马,则可能捕获一些重要信息,造成重要信息泄露,显然不
能适用于警务、政务办公环境;本申请中被控机端(第二主机)插入的转接器(USB设备)为键
盘鼠标复合设备,无需安装任何软件,也无需进行任何运算,对于使用无限制,从而增加了
特殊办公的安全可靠性。
[0059] 具体的,所述第一芯片包括数据接收模块和SPI发送模块;
[0060] 所述转接器,用于通过所述第一芯片接收所述键盘鼠标事件,并通过SPI接口发送至所述第二芯片,具体包括:
[0061] 所述转接器通过所述第一芯片的数据接收模块接收所述事件发送模块I发送的键盘鼠标事件,并转发至所述SPI发送模块;
[0062] 所述转接器还通过所述第一芯片的SPI发送模块将所述键盘鼠标事件发送至所述第二芯片。
[0063] 需要说明的是,该双主机事件共享转接装置无需HID驱动程序和模拟KVM应用程序,所述转接器对第一主机和第二主机(被控机)都是免安装驱动的,不需要额外安装驱动
程序。
[0064] 具体的,所述第二芯片包括SPI接收模块、设备模拟模块II和事件发送模块II;所述第二主机包括设备枚举模块II;
[0065] 所述转接器,还用于通过所述第二芯片接收所述键盘鼠标事件,并通过所述USB接口发送至所述第二主机,具体包括:
[0066] 所述转接器通过所述第二芯片的设备模拟模块II模拟USB复合设备,所述USB复合设备包括符合USB HID标准协议的键盘和鼠标设备;
[0067] 所述第二主机通过所述设备枚举模块II枚举到所述USB复合设备后,与所述第二芯片建立通信连接,构建第二芯片与第二主机之间的专用事件共享通道;
[0068] 所述转接器还通过所述第二芯片的SPI接收模块接收所述第一芯片的SPI发送模块发送的键盘鼠标事件;
[0069] 所述转接器还通过所述第二芯片的事件发送模块将所述键盘鼠标事件发送至所述第二主机。
[0070] 需要说明的是,所述第二芯片的SPI接收模块接收到键盘鼠标事件后采用环形队列进行缓存,所述第二芯片的事件发送模块II从环形队列中按照自定义的协议头进行解
析,并区分键盘或鼠标消息,重新拼装系统识别的键盘鼠标编码以中断方式发送至第二主
机。
[0071] 具体的,所述第一芯片为SPI主模式,所述第二芯片为SPI从模式,所述第一芯片和所述第二芯片之间采用六线SPI传输协议进行事件传输,所述六线SPI传输协议对应的连接
线包括SCK时钟线、MOSI主发从收线、MISO主收从发线、CS片选线和状态线1、状态线2,如附
图3所示;
[0072] 所述第一芯片通过状态线1获取所述第二芯片的状态,若所述第二芯片为空闲状态,所述第一芯片则拉低状态线2并通过MOSI主发从收线向所述第二芯片发送所述键盘鼠
标事件,并在发送完成后拉高状态线2以通知所述第二芯片发送完成;
[0073] 所述第二芯片配置EDMA增强型直接存储器后,所述第二芯片将状态线1切换为空闲状态;实时检测状态线2是否处于上升沿,当检测到状态线2为上升沿时,从EDMA配置的接
收缓冲区中读取所述第一芯片发送的键盘鼠标事件。
[0074] 具体的,所述第一芯片向所述第二芯片发送键盘鼠标事件之前,先通过状态线1来获取第二芯片的状态,所述第二芯片的状态包括空闲状态和通信状态,所述第二芯片为空
闲状态时,状态线1为低电平,所述第二芯片为通信状态时,状态线1为高电平;在其他实施
例中,所述第二芯片为空闲状态时,状态线1可以为高电平,所述第二芯片为通信状态时,状
态线1为低电平。可以理解,若所述第二芯片为通信状态(第二芯片忙),所述第一芯片继续
等待,直至检测到所述第二芯片为空闲状态。
[0075] 需要说明的是,所述第二芯片上电后,先配置EDMA增强型直接存储器,再将状态线1切换为空闲状态,为接收键盘鼠标事件做准备。在所述第二芯片接收到键盘鼠标事件后,
先存储至EDMA增强型直接存储器配置的接收缓冲区,实时检测状态线2是否处于上升沿,在
检测到状态线2为上升沿时,从EDMA增强型直接存储器配置的接收缓冲区读取键盘鼠标事
件,并通过USB接口将所述键盘鼠标事件发送至第二主机,完成第二主机鼠标动作。
[0076] 所述第二芯片将所述键盘鼠标事件发送至第二主机后,则重新配置(或者启用)EDMA增强型直接存储器,为接收下一个键盘鼠标事件(下一包数据)做准备。
[0077] 具体的,所述第一芯片通过修改配置描述符、HID描述符和报告描述符后符合USB HID标准协议,使得所述第一主机在进行事件传输时将所述第一芯片枚举为符合USB HID标
准协议的设备;同时将所述第一芯片的中断类型端点1设置为输入输出端点,以配合所述第
一主机进行事件传输;
[0078] 所述第二芯片通过修改配置描述符、增加鼠标及键盘接口描述符和鼠标及键盘报告描述符后符合USB HID标准协议,使得所述第二主机进行事件传输时将所述第二芯片枚
举为键盘和鼠标复合设备;同时将所述第二芯片的中断类型端点1设置为键盘输出端点、将
中断类型端点2设置为鼠标输出端点,向所述第二主机发送符合对应报告描述的事件报告
信息,进行键盘和鼠标的模拟操作。
[0079] 可以理解,由于键盘鼠标事件报文不大,且对实时性要求很高,因此,在固件设计上所述第一芯片的数据接收模块采用中断模式传输,保证第二主机在不大于某个时间间隔
内拿到响应数据;所述第一芯片的SPI发送模块内部会对USB接口接收到的数据进行封包,
按照自定义报文格式进行单向传输。
[0080] 需要说明的是,转接器的两个芯片及USB接口均为USB HID设备,第一主机和第二主机均无需安装驱动。当用户操作第一主机的键盘或者鼠标时,运行在第一主机端的软件
会捕获键盘鼠标事件,通过连接在第一主机和第二主机之间的转接器,来模拟键盘鼠标设
备,将键盘鼠标事件转发送至第二主机,实现第二主机键盘鼠标控制。
[0081] 在实际的应用中,第二芯片模拟的符合USB HID标准协议的设备,包括一个HID标准键盘,一个HID标准鼠标,通过USB接口连接在第二主机,充当第二主机的键盘或鼠标。
[0082] 实施例2
[0083] 在实际的应用中,第一芯片和第二芯片可设置为安全芯片,分别为第一主机和第二主机提供密码服务,包括加解密、签名验签、数字证书等服务。
[0084] 在建立第一主机与第一芯片之间的专用事件共享通道时,所述第一芯片还用于接收所述第一主机发送的PIN口令,与第一芯片自身的PIN码进行比对,以对第一主机的身份
进行认证;若比对结果一致,所述第一芯片则生成一组密钥对,并将该密钥对的公钥发送至
所述第一主机;
[0085] 在所述第一主机将自身的键盘鼠标事件通过USB接口发送至所述转接器的第一芯片之前,
[0086] 所述转接器的第一芯片还用于生成随机数A,并采用所述密钥对的私钥对所述随机数A进行加密并传输至所述第一主机;所述第一主机还用于在接收到随机数A的密文后,
采用所述密钥对的公钥进行解密获得随机数A;所述第一芯片和所述第一主机分别采用预
设算法对所述随机数A进行计算获得第一事件共享密钥;
[0087] 所述第一芯片还用于在获得所述第一事件共享密钥后,生成第一密钥协商参数,采用预置的第一SM2公私钥对的私钥加密处理后传输至所述第二芯片;
[0088] 所述第二芯片还用于在接收到第一密钥协商参数密文后,通过预置的第一SM2公私钥对的公钥解密后获得第一密钥协商参数,以及用于生成第二密钥协商参数,并采用预
置的第二SM2公私钥对的私钥加密处理后传输至所述第一芯片;
[0089] 所述第一芯片还用于在接收到第二密钥协商参数密文后,通过预置的第二SM2公私钥对的公钥解密后获得第二密钥协商参数,所述第一芯片和所述第二芯片分别基于第一
密钥协商参数和第二密钥协商参数获得第二事件共享密钥。
[0090] 在所述第一主机将自身的键盘鼠标事件通过USB接口发送至所述转接器的第一芯片时,所述第一主机用于通过第一事件共享密钥将自身的键盘鼠标事件加密处理后发送至
所述转接器的第一芯片,所述第一芯片用于采用第一事件共享密钥进行解密,获得所述键
盘鼠标事件,并采用所述第二事件共享密钥加密处理后传输至所述第二芯片,所述第二芯
片用于通过所述第二事件共享密钥解密处理后转发至所述第二主机。
[0091] 可以理解,在进行键盘鼠标事件共享时,所述第一主机采用第一事件共享密钥对自身的键盘鼠标事件进行加密处理,并传输至所述第一芯片,所述第一芯片通过所述第一
事件共享密钥进行解密处理,获得键盘鼠标事件明文后,再采用第二事件共享密钥进行加
密处理,并传输至所述第二芯片,所述第二芯片通过所述第二事件共享密钥进行解密处理,
获得键盘鼠标事件明文后并传输至所述第二主机;因此,第一主机和第一芯片之间、第一芯
片和第二芯片之间传输的键盘、鼠标指令是加密传输的,能够有效防止篡改、窃听。
[0092] 需要说明的是,对于警务、政务人员等特殊领域来说,鼠标键盘的输入内容(账号、密码等)也是至关重要的,一旦被其他人员捕捉到,可能造成严重后果;因此,本申请中所述
转接器会获取(第一主机的)鼠标键盘的监管权限,使得第一主机无法捕获或感知当前鼠标
键盘事件,保证在通过第一主机的鼠标键盘控制第二主机的过程中,第一主机都无法看到
或者获知到鼠标键盘的任何输入内容,从而避免第一主机侧泄漏针对所述第二主机的输入
内容,保证整个双主机事件共享转接装置的键盘鼠标事件共享过程的绝对安全。
[0093] 具体的,所述转接器的第一芯片还用于在通过第一主机的鼠标键盘事件控制第二主机的过程中,获取(第一主机的)鼠标键盘的监管权限,基于鼠标键盘的监管权限监听针
对所述第二主机的输入内容;所述输入内容包括鼠标键盘动作,例如鼠标状态、鼠标坐标
等。
[0094] 所述转接器的第一芯片还用于在第一主机的鼠标键盘切换至控制第二主机的过程中,屏蔽或暂停第一主机的鼠标键盘监管权限,使得第一主机无法捕获或感知针对所述
第二主机的输入内容,以及在第一主机的鼠标键盘切换至控制第一主机后,恢复第一主机
的鼠标键盘监管权限,并暂停第一芯片对(第一主机的)鼠标键盘的监管权限;从而在实现
一机两用、内外网隔离的同时,通过不同的应用场景切换时鼠标键盘监管权限的转换,提高
通过第一主机的鼠标键盘控制第二主机通信过程的安全可靠性。
[0095] 进一步的,所述转接器还包括HDMI视频采集芯片,所述HDMI视频采集芯片用于采集第二主机的视频信息并传输至所述第一主机,如附图4所示。
[0096] 具体的,所述HDMI视频采集芯片一端通过标准HDMI数据线与第二主机通信连接,所述HDMI视频采集芯片另一端通过HUB3.0器件和USB线与第一主机通信连接。
[0097] 实施例3
[0098] 如图2所示,本发明还提出一种双主机事件共享转接方法,所述共享转接方法包括:
[0099] 步骤S1,第一主机将自身的键盘鼠标事件通过USB接口发送至转接器的第一芯片;
[0100] 步骤S2,所述转接器通过所述第一芯片接收所述键盘鼠标事件,并通过SPI接口发送至第二芯片;所述第二芯片接收所述键盘鼠标事件,并通过所述USB接口发送至第二主
机;
[0101] 步骤S3,所述第二主机通过USB接口接收所述键盘鼠标事件,实现键盘鼠标事件共享。
[0102] 具体的,所述步骤S1具体包括:
[0103] 第一芯片通过修改配置描述符、HID描述符和报告描述符后使得所述第一芯片为符合USB HID标准协议的设备;同时将所述第一芯片的中断类型端点1设置为输入输出端
点;
[0104] 所述第一主机在枚举到所述符合USB HID标准协议的设备后,与所述第一芯片建立通信连接,构建第一主机与第一芯片之间的专用事件共享通道;
[0105] 所述第一主机通过设置的事件抓取模块抓取所述第一主机上的键盘鼠标事件,并发送至所述第一主机设置的上位机模块;
[0106] 所述上位机模块经所述第一主机设置的事件发送模块I将所述键盘鼠标事件通过USB接口发送至所述转接器的第一芯片。
[0107] 具体的,所述步骤S2具体包括:
[0108] 所述第二芯片通过修改配置描述符、增加鼠标及键盘接口描述符和鼠标及键盘报告描述符后使得所述第二芯片为USB复合设备,所述USB复合设备包括符合USB HID标准协
议的键盘和鼠标设备;同时将所述第二芯片的中断类型端点1设置为键盘输出端点、将中断
类型端点2设置为鼠标输出端点;
[0109] 所述第二主机在枚举到所述USB复合设备后,与所述第二芯片建立通信连接,构建第二芯片与第二主机之间的专用事件共享通道;
[0110] 所述第一芯片通过USB接口接收所述上位机模块发送的键盘鼠标事件后,再通过SPI接口将所述键盘鼠标事件发送至所述第二芯片;
[0111] 所述第二芯片通过SPI接口接收到所述键盘鼠标事件,再通过USB接口发送至所述第二主机。
[0112] 具体的,所述第一芯片设置为SPI主模式,所述第二芯片设置为SPI从模式,所述第一芯片和所述第二芯片之间采用六线SPI传输协议进行事件传输,所述六线SPI传输包括
SCK时钟线、MOSI主发从收线、MISO主收从发线、CS片选线和状态线1、状态线2;
[0113] 所述第一芯片通过状态线1获取所述第二芯片状态,若为空闲状态,则拉低状态线2向所述第二芯片发送所述键盘鼠标事件,并在发送完成后拉高状态线2通知所述第二芯片
发送完成;
[0114] 所述第二芯片配置EDMA增强型直接存储器后,将状态线1切换为空闲状态,当检测到状态线2为上升沿时,从EDMA配置的接收缓冲区中读取所述第一芯片发送的所述键盘鼠
标事件。
[0115] 具体的,所述第一芯片还接收所述第一主机发送的PIN口令,与第一芯片自身的PIN码进行比对,以对第一主机的身份进行认证;若比对结果一致,所述第一芯片则生成一
组密钥对,并将该密钥对的公钥发送至所述第一主机;
[0116] 所述转接器的第一芯片还生成随机数A,并采用所述密钥对的私钥对所述随机数A进行加密并传输至所述第一主机;所述第一主机还在接收到随机数A的密文后,采用所述密
钥对的公钥进行解密获得随机数A;所述第一芯片和所述第一主机分别采用预设算法对所
述随机数A进行计算获得第一事件共享密钥;
[0117] 所述第一芯片获得所述第一事件共享密钥后,还生成第一密钥协商参数,采用第一芯片预置的第一SM2公私钥对的私钥加密处理后获得第一密钥协商参数密文,并传输至
所述第二芯片;
[0118] 所述第二芯片在接收到所述第一密钥协商参数密文后,还通过预置的第一SM2公私钥对的公钥解密后获得第一密钥协商参数,所述第二芯片还生成第二密钥协商参数,并
采用第二芯片预置的第二SM2公私钥对的私钥加密处理后获得第二密钥协商参数密文,并
传输至所述第一芯片;
[0119] 所述第一芯片在接收到第二密钥协商参数密文后,通过预置的第二SM2公私钥对的公钥解密后获得第二密钥协商参数,所述第一芯片和所述第二芯片分别基于第一密钥协
商参数和第二密钥协商参数获得第二事件共享密钥;
[0120] 所述第一主机用于通过第一事件共享密钥将自身的键盘鼠标事件加密处理后发送至所述转接器的第一芯片,所述第一芯片用于采用第一事件共享密钥进行解密,获得所
述键盘鼠标事件,并采用所述第二事件共享密钥加密处理后传输至所述第二芯片,所述第
二芯片用于通过所述第二事件共享密钥解密处理后转发至所述第二主机。
[0121] 可以理解,所述第一芯片和所述第一主机分别采用相同的预设算法对所述随机数A进行计算获得相同的第一事件共享密钥;所述第一芯片和所述第二芯片分别基于第一密
钥协商参数和第二密钥协商参数采用相同的预设算法获得相同的第二事件共享密钥。
[0122] 需要说明的是,对于警务、政务人员等特殊领域来说,鼠标键盘的输入内容(账号、密码等)也是至关重要的,一旦被其他人员捕捉到,可能造成严重后果;因此,本申请中所述
转接器会获取第一主机的鼠标键盘的监管权限,使得第一主机无法感知当前鼠标键盘事
件,保证在通过第一主机的鼠标键盘控制第二主机的过程中,第一主机都无法看到或者获
知到鼠标键盘的任何输入内容,从而避免第一主机侧泄漏向第二主机传输的鼠标键盘指
令,保证整个双主机事件共享转接装置的键盘鼠标事件共享过程的绝对安全。
[0123] 具体的,所述转接器的第一芯片还在通过第一主机的鼠标键盘事件控制第二主机的过程中,获取(第一主机的)鼠标键盘的监管权限,基于鼠标键盘的监管权限监听针对所
述第二主机的输入内容;所述输入内容包括鼠标键盘动作,例如鼠标状态、鼠标坐标等。
[0124] 所述转接器的第一芯片还用于在第一主机的鼠标键盘切换至控制第二主机的过程中,屏蔽或暂停第一主机的鼠标键盘监管权限,使得第一主机无法捕获或感知针对所述
第二主机的输入内容,以及在第一主机的鼠标键盘切换至控制第一主机后,恢复第一主机
的鼠标键盘监管权限,并暂停第一芯片对(第一主机的)鼠标键盘的监管权限;从而在实现
一机两用、内外网隔离的同时,通过不同的应用场景切换时鼠标键盘监管权限的转换,提高
通过第一主机的鼠标键盘控制第二主机通信过程的安全可靠性。
[0125] 以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修
改、等同替换、改进等,均应包含在本发明的保护范围之内。