基础程序执行系统及方法与流程



1.本发明涉及芯片技术领域,具体而言,涉及一种基础程序执行系统及方法。


背景技术:



2.固件(firmware)是指用于支持电子设备的基础功能的程序。为了防止固件被读取导致产品的核心技术泄露,所以会对其进行加密保护。目前,固件一般存储在芯片如mcu中并采用加密算法或者硬件电路加密的方式来保护固件。但是这些方式的保密性差,比如攻击者可以通过反向分析破解算法和电路获取固件,从而依然存在固件被破解的风险。


技术实现要素:



3.有鉴于此,本发明的目的在于提供一种基础程序执行系统及方法。
4.为了实现上述目的,本发明实施例采用的技术方案如下:
5.第一方面,本发明提供一种基础程序执行系统,所述系统包括通信连接的mcu和服务器,所述mcu包括通信连接的cpu、加解密模块和通信模块,所述服务器预存有固件,所述固件包括多个已加密的基础程序;
6.所述cpu用于将执行目标基础程序的第一指令发送给所述通信模块;
7.所述通信模块用于将所述第一指令发送给服务器;
8.所述服务器用于根据所述第一指令,从所述固件中获取所述目标基础程序并发送给所述通信模块;
9.所述通信模块用于将所述目标基础程序发送给所述加解密模块;
10.所述加解密模块用于对所述目标基础程序行解密,并将解密后的目标基础程序发送给所述cpu;
11.所述cpu用于执行所述解密后的目标基础程序。
12.在可选的实施方式中,所述服务器包括所述mcu对应的存储空间;所述mcu还包括与所述cpu通信连接的寄存器;
13.所述寄存器用于存储表示所述mcu当前运行状态的运行参数;
14.所述cpu用于定期读取所述寄存器中的运行参数,并将存储所述运行参数的第二指令发送给所述加解密模块;
15.所述加解密模块用于根据所述第二指令对所述运行参数进行加密,并将加密后的运行参数发送给所述通信模块;
16.所述通信模块用于将所述加密后的运行参数发送给所述服务器;
17.所述服务器用于将所述加密后的运行参数存储至与所述mcu对应的存储空间。
18.在可选的实施方式中,所述固件包括运行状态恢复程序;
19.所述cpu用于将执行所述运行状态恢复程序的第三指令发送给所述通信模块;
20.所述通信模块用于将所述第三指令发送给服务器;
21.所述服务器用于根据所述第三指令,从所述mcu对应的存储空间中获取最新运行
参数并发送给所述通信模块;
22.所述通信模块用于将所述最新运行参数发送给所述加解密模块;
23.所述加解密模块用于将对所述最新运行参数进行解密,并将解密后的最新运行参数发送给所述cpu;
24.所述cpu用于将所述解密后的最新运行参数发送给所述寄存器;
25.所述寄存器用于存储所述解密后的最新运行参数,以使所述mcu恢复运行状态。
26.在可选的实施方式中,所述服务器包括所述mcu对应的存储空间;所述mcu还包括与所述cpu通信连接ram存储器;
27.所述ram存储器用于存储采集到的用户数据;
28.所述cpu用于定期读取所述ram存储器中的用户数据,并将备份所述用户数据的第四指令发送给所述加解密模块;
29.所述加解密模块用于根据所述第四指令对所述用户数据进行加密,并将加密后的用户数据发送给所述通信模块;
30.所述通信模块用于将所述加密后的用户数据发送给所述服务器;
31.所述服务器用于将所述加密后的用户数据存储至与所述mcu对应的存储空间。
32.在可选的实施方式中,所述固件包括数据恢复程序;
33.所述cpu用于将执行所述数据恢复程序的第五指令发送给所述通信模块;
34.所述通信模块用于将所述第五指令发送给服务器;
35.所述服务器用于根据所述第五指令,从所述mcu对应的存储空间中获取全部用户数据并发送给所述通信模块;
36.所述通信模块用于将全部用户数据发送给所述加解密模块;
37.所述加解密模块用于将对全部用户数据进行解密,并将全部解密后的用户数据发送给所述cpu;
38.所述cpu用于将全部解密后的用户数据发送给所述ram存储器;
39.所述ram存储器用于存储全部解密后的用户数据。
40.在可选的实施方式中,所述mcu具有芯片标识和产品型号,所述服务器预存的固件为多个,所述服务器预存有每个所述固件的固件标识和匹配表,所述匹配表包括每个所述固件标识对应的产品型号;
41.所述cpu用于根据所述mcu的芯片标识和产品型号生成匹配指令并发送给所述通信模块;
42.所述通信模块用于将所述匹配指令发送给所述服务器;
43.所述服务器用于根据所述匹配指令,在所述匹配表中确定与所述mcu的产品型号对应的目标固件标识,并在建立所述目标固件标识与所述mcu的芯片标识的对应关系后,将匹配成功信息发送给通信模块;
44.所述通信模块用于将所述匹配成功信息发送给所述cpu。
45.第二方面,本发明提供一种基础程序执行方法,应用于基础程序执行系统,所述系统包括通信连接的mcu和服务器,所述mcu包括通信连接的cpu、加解密模块和通信模块,所述服务器预存有固件,所述固件包括多个已加密的基础程序,所述方法包括:
46.所述cpu将执行目标基础程序的第一指令发送给所述通信模块;
47.所述通信模块将所述第一指令发送给服务器;
48.所述服务器根据所述第一指令,从所述固件中获取所述目标基础程序并发送给所述通信模块;
49.所述通信模块将所述目标基础程序发送给所述加解密模块;
50.所述加解密模块对所述目标基础程序行解密,并将解密后的目标基础程序发送给所述cpu;
51.所述cpu执行所述解密后的目标基础程序。
52.在可选的实施方式中,所述服务器包括所述mcu对应的存储空间;所述mcu还包括与所述cpu通信连接的寄存器,所述寄存器用于存储表示所述mcu当前运行状态的运行参数;所述方法还包括:
53.所述cpu定期读取所述寄存器中的运行参数,并将存储所述运行参数的第二指令发送给所述加解密模块;
54.所述加解密模块根据所述第二指令对所述运行参数进行加密,并将加密后的运行参数发送给所述通信模块;
55.所述通信模块将所述加密后的运行参数发送给所述服务器;
56.所述服务器将所述加密后的运行参数存储至与所述mcu对应的存储空间。
57.在可选的实施方式中,所述服务器包括所述mcu对应的存储空间;所述mcu还包括与所述cpu通信连接ram存储器,所述ram存储器用于存储采集到的用户数据;所述方法还包括:
58.所述cpu定期读取所述ram存储器中的用户数据,并将备份所述用户数据的第四指令发送给所述加解密模块;
59.所述加解密模块根据所述第四指令对所述用户数据进行加密,并将加密后的用户数据发送给所述通信模块;
60.所述通信模块将所述加密后的用户数据发送给所述服务器;
61.所述服务器将所述加密后的用户数据存储至与所述mcu对应的存储空间。
62.在可选的实施方式中,所述mcu具有芯片标识和产品型号,所述服务器预存的固件为多个,所述服务器预存有每个所述固件的固件标识和匹配表,所述匹配表包括每个所述固件标识对应的产品型号;所述方法还包括:
63.所述cpu根据所述mcu的芯片标识和产品型号生成匹配指令并发送给所述通信模块;
64.所述通信模块将所述匹配指令发送给所述服务器;
65.所述服务器根据所述匹配指令,在所述匹配表中确定与所述mcu的产品型号对应的目标固件标识,并在建立所述目标固件标识与所述mcu的芯片标识的对应关系后,将匹配成功信息发送给通信模块;
66.所述通信模块将所述匹配成功信息发送给所述cpu。
67.本发明实施例提供的基础程序执行系统及方法,基础程序执行系统包括通信连接的mcu和服务器,mcu包括通信连接的cpu、加解密模块和通信模块,服务器预存有固件,固件包括多个已加密的基础程序;cpu用于将执行目标基础程序的第一指令发送给通信模块;通信模块用于将第一指令发送给服务器;服务器用于根据第一指令,从固件中获取目标基础
程序并发送给通信模块;通信模块用于将目标基础程序发送给加解密模块;加解密模块用于对目标基础程序进行解密,并将解密后的目标基础程序发送给cpu;cpu用于执行解密后的目标基础程序。通过将包含基础程序的固件存储在服务器,从根源上避免了固件被破解,有效地保护了固件,提高了固件的安全性和保密性。
68.为使本发明的上述目的、特征和优点能更明显易懂,下文特举较佳实施例,并配合所附附图,作详细说明如下。
附图说明
69.为了更清楚地说明本发明实施例的技术方案,下面将对实施例中所需要使用的附图作简单地介绍,应当理解,以下附图仅示出了本发明的某些实施例,因此不应被看作是对范围的限定,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他相关的附图。
70.图1示出了本发明实施例提供的基础程序执行系统的一种结构示意图;
71.图2示出了本发明实施例提供的基础程序执行系统的又一种结构示意图;
72.图3示出了本发明实施例提供的基础程序执行系统的又一种结构示意图;
73.图4示出了本发明实施例提供的基础程序执行方法的一种流程示意图;
74.图5示出了本发明实施例提供的基础程序执行方法的又一种流程示意图;
75.图6示出了本发明实施例提供的基础程序执行方法的又一种流程示意图;
76.图7示出了本发明实施例提供的基础程序执行方法的又一种流程示意图。
77.图标:100-mcu;200-服务器;110-总线;120-cpu;130-加解密模块;140-通信模块;150-寄存器;160-ram存储器。
具体实施方式
78.下面将结合本发明实施例中附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。通常在此处附图中描述和示出的本发明实施例的组件可以以各种不同的配置来布置和设计。
79.因此,以下对在附图中提供的本发明的实施例的详细描述并非旨在限制要求保护的本发明的范围,而是仅仅表示本发明的选定实施例。基于本发明的实施例,本领域技术人员在没有做出创造性劳动的前提下所获得的所有其他实施例,都属于本发明保护的范围。
80.需要说明的是,术语“第一”和“第二”等之类的关系术语仅仅用来将一个实体或者操作与另一个实体或操作区分开来,而不一定要求或者暗示这些实体或操作之间存在任何这种实际的关系或者顺序。而且,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。在没有更多限制的情况下,由语句“包括一个
……”
限定的要素,并不排除在包括所述要素的过程、方法、物品或者设备中还存在另外的相同要素。
81.请参照图1,是本发明实施例提供的基础程序执行系统的一种结构示意图。其中基础程序执行系统包括mcu100和服务器200,这两者可以通过wifi、4g、5g、蓝牙和蓝牙网关等方式通信连接。
82.mcu100包括总线110、cpu120、加解密模块130和通信模块140。
83.总线110可以是将mcu100中的元件相互连接并在mcu100的元件之间传递通信的电路。
84.cpu120即中央处理器(central processing unit,cpu),是一种集成电路芯片,具有信号处理能力。cpu120可以通过总线110从mcu100中的其他元件(例如加解密模块130和通信模块140等)接收命令,可以解释接收到的命令,并可以根据所解释的命令来执行计算或数据处理。
85.加解密模块130可以对固件中的基础程序进行解密,和对mcu100与服务器200的交互数据进行加密和解密。
86.通信模块140可以支持mcu100与服务器200进行信令或数据的通信。
87.服务器200可以是独立的服务器,也可以是多个服务器组成的服务器集。服务器200预存有固件,固件包括多个已加密的基础程序,这些基础程序用于支持电子设备的基础功能。
88.为了便于理解,下面将以基础程序用于支持运动手环的基础功能为例,对上述的基础程序执行系统进行介绍。应当理解的是,本发明实施例中的基础程序也可以用于支持其他电子设备的基础功能,本发明实施例不做限定。
89.运动手环通常具有显示界面、采集运动数据等基础功能。这些基础功能需要对应的基础程序来支持,而这些基础程序是该运动手环的核心技术。为了避免核心技术泄露,可以将全部基础程序加密后存储到服务器200的固件,然后通过运动手环中的芯片mcu100与服务器200进行通信来实现运动手环的基础功能。
90.cpu120用于将执行目标基础程序的第一指令发送给通信模块140;通信模块140用于将第一指令发送给服务器200;
91.服务器200用于根据第一指令,从固件中获取目标基础程序并发送给通信模块140;
92.通信模块140用于将目标基础程序发送给加解密模块130;加解密模块130用于对目标基础程序进行解密,并将解密后的目标基础程序发送给cpu120;cpu120用于执行解密后的目标基础程序。
93.例如,当运动手环实现某一项基础功能时,需要执行该基础功能对应的基础程序即目标基础程序。cpu120生成执行该目标基础程序的第一指令,并将该第一指令发送给通信模块140;通信模块140将接收的第一指令发送给服务器200。
94.然后服务器200根据接收的第一指令,从固件中获取该目标基础程序并发送给通信模块140;通信模块140将接收的目标基础程序发送给加解密模块130;加解密模块130对接收到的目标基础程序进行解密,得到解密后的目标基础程序并发送给cpu120;最后cpu120接收该解密后的目标基础程序并执行,以实现该基础功能。
95.可见,本发明实施例提供的基础程序执行系统包括通信连接的mcu100和服务器200,mcu100包括通信连接的cpu120、加解密模块130和通信模块140,服务器200预存有固件,固件包括多个已加密的基础程序;cpu120用于将执行目标基础程序的第一指令发送给通信模块140;通信模块140用于将第一指令发送给服务器200;服务器200用于根据第一指令,从固件中获取目标基础程序并发送给通信模块140;通信模块140用于将目标基础程序
发送给加解密模块130;加解密模块130用于对目标基础程序进行解密,并将解密后的目标基础程序发送给cpu120;cpu120用于执行解密后的目标基础程序。通过将包含基础程序的固件存储在服务器200,从根源上避免了固件被破解,有效地保护了固件,提高了固件的安全性和保密性。
96.可选地,服务器200中包括mcu100对应的存储空间,用于存储该mcu100的信息。如运动手环中的mcu100可以通过与服务器200进行通信,将其运行时的状态保存到该存储空间。
97.请参阅图2,是本发明实施例提供的基础程序执行系统的又一种结构示意图。其中,mcu100还包括与cpu120通信连接的寄存器150。寄存器150可以存储从cpu120或mcu100中的其它元件接收的命令或数据或者由cpu120或mcu100中的其它元件产生的命令或数据。
98.寄存器150用于存储表示mcu100当前运行状态的运行参数;cpu120用于定期读取寄存器150中的运行参数,并将存储运行参数的第二指令发送给加解密模块130;
99.加解密模块130用于根据第二指令对运行参数进行加密,并将加密后的运行参数发送给通信模块140;通信模块140用于将加密后的运行参数发送给服务器200;
100.服务器200用于将加密后的运行参数存储至与mcu100对应的存储空间。
101.例如,运动手环运行过程中获取mcu100当前的运行参数并存储到寄存器150中。cpu120按照设定的周期定期读取寄存器150中的运行参数,并生成存储该运行参数的第二指令然后发送给加解密模块130;加解密模块130根据接收的第二指令对该运行参数进行加密,得到加密后的运行参数并发送给通信模块140;然后通信模块140接收该加密后的运行参数并发送给服务器200;服务器200接收该加密后的运行参数并存储到与该mcu100对应的存储空间中。
102.可以理解的是,运动手环可能会出现卡顿等异常情况导致需要重启,为了使重启后的运动手环能够恢复到异常前的运行状态,进而固件中包括运行状态恢复程序,可以执行该运行状态恢复程序以恢复运行状态。
103.cpu120用于将执行运行状态恢复程序的第三指令发送给通信模块140;通信模块140用于将第三指令发送给服务器200;
104.服务器200用于根据第三指令,从mcu100对应的存储空间中获取最新运行参数并发送给通信模块140;
105.通信模块140用于将最新运行参数发送给加解密模块130;加解密模块130用于将对最新运行参数进行解密,并将解密后的最新运行参数发送给cpu120;
106.cpu120用于将解密后的最新运行参数发送给寄存器150;寄存器150用于存储解密后的最新运行参数,以使mcu100恢复运行状态。
107.例如,cpu120生成执行运行状态恢复程序的第三指令,并将该第三指令发送给通信模块140;然后通信模块140将接收的第三指令发送给服务器200;服务器200根据接收的第三指令,从该mcu100对应的存储空间获取到最新运行参数,即最接近当前时间的运行参数,并将该最新运行参数发送给通信模块140。
108.然后通信模块140将接收的最新运行参数发送给加解密模块130;加解密模块130对接收的最新运行参数进行解密,得到解密后的最新运行参数并发送给cpu120;cpu120将解密后的最新运行参数发送给寄存器150;最后寄存器150存储该解密后的最新运行参数,
以使mcu100恢复运行状态。
109.可选地,运动手环中的mcu100还可以通过与服务器200进行通信,将采集到的用户数据进行备份即存储到服务器200中该mcu100对应的存储空间。
110.请参阅图3,是本发明实施例提供的基础程序执行系统的又一种结构示意图。其中,mcu100还包括与cpu120通信连接ram存储器160。ram存储160即随机存取存储器(random access memory,ram),可以存储从cpu120或mcu100中的其它元件接收的命令或数据或者由cpu120或mcu100中的其它元件产生的命令或数据。
111.ram存储器160用于存储采集到的用户数据;cpu120用于定期读取ram存储器160中的用户数据,并将备份用户数据的第四指令发送给加解密模块130;
112.加解密模块130用于根据第四指令对用户数据进行加密,并将加密后的用户数据发送给通信模块140;
113.通信模块140用于将加密后的用户数据发送给服务器200;服务器200用于将加密后的用户数据存储至与mcu100对应的存储空间。
114.例如,运行手环采集用户运动过程中的数据即用户数据并存储到ram存储器160中。cpu120按照设定的周期定期读取ram存储器160中的用户数据,并生成备份该用户数据的第四指令然后发送给加解密模块130;加解密模块130根据接收的第四指令对该用户数据进行加密,得到加密后的用户数据并发送给通信模块140;然后通信模块140接收该加密后的用户数据并发送给服务器200;服务器200接收该加密后的用户数据并存储到与该mcu100对应的存储空间中。
115.可以理解的是,运动手环可能会出现异常断电等异常情况导致数据丢失,进而固件中包括数据恢复程序,可以执行该运行状态恢复程序以恢复数据。
116.cpu120用于将执行数据恢复程序的第五指令发送给通信模块140;通信模块140用于将第五指令发送给服务器200;
117.服务器200用于根据第五指令,从mcu100对应的存储空间中获取全部用户数据并发送给通信模块140;
118.通信模块140用于将全部用户数据发送给加解密模块130;加解密模块130用于将对全部用户数据进行解密,并将全部解密后的用户数据发送给cpu120;
119.cpu120用于将全部解密后的用户数据发送给ram存储器160;ram存储器160用于存储全部解密后的用户数据。
120.例如,cpu120生成执行数据恢复程序的第五指令,并将该第五指令发送给通信模块140;然后通信模块140将接收的第五指令发送给服务器200;服务器200根据接收的第五指令,从该mcu100对应的存储空间获取到全部用户数据,并将该全部用户数据发送给通信模块140。
121.然后通信模块140将接收的全部用户数据发送给加解密模块130;加解密模块130对接收的全部用户数据进行解密,得到全部解密后的用户数据并发送给cpu120;cpu120将全部解密后的用户数据发送给ram存储器160;最后ram存储器160存储该全部解密后的用户数据,以使mcu100恢复全部的用户数据。
122.可选地,对于同一型号的运动手环,其具有相同的固件,为了节省服务器200的存储资源,可以使同一型号的运动手环共享一个固件,进而需要确定与该运动手环中mcu100
匹配的固件。
123.mcu100具有芯片标识和产品型号。可以理解的是,对于同一型号的运动手环,每个运动手环中mcu100的产品型号是相同的,但是每个运动手环中mcu100的芯片标识是不同的。
124.服务器200中有多个固件,并且每个固件均有固件标识,服务器200中预存有匹配表,该匹配表包括每个固件标识对应的产品型号。
125.cpu120用于根据mcu100的芯片标识和产品型号生成匹配指令并发送给通信模块140;通信模块140用于将匹配指令发送给服务器200;
126.服务器200用于根据匹配指令,在匹配表中确定与mcu100的产品型号对应的目标固件标识,并在建立目标固件标识与mcu100的芯片标识的对应关系后,将匹配成功信息发送给通信模块140;
127.通信模块140用于将匹配成功信息发送给cpu120。
128.例如,cpu120根据mcu100的芯片标识和产品型号生成匹配指令并发送给通信模块140;通信模块140将接收的匹配指令发送给服务器200;服务器200根据接收的匹配指令,在匹配表中确定与该mcu100的产品型号对应的目标固件标识,然后建立该目标固件标识与该mcu100的芯片标识的对应关系,再将匹配成功信息发送给通信模块140,可选地,该匹配成功信息可以包括目标固件标识;然后通信模块140将接收的匹配成功信息发送给cpu120,cpu120可以接收该匹配成功信息并将其中的目标固件标识进行存储,以完成该mcu100与固件的匹配。
129.基于上述实施例中的基础程序执行系统,本发明实施例还提供了一种基础程序执行方法。请参阅图4,是本发明实施例提供的基础程序执行方法的一种流程示意图,其中包括以下步骤:
130.步骤s301,cpu将执行目标基础程序的第一指令发送给通信模块;
131.步骤s303,通信模块将第一指令发送给服务器;
132.步骤s305,服务器根据第一指令,从固件中获取目标基础程序并发送给通信模块;
133.步骤s307,通信模块将目标基础程序发送给加解密模块;
134.步骤s309,加解密模块对目标基础程序进行解密,并将解密后的目标基础程序发送给cpu;
135.步骤s311,cpu执行解密后的目标基础程序。
136.可以理解的是,在上述实施例中,已经介绍过通过运动手环中的芯片mcu与服务器进行通信来实现运动手环的基础功能。步骤s301至步骤s311的基本原理及产生的技术效果和上述实施例相同,为简要描述,可参考上述实施例的相应内容。
137.可见基于上述步骤,通过cpu将执行目标基础程序的第一指令发送给通信模块;通信模块将第一指令发送给服务器;服务器根据第一指令,从固件中获取目标基础程序并发送给通信模块;通信模块将目标基础程序发送给加解密模块;加解密模块对目标基础程序进行解密,并将解密后的目标基础程序发送给cpu;cpu执行解密后的目标基础程序。通过将包含基础程序的固件存储在服务器,从根源上避免了固件被破解,有效地保护了固件,提高了固件的安全性和保密性。
138.可选地,服务器包括mcu对应的存储空间,mcu还包括与cpu通信连接的寄存器,该
寄存器用于存储表示mcu当前运行状态的运行参数。本发明实施例还提供了一种可能的实现方式。请参阅图5,其中包括以下步骤:
139.步骤s313a,cpu定期读取寄存器中的运行参数,并将存储运行参数的第二指令发送给加解密模块;
140.步骤s315a,加解密模块根据第二指令对运行参数进行加密,并将加密后的运行参数发送给通信模块;
141.步骤s317a,通信模块将加密后的运行参数发送给服务器;
142.步骤s319a,服务器将加密后的运行参数存储至与mcu对应的存储空间。
143.可以理解的是,在上述实施例中,已经介绍过运动手环中的mcu通过与服务器进行通信,将mcu运行时的状态保存到服务器中。步骤s313a至步骤s319a的基本原理及产生的技术效果和上述实施例相同,为简要描述,可参考上述实施例的相应内容。
144.可选地,基于将mcu的运行参数存储到服务器中,固件包括运行状态恢复程序,在步骤s319a之后还可以包括以下步骤:
145.步骤s321a,cpu将执行运行状态恢复程序的第三指令发送给通信模块;
146.步骤s323a,通信模块将第三指令发送给服务器;
147.步骤s325a,服务器根据第三指令,从mcu对应的存储空间中获取最新运行参数并发送给通信模块;
148.步骤s327a,通信模块将最新运行参数发送给加解密模块;
149.步骤s329a,加解密模块将对最新运行参数进行解密,并将解密后的最新运行参数发送给cpu;
150.步骤s331a,cpu将解密后的最新运行参数发送给寄存器;
151.步骤s333a,寄存器存储解密后的最新运行参数,以使mcu恢复运行状态。
152.可以理解的是,在上述实施例中,已经介绍过通过执行运行状态恢复程序以使mcu恢复运行状态。步骤s321a至步骤s333a的基本原理及产生的技术效果和上述实施例相同,为简要描述,可参考上述实施例的相应内容。
153.可选地,服务器包括mcu对应的存储空间,mcu还包括与cpu通信连接ram存储器,该ram存储器用于存储采集到的用户数据。本发明实施例还提供了另一种可能的实现方式。请参阅图6,其中包括以下步骤:
154.步骤s313b,cpu定期读取ram存储器中的用户数据,并将备份用户数据的第四指令发送给加解密模块;
155.步骤s315b,加解密模块根据第四指令对用户数据进行加密,并将加密后的用户数据发送给通信模块;
156.步骤s317b,通信模块将加密后的用户数据发送给服务器;
157.步骤s319b,服务器将加密后的用户数据存储至与mcu对应的存储空间。
158.可以理解的是,在上述实施例中,已经介绍过运动手环中的mcu通过与服务器进行通信,将采集到的用户数据存储到服务器中。步骤s313b至步骤s319b的基本原理及产生的技术效果和上述实施例相同,为简要描述,可参考上述实施例的相应内容。
159.可选地,基于将采集到的用户数据存储到服务器中,固件包括数据恢复程序,在步骤s319b之后还可以包括以下步骤:
160.步骤s321b,cpu将执行数据恢复程序的第五指令发送给通信模块;
161.步骤s323b,通信模块将第五指令发送给服务器;
162.步骤s325b,服务器根据第五指令,从mcu对应的存储空间中获取全部用户数据并发送给通信模块;
163.步骤s327b,通信模块将全部用户数据发送给加解密模块;
164.步骤s329b,加解密模块将对全部用户数据进行解密,并将全部解密后的用户数据发送给cpu;
165.步骤s3231b,cpu将全部解密后的用户数据发送给ram存储器;
166.步骤s333b,ram存储器存储全部解密后的用户数据。
167.可以理解的是,在上述实施例中,已经介绍过通过执行数据恢复程序以使mcu恢复用户数据。步骤s321b至步骤s333b的基本原理及产生的技术效果和上述实施例相同,为简要描述,可参考上述实施例的相应内容。
168.可选地,mcu具有芯片标识和产品型号,服务器预存的固件为多个,服务器预存有每个固件的固件标识和匹配表,匹配表包括每个固件标识对应的产品型号。本发明实施例还提供了一种可能的实现方式,请参阅图7,其中包括以下步骤:
169.步骤s335,cpu根据mcu的芯片标识和产品型号生成匹配指令并发送给通信模块;
170.步骤s337,通信模块将匹配指令发送给服务器;
171.步骤s339,服务器根据匹配指令,在匹配表中确定与mcu的产品型号对应的目标固件标识,并在建立目标固件标识与mcu的芯片标识的对应关系后,将匹配成功信息发送给通信模块;
172.步骤s341,通信模块将匹配成功信息发送给cpu。
173.可以理解的是,在上述实施例中,已经介绍过确定与运动手环中mcu匹配的固件。步骤s335至步骤s341的基本原理及产生的技术效果和上述实施例相同,为简要描述,可参考上述实施例的相应内容。
174.综上所述,本发明提供的基础程序执行系统及方法,基础程序执行系统包括通信连接的mcu和服务器,mcu包括通信连接的cpu、加解密模块和通信模块,服务器预存有固件,固件包括多个已加密的基础程序;cpu用于将执行目标基础程序的第一指令发送给通信模块;通信模块用于将第一指令发送给服务器;服务器用于根据第一指令,从固件中获取目标基础程序并发送给通信模块;通信模块用于将目标基础程序发送给加解密模块;加解密模块用于对目标基础程序进行解密,并将解密后的目标基础程序发送给cpu;cpu用于执行解密后的目标基础程序。通过将包含基础程序的固件存储在服务器,从根源上避免了固件被破解,有效地保护了固件,提高了固件的安全性和保密性。
175.以上所述仅为本发明的优选实施例而已,并不用于限制本发明,对于本领域的技术人员来说,本发明可以有各种更改和变化。凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。

技术特征:


1.一种基础程序执行系统,其特征在于,所述系统包括通信连接的mcu和服务器,所述mcu包括通信连接的cpu、加解密模块和通信模块,所述服务器预存有固件,所述固件包括多个已加密的基础程序;所述cpu用于将执行目标基础程序的第一指令发送给所述通信模块;所述通信模块用于将所述第一指令发送给服务器;所述服务器用于根据所述第一指令,从所述固件中获取所述目标基础程序并发送给所述通信模块;所述通信模块用于将所述目标基础程序发送给所述加解密模块;所述加解密模块用于对所述目标基础程序行解密,并将解密后的目标基础程序发送给所述cpu;所述cpu用于执行所述解密后的目标基础程序。2.根据权利要求1所述的系统,其特征在于,所述服务器包括所述mcu对应的存储空间;所述mcu还包括与所述cpu通信连接的寄存器;所述寄存器用于存储表示所述mcu当前运行状态的运行参数;所述cpu用于定期读取所述寄存器中的运行参数,并将存储所述运行参数的第二指令发送给所述加解密模块;所述加解密模块用于根据所述第二指令对所述运行参数进行加密,并将加密后的运行参数发送给所述通信模块;所述通信模块用于将所述加密后的运行参数发送给所述服务器;所述服务器用于将所述加密后的运行参数存储至与所述mcu对应的存储空间。3.根据权利要求2所述的系统,其特征在于,所述固件包括运行状态恢复程序;所述cpu用于将执行所述运行状态恢复程序的第三指令发送给所述通信模块;所述通信模块用于将所述第三指令发送给服务器;所述服务器用于根据所述第三指令,从所述mcu对应的存储空间中获取最新运行参数并发送给所述通信模块;所述通信模块用于将所述最新运行参数发送给所述加解密模块;所述加解密模块用于将对所述最新运行参数进行解密,并将解密后的最新运行参数发送给所述cpu;所述cpu用于将所述解密后的最新运行参数发送给所述寄存器;所述寄存器用于存储所述解密后的最新运行参数,以使所述mcu恢复运行状态。4.根据权利要求1所述的系统,其特征在于,所述服务器包括所述mcu对应的存储空间;所述mcu还包括与所述cpu通信连接ram存储器;所述ram存储器用于存储采集到的用户数据;所述cpu用于定期读取所述ram存储器中的用户数据,并将备份所述用户数据的第四指令发送给所述加解密模块;所述加解密模块用于根据所述第四指令对所述用户数据进行加密,并将加密后的用户数据发送给所述通信模块;所述通信模块用于将所述加密后的用户数据发送给所述服务器;所述服务器用于将所述加密后的用户数据存储至与所述mcu对应的存储空间。
5.根据权利要求4所述的系统,其特征在于,所述固件包括数据恢复程序;所述cpu用于将执行所述数据恢复程序的第五指令发送给所述通信模块;所述通信模块用于将所述第五指令发送给服务器;所述服务器用于根据所述第五指令,从所述mcu对应的存储空间中获取全部用户数据并发送给所述通信模块;所述通信模块用于将全部用户数据发送给所述加解密模块;所述加解密模块用于将对全部用户数据进行解密,并将全部解密后的用户数据发送给所述cpu;所述cpu用于将全部解密后的用户数据发送给所述ram存储器;所述ram存储器用于存储全部解密后的用户数据。6.根据权利要求1所述的系统,其特征在于,所述mcu具有芯片标识和产品型号,所述服务器预存的固件为多个,所述服务器预存有每个所述固件的固件标识和匹配表,所述匹配表包括每个所述固件标识对应的产品型号;所述cpu用于根据所述mcu的芯片标识和产品型号生成匹配指令并发送给所述通信模块;所述通信模块用于将所述匹配指令发送给所述服务器;所述服务器用于根据所述匹配指令,在所述匹配表中确定与所述mcu的产品型号对应的目标固件标识,并在建立所述目标固件标识与所述mcu的芯片标识的对应关系后,将匹配成功信息发送给通信模块;所述通信模块用于将所述匹配成功信息发送给所述cpu。7.一种基础程序执行方法,其特征在于,应用于基础程序执行系统,所述系统包括通信连接的mcu和服务器,所述mcu包括通信连接的cpu、加解密模块和通信模块,所述服务器预存有固件,所述固件包括多个已加密的基础程序,所述方法包括:所述cpu将执行目标基础程序的第一指令发送给所述通信模块;所述通信模块将所述第一指令发送给服务器;所述服务器根据所述第一指令,从所述固件中获取所述目标基础程序并发送给所述通信模块;所述通信模块将所述目标基础程序发送给所述加解密模块;所述加解密模块对所述目标基础程序行解密,并将解密后的目标基础程序发送给所述cpu;所述cpu执行所述解密后的目标基础程序。8.根据权利要求7所述的方法,其特征在于,所述服务器包括所述mcu对应的存储空间;所述mcu还包括与所述cpu通信连接的寄存器,所述寄存器用于存储表示所述mcu当前运行状态的运行参数;所述方法还包括:所述cpu定期读取所述寄存器中的运行参数,并将存储所述运行参数的第二指令发送给所述加解密模块;所述加解密模块根据所述第二指令对所述运行参数进行加密,并将加密后的运行参数发送给所述通信模块;所述通信模块将所述加密后的运行参数发送给所述服务器;
所述服务器将所述加密后的运行参数存储至与所述mcu对应的存储空间。9.根据权利要求7所述的方法,其特征在于,所述服务器包括所述mcu对应的存储空间;所述mcu还包括与所述cpu通信连接ram存储器,所述ram存储器用于存储采集到的用户数据;所述方法还包括:所述cpu定期读取所述ram存储器中的用户数据,并将备份所述用户数据的第四指令发送给所述加解密模块;所述加解密模块根据所述第四指令对所述用户数据进行加密,并将加密后的用户数据发送给所述通信模块;所述通信模块将所述加密后的用户数据发送给所述服务器;所述服务器将所述加密后的用户数据存储至与所述mcu对应的存储空间。10.根据权利要求7所述的方法,其特征在于,所述mcu具有芯片标识和产品型号,所述服务器预存的固件为多个,所述服务器预存有每个所述固件的固件标识和匹配表,所述匹配表包括每个所述固件标识对应的产品型号;所述方法还包括:所述cpu根据所述mcu的芯片标识和产品型号生成匹配指令并发送给所述通信模块;所述通信模块将所述匹配指令发送给所述服务器;所述服务器根据所述匹配指令,在所述匹配表中确定与所述mcu的产品型号对应的目标固件标识,并在建立所述目标固件标识与所述mcu的芯片标识的对应关系后,将匹配成功信息发送给通信模块;所述通信模块将所述匹配成功信息发送给所述cpu。

技术总结


本发明涉及芯片技术领域,提供一种基础程序执行系统及方法。基础程序执行系统包括通信连接的MCU和服务器,MCU包括通信连接的CPU、加解密模块和通信模块,服务器预存有固件,固件包括多个已加密的基础程序;CPU用于将执行目标基础程序的第一指令发送给通信模块;通信模块用于将第一指令发送给服务器;服务器用于根据第一指令,从固件中获取目标基础程序并发送给通信模块;通信模块用于将目标基础程序发送给加解密模块;加解密模块用于对目标基础程序进行解密,并将解密后的目标基础程序发送给CPU;CPU用于执行解密后的目标基础程序。通过将包含基础程序的固件存储在服务器,从根源上避免固件被破解,提高固件的安全性和保密性。提高固件的安全性和保密性。提高固件的安全性和保密性。


技术研发人员:

雷超

受保护的技术使用者:

广州众诺电子技术有限公司

技术研发日:

2022.09.05

技术公布日:

2022/12/16

本文发布于:2024-09-21 20:53:41,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/2/42079.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:所述   模块   通信   发送给
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议