Krypt - Função de criptografia por chave de qualquer tamanho
Publicado por Danillo Souza (última atualização em 26/08/2010)
[ Hits: 9.119 ]
Criptografia por substituição polialfabética. A mesma função seve para criptografar e descriptografar.
#! /usr/bin/python
#-*- coding: utf-8 -*-
import string
import random
def krypt(msg = '', key = 16):
# checando parâmetros
if type(msg) != type(''):
msg = str(msg)
if type(key) != type(1):
if type(key) == type(''):
key = sum([ord(i) for i in key])
else:
key = int(key)
# criando o arranjo de caracteres
arranje = [chr(i) for i in range(32, 127)]
# vetores para formar os pares
alph1 = [i for i in arranje[:47]]
alph2 = [i for i in arranje[47:]]
# definindo a semente de randomização
random.seed(key)
# embaralhando os vetores de caracteres
random.shuffle(alph1)
random.shuffle(alph2)
# gerando os pares
alpha = zip(alph1, alph2)
cript = ''
# fazendo a substituição - gerando a cifra
for i in range(len(msg)):
for j in alpha:
if msg[i] == j[0]:
cript = cript + j[1]
break
elif msg[i] == j[1]:
cript = cript + j[0]
break
# retornando a cifra como uma string
return cript
Como mudar o IP aleatoriamente em Python
Identificador de spam em Python
Mkpass - Função para gerar senhas aleatórias
Cracker De Senha (cupp.py) 1.0
Nenhum comentário foi encontrado.
Como rodar o Folding@home no Linux
Criando um painel de controle (Dashboard) para seu servidor com o Homepage
O Abismo entre o Código e o Chão: Saltos Tecnológicos e a Exclusão Estrutural no Brasil
Instalar e Configurar a santíssima trindade (PAP) no Void Linux
Lançamento do Brutal DOOM test 6
Consertando o erro no Brave de webgl
Solução para ter de volta as bordas e barra de títulos das janelas em zenity no Debian 13.x
NixOS + NVIDIA antiga: como sobreviver ao driver 595 (GTX 750 Ti / Maxwell)
O que você está ouvindo agora? [2] (244)
Qual melhor distro para esse notebook? (1)









