【问题标题】:Is it possible to encode a series of bytes this way?是否可以以这种方式编码一系列字节?
【发布时间】:2020-11-28 20:23:15
【问题描述】:

给定:

  1. 您有大量字节 - 称之为 O。
  2. 你是一对字节(2个字节)——叫它E。

有可能吗? 你能以某种方式用 E 对对 O 系列进行编码,以产生一个与 O 大小(长度)相同的新系列 S,使得仅给定 S 和 S,你就可以导出原始系列 O 和对 E?

【问题讨论】:

  • 所以你想将 O.size + 2 个字节写入 O.size 对象。可能(并非总是)通过压缩而不是编码。
  • Salt 通常添加(例如前置)到生成的加密/散列输出中,并且它本身不是秘密:S = E + 散列(E + O),然后可以从 S 中提取 E(以及数据的散列部分)。加密相同,除了 secret (not E) 需要也可以使用。
  • 如果需要S来恢复O的原始值,而不管E,那么就不涉及秘密了。还不如使用Rot13。
  • 我是说用字节 E 对序列 O 进行编码后,你会得到一个与 O 大小相同的新序列 S。并且给定 S 本身,你可以生成原始序列 O 和 E .
  • 您询问是否有可能 n 个字节包含 n+2 个字节中的所有信息,通常答案是否定的。

标签: encoding cryptography encode salt


【解决方案1】:

没有。

我假设我们在这里讨论的是完全随机的数据。

可以存储O字节长度的信息量。 S 中的字节数相同。每个字节组合都可能是一个有效的数据集。

不可能用相同的字节数存储更多信息。

至少对于完全随机的数据(如哈希或加密数据)

一旦您对数据有所了解,情况就不同了。非随机数据意味着数据可能占用比必要更多的空间。因此,可能会有更多信息的空间。

【讨论】:

    猜你喜欢
    • 2018-03-24
    • 2016-03-09
    • 1970-01-01
    • 2022-06-23
    • 2011-06-28
    • 2019-10-20
    • 1970-01-01
    • 2016-02-02
    • 2014-01-04
    相关资源
    最近更新 更多