Exemplo n.º 1
0
        public static void Main(string[] args)
        {
            WorkWithFileClass    workWithFileClass    = new WorkWithFileClass();
            WorkWithConsoleClass workWithConsoleClass = new WorkWithConsoleClass();
            EncryptionClass      encryptionClass      = new EncryptionClass();

            var inputMessage = workWithFileClass.ReadFile();

            int m = workWithFileClass.GetAlphabetLength();

            int n = workWithConsoleClass.ReadNFromConsole();

            while (encryptionClass.GCD(n, m) != 1)
            {
                n = workWithConsoleClass.ReadAnotherNFromConsole();
            }

            int k = workWithConsoleClass.ReadKFromConsole();

            var numCodeOfAlphabet = workWithFileClass.GetNumCodeOfAlphabet();

            var encryptedMessage = encryptionClass.Encryption(inputMessage, numCodeOfAlphabet, n, k, m);
            var decryptedMessage = encryptionClass.Decryption(encryptedMessage, numCodeOfAlphabet, k, n, m);

            workWithFileClass.OutputResultToFile(encryptedMessage, decryptedMessage);
        }
Exemplo n.º 2
0
        public static void Main(string[] args)
        {
            WorkWithConsoleClass       workWithConsoleClass       = new WorkWithConsoleClass();
            WorkWithFileClass          workWithFileClass          = new WorkWithFileClass();
            EncryptionClass            encryptionClass            = new EncryptionClass();
            CongruentialGeneratorClass congruentialGeneratorClass = new CongruentialGeneratorClass();

            int a          = workWithConsoleClass.InputA();
            int c          = workWithConsoleClass.InputC();
            int startValue = workWithConsoleClass.InputStartValue();
            int m          = workWithConsoleClass.InputM();

            var inputFile                      = workWithFileClass.ReadFile();
            var keyWord                        = congruentialGeneratorClass.CongruentialGenerator(a, c, m, startValue, inputFile.Length);
            var binaryCodeOfAlphabet           = workWithFileClass.GetBinaryCodeOfAlphabet();
            var decimalCodeAndLetterOfAlphabet = workWithFileClass.GetDecimalCodeAndLetterOfAlphabet();

            var encryptedMessage =
                encryptionClass.Encryption(inputFile, keyWord, binaryCodeOfAlphabet, decimalCodeAndLetterOfAlphabet);

            var decryptedMessage = encryptionClass.Decryption(encryptedMessage, keyWord, binaryCodeOfAlphabet,
                                                              decimalCodeAndLetterOfAlphabet);

            workWithFileClass.OutputResultToFile(encryptedMessage, decryptedMessage);
        }
Exemplo n.º 3
0
        public static void Main(string[] args)
        {
            WorkWithFileClass workWithFileClass = new WorkWithFileClass();
            EncryptionClass   encryptionClass   = new EncryptionClass();

            var keyPairs = encryptionClass.CreateKeyPairs(workWithFileClass.ReadAlphabetFile());

            var encryptedMessage =
                encryptionClass.Encryption(workWithFileClass.ReadFile(), keyPairs);

            var decryptedMessage =
                encryptionClass.Decryption(encryptedMessage, keyPairs);

            workWithFileClass.OutputResultToFile(encryptedMessage, decryptedMessage);
        }
Exemplo n.º 4
0
        public static void Main(string[] args)
        {
            WorkWithFileClass workWithFileClass = new WorkWithFileClass();
            WorkWithConsole   workWithConsole   = new WorkWithConsole();
            EncryptionClass   encryptionClass   = new EncryptionClass();

            var keyWord = workWithConsole.InputKeyWordFromConsole();

            var encryptedMessage =
                encryptionClass.Encryption(workWithFileClass.ReadFile(), keyWord, workWithFileClass.CreateVigenereTableFromFile());

            var decryptedMessage =
                encryptionClass.Decryption(encryptedMessage, keyWord, workWithFileClass.CreateVigenereTableFromFile());

            workWithFileClass.OutputResultToFile(encryptedMessage, decryptedMessage);
        }