Professional Documents
Culture Documents
Descrio do trabalho:
Para esta atividade foi desenvolvido duas funes algortmicas utilizando-se Programao
funcional na linguagem Python. Os algoritmos foram desenvolvidos utilizando-se a lgica de
mapeamento baseado na Tabela Ascii assim como mencionado no uso de Tabelas de
Alfabetos Cifrantes e no padro da Rgua de Saint-Cyr.
Resumindo o mapeamento:
Foi utilizado o padro de embaralhamento de dados assim com o padro BASE64, porm neste
caso utiliza-se apenas o valor decimal da Tabela Ascii acrescido da chave nica que
adicionada ao incio do valor obtido aps criptografia, todos os valores so justificados a
direita com zeros a esquerda para montar um padro de 3 casas para casa caractere.
Sendo assim, o caractere a com valor decimal na Tabela Ascii de 97, e chave 15 ser
representado com o valor 112, para retornar o mesmo basta remover a chave utilizando
subtrao e capturar o caractere referente ao valor representado na tabela com o nmero
resultante.
Algoritmo de codificao:
encode = lambda value,key=ord('\x7f'): "{0}{1}".format(str(key).rjust(3,chr(48)),
"".join([str(ord(x)+key).rjust(3,chr(48)) for x in value]))
Algoritmo de decodificao:
decode = lambda value: "".join([chr(int(value[3:][3*x:3*(x+1)])-int(value[:3])) for x in range(
((len(value[3:])-3)//3)+1 )])