c# - que - se requiere zip
¿Sugerencias para una biblioteca.NET barata/gratuita para hacer Zip con encriptación AES? (5)
Estoy tratando de encontrar un componente de compresión zip y encriptación con cifrado adecuado para el uso del Gobierno Federal de los EE. UU. , Por lo que no puedo usar el cifrado Zip 2.0, tiene que ser AES o similar. Ya he encontrado SharpZipLib (no se puede hacer AES encyrption), y Chilkat (puede hacer cifrado AES, pero cuesta dinero). ¿Me falta alguna otra opción?
¿Qué hay de 7-Zip ? Es de código abierto bajo LGPL (por lo que debe ser utilizable en su proyecto) y de acuerdo con la especificación es compatible con ZIP con encriptación AES.
Echa un vistazo a este artículo impresionante en Stream Pipeline . No solo define una forma genial de vincular las transmisiones entre sí de manera multiproceso, el ejemplo utilizado es la compresión seguida del cifrado.
Si el dinero es un gran problema, puede tomar una biblioteca de código abierto como esta http://www.codeplex.com/DotNetZip , que ahora tiene soporte AES
¿Cuánto estaría dispuesto a pagar por AES en DotNetZip? ;)
DotNetZip es compatible con AES Encryption, con claves de 128 o 256 bits.
http://www.codeplex.com/DotNetZip
Código de ejemplo:
using (ZipFile zip = new ZipFile())
{
zip.AddFile("ReadMe.txt"); // no password for this entry
// use a password for subsequent entries
zip.Password= "This.Encryption.is.FIPS.197.Compliant!";
zip.Encryption= EncryptionAlgorithm.WinZipAes256;
zip.AddFile("Rawdata-2008-12-18.csv");
zip.Save("Backup-AES-Encrypted.zip");
}
Los archivos zip encriptados AES producidos por DotNetZip pueden ser leídos y extraídos por WinZip, y viceversa.
También puede simplemente crear archivos zip regulares sin cifrado.
oh, y es gratis.
Puede usar #ZipLib ( https://icsharpcode.github.io/SharpZipLib/ ), que es una alternativa ligera a DotNetZipLib.
Ofrece la clase FastZip, que reduce la compresión de una carpeta en el HDD con encriptación AES a 2-3 líneas de código.
Vea la wiki para referencia: https://github.com/icsharpcode/SharpZipLib/wiki/FastZip
Si necesita más funciones, #ZipLib se vuelve un poco más complicado que DotNetZipLib, pero este último creó archivos ZIP corruptos en mi caso, así que uso SharpZipLib de todos modos.