V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
matepi
V2EX  ›  信息安全

有没有人研究过在抽样数据文本中进行数据隐写?

  •  
  •   matepi · 2021-06-25 09:49:19 +08:00 · 1291 次点击
    这是一个创建于 1007 天前的主题,其中的信息可能已经有所发展或是发生改变。

    简化设定

    比如给出一个 100x1024 字节长度的字符串

    已知其中每 100 个字节中的前 96 个字节为有效数据负荷,最后 4 个字节为预留可以随意使用无数据负荷的字节。

    我们需要在借助此无负荷部分,此 100k 字节长的字符串中,混入一个“20 字节长的隐匿数据”

    并同时

    1 、在数据以 100 字节为边界,拆分为 1024 组百长度的字符串;且取出 1024 组中的任意多组后,能尽最大可能量地恢复出“20 字节长的隐匿数据”

    2 、尽量减小被隐匿加入的数据,在组间的可简单文本观测重复性,减少隐匿数据的被定位发现的可能

    3 、研究当预留字节数由 4 改为 2 时的算法影响;以及取出组数逐步减小时,对可恢复性的影响

    这是数据隐写?但可能又进一步地涉及到数据抽样、有损的情况。在文本中的隐写,与常见的图像音频中的隐写术也有很大不同。

    应该去看哪些方向的文章?

    4 条回复    2021-06-25 11:33:10 +08:00
    liuxu
        1
    liuxu  
       2021-06-25 10:52:33 +08:00
    。。。。

    我来给楼主重新理一下需求。。

    给定 100 字节空间,每 4 个字节为一组,将 20 字节分组随机存储到空间后,如何保证占用最小空间并顺序取出不可读,且随机取出部分数据后,根据存储算法能最大恢复这 20 字节源数据

    改成 2 字节为一组存储,对比和 4 个字节为一组有什么区别

    给出以上算法及解释


    建议楼主去看看加密解密中的软件加壳混淆和脱壳技术
    misdake
        2
    misdake  
       2021-06-25 11:08:09 +08:00
    对于“取出 1024 组中的任意多组”这件事,是否知道取出的是第几组这个信息?
    RecursiveG
        3
    RecursiveG  
       2021-06-25 11:11:00 +08:00
    你有两个问题,“隐藏数据使得不可分辨”是隐写。“抽样后恢复数据”是错误纠正码。
    有一个 20B 的 消息,用某种 Error Correction Code 编码编码到 4K,再用某种隐写技术混入你的字符串里。
    matepi
        4
    matepi  
    OP
       2021-06-25 11:33:10 +08:00
    @misdake 不知道
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   5361 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 35ms · UTC 09:14 · PVG 17:14 · LAX 02:14 · JFK 05:14
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.