示例#1
0
        public VigenereBreaker(string alphabet, double[] frequencies)
        {
            if (alphabet == null || frequencies == null)
            {
                throw new Exception("Missing argument.");
            }

            if (alphabet.Length != frequencies.Length)
            {
                throw new Exception("Incorrect arguments.");
            }

            _alphabet    = alphabet;
            _frequencies = frequencies;

            _vigenereEncryption = new VigenereEncryption(alphabet);
        }
示例#2
0
        static void Main()
        {
            _textGenerator      = new TextGenerator();
            _keyGenerator       = new KeyGenerator(Alphabet.Eng);
            _vigenereEncryption = new VigenereEncryption(Alphabet.Eng);
            _vigenereBreaker    = new VigenereBreaker(Alphabet.Eng, AlphabetFrequency.Eng);

            using (StreamWriter streamWriter = new StreamWriter("text.csv"))
            {
                ExperimentTextLength(streamWriter);
            }

            using (StreamWriter streamWriter = new StreamWriter("key.csv"))
            {
                ExperimentKeyLength(streamWriter);
            }

            Console.WriteLine("Done.");
            Console.ReadKey();
        }
 public void Setup()
 {
     _encryptor = new VigenereEncryption(Alphabet);
 }