Criptografia de César
Publicado por Diogo V. Kersting 30/10/2006
[ Hits: 15.902 ]
Script que implementa a criptografia de César. Uma criptografia relativamente fraca, porém mostra como é fácil manipular strings em Python.
#!/usr/bin/python # -*- coding: UTF-8 -*- # Por Diogo V. Kerting diogovk@gmail.com # Sob GNU GPL from optparse import OptionParser import sys usage = "usage: %prog [options] [mensagem]" # Objeto que manipula a linha de comando parser = OptionParser() parser.add_option("-o", "--saida", dest="arquivo_saida", help="Imprime em arquivo",metavar="ARQUIVO") parser.add_option("-e", "--encripta", action="store_true", dest="encriptar",default=False,help="Encriptar mensagem",metavar="ENCRIPTA") parser.add_option("-d", "--decripta", action="store_true", dest="decriptar",default=False,help="Decriptar mensagem",metavar="DECRIPTA") parser.add_option("-c", "--chave", action="store", dest="chave",type='int',help="Chave utilizada para encriptar ou decriptar a mensagem",metavar="CHAVE") (options, args) = parser.parse_args() if options.encriptar and options.decriptar: print 'Opções conflitantes -e e -d' if not options.encriptar and not options.decriptar: options.encriptar=True if options.chave == None: print 'É necessaria uma chave para a ação selecionada.\nTente passar uma atraves do parametro -c' sys.exit(1) if options.chave > 25 or options.chave < 1: print 'A chave deve ser de 1 a 25' print options.chave sys.exit(1) if args == ['']: mensagem=raw_input() else: mensagem='' for string in args: mensagem+=string+' ' chave=options.chave mensagem_encriptada='' if options.encriptar: for byte in mensagem: if byte.isalpha(): byte_encriptado=chr(ord(byte)+chave) if byte.isupper() and ord(byte_encriptado) > 90: byte_encriptado=chr(ord(byte_encriptado)-26) if byte.islower() and ord(byte_encriptado) > 122: byte_encriptado=chr(ord(byte_encriptado)-26) else: byte_encriptado=byte mensagem_encriptada+=byte_encriptado else: for byte in mensagem: if byte.isalpha(): byte_encriptado=chr(ord(byte)-chave) if byte.isupper() and ord(byte_encriptado) < 65: byte_encriptado=chr(ord(byte_encriptado)+26) if byte.islower() and ord(byte_encriptado) < 97: byte_encriptado=chr(ord(byte_encriptado)+26) else: byte_encriptado=byte mensagem_encriptada+=byte_encriptado print mensagem_encriptada
MsgCoder - Codificador de mensagens
Como mudar o IP aleatoriamente em Python
Identificador de spam em Python
Hash Checker - Calcule o Hash dos seus Arquivos para verficação de integridade.
Criar entrada (menuentry) ISO no Grub
Como gerar qualquer emoji ou símbolo unicode a partir do seu teclado
Instalando o Pi-Hole versão v5.18.4 depois do lançamento da versão v6.0
Instalar o VIM 9.1 no Debian 12
Como saber o range de um IP público?
Muitas dificuldades ao instalar distro Linux em Notebook Sony Vaio PCG-6131L (VPCEA24FM)