Exemple #1
0
        private void button1_Click(object sender, EventArgs e)
        {
            Persistence persistence;

            if (File.Exists(filePersistence))
            {
                persistence = Form1.ReadFromJsonFile <Persistence>(filePersistence);
            }
            else
            {
                persistence = new Persistence();
            }

            String id = MifareTool.ByteArrayToString(mifare.GetUid(), false);
            string key;

            if (!persistence.idKey.ContainsKey(id))
            {
                key = Prompt.ShowDialog("Enter Block 2 Key", "Key Required!");
            }
            else
            {
                key = persistence.idKey[id];
            }

            if (mifare.AuthenticateBlock(key, "08"))
            {
                //save the correct key
                if (!persistence.idKey.ContainsKey(id))
                {
                    persistence.idKey.Add(id, key);
                    Form1.WriteToJsonFile <Persistence>(filePersistence, persistence);
                }
                //read sector 8
                int readValue08 = MifareTool.ConvertBytesToInteger(mifare.ReadValueBlock("08"));
                int readValue09 = MifareTool.ConvertBytesToInteger(mifare.ReadValueBlock("09"));
                if (readValue08 == readValue09)
                {
                    label1.Text      = "Sector 08 == Sector 09";
                    label1.ForeColor = Color.Green;
                }
                else
                {
                    label1.Text      = "Sector 08 <> Sector 09";
                    label1.ForeColor = Color.Red;
                }
                double value = (double)readValue08 / 100;
                textBoxValue.Text = String.Format("{0:0.00}", value);
                button2.Enabled   = true;
            }
            else
            {
                MessageBox.Show(this, "Authentication to sector 2 failed!", "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
            }
        }
Exemple #2
0
 public Form1()
 {
     InitializeComponent();
     try
     {
         mifare = new MifareTool();
         String[] readers = mifare.GetReaders();
         //always connect to first
         mifare.Connect(0);
         button1.Enabled = true;
     }
     catch (Exception ex)
     {
         MessageBox.Show(this, ex.Message, "Error", MessageBoxButtons.OK, MessageBoxIcon.Error);
     }
 }