예제 #1
0
        //Reakce na vstup uživatele
        static void makeResponseForChoice()
        {
            Console.Write("Zadejte vstup: ");
            string choice = Console.ReadLine();

            switch (choice)
            {
            //Reakce na vstup uživatele, vytváření nového profilu
            case "1":
                Console.WriteLine(Environment.NewLine + "Nyní vytváříte nový profil");
                //vytvoření nového objektu
                CipherSettings cipherSettings = new CipherSettings();
                Console.Write("Zadejte název profilu: ");
                cipherSettings.name = Console.ReadLine();
                //SQL select na databázi zdali nebyl vytvořen učet se stejným jménom
                var cipherSettingsResult = DatabaseFactory.DatabaseCipherSettings.SelectByName(cipherSettings.name).Result;
                //počet záznamků, pokud není nula spustí konzoli znovu
                if (cipherSettingsResult.Count() != 0)
                {
                    Console.WriteLine("účet s tímto jménem byl již vytvořen");
                    RunConsole();
                }

                Console.Write("Zadejte frázi pro generování šifry: ");
                cipherSettings.hashphrase = Console.ReadLine();
                //funkce na uložení nového nastavení
                CipherSettings.CreateNewSettings(cipherSettings);
                Console.WriteLine("Úspěšně vytvořen záznam" + Environment.NewLine);
                break;

            //Dešifrování záznamu
            case "2":

                Cipher cipher = new Cipher();
                Console.Write("Zadejte název profilu pro dešifrování záznamu: ");
                cipherSettings      = new CipherSettings();
                cipherSettings.name = Console.ReadLine();
                //sql select, musí nalézt profil
                cipherSettingsResult = DatabaseFactory.DatabaseCipherSettings.SelectByName(cipherSettings.name).Result;
                if (cipherSettingsResult.Count() == 0)
                {
                    Console.WriteLine("Nebyl nalezen zadaný profil, prosím nejprve ho vytvořte");
                    RunConsole();
                }

                Console.Write("Zadejte cestu k souboru: ");
                cipher.path = Console.ReadLine();
                //kontrola zadaného vstupu, zdali soubor existuje
                CheckFilePath(cipher.path);
                cipher.cryptedText = File.ReadAllText(cipher.path);
                //dešifrování textu
                cipher.text = Cipher.TextEncryption(cipher.cryptedText, cipherSettingsResult[0].index);
                Console.WriteLine("Dešifrovaný text: {0}", cipher.text);
                break;

            //šifrování zadaného textu
            case "3":
                Console.Write("Zadejte název profilu pro šifrování záznamu: ");
                cipherSettings      = new CipherSettings();
                cipherSettings.name = Console.ReadLine();
                //sql select profilu pro dešifrování
                cipherSettingsResult = DatabaseFactory.DatabaseCipherSettings.SelectByName(cipherSettings.name).Result;
                if (cipherSettingsResult.Count() == 0)
                {
                    Console.WriteLine("Nebyl nalezen zadaný profil, prosím nejprve ho vytvořte");
                    RunConsole();
                }
                Console.Write("Zadejte šifrovaný text: ");
                cipher      = new Cipher();
                cipher.text = Console.ReadLine();
                Console.Write("Přejete si uložit text do souboru? Y/N : ");

                bool decision = DecisionMaker(Console.ReadLine());
                //šifrování textu
                cipher.cryptedText = Cipher.TextEncryption(cipher.text, cipherSettingsResult[0].index, true);
                if (decision)
                {
                    //uloží soubor s aktualním časem do hlavní složky
                    Console.WriteLine("Soubor uložen zde:" + System.AppDomain.CurrentDomain.BaseDirectory + DateTime.Now.ToString("dd-MM-yyyy_H-mm-ss") + ".txt");
                    File.WriteAllText(@System.AppDomain.CurrentDomain.BaseDirectory + DateTime.Now.ToString("dd-MM-yyyy_H-mm-ss") + ".txt", cipher.cryptedText);
                }
                else
                {
                    Console.Write("Šifrovaný text: ");
                    Console.WriteLine(cipher.cryptedText);
                }
                break;

            case "4":
                //vypsání šifrovacích nastavení
                cipherSettingsResult = DatabaseFactory.DatabaseCipherSettings.Select().Result;
                for (int i = 0; i < cipherSettingsResult.Count; i++)
                {
                    Console.WriteLine("Jméno: {0}, hashovací fráze: {1}, hash: {2}, index {3}",
                                      cipherSettingsResult[i].name,
                                      cipherSettingsResult[i].hashphrase,
                                      cipherSettingsResult[i].hash,
                                      cipherSettingsResult[i].index);
                }
                break;

            default:
                Console.WriteLine("Nezvolil jste správně");
                Console.WriteLine();
                Main(null);
                break;
            }
        }
예제 #2
0
 public Task <int> SaveItemAsync(CipherSettings item)
 {
     return(database.InsertAsync(item));
 }
예제 #3
0
        static void makeResponseForChoice()
        {
            Console.Write("Zadejte vstup: ");
            string choice = Console.ReadLine();

            switch (choice)
            {
            case "1":
                Console.WriteLine(Environment.NewLine + "Nyní vytváříte nový profil");

                CipherSettings cipherSettings = new CipherSettings();
                Console.Write("Zadejte název profilu: ");
                cipherSettings.name = Console.ReadLine();
                var cipherSettingsResult = DatabaseFactory.DatabaseCipherSettings.SelectByName(cipherSettings.name).Result;
                if (cipherSettingsResult.Count() != 0)
                {
                    Console.WriteLine("účet s tímto jménem byl již vytvořen");
                    RunConsole();
                }

                Console.Write("Zadejte frázi pro generování šifry: ");
                cipherSettings.hashphrase = Console.ReadLine();

                CipherSettings.CreateNewSettings(cipherSettings);
                Console.WriteLine("Úspěšně vytvořen záznam" + Environment.NewLine);
                break;

            case "2":

                Cipher cipher = new Cipher();
                Console.Write("Zadejte název profilu pro dešifrování záznamu: ");
                cipherSettings       = new CipherSettings();
                cipherSettings.name  = Console.ReadLine();
                cipherSettingsResult = DatabaseFactory.DatabaseCipherSettings.SelectByName(cipherSettings.name).Result;
                if (cipherSettingsResult.Count() == 0)
                {
                    Console.WriteLine("Nebyl nalezen zadaný profil, prosím nejprve ho vytvořte");
                    RunConsole();
                }

                Console.Write("Zadejte cestu k souboru: ");
                cipher.path = Console.ReadLine();
                CheckFilePath(cipher.path);
                cipher.cryptedText = File.ReadAllText(cipher.path);
                cipher.text        = Cipher.TextEncryption(cipher.cryptedText, cipherSettingsResult[0].index);

                Console.WriteLine("Dešifrovaný text: {0}", cipher.text);


                break;

            case "3":
                Console.Write("Zadejte název profilu pro šifrování záznamu: ");
                cipherSettings       = new CipherSettings();
                cipherSettings.name  = Console.ReadLine();
                cipherSettingsResult = DatabaseFactory.DatabaseCipherSettings.SelectByName(cipherSettings.name).Result;
                if (cipherSettingsResult.Count() == 0)
                {
                    Console.WriteLine("Nebyl nalezen zadaný profil, prosím nejprve ho vytvořte");
                    RunConsole();
                }
                Console.Write("Zadejte šifrovaný text: ");
                cipher      = new Cipher();
                cipher.text = Console.ReadLine();
                Console.Write("Přejete si uložit text do souboru? Y/N : ");

                bool decision = DecisionMaker(Console.ReadLine());
                cipher.cryptedText = Cipher.TextEncryption(cipher.text, cipherSettingsResult[0].index, true);
                if (decision)
                {
                    Console.WriteLine("Soubor uložen zde:" + System.AppDomain.CurrentDomain.BaseDirectory + DateTime.Now.ToString("dd-MM-yyyy_H-mm-ss") + ".txt");
                    File.WriteAllText(@System.AppDomain.CurrentDomain.BaseDirectory + DateTime.Now.ToString("dd-MM-yyyy_H-mm-ss") + ".txt", cipher.cryptedText);
                }
                else
                {
                    Console.Write("Šifrovaný text: ");
                    Console.WriteLine(cipher.cryptedText);
                }
                break;

            case "4":
                cipherSettingsResult = DatabaseFactory.DatabaseCipherSettings.Select().Result;
                for (int i = 0; i < cipherSettingsResult.Count; i++)
                {
                    Console.WriteLine("Jméno: {0}, hashovací fráze: {1}, hash: {2}, index {3}",
                                      cipherSettingsResult[i].name,
                                      cipherSettingsResult[i].hashphrase,
                                      cipherSettingsResult[i].hash,
                                      cipherSettingsResult[i].index);
                }
                break;

            default:
                Console.WriteLine("Nezvolil jste správně");
                Console.WriteLine();
                Main(null);
                break;
            }
        }