V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
jaggerkyne
V2EX  ›  程序员

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

  •  1
     
  •   jaggerkyne · 2018-12-31 17:27:33 +08:00 · 19606 次点击
    这是一个创建于 2161 天前的主题,其中的信息可能已经有所发展或是发生改变。
    最近一个客户找到我们,提出了想要这样的一个资源分享方案。

    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 圈的大大们,看看有没有现成的方案,或者能够做的?

    先行感谢拉。
    第 1 条附言  ·  2018-12-31 22:10:37 +08:00
    首先感谢大家开动脑筋,在此小弟再次表示感谢,为了帮助大家更好地开阔思路,现在总结一下大家所发言的。

    方案一:直接使用 DRM 或者网络流技术,在网端实现内容的播放。
    最终用户是正处在 vcd,dvd 到 u 盘转化的时代,他们的网络类似我们 90 年代的网络水平,所以没用。

    方案二:模拟两个分区,一个 CD-ROM 放播放器,另一个私有分区放文件,
    这个可以考虑,但是无法做到防拷贝。也是我们现在主攻的方向,可惜 fat,fat32 和 exfat 本身上的缺陷,导致了必须另辟路径。

    方案三:给文件加密,用 app 或者 viewer 的方式来实现闭环。
    造价比较高,没有找到现有的跨平台方案,仅仅支持 win,或者 mac,不支持移动端,兼容性不是很好。

    方案四:变成定制的 u 盘大小的操作系统或者蚊型电脑。
    造价太高,批量生产要很久才能回收成本。

    方案五:通过 u 盘主控的 UID 进行唯一标识,OS 端解密放行。
    类似方案二,我们有两者合一的方案,但是还是跨越不了平台之间的限制。

    方案六:物理给 upan 加锁,有锁的人才能开。
    造价高,而且解锁后,u 盘拥有人可以随便拷贝。

    客户要求的是三者合一(移动端,安卓,IOS,mac 和 windows )的,就像现在市场上那些三合一的 u 盘一样。用户体验必须是无缝的,插入某个 OS 就能用原生的 程序 进行播放,阅读,浏览,要求仅仅是不能被简单的复制。 内容必须和硬件锁死,要拿内容,必须把硬件一起拿走。
    181 条回复    2019-01-03 18:28:26 +08:00
    1  2  
    shily
        1
    shily  
       2018-12-31 17:41:02 +08:00 via Android
    私有分区格式+专用播放器?模拟两个分区,一个 CD-ROM 放播放器,另一个私有分区放文件
    Kirscheis
        2
    Kirscheis  
       2018-12-31 17:42:06 +08:00 via Android
    参考 drm 是怎么做的。。首先你得和各大操作系统厂商 py 交易一下

    然后可以用一些私有的软件来解密并且播放,密钥要存在独立的硬件里,并且要做好反内存 dump

    当然这些都防不住采集卡。。
    Humorce
        3
    Humorce  
       2018-12-31 17:42:10 +08:00   ❤️ 2
    就算你做到了,录屏或者外部设备录像怎么破?
    everwanna
        4
    everwanna  
       2018-12-31 17:43:17 +08:00 via Android
    虽然不懂硬件,但是你如果允许客户查看,就意味着解密后的数据要从优盘流向操作系统,那就不能够彻底组织客户截取数据。不管是硬件还是软件,所做的无非是混淆数据,提高难度而已,而无法加密。

    intel 最近推出了一个服务器芯片支持 secure enclave app,好像叫 sgx,允许 app 在可信内存空间中执行,不允许操作系统访问,但不是 PC 芯片。也无法保护数据从可信内存拷贝到操作系统,毕竟绝大多数数据你要展示给客户,还是需要操作系统资源的
    xml123
        5
    xml123  
       2018-12-31 17:48:12 +08:00
    @everwanna #4 既然始终都要把资源交给操作系统,能不能在 u 盘里实现一个独立的操作系统(然后我发现那为什么不扩展为不依赖于其他设备的完整的硬件,最终产品大概类似以前的 mp4 ……
    jaggerkyne
        6
    jaggerkyne  
    OP
       2018-12-31 17:49:44 +08:00
    @shily 这是绝大多数的软件和硬件系统这样做,但用起来用户体验不好,而且目前仅有 windows 端。有支持手机端(苹果和安卓)和 mac 端的方案介绍吗?

    @Kirscheis 能稍微具体一些吗?客户最终的销售对象不会使用采集卡这样的“高端设备”。客户只是需要把内容锁死在这个 u 盘里面,如果要分享,必须把这个 u 盘给别人。

    @Humorce 外部设备和录频有专门的软件方案,但是客户认为最终用户需要花大成本去做这件事情,也就不会这么做了。

    @everwanna 这个能支持手机端吗?
    everwanna
        7
    everwanna  
       2018-12-31 18:01:08 +08:00 via Android
    @xml123 是的,你需要音视频设备,然后就变成定制的计算机系统了
    everwanna
        8
    everwanna  
       2018-12-31 18:02:51 +08:00 via Android
    @jaggerkyne 如果通过 iOS app 分发数据,一定程度上可以大幅提高破解难度
    hymzhek
        9
    hymzhek  
       2018-12-31 18:07:10 +08:00
    hymzhek
        10
    hymzhek  
       2018-12-31 18:11:06 +08:00
    https://item.jd.com/2385857.html
    这个是自营金士顿 还有类似的 找找看
    also24
        11
    also24  
       2018-12-31 18:15:28 +08:00   ❤️ 1
    这更像是一个逻辑问题,楼主既然已经知道 if it can be read, it can be copied,那应该很清楚,除非有类似 DRM 的机制,否则 Viewer 是一定逃不掉的。

    让标准播放器可以兼容 = 输入文件(流)非加密 = 存在一份已解密的文件(流) = 存在一份可拷贝的文件(流)

    文件(流)拷贝也不能用 = 文件(流)加密 = 标准播放器不可以兼容 = 需要定制 Viewer

    除非能处理掉上面的六个等号中点任意一个,否则没戏。
    可以说…… DRM 算是最接近的一个了,然而覆盖度还是不够
    also24
        12
    also24  
       2018-12-31 18:16:42 +08:00
    @hymzhek #9 #10
    这类磁盘一旦解密之后,里面全是正常文件,想怎么 copy 就怎么 copy
    gamexg
        13
    gamexg  
       2018-12-31 18:21:38 +08:00
    u 盘大小的微型电脑,然后 hdmi 转 usb 摄像头?
    wdhwg001
        14
    wdhwg001  
       2018-12-31 18:26:39 +08:00 via iPhone
    隐藏分区里放一个 Linux,数据分区用 Linux 分区格式并加密,需要查看的话只能用 U 盘启动系统并查看,应该足够了。
    realpg
        15
    realpg  
       2018-12-31 18:53:14 +08:00
    给党政做过成型方案且生产了 不过方案还在保密期

    另外只能防基本的破解,真想搞你并不困难
    gux928
        16
    gux928  
       2018-12-31 18:57:13 +08:00 via iPhone
    做成自带屏幕的播放器吧
    newtype0092
        17
    newtype0092  
       2018-12-31 19:03:14 +08:00   ❤️ 1
    随手掏出手机对屏幕录像可破解楼上所有方法。。。
    不如让自己的员工带着播放设备去客户现场播放,既满足需求,成本也不是很高。
    a5677746
        18
    a5677746  
       2018-12-31 19:04:44 +08:00 via Android
    我们公司以前试过买一批寨板,接口全部用胶水封死,客户要看就拿着寨板看,愿意还就还,不愿意还就留在客户那了。
    后来换成让客户远程桌面连到我们自己的主机上查看了,复制了也是在我们自己的机子上复制,顶多能录屏。
    现在好像有只靠浏览器就能串流的技术,到时候连 u 盘都不用。
    chinvo
        19
    chinvo  
       2018-12-31 19:21:47 +08:00   ❤️ 1
    所有的 DRM 都怕录屏,只是增加了盗版成本而已

    微软有 PlayReady,Google 有 Widevine,Apple 有 Fairplay

    这些并不能阻止盗摄和录屏
    wqyyy
        20
    wqyyy  
       2018-12-31 19:28:13 +08:00 via Android
    还有人不理解在可以物理接触的情况下一切防拷贝都是骗人骗自己吗
    drlalll
        21
    drlalll  
       2018-12-31 19:40:24 +08:00
    学黑马培训的视频加密做法啊,必须固定的软件才能打开,每台电脑需要唯一的注册码,软件开启后关闭所有用户程序,不允许虚拟机运行。
    把程序直接安装在 U 盘运行一次自动删除,然后做成只读就行了啊,就算拷出去也打不开。
    Ya
        22
    Ya  
       2018-12-31 19:52:49 +08:00
    防止拷贝 人家不会录像吗?
    402124773
        23
    402124773  
       2018-12-31 20:03:41 +08:00
    @drlalll
    也妨不了录频吧
    lastpass
        24
    lastpass  
       2018-12-31 20:15:49 +08:00 via Android
    @402124773 录屏的话,加唯一隐藏水印。虽然阻止不了,但是可以查下去。
    wdlth
        25
    wdlth  
       2018-12-31 20:16:23 +08:00
    类似于 DLP 吧,那种一般都是在电脑上通过驱动去做的,不装客户端很难满足想要的效果。
    对于媒体文件,你再怎么防,总防不了采集吧,4K UHD 蓝光都给你录下来……
    t6attack
        26
    t6attack  
       2018-12-31 20:16:31 +08:00
    @402124773 让用户 ID 在视频中随机飘动就行了。谁录屏泄漏出去的,能追踪到。
    jugelizi
        27
    jugelizi  
       2018-12-31 20:22:33 +08:00
    专用播放器 文件加密
    拷贝也没用 其他软件打不开
    jaggerkyne
        28
    jaggerkyne  
    OP
       2018-12-31 20:22:41 +08:00
    @xml123 我们也给过类似的方案,但是客户想要的是一个 u 盘这么大小的方案。

    @everwanna 是的,nexcopy 就是使用 IOS 的 appview 来实现的,可惜的是不支持安卓的 linux 系统

    @hymzhek 这两个本质上还是加壳方案,只能对 windows,而且最终售价已经太高了。

    @also24 是的,因为如果是加密解密的方案就会得出这样的结论,但是客户要求仅仅是文件不可拷贝。所以我们的以为硬件设计师进入了死循环的境况。

    @gamexg 这个方案我们也提过,但是客户要的是 u 盘方案,这个方案的大小目前还没有可以所到 u 盘芯片那么小。

    @wdhwg001 这个方案还是要在操作系统上运行一些壳程序,我们有 windows 的方案,mac,IOS 和安卓端怎么破?

    @realpg 很好奇什么时候解密?可否分享一下机制?

    @gux928 客户拒接了

    @newtype0092 是的,但是在用户使用这样方法的时候,他得到的就是类似枪版的东西了。

    @a5677746 在国内外发达地区可以使用流技术,但是客户的对象是广大的这些地区以外的地区。

    @chinvo 同意,但是客户给了这道题,如果有确切的解决方案,可以换钱阿!客户的目的不是为了阻止内容传播,只是把传播的锁死在用户购买的 u 盘而已。

    @wqyyy 是的,但是如果完成得漂亮是有钱收的阿。

    @drlalll 我们也提供这样类似的方案,可惜客户已经否决了。

    @Ya 不怕别人录,想要看原版就必须要物理拿到这个 u 盘。

    谢谢以上所有大大的建议。在这里我再重申一下,客户的目的不是怕给人盗版,而是想要把资料和 u 盘做物理上的锁死,想要资料可以,必须连 u 盘都一起拿走。

    到现在为止好像还没有大大提供 filesystem 的方案。已知可以支持手机(苹果和安卓),windows 和 mac 的 filesystem 好像只有 exfat。有没有一个机制能够在 u 盘的一个初始分区上面写入一个微型操作系统,这个操作系统唯一的任务就是选择相应的解决方案。比如说插入手机时,会按照安卓,苹果,mac 或 windows 选择自带的播放器,其他的全部隐藏。或者一个机制可以根据 u 盘插入的操作系统,自行选择显示相应的盘符?
    leoleoasd
        29
    leoleoasd  
       2018-12-31 20:31:23 +08:00
    @jaggerkyne #28 U 盘大小完整计算机可以做到
    bashbunny 就是
    U 盘大小小的完整 linux 计算机
    插到电脑上后会把自己模拟成一个 U 盘和网卡
    sdijeenx
        30
    sdijeenx  
       2018-12-31 20:32:45 +08:00
    @jaggerkyne 既然有微型电视操作系统了还要 win 或者 mac 干什么,直接做一个播放视频的专用操作系统不就可以了。
    插 U 盘->重启电脑->自动播放视频
    nand 芯片一般都有唯一序列号的,只要检测出序列号不对就不让播放。
    cai1151671293
        31
    cai1151671293  
       2018-12-31 20:33:04 +08:00 via Android
    既然堵不住,那就疏,参考视频水印,通过泄露的文件追究相应人员的法律责任
    sdijeenx
        32
    sdijeenx  
       2018-12-31 20:33:16 +08:00
    电视->电脑
    liyvhg
        33
    liyvhg  
       2018-12-31 20:35:27 +08:00 via Android
    @jaggerkyne 已知的是 PlayStation 的 USB 底层和 Windows 的 USB 底层在枚举阶段有点不一样,这样设备自己能区分接入的是 PS 设备还是 win 设备。
    Android 和 iOS 不了解,思路可以参考。
    jaggerkyne
        34
    jaggerkyne  
    OP
       2018-12-31 20:42:32 +08:00
    @lastpass 录频没事,只要不是一个完整的原版就 ok 拉。

    @wdlth 是的,所以反对 DRM 的就是觉得很鸡肋。

    @jugelizi 这样就失去了跨平台性了,很多这样的方案就是特殊的 player 或者 viewer 的方案,基本都是 windows 的。其他平台没有。请问您有没有跨平台的方案呢?

    @leoleoasd 我等一下去研究研究,这个方案可以跨平台吗?

    @sdijeenx 这个对 pc,mac 或者电视端都可以,但是手机移动端呢?

    @cai1151671293 目的不是堵住他们拷贝内容,而是内容和 usb 硬件锁死,二者合二为一,缺一不可。


    @liyvhg 这个有相应的技术文档或者解决方案吗?
    sdijeenx
        35
    sdijeenx  
       2018-12-31 20:46:51 +08:00
    如果不能定做 APP 那就没办法了=3=
    leoleoasd
        36
    leoleoasd  
       2018-12-31 20:46:58 +08:00
    @jaggerkyne #34 不太了解 没用过其他平台下的
    官网上说网卡模拟跨平台
    leoleoasd
        37
    leoleoasd  
       2018-12-31 20:47:55 +08:00
    无论如何 录屏防不住 录像不清晰 能用采集卡
    everwanna
        38
    everwanna  
       2018-12-31 20:53:40 +08:00 via Android
    @jaggerkyne 支持 android 也可以,只是安全性不如 iOS 而已,只要手机没有 root,问题不大
    realpg
        39
    realpg  
       2018-12-31 20:56:22 +08:00
    @jaggerkyne #28
    方案脱密要很多很多年 不用考虑了
    其实不怕出来说,但是这个方案最值钱的东西就是思路,一两句话就把能挣一百来万的黑科技方案送别人这种事儿我觉得不太合适
    realpg
        40
    realpg  
       2018-12-31 20:57:00 +08:00
    PS 这边方案只管 windows,但是 mac、linux 都可以用不低的成本实现这一机制
    jaggerkyne
        41
    jaggerkyne  
    OP
       2018-12-31 21:05:19 +08:00
    @realpg 这个能够理解。只是 windows 端可以做的很多,只是要同时满足移动端,mac 和 linux 要么就是把制造成本弄得惨不忍睹,没有 200W 的订单的无法回收成本。老大曾经在政党端取得一个类似的 u 盘,可领导还是要了回去,不能拆着玩。所以在这个过程里面,还是觉得 @leoleoasd 这个方案的成本已经接近极限了。客户目前整个 project 也就是 20W,每月 2W 美金的订单更像是画饼。所以能够理解的,我想贵司的方案如果能很便宜的解决这个问题,那么这样如果能在 2-3 年内解密还是会有市场的。如果需要您提供思路,需要多少钱呢?合理的话,我可以向老板申请哦。
    realpg
        42
    realpg  
       2018-12-31 21:08:30 +08:00
    @jaggerkyne #41
    我可以给你透个底 我这边的 U 盘就是普通外面的 U 盘 随便找寨厂定制的 只需要主控统一 做了四千个 16G U 盘,硬件成本都没有团队来回现场机票多

    技术实现上,windows 的程序上累计成本算是花了五万多吧,从原理上来说,mac 和 linux 都可以实现,成本比 windows 贵的原因主要是会开发 windows 应用程序的满大街,会写 mac/linux 桌面程序的还得做的好的人,太难找
    sdijeenx
        43
    sdijeenx  
       2018-12-31 21:13:47 +08:00
    @realpg 所以是定制 U 盘主控识别 nand 的 UID,win 程序负责解密么?
    realpg
        44
    realpg  
       2018-12-31 21:16:54 +08:00
    @sdijeenx #43
    不是
    定制 U 盘只是为了保证主控一致性 假如我选型直接用金士顿的某款 U 盘 先买了一批 过一阵子假如不够了 再想买一批 特么金士顿换主控了 那就哭去吧

    定制的话,第一个是成本便宜 16G 的低速 U 盘(节约成本用的垃圾主控垃圾 flash,只要有 5MB/s 读写速度就能流畅播放就够了 而且寿命没预期坏了让客户换更好) 一个才 12.5 元……
    Kagari
        45
    Kagari  
       2018-12-31 21:20:23 +08:00
    干脆模拟一下现在的直播网站,视频存在加密区里,然后主控搞成后端,用户使用浏览器打开
    然后猜测一下楼上是像 badusb 那样用 U 盘模拟成了某类型的设备,然后一顿操作后用个小程序和主控通信,控制播放
    jaggerkyne
        46
    jaggerkyne  
    OP
       2018-12-31 21:21:25 +08:00
    @sdijeenx 如果 @realpg 的方案是这个思路的话,我们也有现成的,分别做成 windows,mac,linux 的也有,问题是客户要求的是三者合一的,类似现在三合一的 u 盘一样。用户体验必须是无缝的,插入某个 OS 就能用原生的 player 进行播放,阅读,浏览,要求仅仅是不能被简单的复制。 内容必须和硬件锁死,要拿内容,必须把硬件一起拿走。
    dremy
        47
    dremy  
       2018-12-31 21:22:43 +08:00 via iPhone
    PPT ?另存为了解一下
    sdijeenx
        48
    sdijeenx  
       2018-12-31 21:26:32 +08:00
    @jaggerkyne 这个暂时没想到好的方法,因为在这种情况下可以使用 dd 命令复制整个 U 盘。
    realpg
        49
    realpg  
       2018-12-31 21:26:37 +08:00
    @jaggerkyne #46
    原生 player 播放?呵呵……预算从人民币换成比特币差不多可以考虑一下
    CRH
        50
    CRH  
       2018-12-31 21:30:36 +08:00
    @jaggerkyne “用系统原生的 player 进行播放,阅读,浏览”,你的意思是说,一个 doc 文件,就要用用户电脑上预装的 Microsoft Word 打开吗?
    那么请问打开以后,你打算怎么禁止“另存为”这个按钮呢?
    jaggerkyne
        51
    jaggerkyne  
    OP
       2018-12-31 21:32:07 +08:00
    @Kagari 我们给客户推荐了,但是客户的最终用户都是第三世界,那些缺少网络的地方,正在经历 vcd,dvd 换 u 盘的时代。所以网络的方式不行。

    @dremy 我们有相应的办法可以阻止这个。

    @sdijeenx 谢谢你,还希望和大家多探讨一下,从思路到实际的解决方案,到可以落地的产品之间,还有巨大的鸿沟的。我们的硬件工程师最近也和湾区的朋友们在聊这个话题,如果能够解决,那么最终可能做出一套 opensource 的东西给社区的人一起分享。
    sdijeenx
        52
    sdijeenx  
       2018-12-31 21:32:54 +08:00
    系统原生的 player 进行播放一定有缓存,缓存一定在本地。
    jaggerkyne
        53
    jaggerkyne  
    OP
       2018-12-31 21:38:14 +08:00
    @realpg 有同感,特别是看了 fat,fat32 和 exfat 的底层文件结构文档后,发现很重的无力感,所以应该有更简单的思路。

    @CRH 这个在 MS 提供的解决方案里面有专用的方案,可以直接调用的。

    @sdijeenx 是的,这样没问题,可以做伪装,防的对象不是像我们这样的专业人士。只要防止对方做右键 copy and paste 就 ok 拉。在跨系统里面。我们软件工程师曾戏说,直接用病毒脚本禁止右键就好了。结果这个方案插到 win 里面的时候,就被各种防火墙,杀毒软件,全家桶给封了。
    sdijeenx
        54
    sdijeenx  
       2018-12-31 21:38:40 +08:00
    no thanks, 个人觉得用 USB 虚拟网卡或者做一个专用操作系统放视频比较容易实现=3=
    sobigfish
        55
    sobigfish  
       2018-12-31 21:40:24 +08:00
    U 盾那种输了物理密码才能解密成密钥,然后才能解密出内容,相当于内容用这个密钥加密。
    sdijeenx
        56
    sdijeenx  
       2018-12-31 21:48:52 +08:00
    以前见过一个病毒可以把 U 盘中所有文件夹放进一个隐藏文件夹里,原始的文件夹替换成文件夹图标的 exe 文件并且名字不变。这时双击文件夹打开的其实是病毒,病毒完成感染过程之后再帮你打开原始文件夹。
    winglight2016
        57
    winglight2016  
       2018-12-31 21:49:04 +08:00
    mp4 是个好办法,只需要支持 hdmi 输出就可以了,基本上现在 200 多的 android 工控板就可以做了
    jaggerkyne
        58
    jaggerkyne  
    OP
       2018-12-31 21:54:19 +08:00
    @sdijeenx 个人也觉得是纯软件的,单一平台,或专用平台比较简单,东西都是现成的。但是一旦跨平台,底层的东西很难办,因为很多都拿不到技术文档,有的是拿到了也看不懂。现在国内很多的方案都是采用这套思路的,这是层层加壳的原理,有个公司还拿了相应的专利。

    @sobigfish 这个价格很高,而且无法跨平台。

    @winglight2016 本质上已经不是 u 盘,而是蚊型电脑了。
    sdijeenx
        59
    sdijeenx  
       2018-12-31 21:57:14 +08:00
    你说的是 HDMI 无线同屏器么?
    那里边就是一个跑 Linux 的单片机,改一下应该也可以用。
    不过首先你需要一个电视=3=
    winglight2016
        60
    winglight2016  
       2018-12-31 21:59:17 +08:00
    @jaggerkyne 和宿主通讯的协议,被动读取文件的可加密性很低,毕竟要交互数据,还要兼容多平台多个原生播放器,怎么可能全部加密一遍,可以破解的地方太多——话说第三世界人民的破解水平有这么高吗?
    realpg
        61
    realpg  
       2018-12-31 22:04:16 +08:00
    @jaggerkyne #53
    显然我们并没有用 fat32 exfat 等等 所以说么 其实核心就是一句话
    uptime
        62
    uptime  
       2018-12-31 22:04:25 +08:00
    按你客户要求,要原生 player 就能使用,而不是特定程序,这是不可能的

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

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

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

    @px1396 能具体说一下吗?

    @zander 能否具体说一下?

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

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

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

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

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

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

    因为各平台上的主流播放器(包括系统内置的)基本都支持主流的 DRM 技术
    discrete
        78
    discrete  
       2018-12-31 23:13:01 +08:00   ❤️ 1
    @ThirdFlame 我感觉是朝鲜,印度都不至于。
    aphyllan
        79
    aphyllan  
       2018-12-31 23:18:04 +08:00
    从 U 盘主控的角度来看,“视频播放”与“文件拷贝”的读取模式应该是有显著差异的吧,如果文件足够大。
    以 VLC 为例,默认的本地文件缓冲为 1 秒,读请求呈现相对固定的周期,而且单次的数据量较小。
    而文件拷贝会在远小于视频时长的时间内,以链路能达到的最大速度访问完所有数据。
    假如有硬件开发能力的话,写个模式识别是不难的,在检测到疑似拷贝行为时马上断掉 USB 连接。
    考虑到操作系统的缓存机制会模糊掉这些特征,还需要在文件头部填充或者通过主控动态注入无效数据用来膨胀体积,这又涉及到封装格式和解码器的各种问题,坑还是挺多的。。。
    qile1
        80
    qile1  
       2018-12-31 23:36:43 +08:00 via Android
    把内容打印出来,什么用胶粘死一个 u 盘
    jinhan13789991
        81
    jinhan13789991  
       2018-12-31 23:42:15 +08:00 via Android
    文件内容 gpg 加密,每次看都需要请求服务器进行解密。
    hugee
        82
    hugee  
       2018-12-31 23:43:40 +08:00 via Android
    有啥用?视频音频都可以录,图片直接截图了。
    kcats
        83
    kcats  
       2018-12-31 23:45:02 +08:00
    我觉得只要是纯客户端的操作就没有"防拷贝"的可能性, 因为只要客户端在客户手里, 那数据自然就解码出来了.
    vmebeh
        84
    vmebeh  
       2018-12-31 23:53:27 +08:00 via iPhone
    怎么都少不了客户端接应,u 盘本身太底层,不知道上层是什么操作
    stzz
        85
    stzz  
       2019-01-01 01:43:49 +08:00
    那用 U 盘干啥,弄成防拷贝光盘多方便。。。
    rio
        86
    rio  
       2019-01-01 01:58:48 +08:00   ❤️ 1
    我有一事不明:iOS 什么时候支持插 U 盘了?😂
    qiukong
        87
    qiukong  
       2019-01-01 02:05:45 +08:00 via iPhone
    DRM 文件尚且能被录制,更何况 U 盘?
    chinvo
        88
    chinvo  
       2019-01-01 02:06:58 +08:00
    @rio #85 需要第三方 app,虽然系统是支持 OTG 的但是并没有系统级的文件管理功能,原声的音乐、视频等 app 也没有相关读取能力
    LGA1150
        89
    LGA1150  
       2019-01-01 02:09:27 +08:00 via Android
    防得住 cat 和 dd ?
    cat /dev/sdb > xxx.img
    直接整成镜像了
    还可以 dd 回其他 U 盘上
    sdijeenx
        90
    sdijeenx  
       2019-01-01 02:27:36 +08:00
    方案 4 目测用普通的 U 盘主控+嵌入式 OS 应该能实现。不管多 nb 的 U 盘主控本质上就是个自带 USB 和 nand 或者 emmc 或者 pcie 控制器的单片机,搞不好还是 C51 核心的呢。
    icyalala
        91
    icyalala  
       2019-01-01 02:52:59 +08:00
    iOS 的话,U 盘必须用 MFi 协议,而且必须要安装自己开发的 App,这个都是绕不开的。。
    但是 MFi 的话,首先就不符合 "不装 App" 的需求,其次 20W 找代工厂来做可能连开模都够呛。
    sdijeenx
        92
    sdijeenx  
       2019-01-01 02:55:06 +08:00
    icyalala
        93
    icyalala  
       2019-01-01 02:58:30 +08:00
    @rio iOS 是能插 U 盘的,京东可以搜到一大把,接口是 Lightning 的。
    需要 MFi 认证,走的是 iDP2 协议,内部数据协议只能自己定义,所以需要安装自行开发 App。
    Mohanson
        94
    Mohanson  
       2019-01-01 03:03:56 +08:00 via Android
    这个现成方案很多吧,我十来年前买过一个台积电(不太确定)的优盘,双击优盘盘符是要输入密码的,进去后里面有一个管理工具,打开管理工具需要另一个密码,进入后就有禁止拷贝的选项
    Mohanson
        95
    Mohanson  
       2019-01-01 03:10:28 +08:00 via Android
    原理可能是优盘里面内容全部加密,那个管理工具劫持了 fs read 事件,然后实时解密后把数据塞回给操作系统。我记得想用优盘里面的数据必须打开一个工具,不开工具复制出去的文件都是一坨乱码。不过后来我闲麻烦就格式化了……既然能被操作系统格式化就说明它是个普通优盘
    DreaMQ
        96
    DreaMQ  
       2019-01-01 04:05:05 +08:00 via iPhone   ❤️ 1
    U 盘模拟 USB 网卡,集成一个 http 服务器,在里面展示相关内容。劫持所有 captive 登录网页实现跨平台自动弹出。展示方式可以用各种 http5 工具,记得去掉下载按钮,用 JS 之类的劫持复制和右键。大概可以防绝大部分小白用户复制了吧
    DreaMQ
        97
    DreaMQ  
       2019-01-01 05:54:22 +08:00 via iPhone
    HTML5...
    whileFalse
        98
    whileFalse  
       2019-01-01 07:23:54 +08:00
    “客户处在从 DVD 到 U 盘的时代”,古巴互联网吗?通过 U 盘离线分发音视频和文本?在这种时代去支持 macOS 其实是个笑话。你们客户的客户的 macOS 拥有率应该极低。我甚至觉得 iOS 都无需支持。建议你们和客户商量下,不支持 macOS、iOS 你们可以报一个更低的价格。另外就是,一定要确认需要支持的文件格式。

    方法就那么几个:
    1. 直接启动到定制操作系统,可以统一解决桌面平台的问题,但移动端没戏
    2. 定制播放器。
    3. 使用定制驱动,同样是移动端没戏,并且兼容性是个大问题。

    定制操作系统对于最终用户的体验其实是打了折扣的。对于我个人来说,如果在这么落后的网络环境下,我宁可在自己机器上装来源不明的驱动也不愿意花精力去重启到 U 盘里的 Linux 操作系统。而且教育用户重启到 U 盘其实是一个不太靠谱的事情。

    定制播放器的话,比较恶心的是多种文件格式的支持。
    首先考虑使用跨平台语言。楼上有人说过的 H5,H5 挺好的,库多开发快,不同系统套个不同的壳子就行了。唯一需要确认的是移动端的算力有限,古巴互联网你不能指望用户的手机有多快。这个是需要考虑的一个点。建议做做调研,看在移动端上用 H5 做解密费劲不。
    Flutter 也是可考虑的。Flutter 也是跨移动端和桌面的,比 H5 性能好,缺点是目前会的人不多。

    定制驱动的优势是一个驱动解决所有问题,不需要 care 文件格式了。可以和 sandboxie 联系下,看人家能不能吧驱动卖给你。你需要的就是一个沙盒,做一个自己的文件管理器,双击文件后使用沙盒启动宿主机上的各类应用来查看文件。因为各种播放器应用跑在沙盒里,所以退出沙盒后,对系统的更改都能撤销掉,沙盒外的应用也不能访问沙盒里面的文件。
    还有影子卫士啊,冰点还原精灵等整个机器还原的,也可以看看能不能从他们那里买驱动。自己写就算了。
    我没听过 macOS 上有类似的玩意。不过如我说的,支持 Mac 可能是个伪需求。

    综上所述,最推荐的是定制播放器。
    swulling
        99
    swulling  
       2019-01-01 07:28:33 +08:00 via iPhone
    这个价格做不到,不用想了
    ech0x
        100
    ech0x  
       2019-01-01 08:23:27 +08:00 via iPhone
    @realpg 播放器和主控绑定?
    1  2  
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2610 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 32ms · UTC 06:21 · PVG 14:21 · LAX 22:21 · JFK 01:21
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.