Krypt - Função de criptografia por chave de qualquer tamanho
Publicado por Danillo Souza (última atualização em 26/08/2010)
[ Hits: 9.113 ]
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
Mkpass - Função para gerar senhas aleatórias
Automação de scan de vulnerabilidades
Brute force, algo à aprimorar?
Nenhum comentário foi encontrado.
Boas Práticas e Padrões Idiomáticos em Go e C
Vale a pena ter mais de uma interface grafica no seu Linux?
Estrutura e Funcionamento de um Ebuild no Gentoo Linux
Copiar Para e Mover Para no menu de contexto do Nautilus e Dolphin
Dotando o Thunar das opcoes Copiar para e Mover para no menu de contexto
Usando o ble.sh (Bash Line Editor) no lugar do bash completion
Montagem pré automática de HD externo usb em NTFS não funciona no Debian Trixie - Solução
Instalação Dual Boot Linux+Windows 11 (4)
No Ubuntu 26.04, sudo passou a mostrar os asteriscos ao digitar por pa... (5)
Como instalar Warsaw no Gentoo? (0)
Como insiro e excluo um elemento XML e JSON ao código Javascript (1)









