不久前,我问到如何加密小消息,例如四个十进制数字(银行PIN)。我有我的答案,但也有一个警告,就像它是没有意义的,因为它很容易猜测:即使没有任何信息和厄运意味着只有10000次试验,这不是密码。
然而,在自动取款机上,你只有三次试验,而一个不泄露任何信息的PIN加密方案对我来说很有意义。理论上怎么说?
我在寻找能区分这个加密的坏系统和好系统的东西。
发布于 2013-10-17 21:25:56
目前,密码加密使用两种技术来防止攻击。
首先,在执行3 3DES加密之前,使用XOR将PIN与帐号组合在一起。这可以确保被加密的明文在拥有唯一帐户但具有相同PIN的两个人之间有所不同。
接下来,使用名为DUKPT的协议为3 3DES操作每个事务创建一个派生的唯一密钥。每次加密PIN时,都会使用PIN记事本中的计数器生成新密钥。该密钥是从“超级秘密”密钥中派生出来的,该密钥使用一种算法来防止计算仅给出当前状态知识的先前密钥。(将来的键总是可以派生出来的。)PIN衬垫一次生成21个批次的密钥,然后回收,销毁先前的状态,包括销毁以前的密钥。在许多情况下,实现还必须被认证以销毁其当前的密钥状态(并使自己不起作用):如果容器被打开,如果屏幕被移除,如果mag条带读取头被篡改,以及一旦该算法生成了100万个密钥。
https://crypto.stackexchange.com/questions/11113
复制相似问题