随着山寨产品层出不穷,越来越多的人开始关注芯片烧录的安全性问题。芯片作为一个产品的核心部件,其内部程序一旦被盗取,那么整个产品将面临被破解的风险,这里将介绍如何在烧录生产过程中全方位保护芯片程序,实现安全生产。
要实现安全生产,首先得保正烧录文件的安全性。烧录文件是研发项目的结晶,其安全性极为重要,特别对于代烧录工厂,人员配备参差不齐,如果将文件直接下发给工厂生产,容易造成文件泄漏。为此P800系列编程器提供了工程加密功能,烧录工程由研发制作,并对敏感文件数据进行加密,以加密工程的形式下发给工厂生产,既解决了工厂接触文件的风险,又避免了工人建立、配置烧录工程的繁琐操作,提高生产效率。
工程加密保证了文件的安全性,但是否就能确保芯片程序的安全呢?我们知道,芯片除了能烧写(编程)外,还有读取接口,以方便芯片的调试和校验数据的完整性,也就是烧录进去的程序还可以被完整的读取出来。即使不接触文件,也能获取文件内容,最终导致烧录文件被间接盗取。当然,芯片在设计时也会考虑到这个问题,每种芯片基本都拥有自己的一套加密方法,我们只要在烧录完成后,及时给芯片加密,就能在一定程度上保障代码的安全性。
然而,文件、芯片双重加密看似牢不可破,其实还是有一定的漏洞,这个漏洞主要出现在烧录流程上。擦除、烧写、校验、加密为传统的烧录流程,市面上绝大多数编程器均采用该流程。我们知道,芯片的保护在于加密,在该流程中,加密放到了最后执行,如果芯片在烧写完成后,加密之前被取走(也就是校验阶段,校验一般都会持续一段时间,而这段时间足够芯片被取走),那么芯片就处于烧录完成但未加密状态,导致程序被读取盗走。
为解决这个问题,我们可以把加密放到烧写之前,这样烧录流程就变为:擦除、加密、烧写、校验。即使在校验阶段把芯片取下,芯片也已经加密完成了,无法读取其内部数据。也许你会问,加密后芯片还能烧写和校验吗?其实对于大部分芯片来说,加密是需要重新启动才会生效的,也就是只要在烧录流程中不掉电、不复位,芯片依然可以正常烧写和校验。当芯片取下后,加密就会立即生效,及时保护芯片内部程序。
安全的工程加密,可靠的芯片保护以及灵活的流程配置是P800系列编程器的标准功能,既能拟补传统编程器的安全性不足,又能保证量产的稳定性,全方位保护知识产权。
关键字:烧录 芯片程序
编辑:muyan 引用地址:技术文章—如何在烧录生产过程中全方位保护芯片程序
推荐阅读最新更新时间:2023-10-13 10:41
HT1621显示屏驱动芯片单片机源程序
HT1621是128 点内存映象和多功能的LCD 驱动器 , HT1621 的软件配置特性使它适用于多种 LCD 应用场合,包括 LCD 模块和显示子系统。用于连接主控制器和HT1621 的管脚只有 4 或 5 条, HT1621 还有一个节电命令用于降低系统功耗。在虎风所做的这个系统中 ht1621 用于驱动一个静态的 LCD 液晶显示器。液晶显示的方式分为静态显示和动态显示 。 静态与动态的区别在于静态显示是持续供电的 , 而动态显示是利用人的视觉停留效果 , 快速扫描数码管各个段 , 让人在视觉上感觉到数码管是同时显示的。 各位大牛下午好,我用STC12C5204单片机控制1621驱动液晶 程序调了几天都没进展,
[单片机]
基于DSP芯片PNX1501的NandFlash在线烧录系统
0 引言 随着电子产品市场的不断扩大,闪存器无疑将获得极大的增长。这种增长在很大程度上取决于存储器的非易失性、低功耗、高密度和重量轻等特点。多项优点集于一身使得闪存器在移动电子和嵌入式领域中得到了极大的应用。而nand-Flash价格便宜量又足,性价比也很高,且十分轻便,抗震性也很不错,很适合用来做数码产品,现在的单片nandFlash芯片的存储容量已经可以做到4 GB。很难想像,在一个大小只有12×20×1.2mm的芯片里可以做到如此的容量。然而,由于Flash管脚多、体积小、一但使用后拆卸很不方便,因此,开发在线烧录系统也就成为嵌入式开发领域不可缺少的一步。
1 NandFlash简介
NOR和NAND是现在市场
[嵌入式]
PIC16F1823开发笔记(二)芯片研究以及第一个程序和汇编研究
1、综述: 总体来看,这款芯片功能齐全: ADC cps EEPROM DAC DSM USART SR latch timer(3) 2、存储 2048的RAM 3、寄存器详解 寄存器种类 3.1、核心寄存器 WREG| PCLATH| INTCON| INDF0 INTCON寄存器 状态寄存器 3.2、特殊功能寄存器 The Special Function Registers are registers used bythe application to control the desired operation of peripheral functions in the devic
[单片机]
串行实时时钟芯片DSl302程序设计中的问题与对策
美国Dallas公司推出的串行接口实时时钟芯片DSl302可对时钟芯片备份电池进行涓流充电。由于该芯片具有体积小、功耗低、接口容易、占用CPUI/O口线少等主要特点,故该芯片可作为实时时钟广泛应用于智能化仪器仪表中。
笔者在调试中发现在对DSl302编程中有几个问题易被疏忽而导致错误,现提供给读者参考。
1读操作出现的错误
按照参考文献 的读操作程序框图和参考文献 、 所叙述的可知:单字节读操作每次需16个时钟,地址字节在前8个时钟周期的上升沿输入,而数据字节在后8个时钟周期的下降沿输出。据此结合图1的硬件连接图编制出了如下的单字节读程序:
DS_READSETBP1.2;令 =0 。
[单片机]
新唐MS51FB9AE串口烧录程序
一、先用NULINK或其它下载器烧录引导程序到LDROM; 烧录完毕断电. 二、串口烧录APROM 1.接线 开发板要有供电线接入,先不上电. 2.串口模块和开发板连接. 串口模块GND -------------- 开发板- MS51FB9AE- GND 串口模块TTL-TX -------------- 开发板- MS51FB9AE- P02(第18脚 UART1-RXD) 串口模块TTL-RX -------------- 开发板- MS51FB9AE- P16(第8脚 UART1-TXD) 3.准备好MS51FB9AE程序 要bin格式的文件,ISP烧录工具选择文件时只能选bi
[单片机]
AVR+DS1302时钟芯片测试程序
#include iom16v.h #include macros.h #include delay.h #include lcd.h #define uchar unsigned char #define uint unsigned int #define DS1302_RST_SET PORTA |= ( 1 0 ) #define DS1302_RST_CLR PORTA &=~ ( 1 0 ) #define DS1302_SCLK_SET PORTA |= ( 1 1 ) #define DS1302_SCLK_CLR PORTA &=~ ( 1 1 ) #define DS1302_DATA_SET
[单片机]
我与ARM的那些事儿2JINLK烧录nor flash
前言 最近在研究mini2440的友善之臂,但是我拿着的是实验室早期买的开发板,在做裸机开发的过程中老是不能很好地使用最新版的minitools进行烧录,因而各种不爽,因为生成了bin文件不能很好地传到mini2440中,作为一个对开发有着强迫症的我,去各大网站上找烧录的方法,但是我找到的都是老的一个烧录方式的确是有些帮助,但是无法帮助我完成烧录nor flash。于是我找到了参考了一些网站的方法! Jlink驱动 首先你得有一个jlink v8的协调器,如果没有的话,你可以在淘宝上直接买一个! 如果你有,但是你缺少驱动,OK,我从CSDN上下好了驱动! 地址: http://url.cn/QUfkrS Jlink for ar
[单片机]
STM32 ST-LINK Utility程序烧录方法
打开软件过后点击Target-》connect 出现以下界面表示STlink链接成功 如果出现没有检测到stlink的话,首先查看是否安装驱动程序,再重新插拔电脑usb口的stlink连接线(或者链接到主机后方的usb口) 再重复以上步骤链接,链接成功过后再次点击Target然后点击AutoMatic Mode 然后选择升级的HEX文件然后点击Start 显示以上信息表示程序烧录完成 软件官网下载比较麻烦这里附上下载链接(内容包含ST-Link驱动) https://cloud.189.cn/web/share?code=VJZre2EzmiIf(访问码:n9rt)
[单片机]