Security HB RFID攻击。我错过了什么?
关于RFID协议HB(不是HB+),我很难理解为什么我的方法不起作用 所以在HB中,我们有标签和阅读器,它们都共享一个秘密X 我们正试图找出X 协议如下: 假设k=3位。 从我读到的报纸上看,攻击似乎是这样的。 设置a=001并发送1000次 设置a=010并发送1000次 设置a=100并发送1000次 以平均值为例,它在大多数情况下都是x 这对我来说很有意义,而且效果很好 我的问题是,为什么我不能简单地将a设置为001。由于a=001,当它与x进行AND运算时,它总是会产生x,然后与v进行XOR运算。结果Z将始终为x或x XOR加1。然后我们只取大多数时间发生的输出,即x,因为v=1的概率小于0.5 我觉得我只需要运行这个,比如说10次,而不是每次运行多次 我是否遗漏了这方面的一个重要方面Security HB RFID攻击。我错过了什么?,security,cryptography,rfid,Security,Cryptography,Rfid,关于RFID协议HB(不是HB+),我很难理解为什么我的方法不起作用 所以在HB中,我们有标签和阅读器,它们都共享一个秘密X 我们正试图找出X 协议如下: 假设k=3位。 从我读到的报纸上看,攻击似乎是这样的。 设置a=001并发送1000次 设置a=010并发送1000次 设置a=100并发送1000次 以平均值为例,它在大多数情况下都是x 这对我来说很有意义,而且效果很好 我的问题是,为什么我不能简单地将a设置为001。由于a=001,当它与x进行AND运算时,它总是会产生x,然后与v进行
谢谢为什么我不能简单地将a设置为“001”? x和a的长度为k,所以 x={xk-1,…,x0}
a={ak-1,…,a0} 如果,k=3,这将是 x={x2,x1,x0}
a={a2,a1,a0}
即x和a将是“000”、“001”、“010”、“011”、“100”、“101”、“110”或“111”中的一个 那么标量积x•a导致 x•a=(x2和a2)XOR(x1和a1)XOR(x0和a0) 因此,使用a='001'会导致 z=x•'001'=(x2和'0')异或(x1和'0')异或(x0和'1')=x0 因此,在这种情况下,您不会得到x的剩余数字(即x2和x1)。类似地,如果使用具有多个位集的a,例如a='111',则会得到 z=x•'111'=(x2和'1')异或(x1和'1')异或(x0和'1')=x2异或x1异或x0 因此可以删除x的数字。因此,您需要使用a='001',a='010',和a='100'执行协议,以便获得x的每个数字 我觉得我只需要运行这个,比如说10次,而不是每隔几次运行一次。 好的,对于每一轮,你都会得到一个概率为v的正确结果。因此,预期值为 E[X]=v,如果正确的数字是“1”,并且
E[X]=1-v,如果正确的数字是“0” 因此,对于“1”,所有轮(即您采集的每个样本)的平均值将近似v,对于无限轮数的“0”,平均值将近似1-v。但这并不一定意味着你在1轮或10轮之后就已经达到了这个期望值。然而,每一轮你都会增加获得期望值的信心