Computadores são excelentes em seguir regras. Dê a mesma instrução, nas mesmas condições, e a máquina tende a chegar ao mesmo resultado. Ainda assim, todos os dias dependemos deles para produzir números que ninguém deveria conseguir prever com facilidade. Eles aparecem em sistemas de segurança, simulações, jogos e até sorteios digitais. Isso cria um paradoxo interessante: como uma máquina construída para obedecer regras pode produzir algo genuinamente imprevisível?
O computador consegue criar algo que parece completamente caótico
Quando um programa precisa de números aleatórios, normalmente não existe um pequeno botão interno escrito “azar”.
O caminho mais comum é usar um gerador de números pseudoaleatórios. Ele começa com um valor inicial, chamado de semente, e aplica uma sequência de operações matemáticas para produzir números que parecem não seguir nenhuma ordem.
Para quem observa apenas o resultado, a sequência pode parecer perfeitamente aleatória. Os valores passam por testes estatísticos e podem ser suficientemente imprevisíveis para diversas aplicações.
Mas existe um detalhe escondido.
Se alguém conhecer exatamente o algoritmo utilizado e descobrir a semente inicial, poderá reproduzir a sequência inteira. O que parecia ser uma sucessão caótica de números, na verdade, foi determinada desde o primeiro cálculo.
Isso não significa que o pseudoaleatório seja inútil. Muito pelo contrário.
Em simulações científicas, por exemplo, poder reproduzir exatamente uma sequência é uma vantagem enorme. Pesquisadores podem executar novamente um experimento virtual usando a mesma semente e verificar se obtêm os mesmos resultados.
O problema aparece quando a imprevisibilidade não é apenas desejável, mas essencial.
Uma sequência previsível pode colocar sistemas inteiros em risco
Na criptografia, simplesmente parecer aleatório não é suficiente.
Um gerador mal projetado pode produzir padrões, correlações ou ciclos que acabam sendo identificados. Se um invasor conseguir prever determinados valores utilizados na criação de uma chave criptográfica, poderá ter acesso a informações que deveriam permanecer protegidas.
É por isso que a qualidade da fonte de aleatoriedade é tão importante em sistemas de segurança.
A questão é antiga. O matemático John von Neumann chegou a fazer uma crítica famosa à ideia de produzir números aleatórios apenas por meio de procedimentos aritméticos. A ironia escondia um problema real: se tudo acontece seguindo uma regra conhecida, existe, pelo menos em princípio, uma maneira de reconstruir o processo.
A informática moderna desenvolveu algoritmos extremamente sofisticados para tornar essa previsão muito difícil. Ainda assim, uma característica permanece: um algoritmo continua sendo uma regra determinística.
Então surge uma possibilidade diferente.
E se, em vez de pedir ao computador que invente o acaso, fizéssemos a máquina observar alguma coisa que realmente acontece no mundo?
Randomness is hard to achieve.
It is why the security of 10% of the internet is secured by a wall of lava lamps watched by a camera to generate true randomness https://t.co/oriMqHbXgl pic.twitter.com/8RK58YzezV
— Ethan Mollick (@emollick) April 19, 2024
A pista aparece quando a máquina começa a ouvir o mundo físico
É aqui que entram os geradores de números verdadeiramente aleatórios, conhecidos como TRNGs.
Em vez de depender exclusivamente de cálculos, esses sistemas podem medir fenômenos físicos extremamente difíceis de reproduzir com precisão. Pequenas flutuações elétricas, ruído térmico de componentes, variações de sinais e outros processos físicos podem fornecer a matéria-prima necessária para gerar números imprevisíveis.
A diferença é fundamental.
O computador continua fazendo os cálculos necessários para transformar aquela informação em números utilizáveis. Mas a origem da incerteza não está mais apenas dentro do algoritmo.
Alguns sistemas vão ainda mais longe e recorrem à própria mecânica quântica.
Um exemplo envolve a emissão ou detecção de fótons em dispositivos nos quais diferentes resultados são possíveis. O resultado individual de determinados eventos quânticos, segundo a interpretação padrão da teoria, não pode ser tratado simplesmente como uma informação escondida que uma máquina suficientemente precisa conseguiria descobrir antecipadamente.
Isso transforma fenômenos quânticos em uma das fontes mais interessantes de aleatoriedade física.
Nem mesmo um teste perfeito consegue provar que existe acaso absoluto
Existe, porém, outro problema.
Como saber se uma sequência é realmente aleatória?
Olhar para uma lista de números e perceber que eles parecem desorganizados não serve. Pesquisadores utilizam grandes conjuntos de testes estatísticos para procurar padrões, repetições incomuns, distribuições desequilibradas e correlações entre valores.
Se uma sequência falhar, é possível encontrar evidências de que existe algum problema.
Mas o contrário é mais complicado.
Passar por todos os testes disponíveis não prova matematicamente que uma sequência seja absolutamente aleatória. Significa apenas que os testes realizados não encontraram determinadas formas de regularidade.
É por isso que a resposta para a pergunta inicial é mais interessante do que parece.
Uma máquina convencional pode produzir pseudoaleatoriedade extremamente convincente apenas com matemática. Para obter uma fonte de incerteza que não dependa exclusivamente de uma sequência previamente determinada pelo algoritmo, porém, o computador precisa buscar algo fora de seus próprios cálculos.
No fim, existe uma ironia elegante: para produzir algo realmente imprevisível, a máquina precisa deixar o mundo físico participar da conta.