STM32芯片加密的方法

这篇具有很好参考价值的文章主要介绍了STM32芯片加密的方法。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

stm32加密方法:
flash加密
96位ID号加密

96位id号
id校验
反汇编
Id存到数组,程序执行之前与数组之中的ID比较,如果相同继续执行,不同则终止执行
stm32加密方法,stm32,单片机,嵌入式硬件
加密步骤:
①设计一套加密算法,利用MCU内部的unique ID作为运算参数,计算结果通过第三方工具烧进MCU内部的FLASH的特定地址处。

②MCU软件采用相同的算法利用unique ID作为运算参数计算获得结果,然后读取FLASH中特定地址处的结果,两者进行对比,如果相同则继续执行,否则进入死循环。

③由于每一片MCU的unique ID都不一样,因此对于每一片MCU来说,软件利用加密算法计算得到的结果都不同。而由于盗版者不知道加密算法是什么,也不知道加密结果存放在FLASH的什么地方。因此软件从那个特定地址读到的数值始终是与当前计算的值不匹配,所以软件将始终进入死循环。
stm32加密方法,stm32,单片机,嵌入式硬件ID起始地址
stm32加密方法,stm32,单片机,嵌入式硬件
加密程序

#include "sysid.h"
#include "stm32f10x.h"
#include "bsp_usart.h"
#define SYSID 0X1FFFF7E8   //stm32f1系列单片机id起始地址

//u8 idcode[]={0X31,0XFF,0XD4,0X5,0X42,0X48,0X30,0X39,0X27,0X52,0X22,0X57}; //原单片机id 12字节 96bit
u8 idcode[]={0X30,0XFE,0XD3,0X4,0X41,0X47,0X2F,0X38,0X26,0X51,0X21,0X56}; //原单片机id加密  12字节 96bit

uint8_t i = 0;
void Sysid_Read(void)
{  
   static u8 id[12];  //12*8 = 96
	for(i =0;i < sizeof(id);i++)  //读取ID
	{
	   id[i] = *(u8*)(SYSID + i);
		 printf("%#X,",id[i]);
	}
}
//系统ID校验
void SysidCheck(void)
{
   for(i =0;i < 12;i++)
	{ 
	   if(idcode[i] == *(u8*)(SYSID + i))  //比较单片机ID
		 {
		    printf("ok\r\n");
		 }
		 else
		 {
		    printf("eeor\r\n");
			 while(1)  //ID校验失败死循环
			 {
			    ;;
			 }
		 }
	}
}

mian.c

 
#include "stm32f10x.h"
#include "bsp_usart.h"
#include "sysid.h"

uint16_t data = 65535;
/**
  * @brief  主函数
  * @param  无
  * @retval 无
  */
int main(void)
{	
  /*初始化USART 配置模式为 115200 8-N-1,中断接收*/
  USART_Config();
  LED_GPIO_Config();
	
	/* 发送一个字符串 */
	Usart_SendString( DEBUG_USARTx,"这是一个串口中断接收回显实验\n");
	//Usart_SendHalfWord(DEBUG_USARTx,data);
	
	printf("欢迎使用野火STM32开发板\n\n\n\n");
	printf("---------------------------\n");
	Sysid_Read();//首次读取设备芯片ID打印显示之后再写入数组对比
	SysidCheck();
    while(1)
	{	
      
		
	}	
}

使用加密函数的时候将打印全部取消
加密在初始化中判断一次文章来源地址https://www.toymoban.com/news/detail-589545.html

到了这里,关于STM32芯片加密的方法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 单片机项目分享 stm32机器视觉的人脸识别系统 - 单片机 物联网 嵌入式

    🔥 这两年开始毕业设计和毕业答辩的要求和难度不断提升,传统的毕设题目缺少创新和亮点,往往达不到毕业答辩的要求,这两年不断有学弟学妹告诉学长自己做的项目系统达不到老师的要求。 为了大家能够顺利以及最少的精力通过毕设,学长分享优质毕业设计项目,今天

    2024年01月22日
    浏览(84)
  • stm32毕设分享 stm32智能运动计步系统 - 物联网 嵌入式 单片机

    🔥 这两年开始毕业设计和毕业答辩的要求和难度不断提升,传统的毕设题目缺少创新和亮点,往往达不到毕业答辩的要求,这两年不断有学弟学妹告诉学长自己做的项目系统达不到老师的要求。 为了大家能够顺利以及最少的精力通过毕设,学长分享优质毕业设计项目,今天

    2024年02月20日
    浏览(77)
  • 单片机项目分享 基于stm32的便携用电功率统计系统 -物联网 嵌入式 单片机

    🔥 这两年开始毕业设计和毕业答辩的要求和难度不断提升,传统的毕设题目缺少创新和亮点,往往达不到毕业答辩的要求,这两年不断有学弟学妹告诉学长自己做的项目系统达不到老师的要求。 为了大家能够顺利以及最少的精力通过毕设,学长分享优质毕业设计项目,今天

    2024年02月19日
    浏览(113)
  • 嵌入式STM32 单片机 GPIO 的工作原理详解

    STM32的 GPIO 介绍 GPIO 是通用输入/输出端口的简称,是 STM32 可控制的引脚。GPIO 的引脚与外部硬件设备连接,可实现与外部通讯、控制外部硬件或者采集外部硬件数据的功能。 以 STM32F103ZET6 芯片为例子,该芯片共有 144 脚芯片,包括7个通用目的的输入/输出口(GPIO)组,分别为

    2024年02月20日
    浏览(50)
  • stm32毕设分享 stm32单片机的远程WIFI密码锁 - 物联网 嵌入式

    🔥 这两年开始毕业设计和毕业答辩的要求和难度不断提升,传统的毕设题目缺少创新和亮点,往往达不到毕业答辩的要求,这两年不断有学弟学妹告诉学长自己做的项目系统达不到老师的要求。 为了大家能够顺利以及最少的精力通过毕设,学长分享优质毕业设计项目,今天

    2024年02月20日
    浏览(60)
  • stm32毕设分享 基于stm32的便携用电功率统计系统 -物联网 嵌入式 单片机

    🔥 这两年开始毕业设计和毕业答辩的要求和难度不断提升,传统的毕设题目缺少创新和亮点,往往达不到毕业答辩的要求,这两年不断有学弟学妹告诉学长自己做的项目系统达不到老师的要求。 为了大家能够顺利以及最少的精力通过毕设,学长分享优质毕业设计项目,今天

    2024年02月22日
    浏览(62)
  • 【单片机毕设选题】 stm32智能运动计步系统 - 物联网 嵌入式 单片机

    🔥 这两年开始毕业设计和毕业答辩的要求和难度不断提升,传统的毕设题目缺少创新和亮点,往往达不到毕业答辩的要求,这两年不断有学弟学妹告诉学长自己做的项目系统达不到老师的要求。 为了大家能够顺利以及最少的精力通过毕设,学长分享优质毕业设计项目,今天

    2024年02月20日
    浏览(67)
  • 单片机项目分享 stm32机器视觉的口罩佩戴检测系统 - 单片机 物联网 嵌入式

    🔥 这两年开始毕业设计和毕业答辩的要求和难度不断提升,传统的毕设题目缺少创新和亮点,往往达不到毕业答辩的要求,这两年不断有学弟学妹告诉学长自己做的项目系统达不到老师的要求。 为了大家能够顺利以及最少的精力通过毕设,学长分享优质毕业设计项目,今天

    2024年02月22日
    浏览(83)
  • 【单片机毕设选题】Stm32单片机的音乐播放器设计 - 物联网 嵌入式

    🔥 这两年开始毕业设计和毕业答辩的要求和难度不断提升,传统的毕设题目缺少创新和亮点,往往达不到毕业答辩的要求,这两年不断有学弟学妹告诉学长自己做的项目系统达不到老师的要求。 为了大家能够顺利以及最少的精力通过毕设,学长分享优质毕业设计项目,今天

    2024年02月20日
    浏览(52)
  • 单片机项目分享 单片机自动写字机器人设计与实现 - 物联网 嵌入式 stm32

    🔥 这两年开始毕业设计和毕业答辩的要求和难度不断提升,传统的毕设题目缺少创新和亮点,往往达不到毕业答辩的要求,这两年不断有学弟学妹告诉学长自己做的项目系统达不到老师的要求。 为了大家能够顺利以及最少的精力通过毕设,学长分享优质毕业设计项目,今天

    2024年02月21日
    浏览(93)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包