相关疑难解决方法(0)

撰写包含160位可恢复信息的合成英语短语

我有160位随机数据​​.

只是为了好玩,我想生成伪英语短语来"存储"这些信息.我希望能够从短语中恢复这些信息.

注意:这不是一个安全问题,我不在乎别人是否能够恢复信息甚至检测到它是否存在.

更好的短语的标准,从最重要到最不重要:

  • 独特
  • 自然的

目前的方法,建议在这里:

取三个1024个名词,动词和形容词列表(选择最受欢迎的名词).通过以下模式生成短语,为每个单词读取20位:

Noun verb adjective verb,
Noun verb adjective verb,
Noun verb adjective verb,
Noun verb adjective verb.

现在,这似乎是一个很好的方法,但这句话有点太长,有点太沉闷.

在这里找到了一个单词集(部分语音数据库).

经过一些特别的过滤后,我计算出这个语料库大约含有

  • 50690个可用的形容词
  • 123585名词
  • 15301动词
  • 13010副词(不包含在模式中,但在答案中提到)

这让我可以使用

  • 每个形容词16位(实际上是16.9,但我无法计算如何使用小数位)
  • 每个名词15位
  • 每个动词13位
  • 每个副词13位

对于名词 - 动词 - 形容词 - 动词模式,这在短语中每个"句子"给出57位.这意味着,如果我将使用我可以从该语料库中获得的所有单词,我可以生成三个句子而不是四个(160 /57≈2.8).

Noun verb adjective verb,
Noun verb adjective verb,
Noun verb adjective verb.

还有点太长而且沉闷.

任何提示我如何改进它?

我看到我可以尝试:

  • 尝试在编码之前以某种方式压缩我的数据.但由于数据是完全随机的,只有一些短语会更短(而且,我猜,不是很多).

  • 改进短语模式,这样看起来会更好.

  • 使用几种模式,使用短语中的第一个单词以某种方式指示将来解码使用的模式.(例如,使用最后一个字母甚至单词的长度.)根据数据的第一个字节选择模式.

......我对英语不是很好,可以提出更好的短语模式.有什么建议?

  • 在模式中使用更多语言学.不同的时态等

......我想,我需要比现在更好的词语语料库.任何提示我可以在哪里得到合适的?

nlp steganography

10
推荐指数
1
解决办法
441
查看次数

以可逆方式从大整数生成伪自然短语

我有一个大的"唯一"整数(实际上是一个SHA1哈希).

注意:虽然我在这里谈论SHA1哈希,但这不是加密/安全问题!我打算打破SHA1.想象一个随机的160位整数而不是SHA1,如果这将有所帮助.

我想(除了有趣之外)找到一种算法将SHA1哈希映射到计算机生成的(伪)英语短语.映射应该是双向的(即,知道算法,必须能够从该短语计算原始SHA1散列.)

这句话没有意义.我甚至会满足于整段废话.(虽然一个段落的质量 - 英语 - 应该比单纯的短语更好.)

更好的算法会产生更短,更自然,更独特的短语.

一个变化:如果我只能使用一部分哈希值,那就没关系了.比如,前六个十六进制数字是好的.

生成的短语的可能用法:Git提交ID的人类可读版本,用作给定程序版本的座右铭,该版本是根据该提交构建的.(正如我所说,这是"为了好玩".我并不认为这是非常实用的 - 或者比SHA1本身更具可读性.)

可能的方法:在过去,我试图建立一个概率表(单词),并根据我从SHA读取的位,生成短语作为马尔可夫链,播种生成器(从概率树中挑选分支).这不是很成功,由此产生的短语太长而且难看.我不确定这是一个错误,还是算法中的一般缺陷,因为我不得不尽早放弃它.

现在我正在考虑再次尝试解决问题.关于如何处理这个问题的任何建议?你认为马尔可夫连锁方法能在这里发挥作用吗?别的什么?

markov-chains sha bignum

5
推荐指数
1
解决办法
416
查看次数

标签 统计

bignum ×1

markov-chains ×1

nlp ×1

sha ×1

steganography ×1