Forum Linux.général 7zip et les caractères spéciaux

Posté par  . Licence CC By‑SA.
Étiquettes : aucune
-4
19
nov.
2016

bonjour

je génère un mot de passe de 50 caractères avec le programme pwgen


pwgen -s -1 50
F7gsyQlC4tgWzggT5ifmdhwdNYTWfB0p5rt06fJZFRWmnYsC7x

puis j'utilise le mot de passe pour créer une archive 7zip koko.7z de image.png

7z a -pF7gsyQlC4tgWzggT5ifmdhwdNYTWfB0p5rt06fJZFRWmnYsC7x koko image.png

7-Zip [64] 9.20  Copyright (c) 1999-2010 Igor Pavlov  2010-11-18
p7zip Version 9.20 (locale=fr_FR.utf8,Utf16=on,HugeFiles=on,4 CPUs)
Scanning
Updating archive koko.7z
Compressing  image.png      
Everything is Ok

puis pwgen avec des caractères spéciaux
pwgen -s -y -1 50
C|1_g/'.$9gq1Io,Ird%rHOP9Nvf2&|34&`OCLO(mcRE$L4Ew]

je reteste avec 7zip
7z a -pC|1_g/'.$9gq1Io,Ird%rHOP9Nvf2&|34&`OCLO(mcRE$L4Ew] koko image.png

la commande en console ne passe pas
pourtant en entrant le pass avec l'interface graphique d'archivage (clic droit dans caja sur image.png) cela passe
je suppose qu'il y a des caractères d'échappements qui manque dans la ligne



  • # Echappement : \

    Posté par  . Évalué à 0.

    Salut Robertix,

    Échappe les caractères spéciaux avec \ pour qu'ils ne soient pas interprétés par le shell, et ça devrait rouler.

    Matricule 23415

    • [^] # Re: Echappement : \

      Posté par  . Évalué à -10.

      c'est pas concluant

      en mode interactif,cela fonctionne naturellement

      7z a -p koko image.png
      
      7-Zip [64] 9.20  Copyright (c) 1999-2010 Igor Pavlov  2010-11-18
      p7zip Version 9.20 (locale=fr_FR.utf8,Utf16=on,HugeFiles=on,4 CPUs)
      Scanning
      
      Creating archive koko.7z
      
      
      Enter password (will not be echoed) :
      Verify password (will not be echoed) :
      Compressing  image.png      
      
      Everything is Ok
      
      
      • [^] # Re: Echappement : \

        Posté par  . Évalué à 0.

        Robertix, et en plus prolixe pour l'erreur ?

        c'est pas concluant

        Un message d'erreur ou un exemple à partager ?

        De mon côté j'ai fait ça et ça semble rouler :

        $ echo "toto" > test.txt
        $ pwgen -s -y -1 50
        "Scz.UL=$9lOx?AG)K-R0zg0]2PXU7$H3t)9:ve_7IAs.EAe%O
        $ 7z a -p\"Scz.UL=$9lOx?AG\)K-R0zg0]2PXU7$H3t\)9:ve_7IAs.EAe%O koko test.txt
        
        7-Zip [64] 9.20  Copyright (c) 1999-2010 Igor Pavlov  2010-11-18
        p7zip Version 9.20 (locale=en_US.UTF-8,Utf16=on,HugeFiles=on,4 CPUs)
        Scanning
        
        Creating archive koko.7z
        
        Compressing  test.txt      
        
        Everything is Ok
        

        Je n'ai pas cherché plus loin cependant, juste échappé les symboles que le shell (zsh) pouvait interpréter.

        Matricule 23415

        • [^] # Re: Echappement : \

          Posté par  . Évalué à -10.

          je pensais à un shell non interactif
          pas de mettre mes doigts dedans

          sinon voir plus long avec des caractères non ascii

          • [^] # Re: Echappement : \

            Posté par  . Évalué à 1.

            Ah. Et ça ?

            $ PASS=`pwgen -s -y -1 50`
            $ echo $PASS
            ?Wg~zMaj3^<n?G]Uko0_E)IhJk&CwV7i?c!r(0H`{`(D@[4<"T
            $ 7z a -p$PASS koko test.txt
            7-Zip [64] 9.20  Copyright (c) 1999-2010 Igor Pavlov  2010-11-18
            p7zip Version 9.20 (locale=en_US.UTF-8,Utf16=on,HugeFiles=on,4 CPUs)
            
            Scanning
            
            Updating archive koko.7z
            
            Compressing  test.txt      
            
            Everything is Ok
            

            Matricule 23415

  • # en tajik

    Posté par  . Évalué à -10.

    7z a -pОғозитаҳкимиҳамкориҳоидуҷонибаибайни koko image.png

    7-Zip [64] 9.20 Copyright (c) 1999-2010 Igor Pavlov 2010-11-18
    p7zip Version 9.20 (locale=fr_FR.utf8,Utf16=on,HugeFiles=on,4 CPUs)
    Scanning

    Creating archive koko.7z

    Compressing image.png

    Everything is Ok

  • # unicode

    Posté par  . Évalué à -10.

    cela reste un peu mesquin question combinaisons différentes
    si pwgen faisait tout l'unicode ce serait bien plus pro

  • # Pipe

    Posté par  . Évalué à 2.

    En fait, quand tu demandes à pwgen de te générer un mot de passe "avec des caractères spéciaux", tu obtiens un mot de passe contenant des caractères spéciaux : des pipes (|), des et commerciaux (&), des apostrophes, des parenthèses…

    Comme le nom l'indique, les caractères spéciaux ont un rôle spécial au sein du shell, ce qui veut dire que si tu veux qu'ils soient interprétés comme de simples caractères, il faut les échapper, avec un \.

    Avec les caractères d'échappement, ça fonctionne :

    $ 7z a -pC\|1_g/\'.$9gq1Io,Ird%rHOP9Nvf2\&\|34\&\`OCLO\(mcRE$L4Ew] koko image.png
    
    7-Zip [64] 9.20  Copyright (c) 1999-2010 Igor Pavlov  2010-11-18
    p7zip Version 9.20 (locale=fr_FR.UTF-8,Utf16=on,HugeFiles=on,4 CPUs)
    Scanning
    
    Creating archive koko.7z
    
    Compressing  image.png
    
    Everything is Ok
    

    Et ça fonctionne en mode interactif car le mot de passe est directement lu par 7zip qui, à l'inverse de ton shell, s'en fiche des caractères spéciaux.

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.