【问题标题】:Probability of + character occurrence in base64 encoded string+ 字符在 base64 编码字符串中出现的概率
【发布时间】:2017-08-25 16:24:21
【问题描述】:

我有超过 600 万条包含 base64 编码字符串值的数据库记录。
这些是随机 13 位数字的 SHA-256 输出。
当我用 SQL LIKE 查询计算时,它超过了 300 万。

我想知道是否正常。
于是我尝试计算+字符出现的概率。

你能确认这个计算吗?

(64^44 - 63^44) / 64^44

(Base64编码由64个字符组成)

Wolfram Alpha says, its 0.5

【问题讨论】:

    标签: math base64 combinations probability


    【解决方案1】:
    • 表示 SHA-256 校验和所需的 base-64 位数 = 256 / log2(64) = 42.6666... = 43
    • 一个字符不是+的概率=63/64
    • 所有个字符的概率不是+ = (63/64)^43
    • 因此至少一个概率为+ = 1 - (63/64)^43 = (64^43 - 63^43) / (64^43)

    所以你的答案几乎是正确的——只是假设了错误的位数。数值在合理误差范围内仍然正确。

    【讨论】:

      猜你喜欢
      • 2014-09-29
      • 2018-12-28
      • 1970-01-01
      • 1970-01-01
      • 2018-01-27
      • 2011-04-22
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多