一种芯片烧录方法和装置与流程

文档序号:33373215发布日期:2023-03-08 03:04阅读:114来源:国知局
一种芯片烧录方法和装置与流程

1.本发明涉及烧录技术领域,具体涉及一种芯片烧录方法和装置。


背景技术:

2.随着电子信息技术的发展,信息传输的安全性越来越重要。对于控制芯片来说,由于其需要向内部烧录程序才能使用,因此保证烧录到控制芯片的程序不被解密即不被外泄,对软件开发公司的程序保护至关重要。
3.现有控制芯片的程序烧录大多是先通过烧录软件将烧录程序发送到烧录器,然后由烧录软件将烧录程序烧录到控制芯片中。现有控制芯片的程序烧录过程如下:
4.先通过加密算法生成密钥和公钥;然后使用公钥加密烧录程序,向烧录器发送烧录程序时将密钥发送给烧录器;接着由烧录器使用密钥对烧录程序进行解密;最后由烧录器将解密后的烧录程序烧录到控制芯片中。对于整个烧录过程来说,仅仅在软件烧录过程对烧录程序进行了单次加密,整个加密等级不高,不能确保程序在烧录过程中都是安全可靠的,达不到国标加密安全要求。


技术实现要素:

5.鉴于背景技术的不足,本发明是提供了一种芯片烧录方法和装置,所要解决的技术问题是现有芯片的程序烧录只通过一次加密对烧录程序进行加密,加密等级不高,安全性较差。
6.为解决以上技术问题,第一方面,本发明提供了一种芯片烧录方法,包括以下步骤:
7.s1:使用第一加密算法生成第一密钥对,所述第一密钥对包括第一公钥和第一私钥;
8.s2:使用第二加密算法生成第二密钥;
9.s3:通过第二密钥对烧录程序进行加密,生成烧录文件;
10.s4:通过第一公钥对第二密钥进行加密,生成加密包;
11.s5:将第一私钥、烧录文件和加密包发送给烧录器;
12.s6:烧录器先通过第一私钥对加密包进行解密,获得第二密钥;然后烧录器通过第二密钥对烧录文件进行解密,获得所述烧录程序;最后烧录器将烧录程序烧录到芯片内。
13.在第一方面的某种实施方式中,所述第一加密算法为非对称加密算法,所述第二加密算法为对称加密算法。
14.在第一方面的某种实施方式中,所述第一加密算法为rsa加密算法,所述第二加密算法为aes加密算法。
15.在第一方面的某种实施方式中,所述第一密钥对的长度在2048位以上,所述第二密钥对的长度在2048位以上。
16.在第一方面的某种实施方式中,在步骤s6中,所述烧录器在获得所述烧录程序后
且在将烧录程序烧录到芯片内之前时执行以下步骤:对芯片进行硬件初始化。
17.第二方面,本发明还提供了一种芯片烧录装置,包括烧录器、上位机和管理密钥生成单元;所述上位机用于对烧录程序进行加密;
18.所述管理密钥生成单元被配置于生成第一密钥对,所述第一密钥对包括第一公钥和第一私钥;所述管理密钥生成单元将所述第一私钥发送给所述烧录器、将所述第一公钥发送给所述上位机;
19.所述上位机被配置于生成第二密钥,所述上位机使用第二密钥对所述烧录程序进行加密,生成烧录文件,所述上位机使用所述第一公钥对所述第二密钥进行加密,生成加密包,所述上位机将所述烧录文件和加密包发送给所述上位机;
20.所述烧录器通过所述第一私钥对所述加密包进行解密,获得第二密钥,所述烧录器通过所述第二密钥对所述加密文件进行解密,获得烧录程序,所述烧录器将所述烧录程序烧录到芯片内。
21.在第二方面的某种实施方式中,所述管理密钥生成单元通过非对称加密算法生成第一密钥对,所述上位机通过对称加密算法生成第二密钥。
22.在第二方面的某种实施方式中,所述非对称加密算法为rsa加密算法,所述对称加密算法为aes加密算法。
23.在第二方面的某种实施方式中,所述管理密钥生成单元生成的第一密钥对的长度在2048位以上,所述上位机生成的第二密钥的长度在2048位以上。
24.本发明与现有技术相比所具有的有益效果是:本发明在通过第二密钥对烧录程序进行加密的基础上还使用第一密钥对对第二密钥进行二次加密,能确保即使烧录文件在外泄时,由于不能获得第一私钥,仍然能保证别人不能获得烧录程序,提高了加密等级和程序传输安全性。
附图说明
25.图1为实施例中的烧录方法的流程图;
26.图2为实施例中的烧录装置的结构示意图。
具体实施方式
27.现在结合附图对本发明作进一步详细的说明。这些附图均为简化的示意图,仅以示意方式说明本发明的基本结构,因此其仅显示与本发明有关的构成。
28.现有芯片烧录时由于只使用单种加密算法例如aes加密算法、des加密算法、3des-512加密算法或者rsa512加密算法对烧录程序进行加密,加密等级不高,一旦出现私钥泄露,很容易出现烧录程序泄露情况。基于此,本发明提供了如图1所示的一种芯片烧录方法,包括以下步骤:
29.s1:使用第一加密算法生成第一密钥对,第一密钥对包括第一公钥和第一私钥。
30.具体地,本实施例中,第一加密算法为非对称加密算法。可选地,第一加密算法为rsa加密算法。在某种实施方式中,第一加密算法可以为其它的非对称加密算法。在实际使用时,为了进一步提高加密安全性,第一密钥对的长度在2048位以上。
31.s2:使用第二加密算法生成第二密钥。
32.具体地,本实施例中,第二加密算法为对称加密算法。可选地,第二加密算法为aes加密算法。在某种实施方式中,第二加密算法可以为其它的对称加密算法。在实际使用时,为了进一步提高加密安全性,第二密钥对的长度在2048位以上。
33.s3:通过第二密钥对烧录程序进行加密,生成烧录文件。
34.具体地,生成烧录文件的过程如下:
35.先将烧录程序划分为m段明文;m为大于1的正整数;
36.然后将第一段明文与初始块进行异或运算,生成第一中间明文;其中在通过第二加密算法生成第二密钥时会生成初始块;
37.接着使用第二密钥对第一中间明文进行加密生成第一密文块;
38.然后将第二段明文与第一密文块进行异或运算,生成第二中间明文;
39.接着使用第二密钥对第二中间明文进行加密生成第二密文块;
40.直至将第m段明文与第m-1密文块进行异或运输,生成第m中间明文,然后使用第二密钥对第m中间明文进行加密生成第m密文块。
41.s4:通过第一公钥对第二密钥进行加密,生成加密包。
42.s5:将第一私钥、烧录文件和加密包发送给烧录器。
43.s6:烧录器先通过第一私钥对加密包进行解密,获得第二私钥;然后烧录器通过第二私钥对烧录文件进行解密,获得所述烧录程序;最后烧录器将烧录程序烧录到芯片内。
44.具体地,本实施例中,烧录器3通过第一私钥对加密包进行解密的步骤如下:
45.烧录器3在获得第一私钥后将第一私钥存在内存变量中,然后调用openssl库,使用第一私钥对第二密钥进行解密,解密后的第二密钥保存在内存变量中,这样在烧录器掉电或者重启后不能保存第二密钥,提高安全性。
46.具体地,本实施例中,烧录器通过第二密钥对烧录文件进行解密的步骤如下:
47.在实际使用时,在步骤s6中,烧录器在获得烧录程序后且在将烧录程序烧录到芯片内之前时执行以下步骤:对芯片进行硬件初始化。
48.在实际使用时,本发明的烧录方法在通过第二密钥对烧录程序进行加密的基础上还使用第一密钥对对第二密钥进行二次加密,能确保即使烧录文件在外泄时,由于不能获得第一私钥,仍然能保证别人不能获得烧录程序,提高了加密等级和程序传输安全性。
49.如图2所示,本发明还提供了一种芯片烧录装置,包括烧录器3、上位机2和管理密钥生成单元1;上位机2用于对烧录程序进行加密;
50.管理密钥生成单元1被配置于生成第一密钥对,第一密钥对包括第一公钥和第一私钥;管理密钥生成单元1将第一私钥发送给烧录器3、将第一公钥发送给上位机2;
51.上位机2被配置于生成第二密钥,上位机2使用第二公钥对烧录程序进行加密,生成烧录文件,上位机2使用第一公钥对第二密钥进行加密,生成加密包,上位机2将烧录文件和加密包发送给上位机2;
52.烧录器3通过第一私钥对加密包进行解密,获得第二密钥,烧录器3通过第二密钥对加密文件进行解密,获得烧录程序,烧录器3将烧录程序烧录到芯片内。
53.本实施例中,管理密钥生成单元1通过非对称加密算法生成第一密钥对,上位机2通过对称加密算法生成第二密钥。其中,非对称加密算法为rsa加密算法,对称加密算法为aes加密算法。另外,管理密钥生成单元1生成的第一密钥对的长度在2048位以上,上位机2
生成的第二密钥的长度在2048位以上。
54.在实际使用时,由于烧录程序是由软件工程师在上位机2上开发的,而本发明的烧录装置通过管理密钥生成单元1生成第一密钥对的第一公钥对上位机2生成的第二密钥进行加密,需要注意的是此时第一密钥对的第一私钥发送给烧录器3的,并没有发送给上位机2,因此通过管理密钥生成单元1可以确保上位机2产生的第二密钥是安全可靠的。
55.上述依据本发明为启示,通过上述的说明内容,相关工作人员完全可以在不偏离本项发明技术思想的范围内,进行多样的变更以及修改。本项发明的技术性范围并不局限于说明书上的内容,必须要根据权利要求范围来确定其技术性范围。
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1