Annonce

Réduire
Aucune annonce.

Méthode pour authentifier et crypter un message

Réduire
X
 
  • Filtre
  • Heure
  • Afficher
Tout nettoyer
nouveaux messages

  • Méthode pour authentifier et crypter un message

    Bonjour à tous,

    Je suis en train de développer un petit protocol basé sur TCP. Je me posais des questions sur la meilleure façon d'authentifier et de crypter un message. Posons les choses suivantes :

    M : Message en claire
    C : Message crypté et authentifié
    MAC : Authentification avec un HMAC avec SHA-256
    ENC : Encryption avec AES-256 (clé partagée)
    | : caractère de concaténation
    K1 : Clé pour ENC
    K2 : Clé pour MAC

    Ma question est la suivante : Quelle est la meilleure façon parmis ces méthodes :

    C = ENC(M)|MAC(M) ---------------> (appelé MAC-and-Encrypt)
    C = ENC(M|MAC(M)) ---------------> (appelé MAC-then-Encrypt)
    C = ENC(M)|MAC(ENC(M)) ---------------> (appelé Encrypt-then-MAC)

    Merci d'avance :-)
    Dernière modification par fl0at_0xff, 05 novembre 2014, 17h07.
    Blog personnel : www.cyrill-gremaud.ch

  • #2
    Pour moi la première est à oublié. La seconde est relativement sur.
    Pour la troisième c'est intéressant mais j'ai du mal à comprendre comment le destinataire va pouvoir identifier le message.

    Commentaire


    • #3
      Envoyé par Sheldone Cooper Voir le message
      Pour moi la première est à oublié. La seconde est relativement sur.
      Pour la troisième c'est intéressant mais j'ai du mal à comprendre comment le destinataire va pouvoir identifier le message.
      Je ne sais pas si tu as vu mais j'ai rajouté la précision que K1 est la clé pour crypté et K2 pour authentifier. Est-ce que sa change ta vision des choses ?

      pour la 3 ième, l'authentification du message est simple: Il calcule le HMAC de ENC(M) de la partie de gauche, ensuite il la compare avec la partie de droite. Si sa match, cela veux dire que l'authentification est correcte si on part du principe que seul la destination et la source connaissent K2
      Blog personnel : www.cyrill-gremaud.ch

      Commentaire


      • #4
        Dans ce cas pourquoi ne pas faire : C = ENC(M|MAC(ENC(M))) ?
        Dernière modification par Sheldone Cooper, 06 novembre 2014, 20h39.

        Commentaire

        Chargement...
        X