Twitter iPhone pliant OnePlus 11 PS5 Disney+ Orange Livebox Windows 11

Zip

14 réponses
Avatar
Kloug
Bonjour,
Y a t il un moyen de prot=E9ger un fichier
compress=E9 par un mot de passe ?
Je ne vois rien =E0 ce sujet dans la doc
des modules.
Merci de vos pistes
K

10 réponses

1 2
Avatar
Jean-Charles Gibier
Kloug a écrit :
Bonjour,
Y a t il un moyen de protéger un fichier
compressé par un mot de passe ?
Je ne vois rien à ce sujet dans la doc
des modules.
Merci de vos pistes
K





Ce n'est pas a proprement parler un problème lié Perl et la question
n'est pas très claire :
Voulez vous compresser ET crypter un fichier (ou le contenu d'un
répertoire) ?
Ou voulez vous simplement crypter un fichier résultant d'un logiciel de
compression ?
Voulez vous gérer un type de compression particulier (gzip, winzip etc.)

En tout état de cause rien ne vous empêche de créer votre solution en
mixant les modules de la famille Compress qui vous permettront de
compresser avec l'algorithme de votre choix (Zlib, LZf etc.)
avec ceux de la famille "Crypt" qui vous permet de choisir le mode
d'encryption pour protéger le résultat fournit par le premier module.
Avatar
espie
In article <490c51cb$0$954$,
Jean-Charles Gibier <jcgibier.invalid> wrote:
Kloug a écrit :
Bonjour,
Y a t il un moyen de protéger un fichier
compressé par un mot de passe ?
Je ne vois rien à ce sujet dans la doc
des modules.
Merci de vos pistes
K





Ce n'est pas a proprement parler un problème lié Perl et la question
n'est pas très claire :
Voulez vous compresser ET crypter un fichier (ou le contenu d'un
répertoire) ?
Ou voulez vous simplement crypter un fichier résultant d'un logiciel de
compression ?
Voulez vous gérer un type de compression particulier (gzip, winzip etc.)



Moi ca m'a paru clair et lie a perl, au contraire.

J'ai l'impression qu'il veut savoir si les modules relatifs aux archives
standards (zip) savent gerer des archives protegees par mot de passe.

Dans la doc que j'ai sous la main pour Archive::Zip (version 1.26),
c'est tres clair:

isEncrypted()
Return true if this member is encrypted. The
Archive::Zip module does not currently create or
extract encrypted members.
Avatar
Pioche Encore
Marc Espie a écrit :
In article <490c51cb$0$954$,
Jean-Charles Gibier <jcgibier.invalid> wrote:
Kloug a écrit :
Bonjour,
Y a t il un moyen de protéger un fichier
compressé par un mot de passe ?
Je ne vois rien à ce sujet dans la doc
des modules.
Merci de vos pistes
K




Ce n'est pas a proprement parler un problème lié Perl et la question
n'est pas très claire :
Voulez vous compresser ET crypter un fichier (ou le contenu d'un
répertoire) ?
Ou voulez vous simplement crypter un fichier résultant d'un logiciel de
compression ?
Voulez vous gérer un type de compression particulier (gzip, winzip etc.)



Moi ca m'a paru clair et lie a perl, au contraire.

J'ai l'impression qu'il veut savoir si les modules relatifs aux archives
standards (zip) savent gerer des archives protegees par mot de passe.




Ah vous voyez "vous avez l'impression" :-)
Effectivement le rapport avec Archive::Zip ne m'a pas sauté aux yeux.

Dans la doc que j'ai sous la main pour Archive::Zip (version 1.26),
c'est tres clair:

isEncrypted()
Return true if this member is encrypted. The
Archive::Zip module does not currently create or
extract encrypted members.



Ceci aurait plutôt tendance à m'embrouiller :
Le module permet de détecter si l'archive associée à l'objet est
encryptée, mais il ne permet pas d'en créer de telles ?
Avatar
Jean-Charles Gibier
Pioche Encore a écrit :
Gasp ! Mais bon ...

Marc Espie a écrit :
In article <490c51cb$0$954$,
Jean-Charles Gibier <jcgibier.invalid> wrote:
Kloug a écrit :
Bonjour,
Y a t il un moyen de protéger un fichier
compressé par un mot de passe ?
Je ne vois rien à ce sujet dans la doc
des modules.
Merci de vos pistes
K




Ce n'est pas a proprement parler un problème lié Perl et la question
n'est pas très claire :
Voulez vous compresser ET crypter un fichier (ou le contenu d'un
répertoire) ?
Ou voulez vous simplement crypter un fichier résultant d'un logiciel
de compression ?
Voulez vous gérer un type de compression particulier (gzip, winzip etc.)



Moi ca m'a paru clair et lie a perl, au contraire.

J'ai l'impression qu'il veut savoir si les modules relatifs aux archives
standards (zip) savent gerer des archives protegees par mot de passe.




Ah vous voyez "vous avez l'impression" :-)
Effectivement le rapport avec Archive::Zip ne m'a pas sauté aux yeux.

Dans la doc que j'ai sous la main pour Archive::Zip (version 1.26),
c'est tres clair:

isEncrypted()
Return true if this member is encrypted. The
Archive::Zip module does not currently create or
extract encrypted members.



Ceci aurait plutôt tendance à m'embrouiller :
Le module permet de détecter si l'archive associée à l'objet est
encryptée, mais il ne permet pas d'en créer de telles ?
Avatar
espie
In article <490c7697$0$927$,
Jean-Charles Gibier <jcgibier.invalid> wrote:
Pioche Encore a écrit :
Gasp ! Mais bon ...

Marc Espie a écrit :
In article <490c51cb$0$954$,
Jean-Charles Gibier <jcgibier.invalid> wrote:
Kloug a écrit :
Bonjour,
Y a t il un moyen de protéger un fichier
compressé par un mot de passe ?
Je ne vois rien à ce sujet dans la doc
des modules.
Merci de vos pistes
K




Ce n'est pas a proprement parler un problème lié Perl et la question
n'est pas très claire :
Voulez vous compresser ET crypter un fichier (ou le contenu d'un
répertoire) ?
Ou voulez vous simplement crypter un fichier résultant d'un logiciel
de compression ?
Voulez vous gérer un type de compression particulier (gzip, winzip etc.)



Moi ca m'a paru clair et lie a perl, au contraire.

J'ai l'impression qu'il veut savoir si les modules relatifs aux archives
standards (zip) savent gerer des archives protegees par mot de passe.




Ah vous voyez "vous avez l'impression" :-)
Effectivement le rapport avec Archive::Zip ne m'a pas sauté aux yeux.



Allons, allons. Un peu d'intuition ne nuit pas. On a vu pire. Il parle
de modules, il ne precise pas lequel. Le seul que je connaisse qui fasse
du zip, c'est Archive::Zip.

Dans la doc que j'ai sous la main pour Archive::Zip (version 1.26),
c'est tres clair:

isEncrypted()
Return true if this member is encrypted. The
Archive::Zip module does not currently create or
extract encrypted members.



Ceci aurait plutôt tendance à m'embrouiller :
Le module permet de détecter si l'archive associée à l'objet est
encryptée, mais il ne permet pas d'en créer de telles ?



La-encore, refus tres net de lire entre les lignes de ta part.

Ca me parait pourtant evident: il y a un marqueur dans une archive qui,
pour chaque fichier (member) indique si ce fichier est chiffre ou pas.
Archive::Zip sait voir ce marqueur, mais ne sait absolument rien faire
de plus. En particulier, il s'avere incapable de chiffrer/dechiffrer
des bouts d'archives.

Toujours embrouille ?
Avatar
Jean-Charles Gibier
Marc Espie a écrit :
In article <490c7697$0$927$,
Jean-Charles Gibier <jcgibier.invalid> wrote:
Pioche Encore a écrit :
Gasp ! Mais bon ...

Marc Espie a écrit :
In article <490c51cb$0$954$,
Jean-Charles Gibier <jcgibier.invalid> wrote:
Kloug a écrit :
Bonjour,
Y a t il un moyen de protéger un fichier
compressé par un mot de passe ?
Je ne vois rien à ce sujet dans la doc
des modules.
Merci de vos pistes
K



Ce n'est pas a proprement parler un problème lié Perl et la question
n'est pas très claire :
Voulez vous compresser ET crypter un fichier (ou le contenu d'un
répertoire) ?
Ou voulez vous simplement crypter un fichier résultant d'un logiciel
de compression ?
Voulez vous gérer un type de compression particulier (gzip, winzip etc.)


Moi ca m'a paru clair et lie a perl, au contraire.

J'ai l'impression qu'il veut savoir si les modules relatifs aux archives
standards (zip) savent gerer des archives protegees par mot de passe.



Ah vous voyez "vous avez l'impression" :-)
Effectivement le rapport avec Archive::Zip ne m'a pas sauté aux yeux.



Allons, allons. Un peu d'intuition ne nuit pas. On a vu pire. Il parle
de modules, il ne precise pas lequel. Le seul que je connaisse qui fasse
du zip, c'est Archive::Zip.

Dans la doc que j'ai sous la main pour Archive::Zip (version 1.26),
c'est tres clair:

isEncrypted()
Return true if this member is encrypted. The
Archive::Zip module does not currently create oretait
extract encrypted members.


Ceci aurait plutôt tendance à m'embrouiller :
Le module permet de détecter si l'archive associée à l'objet est
encryptée, mais il ne permet pas d'en créer de telles ?



La-encore, refus tres net de lire entre les lignes de ta part.




Ben oui mais je suis comme ça moi ... je refuse de lire entre les lignes.

Ca me parait pourtant evident: il y a un marqueur dans une archive qui,
pour chaque fichier (member) indique si ce fichier est chiffre ou pas.
Archive::Zip sait voir ce marqueur, mais ne sait absolument rien faire
de plus. En particulier, il s'avere incapable de chiffrer/dechiffrer
des bouts d'archives.

Toujours embrouille ?



Disons que je comprends ton explication mais si je ne connaissais pas
ton expertise au sein de ce groupe, j'appellerai ça une interprétation :-)
Mais bon si effectivement il n'y pas d'autre méthode isEncrypted, le
module ne répond pas au besoin du PO puisque lui veut "protéger" une
archive. Il ne me semble pas avoir vu (entre les lignes non plus :-) de
méthode de type "encrypt" donc quelle fonction ferait l'affaire ?
Avatar
Kloug
>>Dans la doc que j'ai sous la main pour Archive::Zip (version 1.26), c'est tres clair:





C'est tout à fait ça.
En utilisateur naif de Winrar et sa fonction Mot de passe, je
pensais retrouver dans le module Archive::Zip ou équivalent
la possiblité de passer un paramètre pour protéger l'archive.
Finalement, je fais quoi ?
Merci
K
Avatar
espie
In article <490ca924$0$951$,
Kloug wrote:

Dans la doc que j'ai sous la main pour Archive::Zip (version 1.26),




c'est tres clair:

C'est tout à fait ça.
En utilisateur naif de Winrar et sa fonction Mot de passe, je
pensais retrouver dans le module Archive::Zip ou équivalent
la possiblité de passer un paramètre pour protéger l'archive.
Finalement, je fais quoi ?
Merci
K



Ben, tu lis la description du systeme de chiffrement utilise par Zip,
et tu l'implementes dans Archive::Zip !

;-)
Avatar
Jean-Charles Gibier
Kloug a écrit :
Bonjour,
Y a t il un moyen de protéger un fichier
compressé par un mot de passe ?
Je ne vois rien à ce sujet dans la doc
des modules.
Merci de vos pistes
K





Une proposition peut être alambiquée si vraiment Archive::Zip contient
de quoi implémenter un système d'encryption, mais faute d'infos.
Récupérer un module de chiffrement (ici Crypt::CBC utilisé avec l'algo
blowfish)
la cle utilisée pour l'exemple : "ma_cle"

---------------------8<-------------------------
use Crypt::CBC;
use Archive::Zip;

open FIC, "<", "result.txt";
my @content = <FIC>;
close FIC;

my $zip = Archive::Zip->new();

my $key = "ma_cle";
my $c = new Crypt::CBC($key,"Blowfish");

$zip->addString( $c->encrypt_hex(join '',@content), "result.txt" );

$zip->writeToFileNamed("archive.zip");

---------------------8<-------------------------

Le fichier zip contient l'archive cryptée ici le fichier result.txt
pour la restauration du fichier, il suffit d'utiliser les fonctions
inverses.
Avatar
Kloug
>>Récupérer un module de chiffrement (ici Crypt::CBC utilisé avec l'algo blowfish)





Ceci me parait très sympathique et surtout à ma portée.
Merci
K
1 2