USB 防拷贝 U 盘-需要行业大佬们的建议

2018-12-31 17:27:33 +08:00
 jaggerkyne
最近一个客户找到我们,提出了想要这样的一个资源分享方案。

USB 防拷贝技术,要求是放在 usb 里面的文件:主要是音频,视频,文件,图片最终客户可以看,但是不能够私自拷贝。文件格式主要是:mp3,mp4,pdf,ppt,jpg。u 盘必须是独立运行,不能让客户安装客户端(包括插进去后自动安装的 autorun,而且还得跨平台 windows 和 mac ),或者 viewer 之类的东西。

要求支持的平台有:苹果和安卓手机,mac 和 windows。

给的钱大约是 20WRMB,每月的订单为 2W 美金左右的订单。

看了目前所有市场上的我们能找到的方案,基本上就是在文件上加了一个类似播放器的壳,然后运用软件给壳来解锁。我们还发现有些方案直接就是把文件给建造在层层的文件夹里隐藏起来(最可怕的,人家还拿到国内的专利证书)。

最后找到了 2 家,以色列的 TrusCont 和美国的 nexcopy,这两个类似是用硬件的,TrusCont 但是本质上还是壳,还要使用 autorun,虽然已经很接近了,但人家只支持 windows。还找到日本的一家 Hagiwara Sys-Com,可惜还没拿到 developer kit。

我知道一个关于拷贝的定律,if it can be read, it can be copied.

上来求助 v 圈的大大们,看看有没有现成的方案,或者能够做的?

先行感谢拉。
19552 次点击
所在节点    程序员
181 条回复
realpg
2018-12-31 22:04:16 +08:00
@jaggerkyne #53
显然我们并没有用 fat32 exfat 等等 所以说么 其实核心就是一句话
uptime
2018-12-31 22:04:25 +08:00
按你客户要求,要原生 player 就能使用,而不是特定程序,这是不可能的

或者换个思路吧,U 盘后置一个清除模块,或者说病毒,自动清除特定的文件。
sobigfish
2018-12-31 22:05:59 +08:00
@jaggerkyne #57 自己写 client (读显示内容的) 就都可以啊,又不是直接用银行的。
px1396
2018-12-31 22:10:52 +08:00
做一个防拷镜像量产到 u 盘可以吧
zander
2018-12-31 22:11:51 +08:00
破坏掉目录结构,利用一些操作系统对特殊文件 /文件夹名称处理上的障碍,做出只能播放不能复制的文件。(只对一般人有效)
smdbh
2018-12-31 22:12:19 +08:00
看了半天,不如发发小册子算了,完全符合要求。
jaggerkyne
2018-12-31 22:14:10 +08:00
@realpg 呵呵,大哥能给点提示吗?

@uptime 正在想,文件必须保留在 u 盘上,不能清除的。有没有逆向的思路呢?

@sobigfish 这就是 app 或者 viewer 的方案阿。

@px1396 能具体说一下吗?

@zander 能否具体说一下?

@smdbh 说得好,我老板也说过,但是小册子不能有音频或者视频阿。
px1396
2018-12-31 22:21:51 +08:00
@jaggerkyne U 盘量产可以把 U 盘模拟成一个 USB 光驱,然后你参考一下这个链接 看能不能做出一个防拷光盘镜像 https://wenku.baidu.com/view/258bd9a1284ac850ad024248.html
smdbh
2018-12-31 22:29:09 +08:00
不要纠结原生播放器, 自己实现一个绿色的播放器,有区别么? 其他问题就迎刃而解了
sdijeenx
2018-12-31 22:32:22 +08:00
小册子+放复制光盘=3=
chinvo
2018-12-31 22:37:35 +08:00
ARM 模拟成 U 盘 + USB 网卡,实现一种主流 DRM License Server 和时钟,通过模拟的优盘提供加密后的文件内容,通过模拟的 USB 网卡提供 DRM 服务。

DRM 服务以内置的时钟和 NAND 序列号作为密钥加解密种子,一批内容用同样的密钥加密,然后密钥用相关逻辑和种子生成的密钥保护起来放在不对上位机暴露的 NAND 区域。

这样即使能拷贝数据也必须有对应的硬件 ID 和种子算法才能解密(而硬件 ID 和算法是不对上位机暴露的)。

单个设备(仅主控部分)成本大概能控制在几美元
chinvo
2018-12-31 22:38:21 +08:00
@sdijeenx #69 “请输入小册子第 X 页第 X 行第 X 字”
sdijeenx
2018-12-31 22:42:29 +08:00
@chinvo DOS 游戏的经典套路
sdijeenx
2018-12-31 22:44:43 +08:00
tf 卡有一个临时只读寄存器和永久只读寄存器,临时的可以随便改,永久的只能写一次。
jaggerkyne
2018-12-31 22:49:34 +08:00
@chinvo 这个是 TrusCont 的运行机制,nexcopy 应该也是差不多,但是这个方案怎么解决跨平台问题?在 u 盘里面做时钟吗?这样解决方案有厂商吗?或者技术文档?难道要像 @sdijeenx 说的那样,用小册子来输入小册子第 X 页第 X 行第 X 字”,这样的用户体验就差很多拉。

@smdbh 嗯,我让老板劝劝客户。

@sdijeenx 这个仅能解决写入问题,不能防止拷贝的问题。
ThirdFlame
2018-12-31 22:52:06 +08:00
古巴 巴西 印度 三个国家中的一个应该是。
chinvo
2018-12-31 23:08:07 +08:00
@jaggerkyne #74 跨平台的能力来源于“实现一种主流 DRM License Server ”

因为各平台上的主流播放器(包括系统内置的)基本都支持主流的 DRM 技术
discrete
2018-12-31 23:13:01 +08:00
@ThirdFlame 我感觉是朝鲜,印度都不至于。
aphyllan
2018-12-31 23:18:04 +08:00
从 U 盘主控的角度来看,“视频播放”与“文件拷贝”的读取模式应该是有显著差异的吧,如果文件足够大。
以 VLC 为例,默认的本地文件缓冲为 1 秒,读请求呈现相对固定的周期,而且单次的数据量较小。
而文件拷贝会在远小于视频时长的时间内,以链路能达到的最大速度访问完所有数据。
假如有硬件开发能力的话,写个模式识别是不难的,在检测到疑似拷贝行为时马上断掉 USB 连接。
考虑到操作系统的缓存机制会模糊掉这些特征,还需要在文件头部填充或者通过主控动态注入无效数据用来膨胀体积,这又涉及到封装格式和解码器的各种问题,坑还是挺多的。。。
qile1
2018-12-31 23:36:43 +08:00
把内容打印出来,什么用胶粘死一个 u 盘

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/522737

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX