极客工坊

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 25744|回复: 10

如何防止Arduino程序被抄板?

[复制链接]
发表于 2016-3-17 10:24:09 | 显示全部楼层 |阅读模式
RT,Atmega芯片本身有没有类似硬件识别码一类的唯一的标识码能够被程序读取啊?
这样可以在程序里设置一个结合识别码的算法,即使程序被抄板了,也不能运行在同型号的其他芯片上.

或者是高手们有没有别的方法能防止程序被复制?
当然,这里不用考虑程序被破解的问题,这个可以用复杂的算法来缓解被破解的时间
回复

使用道具 举报

发表于 2016-3-17 15:49:16 | 显示全部楼层
像一些贵价电脑软件一样, 做一个 dongle 出来, 而程式必须要侦测到才执行.

例如做一个很简单的 i2c device, 接收了数据後, 用你自己特定的计算回传一个值作检查.
你的程式一开始先取一个随机数, 向 i2c device 送出, 再看看回传的值是否跟你的计算结果一样.
如果正确就执行, 否则就停止.
在执行过程中, 也可随机加入类似的检测, 保证 dongle 一直连着.

就是你的程式被抄到别处 (假设不是用源码送出), 也要有相应的 dongle 才可执行.
这样的 dongle 应该不会太复杂, 成本也不会高.
回复 支持 反对

使用道具 举报

发表于 2016-3-17 17:08:55 | 显示全部楼层
很好奇是什么牛逼的程序?

没有绝对的办法,只是时间问题,就看值不值得别人弄了
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-4-18 10:06:06 | 显示全部楼层
Super169 发表于 2016-3-17 15:49
像一些贵价电脑软件一样, 做一个 dongle 出来, 而程式必须要侦测到才执行.

例如做一个很简单的 i2c devi ...

用狗了就会增加成本,我想知道avr本身有没有唯一的ID能被程序读取到呢?
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-4-18 10:06:43 | 显示全部楼层
lovezypj 发表于 2016-3-17 17:08
很好奇是什么牛逼的程序?

没有绝对的办法,只是时间问题,就看值不值得别人弄了

我说了不考虑程序被破解的可能,只是想知道avr芯片有没有ID供程序读取
回复 支持 反对

使用道具 举报

发表于 2016-4-18 21:19:34 | 显示全部楼层
没有。
回复 支持 反对

使用道具 举报

 楼主| 发表于 2016-7-29 12:30:09 | 显示全部楼层
zlucas 发表于 2016-4-18 21:19
没有。

好吧,言简意赅,还是放弃了
回复 支持 反对

使用道具 举报

发表于 2016-8-9 18:05:05 | 显示全部楼层
arduino那么简单的代码,搞破解的功夫都写出来n次了
回复 支持 反对

使用道具 举报

发表于 2016-8-27 18:14:06 | 显示全部楼层
有两个简单粗暴的方法,
其一,录好程序接好线,烧录口和主芯片直接灌注树脂或其他胶。
还有一种方法,设个开关,只要烧录口有电压信号,就闭合开关,直接短路烧毁芯片。
这两个笨方法我们团队一直在用,给您做参考~
回复 支持 反对

使用道具 举报

发表于 2016-9-7 16:29:55 | 显示全部楼层
obersteinparis 发表于 2016-8-27 18:14
有两个简单粗暴的方法,
其一,录好程序接好线,烧录口和主芯片直接灌注树脂或其他胶。
还有一种方法, ...

第二个方法够狠
回复 支持 反对

使用道具 举报

发表于 2016-9-7 18:55:55 | 显示全部楼层
外置SHA204加密芯片,配合上里面的代码。。。
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则 需要先绑定手机号

Archiver|联系我们|极客工坊

GMT+8, 2024-5-9 11:05 , Processed in 0.045090 second(s), 25 queries .

Powered by Discuz! X3.4 Licensed

Copyright © 2001-2021, Tencent Cloud.

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