1.设置读写保护

设置保护:

if (FLASH_GetReadOutProtectionStatus()!=SET)
{FLASH_ReadOutProtection(ENABLE); FLASH_Lock();
}

解除保护:

if (FLASH_GetReadOutProtectionStatus()==SET)
{FLASH_Unlock();FLASH_ReadOutProtection(DISABLE);
}

这种方式可以通过RAM启动和IAP的方式解除保护,但是解除保护的同时FLASH也被擦除了。

2.代码加密

比较可靠的是这种方式,每个MCU都有唯一的ID,读取该ID,再对该ID进行一些加密变换,假设变换之后的ID是0x12345678,然后在程序的多个关键部分判断ID是否正确,否则不执行。通过此种方式加密后,破解者基本就只能通过反编译的方式(假设他已经破解了第一层防护读取到了你的代码)来破解你的代码了,对ID加密变换的目的是增加反编译的难度,未加密变换时反编译还是不难的。

stm32 代码加密相关推荐

  1. Zend Guard6.0使用教程——PHP代码加密

    为什么80%的码农都做不了架构师?>>>    Zend Guard 6可以用于PHP项目的加密与版权控制,防止自己的PHP成功被人盗窃,加密使用过程非常简单,本文详细的介绍了Zen ...

  2. exe一机一码加密工具_Python代码加密混淆

    我多想再见你 哪怕匆匆一眼就别离 python作为一种解释型语言,源代码加密本身比较困难.但有时候我们在发布一款python产品时又必须考虑到代码的加密性,以避免源代码泄露.为此,我查阅了一些资料,研 ...

  3. BC26通过LWM2M协议连接ONENET,AT流程,STM32代码

    onenet平台操作 登录onenet后,进入控制台 选择NB-IoT物联网套件 新建产品 产品名字.类别根据自己情况填,协议选择LWM2M 产品新建成功 点击产品名字,进入产品详情 给产品添加设备 ...

  4. Python代码加密混淆

    python作为一种解释型语言,源代码加密本身比较困难.但有时候我们在发布一款python产品时又必须考虑到代码的加密性,以避免源代码泄露.为此,我查阅了一些资料,研究了几种python代码加密的常见 ...

  5. html自动生成工具_关于STM32代码自动生成的工具的进度....

    前情提要:STM32代码自动生成工具_本想...但是...可是...所以 首先说一下那几天大家的反应,有的持观望态度,毕竟STM32CUBE很香:有的很激动,期待我快点出东西:还有的很淡定,知道我在挖 ...

  6. STM32 的加密实现(转)

    STM32 的加密实现 转载于:https://www.cnblogs.com/LittleTiger/p/6412568.html

  7. PHP 文件加密Zend Guard Loader 学习和使用(如何安装ioncube扩展对PHP代码加密)

    一.大体流程图 二.PHP 项目文件加密 下表列出了Zend产品中的PHP版本及其内部API版本和Zend产品版本. 如何加密请往后看 三.如何使用 第一步:确认当前环境 Amai Phalcon 前 ...

  8. php代码加密 (php,decode)

    PHP代码加密与解,但不支持中文. <?php /* @名称:PHP加密/解密 @更新:2009年9月22日 20:23:47 */ function phpencode($code) {$co ...

  9. js压缩代码后怎么生成source map_浅谈前端代码加密

    作者简介:于航,PayPal Senior Software Engineer,在 PayPal 上海负责 Global GRT 平台相关的技术研发工作.曾任职于阿里巴巴.Tapatalk 等企业.f ...

  10. cython编译python_Cython编译python为so 代码加密示例

    1. 编译出来的so比网上流传的其他方法小很多. 2. language_level  是python的主版本号,如果python版本是2.x,目前的版本Cython需要人工指定language_le ...

最新文章

  1. linux备份svn仓库脚本,Centos详细搭建svn以及备份脚本
  2. 工作中用不到的技术要不要学?
  3. Spring之Bean的配置(二)
  4. YOLOv3中darknet的各种层的说明
  5. 一个简洁实用的后台管理系统AWESOME
  6. SpringBoot 实现Session共享
  7. VB.NET2005通过泛型实现的KMP查找算法
  8. 深度学习DeBug小笔记(一)——visdom服务启动时提示Downloading scripts, this may take a little while解决办法
  9. 1688API item_search_img - 按图搜索1688商品(拍立淘)
  10. 可视化讲解:什么是棒球游戏问题?
  11. 基于 mini2440 电阻式触摸屏(二):S3C2440 电阻式触摸屏接口、内部ADC结构
  12. ios怎么把电话号码存到android,如何将苹果手机的通讯录导入到安卓手机中?看这里...
  13. 2022起重机械指挥考试题库模拟考试平台操作
  14. 计算机科学与技术毕业自我鉴定,2016届计算机科学与技术专业大学生毕业自我鉴定优秀范文...
  15. MT6765中断处理IO口配置流程
  16. 记一次redis病毒清理
  17. nginx 配置静态资源缓存。解决web静态资源访问过慢
  18. 「Section 4」定点数的乘除法实现
  19. C6/JC6自定义表单辅助画表格工具V1.0
  20. OGEM Bentonite mud treatment system for Russian client

热门文章

  1. WPF程序支持多国语言
  2. 免费PDF转Word
  3. GG修改服务器迷你世界,gg修改器脚本大全迷你世界设置回点
  4. Linux下oracle数据库备份导出
  5. PowerDesigner16.7详细安装下载以及简要使用
  6. Windows开机自动运行.py文件
  7. 综合项目之闪讯破解(五)之 如何用C#调用C++编写的Dll
  8. 视频教程-VBScript脚本语言编程与自动化运维操作学习篇-其他
  9. android 高清播放器,高清播放器我要下载-高清播放器 安卓版v9.6.2-PC6安卓网
  10. 知识点二十五:启发式搜索算法——A*算法