Пример #1
0
        static void Main(string[] args)
        {
            Console.WriteLine("\t\t\t\t\t\t\t- LAB 6 -\n\nKevin Romero 1047519\nJosé De León 1072619");

            RSA_Algorithm rsa        = new RSA_Algorithm();
            Parameters    parameters = new Parameters()
            {
                p = 9601, q = 8731
            };
            string texto = "Mejor que buscar la verdad sin método es no pensar nunca en ella, porque los estudios desordenados y las meditaciones oscuras turban las luces naturales de la razón y ciegan la inteligencia. -René Descártes";

            Console.WriteLine("\nTEXTO ORIGINAL          \n" + texto);


            parameters = rsa.GetKey(parameters);
            Console.WriteLine("\n-------- RSA -------------------------------------------------------------------------------------------------------");

            Console.WriteLine("KEY\nValor n: " + parameters.n + "\nValor D: " + parameters.d + "\nValor E: " + parameters.e);


            Console.WriteLine("\nTEXTO CIFRADO");
            byte[] result_encrypt1 = rsa.Encrypt(parameters, ConvertToByte(texto));
            Console.WriteLine(ConvertToChar(result_encrypt1));


            Console.WriteLine("\nTEXTO DESCIFRADO");
            byte[] result_Decrypt = rsa.Decrypt(parameters, result_encrypt1);
            Console.WriteLine(ConvertToChar(result_Decrypt));


            Console.ReadLine();
        }
Пример #2
0
        public void GeyKeys(string path, string p, string q)
        {
            Parameters parameters = new Parameters();

            try
            {
                if (File.Exists($"{path}/../keys.zip"))
                {
                    File.Delete($"{path}/../keys.zip");
                }
                if (File.Exists(path + "\\public.key"))
                {
                    File.Delete(path + "\\public.key");
                }
                if (File.Exists(path + "\\private.key"))
                {
                    File.Delete(path + "\\private.key");
                }

                parameters.p = int.Parse(p);
                parameters.q = int.Parse(q);
                RSA_Algorithm keys = new RSA_Algorithm();
                parameters = keys.GetKey(parameters);;

                FileStream publickeys = new FileStream((path + "\\public.key"), FileMode.Create);
                publickeys.Close();
                FileStream privatekeys = new FileStream((path + "\\private.key"), FileMode.Create);
                privatekeys.Close();

                using (StreamWriter writer = new StreamWriter(path + "\\public.key"))
                {
                    writer.WriteLine(parameters.n);
                    writer.WriteLine(parameters.e);
                }

                using (StreamWriter writer = new StreamWriter(path + "\\private.key"))
                {
                    writer.WriteLine(parameters.n);
                    writer.WriteLine(parameters.d);
                }
            }
            catch (Exception)
            {
                throw;
            }
        }