首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >小消息加密

小消息加密
EN

Cryptography用户
提问于 2013-10-17 12:22:07
回答 1查看 1.3K关注 0票数 6

不久前,我问到如何加密小消息,例如四个十进制数字(银行PIN)。我有我的答案,但也有一个警告,就像它是没有意义的,因为它很容易猜测:即使没有任何信息和厄运意味着只有10000次试验,这不是密码。

然而,在自动取款机上,你只有三次试验,而一个不泄露任何信息的PIN加密方案对我来说很有意义。理论上怎么说?

Clarification:

我在寻找能区分这个加密的坏系统和好系统的东西。

  • 一个糟糕的系统可能是“向PIN模块10^4添加一个常量”。攻击者只需使用一个明文-密文对就可以解密任何其他密文。
  • 一个完美的系统将是“使用真正的RNG和适当的算法生成带有10^4元素的置换表”。现在,攻击者拥有任意数量的明文--密文对,给出了一个看不见的加密文本--除了相应的明文不在他的集合之外,什么都不知道。
EN

回答 1

Cryptography用户

发布于 2013-10-17 21:25:56

目前,密码加密使用两种技术来防止攻击。

首先,在执行3 3DES加密之前,使用XOR将PIN与帐号组合在一起。这可以确保被加密的明文在拥有唯一帐户但具有相同PIN的两个人之间有所不同。

接下来,使用名为DUKPT的协议为3 3DES操作每个事务创建一个派生的唯一密钥。每次加密PIN时,都会使用PIN记事本中的计数器生成新密钥。该密钥是从“超级秘密”密钥中派生出来的,该密钥使用一种算法来防止计算仅给出当前状态知识的先前密钥。(将来的键总是可以派生出来的。)PIN衬垫一次生成21个批次的密钥,然后回收,销毁先前的状态,包括销毁以前的密钥。在许多情况下,实现还必须被认证以销毁其当前的密钥状态(并使自己不起作用):如果容器被打开,如果屏幕被移除,如果mag条带读取头被篡改,以及一旦该算法生成了100万个密钥。

票数 3
EN
页面原文内容由Cryptography提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://crypto.stackexchange.com/questions/11113

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档