USANDO O IRONZIP

Como compactar um arquivo em C# com senha

Curtis Chau
Curtis Chau
Updated: 21 de abril de 2026

Arquivos ZIP são amplamente utilizados para compactar e arquivar dados, tornando mais fácil transferir e armazenar grandes conjuntos de arquivos. No entanto, há cenários em que segurança adicional é essencial, levando à importância de arquivos zip protegidos por senha. Proteção por senha garante que apenas indivíduos autorizados possam acessar e extrair o conteúdo do arquivo ZIP, adicionando uma camada extra de segurança para dados sensíveis.

Neste artigo, exploraremos como criar um arquivo ZIP protegido por senha usando C# e a biblioteca IronZIP. O IronZIP é uma poderosa biblioteca de arquivos ZIP em C# que simplifica o processo de trabalho com arquivos ZIP em aplicações .NET.

Como Criar um Arquivo ZIP em C# com Proteção por Senha

  1. Crie um projeto C# no Visual Studio
  2. Instale a Biblioteca IronZIP a partir do Gerenciador de Pacotes NuGet
  3. Crie um objeto de arquivo ZIP vazio usando a Classe IronZipArchive
  4. Adicione proteção por senha usando o método Encrypt
  5. Adicione arquivos ao objeto de arquivo usando o método Add
  6. Exporte o arquivo ZIP usando o método SaveAs

Introdução à Biblioteca IronZIP

Como Comprimir Arquivo em C# Com Senha: Figura 1 - página da IronZIP

IronZIP é uma biblioteca de arquivo ZIP em C# líder, projetada para criar, ler e extrair arquivos no .NET. Ela oferece uma API fácil de usar que permite que os desenvolvedores incorporem facilmente a funcionalidade de gerenciamento de arquivos em seus projetos .NET. Com suporte para vários formatos de arquivo, incluindo ZIP, TAR, GZIP e BZIP2, o IronZIP fornece uma solução abrangente para manipular arquivos zip com facilidade.

Recursos Detalhados do IronZIP

Compatibilidade

  • Suporta .NET 8, 7, 6, 5, Core, Standard, e Framework.
  • Compatível com linguagens C#, VB.NET, e F#.
  • Suporte multiplataforma para Windows, Linux, Mac, iOS, Android, Docker, Azure, e AWS.
  • Integração com IDEs populares como Microsoft Visual Studio e JetBrains ReSharper & Rider.

Geração e Edição de Arquivos

  • Suporta formatos de arquivo ZIP, TAR, GZIP, e BZIP2.
  • Criar, importar, e exportar arquivos ZIP.
  • Proteção por senha para arquivos ZIP usando configurações de criptografia tradicional, AES128, ou AES256.
  • Compressão personalizada com 9 níveis. Fornece a melhor redução de tamanho.
  • Gerenciar entradas de arquivo dentro dos arquivos, incluindo adicionar, extrair, e excluir.

Instalação

  • Instalação rápida e fácil via Gerenciador de Pacotes NuGet ou Console do Gerenciador de Pacotes.
  • Integração com Binaries Assinados pela DigiCert para certificação binária segura.

Passos para Criar um Projeto de Console C# no Visual Studio

Vamos passar pelos passos para criar um projeto de console C# no Visual Studio e usar o IronZIP para proteger um arquivo zip com senha.

  1. Abra o Visual Studio.
  2. Crie um novo projeto de Aplicativo de Console C#.
  3. Nomeie seu projeto e escolha um local.

Como Comprimir Arquivo em C# Com Senha: Figura 2 - Configurando o nome e a localização do projeto

  1. Na Informações Adicionais, selecione a última versão do .NET Framework. IronZIP suporta a mais recente versão 8.0 do .NET Framework.
  2. Clique em "Criar" para gerar o projeto.

Instalando o IronZIP

Para usar o IronZIP em seu projeto, você precisa instalar a biblioteca. Você pode fazer isso usando o Gerenciador de Pacotes NuGet ou o Console do Gerenciador de Pacotes.

Usando o Gerenciador de Pacotes NuGet

  1. Clique com o botão direito no seu projeto no Solution Explorer.
  2. Selecione "Gerenciar Pacotes NuGet..."
  3. Procure por "IronZIP" e clique em "Instalar".

Como Comprimir Arquivo em C# Com Senha: Figura 3 - Instalando o IronZIP com o Gerenciador de Pacotes NuGet

Usando o Console do Gerenciador de Pacotes

  1. Abra o Console do Gerenciador de Pacotes.

  2. Execute o seguinte comando:

    PM > Install-Package IronZip

Passos para Proteger um Arquivo Zip com Senha

Agora que o IronZIP está instalado, você pode prosseguir para proteger um arquivo zip com senha usando a biblioteca.

Importando Bibliotecas Necessárias

using IronZip;
using IronZip.Enum;

Essas linhas importam os namespaces necessários da biblioteca IronZIP: IronZip contém as principais classes e funcionalidades, enquanto IronZip.Enum inclui enums usados na biblioteca.

Classe Principal do Programa

class Program
{
    static void Main()
    {
        // Code execution starts here
    }
}

Esta é a classe principal do programa com o método Main onde a execução do código começa.

Criando um Arquivo ZIP Vazio

using (var archive = new IronZipArchive(9)) 
{ 
     // Code within the 'using' block 
}

A declaração using garante que o objeto IronZipArchive seja descartado corretamente após o uso. Cria uma nova instância de IronZipArchive com o nível de compressão mais alto (9).

Protegendo o Arquivo ZIP com Senha

A seguinte linha única de código adiciona proteção por senha ao arquivo ZIP:

archive.Encrypt("P@ssw0rd", EncryptionMethods.Traditional);

O método Encrypt é chamado no objeto archive para proteger por senha o arquivo ZIP. Ele recebe dois parâmetros: a string de senha ("P@ssw0rd") e o método de criptografia (EncryptionMethods.Traditional).

O IronZIP também oferece proteção avançada por senha AES128 e AES256, que é mais segura e previne a manipulação de arquivos ZIP.

Adicionando Arquivos ao Arquivo ZIP

archive.Add("./assets/file1.txt");
archive.Add("./assets/image1.png");

O método Add é usado para adicionar arquivos ao arquivo ZIP. Neste exemplo, um arquivo de texto e um arquivo de imagem (file1.txt e image1.png) localizados no diretório "./assets/" são adicionados ao arquivo.

Estes são os arquivos a serem adicionados:

Como Comprimir Arquivo em C# Com Senha: Figura 4 - Como os arquivos adicionados aparecem no arquivo ZIP

Exportando o Arquivo ZIP

archive.SaveAs("output.zip");

O método SaveAs é chamado para exportar o arquivo ZIP. Ele especifica o nome do arquivo de saída como "output.zip". Isso cria o arquivo ZIP protegido por senha com o conteúdo especificado e senha.

Visite a página de exemplos de código para saber mais sobre como criar, ler, extrair e realizar outras operações relacionadas a arquivos ZIP em C# usando o IronZIP.

Aqui está o código-fonte completo com caminhos de string separados e uma propriedade de senha para melhor controle:

using IronZip;
using IronZip.Enum;

class Program
{
    static void Main()
    {
        // Define password and file paths for the ZIP archive
        string password = "P@ssw0rd";
        string filename = "./assets/file1.txt";
        string imagename = "./assets/image1.png";
        
        // Create a new ZIPArchive with the highest compression level
        using (var archive = new IronZipArchive(9))
        {
            // Add Password to protect the ZIP (Support AES128 & AES256)
            archive.Encrypt(password, EncryptionMethods.Traditional);
            
            // Add files to the archive
            archive.Add(filename);
            archive.Add(imagename);
            
            // Export the Encrypted ZIP file archive
            archive.SaveAs("output.zip");
        }
    }
}

Saída

Após executar o programa, você terá um arquivo único protegido por senha chamado "output.zip" em seu diretório de projeto, contendo os arquivos especificados.

Como Comprimir Arquivo em C# Com Senha: Figura 5 - Popup de arquivo ZIP protegido por senha solicitando uma senha

Conclusão

Neste artigo, exploramos a importância dos arquivos ZIP protegidos por senha e apresentamos a biblioteca IronZIP como uma solução poderosa para lidar com arquivos ZIP em projetos C#. Cobrimos os recursos detalhados do IronZIP, incluindo compatibilidade, geração de arquivos, capacidades de edição e passos fáceis de instalação. A biblioteca suporta métodos de criptografia tradicionais e avançados para proteger os arquivos contra adulteração. Finalmente, passamos pelos passos para criar um projeto de console em C# no Visual Studio, instalar o IronZIP e proteger com senha um arquivo ZIP.

O IronZIP simplifica o processo de trabalhar com arquivos ZIP em aplicações C#, fornecendo aos desenvolvedores um conjunto de ferramentas robusto para o gerenciamento e a segurança de arquivos. Incorporar isso em seus projetos permite aumentar a proteção de dados ao lidar com informações sensíveis nos arquivos ZIP. Para mais informações detalhadas sobre o IronZIP e suas capacidades, por favor visite a página oficial de documentação.

IronZIP oferece um teste gratuito para uso prolongado. Seu pacote lite começa a partir de $999.

Curtis Chau é bacharel em Ciência da Computação (Universidade Carleton) e se especializa em desenvolvimento front-end, com experiência em Node.js, TypeScript, JavaScript e React. Apaixonado por criar interfaces de usuário intuitivas e esteticamente agradáveis, Curtis gosta de trabalhar com frameworks modernos e criar manuais bem estruturados e visualmente atraentes.

Leia mais

Artigos relacionados