From 2154bee4712f2b8e735d12266c8229be5060cb12 Mon Sep 17 00:00:00 2001 From: developer33 Date: Tue, 18 Jun 2019 16:12:06 +0200 Subject: [PATCH] binaries updated, debug files removed --- .vs/uFR_AES_tester_console/v15/.suo | Bin 47616 -> 68608 bytes .../v15/Server/sqlite3/storage.ide-shm | Bin 32768 -> 32768 bytes .../v15/Server/sqlite3/storage.ide-wal | Bin 2200112 -> 3184792 bytes uFR_AES_tester_console/Functions.cs | 3059 +++++++++-------- .../bin/Debug/uFR_AES_tester_console.exe | Bin 52224 -> 0 bytes .../Debug/uFR_AES_tester_console.exe.config | 6 - .../bin/Debug/uFR_AES_tester_console.pdb | Bin 60928 -> 0 bytes .../bin/Release/uFR_AES_tester_console.exe | Bin 49152 -> 50176 bytes .../bin/Release/uFR_AES_tester_console.pdb | Bin 52736 -> 52736 bytes .../DesignTimeResolveAssemblyReferences.cache | Bin 834 -> 0 bytes ...gnTimeResolveAssemblyReferencesInput.cache | Bin 7012 -> 0 bytes ...le_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs | 0 ...le_5937a670-0e60-4077-877b-f7221da3dda1.cs | 0 ...le_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs | 0 ...ter_console.csproj.CoreCompileInputs.cache | 1 - ...tester_console.csproj.FileListAbsolute.txt | 14 - ...ster_console.csprojAssemblyReference.cache | Bin 14543 -> 0 bytes .../obj/Debug/uFR_AES_tester_console.exe | Bin 52224 -> 0 bytes .../obj/Debug/uFR_AES_tester_console.pdb | Bin 60928 -> 0 bytes ...ter_console.csproj.CoreCompileInputs.cache | 2 +- ...tester_console.csproj.FileListAbsolute.txt | 21 +- .../obj/Release/uFR_AES_tester_console.exe | Bin 49152 -> 50176 bytes .../obj/Release/uFR_AES_tester_console.pdb | Bin 52736 -> 52736 bytes .../DesignTimeResolveAssemblyReferences.cache | Bin 685 -> 0 bytes ...gnTimeResolveAssemblyReferencesInput.cache | Bin 6906 -> 0 bytes ...le_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs | 0 ...le_5937a670-0e60-4077-877b-f7221da3dda1.cs | 0 ...le_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs | 0 ...ter_console.csproj.CoreCompileInputs.cache | 1 - ...tester_console.csproj.FileListAbsolute.txt | 7 - ...ster_console.csprojAssemblyReference.cache | Bin 9885 -> 0 bytes .../obj/x64/Debug/uFR_AES_tester_console.exe | Bin 50688 -> 0 bytes .../obj/x64/Debug/uFR_AES_tester_console.pdb | Bin 60928 -> 0 bytes ...le_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs | 0 ...le_5937a670-0e60-4077-877b-f7221da3dda1.cs | 0 ...le_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs | 0 ...ter_console.csproj.CoreCompileInputs.cache | 1 - ...ster_console.csprojAssemblyReference.cache | Bin 14543 -> 0 bytes ...gnTimeResolveAssemblyReferencesInput.cache | Bin 6904 -> 0 bytes ...le_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs | 0 ...le_5937a670-0e60-4077-877b-f7221da3dda1.cs | 0 ...le_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs | 0 ...ter_console.csproj.CoreCompileInputs.cache | 1 - ...tester_console.csproj.FileListAbsolute.txt | 7 - ...ster_console.csprojAssemblyReference.cache | Bin 1913 -> 0 bytes .../obj/x86/Debug/uFR_AES_tester_console.exe | Bin 51200 -> 0 bytes .../obj/x86/Debug/uFR_AES_tester_console.pdb | Bin 60928 -> 0 bytes 47 files changed, 1545 insertions(+), 1575 deletions(-) delete mode 100644 uFR_AES_tester_console/bin/Debug/uFR_AES_tester_console.exe delete mode 100644 uFR_AES_tester_console/bin/Debug/uFR_AES_tester_console.exe.config delete mode 100644 uFR_AES_tester_console/bin/Debug/uFR_AES_tester_console.pdb delete mode 100644 uFR_AES_tester_console/obj/Debug/DesignTimeResolveAssemblyReferences.cache delete mode 100644 uFR_AES_tester_console/obj/Debug/DesignTimeResolveAssemblyReferencesInput.cache delete mode 100644 uFR_AES_tester_console/obj/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs delete mode 100644 uFR_AES_tester_console/obj/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs delete mode 100644 uFR_AES_tester_console/obj/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs delete mode 100644 uFR_AES_tester_console/obj/Debug/uFR_AES_tester_console.csproj.CoreCompileInputs.cache delete mode 100644 uFR_AES_tester_console/obj/Debug/uFR_AES_tester_console.csproj.FileListAbsolute.txt delete mode 100644 uFR_AES_tester_console/obj/Debug/uFR_AES_tester_console.csprojAssemblyReference.cache delete mode 100644 uFR_AES_tester_console/obj/Debug/uFR_AES_tester_console.exe delete mode 100644 uFR_AES_tester_console/obj/Debug/uFR_AES_tester_console.pdb delete mode 100644 uFR_AES_tester_console/obj/x64/Debug/DesignTimeResolveAssemblyReferences.cache delete mode 100644 uFR_AES_tester_console/obj/x64/Debug/DesignTimeResolveAssemblyReferencesInput.cache delete mode 100644 uFR_AES_tester_console/obj/x64/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs delete mode 100644 uFR_AES_tester_console/obj/x64/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs delete mode 100644 uFR_AES_tester_console/obj/x64/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs delete mode 100644 uFR_AES_tester_console/obj/x64/Debug/uFR_AES_tester_console.csproj.CoreCompileInputs.cache delete mode 100644 uFR_AES_tester_console/obj/x64/Debug/uFR_AES_tester_console.csproj.FileListAbsolute.txt delete mode 100644 uFR_AES_tester_console/obj/x64/Debug/uFR_AES_tester_console.csprojAssemblyReference.cache delete mode 100644 uFR_AES_tester_console/obj/x64/Debug/uFR_AES_tester_console.exe delete mode 100644 uFR_AES_tester_console/obj/x64/Debug/uFR_AES_tester_console.pdb delete mode 100644 uFR_AES_tester_console/obj/x64/Release/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs delete mode 100644 uFR_AES_tester_console/obj/x64/Release/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs delete mode 100644 uFR_AES_tester_console/obj/x64/Release/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs delete mode 100644 uFR_AES_tester_console/obj/x64/Release/uFR_AES_tester_console.csproj.CoreCompileInputs.cache delete mode 100644 uFR_AES_tester_console/obj/x64/Release/uFR_AES_tester_console.csprojAssemblyReference.cache delete mode 100644 uFR_AES_tester_console/obj/x86/Debug/DesignTimeResolveAssemblyReferencesInput.cache delete mode 100644 uFR_AES_tester_console/obj/x86/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs delete mode 100644 uFR_AES_tester_console/obj/x86/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs delete mode 100644 uFR_AES_tester_console/obj/x86/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs delete mode 100644 uFR_AES_tester_console/obj/x86/Debug/uFR_AES_tester_console.csproj.CoreCompileInputs.cache delete mode 100644 uFR_AES_tester_console/obj/x86/Debug/uFR_AES_tester_console.csproj.FileListAbsolute.txt delete mode 100644 uFR_AES_tester_console/obj/x86/Debug/uFR_AES_tester_console.csprojAssemblyReference.cache delete mode 100644 uFR_AES_tester_console/obj/x86/Debug/uFR_AES_tester_console.exe delete mode 100644 uFR_AES_tester_console/obj/x86/Debug/uFR_AES_tester_console.pdb diff --git a/.vs/uFR_AES_tester_console/v15/.suo b/.vs/uFR_AES_tester_console/v15/.suo index 6b572e7a5bf923a46179df04f3ef3565200c776f..573e441fe93e5dc92c167ed1b6939f96d08820b1 100644 GIT binary patch delta 5577 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 delta 487 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 diff --git a/uFR_AES_tester_console/Functions.cs b/uFR_AES_tester_console/Functions.cs index 88e652f..9357d38 100644 --- a/uFR_AES_tester_console/Functions.cs +++ b/uFR_AES_tester_console/Functions.cs @@ -1,1537 +1,1538 @@ -using System; -using System.Collections.Generic; -using System.IO; -using System.Linq; -using System.Text; -using System.Threading.Tasks; -using uFR; -using System.Windows.Forms; - -namespace uFR_AES_tester_console -{ - using DL_STATUS = System.UInt32; - - static class Functions - { - static DL_STATUS status; - static byte[] aes_key_ext = new byte[16]; - static UInt32 aid = 0; - static byte aes_key_nr = 0; - static byte aid_key_nr_auth = 0; - static byte file_id = 0; - static string[] config; - static UInt16 card_status; - static UInt16 exec_time; - static int auth = 0; - static int master_auth = 0; - - public static byte[] StringToByteArray(String hex) - { - int NumberChars = hex.Length; - byte[] bytes = new byte[NumberChars / 2]; - for (int i = 0; i < NumberChars; i += 2) - bytes[i / 2] = Convert.ToByte(hex.Substring(i, 2), 16); - return bytes; - } - - public static void reader_open() - { - char mode; - - Console.Write("Select reader opening mode:\n"); - Console.Write(" (1) - Simple Reader Open\n"); +using System; +using System.Collections.Generic; +using System.IO; +using System.Linq; +using System.Text; +using System.Threading.Tasks; +using uFR; +using System.Windows.Forms; + +namespace uFR_AES_tester_console +{ + using DL_STATUS = System.UInt32; + + static class Functions + { + static DL_STATUS status; + static byte[] aes_key_ext = new byte[16]; + static UInt32 aid = 0; + static byte aes_key_nr = 0; + static byte aid_key_nr_auth = 0; + static byte file_id = 0; + static string[] config; + static UInt16 card_status; + static UInt16 exec_time; + static int auth = 0; + static int master_auth = 0; + + public static byte[] StringToByteArray(String hex) + { + int NumberChars = hex.Length; + byte[] bytes = new byte[NumberChars / 2]; + for (int i = 0; i < NumberChars; i += 2) + bytes[i / 2] = Convert.ToByte(hex.Substring(i, 2), 16); + return bytes; + } + + public static void reader_open() + { + char mode; + + Console.Write("Select reader opening mode:\n"); + Console.Write(" (1) - Simple Reader Open\n"); Console.Write(" (2) - Advanced Reader Open\n"); - mode = Console.ReadKey(true).KeyChar; - + mode = Console.ReadKey(true).KeyChar; + if (mode == '1') - { - status = (UInt32)uFCoder.ReaderOpen(); + { + status = (UInt32)uFCoder.ReaderOpen(); } else if (mode == '2') - { - /* For opening uFR Nano Online UDP mode use: - # status = ReaderOpenEx(0, "ip_address:port_number", 85, 0) - # - # For opening uFR Nano Online TCP/IP mode use: - # status = ReaderOpenEx(0, "ip address:port_number", 84, 0) - # - # For opening uFR Nano Online without reset/RTS on ESP32 - transparent mode 115200 use: - # status = ReaderOpenEx(2, 0, 0, "UNIT_OPEN_RESET_DISABLE") - */ - - string reader_type = "", port_name = "", port_interface = "", arg = ""; - - Console.Write("Enter reader type:\n"); - reader_type = Console.ReadLine(); - Console.Write("Enter port name:\n"); - port_name = Console.ReadLine(); - Console.Write("Enter port interface:\n"); - port_interface = Console.ReadLine(); - Console.Write("Enter additional argument:\n"); - arg = Console.ReadLine(); - - UInt32 reader_type_int = Convert.ToUInt32(reader_type); - UInt32 port_interface_int = 0; - if (port_interface == "U") - { - port_interface_int = 85; //for passing interface as int to function + { + /* For opening uFR Nano Online UDP mode use: + # status = ReaderOpenEx(0, "ip_address:port_number", 85, 0) + # + # For opening uFR Nano Online TCP/IP mode use: + # status = ReaderOpenEx(0, "ip address:port_number", 84, 0) + # + # For opening uFR Nano Online without reset/RTS on ESP32 - transparent mode 115200 use: + # status = ReaderOpenEx(2, 0, 0, "UNIT_OPEN_RESET_DISABLE") + */ + + string reader_type = "", port_name = "", port_interface = "", arg = ""; + + Console.Write("Enter reader type:\n"); + reader_type = Console.ReadLine(); + Console.Write("Enter port name:\n"); + port_name = Console.ReadLine(); + Console.Write("Enter port interface:\n"); + port_interface = Console.ReadLine(); + Console.Write("Enter additional argument:\n"); + arg = Console.ReadLine(); + + UInt32 reader_type_int = Convert.ToUInt32(reader_type); + UInt32 port_interface_int = 0; + + if (port_interface == "U") + { + port_interface_int = 85; // U -> UDP + } + else if (port_interface == "T") + { + port_interface_int = 84; // T -> TCP + } + else + { + port_interface_int = Convert.ToUInt32(port_interface); + } + + status = (UInt32)uFCoder.ReaderOpenEx(reader_type_int, port_name, port_interface_int, arg); + } + else + { + Console.Write(" Wrong input. Press any key to quit the application..."); + Console.ReadKey(); + Environment.Exit(0); + } + if (status == 0) { + Console.Write(" --------------------------------------------------\n"); + Console.Write(" uFR NFC reader successfully opened.\n"); + Console.Write(" --------------------------------------------------\n"); + } else { + Console.WriteLine(" Error while opening device, status is: " + uFCoder.status2str((uFR.DL_STATUS)status)); + Console.Write("\nPress any key to quit the application...\n"); + Console.ReadKey(); + Environment.Exit(0); + } + } + + + public static void usage() + { + ReadConfig(); + Console.Write(" +------------------------------------------------+\n"); + Console.Write(" | uFR_AES_tester |\n"); + Console.Write(" | DESFIRE CARDS |\n"); + Console.Write(" | version 1.0 |\n"); + Console.Write(" +------------------------------------------------+\n"); + Console.Write(" For exit, hit escape.\n"); + Console.Write(" --------------------------------------------------\n"); + Console.Write(" (0) - Change authentication mode\n"); + Console.Write(" (1) - Master key authentication\n"); + Console.Write(" (2) - Get card UID\n"); + Console.Write(" (3) - Format card\n"); + Console.Write(" (4) - DES to AES\n"); + Console.Write(" (5) - AES to DES\n"); + Console.Write(" (6) - Get free memory\n"); + Console.Write(" (7) - Set random ID\n"); + Console.Write(" (8) - Internal key lock\n"); + Console.Write(" (9) - Internal key unlock\n"); + Console.Write(" (a) - Set baud rate\n"); + Console.Write(" (b) - Get baud rate\n"); + Console.Write(" (c) - Store AES key into reader\n"); + Console.Write(" (d) - Change AES key\n"); + Console.Write(" (e) - Change key settings\n"); + Console.Write(" (f) - Get key settings\n"); + Console.Write(" (g) - Make application\n"); + Console.Write(" (h) - Delete application\n"); + Console.Write(" (j) - Make file\n"); + Console.Write(" (k) - Delete file\n"); + Console.Write(" (l) - Write Std file\n"); + Console.Write(" (m) - Read Std file\n"); + Console.Write(" (n) - Read Value file\n"); + Console.Write(" (o) - Increase Value file\n"); + Console.Write(" (p) - Decrease Value file\n"); + Console.Write(" (r) - Change config parameters\n"); + Console.Write(" --------------------------------------------------\n"); + } + + public static void ReadConfig() + { + config = System.IO.File.ReadAllLines(@"..\..\config.txt"); + + foreach (string line in config) + { + Console.WriteLine("\t" + line); + } + } + + public static void GetConfigParameters() + { + config = System.IO.File.ReadAllLines(@"..\..\config.txt"); + + int doubleDot = config[0].IndexOf(':'); + config[0] = config[0].Substring(doubleDot + 2); + + doubleDot = config[1].IndexOf(':'); + config[1] = config[1].Substring(doubleDot + 2); + + doubleDot = config[2].IndexOf(':'); + config[2] = config[2].Substring(doubleDot + 2); + + doubleDot = config[3].IndexOf(':'); + config[3] = config[3].Substring(doubleDot + 2); + + doubleDot = config[4].IndexOf(':'); + config[4] = config[4].Substring(doubleDot + 2); + + aes_key_ext = StringToByteArray(config[0]); + aid = Convert.ToUInt32(config[1], 16); + aid_key_nr_auth = Byte.Parse(config[2]); + file_id = Byte.Parse(config[3]); + aes_key_nr = Byte.Parse(config[4]); + } + + public static void GetCardUid() + { + byte[] card_uid = new byte[7]; + byte card_uid_len; + + if (auth == 0) + { + status = (UInt32)uFCoder.uFR_int_GetDesfireUid(aes_key_nr, aid, aid_key_nr_auth, card_uid, out card_uid_len, + out card_status, out exec_time); + } + else + { + status = (UInt32)uFCoder.uFR_int_GetDesfireUid_PK(aes_key_ext, aid, aid_key_nr_auth, card_uid, out card_uid_len, + out card_status, out exec_time); + } + + if (CheckStatus(status, card_status, exec_time)) + { + Console.WriteLine(" Card UID : " + BitConverter.ToString(card_uid).Replace("-", ":")); + } + + } + + public static void FormatCard() + { + if (auth == 0) + { + status = (UInt32)uFCoder.uFR_int_DesfireFormatCard(aes_key_nr, out card_status, out exec_time); + } + else + { + status = (UInt32)uFCoder.uFR_int_DesfireFormatCard_PK(aes_key_ext, out card_status, out exec_time); + } + + CheckStatus(status, card_status, exec_time); + } + + public static void ChangeAuthMode() + { + if (auth == 1) + { + auth = 0; + Console.WriteLine(" Auth mode is set to INTERNAL KEY"); + } + else if (auth == 0) + { + auth = 1; + Console.WriteLine(" Auth mode is set to PROVIDED KEY"); + } + + } + + public static void MasterKeyAuthRequired() + { + if (master_auth == 1) + { + master_auth = 0; + Console.WriteLine(" Master key authentication is not required"); + } + else if (master_auth == 0) + { + master_auth = 1; + Console.WriteLine(" Master key authentication is now required"); + } + + } + + public static void DesToAes() + { + status = (UInt32)uFCoder.DES_to_AES_key_type(); + + CheckStatus(status, 1, 0); + } + + public static void GetFreeMemory() + { + UInt32 free_mem; + + status = (UInt32)uFCoder.uFR_int_DesfireFreeMem(out free_mem, out card_status, out exec_time); + + if (CheckStatus(status, card_status, exec_time)) + { + Console.WriteLine(" Free memory : " + free_mem.ToString() + " bytes"); + } + + } + + public static void SetRandomID() + { + if (auth == 0) + { + status = (UInt32)uFCoder.uFR_int_DesfireSetConfiguration(aes_key_nr, 1, 0, out card_status, out exec_time); + } + else + { + status = (UInt32)uFCoder.uFR_int_DesfireSetConfiguration_PK(aes_key_ext, 1, 0, out card_status, out exec_time); + } + + CheckStatus(status, card_status, exec_time); + } + + public static void AesToDes() + { + status = (UInt32)uFCoder.AES_to_DES_key_type(); + + CheckStatus(status, 1, 0); + } + + public static void menu(char key) + { + GetConfigParameters(); + + switch (key) + { + case '0': + ChangeAuthMode(); + break; + case '1': + MasterKeyAuthRequired(); + break; + case '2': + GetCardUid(); + break; + case '3': + FormatCard(); + break; + case '4': + DesToAes(); + break; + case '5': + AesToDes(); + break; + case '6': + GetFreeMemory(); + break; + case '7': + SetRandomID(); + break; + case '8': + InternalKeysLock(); + break; + case '9': + InternalKeysUnlock(); + break; + case 'a': + SetBaudRate(); + break; + case 'b': + GetBaudRate(); + break; + case 'c': + StoreAESkeyIntoReader(); + break; + case 'd': + ChangeAESKeyCard(); + break; + case 'e': + ChangeKeySettings(); + break; + case 'f': + GetKeySettings(); + break; + case 'g': + MakeApplication(); + break; + case 'h': + DeleteApplication(); + break; + case 'j': + MakeFile(); + break; + case 'k': + DeleteFile(); + break; + case 'l': + StdFileWrite(); + break; + case 'm': + StdReadFile(); + break; + case 'n': + ReadValueFile(); + break; + case 'o': + IncreaseValueFile(); + break; + case 'p': + DecreaseValueFile(); + break; + case 'r': + ChangeConfigParametrs(); + break; + default: + usage(); + break; + } + Console.Write(" --------------------------------------------------\n"); + } + + public static bool CheckStatus(DL_STATUS status, UInt16 card_status, UInt16 exec_time) + { + + if (card_status != 1) + { + if (status == 0 && card_status == (UInt16)DESFIRE_CARD_STATUS_CODES.CARD_OPERATION_OK) + { + Console.WriteLine(" Operation completed"); + Console.WriteLine(" Function status is UFR_OK"); + Console.WriteLine(" Card status is CARD_OPERATION_OK"); + Console.WriteLine(" Execution time : " + exec_time.ToString() + " ms"); + + return true; + } + else + { + Console.WriteLine(" Error :"); + Console.WriteLine(" Card status : " + Enum.GetName(typeof(DESFIRE_CARD_STATUS_CODES), card_status)); + Console.WriteLine(" Function status : " + uFCoder.status2str((uFR.DL_STATUS)status)); + Console.WriteLine(" Execution time : " + exec_time.ToString() + " ms"); + } + } + else + { + if (status == 0) + { + Console.WriteLine(" Operation completed. Status is UFR_OK"); + + return true; + } + else + { + Console.WriteLine(" Error :"); + Console.WriteLine(" Function status : " + uFCoder.status2str((uFR.DL_STATUS)status)); + } + } + + return false; + + } + + public static void StoreAESkeyIntoReader() + { + byte aes_key_no = 0; + byte[] aes_key = new byte[16]; + + Console.WriteLine(" Input aes key number (0 - 15) :"); + + string aes_key_no_str = Console.ReadLine(); + + aes_key_no = Byte.Parse(aes_key_no_str); + + if (aes_key_no > 15 || aes_key_no < 0) + { + Console.WriteLine(" Aes key number must be in range from 0 - 15"); + } + else + { + Console.WriteLine(" Input aes key (16 bytes hex) :"); + string key = Console.ReadLine(); + + if (key.Length > 32) + { + Console.WriteLine(" AES key must be 16 bytes"); + } + else + { + aes_key = StringToByteArray(key); + + status = (UInt32)uFCoder.uFR_int_DesfireWriteAesKey(aes_key_no, aes_key); + + CheckStatus(status, 1, 0); + } + + } + + } + + public static void InternalKeysLock() + { + Console.Write(" Input password (8 characters):\n"); + string pass = Console.ReadLine(); + + char[] password = new char[8]; + password = pass.ToCharArray(); + + if (pass.Length != 8) + { + Console.WriteLine(" Password must be 8 characters long"); + } + else + { + status = (UInt32)uFCoder.ReaderKeysLock(password); + CheckStatus(status, 1, 0); + } + } + + public static void InternalKeysUnlock() + { + Console.Write(" Input password (8 characters):\n"); + string pass = Console.ReadLine(); + + char[] password = new char[8]; + password = pass.ToCharArray(); + + if (pass.Length != 8) + { + Console.WriteLine(" Password must be 8 characters long"); + } + else + { + status = (UInt32)uFCoder.ReaderKeysUnlock(password); + CheckStatus(status, 1, 0); + } + + } + + public static void SetBaudRate() + { + Console.WriteLine(" Chose number for transceive baud rate :"); + Console.WriteLine(" 0 - 106 kbps"); + Console.WriteLine(" 1 - 212 kbps"); + Console.WriteLine(" 2 - 424 kbps"); + Console.WriteLine(" 3 - 848 kbps"); + + string tx_str = Console.ReadLine(); + byte tx = Byte.Parse(tx_str); + + Console.WriteLine(" Chose number for receive baud rate :"); + Console.WriteLine(" 0 - 106 kbps"); + Console.WriteLine(" 1 - 212 kbps"); + Console.WriteLine(" 2 - 424 kbps"); + Console.WriteLine(" 3 - 848 kbps"); + + string rx_str = Console.ReadLine(); + byte rx = Byte.Parse(rx_str); + + status = (UInt32)uFCoder.SetSpeedPermanently(tx, rx); + CheckStatus(status, 1, 0); + } + + public static void GetBaudRate() + { + byte tx, rx; + status = (UInt32)uFCoder.GetSpeedParameters(out tx, out rx); + + var map = new Dictionary(); + map.Add(0, "106 kbps"); + map.Add(1, "212 kbps"); + map.Add(2, "424 kbps"); + map.Add(3, "848 kbps"); + + if (CheckStatus(status, 1, 0)) + { + Console.WriteLine(" TX baud rate = " + map[tx]); + Console.WriteLine(" RX baud rate = " + map[rx]); + } + } + + public static void ChangeAESKeyCard() + { + byte[] old_key = new byte[16]; + byte[] new_key = new byte[16]; + + Console.WriteLine(" Input old aes key (16 bytes) :"); + string old_str = Console.ReadLine(); + + if (old_str.Length != 32) + { + Console.WriteLine(" Old key must be 16 bytes long"); + } + else + { + old_key = StringToByteArray(old_str); + + Console.WriteLine(" Input new aes key (16 bytes) :"); + string new_str = Console.ReadLine(); + + new_key = StringToByteArray(new_str); + + if (new_str.Length != 32) + { + Console.WriteLine(" New key must be 16 bytes long"); + } + else + { + Console.WriteLine(" Input key number to change (0 - 13) :"); + string num = Console.ReadLine(); + + byte aid_key_no = Byte.Parse(num); + + if (aid_key_no < 0 || aid_key_no > 13) + { + Console.WriteLine(" Key number for changing must be in range (0 - 13) :"); + } + else + { + if (auth == 0) + { + + status = (UInt32)uFCoder.uFR_int_DesfireChangeAesKey(aes_key_nr, aid, aid_key_nr_auth, new_key, + aid_key_no, old_key, out card_status, out exec_time); + + } + else + { + status = (UInt32)uFCoder.uFR_int_DesfireChangeAesKey_PK(aes_key_ext, aid, aid_key_nr_auth, new_key, + aid_key_no, old_key, out card_status, out exec_time); + } + + CheckStatus(status, card_status, exec_time); + } + } + } + } + + public static void ChangeConfigParametrs() + { + char c; + do + { + Console.WriteLine(" Current config:"); + ReadConfig(); + + Console.WriteLine(" 1 - Change aes key"); + Console.WriteLine(" 2 - Change AID"); + Console.WriteLine(" 3 - Change AID key number for auth"); + Console.WriteLine(" 4 - Change File ID"); + Console.WriteLine(" 5 - Change internal key number"); + Console.WriteLine(" esc - Exit to main menu"); + + string new_aes = ""; + string new_aid = ""; + string new_aid_key_nr_auth = ""; + string new_file_id = ""; + string new_aes_key_nr = ""; + + c = Console.ReadKey().KeyChar; + + switch (c) + { + case '1': + Console.WriteLine(" Input new aes key (16 bytes hex):"); + new_aes = Console.ReadLine(); + aes_key_ext = StringToByteArray(new_aes); + break; + case '2': + Console.WriteLine(" Input new AID (3 bytes hex):"); + new_aid = Console.ReadLine(); + aid = Convert.ToUInt32(new_aid, 16); + break; + case '3': + Console.WriteLine(" Input new AID key number for auth:"); + new_aid_key_nr_auth = Console.ReadLine(); + aid_key_nr_auth = Byte.Parse(new_aid_key_nr_auth); + break; + case '4': + Console.WriteLine(" Input new File ID:"); + new_file_id = Console.ReadLine(); + file_id = Byte.Parse(new_file_id); + break; + case '5': + Console.WriteLine(" Input new internal key number"); + new_aes_key_nr = Console.ReadLine(); + aes_key_nr = Byte.Parse(new_aes_key_nr); + break; + default: + break; + + } + + string[] lines = { + "AES key: " + BitConverter.ToString(aes_key_ext).Replace("-", ""), + "AID 3 bytes hex: " + aid.ToString("X6"), + "AID key number for auth: " + aid_key_nr_auth.ToString(), + "File ID: " + file_id.ToString(), + "Internal key number: " + aes_key_nr.ToString() + }; + + System.IO.File.WriteAllLines(@"..\..\config.txt", lines); + + } while (c != '\x1b'); + + } + + public static void GetKeySettings() + { + byte setting; + byte max_key_no; + byte set_temp = 0; + + if (auth == 0) + { + status = (UInt32)uFCoder.uFR_int_DesfireGetKeySettings(aes_key_nr, aid, out setting, out max_key_no, + out card_status, out exec_time); + } + else + { + status = (UInt32)uFCoder.uFR_int_DesfireGetKeySettings_PK(aes_key_ext, aid, out setting, out max_key_no, + out card_status, out exec_time); + } + + if (CheckStatus(status, card_status, exec_time)) + { + setting &= 0x0F; + + switch (setting) + { + case (byte)DESFIRE_KEY_SETTINGS.DESFIRE_KEY_SET_CREATE_WITHOUT_AUTH_SET_CHANGE_KEY_CHANGE: + set_temp = 0; + break; + case (byte)DESFIRE_KEY_SETTINGS.DESFIRE_KEY_SET_CREATE_WITHOUT_AUTH_SET_CHANGE_KEY_NOT_CHANGE: + set_temp = 1; + break; + case (byte)DESFIRE_KEY_SETTINGS.DESFIRE_KEY_SET_CREATE_WITH_AUTH_SET_CHANGE_KEY_CHANGE: + set_temp = 2; + break; + case (byte)DESFIRE_KEY_SETTINGS.DESFIRE_KEY_SET_CREATE_WITH_AUTH_SET_CHANGE_KEY_NOT_CHANGE: + set_temp = 3; + break; + case (byte)DESFIRE_KEY_SETTINGS.DESFIRE_KEY_SET_CREATE_WITHOUT_AUTH_SET_NOT_CHANGE_KEY_CHANGE: + set_temp = 4; + break; + case (byte)DESFIRE_KEY_SETTINGS.DESFIRE_KEY_SET_CREATE_WITHOUT_AUTH_SET_NOT_CHANGE_KEY_NOT_CHANGE: + set_temp = 5; + break; + case (byte)DESFIRE_KEY_SETTINGS.DESFIRE_KEY_SET_CREATE_WITH_AUTH_SET_NOT_CHANGE_KEY_CHANGE: + set_temp = 6; + break; + case (byte)DESFIRE_KEY_SETTINGS.DESFIRE_KEY_SET_CREATE_WITH_AUTH_SET_NOT_CHANGE_KEY_NOT_CHANGE: + set_temp = 7; + break; + } + + int Sett = int.Parse((set_temp & 0x04).ToString()); + int Create = int.Parse((set_temp & 0x02).ToString()); + int Master = int.Parse((set_temp & 0x01).ToString()); + + bool use_settings = false; + bool use_create = false; + bool use_master = false; + + if (Sett > 0) + { + use_settings = true; + } + if (Create > 0) + { + use_create = true; + } + if (Master > 0) + { + use_master = true; + } + + if (use_settings == true && use_create == true && use_master == true) + { + Console.WriteLine(" 7 - Settings not changeable anymore, create or delete application with master key,"); + Console.WriteLine(" master key is not changeable anymore"); + } else if (use_master == true && use_create == true && use_settings == false) + { + Console.WriteLine(" 6 - Create and delete application with master key and master key is not changeable anymore"); + } else if (use_master == true && use_settings == true && use_create == false) + { + Console.WriteLine(" 5 - Settings and master key not changeable anymore"); + } else if (use_settings == true && use_create == true && use_master == false) + { + Console.WriteLine(" 4 - Settings not changeable anymore and create or delete application with master key"); + } else if (use_master == true && use_create == false && use_settings == false) + { + Console.WriteLine(" 3 - Master key not changeable anymore"); + } else if (use_create == true && use_settings == false && use_master == false) + { + Console.WriteLine(" 2 - Create or delete application with master key authentication"); + } else if (use_settings == true && use_create == false && use_master == false) + { + Console.WriteLine(" 1 - Settings not changeable anymore"); + } + else + { + Console.WriteLine("0 - No settings"); + } + } + } + + public static void ChangeKeySettings() + { + byte setting = 0; + byte set_temp = 0; + + Console.WriteLine("Choose key setting :"); + Console.WriteLine(" 0 - No settings"); + Console.WriteLine(" 1 - Settings not changeable anymore"); + Console.WriteLine(" 2 - Create or delete application with master key authentication"); + Console.WriteLine(" 3 - Master key not changeable anymore"); + Console.WriteLine(" 4 - Settings not changeable anymore and create or delete application with master key"); + Console.WriteLine(" 5 - Settings and master key not changeable anymore"); + Console.WriteLine(" 6 - Create and delete application with master key and master key is not changeable anymore"); + Console.WriteLine(" 7 - Settings not changeable anymore, create or delete application with master key,"); + Console.WriteLine(" master key is not changeable anymore"); + + + string choice_str = Console.ReadLine(); + + int choice = int.Parse(choice_str); + + if (choice == 1) + { + set_temp |= 0x04; + } else if (choice == 2) + { + set_temp |= 0x02; + } + else if (choice == 3) + { + set_temp |= 0x01; + } else if (choice == 4) + { + set_temp |= 0x04; + set_temp |= 0x02; + } else if (choice == 5) + { + set_temp |= 0x04; + set_temp |= 0x01; + } else if (choice == 6) + { + set_temp |= 0x02; + set_temp |= 0x01; + } else if (choice == 7) + { + set_temp |= 0x04; + set_temp |= 0x02; + set_temp |= 0x01; + } + + switch (set_temp) + { + case 0: + setting = (byte)DESFIRE_KEY_SETTINGS.DESFIRE_KEY_SET_CREATE_WITHOUT_AUTH_SET_CHANGE_KEY_CHANGE; + break; + case 1: + setting = (byte)DESFIRE_KEY_SETTINGS.DESFIRE_KEY_SET_CREATE_WITHOUT_AUTH_SET_CHANGE_KEY_NOT_CHANGE; + break; + case 2: + setting = (byte)DESFIRE_KEY_SETTINGS.DESFIRE_KEY_SET_CREATE_WITH_AUTH_SET_CHANGE_KEY_CHANGE; + break; + case 3: + setting = (byte)DESFIRE_KEY_SETTINGS.DESFIRE_KEY_SET_CREATE_WITH_AUTH_SET_CHANGE_KEY_NOT_CHANGE; + break; + case 4: + setting = (byte)DESFIRE_KEY_SETTINGS.DESFIRE_KEY_SET_CREATE_WITHOUT_AUTH_SET_NOT_CHANGE_KEY_CHANGE; + break; + case 5: + setting = (byte)DESFIRE_KEY_SETTINGS.DESFIRE_KEY_SET_CREATE_WITHOUT_AUTH_SET_NOT_CHANGE_KEY_NOT_CHANGE; + break; + case 6: + setting = (byte)DESFIRE_KEY_SETTINGS.DESFIRE_KEY_SET_CREATE_WITH_AUTH_SET_NOT_CHANGE_KEY_CHANGE; + break; + case 7: + setting = (byte)DESFIRE_KEY_SETTINGS.DESFIRE_KEY_SET_CREATE_WITH_AUTH_SET_NOT_CHANGE_KEY_NOT_CHANGE; + break; + } + + if (auth == 0) + { + status = (UInt32)uFCoder.uFR_int_DesfireChangeKeySettings(aes_key_nr, aid, setting, out card_status, + out exec_time); + } + else + { + status = (UInt32)uFCoder.uFR_int_DesfireChangeKeySettings_PK(aes_key_ext, aid, setting, out card_status, + out exec_time); + } + + CheckStatus(status, card_status, exec_time); + } + + public static void MakeApplication() { + + byte setting = 0; + byte set_temp = 0; + string aid_str; + string max_str; + byte max_key_no; + UInt32 aid_to_create; + + Console.WriteLine(" Input aid number (3 bytes hex) :"); + aid_str = Console.ReadLine(); + aid_to_create = Convert.ToUInt32(aid_str, 16); + + Console.WriteLine(" Input maximal key number :"); + max_str = Console.ReadLine(); + max_key_no = Byte.Parse(max_str); + + Console.WriteLine("Choose applications key setting :"); + Console.WriteLine(" 0 - No settings"); + Console.WriteLine(" 1 - Settings not changeable anymore"); + Console.WriteLine(" 2 - Create or delete application with master key authentication"); + Console.WriteLine(" 3 - Master key not changeable anymore"); + Console.WriteLine(" 4 - Settings not changeable anymore and create or delete application with master key"); + Console.WriteLine(" 5 - Settings and master key not changeable anymore"); + Console.WriteLine(" 6 - Create and delete application with master key and master key is not changeable anymore"); + Console.WriteLine(" 7 - Settings not changeable anymore, create or delete application with master key,"); + Console.WriteLine(" master key is not changeable anymore"); + + string choice_str = Console.ReadLine(); + + int choice = int.Parse(choice_str); + + if (choice == 1) + { + set_temp |= 0x04; + } + else if (choice == 2) + { + set_temp |= 0x02; + } + else if (choice == 3) + { + set_temp |= 0x01; + } + else if (choice == 4) + { + set_temp |= 0x04; + set_temp |= 0x02; + } + else if (choice == 5) + { + set_temp |= 0x04; + set_temp |= 0x01; + } + else if (choice == 6) + { + set_temp |= 0x02; + set_temp |= 0x01; + } + else if (choice == 7) + { + set_temp |= 0x04; + set_temp |= 0x02; + set_temp |= 0x01; + } + + switch (set_temp) + { + case 0: + setting = (byte)DESFIRE_KEY_SETTINGS.DESFIRE_KEY_SET_CREATE_WITHOUT_AUTH_SET_CHANGE_KEY_CHANGE; + break; + case 1: + setting = (byte)DESFIRE_KEY_SETTINGS.DESFIRE_KEY_SET_CREATE_WITHOUT_AUTH_SET_CHANGE_KEY_NOT_CHANGE; + break; + case 2: + setting = (byte)DESFIRE_KEY_SETTINGS.DESFIRE_KEY_SET_CREATE_WITH_AUTH_SET_CHANGE_KEY_CHANGE; + break; + case 3: + setting = (byte)DESFIRE_KEY_SETTINGS.DESFIRE_KEY_SET_CREATE_WITH_AUTH_SET_CHANGE_KEY_NOT_CHANGE; + break; + case 4: + setting = (byte)DESFIRE_KEY_SETTINGS.DESFIRE_KEY_SET_CREATE_WITHOUT_AUTH_SET_NOT_CHANGE_KEY_CHANGE; + break; + case 5: + setting = (byte)DESFIRE_KEY_SETTINGS.DESFIRE_KEY_SET_CREATE_WITHOUT_AUTH_SET_NOT_CHANGE_KEY_NOT_CHANGE; + break; + case 6: + setting = (byte)DESFIRE_KEY_SETTINGS.DESFIRE_KEY_SET_CREATE_WITH_AUTH_SET_NOT_CHANGE_KEY_CHANGE; + break; + case 7: + setting = (byte)DESFIRE_KEY_SETTINGS.DESFIRE_KEY_SET_CREATE_WITH_AUTH_SET_NOT_CHANGE_KEY_NOT_CHANGE; + break; + } + + if (master_auth == 1) + { + if (auth == 0) + { + status = (UInt32)uFCoder.uFR_int_DesfireCreateAesApplication(aes_key_nr, aid_to_create, + setting, max_key_no, out card_status, out exec_time); + } + else + { + status = (UInt32)uFCoder.uFR_int_DesfireCreateAesApplication_PK(aes_key_ext, aid_to_create, + setting, max_key_no, out card_status, out exec_time); + } + } + else + { + status = (UInt32)uFCoder.uFR_int_DesfireCreateAesApplication_no_auth(aid_to_create, + setting, max_key_no, out card_status, out exec_time); + } + + CheckStatus(status, card_status, exec_time); + } + + public static void DeleteApplication() + { + UInt32 aid_to_delete; + string aid_to_delete_str; + + Console.WriteLine(" Input aid to delete (3 bytes hex) :"); + aid_to_delete_str = Console.ReadLine(); + + aid_to_delete = Convert.ToUInt32(aid_to_delete_str, 16); + + if (auth == 0) + { + status = (UInt32)uFCoder.uFR_int_DesfireDeleteApplication(aes_key_nr, aid_to_delete, + out card_status, out exec_time); + } + else + { + status = (UInt32)uFCoder.uFR_int_DesfireDeleteApplication_PK(aes_key_ext, aid_to_delete, + out card_status, out exec_time); + } + + CheckStatus(status, card_status, exec_time); + } + + public static void FileTypeInternal(byte file_type, byte file_id_create, byte rk_num, byte wk_num, byte rwk_num, byte ck_num, + byte communication_mode) + { + if (file_type == 1) + { + Console.WriteLine(" Input size of file (bytes) :"); + string bytes_num_str = Console.ReadLine(); + byte bytes_num = Byte.Parse(bytes_num_str); + + status = (UInt32)uFCoder.uFR_int_DesfireCreateStdDataFile(aes_key_nr, aid, file_id_create, + bytes_num, rk_num, wk_num, rwk_num, ck_num, communication_mode, out card_status, out exec_time); + } + else if (file_type == 2) + { + Console.WriteLine(" Input lower limit :"); + string low_str = Console.ReadLine(); + Int32 lower_limit = Int32.Parse(low_str); + + Console.WriteLine(" Input upper limit :"); + string upp_str = Console.ReadLine(); + Int32 upper_limit = Int32.Parse(upp_str); + + Console.WriteLine(" Input value : "); + string value_str = Console.ReadLine(); + Int32 value = Int32.Parse(value_str); + + Console.WriteLine(" Do you want to enable limited credit?"); + Console.WriteLine(" 1. Enabled"); + Console.WriteLine(" 2. Disabled"); + string limit_str = Console.ReadLine(); + byte limited_credit_enabled = 0; + + if (Byte.Parse(limit_str) == 1) + { + limited_credit_enabled = 1; + } + else if (Byte.Parse(limit_str) == 2) + { + limited_credit_enabled = 0; + } + + Console.WriteLine(" Do you want to use free get value?"); + Console.WriteLine(" 1. Use free get value"); + Console.WriteLine(" 2. Don't use free get value"); + string free_get_str = Console.ReadLine(); + + if (Byte.Parse(free_get_str) == 1) + { + limited_credit_enabled |= 0x02; + } + + status = (UInt32)uFCoder.uFR_int_DesfireCreateValueFile(aes_key_nr, aid, file_id_create, lower_limit, upper_limit, value, + limited_credit_enabled, rk_num, wk_num, rwk_num, ck_num, communication_mode, + out card_status, out exec_time); + } + + CheckStatus(status, card_status, exec_time); + } + + public static void FileTypePK(byte file_type, byte file_id_create, byte rk_num, byte wk_num, byte rwk_num, byte ck_num, + byte communication_mode) + { + if (file_type == 1) + { + Console.WriteLine(" Input size of file (bytes) :"); + string bytes_num_str = Console.ReadLine(); + byte bytes_num = Byte.Parse(bytes_num_str); + + status = (UInt32)uFCoder.uFR_int_DesfireCreateStdDataFile_PK(aes_key_ext, aid, file_id_create, + bytes_num, rk_num, wk_num, rwk_num, ck_num, communication_mode, out card_status, out exec_time); + } + else if (file_type == 2) + { + Console.WriteLine(" Input lower limit :"); + string low_str = Console.ReadLine(); + Int32 lower_limit = Int32.Parse(low_str); + + Console.WriteLine(" Input upper limit :"); + string upp_str = Console.ReadLine(); + Int32 upper_limit = Int32.Parse(upp_str); + + Console.WriteLine(" Input value : "); + string value_str = Console.ReadLine(); + Int32 value = Int32.Parse(value_str); + + Console.WriteLine(" Do you want to enable limited credit?"); + Console.WriteLine(" 1. Enabled"); + Console.WriteLine(" 2. Disabled"); + string limit_str = Console.ReadLine(); + byte limited_credit_enabled = 0; + + if (Byte.Parse(limit_str) == 1) + { + limited_credit_enabled = 1; + } + else if (Byte.Parse(limit_str) == 2) + { + limited_credit_enabled = 0; + } + + Console.WriteLine(" Do you want to use free get value?"); + Console.WriteLine(" 1. Use free get value"); + Console.WriteLine(" 2. Don't use free get value"); + string free_get_str = Console.ReadLine(); + + if (Byte.Parse(free_get_str) == 1) + { + limited_credit_enabled |= 0x02; + } + + status = (UInt32)uFCoder.uFR_int_DesfireCreateValueFile_PK(aes_key_ext, aid, file_id_create, lower_limit, upper_limit, value, + limited_credit_enabled, rk_num, wk_num, rwk_num, ck_num, communication_mode, + out card_status, out exec_time); + } + + CheckStatus(status, card_status, exec_time); + } + + public static void FileTypeNoAuth(byte file_type, byte file_id_create, byte rk_num, byte wk_num, byte rwk_num, byte ck_num, + byte communication_mode) + { + if (file_type == 1) + { + Console.WriteLine(" Input size of file (bytes) :"); + string bytes_num_str = Console.ReadLine(); + byte bytes_num = Byte.Parse(bytes_num_str); + + status = (UInt32)uFCoder.uFR_int_DesfireCreateStdDataFile_no_auth(aid, file_id_create, + bytes_num, rk_num, wk_num, rwk_num, ck_num, communication_mode, out card_status, out exec_time); + } + else if (file_type == 2) + { + Console.WriteLine(" Input lower limit :"); + string low_str = Console.ReadLine(); + Int32 lower_limit = Int32.Parse(low_str); + + Console.WriteLine(" Input upper limit :"); + string upp_str = Console.ReadLine(); + Int32 upper_limit = Int32.Parse(upp_str); + + Console.WriteLine(" Input value : "); + string value_str = Console.ReadLine(); + Int32 value = Int32.Parse(value_str); + + Console.WriteLine(" Do you want to enable limited credit?"); + Console.WriteLine(" 1. Enabled"); + Console.WriteLine(" 2. Disabled"); + string limit_str = Console.ReadLine(); + byte limited_credit_enabled = 0; + + if (Byte.Parse(limit_str) == 1) + { + limited_credit_enabled = 1; + } + else if (Byte.Parse(limit_str) == 2) + { + limited_credit_enabled = 0; + } + + Console.WriteLine(" Do you want to use free get value?"); + Console.WriteLine(" 1. Use free get value"); + Console.WriteLine(" 2. Don't use free get value"); + string free_get_str = Console.ReadLine(); + + if (Byte.Parse(free_get_str) == 1) + { + limited_credit_enabled |= 0x02; + } + + status = (UInt32)uFCoder.uFR_int_DesfireCreateValueFile_no_auth(aid, file_id_create, lower_limit, upper_limit, value, + limited_credit_enabled, rk_num, wk_num, rwk_num, ck_num, communication_mode, + out card_status, out exec_time); + } + + CheckStatus(status, card_status, exec_time); + } + + public static void MakeFile() + { + byte file_id_create; + byte communication_mode = 0; + byte file_type; + + Console.WriteLine(" Input file ID:"); + string id_str = Console.ReadLine(); + file_id_create = Byte.Parse(id_str); + + Console.WriteLine(" Chose communication mode:"); + Console.WriteLine(" 1. PLAIN"); + Console.WriteLine(" 2. MACKED"); + Console.WriteLine(" 3. ENCHIPERED"); + string comm_mode_str = Console.ReadLine(); + + if (Byte.Parse(comm_mode_str) == 1) + { + communication_mode = 0; + + } else if (Byte.Parse(comm_mode_str) == 2) + { + communication_mode = 1; + + } else if (Byte.Parse(comm_mode_str) == 3) + { + communication_mode = 3; + } + + Console.WriteLine(" Chose file type:"); + Console.WriteLine(" 1. Standard data file"); + Console.WriteLine(" 2. Value file"); + string type_str = Console.ReadLine(); + file_type = Byte.Parse(type_str); + + Console.WriteLine(" Input read key number (0 - 15) :"); + string rk_num_str = Console.ReadLine(); + byte rk_num = Byte.Parse(rk_num_str); + + Console.WriteLine(" Input write key number (0 - 15) :"); + string wk_num_str = Console.ReadLine(); + byte wk_num = Byte.Parse(wk_num_str); + + Console.WriteLine(" Input read/write key number (0 - 15) :"); + string rwk_num_str = Console.ReadLine(); + byte rwk_num = Byte.Parse(rwk_num_str); + + Console.WriteLine(" Input change key number (0 - 15) :"); + string ck_num_str = Console.ReadLine(); + byte ck_num = Byte.Parse(ck_num_str); + + if (master_auth == 1) + { + if (auth == 0) + { + FileTypeInternal(file_type, file_id_create, rk_num, wk_num, rwk_num, ck_num, communication_mode); + } + else + { + FileTypePK(file_type, file_id_create, rk_num, wk_num, rwk_num, ck_num, communication_mode); + } + } + else + { + FileTypeNoAuth(file_type, file_id_create, rk_num, wk_num, rwk_num, ck_num, communication_mode); + } + + } + + public static void DeleteFile() + { + Console.WriteLine(" Input file ID to delete:"); + string id_str = Console.ReadLine(); + byte file_id_to_delete = Byte.Parse(id_str); + + if(master_auth == 1) + { + if(auth == 0) + { + status = (UInt32)uFCoder.uFR_int_DesfireDeleteFile(aes_key_nr, aid, file_id_to_delete, out card_status, + out exec_time); + } + else + { + status = (UInt32)uFCoder.uFR_int_DesfireDeleteFile_PK(aes_key_ext, aid, file_id_to_delete, out card_status, + out exec_time); + } + } + else + { + status = (UInt32)uFCoder.uFR_int_DesfireDeleteFile_no_auth(aid, file_id_to_delete, out card_status, + out exec_time); + } + + CheckStatus(status, card_status, exec_time); + } + + public static void StdFileWrite() + { + byte[] file_data = new byte[10000]; + file_data = File.ReadAllBytes(@"..\..\write.txt"); + byte file_length = (byte)file_data.Length; + byte communication_settings = 0; + + Console.WriteLine(" Chose communication mode:"); + Console.WriteLine(" 1. PLAIN"); + Console.WriteLine(" 2. MACKED"); + Console.WriteLine(" 3. ENCHIPERED"); + string comm_mode_str = Console.ReadLine(); + + if (Byte.Parse(comm_mode_str) == 1) + { + communication_settings = 0; + + } + else if (Byte.Parse(comm_mode_str) == 2) + { + communication_settings = 1; + + } + else if (Byte.Parse(comm_mode_str) == 3) + { + communication_settings = 3; + } + + if (master_auth == 1) + { + if(auth == 0) + { + status = (UInt32)uFCoder.uFR_int_DesfireWriteStdDataFile(aes_key_nr, aid, aid_key_nr_auth, file_id, + 0, file_length, communication_settings, file_data, out card_status, out exec_time); + } + else + { + status = (UInt32)uFCoder.uFR_int_DesfireWriteStdDataFile_PK(aes_key_ext, aid, aid_key_nr_auth, file_id, 0, file_length, + communication_settings, file_data, out card_status, out exec_time); + } + } + else + { + status = (UInt32)uFCoder.uFR_int_DesfireWriteStdDataFile_no_auth(aid, aid_key_nr_auth, file_id, 0, file_length, + communication_settings, file_data, out card_status, out exec_time); + } + + CheckStatus(status, card_status, exec_time); + } + + public static void StdReadFile() + { + + byte communication_settings = 0; + byte file_length = 0; + + Console.WriteLine(" Chose communication mode:"); + Console.WriteLine(" 1. PLAIN"); + Console.WriteLine(" 2. MACKED"); + Console.WriteLine(" 3. ENCHIPERED"); + string comm_mode_str = Console.ReadLine(); + + if (Byte.Parse(comm_mode_str) == 1) + { + communication_settings = 0; + + } + else if (Byte.Parse(comm_mode_str) == 2) + { + communication_settings = 1; + + } + else if (Byte.Parse(comm_mode_str) == 3) + { + communication_settings = 3; + } + + Console.WriteLine(" Input file length to read (bytes):"); + string length_str = Console.ReadLine(); + file_length = Byte.Parse(length_str); + + byte[] data = new byte[file_length]; + + if(master_auth == 1) + { + if(auth == 0) + { + status = (UInt32)uFCoder.uFR_int_DesfireReadStdDataFile(aes_key_nr, aid, aid_key_nr_auth, file_id, + 0, file_length, communication_settings, data, out card_status, out exec_time); + } + else + { + status = (UInt32)uFCoder.uFR_int_DesfireReadStdDataFile_PK(aes_key_ext, aid, aid_key_nr_auth, file_id, + 0, file_length, communication_settings, data, out card_status, out exec_time); + } + } + else + { + status = (UInt32)uFCoder.uFR_int_DesfireReadStdDataFile_no_auth(aid, aid_key_nr_auth, file_id, + 0, file_length, communication_settings, data, out card_status, out exec_time); + } + + if(CheckStatus(status, card_status, exec_time)) + { + System.IO.File.WriteAllBytes(@"..\..\read.txt", data); + } + } + + public static void ReadValueFile() + { + byte communication_settings = 0; + Int32 value = 0; + + Console.WriteLine(" Chose communication mode:"); + Console.WriteLine(" 1. PLAIN"); + Console.WriteLine(" 2. MACKED"); + Console.WriteLine(" 3. ENCHIPERED"); + string comm_mode_str = Console.ReadLine(); + + if (Byte.Parse(comm_mode_str) == 1) + { + communication_settings = 0; + + } + else if (Byte.Parse(comm_mode_str) == 2) + { + communication_settings = 1; + + } + else if (Byte.Parse(comm_mode_str) == 3) + { + communication_settings = 3; + } + + if (master_auth == 1) + { + if(auth == 0) + { + status = (UInt32)uFCoder.uFR_int_DesfireReadValueFile(aes_key_nr, aid, aid_key_nr_auth, file_id, + communication_settings, out value, out card_status, out exec_time); + } + else + { + status = (UInt32)uFCoder.uFR_int_DesfireReadValueFile_PK(aes_key_ext, aid, aid_key_nr_auth, file_id, + communication_settings, out value, out card_status, out exec_time); + } + + } + else + { + status = (UInt32)uFCoder.uFR_int_DesfireReadValueFile_no_auth(aid, aid_key_nr_auth, file_id, + communication_settings, out value, out card_status, out exec_time); + } + + if(CheckStatus(status, card_status, exec_time)) + { + Console.WriteLine(" Value : " + value.ToString()); + } + } + + public static void IncreaseValueFile() + { + byte communication_settings = 0; + Int32 value = 0; + + Console.WriteLine(" Chose communication mode:"); + Console.WriteLine(" 1. PLAIN"); + Console.WriteLine(" 2. MACKED"); + Console.WriteLine(" 3. ENCHIPERED"); + string comm_mode_str = Console.ReadLine(); + + if (Byte.Parse(comm_mode_str) == 1) + { + communication_settings = 0; + + } + else if (Byte.Parse(comm_mode_str) == 2) + { + communication_settings = 1; + + } + else if (Byte.Parse(comm_mode_str) == 3) + { + communication_settings = 3; + } + + Console.WriteLine(" Enter value to increase : "); + string inc_str = Console.ReadLine(); + value = Int32.Parse(inc_str); + + if(master_auth == 1) + { + if(auth == 0) + { + status = (UInt32)uFCoder.uFR_int_DesfireIncreaseValueFile(aes_key_nr, aid, aid_key_nr_auth, file_id, + communication_settings, value, out card_status, out exec_time); } - else if (port_interface == "T") - { - port_interface_int = 84; //for passing interface as int to function - } else { - port_interface_int = Convert.ToUInt32(port_interface); - } - - status = (UInt32)uFCoder.ReaderOpenEx(reader_type_int, port_name, port_interface_int, arg); - } - else - { - Console.Write(" Wrong input. Press any key to quit the application..."); - Console.ReadKey(); - Environment.Exit(0); - } - if (status == 0) { - Console.Write(" --------------------------------------------------\n"); - Console.Write(" uFR NFC reader successfully opened.\n"); - Console.Write(" --------------------------------------------------\n"); - } else { - Console.WriteLine(" Error while opening device, status is: " + uFCoder.status2str((uFR.DL_STATUS)status)); - Console.Write("\nPress any key to quit the application...\n"); - Console.ReadKey(); - Environment.Exit(0); - } - } - - - public static void usage() - { - ReadConfig(); - Console.Write(" +------------------------------------------------+\n"); - Console.Write(" | uFR_AES_tester |\n"); - Console.Write(" | DESFIRE CARDS |\n"); - Console.Write(" | version 1.0 |\n"); - Console.Write(" +------------------------------------------------+\n"); - Console.Write(" For exit, hit escape.\n"); - Console.Write(" --------------------------------------------------\n"); - Console.Write(" (0) - Change authentication mode\n"); - Console.Write(" (1) - Master key authentication\n"); - Console.Write(" (2) - Get card UID\n"); - Console.Write(" (3) - Format card\n"); - Console.Write(" (4) - DES to AES\n"); - Console.Write(" (5) - AES to DES\n"); - Console.Write(" (6) - Get free memory\n"); - Console.Write(" (7) - Set random ID\n"); - Console.Write(" (8) - Internal key lock\n"); - Console.Write(" (9) - Internal key unlock\n"); - Console.Write(" (a) - Set baud rate\n"); - Console.Write(" (b) - Get baud rate\n"); - Console.Write(" (c) - Store AES key into reader\n"); - Console.Write(" (d) - Change AES key\n"); - Console.Write(" (e) - Change key settings\n"); - Console.Write(" (f) - Get key settings\n"); - Console.Write(" (g) - Make application\n"); - Console.Write(" (h) - Delete application\n"); - Console.Write(" (j) - Make file\n"); - Console.Write(" (k) - Delete file\n"); - Console.Write(" (l) - Write Std file\n"); - Console.Write(" (m) - Read Std file\n"); - Console.Write(" (n) - Read Value file\n"); - Console.Write(" (o) - Increase Value file\n"); - Console.Write(" (p) - Decrease Value file\n"); - Console.Write(" (r) - Change config parameters\n"); - Console.Write(" --------------------------------------------------\n"); - } - - public static void ReadConfig() - { - config = System.IO.File.ReadAllLines(@"..\..\config.txt"); - - foreach (string line in config) - { - Console.WriteLine("\t" + line); - } - } - - public static void GetConfigParameters() - { - config = System.IO.File.ReadAllLines(@"..\..\config.txt"); - - int doubleDot = config[0].IndexOf(':'); - config[0] = config[0].Substring(doubleDot + 2); - - doubleDot = config[1].IndexOf(':'); - config[1] = config[1].Substring(doubleDot + 2); - - doubleDot = config[2].IndexOf(':'); - config[2] = config[2].Substring(doubleDot + 2); - - doubleDot = config[3].IndexOf(':'); - config[3] = config[3].Substring(doubleDot + 2); - - doubleDot = config[4].IndexOf(':'); - config[4] = config[4].Substring(doubleDot + 2); - - aes_key_ext = StringToByteArray(config[0]); - aid = Convert.ToUInt32(config[1], 16); - aid_key_nr_auth = Byte.Parse(config[2]); - file_id = Byte.Parse(config[3]); - aes_key_nr = Byte.Parse(config[4]); - } - - public static void GetCardUid() - { - byte[] card_uid = new byte[7]; - byte card_uid_len; - - if (auth == 0) - { - status = (UInt32)uFCoder.uFR_int_GetDesfireUid(aes_key_nr, aid, aid_key_nr_auth, card_uid, out card_uid_len, - out card_status, out exec_time); - } - else - { - status = (UInt32)uFCoder.uFR_int_GetDesfireUid_PK(aes_key_ext, aid, aid_key_nr_auth, card_uid, out card_uid_len, - out card_status, out exec_time); - } - - if (CheckStatus(status, card_status, exec_time)) - { - Console.WriteLine(" Card UID : " + BitConverter.ToString(card_uid).Replace("-", ":")); - } - - } - - public static void FormatCard() - { - if (auth == 0) - { - status = (UInt32)uFCoder.uFR_int_DesfireFormatCard(aes_key_nr, out card_status, out exec_time); - } - else - { - status = (UInt32)uFCoder.uFR_int_DesfireFormatCard_PK(aes_key_ext, out card_status, out exec_time); - } - - CheckStatus(status, card_status, exec_time); - } - - public static void ChangeAuthMode() - { - if (auth == 1) - { - auth = 0; - Console.WriteLine(" Auth mode is set to INTERNAL KEY"); - } - else if (auth == 0) - { - auth = 1; - Console.WriteLine(" Auth mode is set to PROVIDED KEY"); - } - - } - - public static void MasterKeyAuthRequired() - { - if (master_auth == 1) - { - master_auth = 0; - Console.WriteLine(" Master key authentication is not required"); - } - else if (master_auth == 0) - { - master_auth = 1; - Console.WriteLine(" Master key authentication is now required"); - } - - } - - public static void DesToAes() - { - status = (UInt32)uFCoder.DES_to_AES_key_type(); - - CheckStatus(status, 1, 0); - } - - public static void GetFreeMemory() - { - UInt32 free_mem; - - status = (UInt32)uFCoder.uFR_int_DesfireFreeMem(out free_mem, out card_status, out exec_time); - - if (CheckStatus(status, card_status, exec_time)) - { - Console.WriteLine(" Free memory : " + free_mem.ToString() + " bytes"); - } - - } - - public static void SetRandomID() - { - if (auth == 0) - { - status = (UInt32)uFCoder.uFR_int_DesfireSetConfiguration(aes_key_nr, 1, 0, out card_status, out exec_time); - } - else - { - status = (UInt32)uFCoder.uFR_int_DesfireSetConfiguration_PK(aes_key_ext, 1, 0, out card_status, out exec_time); - } - - CheckStatus(status, card_status, exec_time); - } - - public static void AesToDes() - { - status = (UInt32)uFCoder.AES_to_DES_key_type(); - - CheckStatus(status, 1, 0); - } - - public static void menu(char key) - { - GetConfigParameters(); - - switch (key) - { - case '0': - ChangeAuthMode(); - break; - case '1': - MasterKeyAuthRequired(); - break; - case '2': - GetCardUid(); - break; - case '3': - FormatCard(); - break; - case '4': - DesToAes(); - break; - case '5': - AesToDes(); - break; - case '6': - GetFreeMemory(); - break; - case '7': - SetRandomID(); - break; - case '8': - InternalKeysLock(); - break; - case '9': - InternalKeysUnlock(); - break; - case 'a': - SetBaudRate(); - break; - case 'b': - GetBaudRate(); - break; - case 'c': - StoreAESkeyIntoReader(); - break; - case 'd': - ChangeAESKeyCard(); - break; - case 'e': - ChangeKeySettings(); - break; - case 'f': - GetKeySettings(); - break; - case 'g': - MakeApplication(); - break; - case 'h': - DeleteApplication(); - break; - case 'j': - MakeFile(); - break; - case 'k': - DeleteFile(); - break; - case 'l': - StdFileWrite(); - break; - case 'm': - StdReadFile(); - break; - case 'n': - ReadValueFile(); - break; - case 'o': - IncreaseValueFile(); - break; - case 'p': - DecreaseValueFile(); - break; - case 'r': - ChangeConfigParametrs(); - break; - default: - usage(); - break; - } - Console.Write(" --------------------------------------------------\n"); - } - - public static bool CheckStatus(DL_STATUS status, UInt16 card_status, UInt16 exec_time) - { - - if (card_status != 1) - { - if (status == 0 && card_status == (UInt16)DESFIRE_CARD_STATUS_CODES.CARD_OPERATION_OK) - { - Console.WriteLine(" Operation completed"); - Console.WriteLine(" Function status is UFR_OK"); - Console.WriteLine(" Card status is CARD_OPERATION_OK"); - Console.WriteLine(" Execution time : " + exec_time.ToString() + " ms"); - - return true; - } - else - { - Console.WriteLine(" Error :"); - Console.WriteLine(" Card status : " + Enum.GetName(typeof(DESFIRE_CARD_STATUS_CODES), card_status)); - Console.WriteLine(" Function status : " + uFCoder.status2str((uFR.DL_STATUS)status)); - Console.WriteLine(" Execution time : " + exec_time.ToString() + " ms"); - } - } - else - { - if (status == 0) - { - Console.WriteLine(" Operation completed. Status is UFR_OK"); - - return true; - } - else - { - Console.WriteLine(" Error :"); - Console.WriteLine(" Function status : " + uFCoder.status2str((uFR.DL_STATUS)status)); - } - } - - return false; - - } - - public static void StoreAESkeyIntoReader() - { - byte aes_key_no = 0; - byte[] aes_key = new byte[16]; - - Console.WriteLine(" Input aes key number (0 - 15) :"); - - string aes_key_no_str = Console.ReadLine(); - - aes_key_no = Byte.Parse(aes_key_no_str); - - if (aes_key_no > 15 || aes_key_no < 0) - { - Console.WriteLine(" Aes key number must be in range from 0 - 15"); - } - else - { - Console.WriteLine(" Input aes key (16 bytes hex) :"); - string key = Console.ReadLine(); - - if (key.Length > 32) - { - Console.WriteLine(" AES key must be 16 bytes"); - } - else - { - aes_key = StringToByteArray(key); - - status = (UInt32)uFCoder.uFR_int_DesfireWriteAesKey(aes_key_no, aes_key); - - CheckStatus(status, 1, 0); - } - - } - - } - - public static void InternalKeysLock() - { - Console.Write(" Input password (8 characters):\n"); - string pass = Console.ReadLine(); - - char[] password = new char[8]; - password = pass.ToCharArray(); - - if (pass.Length != 8) - { - Console.WriteLine(" Password must be 8 characters long"); - } - else - { - status = (UInt32)uFCoder.ReaderKeysLock(password); - CheckStatus(status, 1, 0); - } - } - - public static void InternalKeysUnlock() - { - Console.Write(" Input password (8 characters):\n"); - string pass = Console.ReadLine(); - - char[] password = new char[8]; - password = pass.ToCharArray(); - - if (pass.Length != 8) - { - Console.WriteLine(" Password must be 8 characters long"); - } - else - { - status = (UInt32)uFCoder.ReaderKeysUnlock(password); - CheckStatus(status, 1, 0); - } - - } - - public static void SetBaudRate() - { - Console.WriteLine(" Chose number for transceive baud rate :"); - Console.WriteLine(" 0 - 106 kbps"); - Console.WriteLine(" 1 - 212 kbps"); - Console.WriteLine(" 2 - 424 kbps"); - Console.WriteLine(" 3 - 848 kbps"); - - string tx_str = Console.ReadLine(); - byte tx = Byte.Parse(tx_str); - - Console.WriteLine(" Chose number for receive baud rate :"); - Console.WriteLine(" 0 - 106 kbps"); - Console.WriteLine(" 1 - 212 kbps"); - Console.WriteLine(" 2 - 424 kbps"); - Console.WriteLine(" 3 - 848 kbps"); - - string rx_str = Console.ReadLine(); - byte rx = Byte.Parse(rx_str); - - status = (UInt32)uFCoder.SetSpeedPermanently(tx, rx); - CheckStatus(status, 1, 0); - } - - public static void GetBaudRate() - { - byte tx, rx; - status = (UInt32)uFCoder.GetSpeedParameters(out tx, out rx); - - var map = new Dictionary(); - map.Add(0, "106 kbps"); - map.Add(1, "212 kbps"); - map.Add(2, "424 kbps"); - map.Add(3, "848 kbps"); - - if (CheckStatus(status, 1, 0)) - { - Console.WriteLine(" TX baud rate = " + map[tx]); - Console.WriteLine(" RX baud rate = " + map[rx]); - } - } - - public static void ChangeAESKeyCard() - { - byte[] old_key = new byte[16]; - byte[] new_key = new byte[16]; - - Console.WriteLine(" Input old aes key (16 bytes) :"); - string old_str = Console.ReadLine(); - - if (old_str.Length != 32) - { - Console.WriteLine(" Old key must be 16 bytes long"); - } - else - { - old_key = StringToByteArray(old_str); - - Console.WriteLine(" Input new aes key (16 bytes) :"); - string new_str = Console.ReadLine(); - - new_key = StringToByteArray(new_str); - - if (new_str.Length != 32) - { - Console.WriteLine(" New key must be 16 bytes long"); - } - else - { - Console.WriteLine(" Input key number to change (0 - 13) :"); - string num = Console.ReadLine(); - - byte aid_key_no = Byte.Parse(num); - - if (aid_key_no < 0 || aid_key_no > 13) - { - Console.WriteLine(" Key number for changing must be in range (0 - 13) :"); - } - else - { - if (auth == 0) - { - - status = (UInt32)uFCoder.uFR_int_DesfireChangeAesKey(aes_key_nr, aid, aid_key_nr_auth, new_key, - aid_key_no, old_key, out card_status, out exec_time); - - } - else - { - status = (UInt32)uFCoder.uFR_int_DesfireChangeAesKey_PK(aes_key_ext, aid, aid_key_nr_auth, new_key, - aid_key_no, old_key, out card_status, out exec_time); - } - - CheckStatus(status, card_status, exec_time); - } - } - } - } - - public static void ChangeConfigParametrs() - { - char c; - do - { - Console.WriteLine(" Current config:"); - ReadConfig(); - - Console.WriteLine(" 1 - Change aes key"); - Console.WriteLine(" 2 - Change AID"); - Console.WriteLine(" 3 - Change AID key number for auth"); - Console.WriteLine(" 4 - Change File ID"); - Console.WriteLine(" 5 - Change internal key number"); - Console.WriteLine(" esc - Exit to main menu"); - - string new_aes = ""; - string new_aid = ""; - string new_aid_key_nr_auth = ""; - string new_file_id = ""; - string new_aes_key_nr = ""; - - c = Console.ReadKey().KeyChar; - - switch (c) - { - case '1': - Console.WriteLine(" Input new aes key (16 bytes hex):"); - new_aes = Console.ReadLine(); - aes_key_ext = StringToByteArray(new_aes); - break; - case '2': - Console.WriteLine(" Input new AID (3 bytes hex):"); - new_aid = Console.ReadLine(); - aid = Convert.ToUInt32(new_aid, 16); - break; - case '3': - Console.WriteLine(" Input new AID key number for auth:"); - new_aid_key_nr_auth = Console.ReadLine(); - aid_key_nr_auth = Byte.Parse(new_aid_key_nr_auth); - break; - case '4': - Console.WriteLine(" Input new File ID:"); - new_file_id = Console.ReadLine(); - file_id = Byte.Parse(new_file_id); - break; - case '5': - Console.WriteLine(" Input new internal key number"); - new_aes_key_nr = Console.ReadLine(); - aes_key_nr = Byte.Parse(new_aes_key_nr); - break; - default: - break; - - } - - string[] lines = { - "AES key: " + BitConverter.ToString(aes_key_ext).Replace("-", ""), - "AID 3 bytes hex: " + aid.ToString("X6"), - "AID key number for auth: " + aid_key_nr_auth.ToString(), - "File ID: " + file_id.ToString(), - "Internal key number: " + aes_key_nr.ToString() - }; - - System.IO.File.WriteAllLines(@"..\..\config.txt", lines); - - } while (c != '\x1b'); - - } - - public static void GetKeySettings() - { - byte setting; - byte max_key_no; - byte set_temp = 0; - - if (auth == 0) - { - status = (UInt32)uFCoder.uFR_int_DesfireGetKeySettings(aes_key_nr, aid, out setting, out max_key_no, - out card_status, out exec_time); - } - else - { - status = (UInt32)uFCoder.uFR_int_DesfireGetKeySettings_PK(aes_key_ext, aid, out setting, out max_key_no, - out card_status, out exec_time); - } - - if (CheckStatus(status, card_status, exec_time)) - { - setting &= 0x0F; - - switch (setting) - { - case (byte)DESFIRE_KEY_SETTINGS.DESFIRE_KEY_SET_CREATE_WITHOUT_AUTH_SET_CHANGE_KEY_CHANGE: - set_temp = 0; - break; - case (byte)DESFIRE_KEY_SETTINGS.DESFIRE_KEY_SET_CREATE_WITHOUT_AUTH_SET_CHANGE_KEY_NOT_CHANGE: - set_temp = 1; - break; - case (byte)DESFIRE_KEY_SETTINGS.DESFIRE_KEY_SET_CREATE_WITH_AUTH_SET_CHANGE_KEY_CHANGE: - set_temp = 2; - break; - case (byte)DESFIRE_KEY_SETTINGS.DESFIRE_KEY_SET_CREATE_WITH_AUTH_SET_CHANGE_KEY_NOT_CHANGE: - set_temp = 3; - break; - case (byte)DESFIRE_KEY_SETTINGS.DESFIRE_KEY_SET_CREATE_WITHOUT_AUTH_SET_NOT_CHANGE_KEY_CHANGE: - set_temp = 4; - break; - case (byte)DESFIRE_KEY_SETTINGS.DESFIRE_KEY_SET_CREATE_WITHOUT_AUTH_SET_NOT_CHANGE_KEY_NOT_CHANGE: - set_temp = 5; - break; - case (byte)DESFIRE_KEY_SETTINGS.DESFIRE_KEY_SET_CREATE_WITH_AUTH_SET_NOT_CHANGE_KEY_CHANGE: - set_temp = 6; - break; - case (byte)DESFIRE_KEY_SETTINGS.DESFIRE_KEY_SET_CREATE_WITH_AUTH_SET_NOT_CHANGE_KEY_NOT_CHANGE: - set_temp = 7; - break; - } - - int Sett = int.Parse((set_temp & 0x04).ToString()); - int Create = int.Parse((set_temp & 0x02).ToString()); - int Master = int.Parse((set_temp & 0x01).ToString()); - - bool use_settings = false; - bool use_create = false; - bool use_master = false; - - if (Sett > 0) - { - use_settings = true; - } - if (Create > 0) - { - use_create = true; - } - if (Master > 0) - { - use_master = true; - } - - if (use_settings == true && use_create == true && use_master == true) - { - Console.WriteLine(" 7 - Settings not changeable anymore, create or delete application with master key,"); - Console.WriteLine(" master key is not changeable anymore"); - } else if (use_master == true && use_create == true && use_settings == false) - { - Console.WriteLine(" 6 - Create and delete application with master key and master key is not changeable anymore"); - } else if (use_master == true && use_settings == true && use_create == false) - { - Console.WriteLine(" 5 - Settings and master key not changeable anymore"); - } else if (use_settings == true && use_create == true && use_master == false) - { - Console.WriteLine(" 4 - Settings not changeable anymore and create or delete application with master key"); - } else if (use_master == true && use_create == false && use_settings == false) - { - Console.WriteLine(" 3 - Master key not changeable anymore"); - } else if (use_create == true && use_settings == false && use_master == false) - { - Console.WriteLine(" 2 - Create or delete application with master key authentication"); - } else if (use_settings == true && use_create == false && use_master == false) - { - Console.WriteLine(" 1 - Settings not changeable anymore"); - } - else - { - Console.WriteLine("0 - No settings"); - } - } - } - - public static void ChangeKeySettings() - { - byte setting = 0; - byte set_temp = 0; - - Console.WriteLine("Choose key setting :"); - Console.WriteLine(" 0 - No settings"); - Console.WriteLine(" 1 - Settings not changeable anymore"); - Console.WriteLine(" 2 - Create or delete application with master key authentication"); - Console.WriteLine(" 3 - Master key not changeable anymore"); - Console.WriteLine(" 4 - Settings not changeable anymore and create or delete application with master key"); - Console.WriteLine(" 5 - Settings and master key not changeable anymore"); - Console.WriteLine(" 6 - Create and delete application with master key and master key is not changeable anymore"); - Console.WriteLine(" 7 - Settings not changeable anymore, create or delete application with master key,"); - Console.WriteLine(" master key is not changeable anymore"); - - - string choice_str = Console.ReadLine(); - - int choice = int.Parse(choice_str); - - if (choice == 1) - { - set_temp |= 0x04; - } else if (choice == 2) - { - set_temp |= 0x02; - } - else if (choice == 3) - { - set_temp |= 0x01; - } else if (choice == 4) - { - set_temp |= 0x04; - set_temp |= 0x02; - } else if (choice == 5) - { - set_temp |= 0x04; - set_temp |= 0x01; - } else if (choice == 6) - { - set_temp |= 0x02; - set_temp |= 0x01; - } else if (choice == 7) - { - set_temp |= 0x04; - set_temp |= 0x02; - set_temp |= 0x01; - } - - switch (set_temp) - { - case 0: - setting = (byte)DESFIRE_KEY_SETTINGS.DESFIRE_KEY_SET_CREATE_WITHOUT_AUTH_SET_CHANGE_KEY_CHANGE; - break; - case 1: - setting = (byte)DESFIRE_KEY_SETTINGS.DESFIRE_KEY_SET_CREATE_WITHOUT_AUTH_SET_CHANGE_KEY_NOT_CHANGE; - break; - case 2: - setting = (byte)DESFIRE_KEY_SETTINGS.DESFIRE_KEY_SET_CREATE_WITH_AUTH_SET_CHANGE_KEY_CHANGE; - break; - case 3: - setting = (byte)DESFIRE_KEY_SETTINGS.DESFIRE_KEY_SET_CREATE_WITH_AUTH_SET_CHANGE_KEY_NOT_CHANGE; - break; - case 4: - setting = (byte)DESFIRE_KEY_SETTINGS.DESFIRE_KEY_SET_CREATE_WITHOUT_AUTH_SET_NOT_CHANGE_KEY_CHANGE; - break; - case 5: - setting = (byte)DESFIRE_KEY_SETTINGS.DESFIRE_KEY_SET_CREATE_WITHOUT_AUTH_SET_NOT_CHANGE_KEY_NOT_CHANGE; - break; - case 6: - setting = (byte)DESFIRE_KEY_SETTINGS.DESFIRE_KEY_SET_CREATE_WITH_AUTH_SET_NOT_CHANGE_KEY_CHANGE; - break; - case 7: - setting = (byte)DESFIRE_KEY_SETTINGS.DESFIRE_KEY_SET_CREATE_WITH_AUTH_SET_NOT_CHANGE_KEY_NOT_CHANGE; - break; - } - - if (auth == 0) - { - status = (UInt32)uFCoder.uFR_int_DesfireChangeKeySettings(aes_key_nr, aid, setting, out card_status, - out exec_time); - } - else - { - status = (UInt32)uFCoder.uFR_int_DesfireChangeKeySettings_PK(aes_key_ext, aid, setting, out card_status, - out exec_time); - } - - CheckStatus(status, card_status, exec_time); - } - - public static void MakeApplication() { - - byte setting = 0; - byte set_temp = 0; - string aid_str; - string max_str; - byte max_key_no; - UInt32 aid_to_create; - - Console.WriteLine(" Input aid number (3 bytes hex) :"); - aid_str = Console.ReadLine(); - aid_to_create = Convert.ToUInt32(aid_str, 16); - - Console.WriteLine(" Input maximal key number :"); - max_str = Console.ReadLine(); - max_key_no = Byte.Parse(max_str); - - Console.WriteLine("Choose applications key setting :"); - Console.WriteLine(" 0 - No settings"); - Console.WriteLine(" 1 - Settings not changeable anymore"); - Console.WriteLine(" 2 - Create or delete application with master key authentication"); - Console.WriteLine(" 3 - Master key not changeable anymore"); - Console.WriteLine(" 4 - Settings not changeable anymore and create or delete application with master key"); - Console.WriteLine(" 5 - Settings and master key not changeable anymore"); - Console.WriteLine(" 6 - Create and delete application with master key and master key is not changeable anymore"); - Console.WriteLine(" 7 - Settings not changeable anymore, create or delete application with master key,"); - Console.WriteLine(" master key is not changeable anymore"); - - string choice_str = Console.ReadLine(); - - int choice = int.Parse(choice_str); - - if (choice == 1) - { - set_temp |= 0x04; - } - else if (choice == 2) - { - set_temp |= 0x02; - } - else if (choice == 3) - { - set_temp |= 0x01; - } - else if (choice == 4) - { - set_temp |= 0x04; - set_temp |= 0x02; - } - else if (choice == 5) - { - set_temp |= 0x04; - set_temp |= 0x01; - } - else if (choice == 6) - { - set_temp |= 0x02; - set_temp |= 0x01; - } - else if (choice == 7) - { - set_temp |= 0x04; - set_temp |= 0x02; - set_temp |= 0x01; - } - - switch (set_temp) - { - case 0: - setting = (byte)DESFIRE_KEY_SETTINGS.DESFIRE_KEY_SET_CREATE_WITHOUT_AUTH_SET_CHANGE_KEY_CHANGE; - break; - case 1: - setting = (byte)DESFIRE_KEY_SETTINGS.DESFIRE_KEY_SET_CREATE_WITHOUT_AUTH_SET_CHANGE_KEY_NOT_CHANGE; - break; - case 2: - setting = (byte)DESFIRE_KEY_SETTINGS.DESFIRE_KEY_SET_CREATE_WITH_AUTH_SET_CHANGE_KEY_CHANGE; - break; - case 3: - setting = (byte)DESFIRE_KEY_SETTINGS.DESFIRE_KEY_SET_CREATE_WITH_AUTH_SET_CHANGE_KEY_NOT_CHANGE; - break; - case 4: - setting = (byte)DESFIRE_KEY_SETTINGS.DESFIRE_KEY_SET_CREATE_WITHOUT_AUTH_SET_NOT_CHANGE_KEY_CHANGE; - break; - case 5: - setting = (byte)DESFIRE_KEY_SETTINGS.DESFIRE_KEY_SET_CREATE_WITHOUT_AUTH_SET_NOT_CHANGE_KEY_NOT_CHANGE; - break; - case 6: - setting = (byte)DESFIRE_KEY_SETTINGS.DESFIRE_KEY_SET_CREATE_WITH_AUTH_SET_NOT_CHANGE_KEY_CHANGE; - break; - case 7: - setting = (byte)DESFIRE_KEY_SETTINGS.DESFIRE_KEY_SET_CREATE_WITH_AUTH_SET_NOT_CHANGE_KEY_NOT_CHANGE; - break; - } - - if (master_auth == 1) - { - if (auth == 0) - { - status = (UInt32)uFCoder.uFR_int_DesfireCreateAesApplication(aes_key_nr, aid_to_create, - setting, max_key_no, out card_status, out exec_time); - } - else - { - status = (UInt32)uFCoder.uFR_int_DesfireCreateAesApplication_PK(aes_key_ext, aid_to_create, - setting, max_key_no, out card_status, out exec_time); - } - } - else - { - status = (UInt32)uFCoder.uFR_int_DesfireCreateAesApplication_no_auth(aid_to_create, - setting, max_key_no, out card_status, out exec_time); - } - - CheckStatus(status, card_status, exec_time); - } - - public static void DeleteApplication() - { - UInt32 aid_to_delete; - string aid_to_delete_str; - - Console.WriteLine(" Input aid to delete (3 bytes hex) :"); - aid_to_delete_str = Console.ReadLine(); - - aid_to_delete = Convert.ToUInt32(aid_to_delete_str, 16); - - if (auth == 0) - { - status = (UInt32)uFCoder.uFR_int_DesfireDeleteApplication(aes_key_nr, aid_to_delete, - out card_status, out exec_time); - } - else - { - status = (UInt32)uFCoder.uFR_int_DesfireDeleteApplication_PK(aes_key_ext, aid_to_delete, - out card_status, out exec_time); - } - - CheckStatus(status, card_status, exec_time); - } - - public static void FileTypeInternal(byte file_type, byte file_id_create, byte rk_num, byte wk_num, byte rwk_num, byte ck_num, - byte communication_mode) - { - if (file_type == 1) - { - Console.WriteLine(" Input size of file (bytes) :"); - string bytes_num_str = Console.ReadLine(); - byte bytes_num = Byte.Parse(bytes_num_str); - - status = (UInt32)uFCoder.uFR_int_DesfireCreateStdDataFile(aes_key_nr, aid, file_id_create, - bytes_num, rk_num, wk_num, rwk_num, ck_num, communication_mode, out card_status, out exec_time); - } - else if (file_type == 2) - { - Console.WriteLine(" Input lower limit :"); - string low_str = Console.ReadLine(); - Int32 lower_limit = Int32.Parse(low_str); - - Console.WriteLine(" Input upper limit :"); - string upp_str = Console.ReadLine(); - Int32 upper_limit = Int32.Parse(upp_str); - - Console.WriteLine(" Input value : "); - string value_str = Console.ReadLine(); - Int32 value = Int32.Parse(value_str); - - Console.WriteLine(" Do you want to enable limited credit?"); - Console.WriteLine(" 1. Enabled"); - Console.WriteLine(" 2. Disabled"); - string limit_str = Console.ReadLine(); - byte limited_credit_enabled = 0; - - if (Byte.Parse(limit_str) == 1) - { - limited_credit_enabled = 1; - } - else if (Byte.Parse(limit_str) == 2) - { - limited_credit_enabled = 0; - } - - Console.WriteLine(" Do you want to use free get value?"); - Console.WriteLine(" 1. Use free get value"); - Console.WriteLine(" 2. Don't use free get value"); - string free_get_str = Console.ReadLine(); - - if (Byte.Parse(free_get_str) == 1) - { - limited_credit_enabled |= 0x02; - } - - status = (UInt32)uFCoder.uFR_int_DesfireCreateValueFile(aes_key_nr, aid, file_id_create, lower_limit, upper_limit, value, - limited_credit_enabled, rk_num, wk_num, rwk_num, ck_num, communication_mode, - out card_status, out exec_time); - } - - CheckStatus(status, card_status, exec_time); - } - - public static void FileTypePK(byte file_type, byte file_id_create, byte rk_num, byte wk_num, byte rwk_num, byte ck_num, - byte communication_mode) - { - if (file_type == 1) - { - Console.WriteLine(" Input size of file (bytes) :"); - string bytes_num_str = Console.ReadLine(); - byte bytes_num = Byte.Parse(bytes_num_str); - - status = (UInt32)uFCoder.uFR_int_DesfireCreateStdDataFile_PK(aes_key_ext, aid, file_id_create, - bytes_num, rk_num, wk_num, rwk_num, ck_num, communication_mode, out card_status, out exec_time); - } - else if (file_type == 2) - { - Console.WriteLine(" Input lower limit :"); - string low_str = Console.ReadLine(); - Int32 lower_limit = Int32.Parse(low_str); - - Console.WriteLine(" Input upper limit :"); - string upp_str = Console.ReadLine(); - Int32 upper_limit = Int32.Parse(upp_str); - - Console.WriteLine(" Input value : "); - string value_str = Console.ReadLine(); - Int32 value = Int32.Parse(value_str); - - Console.WriteLine(" Do you want to enable limited credit?"); - Console.WriteLine(" 1. Enabled"); - Console.WriteLine(" 2. Disabled"); - string limit_str = Console.ReadLine(); - byte limited_credit_enabled = 0; - - if (Byte.Parse(limit_str) == 1) - { - limited_credit_enabled = 1; - } - else if (Byte.Parse(limit_str) == 2) - { - limited_credit_enabled = 0; - } - - Console.WriteLine(" Do you want to use free get value?"); - Console.WriteLine(" 1. Use free get value"); - Console.WriteLine(" 2. Don't use free get value"); - string free_get_str = Console.ReadLine(); - - if (Byte.Parse(free_get_str) == 1) - { - limited_credit_enabled |= 0x02; - } - - status = (UInt32)uFCoder.uFR_int_DesfireCreateValueFile_PK(aes_key_ext, aid, file_id_create, lower_limit, upper_limit, value, - limited_credit_enabled, rk_num, wk_num, rwk_num, ck_num, communication_mode, - out card_status, out exec_time); - } - - CheckStatus(status, card_status, exec_time); - } - - public static void FileTypeNoAuth(byte file_type, byte file_id_create, byte rk_num, byte wk_num, byte rwk_num, byte ck_num, - byte communication_mode) - { - if (file_type == 1) - { - Console.WriteLine(" Input size of file (bytes) :"); - string bytes_num_str = Console.ReadLine(); - byte bytes_num = Byte.Parse(bytes_num_str); - - status = (UInt32)uFCoder.uFR_int_DesfireCreateStdDataFile_no_auth(aid, file_id_create, - bytes_num, rk_num, wk_num, rwk_num, ck_num, communication_mode, out card_status, out exec_time); - } - else if (file_type == 2) - { - Console.WriteLine(" Input lower limit :"); - string low_str = Console.ReadLine(); - Int32 lower_limit = Int32.Parse(low_str); - - Console.WriteLine(" Input upper limit :"); - string upp_str = Console.ReadLine(); - Int32 upper_limit = Int32.Parse(upp_str); - - Console.WriteLine(" Input value : "); - string value_str = Console.ReadLine(); - Int32 value = Int32.Parse(value_str); - - Console.WriteLine(" Do you want to enable limited credit?"); - Console.WriteLine(" 1. Enabled"); - Console.WriteLine(" 2. Disabled"); - string limit_str = Console.ReadLine(); - byte limited_credit_enabled = 0; - - if (Byte.Parse(limit_str) == 1) - { - limited_credit_enabled = 1; - } - else if (Byte.Parse(limit_str) == 2) - { - limited_credit_enabled = 0; - } - - Console.WriteLine(" Do you want to use free get value?"); - Console.WriteLine(" 1. Use free get value"); - Console.WriteLine(" 2. Don't use free get value"); - string free_get_str = Console.ReadLine(); - - if (Byte.Parse(free_get_str) == 1) - { - limited_credit_enabled |= 0x02; - } - - status = (UInt32)uFCoder.uFR_int_DesfireCreateValueFile_no_auth(aid, file_id_create, lower_limit, upper_limit, value, - limited_credit_enabled, rk_num, wk_num, rwk_num, ck_num, communication_mode, - out card_status, out exec_time); - } - - CheckStatus(status, card_status, exec_time); - } - - public static void MakeFile() - { - byte file_id_create; - byte communication_mode = 0; - byte file_type; - - Console.WriteLine(" Input file ID:"); - string id_str = Console.ReadLine(); - file_id_create = Byte.Parse(id_str); - - Console.WriteLine(" Chose communication mode:"); - Console.WriteLine(" 1. PLAIN"); - Console.WriteLine(" 2. MACKED"); - Console.WriteLine(" 3. ENCHIPERED"); - string comm_mode_str = Console.ReadLine(); - - if (Byte.Parse(comm_mode_str) == 1) - { - communication_mode = 0; - - } else if (Byte.Parse(comm_mode_str) == 2) - { - communication_mode = 1; - - } else if (Byte.Parse(comm_mode_str) == 3) - { - communication_mode = 3; - } - - Console.WriteLine(" Chose file type:"); - Console.WriteLine(" 1. Standard data file"); - Console.WriteLine(" 2. Value file"); - string type_str = Console.ReadLine(); - file_type = Byte.Parse(type_str); - - Console.WriteLine(" Input read key number (0 - 15) :"); - string rk_num_str = Console.ReadLine(); - byte rk_num = Byte.Parse(rk_num_str); - - Console.WriteLine(" Input write key number (0 - 15) :"); - string wk_num_str = Console.ReadLine(); - byte wk_num = Byte.Parse(wk_num_str); - - Console.WriteLine(" Input read/write key number (0 - 15) :"); - string rwk_num_str = Console.ReadLine(); - byte rwk_num = Byte.Parse(rwk_num_str); - - Console.WriteLine(" Input change key number (0 - 15) :"); - string ck_num_str = Console.ReadLine(); - byte ck_num = Byte.Parse(ck_num_str); - - if (master_auth == 1) - { - if (auth == 0) - { - FileTypeInternal(file_type, file_id_create, rk_num, wk_num, rwk_num, ck_num, communication_mode); - } - else - { - FileTypePK(file_type, file_id_create, rk_num, wk_num, rwk_num, ck_num, communication_mode); - } - } - else - { - FileTypeNoAuth(file_type, file_id_create, rk_num, wk_num, rwk_num, ck_num, communication_mode); - } - - } - - public static void DeleteFile() - { - Console.WriteLine(" Input file ID to delete:"); - string id_str = Console.ReadLine(); - byte file_id_to_delete = Byte.Parse(id_str); - - if(master_auth == 1) - { - if(auth == 0) - { - status = (UInt32)uFCoder.uFR_int_DesfireDeleteFile(aes_key_nr, aid, file_id_to_delete, out card_status, - out exec_time); - } - else - { - status = (UInt32)uFCoder.uFR_int_DesfireDeleteFile_PK(aes_key_ext, aid, file_id_to_delete, out card_status, - out exec_time); - } - } - else - { - status = (UInt32)uFCoder.uFR_int_DesfireDeleteFile_no_auth(aid, file_id_to_delete, out card_status, - out exec_time); - } - - CheckStatus(status, card_status, exec_time); - } - - public static void StdFileWrite() - { - byte[] file_data = new byte[10000]; - file_data = File.ReadAllBytes(@"..\..\write.txt"); - byte file_length = (byte)file_data.Length; - byte communication_settings = 0; - - Console.WriteLine(" Chose communication mode:"); - Console.WriteLine(" 1. PLAIN"); - Console.WriteLine(" 2. MACKED"); - Console.WriteLine(" 3. ENCHIPERED"); - string comm_mode_str = Console.ReadLine(); - - if (Byte.Parse(comm_mode_str) == 1) - { - communication_settings = 0; - - } - else if (Byte.Parse(comm_mode_str) == 2) - { - communication_settings = 1; - - } - else if (Byte.Parse(comm_mode_str) == 3) - { - communication_settings = 3; - } - - if (master_auth == 1) - { - if(auth == 0) - { - status = (UInt32)uFCoder.uFR_int_DesfireWriteStdDataFile(aes_key_nr, aid, aid_key_nr_auth, file_id, - 0, file_length, communication_settings, file_data, out card_status, out exec_time); - } - else - { - status = (UInt32)uFCoder.uFR_int_DesfireWriteStdDataFile_PK(aes_key_ext, aid, aid_key_nr_auth, file_id, 0, file_length, - communication_settings, file_data, out card_status, out exec_time); - } - } - else - { - status = (UInt32)uFCoder.uFR_int_DesfireWriteStdDataFile_no_auth(aid, aid_key_nr_auth, file_id, 0, file_length, - communication_settings, file_data, out card_status, out exec_time); - } - - CheckStatus(status, card_status, exec_time); - } - - public static void StdReadFile() - { - - byte communication_settings = 0; - byte file_length = 0; - - Console.WriteLine(" Chose communication mode:"); - Console.WriteLine(" 1. PLAIN"); - Console.WriteLine(" 2. MACKED"); - Console.WriteLine(" 3. ENCHIPERED"); - string comm_mode_str = Console.ReadLine(); - - if (Byte.Parse(comm_mode_str) == 1) - { - communication_settings = 0; - - } - else if (Byte.Parse(comm_mode_str) == 2) - { - communication_settings = 1; - - } - else if (Byte.Parse(comm_mode_str) == 3) - { - communication_settings = 3; - } - - Console.WriteLine(" Input file length to read (bytes):"); - string length_str = Console.ReadLine(); - file_length = Byte.Parse(length_str); - - byte[] data = new byte[file_length]; - - if(master_auth == 1) - { - if(auth == 0) - { - status = (UInt32)uFCoder.uFR_int_DesfireReadStdDataFile(aes_key_nr, aid, aid_key_nr_auth, file_id, - 0, file_length, communication_settings, data, out card_status, out exec_time); - } - else - { - status = (UInt32)uFCoder.uFR_int_DesfireReadStdDataFile_PK(aes_key_ext, aid, aid_key_nr_auth, file_id, - 0, file_length, communication_settings, data, out card_status, out exec_time); - } - } - else - { - status = (UInt32)uFCoder.uFR_int_DesfireReadStdDataFile_no_auth(aid, aid_key_nr_auth, file_id, - 0, file_length, communication_settings, data, out card_status, out exec_time); - } - - if(CheckStatus(status, card_status, exec_time)) - { - System.IO.File.WriteAllBytes(@"..\..\read.txt", data); - } - } - - public static void ReadValueFile() - { - byte communication_settings = 0; - Int32 value = 0; - - Console.WriteLine(" Chose communication mode:"); - Console.WriteLine(" 1. PLAIN"); - Console.WriteLine(" 2. MACKED"); - Console.WriteLine(" 3. ENCHIPERED"); - string comm_mode_str = Console.ReadLine(); - - if (Byte.Parse(comm_mode_str) == 1) - { - communication_settings = 0; - - } - else if (Byte.Parse(comm_mode_str) == 2) - { - communication_settings = 1; - - } - else if (Byte.Parse(comm_mode_str) == 3) - { - communication_settings = 3; - } - - if (master_auth == 1) - { - if(auth == 0) - { - status = (UInt32)uFCoder.uFR_int_DesfireReadValueFile(aes_key_nr, aid, aid_key_nr_auth, file_id, - communication_settings, out value, out card_status, out exec_time); - } - else - { - status = (UInt32)uFCoder.uFR_int_DesfireReadValueFile_PK(aes_key_ext, aid, aid_key_nr_auth, file_id, - communication_settings, out value, out card_status, out exec_time); - } - - } - else - { - status = (UInt32)uFCoder.uFR_int_DesfireReadValueFile_no_auth(aid, aid_key_nr_auth, file_id, - communication_settings, out value, out card_status, out exec_time); - } - - if(CheckStatus(status, card_status, exec_time)) - { - Console.WriteLine(" Value : " + value.ToString()); - } - } - - public static void IncreaseValueFile() - { - byte communication_settings = 0; - Int32 value = 0; - - Console.WriteLine(" Chose communication mode:"); - Console.WriteLine(" 1. PLAIN"); - Console.WriteLine(" 2. MACKED"); - Console.WriteLine(" 3. ENCHIPERED"); - string comm_mode_str = Console.ReadLine(); - - if (Byte.Parse(comm_mode_str) == 1) - { - communication_settings = 0; - - } - else if (Byte.Parse(comm_mode_str) == 2) - { - communication_settings = 1; - - } - else if (Byte.Parse(comm_mode_str) == 3) - { - communication_settings = 3; - } - - Console.WriteLine(" Enter value to increase : "); - string inc_str = Console.ReadLine(); - value = Int32.Parse(inc_str); - - if(master_auth == 1) - { - if(auth == 0) - { - status = (UInt32)uFCoder.uFR_int_DesfireIncreaseValueFile(aes_key_nr, aid, aid_key_nr_auth, file_id, - communication_settings, value, out card_status, out exec_time); - } - else - { - status = (UInt32)uFCoder.uFR_int_DesfireIncreaseValueFile_PK(aes_key_ext, aid, aid_key_nr_auth, file_id, - communication_settings, value, out card_status, out exec_time); - } - } - else - { - status = (UInt32)uFCoder.uFR_int_DesfireIncreaseValueFile_no_auth(aid, aid_key_nr_auth, file_id, - communication_settings, value, out card_status, out exec_time); - } - - CheckStatus(status, card_status, exec_time); - } - - public static void DecreaseValueFile() - { - byte communication_settings = 0; - Int32 value = 0; - - Console.WriteLine(" Chose communication mode:"); - Console.WriteLine(" 1. PLAIN"); - Console.WriteLine(" 2. MACKED"); - Console.WriteLine(" 3. ENCHIPERED"); - string comm_mode_str = Console.ReadLine(); - - if (Byte.Parse(comm_mode_str) == 1) - { - communication_settings = 0; - } - else if (Byte.Parse(comm_mode_str) == 2) - { - communication_settings = 1; - } - else if (Byte.Parse(comm_mode_str) == 3) - { - communication_settings = 3; - } - - Console.WriteLine(" Enter value to decrease : "); - string inc_str = Console.ReadLine(); - value = Int32.Parse(inc_str); - - if (master_auth == 1) - { - if (auth == 0) - { - status = (UInt32)uFCoder.uFR_int_DesfireDecreaseValueFile(aes_key_nr, aid, aid_key_nr_auth, file_id, - communication_settings, value, out card_status, out exec_time); - } - else - { - status = (UInt32)uFCoder.uFR_int_DesfireDecreaseValueFile_PK(aes_key_ext, aid, aid_key_nr_auth, file_id, - communication_settings, value, out card_status, out exec_time); - } - } - else - { - status = (UInt32)uFCoder.uFR_int_DesfireDecreaseValueFile_no_auth(aid, aid_key_nr_auth, file_id, - communication_settings, value, out card_status, out exec_time); - } - - CheckStatus(status, card_status, exec_time); - } - } -} + status = (UInt32)uFCoder.uFR_int_DesfireIncreaseValueFile_PK(aes_key_ext, aid, aid_key_nr_auth, file_id, + communication_settings, value, out card_status, out exec_time); + } + } + else + { + status = (UInt32)uFCoder.uFR_int_DesfireIncreaseValueFile_no_auth(aid, aid_key_nr_auth, file_id, + communication_settings, value, out card_status, out exec_time); + } + + CheckStatus(status, card_status, exec_time); + } + + public static void DecreaseValueFile() + { + byte communication_settings = 0; + Int32 value = 0; + + Console.WriteLine(" Chose communication mode:"); + Console.WriteLine(" 1. PLAIN"); + Console.WriteLine(" 2. MACKED"); + Console.WriteLine(" 3. ENCHIPERED"); + string comm_mode_str = Console.ReadLine(); + + if (Byte.Parse(comm_mode_str) == 1) + { + communication_settings = 0; + } + else if (Byte.Parse(comm_mode_str) == 2) + { + communication_settings = 1; + } + else if (Byte.Parse(comm_mode_str) == 3) + { + communication_settings = 3; + } + + Console.WriteLine(" Enter value to decrease : "); + string inc_str = Console.ReadLine(); + value = Int32.Parse(inc_str); + + if (master_auth == 1) + { + if (auth == 0) + { + status = (UInt32)uFCoder.uFR_int_DesfireDecreaseValueFile(aes_key_nr, aid, aid_key_nr_auth, file_id, + communication_settings, value, out card_status, out exec_time); + } + else + { + status = (UInt32)uFCoder.uFR_int_DesfireDecreaseValueFile_PK(aes_key_ext, aid, aid_key_nr_auth, file_id, + communication_settings, value, out card_status, out exec_time); + } + } + else + { + status = (UInt32)uFCoder.uFR_int_DesfireDecreaseValueFile_no_auth(aid, aid_key_nr_auth, file_id, + communication_settings, value, out card_status, out exec_time); + } + + CheckStatus(status, card_status, exec_time); + } + } +} diff --git a/uFR_AES_tester_console/bin/Debug/uFR_AES_tester_console.exe b/uFR_AES_tester_console/bin/Debug/uFR_AES_tester_console.exe deleted file mode 100644 index 599a6f83200aea310b52978a838642074dc289ef..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 52224 zcmeIb34EMY)jxioXZA@l%_MD_v`srrw`sGqNmFQ9ENL=rL$i@dXbZ(@noQf+Y&?^6 z0W3wt4O}Wx5kc7$P!Sau6cA8QM3LoHTtGmS7x(=|aDo5#ocnAunY0D<|NDJD?{C^U z&pqd!d+xdCo_p`P_j#U4`&sWJ4-t9sef3qMJ8!$f zk(a(<)%Gk^QGvFC=w495iu$!@aE;;nEWWH=3>RJLjTHGA@F%7Tos%BgehE>r{CBP< z$_)4nLvAN0o+X-N3t@uw(Wnr~Yo8`sZIO=W8Y2q2_=3PUy70R3^!{<+58eZSJZUT1 zWuWzC>U8+BGU#B31WlOh}PMNnYfPaiVy3i zlaIEvA^m=~olbvrnN^sM1C*}tQ5t;EAWHFR=s(XWdLSJ3zh`jfmUovUr@&tpC<7Xg za_liZg^%+0}Z$8;ZkF{!(u>MZL>VSLq6!;4SP9QL4<8 zaCKz`{y4hRUl1sJMJo)}gmwRDDKgHe4(JAy8#^OVR865}Ty_@9Vhlv7tUxcJIMnqQ zc>M9{%pNGLrXVWG!-snE^DTuujHf8+qcb35?kgH}C&xQa~ zyvVOZIUkoR(c%-x3;WAn@j&+=>C?~f7gd+)0WshidRHKR01VOs)-6P*T4i;Q*B9|d zd?i{W5DCWjx#WZ>;uk?PB7Rd+#Gfq+vb=NxWWjb(@|7jM)6am!E?@l3rXX%e8F_uJ zrYcUR-IyF1-L{Mib7X9A%aF`0889#f#Eu@X_dSD;#V_LW)#R7{&!vS`VUo4WP z%L=L~ung_+&>G~2INu}v5PKE)E4tMYF}HW>wVtwSZKfa2_;?(XhO1vZwDPEOW@X7y z65e4;_*e9Jmo0_+*hib7N0{4FR!~;xnSO@YwW~z)c9rPy%fte3w4zYWeDaw6>kV2a z&f;@MPw9#XJ%{m7V96~jDl7GtmHMWa`b|%Q(<~|toDmI71$ zIupJ)uQ-kgJ$!Yrd`n@_|BAOLRQqheJuiFdBk0;9mStdu9gA162OF5ItYpSc&WvLo z4i{kV!@P+3abCSl+*m~*!hh&HJg2VyH4N>a*T7!B<^iNh=JHany7<(^uPy=OR$F*{ z4rGGu`#BV!@p2BuZ!FO)?Nq5i)Elql;=wX_tKUd*{#+)oLj`GGZ)u3C7a^zL&MAl% za83{B6j0Q!1cWFWjQXOXXdn)2m~E<_MaC|t%6SmHxGWySh3Fu+8e>}gaS<8cxA}~< zx}~LyO4W^Id_yNXXb$r)ao zdZCka@&3}Gy7W!@>|!5wl0S8lMSh#%L?@YYl5cmCUv`o&ILXR@En%~hyu?Y~?j&D! zl1qbjv3@7{K_~fbC+P{)P+<}tvk0?H0zBS~B?I(v*bPA-Vo90y z!Ur*H@F+wmwu}xk=Rv7~rTR;>3;zq(3%>^tzsecaaXKiPO~LtLn^T7BL6&h)Wc(O8 zSi_f)aUZ(YACIE}#*;`I&j5@fxD30yTl~dCXG3Si(^0aN4f|^~j;VCnKp-wN>zVnAhI(dD*&#NO@iQo>rW&fAXDNbstCVIch9w0ygX!nI zAyM+4fCNV#W5ynb9rBo@0%?{f4EH$<%XU&6n^!fdN&{w=#o3mN5#xKPgU15vT|%xV zU!7GTrxT#~Try@B(ik=cP&aIxh;+P~J3!`Bk~a7#mB;q;l{S3Z$;)~dNUf*IEgGIzr;z% zM)Fgf{DCB|L zYghbvxo(XAQm&`Pe7APcdyuL zPZC8R&EP)rz}Ml;VgH(YpeO0IVNdMK1=yfyhy>w!2{IDwZsKXisFVDdll&!;)AV=^ z`{uNwEZ>}2xcX+6Ys_T260#J@M~hHbycQ)qm(9m!JYL7{jFc54w1P>W6geEFCV0)M zq@yXAw2H|%*RF47VRbyK{=A}z5LL<+8$Rq2k1S*Rlp(rQQKxZ_Em8uq!k|p*@a}0V z{MaIUv2jD)(+~?rthQ41W-`vUQ8WCDdSxRxFZPOF>Wlig$cJqns$PH?Ue=TXe<1!L zbf5&CSwoG~nD@|Guq{Ghtf`N%gbEmtq?Yj9cVjihA;;))&~QO-n@0dxKTuxl46cW(BNW7%Ve(L4(nH?v>z7j9I zxVstNw1SM=kQeliHb97bfIPJUZ!-_!5WX-$c zL2<0z0s0$EF`I2l#!a?f<{sr+Ho^F#lZ=*H>Kj{~ulnQRd!&b)rnOyfjwU5F*kYn+W#e5Excu3uDc^l=`C!tq9jTwz?nWLC#b zo@Ly^WY)q(F7?aC1TMJ>65tc_W~&1mxZ6p=S6+Qp=0ZR1)o~8aeo$6u1(z5%i(UT6 zlYz?>ue1HDdZEh|bGWXzx$=1-+jh;XFbUL}mU=vlqm*cY1XWl$dDIgoh^#Mr1QuMH zi!Y`EL;=x)d6Bw^T&LCP)iJDibFey=mlsw~uPCf8o>f>~IJ>YqIH$1MTgj{8tW;@X zNn!j1Ht2}}rM_T!F3BI9nM(?k$r(i%4kmnMSmXGN%10Q~IDufCkE0mJIRuWybvbWh zJdAURnjpruHyY-1sN!fbHV?-4xvy2|aInlus(=m$9|hnKM1z=ixJWb_m>N`dE~c_*88e+*;YcbX<4y;)V*MxJ2{;Vm_@u1Bc+zGte6y^g zE-9{BU0S+YkT4b3L{wRmbyEn#P8I-*uJ~7m=77#qKjgjXC)y0+J>cTnU z>fp?9wYLl>{?>4pbFc-j0quAyU})z^P>Uw4(>wR zJ9b3_>>hl8X}N*&q>gBS{ew@&tqkQKtD*sR5T0zZ9b`^4z#hW0PCgI8X?Nn^=ONf1 z^6`PpT|JJ&@Vr!|946}XN4>7q;U?P|s$4jQZKu zY-K7V;X$EuxaA3|+lUc&ZPGWu)*#w||r z2X<14g_qkh<*p3Ya0~+oaG3~4`B>PZ1$iuWmu;zkPrq=4CWnrB`{h=+z@eA39AmrYj@|;U)%Z5s7pmRSo0|ov)b?_WwUE8bo&8xm zdkSwVT@j|!;Y$lx?^rPmtnTj^6WoN=*k|!mN{{0<_iJ`1(+}C?9F)VE3aL7-Htp<7 zeA)l z%}>=hq+v@=$@?XncM7v&jD~49?22;kvj1u&;f zHgGoc=WXVE7MAcFd()qwk(h_p$Po$7#e(9?i~bEZ$EbwEW?Ni&agN2gZ^YuZMY&@} z9E)<7z(9PyljBs`_epWf!`iCV=Cx-w`@J?hydu|{*{t{3ta)w89#BEX-(gD}8_W3$ zR+g;$c|mH1FXIsBU-xBmD#*61ITd94GTTx4^0ZjibP8YQD7wJ5IGcFLu{bvfLq4Cy z-E-sDY_n9?{7f;{z5CJ#E49pcU}lV=>t4$0ymH`~kP7CDw{%+ETVgDVz1+#5!m>?ia7 zyoFh)A%W1dI7n23ad=uC(#dgSaAX(X zd8VNOqC+vzdXw~g8#N_|delq1a6R8c1RdqJbp%(~MEIEZE3PyS^yew<{dD78ewH{okKqq1KeuEWEsl## z<_<6N)7u5^7Wk6D`vv|);7ozPseECHpB@spNhl3-$77%@_{sv@CSJzyqe~b*w)lRS zGoW+&&x;st_VkqdXjHoxQxoPybxZ6pxo- z{~U%Nn8k3H(1WN2O{Ncd8A@-V$-gc7Y)O-i)fF%nW*gyusD!a4Cic(_#+I4bU1f}| zFtIIytu(Pm1v|mSY6Lsg#BLBN>wsyf;YG>YU}E_cc_LOj5Wn#m^`DI`iX~p!+ z;?I^O@L;?~hk!j2e|UC+zJq`4IqzS<*bneLyWjuf%yR#khnAGg20UEFu!b0Z$HVXj zp{x?h^@U6+N7^dY6r2ajvY8CuKn%|kSnT8UfQO+bl;<=~j|t^ofqxaaL^w&{7Ymu^ z0f9S?RR_;Y~GIBq!F1LO;2T>8DHCE2eXLTuQyMfYaX)`Wm5Z4KU?gftAAfU6Js6 z$^D7IEke0O;2weZi#`ts|2(Pp`$a6La0bIugmR+D^hsUoMbEWT>N^_qGjZ8QI8DmFATrlVD?TB$zbYD52>mNk`;%do@NuE^NxkO_{G7m9Qnpmm z_Y2Q=CB0JM6#}1>x~><_{Q_$WS>{{Bs&9*Ox?Adv2>oiIw@8{$*6ML8X$I%ZQHDDN zo(*W_?wP&;^cRa5UR1zvYpFn?@0Rq10&kwl^wWesy^PZz5c)MiPOqE6@V&ybLg-)h zF=fB-&lR4Fgy-*)`;Rc^{y}nMLVwQBlrNMp{DIJ)ko1d^tBZsb(w63b3~d5uJj`&1 zz-t8lHOQ0($sH4To4}F6PS7tFc#gp5qD=XDSvTNYW-{ywbo3bmu&}paW=#4Rpo%KfIQb9q9d`6h5dd^ zxPl#y{kD2Hu&x;6N9ecJ89(3LR-C_{)9;scRmz<;=K>o$9J^=H#r`neA7kDlbmO9T z`SA=BK3u~@b-$n2euZ@|c4KE{*8qBuL)j*cYl^@Yhk7 zS^M2pzxS^&^Nz$WUDogCTgXbv+hG?6E1BiSC<{Bd>_r#nxyugwaa-P$^1;Oy_;EMh z#O|#8haaJqiLGAX4PZ-QV*c{OehJA$>r!AG9VuPrm;b|mvW?BFEeM=yW3%gC^uNKz z0(FP|Yi;bO)zQFdHg;M0oItaU-9SqNtu|JrFAa3q*!;+k{7D;oYvr84RvY^p%B5`V z0Ll&6*jvh11qN;G1GF|UY-6SR+Q68NO^<90NO&o&Jy5wSu+Pr>70R7&V}mG%&=eo; z+xw?&3|wSmSC=OPm)O`H^v1xuZ0tn+je+;rSYu>&;Qcmsb7eB{K^u!}Zwy>*V>hAP zwKn#TX}beA+Sr@R#{;+6*n8Pgu?JD^NgF#2 z<({#zdrfAsb!uZ zUJfy9*otyBHugikBDliFo+_>iHrm+xDr(Dbneo#rZ_QJ?pf(LBu>56{;MK-n_^Mr$iD=rVd#m?JPdrj~X z8(X#H6G6ULsAPthyy!n{V=-Xwx3RY^{9^EO8=F!2K=8vRb~rXx@o?}O?H%)3&Jh}` z_+F6T0b-elW4FzDD)>?Delzd3Ilm3wZ0CJr&I7^En%I%pMOCi`Z@00;vck}pZR|tU zWud$6a--#yp?kDqnTU_jXn8#Jbvv(NS!3v%T9296uxxGU+jibW)uzxR+LdPBL{)F- zzwEqc7QHd_gm#CS_v1zVp&yueM`Bkk+#UL%_Cqu8s)grC)-cGZHmaJ`Ma zrQ+A2MjP7^*&II6#@ZL{2%ltQ=M;~G`PmHRpI5}s54YIZjm7T@pKfF0@vFjJHg>4^ zWO2cJY^-qpngYC_WlE`?eO34d8!Mmo@$k(ycFz3M3vRWsJ7)D3 zeAdQpi|i`6)5e~UomcRHjlBfU@7mb^fb)kowrc))1<%>o+Y#5{l`vD64`*TDt1SyT zc|VHZ@BgjM`SID87X04Eu9DDYS^H_U#hpxnk*P5W^{%*HO9|LX#N z4NlqflG%SNSZ-qnriBVmw6TZhR}`+bu>o+dx3OMucG%dB;5^gDo~T+Z%Z)myV{M*vz!hX+X5@sHuI~Si+xYN^Euks$KV(e-Y`yau) z5_BG+P$lPm-o*Ynhp{#ZERWEw(0ZrmS_v$V5G`fw<`b068`1Wio*D@ykI=<}6-)4V zgnkJN?(}Sv;PD6r7cus%iEUVLI4n3d;wFVX5j(wb+;iQ<&{g`9UByOreMXb3j2Uy+fP?mMzGs9F?P88O4##!&(9S` z7cJ}s*51Z>Z!3R4&e|@3_h@wf91W+9znRUy8Su>tjl6VcOwsui(xT%?7IYo_o3ORe z=tarC1HVpB!>^H+dKb=O`YTvaEO@fi_>kChO`T|1$GOV| zmd@c{rPx@(+Fm$Mm2xzE3Cm5khJUU(8qY4X_WTl#o$IGBh?QQMnO_215@)za)nV;X zbx^sg7s{j;SfXEv#{fcYJ zr5~HZqrdTnR_Z)iH;- zZOdixizHco==54{uGM$PM|XUqMSLT-6pt^iD}U~5qdRrE*Pti8+`s(piI3g_=%*_H z19UTBkVd>Ze$VAa@PuUzDlqkV{SvZQz}Hs$>o2S0*H+Zp!8Pjib+pbyPXK!9VzkkR zHgdnegw-%0Ee)D8+wt+USO5DtgQg$eRn2z_TV&nW7V=vBLy2%c4yZ#<4HS+IytHni zhPJ!|af_c;A#%{j;^FpQjQGdmxlDMTgV$+hpDIs#0kf`7UqB4)p_335@Y=^RD};Y8 z=(m{$NtqEPHxzI|ZGJz*ZEHRaw6|k_M{)EUO0DcW}SXv0uSd-%^bwbQtitFVX zbx30ghS=nnVv~1QvHm~8U1cBj!Fm|i(q1>u7Th`a(oE6WqPyj=wfhkNV7|>N>(H~y zGJOjoF)wLZG9CJ4ex+wNo$b$bjY^=Q1=o~tB>XY7)I%Q@eb$t4+nJ)#DTs1)N=v<` zNX(oO&i4uDDPkF>Xr$!KgXKN+4woFJus^VzKS_-G7p%ozYDCQJqlid$=QhGmEdDnm zs`Ste!ao3u`RHz>{j{;1`}$U-gLHR{=aa{g4%254As5hZkuIe9@P{JmLyZyf(rlS5 z%}eVc$4A|OevuOp2|+0vlCt5fvMf#cyhd-3h`q0pz2!dCrPFybj?S)R{XYR4I*@Zq zVM&j~y!9SY&e=NfyqBAsTecTR#$MumIlL6s_S0S1 zDFj5HV2(a4?O6Pd{L|529=aW#KXn_Y=3zOUtBVAWSjn-oyB4+*x80ki?dj-8hwktz zo16m6pw;kCAL*F4{e)LD(ds3DL8<@@(e3D+ut+Y*lKgrlunuY^;@Uk@yH{%WN$q~A zJs`CQrS_229!Bkx_0R8hmTvA`cfCim$r-Z7v2H&4AZAWH@q@k#h$eV04zq`&&*V|Y z_B_6_jy_zYM@o66MxWH^ml^|7V^A!BIBJpwrq-6%xYw)g$hCjAWcGRHKVD5H^G~G-_wWC$n($cuD$WMgnV5!WHn;s%ZgOWa1-~oYOrYj4V(3fcseyQeL^o!aC`Vi7sD(=;OL~~*hz*}Oa8kZ{9?xVlXnX75qwXtf@ zpQxzUt`kkTY(fixzJa3J$7gNUE~1~$-VUD9+5=i4boL`U{B-%1NPl+0wNmN+h7ZLCilN)q{|6BVe(>>2wRy<@9O5IRayJ zJJJgU)(HO!x&xF(x*KpceGTvw`X=CM^c}z!dJJ$QJptGzGP|T~4?PLW7J3$N8$A!W zoqh#4K)(mvO@9F#qL%^3@T;gn8Yhn@Nc$-WcmWjw9-VxL;Z{w*N+rt=Fcp^|~~+UXQi~`ft(B0o%r?>Wcu2^<{w5_2q!&dL!T*eGOnte*@q`y%{jBZv?E-+W}YT z-GGhyX28|@Ho#N#KETuToq#R+9>9(I7+{+|0obLV2e?J&Uf!m2FK^em_Xl+D{UQBA z58ws*<$#CuD*@lCUjz6K{d&O5^qT0r)*#^TFo2AMh!?0PtD881NT5``B-E_M$&Xi~gds2fn1U2mV86A0rR9*Xwyq z4`EDx6R^;8BVe(>>7E(B2$g$g0nYI>1I9cZfD1hr0meO_2CVTs?5o4B_Uyts{Px`d z;B2}WZ~8-3-OSH$A@PR`5K~M2tLaIpzm{&1>vH;< zTOyu`8;kRG-+Dr!} zKSAfpbpw5ncZ8l+y0en6n`rd{zP6LUoUff!D%Ue;zFd+DG%Duiw*8Z7^+QOaLLH%s}8@$X)W|GhL#${(h2DStUVFZowsv@_oa=^iQnA$m#d`C&Rw z_0 z>c5>9Nck_&^^*T3`m5CcWhxZ=-$|EC{@qwBxt@EdB+A$O=qaiH>$Fw!AHXcY^l#Er zQvbK;eIozc_)7;&f0*7S`H#>~MgC)SHR4CV=fCI?(eL}zA^AU`3q`*l(bJOuByE>^ zenMfvpP@bCFF&PKOSt^cC@k0KDJIt!=xy+8zvq`UL+bxEp3q|a_jDV^kKglW`i5Np zhc2pO{I8S{`7hIlq`iN~6IM)rl^TTZ(I$j1p#2!*)9)$Jt`hmvv`sO_quO2>2Q#$i zg|9+eDf(4v8|6A*+q9I&(*o^zj022I?R4lxo+a8Exh~bd1$z=+N4iU{wc7XPx?KCH zTMwZ&);#;4W_JCSFNc9qCIS$m7nPt|q^eXZ6m^GTC-4*G*U&Ds@l zz9zIA1>c~J3*M?75`2?(P~^93^-^D_HcQH%p`9T4Nv#s?BTujPvdkNswGyFk)qcPa z7kbXt9+P^{(F*4?p3-V@vPGUgtsMPLo__5dp{KPwgnyTIoA3{6&%=)7*`vKA^kMCP zgg&aR68>|wx68bj(LOBK3GI8L=RWO6qW=Ny<5JK0+BH(oo3$6E+=bc(pC#`n$DWp}$wVQRs)YC#2n%YeBK|7212CulEq|P~4w~ zaoXT@5sv7aupc)+Ep4feo~8|{hWZuM(v}?DHIg=vY+qmB+MH}~Xe%w+Dl2g!XQtX) z*Ee-1QoU_G-A!$+8#eZ&5@*(@>g%V@Yv4Rp(dv3iG^aKtwx(K=8&aF<>CC>Ni8Nj< z>)+Fz?i)xoZECNlw!x8fpW)yRPwPlB-9J9+%2T}SM~&gW@#a3ml;D)uYz&U4-C|t? zC9B8i8yrd-F1l0NsxNP5OS<1k52r`QmH5e}j>2$^lC2|I3@(#(*Hc$hOR8&AbF!X# z*LSDZ_oR|NO+CHIRHD1PvpXgIV0Lf=HMMO>B{w#uR@FDyebCTAJ)^y?BjYO@@|eFN z$NX*{%N$nMSiIThcbBjYXR*2n`OWVxZPn*08?dyEZ1eQ;Fu5WRsiF4Rj>EFSRFqAk~yB zVx66}jyl#ir+ONCQX3K-iSE{BHq7K1%_MK??(9JBrV|=hv`7Qj^{!u!+LNtkB~pnk z&51-yLS-~{we+UC+L~HBQay<+7?P7X+MBjaL2YVj=}sgue%%6@ou|pxj+Vq0C#xlq zT;Gb>x4EeslR%=oy)~I^g_13aj#g6@luD+0JK8#%H@PV;yd4urMXN9ws*B9+TkwX z&$5xFchfqkX$rGwTrk<&#SJiX*fM7(y2YfEbIk^4XPn*)4{E}z(maIDY-;OGq}H*m z(R0A^(7C(qOq6YHPqe1^UF&3eyt{8?V073lWExRRUUext+lzShaJq3%ri-+IG{Ayo!*S`vLV&gluT~! z>{etA9A>pU&7*f#65o4M3EY(`u+7cU@+EP|`HFvfoc(^7L&AmJX7-gfYT6M;9n2LG0z0HE!{*>u>e3OF9+i=zHvl@l9)4H-rT&@}OwN;jz zBXzlz7DvYdmaEBRdUA6LTM036S5wbMI=z`^@2=iWskTJN2Aj~1Ww8t2Y$8@T7jah_ zadfh|wbfd@o7*st!1gHI%ER8YQVwcy)o*g~SpCc!lZN~m4cQr8Z3v)~d1za*X>Q4l zQ%TOsuoTQ9n$=CFZAoR(+|{j~sybwFH}W*u+hNVu>oC7%a%oO>u^XSW@ zkH#Z=jAQVqwq!|h`a^AsY?IpPWNWgOoN`t_+68j@OSQadY;0(-zmNAcQyRG`ojE!i zBAVvWk)4CPCX6X1?d}`dmEM#-0N!!_J(@hV!NYPGoYpv-yu6K^GTYh#<}Kyy|B#(y zo@P-PO@~UXE4x6?fw44_$xfd7s5i+`F%rDyq_FtNj=iH73EqxNqSu;t)oK8GXE#ET zc5;qFx;B}Z)lu!lewQ|yhek7L3+Wt7kF*mk#D^cP1Bw0ZvMb{4gW8U?H1#y`#4Fmh zc9_~Bk-g0_=M9-j_;jeZV^c@xW|TUR8BY(_wRWPsnr6&^PU24$5et2NXZN~RY(r8l z*q=1_AS!D`e1%CL;aU&QC2(4VP_tWj&B!d#Vui{otk2=xJu(0@vHi0b?ylD6X4I0D z&5Jtq$YyBiRdFl!XnZ6hRkEh72u`yp=qPSSb_Q$iP^>9frc$+lxr9jYr)2W#=t7lg zRA|6cvstLC87sN$n_R@KI?PBvk?88~v`VqNG;iFL>~#~Ag|S^}U2o0$PV2H)14YlO zhE>IWX>v*T9tK;!)~?<*wP+|IEV#9YyR#$N)GT`gGlRFJ&D~qOdOFRvnhniUc~=uh zTs<(q%H;OhH1i}&x=pq)VtV*jdlUAoPLK99OVFN2d^5H{7Hd|cW&70Bz11ZK`m8$D|3IdUP~l1c^O*uv=sY zL8B3D@n#6QFe95NnLP^3Q$gM)<>a_s3juRZE^p{$e)(r`ItSGqP~fKj-6yB>CL1KL1clkF)YL_gPF0Rz5|kp#NbG3fC~*MvO@ZH z&~T=I)EFAvVJ#BPqeDYD??cFtsoRjoZH2*p-VuzAVR`D@@ut=RR}{ianJd(EIKgTpx7A4p*>9~c}@rAPX941wI90rMm>liDe_3Q$a`mPDM_Kfdlj)8K%$iXx1)7yYc@mUeQ;iQGPXM|Sq7CUEWN zn+}{X%r8 zq9j<5L&=Ozj0~iPxpd#afRWB*5Sf`c7P}WdZ}0w;QI_*gISiyxn1D z_M}}vE`#{ITL985lfyZ9&>ji>a|=0}g4`S~DnY4~&(U?#b|AO(q`g2cL(WEk5LIVJ zp(t0>lt`w=)9mu8ev=IAb@UCVm6MEcD!o75pJE%!$mg48Bo>g=4t6azH=Dg>XmrARd zx!A3_P_ZiOVk%JR2FyB52<@lSvQn7&_21 zIPPY($p-p!xX;+*Na^V_cBRMH8}K7cJ+2I^3^(-5w2^`Fol;h2)&_8LHpXkeF*wGH zhLZ`s#|DRF%gE;4FR6@^Z^`a5aLcHFd~!zf=-2^+C!>5>!()9T2b>IZ^5HsB&yK;N z!Esk^&*(bbv!b0wI-MF$56itO8nEyD%DPH}_U&4Q=O31J7=*L~t4nh5JdDkWJ#xiO zE6j_EWL_~KHm5So)VD)jaj+t|EG$+MYmpFlsS6J?!N>a0RVrzy3nu4@p^1z_G7~%A zge6ZQ>HQcgd<$DjwvG&>_jm4;IYRXtVM@XNoig~2VJ*NqK#7t5QAt>9JM`}{2Gf~t zIL_b*v%o3csJV$WEnR2&3N!X{B!&Sqk!euBM~hq2W+FMUBO^aii=|tR1_*vg@WfPG zdSuu5ZsM3EHKfw)f<2gQI!1ZX&z(Mb;JD`c)W~S6FAv+KMPn*P8Gpwi&{;30lEj+X z>&8?}lh%)^7$>bGQ!(bOCr4+?Ip(p9H!NY6G9&^bnX*R=g?Eh`RzEh4WCrc&8d0Db z3QTZB$V-ED4q=^>*6+!sH16TRXb-}OR3edTL+nSmft@x+`i3wUW`tl*jS3adgj@EG z?BG~2i@$e7NKOfp(7$_PWDgHZEdNGkci#}E)V+iK=_KM-rEVc_HHrHv_W6Ehy z4~xgQ;ta-&vN749?Fhaw4kw1Ge@}`phI!eiu4=7f%XE&A6T$On;ow!SR^TcK#t&!qO@*_&}-YKp`5VHYAeSQj9B!CjZ$ zWzpIYeL!V=vC=B(8xfuC>ocq+#>rSeXbk6MvM`Oyt+$6i{ld~}YDXUD*vZmvNVT>AX zanOmQMGThKk)5N`QEIe~iZgKMj*L>j9Bf({+?&#YX^YZ_9yM8q`}SMOp1xg);R&@? zC&x#}#9dJn0)4~Wb@CQMA}`(#bxaKJNE^hVqiTUk$Z4`k&B)ke59dOVZ=?|sUoVx$v_&m_3Q3 zNGyt20WBwL8SL9NGMX75?9af9GCiYkO~SWl6c{Okb?#JiR>mr1Ex9sHjk2rplr||_ z1zgwyTKOuPgk5=un2}-LG&ICayW2uDdymcr1dDv`4vQky`S5#vS9{By?< z3c7PK*|~O_W;BrDa3DkLCq~qX1AADKj|mXzBT_{NXPBhMql>00&mx0UmWhUh%0Ce=?SHDr;pJvS>$ z^vPtAvbnSK%;*mX0qOodD%et|7Rtw{Z){*9mF7u9_AV0{-d^I?4`GGI@NqBRh{+sM zm#pCy$qXwAjpX%}9b9%~gn(>Rjuy}x4uY;X7msc*j??JQoqRz%Mn?v)bo335)5O>q zHnnofLqntc>~vy3G9_wS$5q+)cw97V*=szcCeGhK5$RwOUf66?rGk*~li5bh<_2p+$a*vmUBeQUE|lyn(`d)2y;JJG4h2$MLo=gg9_$uP6V_V9X3qeBC!KDEZk6OC3{DUGQw zjmMyQJ2!Lyt}}LkeZdSPM-3DoOC`>ofPalkj(N(&_KZP3o$x%)hMf*d~~ zlB6`=W=vB*-eZiBffNph0S#cIc*8MGBX~1)gmwWR28HuZ!aLx!Dn@a<-MSR?T6~k> z8U{bhicvS9Bd61p6DDm9muj#}H9_89aE_qYxg-Iuad5F_*?NxC0jWXsTHxjz zgT{um48bz=Gj*@c&%^ChHS7d8Ya|j+baQj72GG`Vd`H3GhZe^G4OnPGYG4^s4(}e3 zr-x`bMw^k(+-yazWemLIR0pg}+LFQhVJu|?Es5ccv9w$$2#yj))l-`&VzzA^k8 z0<|A$OOrat!%zPWa)12i|Di9p#-NM)-vs`kdp9T@xHjXO-Afs?qhGAbt=$Q12>-af zmY=Z))Uj`!5u*f3v(31-_o3Z`;N`Ykyp~V0KkgMvq^Sn^8Q6nuG9eZn1Uv~;>J9(f zEe$+1iwt*c=X4K-bWc1-n8Sw2Nguv?N+Xn$HPp+?J8rE=*Pu@=jP@eT>oehk(81$TNyQI~+W0%=wmto&${;5_z)N`V$XSZFZ z1^m2Xu$7NeZjmbYCcB(d*G{y9B|y44Hul(D+0tE{re%k0PG0$Wu3#;=uXxP4_)T9K zw)wlk$uUM=ZgZrJ>BXaV3HJSd(;v9MVs!M9V|Gby^Kq4IRyH;4 zlG)zXk1;kPI&w5L2EBPS@CaA4oA}Lqj%Bvt%g|k-4qW^3B~OT`f>)pHnJlK(drvKC zo|A~6OOrY0I`eA`J;L#p@>gp!uK$}Ahfjn^cOBU6yONv!Ym@#N@^JwU}D z%-<#b*Mxp-1=eB7z$j0^YuJBz{k3%D6t~Z8SAbiK7Dcn8Pk0e5GL;SzU1CK%R?CF1 z{djG~I|H6AvLo3X%QW!{XYD0;j^qAtX8#eibr?ORA_k60)K0CQ)QWtPMDR^VEycf6 z!8Yd}XFKuCZmqJrgu-jIT5a9(wY5jrjdzYGh*ZmuIHuwVi{mC(9P38*D#U%0txK*1 z%CQH}EWFd$2mMs6!!ZEIJ{*y;x3V9q_;RV*u_1cvnp7&c-l=57BnIG>kM}P;=Z&Iv zwpw;i>=b=?)?pn+z{5MuL5X$Q&bcvy*kg9g)qg9*c6-1(hSD1H>QM{t!W)okz}20{ zIOjDYr!gmQrJ1)HIovM0+@|Ac0nZV~p?kC*x^r(^(kYs&Cq;9$qiC*9G(U!My#;de z+2~ZznWOvY965eDiaz7DHh1hy_D|C2Q2Qnx!%hr=*#h&gH3E3tx%XS{IZ?wrZjFX)z9w0*HH?32MC8k#YHqb! zZ0*K)hr}a|M_sm@^%&>s9D^eSo+Vf1WkudKu@#*dA*(EG+zMUP2^jm18Ut3@{9c)BVb$mP zFC$_}DJTwlI}uuR^klFR*mY-%8=}ZNZF3D=p6BZ58IQ(%cq+R?RIqwzg99 zp_^iKqUlsg7#Fu1#0hvq#^zR`WWQ^e^r5SiQ}Vz$0Jq@~uJje36z`sX% zN7}zjac!3~6HM+jOZWV>y_PQ34t>&@nkHBDT0}WU_)qzWh6T%-j@$G2&};K%?a)Q; z+28FO|30^7qfC9mr?ook)W2qYZJrfvcVJLjJ6UI-YfE|E8O6Vh3|wpeVa%BjB(lWn zdJI|EL%U~CUQ>7^xmTj2&G}Lb&S%^**pqp!;w#@jvGmK9iP^h3yB+!OeDK6(NyyVe zSlwN>rN4@FvL~~tS1xHq&br6v(&veNM{%CvoV&0!oYl{a9I;P!Yr*G*`%soARKAll zj4$uA(B>S@39OZTzMO{>@r+w0-$}F1fUNyyi}(j_7{V`kQs%jY>rt)esKA;29X-^& zI5n`<-LAF7e_nyl-+6cJl)}Cqr!WmdZ$TUIEQh(AAO~yx(d*}UkQWx`q?dPbYqtaTPad7<4_el9n-8oxu z?v+xhrF|Dpl{g~kAev$6*bYjwoHVr%Rq}+VEZhO=M)0Z=4L(bv1=+Pb+Bx?>9ZRXx z177p2^D$2GiGt&&T%WR3zB52RJ9Aq@&6qs$t+AFpTHUd`eZr8)maz|BY@LR_1}UA{ zQY=lD!=GQ5yqp-+9a_Am*5Q=GZ6T*e*k7zM=AL2TL-X7xn~wf<=o>lL%+bw}$srf- zqf}6(#;;|G+!+V;RJ!Z2`0QHXlkPs3*#dJkk8CSYb4H-ml0oEJi@h2F$5)Omkf$77 z(Y5>Wg|D7;`i+-dS+{D{XZ}jwn5G3iG17cUM5ByG80duoU#0mkTH_@uIR_k-zDSsS zT1h&H|G`keThbn_(W5mG5D5f4<zuVx81d9Vjo@lSGNASU)lht+9 ztwnsKfe4j69-;_HA&{5}t%&wA3l~QbKWdKznZGg;@dUIW8XoijM3^BI34+%L9lfYk z*TEK1)eEzZ2B5-#9@72fVGSU`;}3XQ-5_Zthu#@I^ltn{egvsGp@1LFiRcj>l}0K( zx;I9Z%pLJXd<6lo&o`rFE1IPH)in^)wNfh8{4uQ*iAW&K=HT)Xr~*`Kj8sOVy(~*Z zV@QX7k&3`fA8Q*72B8NmW`EF_U}RdL$OprjM4vuAPy#&SLt|~4?hAPECwEH%#atN- z#Q#vYuFnXRLO8b-TJt|CBdyTkFd>*n_{3OHHxejdc66~~6cy3jkT1yM@KI@nz(&%W zQ2tBjZ9B7~@!5Bx$M9Q>K?d(&P|g5%A@FP340HzQWb!hj*T=xmAiw~3*2!DIppZd~ z!F&c)3>Gk0$Y2qJ#SHML8OR%FfIo0W-enB%$7IM`!vKFIg}jFtY-iBN;93UPF}R+= z4GccPpol?)!88WN45AFi7@W(%V8DOk-8;@;g27$}`xxwJaDc&i49;h80fRR)=wfgN zgKh>%20aY$01SE0WN;&ck1_Z-gPR!K%-|vhZ((pTgSRrcgu(k5kOrVJ&>46bu(k2G zN&qwlIs-zJycz@A&M5{u0}lf>k=Mt-&mh1c$RNak|DuKW)mLA=(EBCykN3+AzQW*6 z26r*Io55EZ+{55r28HNHZ-l`d26Gvl#^4}>YZ!cl!Lm^8Ulw+kvga*9LT`!RL`X}HvHN%w@ULlMt_#F6n%Q!`9 z+-n9$gFA5djW_b@p87sSU)!)stwvSbXf8i=(u}~8r*{K~T`HpvI6v5P`fHJObWyrL z=-xc^a;=5Y+V>XO<{21|mA1*xIp|_(o=x@yO zl|KB(4}~Kc31P;CDR1f}A3gq~T zeFcP7#D@g_;}4`TF%T#Y02B6-cGLydNC;Co7=;LCA@Y&}qCbq^?MAsu6vAIHu|+7^ zro0fh0BIlEBHRI=w2w)}NJ0yU#m8hsN>me~sb+Cd1gLV7E|hYTEJjHP392ek8K*=p zC-_&{nTGlUTt5<05w4cfkis8Tt3s4PRGO7U+k(PmRwe8f(W(MOvs$)klnPAyazU=5 zn8MkVl3bQz-!uxE_TWCkdO!g;UYwoHO-Gxsl2ob=-~?iUKmluv;+&3f8KliD=}3^3 z3k3q=SLi_s*<8h3Eb1mmcp+VEicv;nM0o@^9cE@iF>04&F{d3e3~ZB~;sNmrE{Dmq zJOmJdkD^hwXe_Gih|v|r0cmY?1uB(RL{~(L#EZEiRWTRjdMkbNC?Y~sj>W-O^{-NT zL-A%o$(NdhS3DiffMo6xbP8LnLfTaU%ydysA}xAB^=aI1z7U&3)yOzTv`tU~L#&G= zm15?glp^Bd93(JLL^?Di8UUTfD8yN~Di?B>Q;0Z>RLeD^WR$%@DPmGow}wEQp_Y(`V>LN9XG&2c?>Zw>{48@3tq&% zYv;7JugQ9~bJ;%QhQ*V;!S- zmcBnNZ!GuhHt?dK2EKsCeE8Asvi$G<;;#w`$4vY=NBiaE*w=1}#Tr)Bufg$+MhkcB zIB~~`4J%gFu2|Wyy0)=D-B8;%(6_2~b>j&uRt~IcT(xTD0O9YiP@ukU1^**z*Jw^% zN214mIlIPu`|Z@djddr~)kEvZbUV|0xSM|(U^rT6rW zZ^IM)d+?Unw)B2}yJp+OPNQ}pQ=8u3H#|0!&eZm&@ZzO0R*RQF_>DEZKAG?L4YuLY zen`Um?o%+-jScLeE1q$5yp7W_2Y08gbMX3<=ua{$U(9pX(v7p}OtKJ0XaxM?z-nGP|?`Y8V0ld@O}{*05C=zY%;T?V(eK9_kK zkvtPmjidniDW)XOCe$-9eB!hoY5v^p{rxK#EJ!I?)^)AqBHVQ4m?S=X0ym!*7?7jx zVDh;K-<9LfLMhdQTs~dQAoz1m!i0f7mgusU#MKI?NP%>upnq^clY$!5a*Ib6`BHUtfz{wo#+> zRkpm`9?R{o)l#Mjt>)7%ewIqTuW+n#H9sf%l{LIj_wVn#=ajYkhlgV3o1~{!Vb-sT z;e{mm@r6^XdVAK_uC9vV<*|{0z9IaI!>LsV(wVBYZzu{Eg-_`-f94|w5hIyXt0s(* zlQR9g@e2)^+Tp=|V>E+T&oIvppVXHbuG?E*6~miDgFEq-nYDsQeGnFl*}_@}@NN;_ z6w1 - - - - - \ No newline at end of file diff --git a/uFR_AES_tester_console/bin/Debug/uFR_AES_tester_console.pdb b/uFR_AES_tester_console/bin/Debug/uFR_AES_tester_console.pdb deleted file mode 100644 index c0e2b008debccc40c53cd7b35cd64cdc16fbcc17..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 60928 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 R`6l20SCU?X`QL4U{|6%>K{EgV diff --git a/uFR_AES_tester_console/bin/Release/uFR_AES_tester_console.exe b/uFR_AES_tester_console/bin/Release/uFR_AES_tester_console.exe index 06354bbea0af6a071198eeb3515fb81ccb015a7d..d00576d0a7143ee97d6bee62592b9b8923923386 100644 GIT binary patch literal 50176 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 literal 49152 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 ZuO`!^fhG+!X`o31O&Vy@z*kEH{|^>-)dBzj diff --git a/uFR_AES_tester_console/obj/Debug/DesignTimeResolveAssemblyReferences.cache b/uFR_AES_tester_console/obj/Debug/DesignTimeResolveAssemblyReferences.cache deleted file mode 100644 index 366ad77a1e01cd111fa4d4f413c8b02a847ddd33..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 834 zcmcIiO>fjN5cTG(NtQ!?0EZy;0P4z0v}|dSR)|JjQPHB7U6o6OXDI{+ST5;~7HQj%qx%S~56!h>?Lx&Tj zkTb$Y*MHA9K@b>lG1|H5;LZsCF&;Z;!g@4Nw%v-#F?(sT&Z*!+c?w5Ixl*q{T6Jew sENegle}HV{>v0r)`{Lt_g<AE|B!hXvwDU_&c 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 diff --git a/uFR_AES_tester_console/obj/Debug/uFR_AES_tester_console.exe b/uFR_AES_tester_console/obj/Debug/uFR_AES_tester_console.exe deleted file mode 100644 index 599a6f83200aea310b52978a838642074dc289ef..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 52224 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 R`6l20SCU?X`QL4U{|6%>K{EgV diff --git a/uFR_AES_tester_console/obj/Release/uFR_AES_tester_console.csproj.CoreCompileInputs.cache b/uFR_AES_tester_console/obj/Release/uFR_AES_tester_console.csproj.CoreCompileInputs.cache index 66cc319..c1babd8 100644 --- a/uFR_AES_tester_console/obj/Release/uFR_AES_tester_console.csproj.CoreCompileInputs.cache +++ b/uFR_AES_tester_console/obj/Release/uFR_AES_tester_console.csproj.CoreCompileInputs.cache @@ -1 +1 @@ -453fe8bec60c418d166ef731e1f4ffc1a82bd2f9 +83e993bf1d84253c11ad0ec4ad701b7cbda78371 diff --git a/uFR_AES_tester_console/obj/Release/uFR_AES_tester_console.csproj.FileListAbsolute.txt b/uFR_AES_tester_console/obj/Release/uFR_AES_tester_console.csproj.FileListAbsolute.txt index a5bed4e..3de0427 100644 --- a/uFR_AES_tester_console/obj/Release/uFR_AES_tester_console.csproj.FileListAbsolute.txt +++ b/uFR_AES_tester_console/obj/Release/uFR_AES_tester_console.csproj.FileListAbsolute.txt @@ -1,7 +1,14 @@ -C:\Users\aleks\OneDrive\Desktop\VS PROJEKTI\uFR_AES_tester_console\uFR_AES_tester_console\bin\Release\uFR_AES_tester_console.exe.config -C:\Users\aleks\OneDrive\Desktop\VS PROJEKTI\uFR_AES_tester_console\uFR_AES_tester_console\bin\Release\uFR_AES_tester_console.exe -C:\Users\aleks\OneDrive\Desktop\VS PROJEKTI\uFR_AES_tester_console\uFR_AES_tester_console\bin\Release\uFR_AES_tester_console.pdb -C:\Users\aleks\OneDrive\Desktop\VS PROJEKTI\uFR_AES_tester_console\uFR_AES_tester_console\obj\Release\uFR_AES_tester_console.csprojAssemblyReference.cache -C:\Users\aleks\OneDrive\Desktop\VS PROJEKTI\uFR_AES_tester_console\uFR_AES_tester_console\obj\Release\uFR_AES_tester_console.csproj.CoreCompileInputs.cache -C:\Users\aleks\OneDrive\Desktop\VS PROJEKTI\uFR_AES_tester_console\uFR_AES_tester_console\obj\Release\uFR_AES_tester_console.exe -C:\Users\aleks\OneDrive\Desktop\VS PROJEKTI\uFR_AES_tester_console\uFR_AES_tester_console\obj\Release\uFR_AES_tester_console.pdb +C:\Users\aleks\OneDrive\Desktop\VS PROJEKTI\uFR_AES_tester_console\uFR_AES_tester_console\bin\Release\uFR_AES_tester_console.exe.config +C:\Users\aleks\OneDrive\Desktop\VS PROJEKTI\uFR_AES_tester_console\uFR_AES_tester_console\bin\Release\uFR_AES_tester_console.exe +C:\Users\aleks\OneDrive\Desktop\VS PROJEKTI\uFR_AES_tester_console\uFR_AES_tester_console\bin\Release\uFR_AES_tester_console.pdb +C:\Users\aleks\OneDrive\Desktop\VS PROJEKTI\uFR_AES_tester_console\uFR_AES_tester_console\obj\Release\uFR_AES_tester_console.csprojAssemblyReference.cache +C:\Users\aleks\OneDrive\Desktop\VS PROJEKTI\uFR_AES_tester_console\uFR_AES_tester_console\obj\Release\uFR_AES_tester_console.csproj.CoreCompileInputs.cache +C:\Users\aleks\OneDrive\Desktop\VS PROJEKTI\uFR_AES_tester_console\uFR_AES_tester_console\obj\Release\uFR_AES_tester_console.exe +C:\Users\aleks\OneDrive\Desktop\VS PROJEKTI\uFR_AES_tester_console\uFR_AES_tester_console\obj\Release\uFR_AES_tester_console.pdb +C:\Users\Projekat\Desktop\ex_add\fix v2.0\ufr-ds-examples-c_sharp-console\uFR_AES_tester_console\bin\Release\uFR_AES_tester_console.exe.config +C:\Users\Projekat\Desktop\ex_add\fix v2.0\ufr-ds-examples-c_sharp-console\uFR_AES_tester_console\bin\Release\uFR_AES_tester_console.exe +C:\Users\Projekat\Desktop\ex_add\fix v2.0\ufr-ds-examples-c_sharp-console\uFR_AES_tester_console\bin\Release\uFR_AES_tester_console.pdb +C:\Users\Projekat\Desktop\ex_add\fix v2.0\ufr-ds-examples-c_sharp-console\uFR_AES_tester_console\obj\Release\uFR_AES_tester_console.csprojAssemblyReference.cache +C:\Users\Projekat\Desktop\ex_add\fix v2.0\ufr-ds-examples-c_sharp-console\uFR_AES_tester_console\obj\Release\uFR_AES_tester_console.csproj.CoreCompileInputs.cache +C:\Users\Projekat\Desktop\ex_add\fix v2.0\ufr-ds-examples-c_sharp-console\uFR_AES_tester_console\obj\Release\uFR_AES_tester_console.exe +C:\Users\Projekat\Desktop\ex_add\fix v2.0\ufr-ds-examples-c_sharp-console\uFR_AES_tester_console\obj\Release\uFR_AES_tester_console.pdb diff --git a/uFR_AES_tester_console/obj/Release/uFR_AES_tester_console.exe b/uFR_AES_tester_console/obj/Release/uFR_AES_tester_console.exe index 06354bbea0af6a071198eeb3515fb81ccb015a7d..d00576d0a7143ee97d6bee62592b9b8923923386 100644 GIT binary patch literal 50176 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 literal 49152 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 ZuO`!^fhG+!X`o31O&Vy@z*kEH{|^>-)dBzj diff --git a/uFR_AES_tester_console/obj/x64/Debug/DesignTimeResolveAssemblyReferences.cache b/uFR_AES_tester_console/obj/x64/Debug/DesignTimeResolveAssemblyReferences.cache deleted file mode 100644 index 411204c64890699f9d200a349679b9eeeb41ab2c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 685 zcmaJfgc5Z(Bzj?2M6fP;~G05w|K3Mnm8gs9bsih>G>%Edz3*kiD=_EtOV(DF0+ z1)MnXA7Cdf1w_P3e)jG@&AfTfY`_@%VHdq=-E%Cwf7O&)p{fl(?i*S0g}@c^Txl33 z7of3G-87rnpZ z8l`t`=LvJwUJ4C5rlPs3;9RS9Q-KcYVBUNN&rXEFg^)cUW3J15e>dFL>-1Nxy)Bwg z|Ed4|&EYc|Hi}66&?E3I#PmfML13ZFpB7fq2QAuUW?jML;nm^6qv9>pprI=vd5#FJ zbsn&|Gq;#oK73MoRq)p*i{HETV}8K1;#S~0Sn`uA106++ypl2|1)B)SFrQ%muIgXE z#UGLFldw%(#CKa&dG=X3qVp=a!~iKy^tD-ocIu8X$8iR17!D{u_Vp}|zkLaBtcZfp Q9z|AW%E#$AJ7T*(0S39p*8l(j diff --git a/uFR_AES_tester_console/obj/x64/Debug/DesignTimeResolveAssemblyReferencesInput.cache b/uFR_AES_tester_console/obj/x64/Debug/DesignTimeResolveAssemblyReferencesInput.cache deleted file mode 100644 index fd61bd4f28304a728c7df95ea47dd6f8eb01e150..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6906 zcmeHM+j1I55CvV6ty#ibNxk$UpedFFkihP?+zyAzbO! zmA=QN$E>3AOz!F#*S1|JpWRL-_CQGPI-BVgJw=~nBI8-g6R_!krv$T-iCwQ|apMiN zO70;zo3+$ZeWkuuPp8e56kB5B1i5|<(vKduOv1}M3WVGIMX+WQgkE4G?=(FnAL8JL z%(C2LFt?-xyJoevPZT&bD|rulXI!Vw8#!*loWUHEn@mBsC)LWux@TEA!E88o#bLLp z#A?_!d#)|#S|-~2gepr+G(ZKzie62E+Ce4q8E-hQfGpG*x+3pLh4bspuC4gx&7Ion z+Fc*;t5rO{RNp@;VWFK;U6^K;3ow)`ILPUyshB7N6UMj&J#bgJ21x0O zEu1}9XcLB9X9$=D&r#fl&X9|m+Fp|Lo`eF_L4bp*a>BJy=_k~5Uvz7Iw`e2UsHR0C zqbNtB(Wr)Bl#!7?$BQkgz{c>z^)(a)ockTzvc? z=vq{QJB?(*mWC@VUhD0#<^R3K*4EgHv9g-pSXzeE`bH&r(>!kJRKxH?Ww36&N$oDmh;|P}_O#GpPOpkcq>q_^azJ*=`p$MK;E>6qWqnmoC%Y81LpQfi&b0fe z>5pjURr!NN0$OGk9Ln;02eN`6K{*TZP`SnYEn^L~){_nAodxVIgR4cc}u$2g0@9k z9DB@Ck3?W>!nakMAqAaYpJREP+2-o9HjBkctWN1msipKr>#IDt4V6)lHG_X9ILzil;}I=U7w7}^3NaYRBE*}%(0!oOQ2o}a9* zz98r5KBA~b2`Hj%V=%63clOa7B=tX?c?B0JFRxtr$%kiq@zr#fJsGX6+mcPe> zGxl9#C5nBiHcljuo;dMtny>aPiuu#bm8sq{?K!s2oWACcqU0WB{qneZ z&a@X;zi?W*I*-{p(_UixV5t0esOjEmfgKY;q)g|Tmc%N0Ux!5QYuxE0_i^IvbgR+6 xM-k4dYC5W}gc2}0W-t@kbKJiYAj};69}V1|cYkQlE_{R@>a^$!35 diff --git a/uFR_AES_tester_console/obj/x64/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs b/uFR_AES_tester_console/obj/x64/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs deleted file mode 100644 index e69de29..0000000 diff --git a/uFR_AES_tester_console/obj/x64/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs b/uFR_AES_tester_console/obj/x64/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs deleted file mode 100644 index e69de29..0000000 diff --git a/uFR_AES_tester_console/obj/x64/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs b/uFR_AES_tester_console/obj/x64/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs deleted file mode 100644 index e69de29..0000000 diff --git a/uFR_AES_tester_console/obj/x64/Debug/uFR_AES_tester_console.csproj.CoreCompileInputs.cache b/uFR_AES_tester_console/obj/x64/Debug/uFR_AES_tester_console.csproj.CoreCompileInputs.cache deleted file mode 100644 index 66cc319..0000000 --- a/uFR_AES_tester_console/obj/x64/Debug/uFR_AES_tester_console.csproj.CoreCompileInputs.cache +++ /dev/null @@ -1 +0,0 @@ -453fe8bec60c418d166ef731e1f4ffc1a82bd2f9 diff --git a/uFR_AES_tester_console/obj/x64/Debug/uFR_AES_tester_console.csproj.FileListAbsolute.txt b/uFR_AES_tester_console/obj/x64/Debug/uFR_AES_tester_console.csproj.FileListAbsolute.txt deleted file mode 100644 index bb3f47d..0000000 --- a/uFR_AES_tester_console/obj/x64/Debug/uFR_AES_tester_console.csproj.FileListAbsolute.txt +++ /dev/null @@ -1,7 +0,0 @@ -C:\Users\aleks\OneDrive\Desktop\VS PROJEKTI\uFR_AES_tester_console\uFR_AES_tester_console\bin\x64\Debug\uFR_AES_tester_console.exe.config -C:\Users\aleks\OneDrive\Desktop\VS PROJEKTI\uFR_AES_tester_console\uFR_AES_tester_console\bin\x64\Debug\uFR_AES_tester_console.exe -C:\Users\aleks\OneDrive\Desktop\VS PROJEKTI\uFR_AES_tester_console\uFR_AES_tester_console\bin\x64\Debug\uFR_AES_tester_console.pdb -C:\Users\aleks\OneDrive\Desktop\VS PROJEKTI\uFR_AES_tester_console\uFR_AES_tester_console\obj\x64\Debug\uFR_AES_tester_console.csprojAssemblyReference.cache -C:\Users\aleks\OneDrive\Desktop\VS PROJEKTI\uFR_AES_tester_console\uFR_AES_tester_console\obj\x64\Debug\uFR_AES_tester_console.csproj.CoreCompileInputs.cache -C:\Users\aleks\OneDrive\Desktop\VS PROJEKTI\uFR_AES_tester_console\uFR_AES_tester_console\obj\x64\Debug\uFR_AES_tester_console.exe -C:\Users\aleks\OneDrive\Desktop\VS PROJEKTI\uFR_AES_tester_console\uFR_AES_tester_console\obj\x64\Debug\uFR_AES_tester_console.pdb diff --git a/uFR_AES_tester_console/obj/x64/Debug/uFR_AES_tester_console.csprojAssemblyReference.cache b/uFR_AES_tester_console/obj/x64/Debug/uFR_AES_tester_console.csprojAssemblyReference.cache deleted file mode 100644 index 64e598722b67f51ca5939905a6c76fee0f0d1712..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 9885 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 bIl8Z1Vi^GpYnPZk^bYCn{~!D>u)zNT55>Zn diff --git a/uFR_AES_tester_console/obj/x64/Debug/uFR_AES_tester_console.pdb b/uFR_AES_tester_console/obj/x64/Debug/uFR_AES_tester_console.pdb deleted file mode 100644 index 8daf0f3f36c1d01d84834e0f261ff25155b86304..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 60928 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 J|6MKc{{S^8Y^wkO diff --git a/uFR_AES_tester_console/obj/x64/Release/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs b/uFR_AES_tester_console/obj/x64/Release/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs deleted file mode 100644 index e69de29..0000000 diff --git a/uFR_AES_tester_console/obj/x64/Release/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs b/uFR_AES_tester_console/obj/x64/Release/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs deleted file mode 100644 index e69de29..0000000 diff --git a/uFR_AES_tester_console/obj/x64/Release/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs b/uFR_AES_tester_console/obj/x64/Release/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs deleted file mode 100644 index e69de29..0000000 diff --git a/uFR_AES_tester_console/obj/x64/Release/uFR_AES_tester_console.csproj.CoreCompileInputs.cache b/uFR_AES_tester_console/obj/x64/Release/uFR_AES_tester_console.csproj.CoreCompileInputs.cache deleted file mode 100644 index 66cc319..0000000 --- a/uFR_AES_tester_console/obj/x64/Release/uFR_AES_tester_console.csproj.CoreCompileInputs.cache +++ /dev/null @@ -1 +0,0 @@ -453fe8bec60c418d166ef731e1f4ffc1a82bd2f9 diff --git a/uFR_AES_tester_console/obj/x64/Release/uFR_AES_tester_console.csprojAssemblyReference.cache b/uFR_AES_tester_console/obj/x64/Release/uFR_AES_tester_console.csprojAssemblyReference.cache deleted file mode 100644 index 711cd5f4c7645703431a0db3ddb5848f734d5211..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 14543 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 diff --git a/uFR_AES_tester_console/obj/x86/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs b/uFR_AES_tester_console/obj/x86/Debug/TemporaryGeneratedFile_036C0B5B-1481-4323-8D20-8F5ADCB23D92.cs deleted file mode 100644 index e69de29..0000000 diff --git a/uFR_AES_tester_console/obj/x86/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs b/uFR_AES_tester_console/obj/x86/Debug/TemporaryGeneratedFile_5937a670-0e60-4077-877b-f7221da3dda1.cs deleted file mode 100644 index e69de29..0000000 diff --git a/uFR_AES_tester_console/obj/x86/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs b/uFR_AES_tester_console/obj/x86/Debug/TemporaryGeneratedFile_E7A71F73-0F8D-4B9B-B56E-8E70B10BC5D3.cs deleted file mode 100644 index e69de29..0000000 diff --git a/uFR_AES_tester_console/obj/x86/Debug/uFR_AES_tester_console.csproj.CoreCompileInputs.cache b/uFR_AES_tester_console/obj/x86/Debug/uFR_AES_tester_console.csproj.CoreCompileInputs.cache deleted file mode 100644 index 4235691..0000000 --- a/uFR_AES_tester_console/obj/x86/Debug/uFR_AES_tester_console.csproj.CoreCompileInputs.cache +++ /dev/null @@ -1 +0,0 @@ -012e41b9c9b19a961975216e25ca5ac6cdea91ba diff --git a/uFR_AES_tester_console/obj/x86/Debug/uFR_AES_tester_console.csproj.FileListAbsolute.txt b/uFR_AES_tester_console/obj/x86/Debug/uFR_AES_tester_console.csproj.FileListAbsolute.txt deleted file mode 100644 index dfab48f..0000000 --- a/uFR_AES_tester_console/obj/x86/Debug/uFR_AES_tester_console.csproj.FileListAbsolute.txt +++ /dev/null @@ -1,7 +0,0 @@ -C:\Users\aleks\OneDrive\Desktop\VS PROJEKTI\uFR_AES_tester_console\uFR_AES_tester_console\bin\x86\Debug\uFR_AES_tester_console.exe.config -C:\Users\aleks\OneDrive\Desktop\VS PROJEKTI\uFR_AES_tester_console\uFR_AES_tester_console\bin\x86\Debug\uFR_AES_tester_console.exe -C:\Users\aleks\OneDrive\Desktop\VS PROJEKTI\uFR_AES_tester_console\uFR_AES_tester_console\bin\x86\Debug\uFR_AES_tester_console.pdb -C:\Users\aleks\OneDrive\Desktop\VS PROJEKTI\uFR_AES_tester_console\uFR_AES_tester_console\obj\x86\Debug\uFR_AES_tester_console.csprojAssemblyReference.cache -C:\Users\aleks\OneDrive\Desktop\VS PROJEKTI\uFR_AES_tester_console\uFR_AES_tester_console\obj\x86\Debug\uFR_AES_tester_console.csproj.CoreCompileInputs.cache -C:\Users\aleks\OneDrive\Desktop\VS PROJEKTI\uFR_AES_tester_console\uFR_AES_tester_console\obj\x86\Debug\uFR_AES_tester_console.exe -C:\Users\aleks\OneDrive\Desktop\VS PROJEKTI\uFR_AES_tester_console\uFR_AES_tester_console\obj\x86\Debug\uFR_AES_tester_console.pdb diff --git a/uFR_AES_tester_console/obj/x86/Debug/uFR_AES_tester_console.csprojAssemblyReference.cache b/uFR_AES_tester_console/obj/x86/Debug/uFR_AES_tester_console.csprojAssemblyReference.cache deleted file mode 100644 index 8a5896b2b2b1e2fbc24d16c4a69ea8613a9ba059..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 1913 zcmcJP+iuf95Qd$D(;Nzf^QnN5xBxX;B?>78DMAn$wW3soL=_hiXk(9wm9;nQZbHjr z@&sIQ#XG=^Q&MCs?rh1w*Y>CVXJ&WD%2}563om-owVp@$@FsAT)Y3QX ztS1#ToFh;=kWshQVJ+5V&4$yP3o}>HjbLsR7Y*ldJ{E!d8cv3C3Q>35Z2KMmiQj5@ zohEN{o6PQ~dkjvrfpB2B0ir5?ARvA#Y%G6a6heS&Fa*tZxt!q~NS_oBojz7YI}eYyw;qk& zfe#8I7n~PbLx`0JJz5oa)JGn^NHra?gPq~o+u||XVy#iAU8zJcW}XlwDvg(k&8iLx zVy7}XO|o=)9}2b~M4w}~3c7vF(v6B&MH4qm6H1AUXscvey8|$6*O*!CwvKK=CTXqq zDC-R-TrKU+q1_@AyVEWBiW|;I24HrM4Mfz;be!sW^v-nq$KJSvbvoU&DJvI9>Ll^e zzeJf;W>O<&y^9 tN`jPg8hASiQeD!(jU-65O9SsDL8@;WcsB{s8l-{uk|3>98t5dz+HWa-AiDqn diff --git a/uFR_AES_tester_console/obj/x86/Debug/uFR_AES_tester_console.exe b/uFR_AES_tester_console/obj/x86/Debug/uFR_AES_tester_console.exe deleted file mode 100644 index d0f937034394f7f06f2fd7e98820e1cc7e3fd68e..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 51200 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 Y!2;h#pon&!bMpU$#{T~{7Fytc18;QMdjJ3c diff --git a/uFR_AES_tester_console/obj/x86/Debug/uFR_AES_tester_console.pdb b/uFR_AES_tester_console/obj/x86/Debug/uFR_AES_tester_console.pdb deleted file mode 100644 index 099444e20ed86b3a5ed940a8b724197d75cc913d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 60928 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 R(A)yeEzsNo|6MKc{{RG;Y?lB4 -- GitLab