Accueil > > > MODULE DE CRYPTOGRAPHIE
MODULE DE CRYPTOGRAPHIE
Information sur la source
Description
Ceci et un module qui facilite l'encodage & le decodage de type cesar & viginaire . Installation: c/c la source dans un fichier crypt.py sous linux , placer le fichier dans : /usr/lib/pythonversion Utilisation : from crypt import encode,decode # on importe le module #clé = clé de decalage ,de type int :p #texte = texte a encoder ou ecoder , d"e type char :p Usage : from crypto import encode,decode e = encode("cesar",1,"aA Bb Cc Yy Zz 09 ?!") print e e = decode("cesar",1,e) print e e = encode("viginaire",123,"aA Bb Cc Yy Zz 09 ?!") print e e = decode("viginaire",123,e) print e
Source
- #!/usr/bin/python
- # -*- coding: iso8859-1 -*-
-
- '''
- Module d'encodage & decodage
- Jule Cesar & Carrer de Viginaire
- Coded by Marnage
-
- Usage :
-
- from crypto import encode,decode
-
- e = encode("cesar",1,"aA Bb Cc Yy Zz 09 ?!")
- print e
-
- e = decode("cesar",1,e)
- print e
-
-
- e = encode("viginaire",123,"aA Bb Cc Yy Zz 09 ?!")
- print e
-
- e = decode("viginaire",123,e)
- print e
-
- '''
-
- from sys import stdout,exit
-
- __all__ = "encode,decode"
-
- class Variable:
- def __init__(self,txt,key):
- self.txt = txt
- self.key = key
- self.txt_crypt = ""
- self.txt_decrypt = ""
- if (type(key) != int ):
- try: self.key = int(key)
- except :
- stdout.write("[!] Erreur : key != type int , conversion impossible\n")
- exit(0)
- if (type(txt) != str ):
- try: self.key = str(key)
- except :
- stdout.write("[!] Erreur : texte != type char , conversion impossible\n")
- exit(0)
-
-
- class Cesar(Variable):
- def __init__(self,txt,key):
- Variable.__init__(self,txt,key)
-
-
- def Encode(self):
- i = 0
- while ( i < len(self.txt) ):
- num = ord(self.txt[i])+self.key
- self.txt_crypt += chr(num)
- i += 1
-
- def Decode(self):
- i = 0
- while ( i < len(self.txt) ):
- num = ord(self.txt[i])-self.key
- self.txt_decrypt += chr(num)
- i += 1
-
- class Viginaire(Variable):
- def __init__(self,txt,key):
- Variable.__init__(self,txt,key)
-
- def Encode(self):
- i = 0
- i_key = 0
- while ( i < len(self.txt) ):
- if ( i_key == len(str(self.key)) ):
- i_key = 0
- num = ord(self.txt[i])
- char_key = str(self.key)
- buffer_key = char_key[i_key]
- num += int(buffer_key)
- self.txt_crypt += chr(num)
- i += 1
- i_key += 1
-
- def Decode(self):
- i = 0
- i_key = 0
- while ( i < len(self.txt) ):
- if ( i_key == len(str(self.key)) ):
- i_key = 0
- num = ord(self.txt[i])
- char_key = str(self.key)
- buffer_key = char_key[i_key]
- num -= int(buffer_key)
- self.txt_decrypt += chr(num)
- i += 1
- i_key += 1
-
- def encode(typ,key,txt):
- if ( typ == "cesar" ):
- Class = Cesar(txt,key)
- Class.Encode()
- elif ( typ == "viginaire" ):
- Class = Viginaire(txt,key)
- Class.Encode()
- else :
- return "[!] argument inconnu !"
- return Class.txt_crypt
-
-
- def decode(typ,key,txt):
- if ( typ == "cesar" ):
- Class = Cesar(txt,key)
- Class.Decode()
- elif ( typ == "viginaire" ):
- Class = Viginaire(txt,key)
- Class.Decode()
- else :
- return "[!] argument inconnu"
- return Class.txt_decrypt
#!/usr/bin/python
# -*- coding: iso8859-1 -*-
'''
Module d'encodage & decodage
Jule Cesar & Carrer de Viginaire
Coded by Marnage
Usage :
from crypto import encode,decode
e = encode("cesar",1,"aA Bb Cc Yy Zz 09 ?!")
print e
e = decode("cesar",1,e)
print e
e = encode("viginaire",123,"aA Bb Cc Yy Zz 09 ?!")
print e
e = decode("viginaire",123,e)
print e
'''
from sys import stdout,exit
__all__ = "encode,decode"
class Variable:
def __init__(self,txt,key):
self.txt = txt
self.key = key
self.txt_crypt = ""
self.txt_decrypt = ""
if (type(key) != int ):
try: self.key = int(key)
except :
stdout.write("[!] Erreur : key != type int , conversion impossible\n")
exit(0)
if (type(txt) != str ):
try: self.key = str(key)
except :
stdout.write("[!] Erreur : texte != type char , conversion impossible\n")
exit(0)
class Cesar(Variable):
def __init__(self,txt,key):
Variable.__init__(self,txt,key)
def Encode(self):
i = 0
while ( i < len(self.txt) ):
num = ord(self.txt[i])+self.key
self.txt_crypt += chr(num)
i += 1
def Decode(self):
i = 0
while ( i < len(self.txt) ):
num = ord(self.txt[i])-self.key
self.txt_decrypt += chr(num)
i += 1
class Viginaire(Variable):
def __init__(self,txt,key):
Variable.__init__(self,txt,key)
def Encode(self):
i = 0
i_key = 0
while ( i < len(self.txt) ):
if ( i_key == len(str(self.key)) ):
i_key = 0
num = ord(self.txt[i])
char_key = str(self.key)
buffer_key = char_key[i_key]
num += int(buffer_key)
self.txt_crypt += chr(num)
i += 1
i_key += 1
def Decode(self):
i = 0
i_key = 0
while ( i < len(self.txt) ):
if ( i_key == len(str(self.key)) ):
i_key = 0
num = ord(self.txt[i])
char_key = str(self.key)
buffer_key = char_key[i_key]
num -= int(buffer_key)
self.txt_decrypt += chr(num)
i += 1
i_key += 1
def encode(typ,key,txt):
if ( typ == "cesar" ):
Class = Cesar(txt,key)
Class.Encode()
elif ( typ == "viginaire" ):
Class = Viginaire(txt,key)
Class.Encode()
else :
return "[!] argument inconnu !"
return Class.txt_crypt
def decode(typ,key,txt):
if ( typ == "cesar" ):
Class = Cesar(txt,key)
Class.Decode()
elif ( typ == "viginaire" ):
Class = Viginaire(txt,key)
Class.Decode()
else :
return "[!] argument inconnu"
return Class.txt_decrypt
Conclusion
j'ai totalemenr changer le code ... :)
Historique
- 15 octobre 2007 03:57:27 :
- refai en plus beau :)
Sources du même auteur
Sources de la même categorie
Commentaires et avis
|
Derniers Blogs
[WF4] POURQUOI UTILISER LE CONTENTPRESENTER DANS L'ACTIVITYDESIGNER?[WF4] POURQUOI UTILISER LE CONTENTPRESENTER DANS L'ACTIVITYDESIGNER? par JeremyJeanson
Vous avez peut être remarqué dans les samples WF4 ou dans mon dernier post qu'afin d'appliquer des Template sur un ActivityDesigner on utilise un ContentPresenter . Mais les plus observateurs auront aussi remarqué que l'ActivityDesigner à des propriétés T...
Cliquez pour lire la suite de l'article par JeremyJeanson [MIX 2010] - TELECHARGEZ INTERNET EXPLORER 9 EN PREVIEW ![MIX 2010] - TELECHARGEZ INTERNET EXPLORER 9 EN PREVIEW ! par redo
La Preview de Windows Explorer 9 est maintenant disponible à l'adresse suivante : http://ie.microsoft.com/testdrive/ Cette version ne nécessite pas un redémarrage de votre machine pour être exploitée . Cette version est fonctionnelle mais reste cependant ...
Cliquez pour lire la suite de l'article par redo [MIX 2010] - KEYNOTE DAY 2 ONLINE : WINDOWS INTERNET EXPLORER 9, JQUERY, ODATA ET DALLAS CTP2 ![MIX 2010] - KEYNOTE DAY 2 ONLINE : WINDOWS INTERNET EXPLORER 9, JQUERY, ODATA ET DALLAS CTP2 ! par redo
Dans la lignée du premier keynote, retrouvez la vidéo du second keynote en ligne : Visionnez la vidéo à l'url suivante : http://www.microsoft.com/presspass/events/mix/VideoGallery.aspx Vous y retrouverez ainsi les speakers Scott Guthrie, Dean Hachamovitch...
Cliquez pour lire la suite de l'article par redo [MIX 2010] - RETOUR D'EXPéRIENCE DéVELOPPEMENT SEESMIC SUR WINDOWS PHONE 7[MIX 2010] - RETOUR D'EXPéRIENCE DéVELOPPEMENT SEESMIC SUR WINDOWS PHONE 7 par redo
En avant première, Loic le retour d'expérience de Loïc Le Meur du portage de l'application http://seesmic.com/ sur plateforme Windows Phone 7 . c'était d'ailleurs une des rares opportunités de tester, voir toucher le nouveau device . voyez par vous-même :...
Cliquez pour lire la suite de l'article par redo [MIX 2010] - LE KEYNOTE DAY 1 DISPONIBLE ONLINE ![MIX 2010] - LE KEYNOTE DAY 1 DISPONIBLE ONLINE ! par redo
Si tout comme moi, vous avez manqué de peu le premier keynote du Microsoft Mix 2010, je vous invite à prendre deux heure et le consulter ci-dessous . Visionnez le Keynote à l'url suivante : http://www.microsoft.com/Presspass/events/mix/videoGallery.aspx?c...
Cliquez pour lire la suite de l'article par redo
Logiciels
Xilisoft Convertisseur Vidéo Ultimate (5.1.39.0305)XILISOFT CONVERTISSEUR VIDéO ULTIMATE (5.1.39.0305)Xilisoft Convertisseur Vidéo Ultimate est un outil puissant de conversion vidéo, facile à utilise... Cliquez pour télécharger Xilisoft Convertisseur Vidéo Ultimate Xilisoft DVD Ripper Ultimate (5.0.64.0304)XILISOFT DVD RIPPER ULTIMATE (5.0.64.0304)Xilisoft DVD Ripper Ultimate est un logiciel excellent pour copier et convertir DVD vers presque ... Cliquez pour télécharger Xilisoft DVD Ripper Ultimate Rigs of Rods (63.3)RIGS OF RODS (63.3)c'est un jeu de multi-simulation camions,autobus voitures, avions, bateaux, hélicoptère avec défo... Cliquez pour télécharger Rigs of Rods Konvertor (4.00)KONVERTOR (4.00)Le logiciel est un gestionnaire multimedia affichant, jouant et convertissant plus de 2000 format... Cliquez pour télécharger Konvertor
|