Пример #1
0
        private void Open_Click(object sender, RoutedEventArgs e)
        {
            Microsoft.Win32.OpenFileDialog dialog = new Microsoft.Win32.OpenFileDialog();
            dialog.FileName   = "Document";                    // Default file name
            dialog.DefaultExt = "text";                        // Default file extension
            dialog.Filter     = "Text documents (.txt)|*.txt"; // Filter files by extension

            Nullable <bool> result = dialog.ShowDialog();

            if (result == true)
            {
                try
                {
                    var newItems = ReadWriteFile.ReadFile(dialog.FileName);

                    InputDataGrid.Matches.Clear();

                    foreach (var item in newItems)
                    {
                        InputDataGrid.Matches.Add(item);
                    }
                }
                catch (Exception ex)
                {
                    MessageBox.Show("Error: " + ex.Message);
                }
            }
        }
Пример #2
0
        static void Main()
        {
            string filePath = @"..\..\TestFile.txt";


            List <Game> TestList = new List <Game>()
            {
                new Football(3, Countries.France, DateTime.Now, new Match("team", "other team")),
                new Volleyball(3, Countries.France, DateTime.Now, new Match("team", "other team")),
                new Tennis(3, Countries.France, DateTime.Now, new Match("team", "other team")),
                new Football(3, Countries.France, DateTime.Now, new Match("team", "other team")),
            };

            TestList.SaveFile(filePath);

            TestList = null;

            var newList = ReadWriteFile.ReadFile(filePath);

            foreach (var item in newList)
            {
                Console.WriteLine(item);
            }



            Console.ReadLine();
        }
Пример #3
0
        private static void WorkWithOneFile()
        {
            Console.WriteLine("1 - Зашифровать один файл\n");
            Console.WriteLine("2 - Расшифровать один файл\n");
            string selection = Console.ReadLine();

            string path;

            switch (selection)
            {
            case "1":
                using (Aes myAes = Aes.Create())
                {
                    Console.WriteLine("Введите полное имя файла(с указанием пути)");
                    path = Console.ReadLine();
                    CheckPath.СhekedPathToFile(ref path);

                    byte[] encrypted;
                    try
                    {
                        if (ReadWriteFile.ReadFile(path).Length != 0)
                        {
                            // Encrypt the string to an array of bytes.
                            encrypted = CifherAes.EncryptBytes_Aes(ReadWriteFile.ReadFile(path),
                                                                   myAes.Key,
                                                                   myAes.IV);
                            ReadWriteFile.WriteFile(path, encrypted);
                        }
                        else
                        {
                            Console.WriteLine("файл " + path + "пустой ");
                        }

                        Console.WriteLine("\nВведите полное имя файла для хранения ключа (с указанием пути)");
                        path = Console.ReadLine();
                        CheckPath.СhekedPathToFile(ref path);
                        ReadWriteFile.WriteFile(path, myAes.Key);
                        Console.WriteLine("Ключ  ");
                        foreach (var value in myAes.Key)
                        {
                            Console.Write(value);
                        }
                        Console.WriteLine();

                        Console.WriteLine("Введите полное имя файла для хранения вектора инициаизации  (с указанием пути)");
                        path = Console.ReadLine();
                        CheckPath.СhekedPathToFile(ref path);
                        ReadWriteFile.WriteFile(path, myAes.IV);
                        Console.WriteLine("Вектор инициализации {0}");
                        foreach (var value in myAes.IV)
                        {
                            Console.Write(value);
                        }
                    }
                    catch (Exception e)
                    {
                        Console.WriteLine(e);
                    }
                }
                break;

            case "2":
                Console.WriteLine("Введите полное имя файла(с указанием пути)");
                path = Console.ReadLine();
                CheckPath.СhekedPathToFile(ref path);

                byte[] decripted;
                try
                {
                    Console.WriteLine("Введите полное имя ключа(с указанием пути)");
                    string pathToKey = Console.ReadLine();
                    CheckPath.СhekedPathToFile(ref path);
                    Console.WriteLine("Ключ  ");
                    foreach (var value in ReadWriteFile.ReadFile(pathToKey))
                    {
                        Console.Write(value);
                    }

                    Console.WriteLine();

                    Console.WriteLine("Введите полное имя вектора инициализации (с указанием пути)");
                    string pathToIV = Console.ReadLine();
                    CheckPath.СhekedPathToFile(ref path);
                    foreach (var value in ReadWriteFile.ReadFile(pathToIV))
                    {
                        Console.Write(value);
                    }

                    // Encrypt the string to an array of bytes.
                    if (ReadWriteFile.ReadFile(path).Length != 0)
                    {
                        decripted = CifherAes.DecryptBytes_Aes(ReadWriteFile.ReadFile(path),
                                                               ReadWriteFile.ReadFile(pathToKey),
                                                               ReadWriteFile.ReadFile(pathToIV));

                        ReadWriteFile.WriteFile(path, decripted);
                    }
                    else
                    {
                        Console.WriteLine("файл " + path + "пустой. с ним нельзя работать");
                    }
                }
                catch (Exception e)
                {
                    Console.WriteLine(e);
                }
                break;

            default:
                Console.WriteLine("Вы нажали неизвестную букву");
                break;
            }
        }
Пример #4
0
        private static void WorkWithFolderOrDisk()
        {
            Console.Clear();

            Console.WriteLine("1 - Зашифровать папку или диск\n");
            Console.WriteLine("Помниет что ключ и вектор инициализации хранить отдельно от пути объекта шифрации");
            Console.WriteLine("2 - Расшифровать папку или диск\n");
            string selection = Console.ReadLine();

            switch (selection)
            {
            case "1":
                using (Aes myAes = Aes.Create())
                {
                    Console.WriteLine("Введите полное имя папки(с указанием пути)");
                    string path = Console.ReadLine();
                    CheckPath.СhekedPathToDirectory(ref path);

                    byte[] encrypted;
                    try
                    {
                        foreach (var i in GettFiles.LookIn(path))
                        {
                            Console.WriteLine(i);
                            // Encrypt the string to an array of bytes.
                            if (ReadWriteFile.ReadFile(i).Length != 0)
                            {
                                encrypted = CifherAes.EncryptBytes_Aes(ReadWriteFile.ReadFile(i), myAes.Key, myAes.IV);
                                ReadWriteFile.WriteFile(i, encrypted);
                            }
                            else
                            {
                                Console.WriteLine("файл " + i + " пустой");
                            }
                        }
                        GettFiles.LookIn(path).Clear();

                        Console.WriteLine("\nВведите полное имя файла для хранения ключа (с указанием пути)");
                        path = Console.ReadLine();
                        CheckPath.СhekedPathToFile(ref path);

                        ReadWriteFile.WriteFile(path, myAes.Key);
                        Console.WriteLine("Ключ  ");
                        foreach (var value in myAes.Key)
                        {
                            Console.Write(value);
                        }
                        Console.WriteLine();

                        Console.WriteLine("Введите полное имя файла для хранения вектора инициаизации  (с указанием пути)");
                        path = Console.ReadLine();
                        CheckPath.СhekedPathToFile(ref path);
                        ReadWriteFile.WriteFile(path, myAes.IV);
                        Console.WriteLine("Вектор инициализации {0}");
                        foreach (var value in myAes.IV)
                        {
                            Console.Write(value);
                        }
                    }
                    catch (Exception e)
                    {
                        Console.WriteLine(e);
                    }
                }

                break;

            case "2":
                using (Aes myAes = Aes.Create())
                {
                    Console.WriteLine("Введите полное имя папки или диска (с указанием пути)");
                    string path = Console.ReadLine();
                    CheckPath.СhekedPathToDirectory(ref path);

                    byte[] decripted;
                    try
                    {
                        Console.WriteLine("Введите полное имя ключа(с указанием пути)");
                        string pathToKey = Console.ReadLine();
                        CheckPath.СhekedPathToFile(ref pathToKey);
                        Console.WriteLine("Ключ  ");
                        foreach (var value in ReadWriteFile.ReadFile(pathToKey))
                        {
                            Console.Write(value);
                        }
                        Console.WriteLine();

                        Console.WriteLine("Введите полное имя вектора инициализации (с указанием пути)");
                        string pathToIV = Console.ReadLine();
                        CheckPath.СhekedPathToFile(ref pathToKey);
                        foreach (var value in ReadWriteFile.ReadFile(pathToIV))
                        {
                            Console.Write(value);
                        }

                        // Encrypt the string to an array of bytes.
                        foreach (var i in GettFiles.LookIn(path))
                        {
                            Console.WriteLine(i);
                            // Encrypt the string to an array of bytes.
                            if (ReadWriteFile.ReadFile(i).Length != 0)
                            {
                                decripted = CifherAes.DecryptBytes_Aes(ReadWriteFile.ReadFile(i),
                                                                       ReadWriteFile.ReadFile(pathToKey),
                                                                       ReadWriteFile.ReadFile(pathToIV));
                                ReadWriteFile.WriteFile(i, decripted);
                            }
                            else
                            {
                                Console.WriteLine("файл пустой,  " + i + " с ним нельзя работать ");
                            }
                        }
                        GettFiles.LookIn(path).Clear();
                    }
                    catch (Exception e)
                    {
                        Console.WriteLine(e);
                    }
                }

                break;

            default:
                Console.WriteLine("Вы нажали неизвестную  команду");
                break;
            }
        }