\chapter{Influência da Cifra de Hill nos métodos criptográficos atuais}
	Pode-se dizer que a Cifra de Hill funcionou como um passo na história da
	criptografia, introduzindo as idéias de proteção de mensagens através de
	matrizes, mas acabou tornando-se obsoleta uma vez que seus pontos fracos
	começaram a ser descobertos e suas defesas foram quebradas. Então novos métodos
	de criptografia foram criados com o passar do tempo. Os grandes responsáveis
	por essa grande evolução na criptografia no século XX foram os avanços na
	Ciência da Computação, trazendo algoritmos mais poderosos; e também o uso de
	novas idéias matemáticas como por exemplo: permutações (uma permutação é uma
	bijeção, de um conjunto finito X nele mesmo) usadas no DES e Triple DES,
	operações de rotação (transformação geométrica de um sistema de coordenadas)
	usadas no RC5 e a o teorema fundamental da aritmética (capacidade de decompor
	qualquer inteiro em fatores primos) usado como base para o RSA.
	
	O legado da Cifra de Hill, a qual se valia de operações matriciais de
	multiplicação e inversão para encriptar e decriptar suas mensagens, foi passado
	adiante. Porém nos novos métodos de criptografia as matrizes com suas operações
	não executam o papel que tinham na Cifra de Hill, que era o de encriptar e
	decriptar a mensagem. Nos novos métodos as matrizes armazenam as chaves,
	subchaves e blocos de texto utilizados, a fim de agilizar e organizar o
	funcionamento do algoritmo o tornando mais compreensível e confiável. Abaixo
	seguem alguns métodos criptográficos atuais e como eles usam matrizes:

	\begin{description}
		\item[DES]
			O algoritmo de criptografia simétrica DES gera 16 subchaves a partir da
			chave fornecida, as quais serão usadas nas 16 ``rodadas'' de encriptação. A
			matriz ChavesK armazena essas 16 subchaves, uma por linha. Cada uma dessas
			subchaves é gerada a partir da anterior por uma rotação de bits.
		\item[Blowfish]
			No algoritmo Blowfish, a matriz ChavesP armazena as 18 subchaves que são
			utilizadas nesse algoritmo, também uma por linha. O algoritmo faz uso de uma
			função de Feistel, e a matriz F armazena os resultados gerados pela função
			após cada iteração sobre o bloco de texto plano.
		\item[RC5]
			A matriz MatrixBlocosHex é uma matriz onde cada linha corresponde a um bloco
			de texto a ser cifrado. As matrizes SH armazenam as S-boxes (são função
			permutação que têm a chave como parâmetro). Já a matriz CriptoMatrix
			armazena os blocos de texto já devidamente criptografados, um por linha.
		\item[IDEA]
			K é uma matriz que armazena todas as 52 subchaves utilizadas nesse
			algoritmo, uma por linha. Já $K_{inv}$ é a matriz que armazena o
			\emph{inverso} (multiplicativo ou aditivo, conforme o caso) de cada uma das
			52 subchaves, também uma por linha.
    \end{description}
