本申请涉及数据安全,具体涉及一种嵌入式控制器、芯片及电子设备和键盘数据处理方法。
背景技术:
1、笔记本电脑自带的键盘为矩阵键盘,通常由嵌入式控制器(embeddedcontroller,简称为ec)完成行列扫描识别按键位置,然后产生按键扫描码(keyboard scancode)通过增强型串行外设接口(enhanced serial peripheral interface,简称为espi)总线的io-60/64接口发送给主机端(host),由主机端的键盘驱动接收按键扫描码并识别按键位置。
2、由于ec和主机端采用标准espi io cycle协议发送标准的scan code set-1,传递按键状态,而且espi总线上的按键扫描码是明文传输。因此按键在发送端、发送中、接收端都有被劫持的风险,导致第三方冒充ec向主机端发送按键扫描码。
技术实现思路
1、鉴于以上问题,本申请实施例提供一种嵌入式控制器、芯片及电子设备和键盘数据处理方法,以解决上述技术问题。
2、第一方面,本申请实施例提供一种嵌入式控制器,包括:总线接口电路,用于与主机处理器通信;按键数据保护模块,用于获取按键数据和重放保护单调计数值,调用签名模块生成按键数据和重放保护单调计数值的签名信息,经由总线接口电路将按键数据包传输到主机处理器,其中,该按键数据包包括按键数据和签名信息、或者按键数据和重放保护单调计数值及签名信息。该实施例生成按键数据和重放保护单调计数值的签名信息,使得主机能够基于该签名信息和自身的重放保护单调计数值验证按键数据是否来自嵌入式控制器,避免第三方冒充嵌入式控制器向主机端发送按键数据。
3、第二方面,本申请实施例提供一种芯片,包括本申请实施例提供的嵌入式控制器。该实施例生成按键数据和重放保护单调计数值的签名信息,使得主机能够基于该签名信息和自身的重放保护单调计数值验证按键数据是否来自嵌入式控制器,避免第三方冒充ec向主机端发送按键数据。
4、第三方面,本申请实施例提供一种电子设备,包括设备主体以及设于所述设备主体的如上述实施例的嵌入式控制器或芯片。该实施例,生成按键数据和重放保护单调计数值的签名信息,主机能够基于该签名信息验证和自身的重放保护单调计数值按键数据是否来自嵌入式控制器,避免第三方冒充ec向主机端发送按键数据。
5、第四方面,本申请实施例提供一种按键数据处理方法,该方法应用于嵌入式控制器,该方法包括:获取按键数据和自身的重放保护单调计数值,其中,按键数据基于针对键盘的按键动作产生;调用签名模块生成按键数据和重放保护单调计数值的签名信息;经由嵌入式控制器与主机处理器之间的总线,将按键数据包传输到主机处理器,其中,该按键数据包包括按键数据和签名信息、或者按键数据和重放保护单调计数值及签名信息。该实施例,生成按键数据和重放保护单调计数值的签名信息,主机能够基于该签名信息和自身的重放保护单调计数值验证按键数据是否来自嵌入式控制器,避免第三方冒充ec向主机端发送按键数据。
6、第五方面,本申请实施例提供一种按键数据处理方法,该方法应用于电子设备的主机处理器,该电子设备包括嵌入式控制器,该方法包括:接收嵌入式控制器发送的按键数据包,其中,按键数据包包括按键数据和签名信息、或者按键数据和嵌入式控制器的重放保护单调计数值及签名信息,该签名信息是对按键数据和嵌入式控制器的重放保护单调计数值进行签名生成的;执行签名算法以生成自身的重放保护单调计数值和接收到的按键数据的签名信息,其中,该签名算法与嵌入式控制器的签名算法一致;在生成的签名信息与接收到的签名信息一致的情况下,确定接收的按键数据验证通过。该实施例,主机能够基于该签名信息和自身的重放保护单调计数值验证按键数据是否来自嵌入式控制器,避免第三方冒充ec向主机端发送按键数据。
7、本申请实施例提供的嵌入式控制器、芯片及电子设备和键盘数据处理方法,通过生成按键数据和重放保护单调计数值的签名信息,主机能够基于该签名信息和自身的重放保护单调计数值验证按键数据是否来自嵌入式控制器,避免第三方冒充ec向主机端发送按键数据。
8、本申请的这些方面或其他方面在以下实施例的描述中会更加简明易懂。
1.一种嵌入式控制器,其特征在于,包括:
2.如权利要求1所述的嵌入式控制器,其特征在于,所述按键数据保护模块,还用于在所述按键数据通过所述主机处理器验证的情况下,更新所述重放保护单调计数值。
3.如权利要求1或2所述的嵌入式控制器,其特征在于,还包括:存储控制模块;其中,所述按键数据保护模块用于通过所述存储控制模块访问用于存储所述重放保护单调计数值的存储模块,以更新和获取所述重放保护单调计数值。
4.如权利要求1或2所述的嵌入式控制器,其特征在于,还包括:存储模块,用于存储所述重放保护单调计数值;其中,所述按键数据保护模块用于访问所述存储模块,以更新和获取所述重放保护单调计数值。
5.如权利要求1所述的嵌入式控制器,其特征在于,还包括:处理器,所述按键数据保护模块集成于所述处理器内,或者所述按键数据保护模块为由所述处理器执行的程序指令。
6.如权利要求5所述的嵌入式控制器,其特征在于,所述签名模块集成于所述处理器内部。
7.如权利要求5所述的嵌入式控制器,其特征在于,所述签名模块集成于所述嵌入式控制器内部,所述处理器与所述签名模块经由内部总线连接。
8.如权利要求5所述的嵌入式控制器,其特征在于,所述签名模块为由所述处理器执行的签名算法程序指令。
9.如权利要求1所述的嵌入式控制器,其特征在于,还包括:键盘控制模块,用于检测按键动作并产生与所述按键动作对应的按键数据。
10.一种芯片,其特征在于,包括上述权利要求1~9任一项所述的嵌入式控制器。
11.一种电子设备,其特征在于,包括设备主体以及设于所述设备主体的如上述权利要求1~9任一项所述的嵌入式控制器。
12.如权利要求11所述的电子设备,其特征在于,还包括:键盘驱动程序,所述键盘驱动程序在由主机处理器执行时使所述主机处理器执行以下步骤:
13.如权利要求12所述的电子设备,其特征在于,所述主机处理器执行的步骤还包括:在确定接收的按键数据验证通过的情况下,更新所述嵌入式控制器的重放保护单调计数值。
14.一种按键数据处理方法,其特征在于,所述方法应用于嵌入式控制器,所述方法包括:
15.一种按键数据处理方法,其特征在于,所述方法应用于电子设备的主机处理器,所述电子设备包括嵌入式控制器,所述方法包括:
