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

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

3天内不再提示

STM32等单片机程序加密有哪些方法

STM32嵌入式开发 来源:电子工程世界-论坛 作者:可乐zzZ 2021-09-23 16:06 次阅读
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

为了防止大家的程序不被剽窃,本文给大家分享单片机加密的方法。

另外关于解密的方法可以参考这篇文章如何解密单片机内程序?

常见加密方法

程序写保护

这种方法是最常见,也是最简单的一种。现在的MUC基本都有写保护功能,但是这种容易被人破解。

烧断数据总线

这个方法听起来不错,但有损坏的风险,同样也能破解。

软件加密

是一些防止别人读懂程序的方法,单一的这种方法不能防止别人全盘复制,须配合其他的加密算法

添加外部硬件电路的加密方法

这个方法效果看起来比较好,但会增加成本。

芯片打磨改型

这个方法改了型号能误导,但同时也增加成本,解密者一般也能分析出来。

通过通过联网加序列号加密

通过连接网络,在你的MCU中生成一个唯一的随机长序列号,并加入复杂的特种算法,或加入你们重新编码的企业信息在里面,每个芯片内不同,复制者只能复制到一个序列号。

通过MCU唯一的标识加密

以前很多MCU没有唯一标识码,现在的很多MCU都具有唯一标识码了。

这个方法比较好,简单省事,能很好的防止复制。

读保护 + 唯一ID加密

使用读保护 + 唯一ID的加密是最常用的一种方法,也是推荐大家使用的一种方法。

唯一ID 现在正规的芯片,每颗出厂的时候都带了一个唯一标识码,这个号码是唯一不重复的,比如STM32的就使用96位作为唯一ID。 和我们每个人的身份证号码一样,现在刚出生的婴儿,上户的时候就给他一个身份证号,那么每个芯片一生产出来,也就具备了这个身份证号。

加密原理 读保护就不用说了,增加被破解难度。 使用唯一ID加密的方法很多,这里说一种简单的方法:出厂时程序读取唯一ID并保存在一个位置,以后程序执行之前,要读取并匹配这个唯一ID,一致才执行程序。 当然,这种方法是最基础的原理,但也存在被破解的风险。

所以,存储的数据,以及读取验证这两个地方需要进一步添加一些算法。 这样操作之后,即使别人读取了你的程序,也是无法正常执行。

编辑:jq

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

    关注

    6074

    文章

    45335

    浏览量

    663332
  • mcu
    mcu
    +关注

    关注

    147

    文章

    18604

    浏览量

    386632
  • STM32
    +关注

    关注

    2305

    文章

    11120

    浏览量

    371069

原文标题:STM32等单片机程序加密的方法

文章出处:【微信号:c-stm32,微信公众号:STM32嵌入式开发】欢迎添加关注!文章转载请注明出处。

收藏 人收藏
加入交流群
微信小助手二维码

扫码添加小助手

加入工程师交流群

    评论

    相关推荐
    热点推荐

    单片机程序的执行

    : 对单片机编程后,程序的代码段,data段,bss段,rodata段都存放在Flash中。当单片机上电后,初始化汇编代码将data段,bss段,复制到RAM中,并建立好堆栈,开始
    发表于 12-04 06:20

    单片机系统硬件的调试方法

    单片机的系统硬件调试,通常有静态调试和动态调试两种不同,前者是通过目测、万能表测试、加电检查、联机检查的方法,在加电于样机之前.对样机的型号规格,以及安装要求进行核对,同时检查 电源 系统.防止
    发表于 12-03 06:10

    单片机烧录原理是怎样的?辉芒微单片机烧录程序详细步骤讲解

    烧录(Programming)就是把 .hex/.bin 文件里的机器码搬运进单片机片内 Flash 的过程。辉芒微(FMD)单片机内部一块 自举 BootROM,上电时会先跑这段程序
    的头像 发表于 09-17 16:14 1375次阅读
    <b class='flag-5'>单片机</b>烧录原理是怎样的?辉芒微<b class='flag-5'>单片机</b>烧录<b class='flag-5'>程序</b>详细步骤讲解

    32位单片机常见型号哪些?

    32位单片机在工业控制、物联网、消费电子领域应用广泛,常见型号涵盖国际与国内品牌,以下从厂商、型号、特点、应用场景四个维度展开介绍: 一、国际品牌主流型号 STM32系列(意法半导体) 基于ARM
    的头像 发表于 09-08 09:54 1352次阅读

    怎么测单片机系统频率

    单片机系统频率是指单片机工作时的时钟频率,它直接影响单片机的运行速度和处理能力,准确测量系统频率对单片机应用开发、程序调试和性能优化具有重要
    的头像 发表于 07-25 11:39 469次阅读

    单片机怎么烧程序

    单片机程序是将编写好的程序代码写入单片机内部存储单元,让单片机按照预设逻辑工作的过程,是单片机
    的头像 发表于 07-23 11:47 644次阅读

    使用USB转TTL串口板和ST-LINK调试下载器给STM32单片机下载程序

    本文详细介绍如何使用ST-LINK/V2和USB转TTL串口板为STM32单片机下载程序,包括STM32启动模式、JTAG与SWD接口对比、驱动安装及官方软件
    的头像 发表于 06-20 17:26 2039次阅读
    使用USB转TTL串口板和ST-LINK调试下载器给<b class='flag-5'>STM32</b><b class='flag-5'>单片机</b>下载<b class='flag-5'>程序</b>

    单片机原理及应用

    本书全面系统地介绍了 MCS-51 系列单片机的基本结构、工作原理及应用技术。主要内容包括:微型计算机的基础知识、MCS-51 单片机的基本结构、汇编语言和 C51 语言程序设计方法
    发表于 06-16 16:58

    STC单片机范例程序

    电子发烧友网站提供《STC单片机范例程序.zip》资料免费下载
    发表于 06-04 16:27 8次下载

    2.4寸TFT彩屏配套测试程序-51单片机

    如题,2.4寸TFT彩屏配套测试程序-51单片机
    发表于 06-04 16:26 0次下载

    单片机和伺服什么区别

    单片机和伺服的区别 单片机(Microcontroller)和伺服(Servo System)是两种完全不同的技术概念,分别属于 控制系统硬件 和 运动控制执行系统 。以下是它们的详细对比和区别
    的头像 发表于 05-26 09:18 573次阅读

    STM32F10xxx单片机编程手册

    电子发烧友网站提供《STM32F10xxx单片机编程手册.pdf》资料免费下载
    发表于 04-14 14:56 17次下载

    STM32F103x8 STM32F103xB单片机数据手册

    STM32F103x8STM32F103xB单片机数据手册
    发表于 04-14 14:55 6次下载

    STM32单片机最小系统电路设计

    单片机最小系统是指用最少的电路组成单片机可以工作的系统,通常最小系统包含:电源电路、时钟电路、复位电路、调试/下载电路,对于STM32还需要启动选择电路。总之,刚开始如果不太懂电路的话,就抄别人的电路,然后自己拼凑。
    的头像 发表于 03-12 14:09 1.7w次阅读
    <b class='flag-5'>STM32</b><b class='flag-5'>单片机</b>最小系统电路设计

    STM32微控制器中实现数据加密方法

    STM32微控制器中实现数据加密,可以通过多种方法和技术来确保数据的安全性。以下是一些常见的方法和步骤: · 使用内置加密库: · ·
    发表于 03-07 07:30