0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

你不知道的PIC单片机代码保护的关键序列号芯片

PCB线路板打样 来源:LONG 2019-07-26 09:55 次阅读

我年轻时最喜欢的一款游戏是捉迷藏。我会和我的朋友一起玩,尝试找一个好的藏身之处总是很有趣。作为一个哥哥,我和我的弟弟一起玩了同样的游戏,但是有一点扭曲。我不得不隐藏自己,而是隐藏自己的东西。如果我选择了好的藏身之处,我的东西是安全的。然而,如果我缺乏自信并且选择了不好的藏身之处,他们肯定会找到我的玩具或衣服,有时会损坏或丢失它们。

对于我们这些设计和开发PCB的人来说,保护你的固件不受黑客的影响喜欢捉迷藏的游戏。固件或微控制器代码保护对于保持产品的保真度以及保护产品设计开发中的时间和资本支出投资至关重要。有几种很好的微控制器代码保护方法可以保护您的固件免受大多数黑客的攻击。但是,就像我顽固的兄弟杰夫一样,一些黑客决心通过以更便宜的价格淹没市场并以低价出售劣质产品来假装它们是由你制造的,从而偷走你的辛勤工作和利润。对于这些黑客来说,键控序列号芯片是微控制器代码保护的有效隐藏和寻找策略。

数到万:PIC单片机代码保护

< p>通常,通过将机器代码下载到本地存储器来编程处理器。这可以通过闪存来实现,其中代码是可擦除的,并且处理器可以被重新编程或硬连线(烧录)到存储器中,其中不能进行未来的改变。在这些情况下,程序代码的位置即使是没有经验的黑客也是众所周知的,这使得它非常不安全。

PIC单片机是目前最流行的控制器之一,它们具有广泛的架构和不同的功能。无论方差如何,这些处理器的控制器代码结构都是类似的。大多数固件开发都是通过使用开发板完成的,这对于调试代码非常有用。然而,这些板通过串行电缆提供对控制器存储器的简单访问。

没有足够的微控制器代码保护访问代码很容易

隐藏和查找代码安全性

使用序列号密钥是一种加密形式,类似于用于密码保护的内容。每个制造的微控制器都分配有唯一的代码,其范围可以从8位到80位或更长。这个想法是防止访问控制器代码,除非访问设备或程序匹配代码。这可以防止窥探程序代码被窥探。与密码保护一样,黑客已经开发了密钥生成器,试图创建适当的访问代码。如果有足够的时间,这些在获得正确的代码时非常有效。为了阻止这种情况,我建议您将密钥存储在黑客无法访问或可能无法查看的位置。

唯一密钥必须位于可在执行程序之前读取的位置。虽然这可能听起来有限,但有很多选择。例如:

闪存:这是存储可删除和重写的程序代码和密钥的最佳位置。这在调试过程中用于测试和开发。

程序存储器:这通常是为程序保留的专用存储器块。这也是隐藏钥匙的好地方。除非知道密钥的加密方法,否则很难将实际程序代码与密钥代码分开。

微处理器内存(EEPROM):密钥是硬连线的或刻录到ROM设备中,无法更改。这取决于系统阻止入侵者读取访问的能力。通常在制造过程中或发货前完成。

Mikroe PIC微控制器框图

如上所示,有几个存储器位置,密钥可以存储在微控制器内,并且外部读取设备无法直接访问。此外,可以在PCB上添加外部安全存储组件,微控制器可以通过专用端口位置直接访问该组件。

您可以通过实施专用安全存储设备来创建外部存储器单元。除了微控制器之外,PCB是无法访问的。由于大多数PCB包含许多连接到微控制器的设备,因此潜在的黑客无法检测到这种模糊设备。相反,它被假定为系统关键组件。

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 芯片
    +关注

    关注

    452

    文章

    50196

    浏览量

    420717
  • 集成电路
    +关注

    关注

    5375

    文章

    11304

    浏览量

    360308
  • 单片机
    +关注

    关注

    6030

    文章

    44489

    浏览量

    631885
  • 华强pcb线路板打样

    关注

    5

    文章

    14629

    浏览量

    42943
收藏 人收藏

    评论

    相关推荐

    请问STM8S208的芯片序列号在哪里?

    小弟,最近在用STM8S208单片机,想用他的唯一芯片序列做板子的标识,现在突然找不到关于芯片唯一序列号的介绍在手册的哪一页了,求论坛里
    发表于 05-11 08:41

    DS18B20序列号的读取问题

    使用单片机可以读取挂接在同一总线上的多个DS18B20的序列号吗?我试了一下,貌似读取到的是各个传感器序列号按位取与后的结果。对于一条线上由多个传感器组成的网络,难道一定要事先挨个读取序列号
    发表于 07-10 20:25

    PIC单片机保护的问题

    最近搞到一块PIC单片机PIC16C765”想研究一下,在网上买了一个下载器,还装好了软件,写了一个小程序编译也成功了,就是在下载的时候不能正常下载到里面,老是显示写保护,要么就数据
    发表于 11-08 19:01

    ds18b20序列号匹配

    在ARM7系统下,将两个以上ds18b20测温芯片挂在一根单总线上测温度时,需要匹配芯片序列号。对芯片的温度寄存器进行读取前又需要读取芯片
    发表于 06-30 15:05

    PIC16F913芯片是否有唯一的序列号

    嗨,我们正在使用PIC16F913芯片批量生产我们的产品,所以我们想用唯一的序列号跟踪芯片芯片中是否有唯一的
    发表于 01-09 14:59

    皮卡3有没有办法把它重置为原来的序列号

    我用来连接我的皮卡3,它会显示它的序列号。我不知道我做了什么,但现在显示序列号为Debug TK3。有没有办法把它重置为原来的序列号?如果不是,会影响功能吗?谢谢伊恩
    发表于 05-01 15:05

    如何获取CPU序列号代码

    using System.Management;public string GetCpuID(){try{ //获取CPU序列号代码 string cpuInfo = "";//cpu序列号ManagementClass mc
    发表于 07-13 07:56

    请问如何查看CH579M板子的序列号

    不知道如何查看板子的序列号,提供的参数文档有一个芯片ID,有没有提供子程序,求解
    发表于 08-17 07:34

    AutoCAD2014注册序列号

    AutoCAD2014 的注册序列号,方便使用。
    发表于 04-26 16:55 15次下载

    SourceInsight+序列号

    SourceInsight+序列号,非常容易安装。
    发表于 05-17 17:47 9次下载

    序列号改写器

    序列号改写器,感兴趣的可以下载看看。
    发表于 06-16 17:57 26次下载

    关于单片机那些不知道的技巧

    学习单片机的教程已经很普遍了,让我来简单的介绍一下吧!接触单片机已有6个月了,自我觉得很有意思。单片机无非就那样子,只要撑握了单片机芯片内部规律,谁都会写.还有就是多看一些别人写的程序
    的头像 发表于 07-30 09:39 6435次阅读

    查找苹果无线鼠标/无线键盘/触控板的设备序列号

    今天分享的是一些干货知识,许多朋友不知道如何查找苹果无线鼠标/无线键盘/触控板的设备序列号,今天小编就带您来看一看~
    发表于 07-13 16:55 4839次阅读

    如何查看GraphPad Pism序列号

    【AboutPrism】里只显示部分序列号:GPS-1234567-####-####——这里所显示的数字和符号足以让我们唯一地识别序列号,在“联系我们”提交技术支持的需求时,可以直接复制粘贴这里的不完整
    的头像 发表于 02-17 10:38 4713次阅读

    基于51单片机的读取DS18B20序列号例程

    基于51单片机的读取DS18B20序列号例程源代码
    发表于 05-12 16:41 1次下载