|
Trouver une ressource
Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !
CHIFFRE DE VIGENÈRE
Information sur la source
Description
Voilà, c'est ma première source... Soyez donc un peu indulgents SVP :) Ce programme, avec une interface graphique TKinter, permet de chiffrer et de déchiffrer un texte grâce au chiffre de Vigénère. Remarque : ceci est le VRAI algorithme, ce n'est pas celui qui insère des caractères spéciaux incompréhensibles... (cf. recherche "Vigenere") Algorithme : "Ars cryptographica" sur Google. Ch'uis débutant, n'hésitez pas à faire des remarques :)
Source
- #! /usr/bin/python
-
- # -*- coding: cp1252 -*-
-
-
-
- from Tkinter import *
-
- import re
-
- import string
-
-
-
- def crypt():
-
- i=0
-
- str_crypted=''
-
- txt3.delete(1.0,END)
-
-
-
- str_tocrypt= txt1.get(1.0,END)
-
- str_tocrypt=string.upper(str_tocrypt)
-
- str_tocrypt=re.sub('[^A-Z]','',str_tocrypt)
-
- txt1.delete(1.0,END)
-
- txt1.insert(INSERT,str_tocrypt)
-
-
-
- cle=txt2.get( 1.0,END)
-
- cle=string.upper(cle)
-
- cle=re.sub('[^A-Z]','',cle)
-
- txt2.delete(1.0,END)
-
- txt2.insert(INSERT,cle)
-
-
-
- while i<=len(str_tocrypt)-1:
-
- if i<=len(cle)-1:
-
- let_interm = cle[i]
-
- decalage=ord(let_interm)-65
-
- if ord(str_tocrypt[i])+decalage>90:
-
- let_new=chr(ord(str_tocrypt[i])+decalage-26)
-
- else:
-
- let_new=chr(ord(str_tocrypt[i])+decalage)
-
- str_crypted+=let_new
-
- else:
-
- let_interm=cle[i-(i/len(cle))*len(cle)]
-
- decalage=ord(let_interm)-65
-
- if ord(str_tocrypt[i])+decalage>90:
-
- let_new=chr(ord(str_tocrypt[i])+decalage-26)
-
- else:
-
- let_new=chr(ord(str_tocrypt[i])+decalage)
-
- str_crypted+=let_new
-
- i=i+1
-
-
-
- txt3.insert (INSERT,str_crypted)
-
-
-
- def uncrypt():
-
- i=0
-
- str_crypted=''
-
- txt1.delete(1.0,END)
-
-
-
- str_tocrypt=txt3.get(1.0,END)
-
- str_tocrypt=string.upper(str_tocrypt)
-
- str_tocrypt= re.sub('[^A-Z]','',str_tocrypt)
-
- txt3.delete(1.0,END)
-
- txt3.insert(INSERT,str_tocrypt)
-
-
-
- cle=txt2.get(1.0,END)
-
- cle=string.upper(cle)
-
- cle=re.sub('[^A-Z]','',cle)
-
- txt2.delete(1.0,END)
-
- txt2.insert(INSERT,cle)
-
-
-
- while i<=len(str_tocrypt)-1:
-
- if i<=len(cle)-1:
-
- let_interm = cle[i]
-
- decalage=ord(let_interm)-65
-
- if ord(str_tocrypt[i])-decalage<65:
-
- let_new=chr(ord(str_tocrypt[i])-decalage+26)
-
- else:
-
- let_new=chr(ord(str_tocrypt[i])-decalage)
-
- str_crypted+=let_new
-
- else:
-
- let_interm=cle[i-(i/len(cle))*len(cle)]
-
- decalage=ord(let_interm)-65
-
- if ord(str_tocrypt[i])-decalage<65:
-
- let_new=chr(ord(str_tocrypt[i])-decalage+26)
-
- else:
-
- let_new=chr(ord(str_tocrypt[i])-decalage)
-
- str_crypted+=let_new
-
- i=i+1
-
-
-
- txt1.insert(INSERT,str_crypted)
-
-
-
- fen=Tk()
-
- fen.title('Cryptage/Décryptage VIGENERE By ElPutoamo')
-
-
-
- Label(fen,text='Texte à CRYPTER/DECRYPTER',fg='red').grid(row=0)
-
-
-
- txt1=Text(fen,height=10,width=70)
-
- txt1.grid(row=1)
-
-
-
- Label(fen,text='Clé de cryptage',fg='red').grid(row=2)
-
-
-
- bou1=Button(fen,text='Décrypter',command=uncrypt)
-
- bou1.grid(row=2,sticky=E)
-
-
-
- txt2=Text(fen,height=3,width=70)
-
- txt2.grid(row=3)
-
-
-
- bou2=Button(fen,text='Crypter',command=crypt)
-
- bou2.grid(row=4,sticky=W)
-
-
-
- Label(fen,text='Texte CRYPTE/A DECRYPTER',fg='red').grid(row=4)
-
-
-
- txt3=Text(fen,height=10,width=70)
-
- txt3.grid(row=5)
-
-
-
- fen.mainloop()
-
#! /usr/bin/python
# -*- coding: cp1252 -*-
from Tkinter import *
import re
import string
def crypt():
i=0
str_crypted=''
txt3.delete(1.0,END)
str_tocrypt= txt1.get(1.0,END)
str_tocrypt=string.upper(str_tocrypt)
str_tocrypt=re.sub('[^A-Z]','',str_tocrypt)
txt1.delete(1.0,END)
txt1.insert(INSERT,str_tocrypt)
cle=txt2.get( 1.0,END)
cle=string.upper(cle)
cle=re.sub('[^A-Z]','',cle)
txt2.delete(1.0,END)
txt2.insert(INSERT,cle)
while i<=len(str_tocrypt)-1:
if i<=len(cle)-1:
let_interm = cle[i]
decalage=ord(let_interm)-65
if ord(str_tocrypt[i])+decalage>90:
let_new=chr(ord(str_tocrypt[i])+decalage-26)
else:
let_new=chr(ord(str_tocrypt[i])+decalage)
str_crypted+=let_new
else:
let_interm=cle[i-(i/len(cle))*len(cle)]
decalage=ord(let_interm)-65
if ord(str_tocrypt[i])+decalage>90:
let_new=chr(ord(str_tocrypt[i])+decalage-26)
else:
let_new=chr(ord(str_tocrypt[i])+decalage)
str_crypted+=let_new
i=i+1
txt3.insert (INSERT,str_crypted)
def uncrypt():
i=0
str_crypted=''
txt1.delete(1.0,END)
str_tocrypt=txt3.get(1.0,END)
str_tocrypt=string.upper(str_tocrypt)
str_tocrypt= re.sub('[^A-Z]','',str_tocrypt)
txt3.delete(1.0,END)
txt3.insert(INSERT,str_tocrypt)
cle=txt2.get(1.0,END)
cle=string.upper(cle)
cle=re.sub('[^A-Z]','',cle)
txt2.delete(1.0,END)
txt2.insert(INSERT,cle)
while i<=len(str_tocrypt)-1:
if i<=len(cle)-1:
let_interm = cle[i]
decalage=ord(let_interm)-65
if ord(str_tocrypt[i])-decalage<65:
let_new=chr(ord(str_tocrypt[i])-decalage+26)
else:
let_new=chr(ord(str_tocrypt[i])-decalage)
str_crypted+=let_new
else:
let_interm=cle[i-(i/len(cle))*len(cle)]
decalage=ord(let_interm)-65
if ord(str_tocrypt[i])-decalage<65:
let_new=chr(ord(str_tocrypt[i])-decalage+26)
else:
let_new=chr(ord(str_tocrypt[i])-decalage)
str_crypted+=let_new
i=i+1
txt1.insert(INSERT,str_crypted)
fen=Tk()
fen.title('Cryptage/Décryptage VIGENERE By ElPutoamo')
Label(fen,text='Texte à CRYPTER/DECRYPTER',fg='red').grid(row=0)
txt1=Text(fen,height=10,width=70)
txt1.grid(row=1)
Label(fen,text='Clé de cryptage',fg='red').grid(row=2)
bou1=Button(fen,text='Décrypter',command=uncrypt)
bou1.grid(row=2,sticky=E)
txt2=Text(fen,height=3,width=70)
txt2.grid(row=3)
bou2=Button(fen,text='Crypter',command=crypt)
bou2.grid(row=4,sticky=W)
Label(fen,text='Texte CRYPTE/A DECRYPTER',fg='red').grid(row=4)
txt3=Text(fen,height=10,width=70)
txt3.grid(row=5)
fen.mainloop()
Conclusion
1)Entrer le texte à crypter/décrypter. 2)Entrer la clé de cryptage. 3)Cliquer sur "Crypter/Décrypter"
Fichier Zip
Pour les "Membres Club", vous pouvez télécharger directement un fichier contenu dans le zip sans télécharger le zip en entier !
Télécharger le zip
Sources de la même categorie
Sources en rapport avec celle ci
Commentaires et avis
Discussions en rapport avec ce code source dans le forum
Cryptage DES [Python] [ par Kadaj676 ]
Bonjour j'aimerais savoir si vous aviez de la documentation sur des algo's de cryptage. Principalement DES, et je voudrais vosu demander, si il est po
Cryptage xor [ par sorcier0011 ]
Bonjour,J'aimerais bien faire un petit crypteur de texte xor mais je n'arrive pas a trouver comment convertir des lettres en Ascii. Parce que apart fa
Pour ne pas planter [ par franckysnow91 ]
Bonjour à tous,Je programme un algorithme sous python et malheureusement, je fais souvent des boucles perverses et je ne réussi pas à m'en sortir. Je
|
Téléchargements
Logiciels à télécharger sur le même thème :
Comparez les prix Nouvelle version
|