Muitos trabalhos já se debruçaram sobre as características aleatórias dos ACs, particularmente sobre aqueles ditos elementares, isto é, os que são unidimensionais, binários e usam uma vizinhança mínima [WOLFRAM 1983].
Stephen Wolfram foi o primeiro a utilizar AC nos domínios da criptografia e, em seu artigo [WOLFRAM 1986B], ele avalia o AC que usa a regra 30 como sendo apropriada para um PRNG, devido às suas características de aleatoriedade. Wolfram propôs um sistema criptográfico baseado em seu gerador de sequência temporal [WOLFRAM 1986A]. Entretanto, esse sistema foi quebrado por Meier et al. [MEIER 1991].
Outra linha de pesquisa é o trabalho de Hortensius et al. [HORTENSIUS 1989A] que apresenta o AC híbrido 90/150 com base no trabalho de Pries et al. [PRIES 1986]; Hortensius compara o AC híbrido com as regras 30 e 45 e também com o tradicional LFSR Linear Feedback Shift Register. O foco desses experimentos leva em consideração o layout para a geração de vetores de teste na fabricação de chips VLSI; ambos os ACs tiveram melhor desempenho que o LFSR.
O AC híbrido com condição de fronteira nula tem períodos mais longos que o AC regra 30 com condições de fronteira periódica. Os ACs híbridos são constituídos por duas ou mais regras que são combinadas para, entre outras características, produzir ciclos com períodos máximos. Os resultados desse artigo foram alcançados por meio de busca exaustiva.
Outro trabalho de Hortensius et al. [HORTENSIUS 1989B] faz uma contribuição no convencional gerador de teste padrão LFSR para circuitos built-in self- test com o emprego do AC unidimensional híbrido 90/150; os testes demonstraram propriedades aleatórias aceitáveis e também se mostraram adequados para uso em testes de VLSI. Os autores mostram que o AC híbrido 90/150 pode ser construído de maneira a se comportar exatamente como um LFSR e, consequentemente, produzir uma sequência aleatória de ciclo máximo e único, contendo 2n - 1 estados, onde n é
o número de células do AC.
É apresentada no artigo de Serra et al. [SERRA 1990] a definição de propriedades para simplificar um AC linear com condições de fronteira nula com base em um polinômio primitivo. Os autores também identificaram um isomorfismo entre a matriz de transição de um LFSR e a de um AC híbrido, mostrando que são similares, e fornecem um algoritmo para produzir a matriz de transição para um AC linear usando apenas as regras 90 e 150, dado um polinômio característico. Outros autores melhoraram esses resultados e apresentaram outros algoritmos, como Cattel et al. [CATTELL 1996 ] e Cho et al. [CHO 2007].
No trabalho de Bardel [BARDELL 1990] vemos que as saídas de um AC linear híbrido e de um LFSRs são idênticas. O autor propõe a conjectura de que não há AC híbrido 90/150 com condições de fronteira periódica que tenha polinômio característico primitivo e que produza ciclo máximo. Essa conjectura é comprovada por Nandi et al. [NANDI 1994]; em seu trabalho eles também afirmam que a fronteira periódica de um AC linear fornece melhor aleatoriedade estatística do que a fronteira nula. Essa afirmação também é suportada por Cho et al. [CHO 2007].
No artigo de Nandi et al. [Nandi 1994], os autores examinam o comportamento de um grupo de ACs híbrido com as regras 51, 153 e 195 para serem utilizadas em sistemas criptográficos. Entretanto esse trabalho foi revisado e esses sistemas foram quebrados por Blackburn et al. [BLACKBURN 1997].
Sipper et al. [SIPPER 1996] apresentaram um algoritmo genético na produção de geradores de números aleatórios e descobriram um novo ACs híbrido,
formado com as regras elementares 165, 90 e 150 e o outro com as regras 165 e 225. Quando comparados ao AC de regra 30 e ao AC híbrido 90/150, se mostraram mais interessantes no atributo aleatoriedade e são vistos como bons geradores para uso geral, sem contudo serem boas alternativas para aplicações seguras (CSPRNGs).
No trabalho de Koc et al. [KOC 1997], investigou-se a alegação feita por Wolfram de que não seria possível recuperar o estado inicial de um AC após algumas iterações, dado que inverter uma sequência de estados sobre um autômato de tamanho n usando a regra 30 era um problema NP-completo. Os autores desenvolveram um algoritmo e mostraram que a regra 30 pode ser invertida em tempo O(n) para alguns valores de sementes e até 2n/2 operações são necessárias para
outros diversos valores de sementes, com coleta realizada por linha.
Os autores Tomassini et al. [TOMASSINI 1999] apresentaram um estudo sobre PRNGs com ACs elementares uniformes e não uniformes; eles utilizaram programação celular e algoritmo genético para encontrar as melhores regras. Afirmaram que os ACs não uniformes (ACs Híbridos) são melhores; no entanto, eles os consideraram inferiores ao PRNG Congruente Linear e ao PRNG defasado Fibonacci. Mesmo assim, a aleatoriedade das sequências geradas pode ser satisfatória para muitas aplicações.
Tomassini et al., em outro artigo [TOMASSINI 2000], apresentam a descrição de um simples sistema de criptografia de chaves baseado em autômato celular. Eles comparam o novo sistema a outras duas propostas e mostram que o mesmo parece ser mais seguro, uma vez que a reconstrução da chave requer uma quantidade de recursos computacionais exponencial em relação ao tamanho da chave. A vantagem prática dos ACs descritos no artigo é que eles são muito fáceis e baratos de implementar em hardware e software e podem atender a muitas aplicações nas quais um alto grau de segurança é necessário, mas a inviolabilidade absoluta não é.
A resposta ao grande número de trabalhos realizados com os ACs híbridos, nas últimas 3 décadas, se deu devido a pesquisas no campo de VLSI, que se iniciou no Instituto Indiano de Tecnologia (IIT), Kharagpur, Índia, em meados de 1980. O maior objetivo desse grupo de pesquisa, foi em cima de testes em VLSI, especificamente o projeto on-chip Built-In Self-Test (BIST), uma estrutura para melhorar a testabilidade de circuitos VLSI.
3.6 Conclusões
Neste capítulo investigamos dois grandes grupos de geradores de números aleatórios: os geradores de números verdadeiramente aleatórios (TRNGs) e os de pseudoaleatórios (PRNGs).
No caso dos TRNGs, consideramos como as sequências de bits são obtidas por meio de duas categorias: as fontes de ruídos físicos e as fontes de ruídos não físicos.
Já para os PRNGs, listamos alguns algoritmos determinísticos e ilustramos como podem ser gerados os bits pseudoaleatórios a partir de um estado inicial. Também suas principais propriedades foram analisadas e apresentadas.
Por fim apresentamos os trabalhos relacionados e observamos que os ACs híbridos têm sido utilizados na geração de padrões de testes para circuitos que demandam geradores aleatórios simples e eficientes, no entanto não são úteis para aplicações criptográficas.