现在的位置: 首页资讯>正文
基于GD32F450的程序软保护——RAM区运行
2017年06月12日 作者: 暂无评论 212+ 0

GD32

1.核心主题

本文提出了一种基于GD32F450为代表的ARM Cortex-M系列处理器上的软保护的安全性探究,核心是将用户程序预先以加密的方式存储在片内FLASH中,运行时再解密至RAM。因为RAM的掉电易丢失,实现程序的保护。

.背景瞎扯

软件的保护通常分为软保护和硬保护两种,软保护从程序着手,通过加密变化等方式,确保使用者的合法性,实现源代码的反拷贝、反静态分析、防动态追踪。硬保护则需要额外的硬件加密手段,软件通过访问特定的外围硬件,完成预先的数据交换,确认用户合法后,才会执行。硬保护拥有独立的硬件,所以相较于软保护更加安全,但是也会导致成本过高、占用部分硬件空间等问题。

硬保护引入安全器件的同时,加大了硬件成本。而软保护一般会引入芯片唯一身份识别码作为密钥,这就导致不得不对每个芯片进行单独编译烧写程序,软件加密加大了算法的复杂性、增加了程序的存储占用空间,还增加了批量生产时的难度。总的说来,软保护和硬保护各有利弊。 

IAP

IAP(In-Application Programming),在应用程序中编程,指的是芯片通过已有的程序,利用串口、以太网、SD卡等外设接口,接收新的程序文件,覆盖旧有的程序,实现升级更新,也就是可以用程序来改变程序。

IAP

3.方案设计
[1].利用IAP代码将加密好的程序bin文件,通过UART写入FLASH中
[2].复位后,IAP程序先将FLASH中的加密bin文件,解密至指定区域的RAM位置
[3].解密完成后,校验加密程序初始入口地址范围是否正确(密钥不对,数据不对)
[4].如果校验正确,IAP程序执行CPU寄存器指针跳转代码,跳转至加密程序初始入口,执行被加密代码。
[5].如果校验错误,清除加密区域FLASH代码
[6].GD32提供的芯片FLASH保护使能

详情可参考:[GD32F450方案分享] 基于GD32F450的程序软保护——RAM区运行 

原文链接:http://www.eeboard.com/news/gd32f450-2/

搜索"爱板网"加关注,每日最新的开发板、智能硬件、开源硬件、活动等信息可以让你一手全掌握。推荐关注!

【微信扫描下图可直接关注】

toaal

相关文章

三星搞事情!这款手机搭载高通骁龙840

继Galaxy S8系列销量下降和并不怎么热门的Galaxy Note FE推出之后,三星并未停下脚步,而是带来了新一波的“大新闻”。日前,一款型号为SM-G9600的手机出现在GeekBench的数据库中,令人震惊的...

这些黑科技 原来诺基亚早就有了

说起诺基亚的工业设计,那可是无人能及。无论是各处精心的巧思,还是对聚碳酸酯材质的颜色调教,都让诺基亚手机在人群中闪闪发光。而诺基亚手机的很多经典设计,也被后来者继承并发扬光大,...

价格残暴!不到1200元, 这款国产全面屏手机值得你入手!

在硬件方面,Bluboo S1配备了5.5英寸夏普1080P显示屏,联发科Helio P25八核处理器,4/6GB RAM+64GB ROM存储组合,后置1300万像素+300万像素双摄,前置500万像素摄像头,3500mAh电池以及采用...

屏占比升到新高度! 三星Note8屏幕曝光

至于背面,知名数码博主@i冰宇宙 在其微博发了几张Note8的保护壳图片。从图中可以知道,Note8将搭载双摄像头,心率传感器和指纹识别区域位于双摄右侧,之前爆出的屏下指纹识别可能会被砍的消...

基于GD32F450的机智云功能板应用

机智云功能板是一个功能较强的开发板,将它与GD32F450相配合可以达到优势互补的效果,受时间的限制,目前先探索到这里,后面若有时间可添加PWM电机调速、DHT11温湿度检测与显示控制等。

给我留言

您必须 [ 登录 ] 才能发表留言!