You are on page 1of 7

RELATÓRIO PARCIAL DO PROGRAMA INSTITUCIONAL DE BOLSAS DE INICIAÇÃO

EM DESENVOLVIMENTO TECNOLÓGICO E INOVAÇÃO PIBITI/CNPq/UFU

Fevereiro de 2011
IDENTIFICAÇÃO

PROJETO: Computação Bio-inspirada (CompBio): estudos e aplicações

SUB-PROJETO: Autômatos celulares aplicados em métodos criptográficos

NÚMERO DO PROCESSO: 151321-20108

BOLSISTA: Elias da Silva Policena

ORIENTADOR: Gina Maíra Barbosa de Oliveira

LOCAL DE EXECUÇÃO: UFU – Universidade Federal de Uberlândia

VIGÊNCIA DA BOLSA: Setembro de 2010 a Julho de 2011


1. Título do projeto
O título do projeto é Implementação de Métodos criptográficos Baseados em Autômatos
Celulares em Hardware Reconfigurável.

2. Resumo

Autômatos Celulares (ACs) são estruturas computacionais que se tornaram exemplos de


sistemas dinâmicos totalmente discretos, cuja implementação se dá de modo extremamente
simples. As sequências de reticulados geradas na evolução temporal de autômatos celulares
proporcionam uma opção extremamente interessante para a criptografia (Wolfram, 1986).

Partindo dessas observações, diversos pesquisadores propuseram métodos criptográficos


(Wolfram, 1986; Nandi et al., 1994; Sen et al., 2002; Oliveira et al., 2004; Gutowitz, 1995). Dentre os
autores citados, alguns utilizam regras de transição dos ACs como opções de chaves criptográficas.
Gutowitz (1995) propôs um método que utiliza o conceito de evoluir o AC para trás na cifragem e
evoluir para frente (utilizando a pré-imagem calculada) na decifragem. As regras utilizadas neste
método são sensíveis a uma das extremidades, porém, este modelo utiliza bits adicionais a cada
cálculo de pré-imagem, cuja consequência é uma diferença de tamanho entre o texto original e o
texto cifrado. O algoritmo para cálculo de pré-imagens proposto por Wuensche e Lesser (1992) foi
avaliado em um novo método de cifragem (Macedo et al., 2008; Oliveira et al., 2008), cujas
vantagens são: (i) pode ser aplicado a qualquer tipo de regra de transição (não apenas com
sensitividade nos extremos); (ii) a pré-imagem conserva o mesmo tamanho do reticulado original.
Após constatar o fato de ser impossível garantir a existência de pelo menos uma pré-imagem, e por
conseguinte nem todo texto poder ser cifrado (Oliveira et al., 2008), a linha de pesquisa baseada no
uso de ACs irreversíveis seguiu em duas direções:

Utilizando-se de uma estratégia híbrida entre o método proposto por Wuensche e Lesser
(Wuensche, 1999) e o método de Gutowitz (1993), obteve-se um processo criptográfico que
sempre sucede, no qual o texto cifrado pode sofrer algum aumento não-significativo de
tamanho em relação ao texto plano, ao qual deu-se o nome Variable-Length Encryption
Method (Oliveira et al., 2009a; 2009b; 2009c).

Utilizando dois tipos de regras a cada passo de atualização (sendo portanto um modelo de
AC não-homogêneo), em (Macedo, 2007), um novo método criptográfico foi investigado, cuja
taxa de sucesso obtido na criptografia é de 100%, sem necessidade de aumento do texto
plano. Sobre esse método, um pedido de patente foi depositado no INPI (Instituto Nacional de
Propriedade Intelectual) sob o número PI0703188-2 em Setembro de 2007 com o título
Sistema criptográfico baseado no cálculo de pré-imagem em autômatos celulares não-
homogêneos, não-aditivos e com dinâmica caótica.

Motivados pelo paralelismo intrínseco dos autômatos celulares, busca-se através deste
trabalho a implementação em hardware de sistemas criptográficos. Implementações e avaliações do
sistema criptográfico descrito na patente PI0703188-2 fora de plataformas de hardware convencionais
ainda não foram feitas, tendo esse paralelismo potencial ainda não totalmente sido explorado.
Pretende-se, com o uso da computação reconfigurável, obter um ganho de velocidade e/ou melhora
do tempo de resposta através do uso de arquiteturas massivamente paralelas, utilizando um FPGA
(Field Programmable Gate Array). Feita essa implementação, será possível obter um protótipo para a
melhor avaliação desse sistema frente a outros métodos tradicionais de criptografia, evidenciando as
vantagens dele e facilitando uma futura transferência de tecnologia.
3. Principais Objetivos

Implementar o sistema de criptografia descrito na patente PI0703188-2 em uma plataforma de


hardware reconfigurável.

Obtenção de um protótipo para a melhor avaliação desse sistema frente a outros métodos
tradicionais de criptografia.

4. Etapas e atividades do projeto

Número Completa? Nome da atividade

1 Sim Estudo de conceitos básicos sobre autômatos celulares.

2 Sim Implementação na linguagem C de autômatos celulares unidimensionais


(raio 1, raio 2 e raio 3): evolução temporal para frente.
3 Sim Estudo de conceitos básicos sobre computação reconfigurável (FPGA) e
sobre a linguagem VHDL.
4 Sim Implementação de exemplos simples e didáticos em VHDL e execução dos
mesmos em FPGA.
5 Não Implementação na linguagem VHDL de autômatos celulares unidimensionais
(raio 1, raio 2 e raio 3): evolução temporal para frente.
6 Sim Estudo de conceitos básicos sobre criptografia e métodos criptográficos
baseados em ACs.
7 Não Implementação de um ambiente computacional na linguagem C para
reprodução do método de criptografia em (Gutowitz, 1993).
8 Não Implementação de um ambiente computacional na linguagem C para
reprodução do método de criptografia em (Macedo, 2007).
9 Não Implementação do sistema criptográfico da patente PI0703188-2 na
linguagem VHDL e execução em FPGA.
10 Não Execução de experimentos com o sistema implementado em 9.

11 Não Análise dos resultados.

12 Não Elaboração do relatório final.

5. Resumo sucinto dos resultados obtidos

Dada uma sequência de bits armazenados em um espaço que chamaremos reticulado, foi
proposto por Mitchell (1994) um experimento cujo objetivo é encontrar regras de autômatos celulares
de raio 3 que classificassem a densidade desse reticulado. Por classificar, entenda-se aqui encontrar
regras que quando aplicadas ao reticulado o evoluíssem em um dado limite de tempo, de modo que
nessa sequência de bits fiquem somente zeros ou somente uns se inicialmente existiam mais zeros
ou mais uns, respectivamente. O desempenho da regra é a porcentagem das vezes que essa tarefa
de classificação da densidade (TCD) foi executada com sucesso. No modelo utilizado, decidiu-se por
implementar essa tarefa de busca das regras com melhor desempenho através do uso de algoritmos
genéticos. O objetivo desse experimento era de familiarizar-se com os conceitos de inteligência
artificial.

Seguem abaixo os resultados da execução dessa tarefa.


Faixa de desempenho das Nº regras encontradas em Nº de regras encontradas nos
regras (%) “Mitchell” resultados obtidos

< 50 6 2

>50 e < 55 4 1

>55 e < 60 0 0

>60 e < 65 16 35

>65 e < 70 69 58

>70 e < 75 3 1

>75 2 3

TOTAL DE EXPERIMENTOS 100 100

MÉDIA DE DESEMPENHO 65% 65%

“Mitchell” Resultados obtidos

Desempenho 1ª melhor regra 76,1% 76,9%

Desempenho 2ª melhor regra 75,6% 76,1%

O estudo e a implementação de exemplos simples e didáticos na linguagem VHDL foi feito


com sucesso, resultando em um bom aproveitamento e aquisição de conhecimento para as próximas
fases do projeto a serem executadas, principalmente no que tange à implementação de autômatos
celulares em hardware reconfigurável e dos métodos criptográficos que se baseiam neles.

6. Referências

Bäck T, Fogel DB, Michalewicz Z. Evolutionary computation 2 advanced algorithms


and operators. Bristol and Philadelphia: Institute of Physics Publishing (IOP);
2000.
Bar-Yam, Y. (1997). Dynamics of Complex Systems. Massachusetts: Addison-
Wesley.
Culik II, K., Hurd, L. P., Yu, S. (1990). Computation Theoretic Aspects of Cellular
Automata. Physica D, v.45, p.357-378.
Das R.; Crutchfield, J. P.; Mitchell, M.; Hanson J. E. (1995). Evolving globally
synchronized cellular automata. In. L. J. Eshelman (ed.), Proceedings of the Sixth
International Conference on Genetic Algorithms: Morgan Kaufmann.
Goldberg, D.E. (1989). Genetic algorithm in search, optimization and machine
learning. Addison-Wesley.
Gutowitz, H. (1993). Cryptography with Dynamical Systems, H.A. Gutowitz, In:
Cellular Automata and Cooperative Phenomena, Eds: E. Goles and N. Boccara,
Kluwer Academic Press.
Hordijk W.; Crutchfield, J. P.; Mitchell, M. (1996). Embedded-Particle
Computation in Evolved Cellular Automata. Proceedings of Physics and
Computation.
Land, M., Belew, R. (1995). No Perfect Two-State Cellular Automata for Density
Classification Exists. Physical Review Letters, v. 74, n.25, p.5148.
Li, W.; Packard, N. (1990). The Structure of Elementary Cellular Automata Automata
Rule Space. Complex Systems, Vol. 4.
Macedo, H.; Lima, M. J. L., Oliveira, G. M. B. Searching for a Cryptographic Model
Based on the Pre-Image Calculus of Cellular Automata. In: Simpósio Brasileiro de
Redes Neurais, 2008, Salvador. Proceedings The Tenth Brazilian Symposium on
Neural Networks: SBRN2008. Los Alamitos,Washington,Tokio : IEEE Computer
Society, 2008. v. 1. p. 153-158.
Mitchell, M. (1996). Computation cellular automata: a selected review. In: T. Gramss
(ed.), Nonstandard Computation: Weinheim. VCH Verlagsgesellschaft.
Mitchell, M. (1997). An Introduction to Genetic Algorithms. Mit Press. Massachusetts.
Oliveira, G.M.B. (1999). Dinâmica e evolução de autômatos celulares
unidimensionais. Tese de doutorado apresentada à Divisão de Pós-Graduação do
Instituto Tecnológico de Aeronáutica (ITA). São José dos Campos.
Oliveira, G.M.B.; de Oliveira, P.P.B.; Omar, N. (2000a). Guidelines for Dynamics-
Based Parameterization of One-Dimensional Rule Spaces Cellular Automata,
Complexity Journal, 6(2), MIT Press, 63-71.
Oliveira, G.M.B.; de Oliveira, P.P.B.; Omar, N. (2000b). Evolving Solutions of the
Density Classification Task in 1D Cellular Automata, Guided by Parameters that
Estimate their Dynamic Behavior. Proceedings of the Artificial Life VII,
Portland.
Oliveira, G.M.B.; de Oliveira, P.P.B.; Omar, N. (2001). Definition and Applications of
a Five-Parameter Characterization of One-Dimensional Cellular Automata Rule
Space, Artificial Life, MIT Press, 277-301.
Oliveira, G.M.B., Bortot, J.C., de Oliveira, P.P.B. (2002a). Multiobjective Evolutionary
Search for One-Dimensional Cellular Automata in the Density Classification Task In:
Artificial Life VIII, 2002, Sydney. Proceedings of Artificial Life VIII. MIT Press,
2002.
Oliveira, G.M.B., Asakura, O.K., de Oliveira, P.P.B. (2002b). Dynamic behaviour
forecast as a driving force in the coevolution of one-dimensional cellular automata In:
Simpósio Brasileiro de Redes Neurais, 2002, Recife. Proceedings of SBRN2002.
IEEE Computer Society Press, 2002.
Oliveira, G.M.B. (2003). Autômatos Celulares: aspectos dinâmicos e computacionais.
III Jornada de Atualização em Inteligência Artificial (MCIA), pp. 297-345.
Sociedade Brasileira de Computação, 2003.
Oliveira, G.M.B., Asakura, O.K., de Oliveira, P.P.B. (2003). Coevolutionary search for
one-dimensional cellular automata, based on parameters related to their dynamic
behaviour. Journal of Intelligent and Fuzzy Systems, vol. 13, n. 2-4: pp. 99-110. IOF
Press (Estados Unidos), 2003.
Oliveira, G.M.B.; Siqueira, S.R.C. (2005a). Using dynamic behavior prediction to guide
an evolutionary search for designing two-dimensional cellular automata. In:
ECAL2005-VIIIth European Conference on Artificial Life, 2005, Canterbury.
Advances in Artificial Life. Lecture Notes in Artificial Intelligence. 3630., 2005. p.
491-499.
Oliveira, G.M.B.; Siqueira, S.R.C. (2005b). Previsão dinâmica e recurso compartilhado
auxiliando a busca evolutiva de autômatos celulares bidimensionais. In: VII
Congresso Brasileiro de Redes Neurais, 2005, Natal. Anais do CBRN2005, 2005.
Oliveira, P. P. B.; Vaiano, R.B. (2005) Buscando um autômato celular para resolver o
problema da paridade . In: Encontro Nacional de Inteligência Artificial
(ENIA2005), São Leopoldo, RS. Anais do 5o. Encontro Nacional de Inteligência
Artificial, 2005. p. 1202-1205.
Oliveira, P.P.B.; Bortot, J.C.; Oliveira, G.M.B. (2006). The best currently known
cellular automata rules for density classification and the evolutionary mechanisms that
led to them. Neurocomputing (Amsterdam), v. 70, p. 35-43, 2006.
Oliveira, G.M.B.; Siqueira, S.R.C. (2006). Parameter Characterization of Two-
Dimensional Cellular Automata Rule Space. Physica D - Nonlinear Phenomena, v.
217, n. 1, p. 1-6, 2006.
Oliveira, G.M.B, Macedo, H. ; Branquinho, A. ; Lima, M. J. L. . A Cryptographic
Model Based on the Pre-image Calculus of Cellular Automata. In:
AUTOMATA2008: Workshop Cellular Automata Theory and Applications, 2008,
Bristol. AUTOMATA2008: Theory and Applications on Cellular Automata, 2008. v.
1. p. 139-153.
Oliveira, G.M.B.; Martins, L. G. A.; Alt, L. ;Ferreira, G. (2010a). A Cellular Automata-
Based Cryptographic Model with a Variable-Length Ciphertext. In: International
Conference on Scientific Computing (CSC 2010), 2010, Las Vegas. Proceedings
of Conference on Scientific Computing, 2010. v. 1. p. 1-10.
Oliveira, G.M.B.; Martins, L. G. A.; Alt, L. ; Ferreira, G. (2010b). Exhaustive
Evaluation of Radius 2 Toggle Rules for a Variable-Length Cellular Automata
Cryptographic Model.. In: International Conference on Cellular Automata for
Research and Industry, 2010, Ascoli. Lecture Notes in Computer Science (LNCS),
2010. v. 6350. p. 1-10.
Oliveira, G.M.B.; Martins, L. G. A. ; Alt, L. ; Ferreira, G. (2010c) . Secret Key
Specification for a Variable-Length Cryptographic Cellular Automata-Based
Model. In: 11th International Conference on Parallel Problem Solving From
Nature (PPSN2010), 2010, Krakow. Lecture Notes in Computer Science (LNCS),
2010. v. 6239. p. 1-10.
Packard, N. H. (1988). Adaptation towards the edge of the chaos. In: Dynamic Patterns
in Complex Systems, pages 293 – 301, J. A. S. Kelso, A.J. Mandell, M. F.
Shlesinger (eds.). Singapore, World Scientific.
Sacchetin, M.C., Lopes, J.J., Wolf, D.F., Silva, J.L. e Marques, E (2007). “Analysis and
Implementation of Localization and Mapping Algorithms for Mobile Robots
based on Reconfigurable Computing”, In: Latin American Applied Research,
37:31-34, 2007.
Sipper, M. (1998). Computing with Cellular Automata: Three Cases for Nonuniformity.
Physical Review E, v. 57, n.I.3.
Siqueira, S.R.S. (2004). Evolução de Autômatos Celulares Bidimensionais na
Resolução da Tarefa de Classificação da Densidade. Dissertação de mestrado,
Universidade Presbiteriana Mackenzie, 2004.
Valen, V. L. (1971). A New Evolutionary Law. Evolutionary Theory, 1.
Werfel J.; Mitchell, M.; Crutchfield, J. P. (1999). Resource Sharing and Coevolution in
Evolving Cellular Automata. IEEE Transactions on Evolutionary Computation.
Wolfram, S. (1983). Cellular Automata. Los Alamos Science. Vol. 9.
Wolfram, S. (1984). Universality and Complexity in Cellular Automata. Physica D,
v.10, p.1-35.
Wolfram, S. (2002). A New Kind of Science, Wolfram Media.