Passer au contenu du pied de page
UTILISER IRONZIP

Comment Créer Un Fichier Zip En C# Avec Mot De Passe

Les fichiers ZIP sont largement utilisés pour compresser et archiver des données, ce qui facilite le transfert et le stockage de grands ensembles de fichiers. Cependant, il existe des scénarios où une sécurité supplémentaire est essentielle, d'où l'importance des fichiers ZIP protégés par mot de passe. La protection par mot de passe garantit que seules les personnes autorisées peuvent accéder et extraire le contenu de l'archive ZIP, ajoutant une couche supplémentaire de sécurité aux données sensibles.

Dans cet article, nous allons explorer comment créer un fichier ZIP protégé par mot de passe en utilisant C# et la bibliothèque IronZIP. IronZIP est une puissante bibliothèque d'archives ZIP en C# qui simplifie le processus de travail avec les fichiers ZIP dans les applications .NET.

Comment créer un fichier ZIP en C# avec une protection par mot de passe

  1. Créez un projet C# dans Visual Studio
  2. Installer la bibliothèque IronZIP à partir du gestionnaire de paquets NuGet
  3. Créer un objet d'archive ZIP vide en utilisant la classe IronZipArchive
  4. Ajouter une protection par mot de passe en utilisant la méthode Encrypt
  5. Ajouter des fichiers à l'objet archive en utilisant la méthode Add
  6. Exporter l'archive ZIP en utilisant la méthode SaveAs

Introduction à la bibliothèque IronZIP

Comment zipper un fichier en C# avec mot de passe : Figure 1 - Page web IronZIP

IronZIP est une bibliothèque d'archives ZIP en C# de premier plan conçue pour créer, lire et extraire des archives dans .NET. Il offre une API conviviale qui permet aux développeurs d'intégrer facilement des fonctionnalités de gestion d'archives dans leurs projets .NET. Avec la prise en charge de divers formats d'archives, y compris ZIP, TAR, GZIP et BZIP2, IronZIP fournit une solution complète pour gérer facilement les fichiers zip.

Caractéristiques détaillées d'IronZIP

Compatibilité

  • Prend en charge .NET 8, 7, 6, 5, Core, Standard et Framework.
  • Compatible avec les langages C#, VB.NET et F#.
  • Support multiplateforme pour Windows, Linux, Mac, iOS, Android, Docker, Azure et AWS.
  • Intégration avec les IDE populaires tels que Microsoft Visual Studio et JetBrains ReSharper & Rider.

Génération et édition d'archives

  • Supporte les formats d'archives ZIP, TAR, GZIP et BZIP2.
  • Créer, importer et exporter des fichiers ZIP.
  • Protection par mot de passe pour les fichiers ZIP en utilisant des paramètres de chiffrement traditionnels, AES128 ou AES256.
  • Compression personnalisée avec 9 niveaux. Fournit la meilleure réduction de taille.
  • Gérer les entrées de fichiers au sein des archives, y compris l'ajout, l'extraction et la suppression.

Installation

  • Installation rapide et facile via le gestionnaire de paquets NuGet ou la console du gestionnaire de paquets.
  • Intégration avec les binaires signés DigiCert pour une certification binaire sécurisée.

Étapes pour créer un projet console C# dans Visual Studio

Passons en revue les étapes pour créer un projet console C# dans Visual Studio et utiliser IronZIP pour protéger un fichier zip avec un mot de passe.

  1. Ouvrez Visual Studio.
  2. Créer un nouveau projet d'application console C#.
  3. Nommez votre projet et choisissez un emplacement.

Comment zipper un fichier en C# avec mot de passe : Figure 2 - Configurer le nom et l'emplacement du projet

  1. Dans Informations supplémentaires, sélectionnez la dernière version du .NET Framework. IronZIP prend en charge le dernier Framework .NET 8.0.
  2. Cliquez sur " Créer " pour générer le projet.

Installation d'IronZIP

Pour utiliser IronZIP dans votre projet, vous devez installer la bibliothèque. Vous pouvez le faire soit en utilisant le gestionnaire de paquets NuGet, soit la console du gestionnaire de paquets.

Utilisation du gestionnaire de packages NuGet

  1. Cliquez avec le bouton droit sur votre projet dans l'Explorateur de solutions.
  2. Sélectionnez "Gérer les packages NuGet..."
  3. Recherchez "IronZIP" et cliquez sur "Installer."

Comment zipper un fichier en C# avec mot de passe : Figure 3 - Installation d'IronZIP avec le gestionnaire de paquets NuGet

Utilisation de la console du gestionnaire de packages

  1. Ouvrir la console du gestionnaire de paquets.
  2. Exécuter la commande suivante :

    Install-Package IronZip

Étapes pour protéger par mot de passe un fichier ZIP

Maintenant qu'IronZIP est installé, vous pouvez procéder à la protection par mot de passe d'un fichier zip en utilisant la bibliothèque.

Importation des bibliothèques requises

using IronZip;
using IronZip.Enum;
using IronZip;
using IronZip.Enum;
Imports IronZip
Imports IronZip.Enum
$vbLabelText   $csharpLabel

Ces lignes importent les espaces de noms nécessaires de la bibliothèque IronZIP : IronZip contient les principales classes et fonctionnalités, tandis que IronZip.Enum inclut les énumérations utilisées dans la bibliothèque.

Classe principale du programme

class Program
{
    static void Main()
    {
        // Code execution starts here
    }
}
class Program
{
    static void Main()
    {
        // Code execution starts here
    }
}
Friend Class Program
	Shared Sub Main()
		' Code execution starts here
	End Sub
End Class
$vbLabelText   $csharpLabel

Ceci est la classe principale du programme avec la méthode Main où l'exécution du code commence.

Création d'une archive ZIP vide

using (var archive = new IronZipArchive(9)) 
{ 
     // Code within the 'using' block 
}
using (var archive = new IronZipArchive(9)) 
{ 
     // Code within the 'using' block 
}
Using archive = New IronZipArchive(9)
	 ' Code within the 'using' block 
End Using
$vbLabelText   $csharpLabel

L'instruction using garantit que l'objet IronZipArchive est correctement détruit après son utilisation. Elle crée une nouvelle instance de IronZipArchive avec le niveau de compression le plus élevé (9).

Protection par mot de passe de l'archive ZIP

La ligne de code suivante ajoute une protection par mot de passe à l'archive ZIP :

archive.Encrypt("P@ssw0rd", EncryptionMethods.Traditional);
archive.Encrypt("P@ssw0rd", EncryptionMethods.Traditional);
IRON VB CONVERTER ERROR developers@ironsoftware.com
$vbLabelText   $csharpLabel

La méthode Encrypt est appelée sur l'objet archive pour protéger le fichier ZIP par mot de passe. Elle prend deux paramètres : la chaîne de caractères pour le mot de passe ("P@ssw0rd") et la méthode de chiffrement (EncryptionMethods.Traditional).

IronZIP fournit également des protections par mot de passe avancées AES128 et AES256 qui sont plus sécurisées et empêchent la manipulation des fichiers ZIP.

Ajout de fichiers à l'archive ZIP

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

La méthode Add est utilisée pour ajouter des fichiers à l'archive ZIP. Dans cet exemple, un fichier texte et un fichier image (file1.txt et image1.png) situés dans le répertoire "./assets/" sont ajoutés à l'archive.

Voici les fichiers à ajouter :

Comment zipper un fichier en C# avec mot de passe : Figure 4 - Comment les fichiers ajoutés apparaissent dans le fichier ZIP

Exportation de l'archive ZIP

archive.SaveAs("output.zip");
archive.SaveAs("output.zip");
archive.SaveAs("output.zip")
$vbLabelText   $csharpLabel

La méthode SaveAs est appelée pour exporter l'archive ZIP. Elle spécifie le nom de fichier de sortie comme "output.zip". Cela crée le fichier ZIP protégé par mot de passe avec le contenu et le mot de passe spécifiés.

Visitez la page des exemples de code pour en savoir plus sur comment créer, lire, extraire et effectuer d'autres opérations liées aux fichiers ZIP en C# utilisant IronZIP.

Voici le code source complet avec des chemins de chaîne séparés et une propriété de mot de passe pour un meilleur contrôle :

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");
        }
    }
}
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");
        }
    }
}
Imports IronZip
Imports IronZip.Enum

Friend Class Program
	Shared Sub Main()
		' Define password and file paths for the ZIP archive
		Dim password As String = "P@ssw0rd"
		Dim filename As String = "./assets/file1.txt"
		Dim imagename As String = "./assets/image1.png"

		' Create a new ZIPArchive with the highest compression level
		Using 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")
		End Using
	End Sub
End Class
$vbLabelText   $csharpLabel

Sortie

Après avoir exécuté le programme, vous aurez un fichier unique protégé par mot de passe nommé "output.zip" dans votre répertoire de projet, contenant les fichiers spécifiés.

Comment zipper un fichier en C# avec mot de passe : Figure 5 - Fenêtre contextuelle de fichier ZIP protégé par mot de passe demandant un mot de passe

Conclusion

Dans cet article, nous avons exploré l'importance des fichiers ZIP protégés par mot de passe et présenté la bibliothèque IronZIP comme une solution puissante pour gérer les archives ZIP dans les projets C#. Nous avons couvert les caractéristiques détaillées d'IronZIP, y compris la compatibilité, la génération d'archives, les capacités d'édition et les étapes d'installation facile. La bibliothèque prend en charge les méthodes de chiffrement traditionnelles et avancées pour protéger les fichiers contre toute altération. Enfin, nous avons passé en revue les étapes pour créer un projet console C# dans Visual Studio, installer IronZIP et protéger par mot de passe un fichier ZIP.

IronZIP simplifie le processus de travail avec les fichiers ZIP dans les applications C#, fournissant aux développeurs un ensemble d'outils robuste pour la gestion et la sécurité des archives. Incorporer IronZIP dans vos projets vous permet d'améliorer la protection des données lorsque vous traitez des informations sensibles dans des archives ZIP. Pour des informations plus détaillées sur IronZIP et ses capacités, veuillez visiter la page de documentation officielle.

IronZIP offre un essai gratuit pour une utilisation prolongée. Son package lite commence à partir de $799.

Questions Fréquemment Posées

Comment créer un fichier ZIP protégé par mot de passe en C# ?

Vous pouvez utiliser la bibliothèque IronZIP pour créer un fichier ZIP protégé par mot de passe en C#. Tout d'abord, installez la bibliothèque via NuGet, puis créez un objet IronZipArchive, utilisez la méthode Encrypt pour ajouter un mot de passe, ajoutez des fichiers à l'archive, et sauvegardez l'archive avec SaveAs.

Quelles sont les options de cryptage disponibles pour sécuriser les fichiers ZIP ?

IronZIP propose des méthodes de cryptage traditionnel, AES128 et AES256 pour sécuriser les fichiers ZIP. Ces options offrent différents niveaux de sécurité pour protéger les données sensibles au sein des archives ZIP.

IronZIP est-il compatible avec plusieurs versions de .NET ?

Oui, IronZIP est compatible avec .NET 8, 7, 6, 5, Core, Standard et Framework, ce qui en fait un choix polyvalent pour les développeurs travaillant sur différents environnements .NET.

Comment puis-je installer IronZIP dans mon projet ?

Vous pouvez installer IronZIP à l'aide du gestionnaire de packages NuGet dans Visual Studio. Recherchez 'IronZip' dans le gestionnaire de packages et ajoutez-le à votre projet pour commencer à gérer les fichiers ZIP.

IronZIP peut-il être utilisé avec d'autres langages de programmation que C# ?

Oui, IronZIP est compatible avec VB.NET et F# en plus de C#, permettant aux développeurs de l'utiliser dans diverses applications .NET.

Quelles étapes sont nécessaires pour configurer une application console C# pour la gestion des fichiers ZIP ?

Pour configurer une application console C# pour la gestion des fichiers ZIP avec IronZIP, créez un nouveau projet console dans Visual Studio, installez IronZIP via NuGet, et suivez la documentation de la bibliothèque pour ajouter des fonctionnalités de gestion de fichiers ZIP.

Quels sont les principaux avantages de l'utilisation d'IronZIP pour gérer les fichiers ZIP ?

IronZIP simplifie la gestion des fichiers ZIP en fournissant une API facile à utiliser, un support multiplateforme et des fonctionnalités telles que la protection par mot de passe et la prise en charge de plusieurs formats d'archives, améliorant à la fois la fonctionnalité et la sécurité des données.

Comment la protection par mot de passe améliore-t-elle la sécurité d'un fichier ZIP ?

La protection par mot de passe garantit que seules les personnes autorisées peuvent accéder au contenu d'un fichier ZIP, ajoutant une couche de sécurité essentielle aux données sensibles stockées dans l'archive.

Curtis Chau
Rédacteur technique

Curtis Chau détient un baccalauréat en informatique (Université de Carleton) et se spécialise dans le développement front-end avec expertise en Node.js, TypeScript, JavaScript et React. Passionné par la création d'interfaces utilisateur intuitives et esthétiquement plaisantes, Curtis aime travailler avec des frameworks modernes ...

Lire la suite