levilinux

Kriptos

Jul 16th, 2012
97
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Python 4.90 KB | None | 0 0
  1. # -*- coding: iso-8859-1 -*-
  2. # Autor: Levi Gomes de Oliveira
  3. # Em caso de bug, sugestão ou crítica favor encaminhar para o e-mail acima
  4. # Esse script visa fornecer ferramentas básicas para conversão de strings para outras notações
  5. # Utiliza a seguinte convenção
  6. # ">>" entrada de dados
  7. # ">" saída de dados
  8.  
  9. # Espero que seja útil, aproveitem!
  10.  
  11. # Kriptos (nome do algoritmo)
  12. # Versão 1.0
  13.  
  14. # Importando funções system para efetuar limpeza de tela utilizando comandos do sistema
  15.  
  16. from os import system
  17.    
  18. # Importando hashlib
  19.  
  20. import hashlib
  21.  
  22. # Menus
  23.  
  24. # menu principal
  25.  
  26. def menu():
  27.    
  28.     print " KRIPTOS \n Versão 1.0"
  29.     print " Caro usuário, o script utiliza a seguinte convenção:"
  30.     print " >> para entrada de dados "
  31.     print " >  para saída de dados  \n\n"
  32.     escolha=0 # Flag para loop
  33.     while (escolha!='3'):
  34.         print " 1. Ferramentas para Hexadecimal e Base64"
  35.         print " 2. Ferramentas para tratamento de Hash (MD5 e SHA1)"
  36.         print " 3. Sair"
  37.         print " Digite o número correspondente a sua escolha"
  38.         escolha = raw_input(">> ") # Var que armazena escolha do user
  39.  
  40. # Condicionais menu principal
  41.  
  42.         if (escolha=='1'):
  43.             menu_1()
  44.         if (escolha=='2'):
  45.             menu_2()
  46.  
  47. # menu 1 (funções de base64 e hexadecimal)
  48.  
  49. def menu_1():
  50.  
  51.     print "\n"
  52.     print " 1. Conversão de string para Base64"       
  53.     print " 2. Conversão de string para Hexadecimal"
  54.     print " 3. Conversão de Base64 para string"
  55.     print " 4. Conversão de Hexadecimal para string"
  56.     print " 5. Voltar"
  57.     print " Digite o número correspondente a sua escolha"
  58.     escolha = raw_input(">> ") # Var que armazena escolha do user
  59.  
  60. # Condicionais do menu 1
  61.  
  62.     if (escolha=='1'):
  63.         convbase64()
  64.     elif (escolha=='2'):
  65.         convhex()
  66.     elif (escolha=='3'):
  67.         decodif64()
  68.     elif (escolha=='4'):
  69.         decodifhex()
  70.     elif (escolha!='1' and escolha!='2' and escolha!='3' and escolha!='4' or escolha=='5'):
  71.         menu()
  72.  
  73. # menu 2 (funções de hash)
  74.  
  75. def menu_2():
  76.  
  77.     print "\n"
  78.     print "1. MD5"
  79.     print "2. SHA1"
  80.     print "3. Voltar"
  81.     print " Digite o número correspondente a sua escolha"
  82.     escolha = raw_input(">> ") # Var que armazena escolha do user
  83.  
  84. # Condicionais do menu 2
  85.  
  86.     if (escolha=='1'):
  87.         criptMD5()
  88.     elif (escolha=='2'):
  89.         criptSHA1()
  90.     elif (escolha!='1' and escolha!='2' or escolha=='3'):
  91.         menu()
  92.  
  93.  
  94. ###################################
  95. #Funções###########################
  96. ###################################
  97.  
  98.  
  99. # Função que converte para base 64
  100.  
  101. def convbase64():
  102.  
  103.     string = raw_input(" Insira a string que deseja converter para base64 \n >> ") # Leitura da string a ser convertida
  104.     string64 = string.encode('base64') # Variável e função responsáveis pela conversão
  105.     print " A string digitada foi: \n >", string # Impressão de dados
  106.     print " A string convertida é: \n >", string64, "\n"
  107.  
  108. # Função de converte para hexadecimal
  109.  
  110. def convhex():
  111.  
  112.     string = raw_input(" Insira a string que deseja converter para hexadecimal \n >> ") # Leitura da string a ser convertida
  113.     stringhex = string.encode('hex') # Variável e função responsáveis pela conversão
  114.     print " A string digitada foi: \n >", string # Impressão de dados
  115.     print " A string convertida é: \n >", stringhex, "\n"
  116.  
  117. # Função que decodifica base64
  118.  
  119. def decodif64():
  120.     string64 = raw_input(" Insira a string base64 que deseja converter \n >> ") # Leitura da string a ser convertida
  121.     string = string64.decode('base64') # Variável e função responsáveis pela conversão
  122.     print " A string digitada foi: \n >", string64 # Impressão de dados
  123.     print " A string convertida é: \n >", string, "\n"
  124.  
  125. # Função que decodifica para hexadecimal
  126.  
  127. def decodifhex():
  128.     stringhex = raw_input(" Insira a string hexadecimal que deseja converter \n >> ") # Leitura da string a ser convertida
  129.     string = stringhex.decode('hex') # Variável e função responsáveis pela conversão
  130.     print " A string digitada foi: \n >", stringhex # Impressão de dados
  131.     print " A string convertida é: \n >", string, "\n"
  132.  
  133. # Função para criptografar MD5
  134.  
  135. def criptMD5():
  136.     string = raw_input(" Insira a string que deseja converter para MD5 \n >> ") # Leitura da string a ser criptografada
  137.     stringMD5 = hashlib.md5(string).hexdigest() # Variável e função responsáveis pela criptografia
  138.     print " A string digitada foi: \n >", string # Impressão de dados
  139.     print " A string convertida é: \n >", stringMD5, "\n"
  140.  
  141. # Função para criptografar SHA1
  142.  
  143. def criptSHA1():
  144.     string = raw_input(" Insira a string que deseja converter para SHA1 \n >> ") # Leitura da string a ser criptografada
  145.     stringSHA1 = hashlib.sha1(string).hexdigest() # Variável e função responsáveis pela criptografia
  146.     print " A string digitada foi: \n >", string # Impressão de dados
  147.     print " A string convertida é: \n >", stringSHA1, "\n"
  148.  
  149.  
  150. # Limpando a tela para iniciar o programa
  151.  
  152. system("clear || cls")
  153.  
  154. # Chamada a função do menu principal
  155.  
  156. menu()
  157.  
  158. # Fim do script!!!
Advertisement
Add Comment
Please, Sign In to add comment