Partage
  • Partager sur Facebook
  • Partager sur Twitter

Python appliqué à la cryptographie

    25 décembre 2014 à 22:29:57

    #Pour crypter
    
    tperm= [[0,1,2,3],[1,3,0,2],[0,3,2,1],[3,0,1,2],[1,3,2,0],[2,1,0,3],[0,2,1,3],
    [1,3,2,0],[3,1,0,2],[0,1,2,3],[1,0,2,3],[1,2,0,3],[1,2,3,0],[1,0,2,3],[1,0,2,3],[1,0,2,3]]
    t=[]
    
    def Permute(m,perm):
    return "".join([m[perm[i]] for i in range(len(m))])
    	
    def Vigenere(m,cle):
    return "".join ([chr((ord(m[i])+cle[i])%256) for i in range (len(m))])
    	
    def DES_phrase(phrase,tperm,tcles):
    	p=len(tperm[0])  #Les blocs sont de longueur 2p
    	phrase+=(2*p-len(phrase)%(2*p))%(2*p)*" "
    	phrase_crypte=""
    	for i in range(0,len(phrase),2*p):
    		phrase_crypte+=DES_bloc(phrase[i:i+2*p],tperm,tcles)  #le dernier nombre n'est pas pris en compte
    	return phrase_crypte
    	
    
    def DES_bloc(bloc,tperm,tcle):
    	p=len(tperm[0])
    	for i in range (len(tperm)):
    		bloc=bloc[p:p+p]+Vigenere((Permute(bloc[0:p],tperm[i])),tcle[i])
    	return bloc
     
    mot_clair=input('Tapez vore message secret:')
    t.append(5)
    print(DES_bloc(mot_clair,tperm,tcles))


    Bonjour, j'aurais besoin d'aide pour un projet en python.

    Il s'agit de cryptage en python avec l' algorithme DES (je ne sais pas si ça vous dit quelquechose).

    Je vous mets la question qui me posesoucis :

    Donner le programme permettant de chiffrer un message via DES comme dans la question 3, puis de le déchiffrer.

    L’utilisateur saisit son message, son mot de passe (c’est à dire le tableau de clés). Les permutations seront définies ans le code source du programme (celles de votre choix). Les permutations inverses seront calculées par leprogramme. Il est demandé d’expliquer en détail comment a été déterminé l’algorithme de déchiffrement.

    J'ai tapé du code, mais il ya toujours un problème déxécution. (le code est joint )

    En vous remerciant de bien vouloir me signaler les problèmes que vous constaterez,

    Merci.

    • Partager sur Facebook
    • Partager sur Twitter
    Anonyme
      26 décembre 2014 à 10:23:45

      L'objectif est d'apprendre de ses erreurs, il existe des debuggers pour tester ligne par ligne ton code, nous ne sommes pas ce type de programme.

      • Quelle est la partie du code qui pose problème ?
      • Quelle est la fonction qui ne fonctionne pas ?
      • Quelles sont les erreurs produites par l'interpréteur python ?

      Bref on ne testera pas ton code...

      • Partager sur Facebook
      • Partager sur Twitter

      Python appliqué à la cryptographie

      × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
      × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
      • Editeur
      • Markdown