Position actuelle: Accueil> Derniers articles> Tutoriel sur la mise en œuvre du chiffrement et du décryptage du package de compression ZIP à l'aide de PHP Ziparchive

Tutoriel sur la mise en œuvre du chiffrement et du décryptage du package de compression ZIP à l'aide de PHP Ziparchive

gitbox 2025-07-17

introduire

Ziparchive est une bibliothèque étendue fournie par PHP pour le traitement des packages de compression de format Zip. Il prend en charge non seulement les opérations de base de la création, de la lecture et de la mise à jour des packages compressés, mais permet également le traitement du cryptage et du décryptage des packages compressés en définissant des mots de passe pour assurer la confidentialité et la sécurité des données.

Créer un package comprimé cryptographique

Pour créer un fichier zip crypté, il est principalement divisé en étapes suivantes.

Ouvrez le fichier zip et définissez le mot de passe

Tout d'abord, instanciez la classe Ziparchive et ouvrez le fichier zip en mode Création via la méthode Open () , puis appelez SetPassword () pour définir le mot de passe du package compressé.

$ zip = new Ziparchive ();
$ zip-> open ('pinpted.zip', ziparchive :: create);
$ zip-> setpassword ('mot de passe');

Le code ci-dessus crée un package compressé appelé encrypted.zip et définit le mot de passe d'accès sur le mot de passe .

Ajouter des fichiers au package compressé

Une fois le fichier zip ouvert avec succès et le mot de passe, vous pouvez utiliser la méthode addFile () pour ajouter le fichier cible au package compressé.

$ file = 'example.txt';
$ zip-> addFile (fichier $);

Ici, nous ajoutons le fichier Exemple.txt local au package Zip chiffré.

Fermez le package compressé

Après avoir ajouté le fichier, assurez-vous de fermer le package compressé à l'aide de la méthode Close () pour terminer l'opération d'écriture.

$ zip-> close ();

À ce stade, un package compressé contenant le fichier chiffré a été généré.

Décrypter le package compressé

Lorsqu'il est nécessaire d'extraire le contenu du package Zip crypté, vous pouvez également le lire et le décrypter via Ziparchive.

Ouvrez et définissez le mot de passe de décryptage

Ouvrez le package compressé à l'aide de Ziparchive :: Mode de lecture et définissez le mot de passe de décryptage correct via la méthode SetPassword () .

$ zip = new Ziparchive ();
$ zip-> open ('pinpted.zip', ziparchive :: read);
$ zip-> setpassword ('mot de passe');

Assurez-vous que le mot de passe que vous définissez est cohérent lorsque vous avez créé le package compressé, sinon le déchiffrement échouera.

Extraire le contenu des fichiers

Une fois le décryptage réussi, utilisez la méthode extractto () pour extraire le fichier dans le répertoire spécifié.

$ destination = 'extrait /';
$ zip-> extractto ($ destination);

Le fichier sera complètement extrait dans le répertoire extrait / .

Fermez le package compressé

Une fois l'extraction de fichiers terminée, la méthode close () est également nécessaire pour fermer le package compressé.

$ zip-> close ();

Cela complète le déchiffrement et l'extraction du paquet comprimé chiffré.

Résumer

À l'aide de l'extension ziparchive de PHP, nous pouvons facilement implémenter les opérations de chiffrement et de décryptage des packages ZIP compressés. Dans les projets réels, cette capacité peut être utilisée pour le stockage et la transmission de fichiers sensibles, et le traitement du cryptage peut effectivement empêcher les données d'accès illégalement. La définition du mot de passe via la méthode SetPassword () et l'extraction du fichier via la méthode extractto () peuvent réaliser le processus complet de traitement de chiffrement de la compression à la décompression. Il s'agit d'un outil pratique pour gérer la sécurité des packages compressés en développement.