芯片UID加密方案

  • 格式:docx
  • 大小:9.95 KB
  • 文档页数:2

下载文档原格式

  / 1
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

芯片UID加密方案

嵌入式系统产品的加密和解密永远是一对矛盾的统一体。为了保护产

品研发人员的技术成果,研究新型加密技术是非常有必要的。这里我们聊聊使

用芯片UID加密的方案。

首先需要明确的是,没有一种加密是“绝对”可靠的,但是加密手段可以

增加非法使用者的解密成本,借此来防止技术被“轻易”盗取。本次以LPC1000 的UID加密方案为例进行介绍。

一、LPC1000系列的加密方案

通过分析得出,基于CortexM0或CortexM3内核的LPC1000系列MCU 通过软件加密的方法有两种:

1、使用代码读保护机制,限制用户访问片内Flash;

2、通过芯片UID并添加加密算法使每片MCU内的程序具有唯一性。

代码读保护机制是通过使能系统中的不同安全级别,以便限制访问片内Flash,本次不做重点介绍。

二、UID加密

UID是唯一标识符(uniqueidentifier),在LPC1000系列微控制器的每一颗芯片都具有全球唯一的标识符,该标识符为128位二进制序列。因此我们可以利用芯片UID的唯一性对程序进行加密,使每一个产品中的程序也具有唯一性,即使非法使用者获取了MCU中的程序复制到其他芯片中也是不能正常运行的,从而达到保护开发者的知识产权不被侵犯和盗用的目的。

三、LPC1000的UID加密方案

基本思路是使用上位机软件通过编程器读取芯片的UID,经加密算法运

算后生成密钥,下载程序的同时向MCU的Flash中某个地址写入密钥;MCU上