Forum Programmation.python Cryptage/ Décriptage

Posté par  . Licence CC By‑SA.
0
17
mar.
2019

Bien le bonjour la commu
J'aimerai créer un programme permettant de crypter un message quelconque et un second programme permettant de décrypter le message. J'aimerai que le cryptage n'utilise par la méthode de César, c'est à dire un décalage dans l'alphabet avec un pas donné (A = E car il y a un pas de 5). Cela serait trop simple à décoder.
J'utilise PyScripter Portable 3
J'aimerai que vous m'aidiez à commencer le programme en trouvant une méthode facile à mettre en oeuvre car je suis débutant dans la programmation.
Merci beaucoup.
GoolumSith

  • # objet

    Posté par  . Évalué à 2.

    LE mieux serait d'utiliser def, des modules et des classes à mon avis.
    Aussi n'oublie pas les compréhensions de listes

    (oui , à question générique, réponse générique)

    • [^] # Re: objet

      Posté par  . Évalué à 1.

      Merci
      C'est à dire ? Comment le message serait coder ? Par décalage, par substitution, avec des clés ?

  • # On dit chiffrer, pas crypter.

    Posté par  (site web personnel) . Évalué à 5.

    Tu trouveras tous les détails sur https://chiffrer.info/

    Beaucoup de gens font l'erreur, t'inquiète pas. Mais maintenant tu n'auras plus d'excuse 😉

    Being a sysadmin is easy. As easy as riding a bicycle. Except the bicycle is on fire, you’re on fire and you’re in Hell.

    • [^] # Re: On dit chiffrer, pas crypter.

      Posté par  . Évalué à 1.

      Aha merci de l'info, je pensais qu'on cryptait un message du fait de la cryptographie. ^

    • [^] # Chiffrer ou crypter ?

      Posté par  . Évalué à -4. Dernière modification le 18 mars 2019 à 10:59.

      L'auteur original recherche une technique de chiffrement. Toutefois, « crypter » convient également selon le contexte.

      On peut créer des représentations inintelligibles et cohérentes sans utiliser la mathématique (par exemple, en employant des symboles). Essayez de déchiffrer des hiéroglyphes ou une langue inconnue (décoder), secrète, mystérieuse (décrypter) : ce sera cryptique.

      Le site web mentionné rejette le terme « crypter » grâce à des arguments d'autorité.

      Décrypter ne peut accepter d’antonyme : il est en effet impossible de créer un message chiffré sans posséder de clé de chiffrement.

      Cette phrase est insensée : oui, on peut chiffrer un message mais on peut aussi crypter un message. Dans les deux cas, le message est inintelligible. Il s'agit de procédés différents pour atteindre un état semblable.

      En effet, la terminologie de cryptage reviendrait à coder un fichier sans en connaître la clé et donc sans pouvoir le décoder ensuite.

      Cette phrase est aussi insensée : la personne réduit, de façon absurde, l'encodage (chiffrement, cryptage) à un procédé absurde.

  • # Soluce

    Posté par  . Évalué à 1.

    J'ai trouvé la façon de chiffrer mon message, j'utilise cette méthode [Vigenere]. (http://www.xm1math.net/algobox/exemples/vigenere.html)
    Pourriez vous m'aidez à mettre cet algo en langage python ?

    • [^] # Re: Soluce

      Posté par  (site web personnel) . Évalué à 2. Dernière modification le 17 mars 2019 à 12:41.

      Tu as l'algo sur la page que tu indiques…

      • Pas besoin de déclarer les variables ni leur type en python, c'est dynamique¹
      • Lire → fonction input("directives")
      • Longueur d'une chaîne → fonction len(lachaine)
      • Prend la valeur → instruction d'affectation variable = expression
      • Pour i allant de à → for in range(de, à-1)
      • Pas de début/fin en Python, tu indentes simplement les instructions
      • Afficher → fonction print("le truc", "à afficher")
      • Pour les conversions code/caractère: fonctions ord(caractère) et chr(code)

      Bonne traduction.

      ¹ Ceci dit, tu peux à partir de Python 3.6 utiliser des annotations:
      sClef : str
      Ça peut aider à la compréhension quand on débute, mais ça n'apporte aucune sécurité lors de l'exécution (rien n'empêcherait d'affecter un nombre entier à sClef).

      Pub: Mémento Python 3

      Python 3 - Apprendre à programmer dans l'écosystème Python → https://www.dunod.com/EAN/9782100809141

      • [^] # Re: Soluce

        Posté par  . Évalué à 1.

        Merci beaucoup !!!

      • [^] # Re: Soluce

        Posté par  . Évalué à 1.

        Salut Lolop, tu pourrais m'aider à transcrire l'algo du site en python, j'ai du mal à le faire. Mercii ^

    • [^] # Re: Soluce

      Posté par  . Évalué à 0.

      http://lmgtfy.com/?q=code+vigenere+python

      première réponse: tu as le code

      • [^] # Re: Soluce

        Posté par  . Évalué à 1. Dernière modification le 17 mars 2019 à 14:09.

        Un peu trop facile et aucun mérite… :)

  • # Aide

    Posté par  . Évalué à 1.

    import os
    

    str_plain = input("Message à chiffrer" )
    key = input("Clé de déchiffrage" )
    key_index = 0
    str_encoded = ""

    for char in str_plain:
    char_encode = ord(char)
    char_encode += ord(key[key_index]) - ord('a')
    if char_encode > ord('z'):
    char_encode -= ord('z') - ord('a')
    str_encoded += str(chr(char_encode))
    key_index += 1
    if key_index >= len(key):
    key_index = 0
    print(str_encoded)

    J'ai fais ça, le programme fonctionne, j'aimerais maintenant créer le programme permettant de décrypter le message reçu

Suivre le flux des commentaires

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