【问题标题】:Encryption Algorithm and bitwise parity加密算法和位奇偶校验
【发布时间】:2016-01-31 15:25:15
【问题描述】:

我目前正在学习加密算法并解决问题。我在这里有点迷失了这个。我想知道是否有人可以给我一些指导。到目前为止,我知道初始奇偶校验定义是偶校验,但我不确定如何继续下一步。感谢您的任何指导。

"一种简单的哈希方法将给定的数据分成整数个字节,如果需要,用 1 填充到低位,使数据成为字节的整数倍,然后计算字节中位的位奇偶校验想出一个字节长的哈希码。

此方案为以下十六进制数据计算的哈希码是多少: 0x000100010

列出另一个具有相同哈希码的相同长度的数据项。这是一个好的散列方案吗?解释你的答案。

奇偶校验定义:10101011 1,奇数个1给出奇偶校验值为1。"

【问题讨论】:

    标签: algorithm encryption hash bitwise-operators


    【解决方案1】:

    Parity 非常简单:它只是意味着计算值中 1 的位数,看看它是偶数还是奇数。在这种情况下,您似乎使用的是偶数奇偶校验,这意味着奇数个 1 会产生奇偶校验值 1(因此包括奇偶校验在内的 1 位的总数变为偶数),偶数个1s 产生的奇偶校验值为 0。偶校验等同于 XOR将所有位放在一起。

    您的“按位奇偶校验”方案听起来您应该取值 0x000100010(4.5 个字节)并将其扩展为 0x000100010F(5 个字节,低 4 位全为 1),然后将其拆分为 8-位值 0x00、0x01、0x00、0x01 和 0x0F,然后将所有这些位按位异或。

    【讨论】:

    • 我同意,我对问题陈述的解释完全一样。
    • 请注意,我已经对我的回答进行了更正:我说您使用的是奇校验,因为我记错了奇偶校验方案是如何应用的。正如您在问题中提到的那样,您实际上使用的是偶数奇偶校验。 (但这只是一个术语错误;算法没有改变。)
    • 感谢这帮了大忙!
    猜你喜欢
    • 2015-06-29
    • 2013-06-25
    • 1970-01-01
    • 1970-01-01
    • 2015-04-04
    • 2017-03-01
    • 1970-01-01
    • 2017-06-22
    相关资源
    最近更新 更多