一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

访问控制方法、电子设备及计算机可读存储介质与流程

2022-06-08 13:49:17 来源:中国专利 TAG:


1.本技术涉及终端技术领域,特别涉及一种访问控制方法、电子设备及计算机可读存储介质。


背景技术:

2.为了确保在终端设备的软件故障导致终端设备无法正常使用的情况下,能够重新写入终端设备的系统镜像,终端设备通常设置有强制加载(emergency download,edl)模式。终端设备进入edl模式后,其他电子设备可以通过预设的端口,例如9008端口,对终端设备进行访问,例如读取/写入终端设备的系统镜像、读取终端设备中的用户数据等。
3.但是,由于edl模式下,终端设备的系统软件无法对访问终端设备的电子设备进行鉴别,非法人员可以通过edl模式获取、篡改终端设备中的数据,影响用户的数据安全和设备安全。


技术实现要素:

4.本技术提供了一种访问控制方法、电子设备及计算机可读存储介质,可以避免非法人员通过edl模式获取、篡改终端设备中的数据,提高终端设备的安全性。所述技术方案如下:第一方面,提供了一种访问控制方法,应用于第一设备,所述方法包括:在运行于强制加载模式的情况下,接收第二设备发送的第一公钥的公钥标识,根据第一公钥的公钥标识,利用第一公钥对第一设备的设备信息进行加密,得到第一数据,向第二设备发送第一数据。然后,接收第二设备发送的签名信息和第二公钥的公钥标识,根据第二公钥的公钥标识,利用第二公钥对签名信息进行校验,根据校验结果,对第一设备的访问操作进行响应。
5.其中,第一设备的设备信息至少包括设备标识。设备标识可以为第一设备的移动设备识别码、序列号、国际移动设备身份码、版本号,以及第一设备的处理器的序列号和芯片识别码中的一种或多种。另外,第一设备的设备信息还可以包括熔丝标记等其他信息,熔丝标记用于指示第一设备是否为已熔丝设备。
6.其中,签名信息是利用第二公钥对应的第二私钥对解密数据进行签名得到,解密数据是利用第一公钥对应的第一私钥对第一数据进行解密得到。第一公钥的公钥标识用于指示第一公钥,可以为第一公钥的名称、编码或id 等。
7.其中,第一公钥与第一私钥是一对密钥对,利用第一公钥进行加密的数据可以利用第一私钥进行解密。第二公钥与第二私钥是一对密钥对,利用第二私钥进行签名的数据可以利用第二公钥进行校验。
8.也即是,第一设备可以先对第二设备进行鉴权,再根据鉴权结果对第二设备的访问操作进行响应。比如,在鉴权成功的情况下响应第一设备的访问操作,在鉴权失败的情况下拒绝访问第一设备的访问操作。如此,即便非法人员通过非法方式操作第一设备进入edl
模式,第一设备也只有在对第二设备鉴权通过的情况下才会对第二设备的访问操作进行响应,避免了非法人员通过利用第一设备的edl模式获取、篡改终端设备中的数据,提高了第一设备的安全性。而且,鉴权过程中不需要在设备之间传输公钥,而是传输公钥标识,且第一设备和第二设备并不存储签名信息的私钥,提高了数据安全性。
9.在一些实施例中,第一设备包括ree和tee。ree接收第二设备发送的第一公钥的公钥标识,将第一公钥的公钥标识发送给tee。tee接收第一公钥的公钥标识,利用第一公钥对第一设备的设备信息进行加密,得到第一数据,将第一数据发送给ree。ree向第二设备发送第一数据。然后,ree接收第二设备发送的签名信息和第二公钥的公钥标识,将签名信息和第二公钥的公钥标识发送给tee。tee接收签名信息和第二公钥的公钥标识,根据第二公钥的公钥标识获取第二公钥,利用第二公钥对签名信息进行校验,得到校验结果,将校验结果发送给ree。ree接收校验结果,根据校验结果,对第一设备的访问操作进行响应。
10.如此,公钥获取、数据加密和签名校验过程均在tee侧中进行,ree侧只得到加密结果和校验结果,不传输公钥,极大地提高了数据的安全性。
11.其中,第二设备可以将第一数据和第一公钥的公钥标识以数据拼接的形式发送给第三设备。
12.比如,第一设备将第一数据和第一公钥的公钥标识进行拼接,得到第二数据,将第二数据发送给第二设备,第二设备接收到第二数据后,将第二数据转发给第三设备。或者,第一设备将第一数据发送给第二设备,第二设备将第一数据和第一公钥的公钥标识进行拼接,得到第二数据,将第二数据发送给第三设备。
13.其中,将第一数据和第一公钥的公钥标识进行拼接的操作可以包括:将第一数据和第一公钥的公钥标识进行连接,得到第二数据。或者,将第一数据和第一公钥的公钥标识进行连接,在第一数据和第一公钥的公钥标识之间添加第一字符串,得到第二数据。第一字符串可以预先设置,第一字符串包括一个或多个字符。比如,第一字符串为“##”。
14.在一些实施例中,在接收第二设备发送的第一公钥的公钥标识之前,第一设备还可以先接收第二设备发送的鉴权指令,然后根据该鉴权指令,检测第一设备是否需要进行访问鉴权。若第一设备需要进行访问鉴权,则向第二设备发送第一指示信息,第一指示信息用于指示第一设备需要进行访问鉴权。其中,鉴权指令用于指示第一设备检测所述第一设备是否需要进行访问鉴权。
15.另外,若检测到第一设备需要进行访问鉴权,则向第二设备发送第一指示信息,第一指示信息用于指示第一设备需要进行访问鉴权。
16.其中,检测第一设备是否需要进行访问鉴权包括:若确定第一设备是已熔丝设备且第一设备未解锁数据访问权限,则确定第一设备需要进行访问鉴权。若确定第一设备不是已熔丝设备和/或第一设备已解锁数据访问权限,则确定第一设备不需要进行访问鉴权。
17.如此,可以先检测第一设备是否进行访问鉴权,在第一设备需要进行访问鉴权的情况下进入鉴权流程,在第一设备不需要进行访问鉴权的情况下跳过鉴权流程,从而可以提高鉴权灵活性。
18.在一些实施例中,利用第二公钥对签名信息进行校验的操作包括:利用第二公钥对签名信息进行解析,得到解析设备信息;在解析设备信息与第一设备的设备信息相同的情况下,确定校验成功;在解析设备信息与第一设备的设备信息不同的情况下,确定校验失
败。
19.在一些实施例中,根据校验结果,对第一设备的访问操作进行响应的操作包括:若校验结果为校验成功,则响应第一设备的访问操作;若校验结果为校验失败,则拒绝响应第一设备的访问操作。
20.其中,第一设备的访问操作包括以下操作中的至少一种:读取第一设备中的数据、向第一设备中写入数据、修改第一设备中的数据、删除第一设备中的数据、备份第一设备中的数据。当然,也可以包括其他对第一设备的访问操作。
21.第二方面,提高了一种访问控制方法,应用于第二设备,所述方法包括:向运行于强制加载模式的第一设备发送第一公钥的公钥标识,接收第一设备发送的第一数据,向第三设备发送第一数据和第一公钥的公钥标识。然后,接收第三设备发送的签名信息和第二公钥的公钥标识,向第一设备发送签名信息和第二公钥的公钥标识。
22.其中,第一数据是利用第一公钥对第一设备的设备信息进行加密得到,设备信息至少包括设备标识。签名信息是利用第二公钥对应的第二私钥对解密数据进行签名得到,解密数据是利用第一公钥对应的第一私钥对第一数据进行解密得到。
23.通过向运行于强制加载模式的第一设备发送第一公钥的公钥标识,接收第一设备发送的第一数据,向第三设备发送第一数据和第一公钥的公钥标识,然后接收第三设备发送的签名信息和第二公钥的公钥标识,向第一设备发送签名信息和第二公钥的公钥标识,可以指示第一设备根据第一设备发送的第一公钥的公钥标识、签名信息和第二公钥的公钥标识对第一设备进行鉴权。如此,即便非法人员通过非法方式操作第一设备进入edl模式,第一设备也只有在对第二设备鉴权通过的情况下才会对第二设备的访问操作进行响应,避免了非法人员通过利用第一设备的edl模式获取、篡改终端设备中的数据,提高了第一设备的安全性。而且,鉴权过程中不需要在设备之间传输公钥,而是传输公钥标识,且第一设备和第二设备并不存储签名信息的私钥,提高了数据安全性。
24.在一些实施例中,在向第一设备发送第一公钥的公钥标识之前,第二设备还可以先向第一设备发送鉴权指令,所述鉴权指令用于指示第一设备检测第一设备是否需要进行访问鉴权。之后,若接收到第一设备发送的第一指示信息,则执行向第一设备发送第一公钥的公钥标识的步骤,以指示第一设备进入鉴权流程。其中,第一指示信息用于指示第一设备需要进行访问鉴权。
25.通过向第一设备发送鉴权指令,指示第一设备检测自身是否需要进行访问鉴权,若需要,则指示第一设备进行鉴权流程,若不需要,则指示第一设备跳过鉴权流程,可以提高鉴权的灵活性。
26.在一些实施例中,第二设备可以接收第一设备发送的第二数据,向第三设备发送第二数据,第二数据是对第一数据和第一公钥的公钥标识进行拼接得到。
27.在一些实施例中,在向第三设备发送第一数据和第一公钥的公钥标识之前,第二设备还可以先获取操作者的第一身份验证信息,然后向第三设备发送第一数据、第一公钥的公钥标识和述第一身份验证信息。
28.其中,身份验证信息用于对操作者进行身份验证,即验证操作者是否具有对第一设备进行访问操作的权限。比如,身份验证信息可以包括用户账号和密码,当然也可以包括用于进行身份验证的其他身份验证信息。
29.作为一个示例,若第二设备接收到第一设备发送的第一数据,或者接收到第一设备发送的第一数据和第一公钥的公钥标识,则第二设备可以将第一数据、第一公钥的公钥标识和第一身份验证信息进行拼接,得到第三数据,将第三数据发送给第三设备。
30.比如,第二设备可以将第一身份验证信息、第一公钥的公钥标识和第一数据进行连接,得到第三数据。或者,将第一身份验证信息、第一公钥的公钥标识和第一数据进行连接,在第一身份验证信息和第一公钥的公钥标识之间添加第二字符串,在第一公钥的公钥标识和第一数据之间添加第一字符串,将添加字符串后的数据作为第三数据。第二字符串可以预先设置,第二字符串包括一个或多个字符,比如第二字符串为“@”。
31.作为另一个示例,若第二设备接收到第一设备发送的第二数据,则第二设备可以将第二数据和第一身份验证信息进行拼接,得到第三数据,将第三数据发送给第三设备。
32.比如,第二设备可以将第一身份验证信息和第二数据进行连接,得到第三数据。或者将第一身份验证信息和第二数据进行连接,在第一身份验证信息和第二数据之间添加第二字符串,得到第三数据。
33.在一些实施例中,在向第三设备发送第一数据、第一公钥的公钥标识和第一身份验证信息之后,第二设备还可以接收第三设备发送的第二指示信息,第二指示信息用于指示第一身份验证信息验证失败。根据第二指示信息发出提示信息,以提示操作者重新输入身份验证信息。然后,获取操作者输入的第二身份验证信息,向第三设备发送第一数据、第一公钥的公钥标识和第二身份验证信息。
34.第三方面,提供了一种访问控制方法,应用于第三设备中,所述方法包括:接收第二设备发送的第一数据和第一公钥的公钥标识,根据第一公钥的公钥标识,利用第一公钥对第一数据进行解密,得到解密数据。然后,利用第二私钥对解密数据进行签名,得到签名信息,向第二设备发送签名信息和第二私钥对应的第二公钥的公钥标识。
35.其中,第一数据是利用第一公钥对第一设备的设备信息进行加密得到,设备信息至少包括设备标识。
36.通过接收第二设备发送的第一数据和第一公钥的公钥标识,利用第一公钥对第一数据进行解密,利用第二私钥对解密数据进行签名,向第二设备发送签名信息和第二私钥对应的第二公钥的公钥标识,可以指示第二设备将签名信息和第二公钥的公钥标识发送给第一设备,由第一设备利用第二公钥对签名信息进行校验,从而实现对第二设备进行鉴权。如此,即便非法人员通过非法方式操作第一设备进入edl模式,第一设备也只有在对第二设备鉴权通过的情况下才会对第二设备的访问操作进行响应,避免了非法人员通过利用第一设备的edl模式获取、篡改终端设备中的数据,提高了第一设备的安全性。而且,鉴权过程中不需要在设备之间传输公钥,而是传输公钥标识,且第一设备和第二设备并不存储签名信息的私钥,提高了数据安全性。
37.在一些实施例中,第三设备可以接收第二设备发送的第一数据、第一公钥的公钥标识和第一身份验证信息,然后对第一身份验证信息进行验证。若验证成功,则根据第一公钥的公钥标识,利用所述第一公钥对所述第一数据进行解密。若验证失败,则向第二设备发送第二指示信息,第二指示信息用于指示第一身份验证信息验证失败。
38.第四方面,提供了一种访问控制方法,所述方法包括:第二设备向运行于强制加载模式的第一设备发送第一公钥的公钥标识。第一设备
根据第一公钥的公钥标识,利用第一公钥对第一设备的设备信息进行加密,得到第一数据,将第一数据和第一公钥的公钥标识发送给第二设备,设备信息至少包括设备标识。第二设备接收第一数据,将第一数据和第一公钥的公钥标识发送给第三设备。第三设备利用第一公钥对应的第一私钥对第一数据进行解密,得到解密数据,利用第二私钥对解密数据进行签名,得到签名信息,将签名信息和第二私钥对应的第二公钥的公钥标识发送给第二设备。第二设备将签名信息和第二公钥的公钥标识发送给第一设备。第一设备根据第二公钥的公钥标识,利用第二公钥对签名信息进行校验,根据校验结果,对第一设备的访问操作进行响应。
39.也即是,第一设备可以先对第二设备进行鉴权,再根据鉴权结果对第二设备的访问操作进行响应。比如,在鉴权成功的情况下响应第一设备的访问操作,在鉴权失败的情况下拒绝访问第一设备的访问操作。如此,即便非法人员通过非法方式操作第一设备进入edl模式,第一设备也只有在对第二设备鉴权通过的情况下才会对第二设备的访问操作进行响应,避免了非法人员通过利用第一设备的edl模式获取、篡改终端设备中的数据,提高了第一设备的安全性。而且,鉴权过程中不需要在设备之间传输公钥,而是传输公钥标识,且第一设备和第二设备并不存储签名信息的私钥,提高了数据安全性。
40.在一些实施例中,第二设备将第一数据和第一公钥的公钥标识发送给第三设备之前,第二设备还可以获取操作者的第一身份验证信息,然后将第一数据、第一公钥的公钥标识以及第一身份验证信息发送给第三设备。第三设备接收到第一数据、第一公钥的公钥标识以及第一身份验证信息后,先对第一身份验证信息进行验证,若验证成功,则执行利用第一公钥对应的第一私钥对第一数据进行解密的步骤。
41.此外,若验证失败,则第三设备向第二设备发送第二指示信息,以提示第一身份验证信息验证失败。第二设备接收第二指示信息后,根据第二指示信息,发出提示信息,以提示操作者重新输入身份验证信息。然后,第二设备获取操作者输入的第二身份验证信息,将第一数据、第一公钥的公钥标识以及第二身份验证信息发送给第三设备,由第三设备对第二身份验证信息进行验证,若验证成功,则执行利用第一公钥对应的第一私钥对第一数据进行解密的步骤。
42.在一些实施例中,第二设备向第一设备发送第一公钥的公钥标识之前,第二设备还可以先向第一设备发送鉴权指令,该鉴权指令用于指示第一设备检测第一设备是否需要进行访问鉴权。第一设备接收鉴权指令,若确定第一设备需要进行访问鉴权,则向第二设备发送第一指示信息,第一指示信息用于指示第一设备需要进行访问鉴权。第二设备根据第一指示信息,执行向第一设备发送第一公钥的公钥标识的步骤。
43.此外,若确定第一设备不需要进行访问鉴权,第一设备还可以直接对第二设备的访问操作进行响应。或者,若确定第一设备不需要进行访问鉴权,第一设备向第二设备发送第四指示信息,第四指示信息用于指示第一设备不需要进行访问鉴权。第二设备根据第四指示信息,不向第一设备发送第一公钥的公钥标识,而是直接对第一设备进行访问。
44.第五方面,提供了一种访问控制装置,所述访问控制装置具有实现上述第一方面中访问控制方法行为的功能。所述访问控制装置包括至少一个模块,所述至少一个模块用于实现上述第一方面所提供的访问控制方法。
45.第六方面,提供了一种访问控制装置,所述访问控制装置的结构中包括处理器和
存储器,所述存储器用于存储支持访问控制装置执行上述第一方面所提供的访问控制方法的程序,以及存储用于实现上述第一方面所述的访问控制方法所涉及的数据。所述处理器被配置为用于执行所述存储器中存储的程序。所述访问控制装置还可以包括通信总线,所述通信总线用于在所述处理器与所述存储器之间建立连接。
46.第七方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有指令,当其在计算机上运行时,使得计算机执行上述第一方面所述的访问控制方法。
47.第八方面,提供了一种包含指令的计算机程序产品,当其在计算机上运行时,使得计算机执行上述第一方面所述的访问控制方法。
48.上述第二方面、第三方面、第四方面、第五方面、第六方面、第七方面和第八方面所获得的技术效果与上述第一方面中对应的技术手段获得的技术效果近似,在这里不再赘述。
附图说明
49.图1是相关技术提供的一种笔记本电脑20通过手机10的edl模式访问手机10的交互过程示意图;图2是本技术实施例提供的一种包括edl模式保护电路的终端设备的示意图;图3是本技术实施例提供的一种通过edl模式对手机10进行手机版本加载的场景示意图;图4是根据本技术实施例提供的一种版本加载工具的操作界面示意图;图5是根据本技术实施例提供的另一种版本加载工具的操作界面示意图;图6是根据本技术实施例提供的又一种版本加载工具的操作界面示意图;图7是根据本技术实施例提供的又一种版本加载工具的操作界面示意图;图8是根据本技术实施例提供的又一种版本加载工具的操作界面示意图;图9是根据本技术实施例提供的又一种版本加载工具的操作界面示意图;图10是根据本技术实施例提供的又一种版本加载工具的操作界面示意图;图11是根据本技术实施例提供的又一种版本加载工具的操作界面示意图;图12是本技术实施例提供的一种访问控制方法的交互过程示意图;图13是本技术实施例提供的一种检测手机10是否需要进行访问鉴权的流程示意图;图14是本技术实施例提供的另一种访问控制方法的交互过程示意图;图15是相关技术提供的手机版本加载过程和本技术实施例提供的手机版本加载过程的对比示意图;图16是本技术实施例提供的一种终端设备100的结构示意图;图17是本技术实施例提供的一种电子设备的结构示意图。
具体实施方式
50.为使本技术的目的、技术方案和优点更加清楚,下面将结合附图对本技术的实施方式作进一步地详细描述。
51.应当理解的是,本技术提及的“多个”是指两个或两个以上。在本技术的描述中,除
非另有说明,“/”表示或的意思,比如,a/b可以表示a或b;本文中的“和/或”仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,比如,a和/或b,可以表示:单独存在a,同时存在a和b,单独存在b这三种情况。另外,为了便于清楚描述本技术的技术方案,采用了“第一”、“第二”等字样对功能和作用基本相同的相同项或相似项进行区分。本领域技术人员可以理解“第一”、“第二”等字样并不对数量和执行次序进行限定,并且“第一”、“第二”等字样也并不限定一定不同。
52.可以理解,本技术技术方案中对数据的获取、存储、使用、处理等均符合国家法律法规的相关规定。
53.为了便于理解,首先介绍通过edl模式访问终端设备的过程。
54.可以理解,终端设备可以是具有edl模式的任意终端设备,包括但不限于手机、膝上型计算机、台式计算机、智能电视、智能音箱、平板计算机、可穿戴设备、头戴式显示器、移动电子邮件设备、便携式游戏机、便携式音乐播放器、阅读器设备等,在此不做限定。
55.可以理解,访问终端设备的主机设备可以是能够与终端设备进行通信的任意电子设备,包括但不限于手机、膝上型计算机、智能电视、智能音箱、平板计算机、台式计算机、服务器等,在此不做限定。
56.为便于描述,以下以终端设备为手机10、访问终端设备的主机设备为笔记本电脑20为例进行介绍。
57.具体地,图1是相关技术提供的一种笔记本电脑20通过手机10的edl模式访问手机10的交互过程示意图。
58.步骤101:手机10进入edl模式。
59.在一些实施例中,手机10在检测到edl模式保护电路有效,例如手机10检测到图2所示的短接端子s1和短接端子s2已导通时,手机10在edl模式下与主机设备进行通信的通信端口有效,在手机10已连接到其他电子设备(例如笔记本电脑20)的情况下,手机10进入edl模式。
60.例如,维修人员可以拆开手机10的外壳,用导线将短接端子s1和短接端子s2连接后,短接端子s1和短接端子s2导通,使得edl模式保护电路有效。
61.可以理解,在另一些实施例中,手机10也可以通过其他方式进入edl模式,本技术实施例不做限定。
62.步骤102:手机10与笔记本电脑20建立通信连接。
63.在一些实施例中,手机10进入edl模式并连接到笔记本电脑20后,笔记本电脑20可以通过笔记本电脑20上的第一应用程序与手机10建立通信连接。
64.可以理解,在一些实施例中,第一应用程序是根据手机10在edl模式下的访问逻辑,由手机10的开发商或手机10的处理器的开发商提供的应用程序。
65.笔记本电脑20可以利用第一应用程序,通过预设的通信协议,例如sahara协议、firehose协议等,与笔记本电脑20建立通信连接。其中,sahara协议、firehose协议是由高通tm开发的、终端设备在edl模式与主机设备进行通信的通信协议。
66.在手机10进行edl模式,并与笔记本电脑20建立通信连接后,笔记本电脑20即可对手机10进行访问操作。其中,访问操作包括但不限于读取/写入/修改/删除/备份手机10中的镜像、读取/写入/修改/删除/备份手机10中的用户数据等。
67.接下来,以笔记本电脑20向手机10进行手机版本加载的场景为例,对笔记本电脑20访问手机10的过程进行说明。手机版本加载一般分为两个阶段:小系统加载阶段和fastboot 加载阶段。现有技术中,手机10在完成小系统加载之后,可以自动进入fastboot 加载模式进行第二阶段的版本加载。
68.作为一个示例,在小系统加载阶段,笔记本电脑20可以向手机10写入第一镜像文件,手机10通过加载第一镜像文件完成小系统加载。在fastboot 加载阶段,笔记本电脑20可以向手机10写入第二镜像文件,手机10通过加载第二镜像文件完成fastboot 加载。第一镜像文件和第二镜像文件均为手机版本加载对应的镜像文件中的部分子文件。
69.步骤103:笔记本电脑20向手机10发送第一镜像文件。
70.笔记本电脑20在与手机10建立通信连接后,可以通过预设的通信协议,例如前述sahara、firehose协议等,将第一镜像文件发送给手机10。
71.第一镜像文件为手机10在小系统加载阶段加载的镜像文件。第一镜像文件可以由手机10的开发商或手机10的处理器的开发商提供。
72.在一些实施例中,笔记本电脑20可以在检测到版本加载指令时,向手机10发送第一镜像文件。比如,笔记本电脑20安装有版本加载工具,操作者可以调用版本加载工具,在版本加载工具中输入加载命令来触发版本加载指令。当然,版本加载指令也可以通过其他方式触发,本技术实施例对此不做限定。
73.其中,版本加载工具是指用于对手机10进行版本加载的软件,可以由手机10的开发商或手机10的处理器的开放商提供。例如,版本加载工具为上述第一应用程序,或者为上述第一应用程序之外的其他应用程序或代码等。
74.步骤104:手机10加载第一镜像文件。
75.手机10在接收到第一镜像文件后,加载第一镜像文件。在第一镜像文件加载完成后,手机10完成小系统加载。
76.在一些实施例中,手机10在接收到第一镜像文件后,还可以先校验第一镜像文件的签名信息,并在校验通过后加载第一镜像文件。
77.步骤105:笔记本电脑20向手机10发送第二镜像文件。
78.在检测到手机10完成小系统加载后,笔记本电脑20可以向手机发送第二镜像文件,以便手机10通过加载第二镜像文件完成fastboot加载。
79.在一些实施例中,手机10对第一镜像文件加载完成后,向笔记本电脑20发送完成响应。笔记本电脑20在接收到手机10发送的完成响应后,确定手机10完成小系统加载,向手机10发送第二镜像文件。
80.步骤106:手机10加载第二镜像文件。
81.手机10在接收第二镜像文件后,加载第二镜像文件。在第二镜像文件加载完成后,手机10完成fastboot加载。
82.通过前述笔记本电脑20访问手机10的过程可知,在手机10进入edl模式后,笔记本电脑20即可对手机10进行访问操作。这种情况下,非法人员可以通过edl模式获取、篡改终端设备中的数据,影响用户的数据安全和设备安全。比如,非法人员可以通过edl模式,使用手机10的供应商或手机10的处理器的供应商提供的版本加载工具,完整替换手机10的手机版本。由于版本加载工具和手机10的版本文件均有泄露的风险,因此将导致手机10被恶意
灌装、擦除的风险较大。手机10被灌装后,系统稳定性会遭到破坏,自有应用可能被替换,造成一定的经济损失。
83.为了提高edl模式下终端设备中数据的安全性,在一些实施例中,终端设备的开发人员通过在终端设备的主板上设置edl模式保护电路,只有在该保护电路有效的情况下,终端设备才能够进入edl模式。例如,请参考图2,手机10的主板12上设置有短接端子s1和短接端子s2,只有在短接端子s1和短接端子s2导通的情况下,例如用导线连接短接端子s1和短接端子s2后,手机10在edl模式下与其他电子设备的通信端口,例如9008端口才处于可用状态,进而其他电子设备才能通过该端口与手机10进行通信。如此,非法人员要通过edl模式获取、篡改手机10中的数据,需要先拆开手机10的外壳11,再导通短接端子s1和短接端子s2,虽然增加了非法人员通过edl模式获取、篡改手机10中的数据的难度,但当非法人员通过试错等方式获取到短接端子s1和短接端子s2的具体位置后,依然可以获取、篡改手机10中的数据。
84.此外,在一些实施例中,笔记本电脑20还可以向手机10发送第一镜像文件的签名信息,手机10接收到第一镜像文件的签名信息后,需要先校验第一镜像文件的签名信息,在校验通过后再加载第一镜像文件。但是这种方式下,第一镜像文件的签名文件泄漏后,非法人员仍然可以根据第一镜像文件及第一镜像文件的签名文件,通过edl模式来获取、篡改终端设备中的数据,影响手机10的数据安全和设备安全。
85.为了解决上述问题,本技术实施例提供了一种终端设备的访问控制方法。该控制方法中,终端设备先对主机设备进行鉴权,在鉴权成功的情况下,才能响应第一设备的访问操作,在鉴权失败的情况下,则拒绝响应第一设备的访问操作。
86.其中,鉴权过程包括:主机设备向终端设备发送第一公钥的公钥标识。终端设备根据第一公钥的公钥标识,利用第一公钥对终端设备的设备信息进行加密,得到第一数据,将第一数据发送给主机设备。主机设备将第一数据和第一公钥的公钥标识发送给签名设备。签名设备利用第一公钥对应的第一私钥对第一数据进行解密,得到终端设备的设备信息,然后利用第二私钥对终端设备的设备信息进行签名,得到签名信息,将签名信息和第二私钥对应的第二公钥的公钥标识发送给主机设备,再由主机设备发送给终端设备。终端设备根据第二公钥的公钥标识,利用第二公钥对签名信息进行校验,根据校验结果对主机设备的访问操作进行响应。其中,签名设备是在终端设备和主机设备之外增加的具有解密和签名功能的电子设备。
87.如此,即便非法人员通过试错等方式获取到短接端子s1和短接端子s2的具体位置,通过导通短接端子s1和短接端子s2使得终端设备进入edl模式,终端设备也只有在对主机设备鉴权通过的情况下才会对主机设备的访问操作进行响应,避免了非法人员通过利用终端设备的edl模式获取、篡改终端设备中的数据,提高了终端设备的安全性。而且,鉴权过程中不需要在设备之间传输公钥,而是传输公钥标识,且主机设备和终端设备并不存储签名的私钥,只在签名设备中存储私钥,提高了数据安全性。
88.其中,签名设备是指在终端设备和主机设备之外增加的第三设备,比如服务器等。签名设备具有解密和签名功能。此外,签名设备还具有身份验证功能。
89.在一些实施例中,在主机设备将第一数据和第一公钥的公钥标识发送给签名设备之前,主机设备还可以获取用户输入的身份验证信息,将第一数据、第一公钥的公钥标识和
身份验证信息发送给签名设备。签名设备先对身份验证信息进行验证,在验证成功的情况下,利用第一公钥对应的第一私钥对第一数据进行解密。在验证失败的情况下,则向主机设备发送用于指示身份验证信息验证失败的指示信息,主机设备根据该指示信息发生提示信息,以提示操作者重新输入身份验证信息,然后获取操作者重新输入的身份验证信息,将第一数据、第一公钥的公钥标识和操作者重新输入的身份验证信息发送给签名设备,由签名设备对身份验证信息重新进行验证,在验证成功的情况下,利用第一公钥对应的第一私钥对第一数据进行解密。
90.进一步地,在身份验证成功的情况下,签名设备还可以进一步验证操作者的操作权限,在操作权限验证成功的情况下,再执行利用第一公钥对应的第一私钥对第一数据进行解密的步骤。在操作权限验证失败的情况下,则向主机设备发送用于指示操作权限验证失败的指示信息,以指示主机设备重新获取操作者输入的身份验证信息。
91.也即是,鉴权过程中还对主机设备的操作者的身份进行了验证,只有身份验证成功的情况下,签名设备才会对第一数据进行解密,以及对解密得到的终端设备的设备信息进行签名。如此,可以判断主机设备的操作者的合法性,仅在操作者合法的情况下才允许操作。此外,在身份验证成功的情况下,还可以进一步验证操作者的操作权限,只有身份验证成功且操作权限验证成功的情况下,签名设备才会对第一数据进行解密,以及对解密得到的终端设备的设备信息进行签名。如此,在判断操作者合法性的同时,还能够判断操作者的操作权限的合法性,在判断操作者合法性的同时收缩了操作权限,极大地减少了内部人员违规操作导致的风险。
92.图3是本技术实施例提供的一种通过edl模式对手机10进行手机版本加载的场景示意图。请参考图3,操作者将手机10与笔记本电脑20通过usb线连接。手机10的主板上设置有短接端子s1和短接端子s2,操作者用导线连接短接端子s1和短接端子s2后,手机10在edl模式下与笔记本电脑20的通信端口有效,进而笔记本电脑20可以通过该通信端口与手机10进行通信。
93.在手机10进入edl模式后,操作者调用笔记本电脑20安装的版本加载工具。请参考图4,图4是根据本技术实施例提供的一种版本加载工具的操作界面示意图。如图4所示,响应于操作者的调用操作,笔记本电脑20启动版本加载工具,显示版本加载工具的操作界面,操作界面显示有功能列表以及输入提示信息“请输入功能编号:”。其中,功能列表包括:“0:退出工具;1:加载版本”,用于提示用户输入1进入加载模式,输入0退出工具。
94.请参考图5,在操作者在操作界面输入功能编号1后,操作界面显示输入提示信息“请输入版本所在路径:_”。版本所在路径是指待加载的手机版本对应的镜像文件的文件路径。在操作者在操作界面输入版本所在路径“d:/nn/version”后,笔记本电脑20根据路径“d:/nn/version”获取待加载的手机版本对应的镜像文件,根据该镜像文件控制手机10进行小系统加载。比如,笔记本电脑20从手机10版本对应的镜像文件获取用于加载小系统的第一镜像文件,将第一镜像文件发送给手机10,由手机10通过加载第一镜像文件,实现小系统加载。在手机10加载第一镜像文件的过程中,笔记本电脑20可以在操作界面显示小系统加载提示信息“初始文件加载中,请稍后”,以及加载进度条。应理解,若操作者在操作界面输入功能编号0,则笔记本电脑20自动退出版本加载工具。
95.请参考图6,在手机10完成小系统加载后,比如加载进度条指示的加载进度为100%
时,笔记本电脑20向手机10发送鉴权指令(图3所示步骤

),手机10根据鉴权指令检测手机10是否需要进行访问鉴权,将检测结果发送给笔记本电脑20(图3所示步骤

)。若检测结果指示手机10不需要进行访问鉴权,则笔记本电脑20的版本加载工具的操作界面显示如下提示信息:“加载已完成,数据已返回设备为研发设备,无需鉴权,请等待手机进入fastboot请按任意键继续..._”应理解,操作界面也可以显示其他提示信息,以提示手机10不需要进行访问鉴权,本技术实施例不做限定。
96.另外,若检测结果指示手机10需要进行访问鉴权,则笔记本电脑20向手机10发送公钥a的身份标识号(identity document,id )(图3所示步骤

),由手机10根据公钥a的id 获取公钥a,利用公钥a对手机10的设备信息进行加密,比如对手机10的设备标识和熔丝标记进行加密,得到第一数据(图3所示步骤

),将第一数据发送给笔记本电脑20(图3所示步骤

)。此外,笔记本电脑20还需要操作者输入身份验证信息,比如用户账号和密码等。例如,请参考图7,操作界面显示如下输入提示信息:“加载已完成,数据已返回请输入您的身份账号:_”请参考图8,操作者在操作界面输入身份账号:zs123456后,操作界面继续显示输入提示信息“请输入您的登录密码:_”。操作者输入登录密码:123后,笔记本电脑20将第一数据、公钥a的id 和操作者输入的身份验证信息(身份账号:zs123456和登录密码:123)发送给服务器30(图3所示步骤

)。服务器30先对身份验证信息进行验证。若验证成功,则利用公钥a对应的私钥b对第一数据进行解密,得到手机10的设备信息,然后利用私钥c对手机10的设备信息进行签名,得到签名信息,将签名信息和私钥c对应的公钥d的id 发送给笔记本电脑20(图3所示步骤

),再由笔记本电脑20发送给手机10(图3所示的步骤

),以便手机10利用公钥d对签名信息进行校验(图3所示的步骤

),将校验结果返回给笔记本电脑20。在此过程中,笔记本电脑20可以显示如下提示信息:“与服务器通信中通信完成登录成功数据下发校验中”请参考图9,若校验结果指示校验成功,表示手机10鉴权成功,手机10自动进入fastboot加载模式(图3所示的步骤

),笔记本电脑20显示如下提示信息:“校验完成校验成功手机鉴权成功,请等待手机进入fastboot请按任意键继续...”请参考图10,若校验结果指示校验失败,表示手机10鉴权失败,手机10拒绝进入fastboot加载模式,停留在小系统加载模式(图3所示的步骤

),笔记本电脑20显示如下提示信息:“校验完成校验失败手机鉴权失败,点击任意键退出请按任意键退出...”此外,请参考图11,若服务器30对身份账号“zs123456”和登录密码“123”进行验证的验证结果为验证失败,服务器30向笔记本电脑20发送用于指示身份验证信息验证失败的指示信息,笔记本电脑20可以根据该指示信息提示操作者重新输入身份验证信息,以便笔记本电脑20获取操作者重新输入的身份验证信息,将第一数据、公钥a的id 和操作者重新输入的身份验证信息发送给服务器30,重复上述鉴权过程。比如笔记本电脑20显示如下提示信息:“登录错误,请重试请输入您的身份账号:”接下来,对本技术实施例提供的访问控制方法的技术方案进行详细说明。
97.图12是本技术实施例提供的一种访问控制方法的交互过程示意图,如图9所示,该交互过程包括如下步骤:步骤1201:手机10进入edl模式。
98.例如,手机10在检测到edl模式保护电路有效,例如检测到图2所示的短接端子已导通,并已连接到主机设备(例如笔记本电脑20)的情况下,进入edl模式。
99.又例如,手机10在检测到预设的按键组合(例如手机10的音量增加按键、音量减小按键和电源按键中的多个按键)已经按下的情况下,进入edl模式。
100.再例如,手机10在检测到预设的进入edl模式的指令后,进入edl模式。
101.可以理解,在另一些实施例中,手机10也可以通过其他方式进入edl模式,本技术实施例不做限定。
102.步骤1202:手机10和笔记本电脑20建立通信连接。
103.手机10进入edl模式并连接到笔记本电脑20后,通过预设的通信协议建立通信连接。
104.在一些实施例中,手机10进入edl模式并连接到笔记本电脑20后,笔记本电脑20可以通过笔记本电脑20上的第一应用程序与手机10建立通信连接。
105.其中,第一应用程序是根据手机10在edl模式下的访问逻辑,由手机10的开发商或手机10的处理器的开发商提供的应用程序。笔记本电脑20可以利用第一应用程序,通过预设的通信协议,例如sahara协议、firehose协议等,与笔记本电脑20建立通信连接。
106.本技术实施例中,在手机10进行edl模式,并与笔记本电脑20建立通信连接后,在笔记本电脑20对手机10进行访问操作之前,笔记本电脑20先指示手机10对笔记本电脑20进行鉴权,手机10在对笔记本电脑20鉴权成功时,才允许笔记本电脑20对手机10的访问操作,否则拒绝笔记本电脑20的访问操作。
107.接下来,将以鉴权过程包括如下步骤1203-步骤1211为例进行说明。
108.步骤1203:笔记本电脑20向手机10发送鉴权指令。
109.其中,该鉴权指令用于指示手机10检测自身是否需要进行访问鉴权。
110.例如,在笔记本电脑20向手机10进行手机版本加载的场景中,笔记本电脑20可以
在手机10完成小系统加载后,向手机10发送鉴权指令。
111.步骤1204:手机10根据该鉴权指令,检测手机10是否需要进行访问鉴权。
112.手机10接收到笔记本电脑20发送的鉴权指令后,可以先检测手机10是否进行访问鉴权。若需要进行访问鉴权,则跳转至步骤1205,以进入鉴权流程。若不需要进行访问鉴权,则可以跳过鉴权流程,直接响应笔记本电脑20对手机10的访问操作。
113.其中,手机10可以在满足预设条件时需要进行访问鉴权。预设条件包括如下条件中的一种或多种:手机10为已熔丝设备;手机10已解锁数据访问权限。
114.其中,已熔丝设备是指终端设备的处理器中的熔丝已经熔断,处理器中的至少部分数据处于不可读/写的状态,说明该终端设备已具备交付给用户使用的条件或已在用户手中。未熔丝设备是指终端设备的处理器中的熔丝未熔断,处理器中的至少部分数据处于可读/写状态,说明终端设备还不具备交付给用户使用的条件,可能是处于研发阶段的研发设备。
115.其中,数据访问权限是指允许其他设备访问手机10的权限,比如数据访问权限可以为加载权限,加载权限是指允许其他设备向手机10写入数据的权限。手机10的数据访问权限已解锁的情况下,手机10或处理器中的部分数据可被更改,说明手机10还不具备交付给用户使用的条件,可能是处于研发阶段的研发设备。手机10的数据访问权限未解锁的情况下,手机10或处理器中的部分数据不可更改,说明手机10已具备交付给用户使用的条件或已在用户手中。
116.因此,在手机10为已熔丝设备的情况下,和/或,手机10未解锁数据访问权限的情况下,手机10可能存储有手机10的用户或手机10的开发商的相关数据,若直接允许主机设备访问手机10,可能造成手机10中的数据泄漏或被篡改。因此,在手机10为已熔丝设备的情况下,和/或,手机10未解锁数据访问权限的情况下,可以确定手机10需要进行访问鉴权。
117.作为一个示例,请参考图13,检测手机10是否需要进行访问鉴权的操作可以包括如下步骤:(1)检测手机10是否为已熔丝设备。
118.作为一个示例,手机10可以获取手机10的熔丝标记,根据该熔丝标记检测手机10是否为已熔丝设备。其中,熔丝标记可以用于指示手机10是否为已熔丝设备。
119.比如,熔丝标记可以为熔丝位。在熔丝位的数据中至少一个数据不为0的情况下,确定手机为已熔丝设备。在熔丝位的数据全为0的情况下,确定手机10不是已熔丝设备。
120.若手机10为已熔丝设备,则跳转至下述步骤(2)。若手机10不是已熔丝设备,则跳转至步骤(4)。
121.(2)检测手机10的数据访问权限是否已解锁。
122.作为一个示例,可以通过相关软件代码检测手机10的数据访问权限是否已解锁。
123.若手机10的数据访问权限未解锁,则确定手机10需要进行访问鉴权,并跳转至下述步骤(3)。若手机10的数据访问权限已解锁,则确定手机10不需要进行访问鉴权,并跳转至步骤(4)。
124.(3)进入鉴权流程。
125.也即是,手机10和笔记本电脑20执行下述步骤1205-步骤1215。
126.(4)跳过鉴权流程。
127.也即是,手机10可以跳过鉴权流程,直接响应笔记本电脑20的访问操作,比如可以直接进入fastboot加载模式。
128.步骤1205:手机10向笔记本电脑20发送检测结果,该检测结果用于指示手机10是否需要进行访问鉴权。
129.步骤1206:若检测结果指示手机10需要进行访问鉴权,则笔记本电脑20向手机10发送第一公钥的公钥标识。
130.其中,第一公钥的公钥标识用于指示第一公钥,可以为第一公钥的名称、编号、id 或地址等,本技术实施例对此不做限定。
131.在一些实施例中,笔记本电脑20可以从已存储的公钥库中获取第一公钥的公钥标识,公钥库存储有多个公钥的公钥标识。比如,笔记本电脑20可以随机从公钥库中获取一个公钥的公钥标识作为第一公钥的公钥标识,也可以按照特定规则从公钥库中获取一个公钥的公钥标识作为第一公钥的公钥标识,本技术实施例对此不做限定。
132.在一些实施例中,笔记本电脑20可以从云端获取第一公钥的公钥标识。比如,笔记本电脑20向服务器发送获取请求,以请求从服务器获取一个公钥的公钥标识作为第一公钥的公钥标识。
133.此外,若检测结果指示手机10需要进行访问鉴权,则笔记本电脑20和手机10可以跳过步骤1206-步骤1213的鉴权流程,笔记本电脑20可以直接对手机10进行访问,手机10可以直接响应笔记本电脑20的访问操作。
134.步骤1207:手机10根据第一公钥的公钥标识,利用第一公钥对手机10的设备信息进行加密,得到第一数据,设备信息至少包括设备标识。
135.其中,设备标识可以为手机10的移动设备识别码、序列号(serial number,sn)、国际移动设备身份码、版本号,以及手机10的处理器的序列号和芯片识别码中的一种或多种。此外,设备信息还可以包括熔丝标记等其他信息,熔丝标记用于指示手机10是否为已熔丝设备。
136.手机10接收到笔记本电脑20发送的第一公钥的公钥标识后,可以根据第一公钥的公钥标识获取第一公钥,然后利用第一公钥对手机10的设备信息进行加密。
137.比如,手机10可以根据第一公钥的公钥标识确定第一公钥的地址,根据第一公钥的地址获取第一公钥。示例地,手机10存储有多个公钥,不同的公钥存储在不同的地址中,且手机10存储有公钥标识与公钥地址的对应关系。手机10可以根据第一公钥的公钥标识,从公钥标识与公钥地址的对应关系中确定第一公钥的地址,从第一公钥的地址读取第一公钥。
138.作为一个示例,若手机10的设备信息包括多个参数,可以先对多个参数进行拼接,得到拼接数据,或者,将多个参数和随机值进行拼接,得到拼接数据。然后,再利用第一公钥对拼接数据进行加密,得到第一数据。
139.比如,可以将多个参数进行连接,得到拼接数据。或者,将多个参数与随机值进行连接,得到拼接数据。
140.在一些实施例中,手机10包括富执行环境(rich execution environment,ree)和可信执行环境(trusted execution environment,tee)。ree接收笔记本电脑20发送的第一公钥的公钥标识,将第一公钥的公钥标识发送给tee。tee根据第一公钥的公钥标识获取第
一公钥,利用第一公钥对第一设备的设备信息进行加密,得到第一数据。
141.其中,ree是所有移动设备通用的环境,运行通用的操作系统(operating system, os),例如安卓(android ),ios 系统等。tee通常用来执行安全性较高的行为,比如进行数字版权管理(digital rights management,drm)、移动支付和敏感数据保护等。
142.如此,公钥获取和数据加密过程均在tee侧中进行,手机10的ree侧只得到加密结果,不传输公钥,极大地提高了数据的安全性。
143.比如,tee中存储有多个公钥,不同的公钥存储在不同的地址中,且tee存储有公钥标识与公钥地址的对应关系。tee可以根据第一公钥的公钥标识,从公钥标识与公钥地址的对应关系中确定第一公钥的地址,从第一公钥的地址读取第一公钥。
144.作为一个示例,tee os中存储有多个公钥,手机10可以在tee os中根据第一公钥的标识获取第一公钥,利用第一公钥对手机10的设备信息进行加密,得到第一数据。比如,在tee os中根据第一公钥的公钥标识确定第一公钥的地址,根据第一公钥的地址从tee os读取第一公钥。
145.步骤1208:手机10将第一数据发送给笔记本电脑20。
146.在一些实施例中,手机10将第一数据和第一公钥的公钥标识进行拼接,得到第二数据,将第二数据发送给笔记本电脑20。
147.比如,将第一数据和第一公钥的公钥标识进行连接,得到第二数据。或者,将第一数据和第一公钥的公钥标识进行连接,在第一数据和第一公钥的公钥标识之间添加第一字符串,得到第二数据。第一字符串可以预先设置,第一字符串包括一个或多个字符。比如,第一字符串为“##”。
148.在一些实施例中,手机10包括ree和tee。tee将第一数据发送给ree,再由ree将第一数据发送给笔记本电脑20。作为一个示例,tee将第一数据和第一公钥的公钥标识进行拼接,得到第二数据,将第二数据发送给ree,再由ree将第二数据发送给笔记本电脑20。
149.步骤1209:笔记本电脑20将第一数据和第一公钥的公钥标识发送给服务器30。
150.在一些实施例中,笔记本电脑20可以将第一数据和第一公钥的公钥标识以数据拼接的形式发送给服务器30。
151.比如,手机10将第二数据发送给笔记本电脑20,笔记本电脑20接收到第二数据后,将第二数据转发给服务器30。或者,手机10将第一数据发送给笔记本电脑20,笔记本电脑20将第一数据和第一公钥的公钥标识进行拼接,得到第二数据,将第二数据发送给服务器30。
152.另外,笔记本电脑20还可以获取操作者输入的第一身份验证信息,将第一数据、第一公钥的公钥标识和第一身份验证信息发送给服务器30。
153.其中,身份验证信息用于对操作者进行身份验证,即验证操作者是否具有对手机10进行访问操作的权限。比如,身份验证信息可以包括用户账号和密码,当然也可以包括用于进行身份验证的其他身份验证信息。
154.比如,笔记本电脑20可以显示输入提示信息,该输入提示信息用于提示操作者输入身份验证信息。操作者可以根据该输入提示信息,在笔记本电脑20输入第一身份验证信息。示例地,请参考图7,笔记本电脑20可以在版本加载工具的操作界面中显示输入提示信息“请输入您的身份账号:_”,在操作者输入身份账号后,继续显示输入提示信息“请输入您的登录密码:_”。
155.作为一个示例,若笔记本电脑20接收到手机10发送的第一数据,或者接收到手机10发送的第一数据和第一公钥的公钥标识,则笔记本电脑20可以将第一数据、第一公钥的公钥标识和第一身份验证信息进行拼接,得到第三数据,将第三数据发送给服务器30。
156.比如,笔记本电脑20可以将第一身份验证信息、第一公钥的公钥标识和第一数据进行连接,得到第三数据。或者,将第一身份验证信息、第一公钥的公钥标识和第一数据进行连接,在第一身份验证信息和第一公钥的公钥标识之间添加第二字符串,在第一公钥的公钥标识和第一数据之间添加第一字符串,将添加字符串后的数据作为第三数据。第二字符串可以预先设置,第二字符串包括一个或多个字符,比如第二字符串为“@”。
157.作为另一个示例,若笔记本电脑20接收到手机10发送的第二数据,则笔记本电脑20可以将第二数据和第一身份验证信息进行拼接,得到第三数据,将第三数据发送给服务器30。
158.比如,笔记本电脑20可以将第一身份验证信息和第二数据进行连接,得到第三数据。或者将第一身份验证信息和第二数据进行连接,在第一身份验证信息和第二数据之间添加第二字符串,得到第三数据。
159.步骤1210:服务器30利用第一公钥对应的第一私钥对第一数据进行解密,得到解密数据,利用第二私钥对解密数据进行签名,得到签名信息。
160.其中,第一公钥与第一私钥是一对密钥对,利用第一公钥进行加密的数据可以利用第一私钥进行解密。第二私钥是第一私钥之外的其他私钥。
161.服务器30可以根据第一公钥的公钥标识,获取第一公钥对应的第一私钥,然后利用第一私钥对第一数据进行解密。比如,服务器30存储有多个公钥对应的私钥,服务器30可以根据第一公钥的公钥标识,从存储的多个公钥对应的私钥中获取第一公钥对应的第一私钥。当然,服务器30也可以通过其他方式获取第一公钥对应的第一私钥,比如通过云端或其他设备获取第一公钥对应的第一私钥,本技术实施例对此不做限定。
162.服务器30利用第一公钥对应的第一私钥对第一数据进行解密,可以得到手机10的设备信息。然后,可以获取第二私钥,利用第二私钥对手机10的设备信息进行签名,得到签名信息。
163.在一些实施例中,服务器30可以从已存储的私钥库中获取第二私钥,私钥库中存储有多个私钥。比如,服务器30可以随机从私钥库中获取一个私钥作为第一私钥,也可以按照特定规则从私钥库中获取一个私钥作为第一私钥,本技术实施例对此不做限定。
164.在笔记本电脑20向服务器30发送第一数据、第一公钥的公钥标识和第一身份验证信息的情况下,服务器30接收到笔记本电脑20发送的第一数据、第一公钥的公钥标识和第一身份验证信息后,先对第一身份验证信息进行验证。若验证成功,则执行利用第一公钥对应的第一私钥对第一数据进行解密,得到手机10的设备信息,利用第二私钥对手机10的设备信息进行签名,得到签名信息的步骤。
165.另外,若验证失败,则向笔记本电脑20发送第二指示信息,第二指示信息用于指示第一身份验证信息验证失败。笔记本电脑20接收到第二指示信息后,根据第二指示信息发出提示信息,该提示信息用于提示用户重新输入身份验证信息。然后,笔记本电脑20获取用户重新输入的第二身份验证信息,将第一数据、第一公钥的公钥标识和第二身份验证信息发送给服务器30,由服务器30对第二身份验证信息进行验证,若验证成功,则执行利用第一
公钥对应的第一私钥对第一数据进行解密,得到手机10的设备信息,利用第二私钥对手机10的设备信息进行签名,得到签名信息的步骤。若验证失败,则向笔记本电脑20发送第三指示信息,第三指示信息用于指示第二身份验证信息验证失败,循环往复。
166.作为一个示例,若服务器30接收到笔记本电脑20发送的第三数据,第三数据是由第一数据、第一公钥的公钥标识和第一身份验证信息进行拼接得到,或者由第二数据和第一身份验证信息进行拼接得到,服务器30可以先从第三数据中读取第一身份验证信息,然后对第一身份验证信息进行验证。
167.作为一个示例,对第一身份验证信息进行验证的操作可以包括:将第一身份验证信息与已存储的身份信息库中的身份验证信息进行比较,身份信息库中存储有合法的多个身份验证信息。若身份信息库存在第一身份验证信息,则确定验证成功,若身份信息库不存在第一身份验证信息,则确定验证失败。
168.其中,第二指示信息为笔记本电脑20和服务器30预先协商的信息,比如第二指示信息可以为特定数据,若笔记本电脑20接收到特定数据,则确定第一身份验证信息验证失败。
169.应理解,第二身份验证信息以及其他身份验证信息的验证过程,与上述第一身份验证信息的验证过程同理,本技术实施例在此不再赘述。
170.通过对操作者的身份验证信息进行验证,可以判断操作者身份是否合法,从而提高操作安全性,减少内部人员违规操作导致的风险。
171.此外,在对操作者身份验证成功后,还可以进一步验证操作者的操作权限,在操作者的身份验证成功且操作权限验证成功的情况下,执行利用第一公钥对应的第一私钥对第一数据进行解密,得到手机10的设备信息,利用第二私钥对手机10的设备信息进行签名,得到签名信息的步骤。在操作者身份验证失败和/或操作者的操作权限验证失败的情况下,向笔记本电脑20发送验证失败指示信息,以指示操作者身份验证失败和/或操作权限验证失败。例如,验证失败指示信息可以为特定数据。
172.例如,在对第一身份验证信息验证成功后,服务器30还可以确定第一身份验证信息对应的操作者的操作权限,对操作权限进行验证。若验证成功,则执行利用第一公钥对应的第一私钥对第一数据进行解密,得到手机10的设备信息,利用第二私钥对手机10的设备信息进行签名,得到签名信息的步骤。若验证失败,则向笔记本电脑20发送验证失败的指示信息。
173.比如,对操作权限进行验证可以包括:判断第一身份验证信息对应的操作者的操作权限是否允许笔记本电脑20对手机10的访问操作,若包括,则确定操作权限验证成功。否则,确定操作权限验证失败。
174.通过对操作者的身份以及操作权限进行验证,可以判断操作者身份是否合法,以及操作者的操作权限是否合法,从而可以在判断身份合法性的同时收缩操作权限,极大地减少了内部人员违规操作导致的风险,提高了数据安全性。
175.步骤1211:服务器30将签名信息和第二私钥对应的第二公钥的公钥标识发送给笔记本电脑20。
176.其中,第二私钥和第二公钥是一对密钥对,利用第二私钥签名的签名信息可以利用第二公钥进行校验。
177.服务器30可以根据第二私钥,获取第二私钥对应的第二公钥的公钥标识,然后将签名信息和第二公钥的公钥标识发送给笔记本电脑20。
178.比如,服务器30存储有多个私钥对应的公钥的公钥标识,服务器30可以根据第二私钥,从存储的多个私钥对应的公钥的公钥标识中获取第二私钥对应的第二公钥的公钥标识。当然,服务器30也可以通过其他方式获取第二公钥的公钥标识,比如通过云端或其他设备获取第二公钥的公钥标识,本技术实施例对此不做限定。
179.作为一个示例,服务器30可以将签名信息和第二公钥的公钥标识进行拼接,得到第四数据,将第四数据发送给笔记本电脑20。
180.比如,可以将第二公钥的公钥标识和签名信息进行连接,得到第四数据。或者,将第二公钥的公钥标识和签名信息进行连接,在第二公钥的公钥标识和签名信息之间添加第三字符串,得到第四数据。
181.其中,第三字符串可以预先设置,第三字符串包括一个或多个字符。比如,第三字符串可以为“##”。
182.步骤1212:笔记本电脑20将签名信息和第二公钥的公钥标识发送给手机10。
183.笔记本电脑20接收到服务器30发送的签名信息和第二公钥的公钥标识后,可以将签名信息和第二公钥的公钥标识发送给手机10。比如,笔记本电脑20接收到服务器30发送的第四数据,将第四数据发送给手机10。
184.步骤1213:手机10根据第二公钥的公钥标识,利用第二公钥对签名信息进行校验。
185.手机10接收到笔记本电脑20发送的签名信息和第二公钥的公钥标识后,可以根据第二公钥的公钥标识获取第二公钥,利用第二公钥对该签名信息进行校验,根据校验结果对笔记本电脑20的访问操作进行响应。
186.其中,利用第二公钥对该签名信息进行校验的操作可以包括:利用第二公钥对该签名信息进行解析,得到解析设备信息。将解析设备信息与手机10的设备信息进行比较。在解析设备信息与手机10的设备信息相同的情况下,确定校验成功。在解析设备信息与手机10的设备信息不同的情况下,确定校验失败。
187.比如,假设解析设备信息包括解析sn、解析版本号和解析熔丝标记,若手机10的sn与解析sn相同、手机10的版本号与解析版本号相同、手机10的熔丝标记与解析熔丝标记相同,则确定签名信息校验成功。
188.在一些实施例中,手机10包括ree和tee。ree接收笔记本电脑20发送的签名信息和第二公钥的公钥标识,将签名信息和第二公钥的公钥标识发送给tee。tee根据第二公钥的公钥标识获取第二公钥,利用第二公钥对该签名信息进行校验,将校验结果发送给ree。ree接收校验结果,根据校验结果对笔记本电脑20的访问操作进行响应。
189.如此,公钥获取和签名校验过程均在tee侧进行,ree侧只得到校验结果,不传输公钥,极大地提高了数据的安全性。
190.其中,笔记本电脑20的访问操作可以包括读取手机10中的数据、向手机10中写入数据、修改手机10中的数据、删除手机10中的数据、备份手机10中的数据等。
191.其中,根据校验结果对笔记本电脑20的访问操作进行响应的操作包括如下步骤s511和s512。
192.步骤1214:若校验成功,则响应笔记本电脑20的访问操作。
193.如果校验成功,说明对笔记本电脑20鉴权成功,这种情况下手机10即可响应笔记本电脑20的访问操作。
194.在一些实施例中,若校验成功,则响应笔记本电脑20对手机10的数据加载操作,加载笔记本电脑20发送的数据。比如,以笔记本电脑20对手机10的版本加载操作的场景为例,手机10在完成小系统加载后,若校验成功,则自动进入fastboot加载模式。
195.示例地,若校验成功,则手机10加载从笔记本电脑20接收的第二镜像文件。或者,若校验成功,则手机10向笔记本电脑20发送鉴权成功响应,鉴权成功响应用于指示手机10对笔记本电脑20鉴权成功。笔记本电脑20接收鉴权成功响应后,向手机10发送第二镜像文件,手机10接收第二镜像文件,加载第二镜像文件,以完成fastboot加载。
196.步骤1215:若校验失败,则拒绝响应笔记本电脑20的访问操作。
197.如果校验失败,说明对笔记本电脑20鉴权失败,这种情况下即可拒绝应笔记本电脑20的访问操作,以保证手机10的数据安全。
198.在一些实施例中,若校验失败,则拒绝响应笔记本电脑20对手机10的数据加载操作,不加载笔记本电脑20发送的数据。比如,以笔记本电脑20对手机10的版本加载操作的场景为例,手机10在完成小系统加载后,若校验失败,则拒绝进入fastboot加载模式。
199.示例地,若校验失败,则手机10拒绝加载从笔记本电脑20接收的第二镜像文件。或者,若校验失败,则手机10向笔记本电脑20发送鉴权失败响应,鉴权失败响应用于指示手机10对笔记本电脑20鉴权失败。笔记本电脑20接收鉴权失败响应,不向手机10发送第二镜像文件,以使手机10不进入fastboot加载模式,停留在小系统加载模式。
200.在一些实施例中,手机10加载第一镜像文件后,笔记本电脑20还可以根据第一镜像文件中预设的交互指令,与手机10进行数据交互。可以理解,在一些实施例中,手机10也可以只加载第一镜像文件中的部分子文件,在此不做限定。
201.在一些实施例中,第一镜像文件包括了手机10在edl模式下与其他电子设备的交互指令和逻辑。手机10在接收到由其他电子设备(例如笔记本电脑20)发送的、第一镜像文件中预设的指令后,由第一镜像对接收到的指令进行响应,来实现笔记本电脑20对手机10中数据的访问操作。
202.在一些实施例中,第一镜像文件可以是由手机10或手机10的处理器的开发商定义的“xbl_s_devprg_ns.melf”镜像文件,该文件中包括了“sequencer_ram.elf”、“signed_firmware_soc_view.elf”、“xbl_sc.elf”、“prog_firehose_ddr.elf”、“xbl_config.elf”等子镜像文件。其中,手机10在edl模式下与其他电子设备的交互指令和逻辑可以存储于上述“prog_firehose_ddr.elf”子镜像文件中。
203.可以理解,在一些实施例中,第一镜像文件中的至少部分子镜像文件由终端设备的开发商进行签名,只能运行在第一镜像文件对应型号的终端设备中,而不能运行在其他型号的终端设备中。此外,未经终端设备的开发商签名的第一镜像文件不能运行在该终端设备中,避免非法人员通过伪造第一镜像文件来获取、篡改终端设备中的数据。
204.可以理解,本技术实施例仅是以手机版本加载的场景为例进行说明,第一镜像文件还可以是小系统加载对应的镜像文件之外的其他镜像文件,第二镜像文件还可以是fastboot加载对应的镜像文件之外的其他镜像文件,本技术实施例对此不做限定。
205.可以理解,前述步骤1201至步骤1215的执行过程只是一种示例,在另一些实施例
中,可以调整部分步骤的顺序,也可以增加或减少部分步骤,还可以拆分或组合部分步骤,本技术实施例不做限定。
206.本技术实施例提供的访问控制方法中,手机10先对笔记本电脑20进行鉴权,在鉴权成功的情况下,才能响应笔记本电脑20的访问操作,在鉴权失败的情况下,则拒绝响应笔记本电脑20的访问操作,如此,即便非法人员通过非法方式操作手机10进入edl模式,手机10也只有在对笔记本电脑20鉴权通过的情况下才会对笔记本电脑20的访问操作进行响应,避免了非法人员通过利用手机10的edl模式获取、篡改终端设备中的数据,提高了手机10的安全性。而且,鉴权过程中不需要在设备之间传输公钥,而是传输公钥标识,且手机10和笔记本电脑20并不存储签名的私钥,只在服务器30中存储私钥,提高了数据安全性。
207.记下来,结合图3所示的手机版本加载场景,对本技术实施例提供的访问控制方法进行举例说明。图14是本技术实施例提供的另一种访问控制方法的交互过程示意图,如图14所示,该交互过程包括如下步骤:步骤1401:手机10进入edl模式。
208.比如,手机10包括ree和tee,ree进入edl模式。
209.步骤1402:手机10和笔记本电脑20建立通信连接。
210.比如,手机10的ree和笔记本电脑20建立通信连接。
211.步骤1403:笔记本电脑20向手机10的ree发送第一镜像文件。
212.步骤1404:手机10的ree加载第一镜像文件。
213.手机10通过加载第一镜像文件,进入小系统加载阶段。
214.步骤1405:笔记本电脑20向手机10的ree发送公钥a的id 和第二镜像文件。
215.比如,公钥a的id 为0x0123456。
216.在一些实施例中,笔记本电脑20可以在手机10对第一镜像文件加载完成后,向手机10的ree发送公钥a的id 和第二镜像文件。
217.此外,在向手机10的ree发送公钥a的id 和第二镜像文件之前,笔记本电脑20可以先向手机10发送鉴权指令,该鉴权指令用于指示手机10检测自身是否需要进行访问鉴权。手机10接收到该鉴权指令后,先检测10是否进行访问鉴权,将鉴权结果发送给笔记本电脑20。若鉴权结果是指手机10需要进行访问鉴权,则进入鉴权流程。若鉴权结果指示手机10不需要进行访问鉴权,则跳过鉴权流程,直接向手机10发送第二镜像文件,以使手机10接收和加载第二镜像文件,进入fastboot加载阶段。
218.步骤1406:手机10的ree接收公钥a的id ,将公钥a的id 发送给tee。
219.步骤1407:tee根据公钥a的id 获取公钥a,将手机10的sn、版本号、熔丝标记和随机值进行拼接,得到data0,利用公钥a对data0进行加密,得到data1。
220.比如,假设手机10的sn为0123456789abcdef,版本号为040601abcan00、熔丝标记为0xe7、随机值为1228,则对手机10的sn、版本号、熔丝标记和随机值进行拼接,可以得到data0(0123456789abcdefe7040601abcan001228)。然后,利用公钥a对data0进行加密,得到data1(luzzblydqn2gijcy4inzaoms1ted wgmmxyn6nkrwfee nh2xlyguls3bee8ayas5oifnaqgynriyq6h8tzsnw==)。
221.步骤1408:tee将data1发送给ree。
222.比如,将data1(luzzblydqn2gijcy4inzaoms1ted wgmmxyn6nkrwfee nh2xlyguls
3bee8ayas5oifnaqgynriyq6h8tzsnw==)发送给ree。
223.步骤1409:ree将data1与公钥a的id 进行拼接,得到data2。
224.比如,将data1(luzzblydqn2gijcy4inzaoms1ted wgmmxyn6nkrwfee nh2xlyguls3bee8ayas5oifnaqgynriyq6h8tzsnw==)与公钥a的id (0x0123456)进行拼接,得到data2(0123456##luzzblydqn2gijcy4inzaoms1ted wgmmxyn6nkrwfee nh2xlyguls3bee8ayas5oifnaqgynriyq6h8tzsnw==)。
225.步骤1410:ree将data2发送给笔记本电脑20。
226.步骤1411:笔记本电脑20获取操作者输入的用户账号和密码,将用户账号和密码与data2进行拼接,得到data3。
227.比如,假设操作者输入的用户账号为zs123456,密码为123abcabc,则将用户账号和密码与data2进行拼接得到data3(zs123456@123abcabc@0123456##luzzblydqn2gijcy4inzaoms1ted wgmmxyn6nkrwfee nh2xlyguls3bee8ayas5oifnaqgynriyq6h8tzsnw==)。
228.步骤1412:笔记本电脑20将data3发送给服务器30。
229.步骤1413:服务器30从data3中读取用户账号和密码,根据用户账号和密码进行身份验证。
230.步骤1414:若验证失败,则服务器30向笔记本电脑20发送特定数据,该特定数据用于指示身份验证失败。
231.比如,特定数据为login@fail@。
232.步骤1415:若验证成功,则服务器30从data3中读取公钥a的id ,利用公钥a对应的私钥b对data3中的data1进行解密得到data4,利用私钥c对data4进行签名得到签名信息,将签名信息与私钥c对应的公钥d的id 进行拼接得到data5。
233.比如,服务器器30从data3中读取公钥a的id后,先根据公钥a的id获取公钥a对应的私钥b,然后利用公钥a对应的私钥b对data3中的data1进行解密得到data4。
234.比如,利用公钥a对应的私钥b解密data3得到data4(0123456789abcdefe7040601abcan001228),然后使用私钥c签名data4得到签名信息(urcswkdmeqbzoy30apjamytyfkni53upeh8 kjf7epb45vbhkwyx8wfywtp1lipn7xpq/oo1okgig2z8ew7tzw==),将签名信息(urcswkdmeqbzoy30apjamytyfkni53upeh8 kjf7epb45vbhkwyx8wfywtp1lipn7xpq/oo1okgig2z8ew7tzw==)与公钥d的id(0x0123458)进行拼接,得到data5(0123458##urcswkdmeqbzoy30apjamytyfkni53upeh8 kjf7epb45vbhkwyx8wfywtp1lipn7xpq/oo1okgig2z8ew7tzw==)。
235.步骤1416:服务器30将data5发送给笔记本电脑20。
236.步骤1417:笔记本电脑20将从服务器30接收的数据与特定数据进行匹配,以判断从服务器30接收的数据是否为特定数据。
237.比如,将从服务器30接收的数据与特定数据login@fail@进行匹配。若匹配成功,则确定接收到特定数据。若匹配失败,则确定未接收到特定数据,即接收到的数据为data5。
238.步骤1418:若从服务器30接收的数据为特定数据,则发出提示信息,以提示操作者重新输入用户账号和密码。
239.步骤1419:若从服务器30接收的数据不是特定数据,则确定接收到data5,将data5
发送给手机10的ree。
240.步骤1420:手机10的ree接收data5,将data5发送给tee。
241.步骤1421:tee从data5读取公钥d的id 和签名信息,根据公钥d的id 获取公钥d,利用公钥d对签名信息进行校验。
242.比如,利用公钥d对签名信息进行解析,将解析结果与手机10的sn、版本号、熔丝标记和随机值的拼接数据(0123456789abcdefe7040601abcan001228)进行比对。若解析结果与拼接数据相同,则确定校验成功。若解析结果与拼接数据不同,则确定校验失败。
243.步骤1422:tee将校验结果发送给ree。
244.步骤1423:ree判断校验结果是否指示校验成功。
245.步骤1424:若校验结果指示校验成功,则ree加载第二镜像文件,进入fastboot加载模式。
246.步骤1425:若校验结果指示校验失败,则ree拒绝加载第二镜像文件,以使手机10停留在小系统加载模式。
247.需要说明的是,本技术实施例仅是以笔记本电脑20在手机10对笔记本电脑20进行鉴权之前,先向笔记本电脑20发送第二镜像文件,手机10在对笔记本电脑20鉴权成功的情况下加载第二镜像文件,进入fastboot加载模式,在鉴权失败的情况下拒绝加载第二镜像文件,停留在小系统加载模式为例进行说明。应理解,笔记本电脑20在手机10对笔记本电脑20进行鉴权之前,还可以先不向笔记本电脑20发送第二镜像文件。在手机10对笔记本电脑20鉴权成功的情况下,笔记本电脑20再向手机10发送第二镜像文件,由手机10接收并加载第二镜像文件,进入fastboot加载模式。另外,在手机10对笔记本电脑20鉴权失败的情况下,笔记本电脑20不向手机10发送第二镜像文件,以使手机10停留在小系统加载模式。
248.例如,上述图14实施例中,步骤1405还可以替换为:笔记本电脑20向手机10发送公钥a的id ,在步骤1422即tee将校验结果发送给ree之后,步骤1423-步骤1425还可以替换为:ree将校验结果发送给笔记本电脑20。若校验结果指示校验成功,则笔记本电脑20向ree发送第二镜像文件,ree加载第二镜像文件,使得手机10进入fastboot加载模式。若校验结果指示校验失败,则笔记本电脑20不向ree发送第二镜像文件,ree也就无法接收并加载第二镜像文件,使得手机10停留在fastboot加载模式。
249.请参考图15,图15中的(a)图是相关技术提供的一种手机版本加载的过程示意图,图15中的(a)图是本技术实施例提供的一种手机版本加载的过程示意图。如图15中的(a)图所示,在相关技术中,手机在小系统加载完毕后,手机可以自动进入fastboot加载模式。如图15中的(b)图所示,手机在小系统加载完毕后,pc端可以向手机发送鉴权指令,手机先根据鉴权指令判断手机是否需要进行访问鉴权,若需要,则pc端、手机、服务器三方进行交互鉴权,若鉴权结果指示鉴权成功,则手机进行fastboot加载模式,若鉴权结果指示鉴权失败,则手机拒绝进入fastboot加载模式。
250.图16是本技术实施例提供的一种终端设备的100结构示意图。该终端设备100的结构适用于上述手机10。参见图16,终端设备100可以包括处理器110,外部存储器接口120,内部存储器121,通用串行总线(universal serial bus,usb)接口130,充电管理模块140,电源管理模块141,电池142,天线1,天线2,移动通信模块150,无线通信模块160,音频模块170,扬声器170a,受话器170b,麦克风170c,耳机接口170d,传感器模块180,按键190,马达
191,指示器192,摄像头193,显示屏194,以及用户标识模块(subscriber identification module,sim)卡接口195等。其中,传感器模块180可以包括压力传感器180a,陀螺仪传感器180b,气压传感器180c,磁传感器180d,加速度传感器180e,距离传感器180f,接近光传感器180g,指纹传感器180h,温度传感器180j,触摸传感器180k,环境光传感器180l,骨传导传感器180m等。
251.可以理解的是,本技术实施例示意的结构并不构成对终端设备100的具体限定。在本技术另一些实施例中,终端设备100可以包括比图示更多或更少的部件,或者组合某些部件,或者拆分某些部件,或者不同的部件布置。图示的部件可以以硬件,软件或软件和硬件的组合实现。
252.处理器110可以包括一个或多个处理单元,比如:处理器110可以包括应用处理器(application processor,ap),调制解调处理器,图形处理器(graphics processing unit,gpu),图像信号处理器(image signal processor,isp),控制器,存储器,视频编解码器,数字信号处理器(digital signal processor,dsp),基带处理器,和/或神经网络处理器(neural-network processing unit,npu)等。其中,不同的处理单元可以是独立的器件,也可以集成在一个或多个处理器中。
253.其中,控制器可以是终端设备100的神经中枢和指挥中心。控制器可以根据指令操作码和时序信号,产生操作控制信号,完成取指令和执行指令的控制。
254.处理器110中还可以设置存储器,用于存储指令和数据。在一些实施例中,处理器110中的存储器为高速缓冲存储器。该存储器可以保存处理器110刚用过或循环使用的指令或数据。如果处理器110需要再次使用该指令或数据,可从该存储器中直接调用。避免了重复存取,减少了处理器110的等待时间,因而提高了系统的效率。
255.在一些实施例中,处理器110可以包括一个或多个接口,如可以包括集成电路(inter-integrated circuit,i2c)接口,集成电路内置音频(inter-integrated circuit sound,i2s)接口,脉冲编码调制(pulse code modulation,pcm)接口,通用异步收发传输器(universal asynchronous receiver/transmitter,uart)接口,移动产业处理器接口(mobile industry processor interface,mipi),通用输入输出(general-purpose input/output,gpio)接口,用户标识模块(subscriber identity module,sim)接口,和/或通用串行总线(universal serial bus,usb)接口等。
256.i2c接口是一种双向同步串行总线,包括一根串行数据线(serial data line,sda)和一根串行时钟线(derail clock line,scl)。在一些实施例中,处理器110可以包含多组i2c接口。处理器110可以通过不同的i2c接口分别耦合触摸传感器180k,充电器,闪光灯,摄像头193等。比如:处理器110可以通过i2c接口耦合触摸传感器180k,使处理器110与触摸传感器180k通过i2c接口通信,实现终端设备100的触摸功能。
257.i2s接口可以用于音频通信。在一些实施例中,处理器110可以包含多组i2s接口。处理器110可以通过i2s接口与音频模块170耦合,实现处理器110与音频模块170之间的通信。在一些实施例中,音频模块170可以通过i2s接口向无线通信模块160传递音频信号,实现通过蓝牙耳机接听电话的功能。
258.pcm接口也可以用于音频通信,将模拟信号抽样,量化和编码。在一些实施例中,音频模块170与无线通信模块160可以通过pcm接口耦合。在一些实施例中,音频模块170也可
以通过pcm接口向无线通信模块160传递音频信号,实现通过蓝牙耳机接听电话的功能。
259.uart接口是一种通用串行数据总线,用于异步通信。uart接口可以为双向通信总线。uart接口可以将要传输的数据在串行通信与并行通信之间转换。在一些实施例中,uart接口通常被用于连接处理器110与无线通信模块160。比如:处理器110通过uart接口与无线通信模块160中的蓝牙模块通信,实现蓝牙功能。在一些实施例中,音频模块170可以通过uart接口向无线通信模块160传递音频信号,实现通过蓝牙耳机播放音乐的功能。
260.mipi接口可以被用于连接处理器110与显示屏194,摄像头193等外围器件。mipi接口包括摄像头串行接口(camera serial interface,csi),显示屏串行接口(display serial interface,dsi)等。在一些实施例中,处理器110和摄像头193通过csi接口通信,实现终端设备100的拍摄功能。处理器110和显示屏194通过dsi接口通信,实现终端设备100的显示功能。
261.gpio接口可以通过软件配置。gpio接口可以被配置为控制信号,也可被配置为数据信号。在一些实施例中,gpio接口可以用于连接处理器110与摄像头193,显示屏194,无线通信模块160,音频模块170,传感器模块180等。gpio接口还可以被配置为i2c接口,i2s接口,uart接口,mipi接口等。
262.usb接口130是符合usb标准规范的接口,具体可以是mini usb接口,micro usb接口,usb type c接口等。usb接口130可以用于连接充电器为终端设备100充电,也可以用于终端设备100与外围设备之间传输数据。也可以用于连接耳机,通过耳机播放音频。usb接口130还可以用于连接其他终端设备,比如ar设备等。
263.可以理解的是,本技术实施例示意的各模块间的接口连接关系,只是示意性说明,并不构成对终端设备100的结构限定。在本技术另一些实施例中,终端设备100也可以采用上述实施例中不同的接口连接方式,或多种接口连接方式的组合。
264.充电管理模块140用于从充电器接收充电输入。其中,充电器可以是无线充电器,也可以是有线充电器。在一些有线充电的实施例中,充电管理模块140可以通过usb接口130接收有线充电器的充电输入。在一些无线充电的实施例中,充电管理模块140可以通过终端设备100的无线充电线圈接收无线充电输入。充电管理模块140为电池142充电的同时,还可以通过电源管理模块141为终端设备100供电。
265.电源管理模块141用于连接电池142,充电管理模块140与处理器110。电源管理模块141接收电池142和/或充电管理模块140的输入,为处理器110,内部存储器121,外部存储器,显示屏194,摄像头193和无线通信模块160等供电。电源管理模块141还可以用于监测电池容量,电池循环次数,电池健康状态(漏电,阻抗)等参数。在其他一些实施例中,电源管理模块141也可以设置于处理器110中。在另一些实施例中,电源管理模块141和充电管理模块140也可以设置于同一个器件中。
266.终端设备100的无线通信功能可以通过天线1,天线2,移动通信模块150,无线通信模块160,调制解调处理器以及基带处理器等实现。
267.天线1和天线2用于发射和接收电磁波信号。终端设备100中的每个天线可用于覆盖单个或多个通信频带。不同的天线还可以复用,以提高天线的利用率。比如:可以将天线1复用为无线局域网的分集天线。在另外一些实施例中,天线可以和调谐开关结合使用。
268.移动通信模块150可以提供应用在终端设备100上的包括2g/3g/4g/5g等无线通信
diode,fled),miniled,microled,micro-oled,量子点发光二极管(quantum dot light emitting diodes,qled)等。在一些实施例中,终端设备100可以包括1个或n个显示屏194,n为大于1的整数。
274.终端设备100可以通过isp,摄像头193,视频编解码器,gpu,显示屏194以及应用处理器等实现拍摄功能。
275.isp 用于处理摄像头193反馈的数据。比如,拍照时,打开快门,光线通过镜头被传递到摄像头感光元件上,光信号转换为电信号,摄像头感光元件将电信号传递给isp处理,转化为肉眼可见的图像。isp还可以对图像的噪点,亮度,肤色进行算法优化。isp还可以对拍摄场景的曝光,色温等参数优化。在一些实施例中,isp可以设置在摄像头193中。
276.摄像头193用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,ccd)或互补金属氧化物半导体(complementary metal-oxid e-semiconductor,cmos)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给isp转换成数字图像信号。isp将数字图像信号输出到dsp加工处理。dsp将数字图像信号转换成标准的rgb,yuv等格式的图像信号。在一些实施例中,终端设备100可以包括1个或n个摄像头193,n为大于1的整数。
277.数字信号处理器用于处理数字信号,除了可以处理数字图像信号,还可以处理其他数字信号。比如,当终端设备100在频点选择时,数字信号处理器用于对频点能量进行傅里叶变换等。
278.视频编解码器用于对数字视频压缩或解压缩。终端设备100可以支持一种或多种视频编解码器。这样,终端设备100可以播放或录制多种编码格式的视频,比如:动态图像专家组(moving picture experts group,mpeg)1,mpeg2,mpeg3,mpeg4等。
279.npu为神经网络(neural-network,nn)计算处理器,通过借鉴生物神经网络结构,比如借鉴人脑神经元之间传递模式,对输入信息快速处理,还可以不断的自学习。通过npu可以实现终端设备100的智能认知等应用,比如:图像识别,人脸识别,语音识别,文本理解等。
280.外部存储器接口120可以用于连接外部存储卡,比如micro sd卡,实现扩展终端设备100的存储能力。外部存储卡通过外部存储器接口120与处理器110通信,实现数据存储功能。比如将音乐,视频等文件保存在外部存储卡中。
281.内部存储器121可以用于存储计算机可执行程序代码,计算机可执行程序代码包括指令。处理器110通过运行存储在内部存储器121的指令,来执行终端设备100的各种功能应用以及数据处理。内部存储器121可以包括存储程序区和存储数据区。其中,存储程序区可存储操作系统,至少一个功能所需的应用程序(比如声音播放功能,图像播放功能等)等。存储数据区可存储终端设备100在使用过程中所创建的数据(比如音频数据,电话本等)等。此外,内部存储器121可以包括高速随机存取存储器,还可以包括非易失性存储器,比如至少一个磁盘存储器件,闪存器件,通用闪存存储器(universal flash storage,ufs)等。
282.终端设备100可以通过音频模块170,扬声器170a,受话器170b,麦克风170c,耳机接口170d以及应用处理器等实现音频功能,比如音乐播放,录音等。
283.音频模块170用于将数字音频信息转换成模拟音频信号输出,也用于将模拟音频输入转换为数字音频信号。音频模块170还可以用于对音频信号编码和解码。在一些实施例
中,音频模块170可以设置于处理器110中,或将音频模块170的部分功能模块设置于处理器110中。
284.扬声器170a,也称“喇叭”,用于将音频电信号转换为声音信号。终端设备100可以通过扬声器170a收听音乐,或收听免提通话。
285.受话器170b,也称“听筒”,用于将音频电信号转换成声音信号。当终端设备100接听电话或语音信息时,可以通过将受话器170b靠近人耳接听语音。
286.麦克风170c,也称“话筒”,“传声器”,用于将声音信号转换为电信号。当拨打电话或发送语音信息时,用户可以通过人嘴靠近麦克风170c发声,将声音信号输入到麦克风170c。终端设备100可以设置至少一个麦克风170c。在另一些实施例中,终端设备100可以设置两个麦克风170c,除了采集声音信号,还可以实现降噪功能。在另一些实施例中,终端设备100还可以设置三个,四个或更多麦克风170c,实现采集声音信号,降噪,还可以识别声音来源,实现定向录音功能等。
287.耳机接口170d用于连接有线耳机。耳机接口170d可以是usb接口130,也可以是3.5mm的开放移动终端设备平台(open mobile terminal platform,omtp)标准接口,美国蜂窝电信工业协会(cellular telecommunications industry association of the usa,ctia)标准接口。
288.压力传感器180a用于感受压力信号,可以将压力信号转换成电信号。在一些实施例中,压力传感器180a可以设置于显示屏194。压力传感器180a的种类很多,如电阻式压力传感器,电感式压力传感器,电容式压力传感器等。电容式压力传感器可以是包括至少两个具有导电材料的平行板。当有力作用于压力传感器180a,电极之间的电容改变。终端设备100根据电容的变化确定压力的强度。当有触摸操作作用于显示屏194,终端设备100根据压力传感器180a检测触摸操作强度。终端设备100也可以根据压力传感器180a的检测信号计算触摸的位置。在一些实施例中,作用于相同触摸位置,但不同触摸操作强度的触摸操作,可以对应不同的操作指令。比如:当有触摸操作强度小于压力阈值的触摸操作作用于短消息应用图标时,执行查看短消息的指令。当有触摸操作强度大于或等于压力阈值的触摸操作作用于短消息应用图标时,执行新建短消息的指令。
289.陀螺仪传感器180b可以用于确定终端设备100的运动姿态。在一些实施例中,可以通过陀螺仪传感器180b确定终端设备100围绕三个轴(即,x,y和z轴)的角速度。陀螺仪传感器180b可以用于拍摄防抖。示例性的,当按下快门,陀螺仪传感器180b检测终端设备100抖动的角度,根据角度计算出镜头模组需要补偿的距离,让镜头通过反向运动抵消终端设备100的抖动,实现防抖。陀螺仪传感器180b还可以用于导航,体感游戏场景。
290.气压传感器180c用于测量气压。在一些实施例中,终端设备100通过气压传感器180c测得的气压值计算海拔高度,辅助定位和导航。
291.磁传感器180d包括霍尔传感器。终端设备100可以利用磁传感器180d检测翻盖皮套的开合。在一些实施例中,当终端设备100是翻盖机时,终端设备100可以根据磁传感器180d检测翻盖的开合。终端设备100根据检测到的皮套的开合状态或翻盖的开合状态,设置翻盖自动解锁等特性。
292.加速度传感器180e可检测终端设备100在各个方向上(一般为三轴)加速度的大小。当终端设备100静止时可检测出重力的大小及方向。加速度传感器180e还可以用于识别
终端设备100的姿态,应用于横竖屏切换,计步器等应用。
293.距离传感器180f,用于测量距离。终端设备100可以通过红外或激光测量距离。在一些实施例中,在拍摄场景中,终端设备100可以利用距离传感器180f测距以实现快速对焦。
294.接近光传感器180g可以包括发光二极管(led)和光检测器,比如光电二极管。发光二极管可以是红外发光二极管。终端设备100通过发光二极管向外发射红外光。终端设备100使用光电二极管检测来自附近物体的红外反射光。当检测到充分的反射光时,终端设备100可以确定终端设备100附近有物体。当检测到不充分的反射光时,可以确定终端设备100附近没有物体。终端设备100可以利用接近光传感器180g检测用户手持终端设备100贴近耳朵通话,以便自动熄灭屏幕达到省电的目的。接近光传感器180g也可用于皮套模式,口袋模式自动解锁与锁屏。
295.环境光传感器180l用于感知环境光亮度。终端设备100可以根据感知的环境光亮度自适应调节显示屏194亮度。环境光传感器180l也可用于拍照时自动调节白平衡。环境光传感器180l还可以与接近光传感器180g配合,检测终端设备100是否在口袋里,以防误触。
296.指纹传感器180h用于采集指纹。终端设备100可以利用采集的指纹特性实现指纹解锁,访问应用锁,指纹拍照,指纹接听来电等。
297.温度传感器180j用于检测温度。在一些实施例中,终端设备100利用温度传感器180j检测的温度,执行温度处理策略。比如,当温度传感器180j上报的温度超过阈值,终端设备100执行降低位于温度传感器180j附近的处理器的性能,以便降低功耗实施热保护。在另一些实施例中,当温度低于另一阈值时,终端设备100对电池142加热,以避免低温导致终端设备100异常关机。在其他一些实施例中,当温度低于又一阈值时,终端设备100对电池142的输出电压执行升压,以避免低温导致的异常关机。
298.触摸传感器180k,也称“触控面板”。触摸传感器180k可以设置于显示屏194,由触摸传感器180k与显示屏194组成触摸屏,也称“触控屏”。触摸传感器180k用于检测作用于其上或附近的触摸操作。触摸传感器180k可以将检测到的触摸操作传递给应用处理器,以确定触摸事件类型。可以通过显示屏194提供与触摸操作相关的视觉输出。在另一些实施例中,触摸传感器180k也可以设置于终端设备100的表面,与显示屏194所处的位置不同。
299.骨传导传感器180m可以获取振动信号。在一些实施例中,骨传导传感器180m可以获取人体声部振动骨块的振动信号。骨传导传感器180m也可以接触人体脉搏,接收血压跳动信号。在一些实施例中,骨传导传感器180m也可以设置于耳机中,结合成骨传导耳机。音频模块170可以基于骨传导传感器180m获取的声部振动骨块的振动信号,解析出语音信号,实现语音功能。应用处理器可以基于骨传导传感器180m获取的血压跳动信号解析心率信息,实现心率检测功能。
300.按键190包括开机键,音量键等。按键190可以是机械按键,也可以是触摸式按键。终端设备100可以接收按键输入,产生与终端设备100的用户设置以及功能控制有关的键信号输入。
301.马达191可以产生振动提示。马达191可以用于来电振动提示,也可以用于触摸振动反馈。比如,作用于不同应用(比如拍照,音频播放等)的触摸操作,可以对应不同的振动反馈效果。作用于显示屏194不同区域的触摸操作,也可对应不同的振动反馈效果。不同的
应用场景(比如:时间提醒,接收信息,闹钟,游戏等),也可以对应不同的振动反馈效果。触摸振动反馈效果还可以支持自定义。
302.指示器192可以是指示灯,可以用于指示充电状态,电量变化,也可以用于指示消息,未接来电,通知等。
303.sim卡接口195用于连接sim卡。sim卡可以通过插入sim卡接口195,或从sim卡接口195拔出,实现和终端设备100的接触和分离。终端设备100可以支持1个或n个sim卡接口,n为大于1的整数。sim卡接口195可以支持nano sim卡,micro sim卡,sim卡等。同一个sim卡接口195可以同时插入多张卡。多张卡的类型可以相同,也可以不同。sim卡接口195也可以兼容不同类型的sim卡。sim卡接口195也可以兼容外部存储卡。终端设备100通过sim卡和网络交互,实现通话以及数据通信等功能。在一些实施例中,终端设备100采用esim,即:嵌入式sim卡。esim卡可以嵌在终端设备100中,不能和终端设备100分离。
304.图17是本技术实施例提供的一种电子设备的结构示意图,该电子设备可以是上述笔记本电脑20或服务器30。参见图17,该电子设备包括至少一个处理器201、通信总线202、存储器203以及至少一个通信接口204。
305.处理器201可以是微处理器(包括中央处理器(central processing unit,cpu)等)、特定应用集成电路(application-specific integrated circuit,asic),或者可以是一个或多个用于控制本技术方案程序执行的集成电路。
306.通信总线202可包括一通路,用于在上述组件之间传送信息。
307.存储器203可以是只读存储器(read-only memory,rom)、随机存取存储器(random access memory,ram)、电可擦可编程只读存储器(electrically erasable programmable read-only memory,eeprom)、光盘(包括只读光盘(compact disc read-only memory,cd-rom)、压缩光盘、激光盘、数字通用光盘、蓝光光盘等)、磁盘存储介质或者其它磁存储设备,或者是能够用于携带或存储具有指令或数据结构形式的期望的程序代码并能够由计算机存取的任何其它介质,但不限于此。存储器203可以是独立存在,并通过通信总线202与处理器201相连接。存储器203也可以和处理器201集成在一起。
308.通信接口204使用任何收发器一类的装置,用于与其它设备或通信网络通信,如以太网、无线接入网(radio access network,ran)、无线局域网(wireless local area network,wlan)等。
309.在具体实现中,作为一种实施例,处理器201可以包括一个或多个cpu,如图17中所示的cpu0和cpu1。
310.在具体实现中,作为一种实施例,电子设备可以包括多个处理器,如图17中所示的处理器201和处理器205。这些处理器中的每一个可以是一个单核处理器,也可以是一个多核处理器。这里的处理器可以指一个或多个设备、电路、和/或用于处理数据(如计算机程序指令)的处理核。
311.在具体实现中,作为一种实施例,电子设备还可以包括输出设备206和输入设备207。输出设备206和处理器201通信,可以以多种方式来显示信息。例如,输出设备206可以是液晶显示器(liquidcrystal display,lcd)、发光二级管(light emitting diode,led)显示设备、阴极射线管(cathode ray tube,crt)显示设备或投影仪(projector)等。输入设备207和处理器201通信,可以以多种方式接收用户的输入。例如,输入设备207可以是鼠标、
键盘、触摸屏设备或传感设备等。
312.上述的电子设备可以是一个通用电子设备或一个专用电子设备。在具体实现中,电子设备可以是台式机、便携式电脑、网络服务器、掌上电脑、移动手机、平板电脑、无线终端设备、通信设备或嵌入式设备,本技术实施例不限定电子设备的类型。
313.其中,存储器203用于存储执行本技术方案的程序代码210,处理器201用于执行存储器203中存储的程序代码210。该电子设备可以通过处理器201以及存储器203中的程序代码210,来实现上文实施例中笔记本电脑20或服务器30执行的方法。
314.在上述实施例中,可以全部或部分地通过软件、硬件、固件或者其任意结合来实现。当使用软件实现时,可以全部或部分地以计算机程序产品的形式实现。所述计算机程序产品包括一个或多个计算机指令。在计算机上加载和执行所述计算机指令时,全部或部分地产生按照本技术实施例所述的流程或功能。所述计算机可以是通用计算机、专用计算机、计算机网络或其他可编程装置。所述计算机指令可以存储在计算机可读存储介质中,或者从一个计算机可读存储介质向另一个计算机可读存储介质传输,比如,所述计算机指令可以从一个网站站点、计算机、服务器或数据中心通过有线(比如:同轴电缆、光纤、数据用户线(digital subscriber line,dsl))或无线(比如:红外、无线、微波等)方式向另一个网站站点、计算机、服务器或数据中心进行传输。所述计算机可读存储介质可以是计算机能够存取的任何可用介质,或者是包含一个或多个可用介质集成的服务器、数据中心等数据存储设备。所述可用介质可以是磁性介质(比如:软盘、硬盘、磁带)、光介质(比如:数字通用光盘(digital versatile disc,dvd))或半导体介质(比如:固态硬盘(solidstate disk,ssd))等。
315.以上所述为本技术提供的可选实施例,并不用以限制本技术,凡在本技术的揭露的技术范围之内,所作的任何修改、等同替换、改进等,均应包含在本技术的保护范围之内。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献