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

Sécurité Java Discussion :

FTPS Cipher suites


Sujet :

Sécurité Java

  1. #1
    Membre averti
    Inscrit en
    Avril 2007
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 35
    Par défaut FTPS Cipher suites
    bonjour,
    Je travail sur un serveur FTP(FileZilla) dont j'aimerai sécuriser les communications en utilisants un cipher qui n'existe pas dans la liste des CipherSuites. Par où dois-je commencer ?

    Merci d'avance!

  2. #2
    Expert confirmé
    Avatar de Marco46
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2005
    Messages
    4 419
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2005
    Messages : 4 419
    Par défaut
    Citation Envoyé par AbdeL02 Voir le message
    bonjour,
    Je travail sur un serveur FTP(FileZilla) dont j'aimerai sécuriser les communications en utilisants un cipher qui n'existe pas dans la liste des CipherSuites. Par où dois-je commencer ?

    Merci d'avance!
    Par apprendre le C++ et à poster dans le bon forum.

    Sinon SSH pourrait peut être faire l'affaire ...

  3. #3
    Membre averti
    Inscrit en
    Avril 2007
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 35
    Par défaut ? ? ?
    Citation Envoyé par Marco46 Voir le message
    Par apprendre le C++ et à poster dans le bon forum.

    Sinon SSH pourrait peut être faire l'affaire ...
    ????

  4. #4
    Expert confirmé
    Avatar de Marco46
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2005
    Messages
    4 419
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2005
    Messages : 4 419
    Par défaut
    Désolé je devais être de mauvaise humeur.

    Tu veux que ton soft écrit en java puisse utiliser des cipher qui n'existent pas dans la JCA ?

    Il te faut trouver d'autres provider. Regardes du côté de BouncyCastle si par hasard il y aurait pas le cipher qui te convient.

    C'est quel algo que tu veux d'ailleurs ?

  5. #5
    Membre averti
    Inscrit en
    Avril 2007
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 35
    Par défaut
    Citation Envoyé par Marco46 Voir le message
    Désolé je devais être de mauvaise humeur.

    Tu veux que ton soft écrit en java puisse utiliser des cipher qui n'existent pas dans la JCA ?

    Il te faut trouver d'autres provider. Regardes du côté de BouncyCastle si par hasard il y aurait pas le cipher qui te convient.

    C'est quel algo que tu veux d'ailleurs ?
    Merci de votre réponse.
    en fait je voulais utiliser un cipher utilisant l'algorithme de McEliece, et que je crée moi meme.
    avez-vous une idée ?

  6. #6
    Invité
    Invité(e)
    Par défaut
    Salut,

    Je ne suis pas sûr que BouncyCastle gère MacEliece, par contre flexiprovider oui. Tu peux regarder la doc, en utilisant ce provider tu auras ce Cipher.
    Comme dit par marco, il vaut mieux utiliser JCA pour ce genre de choses et des implémentations sures (BouncyCastle, Flexiprovider, ...) plutôt que des implém "maison"

    A plus

  7. #7
    Membre très actif
    Profil pro
    Inscrit en
    Février 2010
    Messages
    768
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2010
    Messages : 768
    Par défaut
    Citation Envoyé par AbdeL02 Voir le message
    Merci de votre réponse.
    en fait je voulais utiliser un cipher utilisant l'algorithme de McEliece, et que je crée moi meme.
    avez-vous une idée ?
    Pourquoi cherches tu un provider si tu as écrit toi même ton algorithme, je ne comprend pas ?

    De toute manière en pratique MacEliece va te générer un fichier 2 fois plus gros que l'original à transporter. Donc ca réduit pas mal les cas d'utilisation.

  8. #8
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par Jimmy_ Voir le message
    Pourquoi cherches tu un provider si tu as écrit toi même ton algorithme, je ne comprend pas ?

    De toute manière en pratique MacEliece va te générer un fichier 2 fois plus gros que l'original à transporter. Donc ca réduit pas mal les cas d'utilisation.
    J'ai compris qu'il voulait créer l'instance de Cipher lui même mais peut-être ai-je mal interprété ^^

  9. #9
    Membre averti
    Inscrit en
    Avril 2007
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 35
    Par défaut
    Citation Envoyé par George7 Voir le message
    J'ai compris qu'il voulait créer l'instance de Cipher lui même mais peut-être ai-je mal interprété ^^
    Si t'as bien compris.
    je crée le cipher moi et je dois l'ajouter à ceux disponibles dans la liste CipherSuite et puis l'activer ( par setEnabledSipherSuite()).

  10. #10
    Invité
    Invité(e)
    Par défaut
    Reprenons calmement...

    Tu veux utiliser McEliece. Par défaut cet algorithme n'est pas disponible.
    As-tu implémenté toi même cet algorithme ?
    Si oui, es-tu sûr de ton implémentation (respect des standards, robustesse, ...) ? as-tu une implémentation respectant la JCA (lien ci dessus par Marco) ?
    Si non (je préférerais cette solution personnellement), il faut trouver un provider qui fournit cet algorithme. J'ai cité Flexiprovider ci-dessus qui le fait. Dans ce cas il faut installer le provider comme tu trouveras expliqué dans la documentation, et ensuite instantier ton Cipher comme n'importe quel autre...

    Je viens de retomber sur un post de toi sur le même sujet auquel j'avais répondu avec deux liens utiles mais n'avais pas eu de nouvelles de ta part. As-tu essayé ? La documentation donne la marche à suivre complète, où es ton problème ?

  11. #11
    Expert confirmé
    Avatar de Marco46
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2005
    Messages
    4 419
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2005
    Messages : 4 419
    Par défaut
    Citation Envoyé par AbdeL02 Voir le message
    Si t'as bien compris.
    je crée le cipher moi et je dois l'ajouter à ceux disponibles dans la liste CipherSuite et puis l'activer ( par setEnabledSipherSuite()).
    Il te faut écrire ton implémentation conformément à l'architecture de la JCA puis rajouter le provider comme n'importe quel autre (BouncyCastle, ... etc...)

    EDIT : Jamais fait ça mais bon courage

  12. #12
    Membre averti
    Inscrit en
    Avril 2007
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 35
    Par défaut
    Citation Envoyé par George7 Voir le message
    Reprenons calmement...

    Tu veux utiliser McEliece. Par défaut cet algorithme n'est pas disponible.
    As-tu implémenté toi même cet algorithme ?
    Si oui, es-tu sûr de ton implémentation (respect des standards, robustesse, ...) ? as-tu une implémentation respectant la JCA (lien ci dessus par Marco) ?
    Si non (je préférerais cette solution personnellement), il faut trouver un provider qui fournit cet algorithme. J'ai cité Flexiprovider ci-dessus qui le fait. Dans ce cas il faut installer le provider comme tu trouveras expliqué dans la documentation, et ensuite instantier ton Cipher comme n'importe quel autre...

    Je viens de retomber sur un post de toi sur le même sujet auquel j'avais répondu avec deux liens utiles mais n'avais pas eu de nouvelles de ta part. As-tu essayé ? La documentation donne la marche à suivre complète, où es ton problème ?
    effectivement j'utilise le flexiprovider pour créer mon cipher sans problème.
    mon problème est comment pouvoir l'utiliser comme cipher d'un org.apache.commons.net.ftp.FTPSClient activable par la methode setEnabledCipherSuites().

  13. #13
    Invité
    Invité(e)
    Par défaut
    Oui mais donc qu'as-tu tenté ? quelle erreur as-tu ? Un peu de code et de détails seraient les bienvenus.

    le nom du Cipher avec Flexiprovider est "McEliecePKCS" d'après la doc

    EDIT: un doute m'assaille d'un coup, est-ce que ton server FTP auquel tu te connectes sait utiliser le système McEliece ? C'est quand même pas super courant comme algo...

  14. #14
    Membre averti
    Inscrit en
    Avril 2007
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 35
    Par défaut
    Citation Envoyé par George7 Voir le message
    Oui mais donc qu'as-tu tenté ? quelle erreur as-tu ? Un peu de code et de détails seraient les bienvenus.

    le nom du Cipher avec Flexiprovider est "McEliecePKCS" d'après la doc

    EDIT: un doute m'assaille d'un coup, est-ce que ton server FTP auquel tu te connectes sait utiliser le système McEliece ? C'est quand même pas super courant comme algo...
    j'ai rien tenté je c pas par ou commencer.

  15. #15
    Expert confirmé
    Avatar de Marco46
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2005
    Messages
    4 419
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2005
    Messages : 4 419
    Par défaut
    A priori, FileZilla Server utilise pour son chiffrement FTPS GnuTLS et cette librairie ne semble pas disposer de l'algorithme que tu veux utiliser.

    Cela semble mission impossible ...

  16. #16
    Membre averti
    Inscrit en
    Avril 2007
    Messages
    35
    Détails du profil
    Informations forums :
    Inscription : Avril 2007
    Messages : 35
    Par défaut
    Citation Envoyé par Marco46 Voir le message
    A priori, FileZilla Server utilise pour son chiffrement FTPS GnuTLS et cette librairie ne semble pas disposer de l'algorithme que tu veux utiliser.

    Cela semble mission impossible ...
    n'existe t-il pas un autre serveur FTPS qui utilise pour son chiffrement une bibliothèque sur laquelle je peut agir et ajouter mon algo ?

  17. #17
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par Marco46 Voir le message
    A priori, FileZilla Server utilise pour son chiffrement FTPS GnuTLS et cette librairie ne semble pas disposer de l'algorithme que tu veux utiliser.

    Cela semble mission impossible ...
    Oui c'est exactement le doute qui m'a sauvagement assailli par derrière comme un fourbe. McEliece a des inconvénients de tailles qui font qu'il est très peu utilisé.

    @AbdeL02: il y a une raison particulière pourquoi tu veux utiliser McEliece et pas RSA ? On ne sait toujours pas bien factoriser les grands nombres, donc autant en profiter... De plus, arrêtez moi si je dis une énormité, mais je ne suis pas sûr que le format X.509 permette de stocker des clefs McEliece (qui sont des matrices...).
    TLS fait un échange de clefs en utilisant RSA ou Diffie-Hellman si ma mémoire est bonne, et la signature via RSA ou DSA.
    Bref je ne crois pas que ton problème soit résoluble avec TLS...

  18. #18
    Expert confirmé
    Avatar de Marco46
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Août 2005
    Messages
    4 419
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 44
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur informatique

    Informations forums :
    Inscription : Août 2005
    Messages : 4 419
    Par défaut
    Citation Envoyé par AbdeL02 Voir le message
    n'existe t-il pas un autre serveur FTPS qui utilise pour son chiffrement une bibliothèque sur laquelle je peut agir et ajouter mon algo ?
    Il te faut d'abord répondre à la question posée par George7. Ton algorithme est-il soluble dans X.509 ?

    Ton algo c'est un symétrique ou un asymétrique ?

    Là tu as un problème un peu chaud à résoudre.

    Si la réponse est oui, alors il te faut trouver un serveur écrit en Java qui te permette de rajouter un provider, puis modifier le code source.
    Les certificats X.509 utilisés devront être générés en indiquant qu'il faut privilégier ton algo plutôt que ce qui se fait normalement en TLS c'est à dire RSA + AES.

  19. #19
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par Marco46 Voir le message
    Il te faut d'abord répondre à la question posée par George7. Ton algorithme est-il soluble dans X.509 ?

    Ton algo c'est bien un symétrique ?

    Là tu as un problème un peu chaud à résoudre.

    Si la réponse est oui, alors il te faut trouver un serveur écrit en Java qui te permette de rajouter un provider, puis modifier le code source.
    Les certificats X.509 utilisés devront être générés en indiquant qu'il faut privilégier ton algo plutôt que ce qui se fait normalement en TLS c'est à dire RSA + AES.
    Ca me parait une entreprise titanesque car McEliece est un algo asymmétrique, donc serait utilisé pour l'échange de clef ou la signature. Soit... Que nous dit la RFC TLS pour les Cipher Suites connues ?
    Pour RSA:
    CipherSuite TLS_RSA_WITH_NULL_MD5 = { 0x00,0x01 };
    CipherSuite TLS_RSA_WITH_NULL_SHA = { 0x00,0x02 };
    CipherSuite TLS_RSA_EXPORT_WITH_RC4_40_MD5 = { 0x00,0x03 };
    CipherSuite TLS_RSA_WITH_RC4_128_MD5 = { 0x00,0x04 };
    CipherSuite TLS_RSA_WITH_RC4_128_SHA = { 0x00,0x05 };
    CipherSuite TLS_RSA_EXPORT_WITH_RC2_CBC_40_MD5 = { 0x00,0x06 };
    CipherSuite TLS_RSA_WITH_IDEA_CBC_SHA = { 0x00,0x07 };
    CipherSuite TLS_RSA_EXPORT_WITH_DES40_CBC_SHA = { 0x00,0x08 };
    CipherSuite TLS_RSA_WITH_DES_CBC_SHA = { 0x00,0x09 };
    CipherSuite TLS_RSA_WITH_3DES_EDE_CBC_SHA = { 0x00,0x0A };
    Pour Diffie-Hellman
    CipherSuite TLS_DH_DSS_EXPORT_WITH_DES40_CBC_SHA = { 0x00,0x0B };
    CipherSuite TLS_DH_DSS_WITH_DES_CBC_SHA = { 0x00,0x0C };
    CipherSuite TLS_DH_DSS_WITH_3DES_EDE_CBC_SHA = { 0x00,0x0D };
    CipherSuite TLS_DH_RSA_EXPORT_WITH_DES40_CBC_SHA = { 0x00,0x0E };
    CipherSuite TLS_DH_RSA_WITH_DES_CBC_SHA = { 0x00,0x0F };
    CipherSuite TLS_DH_RSA_WITH_3DES_EDE_CBC_SHA = { 0x00,0x10 };
    CipherSuite TLS_DHE_DSS_EXPORT_WITH_DES40_CBC_SHA = { 0x00,0x11 };
    CipherSuite TLS_DHE_DSS_WITH_DES_CBC_SHA = { 0x00,0x12 };
    CipherSuite TLS_DHE_DSS_WITH_3DES_EDE_CBC_SHA = { 0x00,0x13 };
    CipherSuite TLS_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA = { 0x00,0x14 };
    CipherSuite TLS_DHE_RSA_WITH_DES_CBC_SHA = { 0x00,0x15 };
    CipherSuite TLS_DHE_RSA_WITH_3DES_EDE_CBC_SHA = { 0x00,0x16 };
    Et pour les autres algos ?
    Note: Additional cipher suites can be registered by publishing an RFC
    which specifies the cipher suites, including the necessary TLS
    protocol information, including message encoding, premaster
    secret derivation, symmetric encryption and MAC calculation and
    appropriate reference information for the algorithms involved.
    The RFC editor's office may, at its discretion, choose to publish
    specifications for cipher suites which are not completely
    described (e.g., for classified algorithms) if it finds the
    specification to be of technical interest and completely
    specified.
    Donc si tu as le courage, tu écris une RFC, enfin... plein de RFC pour TLS mais aussi surement une pour un format X.509v4 pour expliquer comment on stock une clef sous forme de matrice dans un certificat, etc etc....
    A mon avis utilise RSA

    EDIT : ayant relu la RFC X.509, les types de clefs supportés sont RSA, Diffie-hellman et DSA, donc vraiment utilise RSA !

Discussions similaires

  1. FTPS cipher Suites
    Par AbdeL02 dans le forum Débuter avec Java
    Réponses: 0
    Dernier message: 28/01/2011, 11h06
  2. Weak cipher suites
    Par metalcoyote dans le forum Sécurité
    Réponses: 3
    Dernier message: 02/12/2009, 13h47
  3. Réponses: 8
    Dernier message: 27/04/2007, 12h15
  4. Réponses: 2
    Dernier message: 31/07/2006, 17h26
  5. [FTP] Pb open_basedir suite à copy
    Par Inutile dans le forum Langage
    Réponses: 1
    Dernier message: 06/07/2006, 13h02

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