예제 #1
0
        public void Operar()
        {
            var valida = false;

            switch (Extension)
            {
            case "txt":

                CesarCif = new CifradoCesar(PalabraClave, NombreArchivo, RutaAbsolutaArchivo, RutaAbsolutaServer);

                valida = CesarCif.ValidarClave(PalabraClave.ToCharArray());
                if (valida)
                {
                    CesarCif.Cifrar();
                }
                break;

            case "cif":

                CesarDescif = new DescifradoCesar(PalabraClave, NombreArchivo, RutaAbsolutaArchivo, RutaAbsolutaServer);

                valida = CesarDescif.ValidarClave(PalabraClave.ToCharArray());
                if (valida)
                {
                    CesarDescif.Descifrar();
                }
                break;
            }
        }
예제 #2
0
 public ActionResult Clave(CesarViewModel cesar)
 {
     try
     {
         // TODO: Add insert logic here
         if (ModelState.IsValid)
         {
             var listaClave = new List <byte>();
             foreach (var item in cesar.ClaveDiccionario)
             {
                 if (!listaClave.Contains(Convert.ToByte(item)))
                 {
                     listaClave.Add(Convert.ToByte(item));
                 }
                 else
                 {
                     return(View(cesar));
                 }
             }
             //Mandar a llamar al metodo para cifrar
             var path = Path.Combine(Server.MapPath("~/Archivo"), cesar.NombreArchivo);
             FilePath = Server.MapPath("~/Archivo");
             CifradoCesar cifradocesar = new CifradoCesar();
             cifradocesar.Cifrar(cesar.NombreArchivo, path, FilePath, listaClave);
             return(RedirectToAction(nameof(ArchivoCifrado)));
         }
         else
         {
             return(View(cesar));
         }
     }
     catch
     {
         return(RedirectToAction(nameof(ArchivoCifrado)));
     }
 }