IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Shell et commandes GNU Discussion :

Comment crypter une chaîne en sh ?


Sujet :

Shell et commandes GNU

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Février 2007
    Messages
    50
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2007
    Messages : 50
    Par défaut Comment crypter une chaîne en sh ?
    Bonjour à tous,

    Je voudrais simplement crypter une chaîne de caractère et la stocker dans un fichier mais il n'y a pas beaucoup d'infos sur le net..

    J'ai vu la commande crypt mais je n'arrive pas à la faire fonctionner..

    En fait je dois stocker des mots de passe Oracle dans un fichier d'environnement, j'avais pensé à utiliser md5 ??

    Merci d'avance.

  2. #2
    Membre chevronné Avatar de Tchetch
    Inscrit en
    Mars 2002
    Messages
    401
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Mars 2002
    Messages : 401
    Par défaut
    Si tu dois hasher tes mots de passe, tu peux utiliser SHA1 (MD5 n'est plus sûr). Mais hasher c'est dans un sens. Tu ne peux pas revenir en arrière.

    Si tu veux crypter (et donc pouvoir décrypter), tu peux utiliser openssl. Tu peux soit faire du cryptage symétrique, soit du cryptage asymétrique (une clé pour crypter, une autre pour décrypter).

    En fait tu peux utiliser openssl pour tout :

    Hasher un fichier (afin de contrôler son intégrité, par example) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    $ openssl sha1 dimp-h3-1.1.tar.gz
    SHA1(dimp-h3-1.1.tar.gz)= 62b0d44a694d095eac3aca42e433e0cf5a5de137
    Cryptage (et décryptage) asymétrique DES (par exemple) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
     
    $ openssl des -in dimp-h3-1.1.tar.gz -out dimp-h3-1.1.tar.gz.crypt
    enter des-cbc encryption password:
    Verifying - enter des-cbc encryption password:
    $  openssl des -d -in dimp-h3-1.1.tar.gz.crypt -out dimp-h3-1.1.tar.gz.2
    enter des-cbc decryption password:
    $ openssl sha1 dimp-h3-1.1.tar.gz dimp-h3-1.1.tar.gz.2 
    SHA1(dimp-h3-1.1.tar.gz)= 62b0d44a694d095eac3aca42e433e0cf5a5de137
    SHA1(dimp-h3-1.1.tar.gz.2)= 62b0d44a694d095eac3aca42e433e0cf5a5de137
    et comme je veux pas louper mon train l'exemple asymétrique arrive plus tard.

  3. #3
    Membre chevronné Avatar de Tchetch
    Inscrit en
    Mars 2002
    Messages
    401
    Détails du profil
    Informations personnelles :
    Âge : 40

    Informations forums :
    Inscription : Mars 2002
    Messages : 401
    Par défaut
    comme j'ai pas loupé mon train, voici la suite ...

    Donc pour le cryptage asymétrique il y a RSA (DSA ne fait pas le cryptage). Le défaut de RSA est qu'il peut crypter une petite quantité à la fois (en fonction de la taille de la clé). De plus il est lent. Mais voyons déjà ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
     
    $ openssl genrsa -out test.sec 2048 # creation cle privee
    Generating RSA private key, 2048 bit long modulus
    .+++
    .......+++
    $ openssl rsa -pubout -in test.sec -out test.pub # creation de la cle publique
    writing RSA key
    $ echo monMotDePasse | openssl rsautl -encrypt -pubin -inkey test.pub -out mdp.rsa
    $ openssl rsautl -decrypt -inkey test.sec -in mdp.rsa 
    monMotDePasse
    Mais comme on ne peut pas crypter beaucoup de donnée, les protocoles utilisent le cryptage asymétrique pour échanger la clé symétrique qui va crypter l'échange de donnée. C'est le cas de SSL/TLS ou GnuPG pour les mails (ou encore S/MIME).

    Pour utiliser S/MIME (par example, GnuPG est aussi très bien) avec openssl tu peux faire comme suit (dans ce cas j'utilise le certificat publique de mon serveur web pour le cryptage et ensuite je décrypte à l'aide de mon certificat privé (la clé) (il faut avoir généré les certificats au préalable).
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    $ openssl smime -encrypt -binary -in dimp-h3-1.1.tar.gz -out dimp-h3-1.1.tar.gz.smime /etc/apache2/ssl/tchetchWWWcert.pem 
    $ openssl smime -decrypt -inkey /etc/apache2/ssl/tchetchWWWkey.pem -in dimp-h3-1.1.tar.gz.smime -out dimp-h3-1.1.tar.gz.5
    Enter pass phrase for /etc/apache2/ssl/tchetchWWWkey.pem:
    $ openssl sha1 dimp-h3-1.1.tar.gz dimp-h3-1.1.tar.gz.5
    SHA1(dimp-h3-1.1.tar.gz)= 62b0d44a694d095eac3aca42e433e0cf5a5de137
    SHA1(dimp-h3-1.1.tar.gz.5)= 62b0d44a694d095eac3aca42e433e0cf5a5de137
    C'est cette méthode qui est utilisée pour crypter les mails (ou les signer avec -sign) en utilisant S/MIME, la méthode est identique pour GnuPG.

    Le cryptage asymétrique est intéressant parce qu'il permet de distribuer la clé publique à n'importe qui afin d'avoir un échange crypté. La clé publique permet de crypter uniquement et la clé privée permet de décrypter (et généré la clé publique).

  4. #4
    Nouveau membre du Club
    Profil pro
    Inscrit en
    Novembre 2010
    Messages
    6
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Novembre 2010
    Messages : 6
    Par défaut
    SVP c'est urgent j'ai un rapport sur la sécurité informatique et je suis coincé dans le cryptage d'une clé symétrique comment on fait pour crypter une clé privéé afin de la communiquer sans conflit merci pour votre réponse.

  5. #5
    Membre émérite
    Homme Profil pro
    Recherche du travail
    Inscrit en
    Août 2004
    Messages
    561
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 36
    Localisation : France, Pyrénées Atlantiques (Aquitaine)

    Informations professionnelles :
    Activité : Recherche du travail

    Informations forums :
    Inscription : Août 2004
    Messages : 561
    Par défaut
    SVP c'est urgent j'ai un rapport sur la sécurité informatique et je suis coincé dans le cryptage d'une clé symétrique comment on fait pour crypter une clé privéé afin de la communiquer sans conflit merci pour votre réponse.
    Déjà si tu as un rapport sur la sécurité, n'utilise pas le terme cryptage. Le mots à utiliser est chiffrage.

    Que appelle tu par conflit ? "Crypter" une clef privée ?

    Tchetch a déjà bien expliqué sont le fonctionnement des clef symétrique et asymétrique...

Discussions similaires

  1. Comment crypter une chaîne de caractères ?
    Par Seinen dans le forum SL & STL
    Réponses: 13
    Dernier message: 23/07/2008, 03h26
  2. comment costruire une chaîne de connexion ADO runtime
    Par lassad dans le forum Bases de données
    Réponses: 2
    Dernier message: 11/10/2005, 15h16
  3. Comment découper une chaîne de caractères en VBA
    Par TomPad dans le forum Access
    Réponses: 3
    Dernier message: 23/06/2005, 10h58
  4. Réponses: 5
    Dernier message: 15/02/2005, 19h07
  5. Réponses: 3
    Dernier message: 28/09/2003, 11h46

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo