搜索
bottom↓
楼主: Jacy

STM32/GD32 96位唯一ID自动加密(无须任何软件)

  [复制链接]

出0入4汤圆

发表于 2014-12-18 14:35:28 | 显示全部楼层
加密方式没看太明白  开机判断指定位置是否为FF 如果是FF就写入ID 如果不是FF就和ID对比 不是ID就不运行 是这样吗?如果是这样的话flash全读取烧到另一片不会运行 需要破解 不过这样不能给客户固件自己升级  要升级固件还得自己跑一趟  如果能公开固件 又能加密有方便了

出0入0汤圆

发表于 2014-12-18 17:26:40 来自手机 | 显示全部楼层
不错,楼主这个可以做程序注册码用吗?

出0入0汤圆

发表于 2015-4-1 23:16:33 | 显示全部楼层
mark stm32 加密

出0入0汤圆

发表于 2015-4-2 05:51:09 | 显示全部楼层
下载了, 有空试下,谢谢楼主

出0入0汤圆

发表于 2015-4-2 07:54:22 | 显示全部楼层
选项字节

出0入0汤圆

发表于 2015-4-2 08:00:02 来自手机 | 显示全部楼层
赞一个,感觉很不错。

出0入0汤圆

发表于 2015-4-2 08:03:53 来自手机 | 显示全部楼层
谢谢分享。

出0入0汤圆

发表于 2015-4-2 08:15:00 | 显示全部楼层
Mark!谢谢分享~

出0入0汤圆

发表于 2015-4-2 12:08:29 来自手机 | 显示全部楼层
lD都可以修改,这方法没有用的!

出0入0汤圆

发表于 2015-4-2 13:16:31 | 显示全部楼层
外面加一个带MCU的加密芯片,主程序中重要算法放到加密芯片中。

出0入0汤圆

发表于 2015-4-2 13:45:21 | 显示全部楼层
ATSHA204 2万就可以解,真是为加密操碎了心!

出0入0汤圆

发表于 2015-5-12 14:31:24 | 显示全部楼层
嗯,不错的,赶紧给我的程序加密。。。。。。。

出0入0汤圆

发表于 2015-5-12 15:11:26 | 显示全部楼层
mark加密 感谢分享!

出0入0汤圆

发表于 2015-5-13 09:13:47 | 显示全部楼层
很有学习价值,多谢了

出0入0汤圆

发表于 2015-5-13 21:33:30 | 显示全部楼层
经验之道啊,不错,学习了。

出0入0汤圆

发表于 2015-5-15 08:56:35 | 显示全部楼层
mark                              

出0入0汤圆

发表于 2015-5-15 13:23:23 | 显示全部楼层
据说  加密的多  解密的更多,这类使用量比较大的处理器,好像都可以解密,很难做到真正的加密,冷辟一点的处理器,或许好做一些。。。

出0入0汤圆

发表于 2015-5-15 14:19:51 | 显示全部楼层
YangFangLR2 发表于 2014-12-9 15:24
唯一的ID是改不了的。

我就买过一盘ID号都是一样的stm32f100的芯片,有什么奇怪?

什么东西到达中国,总是有办法适应的;

关键是你没有上量,成千上万的用芯片,告诉你,ID号也是不可靠的,万事得综合考量

出0入0汤圆

发表于 2015-5-15 23:36:31 | 显示全部楼层
持续关注,程序加密方法

出0入0汤圆

发表于 2015-5-16 15:16:29 | 显示全部楼层
直接放到这里来更方便。

本帖子中包含更多资源

您需要 登录 才可以下载或查看,没有帐号?注册

x

出0入0汤圆

发表于 2015-5-16 19:30:33 | 显示全部楼层
受教了,继续关注

出0入0汤圆

发表于 2015-5-16 19:30:53 | 显示全部楼层
受教了,继续关注

出0入0汤圆

发表于 2015-6-24 17:27:47 | 显示全部楼层
偷懒 找个代码用用  谢谢LZ

出0入0汤圆

发表于 2015-6-25 18:59:29 来自手机 | 显示全部楼层
收藏,学习

出0入0汤圆

发表于 2015-6-25 19:00:47 来自手机 | 显示全部楼层
收藏,学习

出0入0汤圆

发表于 2015-6-25 19:50:48 | 显示全部楼层
多做几层独立的加密就好。

出0入0汤圆

发表于 2015-6-25 20:04:52 | 显示全部楼层
学习了,

出0入0汤圆

发表于 2015-6-26 14:54:38 | 显示全部楼层
学习一下

出0入0汤圆

发表于 2015-6-26 16:47:31 | 显示全部楼层
谢谢楼主分享!!!!

出0入0汤圆

发表于 2015-6-27 08:31:13 | 显示全部楼层
学习了。。。。。。。。。。。。

出0入0汤圆

发表于 2015-8-28 16:13:05 | 显示全部楼层
学习了,正好可以用到项目中,谢谢楼主分享

出0入0汤圆

发表于 2015-8-28 17:43:14 | 显示全部楼层
算一把DES或者RSA就可以了,公私钥密钥对

出0入0汤圆

发表于 2015-8-28 17:56:23 | 显示全部楼层
本帖最后由 xwkm 于 2015-8-28 17:58 编辑

我觉得倒可以用一段程序,特殊的程序写在Flash的特殊段落,检测到这个程序存在的时候,跳转到这个程序去算CRC和UUID。编译的时候可以任意顺序链接各个函数,保证每个binary有大不同。然后算完UUID再写回程序,最终擦除自己。这样就不留痕迹了。另外我觉得CRC/UUID地址应该让程序随机生成,这样不容易被找到破绽,哈哈

出50入8汤圆

发表于 2015-8-28 19:11:12 | 显示全部楼层
有参考价值,收藏起来先

出0入0汤圆

发表于 2015-8-28 19:36:19 | 显示全部楼层
本帖最后由 haistart 于 2015-8-28 19:46 编辑

只要我把破解成本控制在破解收益之上就可以了。为什么大家都纠结它是否能破解呢。没有芯片是不能破解的,GD32都可以兼容,说明自己特制一批都不难。

出0入0汤圆

发表于 2015-8-29 14:52:07 | 显示全部楼层
很好 收藏  谢谢分享

出0入0汤圆

发表于 2015-8-29 15:56:59 | 显示全部楼层
赞赞,非常好,感谢楼主,辛苦了!!!

出0入0汤圆

发表于 2015-8-29 19:31:04 | 显示全部楼层
楼主为什么不把加密字节写在USER DATA里面,而且这些只能写一次,不能再次擦出,另外读出来的BIN还是一样,这个BIN可以直接给客户自己升级不担心被盗版

出0入0汤圆

发表于 2015-9-6 11:24:02 | 显示全部楼层
真心牛逼呀呀

出0入0汤圆

发表于 2015-9-7 12:42:10 | 显示全部楼层
好方法,谢谢

出0入0汤圆

发表于 2015-9-7 13:30:20 | 显示全部楼层
学习了,现在还没有用到

出0入0汤圆

发表于 2015-9-7 15:15:43 | 显示全部楼层
如果是可联网的设备,把UUID也做为地址的一部份在系统中使用,拷UUID意义也不大。

出0入0汤圆

发表于 2015-9-8 08:52:41 | 显示全部楼层
hecb999 发表于 2014-12-9 18:55
定义一个特定地址还需地址不与Flash代码重合,否则有可能探除,需要去计算,麻烦!
可以定义成一个常量数组 ...

好方法!!!

出0入0汤圆

发表于 2015-9-8 09:02:42 | 显示全部楼层
谢谢 !!!

出0入0汤圆

发表于 2015-10-27 10:53:26 | 显示全部楼层
这个方法感觉很好,值得借鉴啊

出0入0汤圆

发表于 2015-10-27 11:22:29 | 显示全部楼层
我们在“矛”和“盾”的战斗中矛盾前进,又一方法,学习下

出0入0汤圆

发表于 2015-10-27 14:05:41 | 显示全部楼层
赞一个,借鉴一下

出0入0汤圆

发表于 2015-10-27 14:35:32 | 显示全部楼层
先马克一下再细细看。谢谢楼主

出0入0汤圆

发表于 2015-10-27 14:42:54 | 显示全部楼层
几种方法综合起来用,效果做好

出0入0汤圆

发表于 2015-10-27 21:09:01 | 显示全部楼层
UID加密后,判断ID不相等,进入随机时间(根据产品特性设置)死机处理。
这样破解者,先破解了程序后,会烧到新的芯片,验证是否可用,短时间验证时,是好用的。这样破解者应该就不会再去搞UID的事了吧。
要是破解者不进行大量测试,量产后,不就瞎了么。

出15入118汤圆

发表于 2015-10-27 21:17:30 | 显示全部楼层
mark 好贴

出0入16汤圆

发表于 2015-11-16 15:45:21 | 显示全部楼层
很有价值,果断收藏

出0入0汤圆

发表于 2015-11-28 23:35:55 | 显示全部楼层
学习了!~

出0入0汤圆

发表于 2016-8-30 18:06:59 | 显示全部楼层
EMOSYN 发表于 2014-11-19 17:05
楼主的加密方法,硬解两片后对比,很容易破解。

受楼主启发,应该有更好的方法:

您好,您说的那个将函数写入指定的Flash地址,然后消除检验程序(相当于“自宫”),网友说使用#program ROM类似语句,但是没有具体讲怎么使用,链接为http://www.stmcu.org/faq/index/detail/id-5276http://bbs.21ic.com/icview-675988-1-1.html。请问具体步骤要怎么做呢?用的Keil开发环境。

出0入0汤圆

发表于 2016-12-26 23:01:34 | 显示全部楼层
好办法 就是怕直接改ID 然后复制程序和FLASH

出0入0汤圆

发表于 2016-12-28 20:08:16 | 显示全部楼层
谢谢分享

出0入0汤圆

发表于 2017-1-3 10:35:05 | 显示全部楼层
好贴,其实可以把这个方法做为一个基础,如楼上各位所说,用更复杂的方法实现加密。

出0入0汤圆

发表于 2017-2-28 15:24:24 | 显示全部楼层
学习了,谢谢,收着

出0入0汤圆

发表于 2017-2-28 18:00:06 | 显示全部楼层
把ID乘以一个大数,取末尾的几位,解密难度又会大一些~

出0入0汤圆

发表于 2017-3-1 09:55:48 | 显示全部楼层
不错不错。我先下载看看了。

出0入0汤圆

发表于 2017-3-6 20:53:46 | 显示全部楼层
正在研究如何加密,有没有熟知解密的大神,良心发现,谈谈如何加密

出0入0汤圆

发表于 2017-3-14 15:29:30 | 显示全部楼层
好帖,学习了

出590入992汤圆

发表于 2017-3-14 22:07:47 | 显示全部楼层
说的不错,也给了提示,因为我就是简单的UID算法,用两个芯片对比就可以了,21楼说的可以。回去改,不管怎么样,增加破解的难度!

出0入0汤圆

发表于 2017-3-19 12:27:03 | 显示全部楼层
videofun 发表于 2015-5-16 15:16
直接放到这里来更方便。

谢谢。原地址已经失效。

出0入0汤圆

发表于 2017-3-19 14:32:11 | 显示全部楼层
有点用,一般情况这么处理就够了。

出0入4汤圆

发表于 2017-3-19 18:51:39 | 显示全部楼层
将就用吧,辅助外围期间更好。

出0入0汤圆

发表于 2017-3-20 11:53:31 | 显示全部楼层
增加破解的难度,方法可以。支持下!

出0入0汤圆

发表于 2017-3-21 16:46:05 | 显示全部楼层
百度连接失效了~楼主~

出0入0汤圆

发表于 2017-7-3 10:40:17 | 显示全部楼层
本帖最后由 beihai326 于 2017-7-3 11:04 编辑
STM32_Study 发表于 2014-11-20 15:04
找出差异也没用。是加密存储的。解密者根本无法修改


我朋友公司之前就有一个产品用这种方式被人破解了。。。我感觉没有真正加密的,就看难度大小,愿不愿意掏钱

出0入0汤圆

发表于 2017-7-3 13:52:17 | 显示全部楼层
很有用,收藏一下

出0入0汤圆

发表于 2017-7-21 21:46:32 | 显示全部楼层
学习下!

出0入4汤圆

发表于 2017-7-21 22:27:23 | 显示全部楼层
学习学习 可以防不了小人 可以防君子

出0入0汤圆

发表于 2017-7-23 10:40:38 来自手机 | 显示全部楼层
我就想说如果是简单的产品,有破解的时间随便找个人重编个程序不就行了,用得着破解吗?

出0入0汤圆

发表于 2017-7-23 11:06:11 | 显示全部楼层
人家将你的程序 的HEX都读出来了, 你怎么读ID 怎么写到FLASH全有 而且你怎么写的,他读出来的 就怎么写,怎么达到保密?

出0入0汤圆

发表于 2017-7-26 10:01:10 | 显示全部楼层
这个想法不错,手头正好有STM32的项目,拿你的这个实验一下。

出0入0汤圆

发表于 2017-7-26 16:35:07 | 显示全部楼层
赞一个!

出0入0汤圆

发表于 2017-8-26 12:35:24 | 显示全部楼层
谢谢分享!!

出0入0汤圆

发表于 2017-10-2 23:44:02 | 显示全部楼层
谢谢分享~~~
其实楼主的这个方法很值得借鉴,关键是-->判断是否为盗版不要立即去执行.等上个把月时间再来.
还有就是计算以及写入保存的加密程序要有自毁功能.

出0入0汤圆

发表于 2017-10-17 17:30:59 | 显示全部楼层
顶顶!看来加密难 破解不难啊!加密比破解还难!

出0入0汤圆

发表于 2017-10-17 18:15:07 | 显示全部楼层
都是高手,学习了,谢谢

出0入0汤圆

发表于 2017-10-17 19:46:56 | 显示全部楼层
这个方法不错。

出0入0汤圆

发表于 2017-10-17 22:27:40 | 显示全部楼层
不错,学习了!

出0入0汤圆

发表于 2017-10-18 14:20:36 | 显示全部楼层
谢谢分享

出0入0汤圆

发表于 2017-11-28 16:28:31 | 显示全部楼层
也在开始弄MCU加密,前面分析还是有道理的,道高一尺,魔高一丈?费脑筋:)

出0入0汤圆

发表于 2017-11-28 23:11:02 | 显示全部楼层
顶!之前一直都没加密过。

出0入0汤圆

发表于 2017-12-21 13:17:48 | 显示全部楼层
请问楼主,测试代码能发给我一份吗,连接失效了

出0入0汤圆

发表于 2017-12-21 13:34:25 | 显示全部楼层
不错的方法,有空研究一下

出0入0汤圆

发表于 2017-12-23 16:52:00 | 显示全部楼层
简单加密即可

出0入0汤圆

发表于 2017-12-23 22:10:12 | 显示全部楼层
这个好。0k

出0入0汤圆

发表于 2017-12-30 06:39:03 | 显示全部楼层
mark一下,以后试试这种方法

出0入0汤圆

发表于 2017-12-30 12:38:23 | 显示全部楼层
非常实用的方法,收藏备用。

出10入12汤圆

发表于 2018-11-9 19:58:05 | 显示全部楼层
方法是好  麻烦了点  还是继续打磨!!!1

出0入0汤圆

发表于 2019-6-9 23:18:33 | 显示全部楼层
谢谢分享的加密思路   

出0入0汤圆

发表于 2019-6-9 23:40:16 | 显示全部楼层
Jacy 发表于 2014-11-19 15:18
所以这个必须保密

程序只允许写一次,这样即使改了,也不让再写芯片的ID了,应该可以杜绝这个情况吧

出105入79汤圆

发表于 2019-6-10 00:37:50 | 显示全部楼层
建议使用OTP区域

出0入0汤圆

发表于 2019-6-10 08:34:00 来自手机 | 显示全部楼层
感谢楼主分享

出0入0汤圆

发表于 2019-6-10 18:42:17 来自手机 | 显示全部楼层
可以初始时不用4个FF,把32位中的8位设为0,这个想猜对的概率就很小了。

出0入0汤圆

发表于 2020-2-1 19:40:43 | 显示全部楼层
videofun 发表于 2015-5-16 15:16
直接放到这里来更方便。

谢谢分享验证过的程序!

出0入0汤圆

发表于 2020-2-2 14:58:49 来自手机 | 显示全部楼层
qwe2231695 发表于 2019-6-10 00:37
建议使用OTP区域

方便告知使用OTP区域的思路吗?

出105入79汤圆

发表于 2020-2-2 16:40:51 | 显示全部楼层
Elec_Ramble 发表于 2020-2-2 14:58
方便告知使用OTP区域的思路吗?

OTP区域出厂后不可倍篡改,将芯片得唯一ID使用RSA私钥加密后写入OTP,公钥来验证这样就是电子签名。程序内或者bootloader,或者上位机公钥解密如果得到得是当前芯片ID就证明是正版。
回帖提示: 反政府言论将被立即封锁ID 在按“提交”前,请自问一下:我这样表达会给举报吗,会给自己惹麻烦吗? 另外:尽量不要使用Mark、顶等没有意义的回复。不得大量使用大字体和彩色字。【本论坛不允许直接上传手机拍摄图片,浪费大家下载带宽和论坛服务器空间,请压缩后(图片小于1兆)才上传。压缩方法可以在微信里面发给自己(不要勾选“原图),然后下载,就能得到压缩后的图片】。另外,手机版只能上传图片,要上传附件需要切换到电脑版(不需要使用电脑,手机上切换到电脑版就行,页面底部)。
您需要登录后才可以回帖 登录 | 注册

本版积分规则

手机版|Archiver|amobbs.com 阿莫电子技术论坛 ( 粤ICP备2022115958号, 版权所有:东莞阿莫电子贸易商行 创办于2004年 (公安交互式论坛备案:44190002001997 ) )

GMT+8, 2024-3-29 10:29

© Since 2004 www.amobbs.com, 原www.ourdev.cn, 原www.ouravr.com

快速回复 返回顶部 返回列表