Você está na página 1de 5

ATIVIDADE PRÁTICA DE MATEMÁTICA COMPUTACIONAL

Aluno: Thiago Augusto Moreira dos Santos

RU : 37726280

Resumo. Apresentação da Atividade Prática de Matemática Computacional


com o enunciado: Codificar as 8 primeiras letras de seu nome por
criptografia simétrica pelo algoritmo elementar XOR utilizando uma chave
criptográfica baseada no RU (identificação do aluno na UNINTER). Após a
obtenção da cifra decodificá-la comprovando a reciprocidade do processo.
Durante a apresentação da atividade, foram abordados brevemente temas
como criptografia simétrica e o funcionamento da chave elementar XOR.

Introdução Teórica
A criptografia é uma ciência que se baseia na cifragem de dados para remodelar
informações por meio de uma ou mais chaves, de modo que tais informações fiquem
embaralhadas e sem sentido lógico até a decifragem dos dados. Dessa forma, somente o
detentor das chaves de criptografia utilizadas pode ter acesso às informações originais. 
Por essas características, a criptografia tem a função principal de impedir que qualquer
tipo de dado seja lido sem que haja permissão, caso ocorra a invasão ou acesso indevido
a estes. Da mesma maneira, dados criptografados estão seguros para serem transmitidos
nos diversos meios de comunicação, uma vez que a mensagem original está modificada.
Nesta atividade prática, foi utilizada a criptografia do tipo simétrica, a qual
utiliza apenas uma única chave tanto para a cifragem dos dados quanto para a
decifragem. Além disso, foi utilizada a porta XOR como algoritmo de encriptação e
geração da cifra. A mensagem criptografada foram os oito primeiros dígitos do nome,
mais um espaço, do estudante que escreve esta atividade prática, e pode ser resumida
por “Thiago Au”. Os resultados foram dispostos em uma tabela-resumo para melhor
visualização.
A Chave que será utilizada para a criptografia simétrica da mensagem, baseada
no meu RU, foi criada utilizando-se os dois primeiros dígitos e depois transformando-os
em seu equivalente hexadecimal como segue a seguir:
RU: 37726280 → 37 H → 00110

1
Desenvolvimento

Após escolher a chave que será utilizada, foram separados os valores em binário
para cada letra equivalente do nome “Thiago Au”, segundo a tabela ASCII 67. Os
resultados estão dispostos abaixo:
T → 0101 0100
h → 0110 1000
i → 0110 1001
a → 0110 0001
g → 0110 0111
o → 0110 1111
(espaço) → 0010 0000
A → 0100 0001
u → 0111 0101
Como foi visto anteriormente, baseado no RU, a chave utilizada para a
criptografia e descriptografia será a 37 H, ou 00110111 em valores convertidos para
binário. Observa-se que tanto os valores em binário equivalentes às letras da tabela
ASCII 67 quanto a chave escolhida possui 8 dígitos, o que facilitará o processo de
cifragem. 
Para este processo criptográfico, foi definido pelo enunciado do trabalho prático
a porta elementar XOR. Em síntese, nela os valores binários que são diferentes entre si
resultam em uma saída de valor “1”. Segue abaixo o funcionamento desta porta:

Funcionamento porta XOR


A B S = A⊕B

0 0 0

0 1 1

1 0 1

1 1 0
Fonte: Elaborado pelo autor.

2
Em seguida, foi feita a criptografia da mensagem pela porta elementar em
questão, como exemplificado abaixo:

T  37 H XOR h 37 H XOR i 37 H XOR

0 0 0 0 0 0 0 0 0

1 0 1 1 0 1 1 0 1

0 1 1 1 1 0 1 1 0

1 1 0 0 1 1 0 1 1

0 0 0 1 0 1 1 0 1

1 1 0 0 1 1 0 1 1

0 1 1 0 1 1 0 1 1

0 1 1 0 1 1 1 1 0

a  37 H XOR g 37 H XOR o 37 H XOR

0 0 0 0 0 0 0 0 0

1 0 1 1 0 1 1 0 1

1 1 0 1 1 0 1 1 0

0 1 1 0 1 1 0 1 1

0 0 0 0 0 0 1 0 1

0 1 1 1 1 0 1 1 0

0 1 1 1 1 0 1 1 0

1 1 0 1 1 0 1 1 0

“” 37 H XOR A 37 H XOR u 37 H XOR

0 0 0 0 0 0 0 0 0

0 0 0 1 0 1 1 0 1

1 1 0 0 1 1 1 1 0

0 1 1 0 1 1 1 1 0

3
0 0 0 0 0 0 0 0 0

0 1 1 0 1 1 1 1 0

0 1 1 0 1 1 0 1 1

0 1 1 1 1 0 1 1 0

Mensagem em bits pelo ASCII 67: 


010101000110100001101001011000010110011101101111001000000100000101110101
Resultado da mensagem cifrada pela chave 37 H e algoritmo XOR: 
011000110101111101011110010101100101000001011000000101110111011001000010

Quadro-resumo com as informações da criptografia completa:


MENSAGEM (A) CHAVE 37 H (B) A⊕B ASCII

01010100 00110111 01100011 T

01101000 00110111 01011111 h

01101001 00110111 01011110 i

01100001 00110111 01010110 a

01100111 00110111 01010000 g

01101111 00110111 01011000 o

00100000 00110111 00010111 (espaço)

01000001 00110111 01110110 A

01110101 00110111 01000010 u


Fonte: Elaborado pelo autor.

A seguir, será demonstrado de forma simplificada o processo de decodificação,


utilizando-se da mesma chave 37H. nota-se que a chave será repetida em cada sequência
de 8 bits: 

4
(A) 011000110101111101011110010101100101000001011000000101110111011001000010

(B) 001101110011011100110111001101110011011100110111001101110011011100110111

(A⊕B) pela porta XOR

010101000110100001101001011000010110011101101111001000000100000101110101

Nota-se que o resultado da descriptografia acima resultou na mesma mensagem


em bits demonstrada anteriormente antes da cifragem, o que conclui a funcionalidade e
aplicabilidade da criptografia simétrica.

Conclusão
A criptografia, apesar de ser um processo poderoso para a segurança de dados, é
um tópico que quando demonstrado de forma simplificada e sintetizada, pode ser de
fácil entendimento para qualquer indivíduo que esteja buscando esse conhecimento.
Neste trabalho prático, foi possível demonstrar a aplicabilidade da criptografia simétrica
em um exemplo de fácil compreensão. Notou-se que, após a criptografia da mensagem
utilizando-se da chave e do algoritmo da porta elementar XOR, foi possível, pelo
mesmo processo inicial e com a utilização da mesma chave, retornar à mensagem
original antes da cifragem. Este modelo teórico pode ser implementado de forma
simples em um programa de computador, como por exemplo, na linguagem Python,
criando-se assim uma ferramenta útil de criptografia que pode ser utilizada em diversos
projetos.

Referências Bibliográficas
https://www.ime.usp.br/~kellyrb/mac2166_2015/tabela_ascii.html - acessado em
23/10/2021

Você também pode gostar