这些小活动你都参加了吗?快来围观一下吧!>>
电子产品世界 » 论坛首页 » 嵌入式开发 » STM32 » 如何使用STM32芯片内部的唯一ID来加密?实际有用吗?

共19条 1/2 1 2 跳转至

如何使用STM32芯片内部的唯一ID来加密?实际有用吗?

工程师
2021-02-20 23:19:52     打赏

大家好!我的程序需要烧录两次,第一次烧录的加密程序,然后将结果存入FLASH ,第二次是应用程序+解密 ,将解密结果与存入FLASH的结果比较是否成功。

uint32_t m_ui32AdressVar = 0XEA60;
static void board_get_uniid(uint32_t *IntDeviceSerial)
{
  //不直接通过0x1FFFF7E8 地址读取UID,而是先通过数据算出UID地址,0x1FFFF7E8 = (((m_ui32AdressVar<<10) + 0x567EFD)<<3)
  uint32_t *UniIdAdress;
  UniIdAdress = (uint32_t*)(((m_ui32AdressVar<<10) + 0x567EFD)<<3);//0x1FFFF7E8 指针UniIdAdress
       
  IntDeviceSerial[0] = *(__IO uint32_t*)(UniIdAdress) + 0x4321;
  IntDeviceSerial[1] = *(__IO uint32_t*)(UniIdAdress+0x04) + 0x1234;//+0x04
  IntDeviceSerial[2] = *(__IO uint32_t*)(UniIdAdress+0x08) + 0x5555;//+0x08
       
//  IntDeviceSerial[0] = *(__IO uint32_t*)(0x1FFFF7E8);
//  IntDeviceSerial[1] = *(__IO uint32_t*)(0x1FFFF7EC);//+0x04
//  IntDeviceSerial[2] = *(__IO uint32_t*)(0x1FFFF7F0);//+0x08
}

通过上面这样处理意义大吗?如果直接读取UID,网友说反汇编很快就找到唯一ID地址并直接跳过了,我不知道通过上面这样转换一下,是不是没有那么容易破解。

希望各位探头,指教一个有效的、防止破解的方法。。。

先谢过大家了!





关键词: 唯一ID     加密     UID    

工程师
2021-02-20 23:23:23     打赏
2楼

肯定是有用的啦


高工
2021-03-09 08:44:41     打赏
3楼

谢谢分享!


菜鸟
2021-03-12 15:53:59     打赏
4楼

肯定有用的,但是需要看你的加密算法怎么处理


工程师
2021-03-13 14:44:31     打赏
5楼

谢谢分享


菜鸟
2021-10-20 15:20:45     打赏
6楼

破解方法.png


助工
2021-10-20 17:31:00     打赏
7楼

谢谢分享


工程师
2021-10-20 22:39:28     打赏
8楼

ID加密,还是有一定帮助的!


工程师
2021-12-20 10:58:18     打赏
9楼

感谢楼主分享


高工
2022-01-03 21:33:24     打赏
10楼

谢谢分享


共19条 1/2 1 2 跳转至

回复

匿名不能发帖!请先 [ 登陆 注册 ]