首页 > 其他分享 >CH32--用芯片的UID给固件加密

CH32--用芯片的UID给固件加密

时间:2023-06-29 20:44:22浏览次数:36  
标签:加密 UID CH32 -- 芯片 ----- 密钥 固件

          本文主要介绍怎么利用UID进行固件加密!

 

,CH32系列每个芯片都有唯一的身份标识:        

 ,读取方式:

以8/16/32位进行读访问下面地址都是可以的

 三,利用UID加密

所谓:"道高一尺魔高一丈",只有不断的更新加密技术以增加解密成本或许在一定程度上能够遏制不正规解密行为在,下面就先介绍一下UID的一种

简易加密方案,虽然简易,不过对于一般的小型产品还是能够在一定程度上起到保密效果的。

     实现方法:

      1,芯片外部:

         获取芯片UID-----自定义加密算法-----生成加密数据(密钥)-----保存到芯片内部/外部存储芯片中

       2,芯片内部:

        程序开头读取芯片的UID-----采用同样的加密算法对UID进行运算-----读取保存的数据-----一致则执行用户代码,不一致则清楚固件。

说明:至于1中的实现方式可以通过编写一个上位机来自动生成密钥并保存到芯片存储介质中,至于算法肯定是越复杂越好,同时至于密钥的存储区未使用的部分最好都填充完,以免被解密者利用。

 

注:目前最常用的大致就是上述加密思路,如果觉得简易可以将上面的各个步骤都给加密,同时可采用密钥与密码结合的方式来使固件进一步加密!

标签:加密,UID,CH32,--,芯片,-----,密钥,固件
From: https://www.cnblogs.com/wchmcu/p/17515099.html

相关文章

  • 亿级用户实时互动,GaussDB(for Redis)带您沉浸式体验迷你世界
    摘要:GaussDB(forRedis)助您聊天不卡顿,畅玩更痛快爱冒险是人的天性,游戏创造的虚拟世界充分满足了人们这一需求,玩游戏也成为人们闲暇时光的重要放松方式之一。作为国内头部沙盒创意平台,《迷你世界》目前月活用户超过1亿,用户创作的场景地图超过2亿。持续增加的用户数,层出不穷的游戏地......
  • React - 12 Hooks组件之useState
    1.hooks组件本质是函数组件2.useState①基础用法importReact,{useState}from"react";import{Button}from'antd';/*useState:ReactHook函数之一,目的是在函数组件中使用状态,并且后期基于状态的修改,可以让组件更新let[num,setNum]=useState(initialValue);......
  • 再获殊荣!华为云GaussDB喜提“科技进步一等奖”
    近日,中国电子学会科学技术奖励大会颁发了2021-2022年度中国电子学会科学技术奖获奖项目,华为云主导的“GaussDB智能云原生分布式数据库”项目荣获“科技进步一等奖”。“中国电子学会科学技术奖”是由工业和信息化部直属事业单位中国电子学会总部,经国家科学技术奖励工作办公室批准设......
  • 软件测试|Python科学计算神器numpy教程(二)
    前言上一篇文章我们介绍了numpy的安装和ndarray的部分知识,本篇文章我们来介绍一下numpy的数组的常用属性以及创建数组相关内容。数组常用属性ndarray.shapeshape属性的返回值一个由数组维度构成的元组,比如2行3列的二维数组可以表示为(2,3),该属性可以用来调整数组维度的大小,示......
  • 招行&华为云,科技进步一等奖!招行与华为云联合摘获“科技进步一等奖”
    近日,在2022年中国电子学会科学技术奖的评选中,招商银行与华为联创的“GaussDB智能云原生分布式数据库”项目荣获中国电子学会科学技术奖“科技进步一等奖”。“中国电子学会科学技术奖”是经国家科学技术奖励工作办公室批准,由工业和信息化部下属中国电子学会设立的奖项,主要奖励在电......
  • bean的管理
    #图片来自转载1.bean的获取示例:注意点:1.这里注入的是ioc容器的对象2.bean的名称是类名改成小写字母就行3.bean的类型就是类名.class4.这里获取的三次bean对象的地址值都是一样的,说明bean对象默认是单个bean的作用域默认情况下,bean的启动是在容器启动的时候初始化的,如果要延迟初始化......
  • 2023年6月29日,测评机试题,Iterator底层,ListIterator底层,LinkedList底层
    1.机试题1、输入一个字符串,判断判断这个字符串是否对称例如abcba算对称abccba也算对称packagecom.wz.test01;importjava.util.Scanner;publicclasstest01{/***输入一个字符串,判断判断这个字符串是否对称*例如abcba算对称abccba也算对称*/......
  • 这年头怕数据泄露?全密态数据库:无所谓,我会出手​ 吊炸天的全密态数据库,到底是个啥?​ 藏
    数据被标价售卖莫名其妙接到诈骗电话企业数据泄露事件让人恐慌......表面上看似乎是个人数据信息的泄露再深究其实是掌握着个人数据信息的企业面临的数据泄露、数据篡改等风险越来越多作为数据的核心载体数据库,该如何提供安全保障?这就需要一项能支持数据端到端加密的技术我们称之......
  • MongoDB索引Index
    MongoDB索引Index索引概述索引通常能够极大的提高查询的效率,如果没有索引,MongoDB在读取数据时必须扫描集合中的每个文件并选取那些符合查询条件的记录这种扫描全集合的查询效率是非常低的,特别在处理大量的数据时,查询可以要花费几十秒甚至几分钟,这对应用的性能是非常致命的创......
  • vue编程-增加路由模块
    1.将vue-router依赖加入到package.json{"name":"practice_novel_site","version":"0.1.0","private":true,"scripts":{"serve":"vue-cli-serviceserve","build......