日期:2014-05-17  浏览次数:20896 次

怎么保证SD卡中的数据与物理SD卡绑定 防止SD卡中数据被复制到电脑上
一、应用背景
SD卡中存有我们的导入数据文件data.bat,SD卡要插入到WinCE系统,为WinCE系统中的应用程序提供运行数据;

现在有一个担心:使用者可能把SD卡中的文件data.bat拷贝到新的SD卡中,这样新的SD卡插入到WinCE机器中,也能正确地给应用程序提供数据;

但我们的目的是想让SD卡与data.bat绑定,因为我们卖的是SD卡。如果拷贝出来换个SD卡也能用,那么就失去商业价值。

二、解决方案选择
方案一:
PC机端
写一个PC机软件,先读取SD卡的PID,然后把PID写入到data.bat文件的特定字段中,然后将data.bat文件写入到SD;

winCE端
winCE的应用程序读取SD卡中的data.bat文件中的PID字段的值,再读取SD卡真实的PID,然后将两个PID比较,如果一致,那么就认为是合法的;否则.....^-^ 盗版的!

方案一总结:这样做开发量多了个PC机软件,为了提高保密性,可以把PID加密。

方案二、
 

三、问题扩展
1、以上解决方案其实不是从根本上防止SD卡数据被复制出来,因为确实被复制了,只是在使用时,多了道验证工作。

但如果是SD中数据要防止被复制到电脑上怎么办呢?怎么防止U盘内的文件被复制出去?比如个别文件、图片等,要求就是可以打开看,但就是不能被复制。

见如下应用场景:

我的朋友是学设计的,他的原创作品想要到美术社去喷绘,要防止被人未经授权就复制使用,所以想找一种U盘,里面的图片可以看,但就是不能复制,有那些U盘具有这种功能?或是在U盘上加装什么软件可以做到? 只能看,就是不能复制就可以,就算抓屏或是对着屏幕拍照也没关系,因为使用这个手段复制的图片,跟本达不到打印精度,总之就是能看但是不能复制就可以。

相比第2个问题“怎么防止电脑上的数据被拷到SD卡里呢?”,这个问题实现起来有难度,因为我们无法控制PC机上运行的软件和驱动(要是可以的话,方法参考:TIPS:禁止向U盘写入文件 从U盘COPY 删除 ),我们能控制的只有SD卡。

 思路一、与解决上面问题类似,把数据与SD卡绑定,但SD卡里的数据类型众多,不可能是我们开发的,如果我们把PID写入到文件里,

那么此文件肯定是不能用的,这种使用场景与上面显然是不一样的。

思路二、让U盘插入时就自动运行某个程序,让这个程序来禁止文件被复制,哈!这不是病毒吗?

思路三、共享资料保护专家高级版

2、怎么防止电脑上的数据被拷到SD卡里呢?


------解决方案--------------------
使用加密狗啊!
------解决方案--------------------
因为使用这个手段复制的图片,跟本达不到打印精度,总之就是能看但是不能复制就可以。

不可以邮寄两张精度不高的图片过去参加比赛么??

1、类似U盾的这种东西最最适合楼主了(什么加密算法的最不可靠了,MD5都被破解了)

2.把SD卡分区嘛,分成多个分区,隐藏分区。把容量设置死