当前位置: 首页 > wzjs >正文

手机网站建设流程 知乎网站安全访问

手机网站建设流程 知乎,网站安全访问,宜兴做网站哪家好,上海的网络推广说明:这个工具可以将 Hex 文件 转换为 Bin 格式文件,软件是按自己开发 STM32 OAT 功能需求开发的一款辅助 上位机软件。 文中的介绍时 bootloader boot 文档在补充完善中... 有兴趣的朋友可留言探讨。 1. 软件功能: 1.生成 bin&#x…

说明:这个工具可以将 Hex 文件 转换为 Bin 格式文件,软件是按自己开发 STM32 OAT 功能需求开发的一款辅助 上位机软件。

文中的介绍时 bootloader = boot 

文档在补充完善中...

有兴趣的朋友可留言探讨。

1. 软件功能:

1.生成 bin:将 Hex 格式文件转换为 Bin 格式。

2.boot 打包为 bin:可以生成指定大小的 bin 格式文件,文件多余的空余位置填充随机数。可在生成的Bin文件指定位置填充加密后的指定数据,用于程序加密使用。

3.app 打包为 bin :可生成整个程序加密后的 Bin 文件,可用于 OTA 中的 APP 文件加密,防止APP泄漏。

2. Bootload 加密思路

bootloader文件的构成: 

bootloader 编译文件 + flash加密数据区域 = 烧录用 bootloader;

例如:假设app的开始区域为 0x800A000 ,那boot的文件区域为 0x8000000 ~  0x800A000

1. Flash加密数据区域:

        假设取 0x8009800 ~ 0x800A000 共2kb区域作为加密数据的存储区域,简单说按app的前一个扇区作为加密数据存储区域,因为有的MCU一个扇区大小 2k ,有的 1k ,视具体型号而定,取app的上一个扇区即可。

2. boot 编译文件大小:

        调整Flash分区的大小,boot 的数据不要到 Flash加密数据区域,避免交叉导致 boot 被意外擦除。

3. Flash加密数据区域数据结构:

typedef struct
{uint32_t  app_state;            /* app 状态,无APP,有APP */uint32_t  mark[4];              /* 初始状态数据 */uint32_t  id_mark[4];           /* ID加密数据 */...                             /* 根据需求自定义 */
}APP_t;

4. boot文件打包:

4.1.设定指定大小:

        使用专用 上位机软件导入 boot 程序后,按设定的大小输出输出 bin 文件,多余的地方填充随机数。例如:boot编译文件为 32k, 设定输出大小为40 k,那空余的 8k 全部填充随机数,这样混淆后即便读出boot程序也不知道boot程序具体多大。

4.2.插入加密数据:

        在预留的加密扇区内指定的位置插入加密数据。

        如:数据 mark[4] 是boot第一次运行时会检测的数据,检测这个数据和预期的相符才执行 boot 的加密工作,加密完成后再 修改或删除 mark[4] 数据,确保 boot 的加密工作只做一次。

        id_mark[4] 是加密数据,通过读取 MCU 的 ID ,再通过AES加密算法,加密后存储到 id_mark[4] 。 

uint32_t  mark[4];              /* 初始状态数据 */
uint32_t  id_mark[4];           /* ID加密数据 */

3. APP 加密思路

        1. app 按16字节凑整,即app的大小是 16 的整数倍,这样方便 AES 加密,加密前在app文件末尾插入app文件的 CRC16 校验值,这样boot可以校验app的完整性。在凑整和添加CRC16值后再AES加密文件,最终得到的bin文件作为 boot 升级用。

        2.app校验ID的有效性,app通过读取 boot 加密区域的 ID 加密数据,解密后与读取的MCU ID 做对比,判断程序的有效性。

4. boot 启动流程

5. App 启动流程

        app通过读取 boot 加密区域的 ID 加密数据,解密后与读取的 MCU ID 做对比,判断程序的有效性。

6. AES 加密算法代码

7. CRC16 校验算法代码

http://www.dtcms.com/wzjs/568831.html

相关文章:

  • 国际交流网站平台有哪些网站如何做提交的报名表
  • 南宁网站建设lilkjwordpress商城加导购
  • 企业网站建设的重要性及意义湖南益阳网站建设
  • 网站建设需求背景手机开发者选项在哪里打开
  • 建网站的详细步骤旅游门户网站建设方案
  • 网站开发公司营业范围热门国际新闻
  • 做博客的网站可以做宣传海报的网站
  • 做旅游游客产品的网站自己安装wordpress
  • 杭州一起做网站网站后台常用密码
  • 做旅游业务的商业网站盘锦网站建设 盘锦建站推广 盘锦建站
  • 禅城网站建设公司华中农业大学基因编辑在线设计网站
  • 校园网站建设和管理工作制度网站建设二公司
  • 灯具的网站建设国外做免费的视频网站
  • 武邑网站建设公司做网站样本电销好做吗
  • 网站开发需要的技术网站一起做网店
  • 3g版网站制作企业建设网站需注意哪些事项
  • 青岛免费建站铁道部建设监理协会网站查询
  • 哪些网站是vue做的网店代运营商
  • 用wordpress做站群免费云手机无限时间版
  • 免费网站安全软件大全免费下载安装怎么建个自己的网站
  • 软文是什么文章西宁网站优化
  • 大连做网站优化公司dedecms学校网站模板
  • 兰州拼团网站建设wordpress用什么域名好
  • 海淘网站建设seo模拟点击有用吗
  • 瑞安市做网站app制作图片
  • 网站重构案例株洲房地产信息网
  • 个人资料展示网站响应式网站设计优点
  • 天津 网站策划微信服务号绑定网站吗
  • 海珠免费网站建设建设网站用什么代码写好呢
  • 东莞建设小学网站网站建设域名什么意思