【问题标题】:What is DMAC for Message Authentication Code?什么是消息验证码的 DMAC?
【发布时间】:2020-07-05 10:55:33
【问题描述】:

我使用带有 Crypto++ 库的 MAC(消息验证码)来保护 MANET。 该库提供了很多 MACs 算法。 我在 MAC 列表中找到了 DMAC,但我不知道它是什么意思? Message Authentication Code

最好的 ragards 朝觐

【问题讨论】:

    标签: cryptography crypto++


    【解决方案1】:

    类描述中隐藏的一点是链接:

    CBC MAC for Real-Time Data Sources (08.15.1997) 由 Erez Petrank 和 Charles Rackoff 撰写

    然后指向描述内容的论文:

    我们首先提出了一种 CBC MAC 的变体,称为 double MAC (DMAC),它处理可变未知长度的消息。在消息上计算 DMAC 实际上与在消息上计算标准 CBC MAC 一样简单和高效。我们提供了一个严格的证明,证明其安全性隐含在底层块密码的安全性中。接下来,我们认为基本 CBC MAC 在应用于前缀空闲消息空间时是安全的。通过验证标记消息结束的(通常是隐藏的)最后一个字符,可以使消息空间无前缀。

    双 MAC 包括在结果上执行 CBC-MAC,然后是另一个 CBC-MAC,这应该可以阻止对 CBC-MAC 的长度扩展攻击。 我以前没听说过;我想现在每个人都使用 CMAC。 CMAC 效率更高,因为它只需要额外运行一次分组密码,并且需要预先运行(在密码初始化期间)。

    【讨论】:

    • 在 StackExchange 上感谢某人的最佳方法是接受答案并(一旦您超过 15 名代表)给予支持。谢谢cmets之类的很客气,但还是气馁;很高兴你喜欢它:)哦,现在你可以“鼓掌”(都在答案的右边)。
    • DMAC=EMAC? link
    • 是的,看起来像。也有来自 CSPAN 的实现声称同样的事情。如前所述,这并没有太多使用,所以我总是尝试验证实现是否匹配。
    • @Maarten Bodewes 我在哪里可以找到关于它的测试向量?
    • 请在crypto.SE上单独询问,我没有直接可用的。如果您发现有用的答案,请投票而不是提出其他问题。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2020-04-27
    • 1970-01-01
    • 1970-01-01
    • 2012-08-24
    • 1970-01-01
    • 2010-10-22
    • 2018-01-28
    相关资源
    最近更新 更多