Exemplo n.º 1
0
        public ActionResult Keys(int p, int q)
        {
            RsaUtils      rsaUtils = new RsaUtils();
            List <string> files    = new List <string>();

            if (rsaUtils.GenerateKeys(p, q, ref files))
            {
                string temp    = Server.MapPath("~/App_Data/RSA-Keys/temp/");
                string archive = Server.MapPath("~/App_Data/RSA-Keys/archive.zip");
                if (Directory.Exists(temp))
                {
                    Directory.Delete(temp, true);
                    Directory.CreateDirectory(temp);
                }
                else
                {
                    Directory.CreateDirectory(temp);
                }
                if (System.IO.File.Exists(archive))
                {
                    System.IO.File.Delete(archive);
                }
                foreach (string file in files)
                {
                    System.IO.File.Copy(file, temp + Path.GetFileName(file));
                }
                ZipFile.CreateFromDirectory(temp, archive);
                return(File(archive, "application/zip", "keys.zip"));
            }
            else
            {
                ViewBag.Message = "Bad Keys";
                return(View("Index"));
            }
        }