CN102403037A - 芯片烧录座及芯片烧录方法 - Google Patents
芯片烧录座及芯片烧录方法 Download PDFInfo
- Publication number
- CN102403037A CN102403037A CN2011103615714A CN201110361571A CN102403037A CN 102403037 A CN102403037 A CN 102403037A CN 2011103615714 A CN2011103615714 A CN 2011103615714A CN 201110361571 A CN201110361571 A CN 201110361571A CN 102403037 A CN102403037 A CN 102403037A
- Authority
- CN
- China
- Prior art keywords
- burning
- mcu
- seat
- chip
- data
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Storage Device Security (AREA)
Abstract
本发明涉及一种芯片烧录座及一种芯片烧录方法,烧录座上加载有一MCU,MCU中烧录有加密算法;其中烧录方法包括以下步骤:(1)在上位机界面上选择需要烧录的芯片型号,选择完成后,上位机向烧录器机台发送该芯片对应的型号数据;(2)将烧录座放入烧录器上,烧录座上的MCU对其内存储的该烧录座的型号数据进行解密,并将解密后的型号数据发送给烧录器机台;(3)烧录器机台分别读取上位机发来的数据和MCU发来的数据,比较二者数据是否相匹配;(4)每进行一次烧录过程,烧录器机台向烧录座上的MCU发送一个进行烧录的信号;(5)若MCU接收到烧录器机台发送的进行烧录的信号,则启动其内部的计数机制,完成一次计数。芯片烧录座具有加密功能,能够有效保证烧录品质。
Description
技术领域
本发明涉及一种芯片烧录座,尤其涉及一种具有加密功能的芯片烧录座,还涉及一种芯片烧录方法。
背景技术
芯片烧录的方法有很多,在大规模生产中,还是以烧录器烧录为主。使用烧录器烧录,就都得使用到烧录座。目前,在烧录座上还都没使用加密机制。这样每个烧录座的使用次数就不能得到有效的监控,一旦超过烧录座的使用寿命,就没办法保证芯片的烧录品质。而且此时的烧录座也不具备侦测该烧录座与所需烧写的芯片的是否匹配的功能。
发明内容
本发明的技术解决问题是:克服现有技术的不足,提供一种具有加密功能的芯片烧录座,还提供一种具有加密功能的芯片烧录方法。
本发明的技术解决方案是:
本发明提供的芯片烧录座,该烧录座上加载有一MCU,所述MCU中烧录有加密算法。
优选地,所述MCU采用型号为STC15F100的单片机,其加载在该烧录座的底板上。
所述加密算法采用标准DES。DES加密算法的明文以64位为单位进行分块,64位数据在64位密钥的控制下,经过初始变换后,进行16轮加密迭代;其中一轮加密迭代的过程为:64位数据分成左右两半部分,每部分32位,密钥与右半部分相结合,然后再与左半部分相结合,结果作为新的右半部分,结合前的右半部分作为新的左半部分;这种轮换重复16次,最后一轮之后,再进行初始置换的逆置换,得到64位的密文。
本发明提供的芯片烧录方法,烧录座上加载有一MCU,所述MCU中烧录有加了密的该烧录座的型号数据;包括以下步骤:
(1)在上位机界面上选择需要烧录的芯片型号,选择完成后,上位机向烧录器机台发送该芯片对应的型号数据;
(2)将烧录座放入烧录器上,烧录座上的MCU对其内存储的该烧录座的型号数据进行解密,并将解密后的型号数据发送给烧录器机台;
(3)烧录器机台分别读取上位机发来的数据和MCU发来的数据,比较二者数据是否相匹配;
若匹配,则烧录器机台向上位机发送匹配成功的信号,上位机界面显示适配器匹配的信息;
若不匹配,则烧录器机台向上位机发送匹配错误的信号,上位机界面显示适配器不匹配的信息;
(4)每进行一次烧录过程,烧录器机台向烧录座上的MCU发送一个进行烧录的信号;
(5)若MCU接收到烧录器机台发送的进行烧录的信号,则启动其内部的计数机制,完成一次计数;MCU对计数结果进行加密,并对加密后的计数数据进行存储,下次更新数据时覆盖掉上一次的数据。
进一步地,还包括以下步骤:上位机检测烧录次数时,MCU对加了密的烧录次数数据进行解密,然后将解密后的烧录次数数据报告给上位机。
进一步地,步骤(2)中烧录座上的MCU通过模拟串口通信的方式,将解密后的型号数据发送给烧录器机台。
进一步地,步骤(4)中烧录器机台通过模拟串口通信的方式向烧录座上的MCU发送一个进行烧录的信号。
进一步地,所述加密算法采用标准DES。DES加密算法的明文以64位为单位进行分块,64位数据在64位密钥的控制下,经过初始变换后,进行16轮加密迭代;其中一轮加密迭代的过程为:64位数据分成左右两半部分,每部分32位,密钥与右半部分相结合,然后再与左半部分相结合,结果作为新的右半部分,结合前的右半部分作为新的左半部分;这种轮换重复16次,最后一轮之后,再进行初始置换的逆置换,得到64位的密文。
本发明与现有技术相比具有如下优点:本发明通过在烧录座上加载一个小型MCU,MCU中烧录有加密算法(具有加密性能),而且具有判断使用的烧录座与所需烧录的芯片是否匹配的功能,以达到管理烧录座的烧录次数的目的。这样就避免了烧录品质得不到控制的问题,有效地保证了烧录品质。
本发明进一步选择STC15F100单片机作为MCU,该芯片体积小,在PCB布线时,只需要将有效的PIN脚连接,减少PCB上的走线,使整体布线相对简单和清晰,还不需要增加原来烧录座的大小,节约了空间和成本。
附图说明
图1为STC15F100单片机引脚图。
图2为与STC15F100单片机连接的外围电路引脚示意图。
图3为STC15F100单片机与外围电路连接示意图。
图4为DES算法基本流程图。
图5为每一轮DES算法细节。
图6为适配器的匹配识别及加密解密过程。
具体实施方式
下面结合附图对本发明作进一步的详细描述:
根据本发明的芯片烧录座,该烧录座上加载有一MCU,所述MCU中烧录有加密算法。
本实施例中,所述MCU采用型号为STC15F100的单片机,其加载在该烧录座的底板上。STC15F100单片机的引脚连接图如图1-3所示。通过烧录座底板提供一个5V电源,经过一个10uF电容与单片机连接,去除了电源噪声,提高整个系统的抗干扰能力。
所述加密算法采用标准DES。DES加密算法是分组加密算法,明文以64位为单位分成块。64位数据在64位密钥的控制下,经过初始变换后,进行16轮加密迭代:64位数据被分成左右两半部分,每部分32位,密钥与右半部分相结合,然后再与左半部分相结合,结果作为新的右半部分;结合前的右半部分作为新的左半部分。这一系列步骤组成一轮。这种轮换要重复16次。最后一轮之后,再进行初始置换的逆置换,就得到了64位的密文。
图4为DES算法的基本流程:
DES的加密过程可分为加密处理,加密变换和子密钥生成几个部分组成。
1.加密处理过程
(1)初始变换。
加密处理首先要对64位的明文按表1所示的初始换位表IP进行变换。表1中的数值表示输入位被置换后的新位置。例如输入的第58位,在输出的时候被置换到第1位;输入的是第7位,在输出时被置换到第64位。
表1 初始置换表IP
58 | 50 | 42 | 34 | 26 | 18 | 10 | 2 |
60 | 52 | 44 | 36 | 28 | 20 | 12 | 4 |
62 | 54 | 46 | 38 | 30 | 22 | 14 | 6 |
64 | 56 | 48 | 40 | 32 | 24 | 16 | 8 |
57 | 49 | 41 | 25 | 25 | 17 | 9 | 1 |
59 | 51 | 43 | 27 | 27 | 19 | 11 | 3 |
61 | 53 | 45 | 29 | 29 | 21 | 13 | 5 |
63 | 55 | 47 | 31 | 31 | 23 | 15 | 7 |
(2)加密处理。
上述换位处理的输出,中间要经过16轮加密变换。初始换位的64位的输出作为下一次的输入,将64位分为左、右两个32位,分别记为L0和R0,从L0、R0到L16、R16,共进行16轮加密变换。其中,经过n轮处理后的点左右32位分别为Ln和Rn,则可做如下定义:
Ln=f(kn,Rn-1)
Rn=f(kn,Ln-1)
其中,kn是向第n轮输入的48位的子密钥,Ln-1和Rn-1分别是第n-1轮的输出,f是Mangler函数。
(3)最后换位。
进行16轮的加密变换之后,将L16和R16合成64位的数据,再按照表2所示的最后换位表进行IP-1的换位,得到64位的密文,这就是DES算法加密的结果。
表2 最后换位表IP
40 | 8 | 48 | 16 | 56 | 24 | 64 | 32 |
39 | 7 | 47 | 15 | 55 | 23 | 63 | 31 |
38 | 6 | 46 | 14 | 54 | 22 | 62 | 30 |
37 | 5 | 45 | 13 | 53 | 21 | 61 | 29 |
36 | 4 | 44 | 12 | 52 | 20 | 60 | 28 |
35 | 3 | 43 | 11 | 51 | 19 | 59 | 27 |
34 | 2 | 42 | 10 | 50 | 18 | 58 | 26 |
33 | 1 | 41 | 9 | 49 | 17 | 57 | 25 |
2.加密变换过程
通过重复某些位将32位的右半部分按照扩展表3扩展换位表扩展为48位,而56位的密钥先移位然后通过选择其中的某些位减少至48位,48位的右半部分通过异或操作和48位的密钥结合,并分成6位的8个分组,通过8个S-盒将这48位替代成新的32位数据,再将其置换一次。这些S-盒输入6位,输出4位。S盒如表5所示。
表3 扩展换位表E
32 | 1 | 2 | 3 | 4 | 5 |
4 | 5 | 6 | 7 | 8 | 9 |
8 | 9 | 10 | 11 | 12 | 13 |
12 | 13 | 14 | 15 | 16 | 17 |
16 | 17 | 18 | 19 | 20 | 21 |
20 | 21 | 22 | 23 | 24 | 25 |
24 | 25 | 26 | 27 | 28 | 29 |
28 | 29 | 30 | 31 | 32 | 1 |
表4 单纯换位表P
16 | 7 | 20 | 21 |
29 | 12 | 28 | 17 |
1 | 15 | 23 | 26 |
5 | 18 | 31 | 10 |
2 | 8 | 24 | 14 |
32 | 27 | 3 | 9 |
19 | 13 | 30 | 6 |
22 | 11 | 4 | 25 |
表5 8个S盒替换表
一个S盒中具有4种替换表(行号用0、1、2、3表示),通过输入的6位的开头和末尾两位选定行,然后按选定的替换表将输入的6位的中间4位进行替代,例如:当向S1输入011011时,开头和结尾的组合是01,所以选中编号为1的替代表,根据中间4位1101选定第13列,查找表中第1行第13列所示的值为5,即输出0101,这4位就是经过替代后的值。按此进行,输出32位,再按照表4单纯换位表P进行变换,如图5所示。
3.子密钥生成过程
子密钥通常表示为64位的自然数,首先通过压缩换位PC-1去掉每个字节的第八位,用作奇偶校验,因此密钥去掉第8、16、24……64位减至56位,所以实际密钥长度为56位,而每轮要生成48位的子密钥。输入的64位密钥,首先通过压缩换位得到56位的密钥,每层分成两部分,上部分28位为C0,下部分为D0。和D0依次进行循环左移操作生成了C1和D1,将C1和D1合成C056位,再通过压缩换位PC-2输出48位的子密钥K1,再将C1和D1进行循环左移和PC-2压缩换位,得到子密钥K2......以此类推,得到16个子密钥。密钥压缩换位表如表6所示。在产生子密钥的过程中,L1、L2、L9、L16是循环左移1位,其余都是左移2位,左移次数如表7所示。
表6 密钥压缩换位表
表7 密钥生成时循环左移次数
密钥层次 | 移位次数 | 密钥层次 | 移位次数 |
1 | 1 | 9 | 1 |
2 | 1 | 10 | 2 |
3 | 2 | 11 | 2 |
4 | 2 | 12 | 2 |
5 | 2 | 13 | 2 |
6 | 2 | 14 | 2 |
7 | 2 | 15 | 2 |
8 | 2 | 16 | 1 |
4、解密处理过程
从密文到明文的解密过程可采用与加密完全相同的算法。不过解密要用加密的逆变换。就是把上面的最后换位表和初始换位表完全倒过来变换。
如图6所示,采用本发明的芯片烧录座进行芯片烧录的方法,包括以下步骤:
(1)在上位机界面上选择需要烧录的芯片型号,选择完成后,上位机向烧录器机台发送该芯片对应的型号数据。
(2)将烧录座放入烧录器上,烧录座上的MCU通过模拟串口通信的方式向烧录器机台发送该烧录座所属型号的数据;
MCU中烧录有加了密的该烧录座的型号数据。在将烧录座放入烧录器上后,烧录座上的MCU检测到已放入烧录机台上,即开始对本身存储的该烧录座的型号数据进行了解密,然后发送给烧录器机台。
(3)烧录器机台分别读取上位机发来的数据和MCU发来的数据,比较二者数据是否相匹配;
若匹配(即二者数据相同),则烧录器机台向上位机发送匹配成功的信号,上位机界面显示适配器匹配的信息;
若不匹配(即二者数据不同),则烧录器机台向上位机发送匹配错误的信号,上位机界面显示适配器不匹配的信息。
(4)每进行一次烧录过程,烧录器机台通过模拟串口通信的方式向烧录座上的MCU发送一个进行烧录的信号。
(5)若MCU接收到烧录器机台发送的进行烧录的信号,则启动其内部的计数机制,完成一次计数;在计数的过程中,MCU中的加密算法对得到的数据进行一次加密,得到一个被加了密的数据,然后进行存储。在下次更新数据时会覆盖掉上一次的数据。
上位机检测烧录次数时,MCU对加了密的烧录次数数据进行解密,然后将解密后的烧录次数数据报告给上位机。
上述实施例用来解释说明本发明,而不是对本发明进行限制,在本发明的精神和权利要求的保护范围内,对本发明作出的任何修改和改变,都落入本发明的保护范围。
Claims (10)
1.芯片烧录座,其特征在于:该烧录座上加载有一MCU,所述MCU中烧录有加密算法。
2.根据权利要求1所述的芯片烧录座,其特征在于:所述MCU采用型号为STC15F100的单片机,其加载在该烧录座的底板上。
3.根据权利要求1所述的芯片烧录座,其特征在于:所述加密算法采用标准DES。
4.根据权利要求3所述的芯片烧录座,其特征在于:DES加密算法的明文以64位为单位进行分块,64位数据在64位密钥的控制下,经过初始变换后,进行16轮加密迭代;其中一轮加密迭代的过程为:64位数据分成左右两半部分,每部分32位,密钥与右半部分相结合,然后再与左半部分相结合,结果作为新的右半部分,结合前的右半部分作为新的左半部分;这种轮换重复16次,最后一轮之后,再进行初始置换的逆置换,得到64位的密文。
5.芯片烧录方法,其特征在于:烧录座上加载有一MCU,所述MCU中烧录有加了密的该烧录座的型号数据;包括以下步骤:
(1)在上位机界面上选择需要烧录的芯片型号,选择完成后,上位机向烧录器机台发送该芯片对应的型号数据;
(2)将烧录座放入烧录器上,烧录座上的MCU对其内存储的该烧录座的型号数据进行解密,并将解密后的型号数据发送给烧录器机台;
(3)烧录器机台分别读取上位机发来的数据和MCU发来的数据,比较二者数据是否相匹配;
若匹配,则烧录器机台向上位机发送匹配成功的信号,上位机界面显示适配器匹配的信息;
若不匹配,则烧录器机台向上位机发送匹配错误的信号,上位机界面显示适配器不匹配的信息;
(4)每进行一次烧录过程,烧录器机台向烧录座上的MCU发送一个进行烧录的信号;
(5)若MCU接收到烧录器机台发送的进行烧录的信号,则启动其内部的计数机制,完成一次计数;MCU对计数结果进行加密,并对加密后的计数数据进行存储,下次更新数据时覆盖掉上一次的数据。
6.根据权利要求5所述的芯片烧录方法,其特征在于:还包括以下步骤:
上位机检测烧录次数时,MCU对加了密的烧录次数数据进行解密,然后将解密后的烧录次数数据报告给上位机。
7.根据权利要求5所述的芯片烧录方法,其特征在于:步骤(2)中烧录座上的MCU通过模拟串口通信的方式,将解密后的型号数据发送给烧录器机台。
8.根据权利要求5所述的芯片烧录方法,其特征在于:步骤(4)中烧录器机台通过模拟串口通信的方式向烧录座上的MCU发送一个进行烧录的信号。
9.根据权利要求5所述的芯片烧录方法,其特征在于:所述加密采用标准DES。
10.根据权利要求9所述的芯片烧录方法,其特征在于:DES加密算法的明文以64位为单位进行分块,64位数据在64位密钥的控制下,经过初始变换后,进行16轮加密迭代;其中一轮加密迭代的过程为:64位数据分成左右两半部分,每部分32位,密钥与右半部分相结合,然后再与左半部分相结合,结果作为新的右半部分,结合前的右半部分作为新的左半部分;这种轮换重复16次,最后一轮之后,再进行初始置换的逆置换,得到64位的密文。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011103615714A CN102403037A (zh) | 2011-11-15 | 2011-11-15 | 芯片烧录座及芯片烧录方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2011103615714A CN102403037A (zh) | 2011-11-15 | 2011-11-15 | 芯片烧录座及芯片烧录方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN102403037A true CN102403037A (zh) | 2012-04-04 |
Family
ID=45885158
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2011103615714A Pending CN102403037A (zh) | 2011-11-15 | 2011-11-15 | 芯片烧录座及芯片烧录方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN102403037A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104700895A (zh) * | 2015-01-06 | 2015-06-10 | 建笃精密科技(深圳)有限公司 | 一种模块化ic烧录控制方法、系统及烧录ic设备 |
CN105094925A (zh) * | 2015-08-25 | 2015-11-25 | 无锡力芯微电子股份有限公司 | 通用一次性可编程芯片的烧录滚动码方法和系统 |
CN106708570A (zh) * | 2016-12-13 | 2017-05-24 | 深圳市集贤科技有限公司 | 一种在线烧录装置 |
WO2018218531A1 (zh) * | 2017-05-31 | 2018-12-06 | 深圳市爱夫卡科技股份有限公司 | 一种eeprom烧写系统及烧写方法 |
CN109582320A (zh) * | 2018-08-08 | 2019-04-05 | 深圳市宇轩网络技术有限公司 | 写码方法及终端设备 |
CN109697073A (zh) * | 2018-12-28 | 2019-04-30 | 北京深思数盾科技股份有限公司 | 芯片烧录方法和系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN201060402Y (zh) * | 2007-02-15 | 2008-05-14 | 深圳世强电讯有限公司 | 手持式单片机编程器 |
CN101763886A (zh) * | 2009-12-10 | 2010-06-30 | 上海格州电子有限公司 | 微控制器编程系统及方法 |
-
2011
- 2011-11-15 CN CN2011103615714A patent/CN102403037A/zh active Pending
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN201060402Y (zh) * | 2007-02-15 | 2008-05-14 | 深圳世强电讯有限公司 | 手持式单片机编程器 |
CN101763886A (zh) * | 2009-12-10 | 2010-06-30 | 上海格州电子有限公司 | 微控制器编程系统及方法 |
Cited By (10)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN104700895A (zh) * | 2015-01-06 | 2015-06-10 | 建笃精密科技(深圳)有限公司 | 一种模块化ic烧录控制方法、系统及烧录ic设备 |
CN104700895B (zh) * | 2015-01-06 | 2018-03-06 | 建笃精密科技(深圳)有限公司 | 一种模块化ic烧录控制方法、系统及烧录ic设备 |
CN105094925A (zh) * | 2015-08-25 | 2015-11-25 | 无锡力芯微电子股份有限公司 | 通用一次性可编程芯片的烧录滚动码方法和系统 |
CN105094925B (zh) * | 2015-08-25 | 2018-05-04 | 无锡力芯微电子股份有限公司 | 通用一次性可编程芯片的烧录滚动码方法和系统 |
CN106708570A (zh) * | 2016-12-13 | 2017-05-24 | 深圳市集贤科技有限公司 | 一种在线烧录装置 |
WO2018218531A1 (zh) * | 2017-05-31 | 2018-12-06 | 深圳市爱夫卡科技股份有限公司 | 一种eeprom烧写系统及烧写方法 |
CN109582320A (zh) * | 2018-08-08 | 2019-04-05 | 深圳市宇轩网络技术有限公司 | 写码方法及终端设备 |
CN109582320B (zh) * | 2018-08-08 | 2022-05-10 | 深圳市飞速创新技术股份有限公司 | 写码方法及终端设备 |
CN109697073A (zh) * | 2018-12-28 | 2019-04-30 | 北京深思数盾科技股份有限公司 | 芯片烧录方法和系统 |
CN109697073B (zh) * | 2018-12-28 | 2021-06-18 | 北京深思数盾科技股份有限公司 | 芯片烧录方法和系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN102403037A (zh) | 芯片烧录座及芯片烧录方法 | |
US9031228B2 (en) | Systems and methods for implementing block cipher algorithms on attacker-controlled systems | |
US6985582B1 (en) | Encryption/decryption unit and storage medium | |
CN101753292B (zh) | 用于链接式加密模式的方法和设备 | |
CN102138300B (zh) | 消息认证码预计算在安全存储器中的应用 | |
CN105324956B (zh) | 加密明文数据的方法及设备 | |
JP5682527B2 (ja) | 暗号処理装置、および暗号処理方法、並びにプログラム | |
CN106663387A (zh) | 加密函数和解密函数生成方法、加密和解密方法以及相关装置 | |
CN102461058A (zh) | 具有输入相关编码的白盒密码系统 | |
CN109245881A (zh) | 一种照片视频云端加密存储方法 | |
JP5835458B2 (ja) | 情報処理装置、および情報処理方法、並びにプログラム | |
CN102568062B (zh) | 遥控器加密解密方法 | |
TWI595460B (zh) | Data processing device, information processing device, data processing method and program | |
CN113098675B (zh) | 基于多项式完全同态的二进制数据加密系统及方法 | |
CN103812641A (zh) | 一种实现sm4分组对称密码算法的系统 | |
CN101764684A (zh) | 实现sms4算法的加解密系统 | |
CN111625791B (zh) | 一种基于软件密码模块的密钥管理方法及系统 | |
CN103580851A (zh) | 信息加密及解密方法 | |
CN111314050A (zh) | 一种加解密方法及装置 | |
CN105916141A (zh) | 一种自同步的祖冲之加解密算法的实现系统及其方法 | |
CN104104499A (zh) | 数据传输方法、电子密码锁装置及其控制方法 | |
CN104484615B (zh) | 适用于可重构阵列架构的基于空间随机化抗故障攻击方法 | |
CN104486069A (zh) | 一种基于fpga实现的gost加解密设备及其方法 | |
CN105915345A (zh) | 一种家庭网关设备生产测试中授权生产和改制的实现方法 | |
CN101515853A (zh) | 信息终端及其信息安全装置 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20120404 |