我正在尝试编写一个程序来猜测我的一张 MIFARE Classic 1K 卡的块密钥。
运行这样的东西是否可行?
int i = 0x0;
while (true)
{
i += 0x1;
Console.WriteLine(string.Format("0x{0:x8}", i));
}
我知道进行简单计数是不切实际的,但这会成功吗?
我正在尝试编写一个程序来猜测我的一张 MIFARE Classic 1K 卡的块密钥。
运行这样的东西是否可行?
int i = 0x0;
while (true)
{
i += 0x1;
Console.WriteLine(string.Format("0x{0:x8}", i));
}
我知道进行简单计数是不切实际的,但这会成功吗?
针对 MIFARE Classic 的攻击方法比简单的暴力破解更有效。有 2^48 个可能的 MIFARE Classic 密钥,因此暴力破解将永远持续下去。例如,一种更快的攻击是离线嵌套攻击(参见这里的实现)。但是,这种攻击只有在您至少知道卡片的一个密钥时才有效。另一种攻击是由MIFARE Classic Universal Toolkit实现的。这种攻击不需要知道任何卡的密钥。