使用密钥B的C#Mifare扇区验证代码

时间:2017-08-02 07:59:33

标签: c# authentication byte mifare

我对如何识别某个扇区,让我们说12,如何工作以及如何对其进行身份验证有一个小问题。

到目前为止的问题: 缺乏资源迫使我采取以下程序。

我想在C#的sector12中编写一个验证码,带有一个键B.我用Mifare经典工具编写的密钥,我把它作为000000D2A3,我用一个带有mifare卡经典工具的Android手机,在一个mifare经典1k,但我在通过串口发送时遇到问题,字节中的认证字符串......我不知道如何发送它,我所知道的是我必须发送i' m猜7组字节?!?!我写的代码是.net 2.0,因为我希望它可以被所有类型的窗口访问,并且大多数类型的读者都是旧的和新的

有人可以告诉我它应该是什么样的吗?

我如何发送"阅读"命令该块的0和/或1?

由于

我到目前为止的代码是:

try
    {



            byte[] array = new byte[]
            { ?? 0x61, 0xD2,0xA3 };

           SerialPort1.Write(array, 0, 8);
            Thread.Sleep(20);
    }
        catch (Exception)
        {
        }

1 个答案:

答案 0 :(得分:0)

我最终弄明白了,它发送的字节实际上是为该扇区调用了eeeprom中存储的密钥。如果在该扇区中存储其他密钥,则命令将相同,并且验证字节将相同。这是缺失的一块。

有一个不同的字节代码,它被发送到设备并存储该扇区的密钥,使用密钥b和密钥A的0x61和0x60代码,用于扇区。该设备可以为不同的扇区保存不同的密钥