none
Criptare e Decriptare file in C# Windows Form RRS feed

  • Discussione generale

  • Ciao a tutti. Nel mio programma C# Windows form vorrei creare un'interfaccia capace di criptare e decriptare file. Ho provato a cercare un po' in internet ma non sono riuscito a trovare nulla di utile e vorrei chiedere il vostro aiuto, siccome con Visual Studio sono alle prime armi e non so bene come si possa criptare dei file. Mi servirebbe poichè sto creando una specie di File Explorer con il tool "WebBrowser", che in teoria sarebbe un vero e proprio browser però su C#, anche se io lo uso per visualizzare File e cartelle del sistema operativo. Vorrei inoltre chiedervi se è fattibile criptare un file che viene selezionato dal "webBrowser" così da evitare di creare troppi form inutili e difficili da usare. Se non mi sono spiegato bene chiedetemi di riformulare il problema. Grazie mille a tutti!
    lunedì 3 giugno 2019 20:20

Tutte le risposte

  • Prova a leggere questo articolo e vedi se ti può dare una mano.

    http://www.sabrinacosolo.com/crittografare-e-decrittografare-dati-in-c/

    saluti


    Sabrina C. - http://www.dotnetwork.it

    venerdì 7 giugno 2019 16:47
  • Ti aggiungo anche questo che spiega anche la crittografia con il metodo AES

    http://www.sabrinacosolo.com/due-metodi-helper-per-la-crittografia-aes/


    Sabrina C. - http://www.dotnetwork.it

    venerdì 7 giugno 2019 16:52
  • Dai un'occhiata a questo.

            public static void CriptaFile(string sInputFilename, string sOutputFilename, string sKey)
            {
                FileStream fsInput = new FileStream(sInputFilename, FileMode.Open, FileAccess.Read);
    
                FileStream fsEncrypted = new FileStream(sOutputFilename, FileMode.Create, FileAccess.Write);
                DESCryptoServiceProvider DES = new DESCryptoServiceProvider();
                DES.Key = ASCIIEncoding.ASCII.GetBytes(sKey);
                DES.IV = ASCIIEncoding.ASCII.GetBytes(sKey);
                ICryptoTransform desencrypt = DES.CreateEncryptor();
                CryptoStream cryptostream = new CryptoStream(fsEncrypted,desencrypt,CryptoStreamMode.Write);
    
                byte[] bytearrayinput = new byte[fsInput.Length];
                fsInput.Read(bytearrayinput, 0, bytearrayinput.Length);
                cryptostream.Write(bytearrayinput, 0, bytearrayinput.Length);
                cryptostream.Close();
                fsInput.Close();
                fsEncrypted.Close();
            }
    

    lunedì 10 giugno 2019 10:52