<aside> 💡 Ralph C. Merkle (nascido em 2 de fevereiro de 1952) é um cientista da computação. Ele é um dos inventores da criptografia de chave pública, o inventor das funções de hash para criptografia e, mais recentemente, pesquisador e palestrante sobre criônica, o processo de preservação em baixas temperaturas de humanos e animais que não podem mais ser mantidos vivos pela medicina.
</aside>
Vamos começar o episódio de hoje com alguns desafios para vocês:
Problemas que aparentemente não tem solução a princípio possuem respostas possíveis com a criptografia.
Na Byta História de hoje, falaremos sobre um dos grandes inventores da criptografia, o lendário Ralph C. Merkle e de algumas de suas contribuições para a computação. Duas de suas principais colaborações para a área de criptografia são a criptografia de chave pública e as funções de hash para criptografia. Merkle também foi responsável pela criação das árvores de Merkle, uma estrutura de dados muito utilizada em sistemas de criptomoedas, como Bitcoin e Ethereum. Além disso, Merkle também é um reconhecido pesquisador na área de computação molecular e de criônica.
Nascido em 52, Ralph Merkle possui uma família famosa. Seu tio avô era um jogador de baseball profissional, e seu pai trabalhou como diretor do projeto "Pluto", um programa do governo americano criado para desenvolver motores nucleares para mísseis de cruzeiro. Sua esposa, Carol Shaw, foi uma das primeiras programadoras de jogo de computadores, e criou o jogo River Raid, um sucesso de vendas do Atari 5200.
Uma fotografia do cartucho de platina do videogame River Raid "apresentado a Carol Shaw em reconhecimento pelas vendas superiores a 1.000.000 de unidades em 27 de junho de 1983". Postado pela própria Carol na Wikipedia — além de game designer, Carol também é editora da Wikipedia!
Um cenário de River Raid — o avião controlado pelo jogador acaba de atirar um míssel contra o helicoptero inimigo.
O bom e velho Atari 5200.
Durante sua graduação em ciência da computação na Universidade de Berkeley, Merkle descobriu um método de proteção de comunicações eletrônicas conhecido como puzzles (quebra-cabeças, em inglês) de Merkle.
Como funcionam esses quebra-cabeças? Vamos ilustrar essa ideia com uma versão simplificada, mais fácil de ser "digerida pela orelha".
Considere que 2 espiões aliados, Alice e Bob, precisam se comunicar entre si. Eles estão fisicamente separados, e só podem se comunicar via internet ou rádio. Via internet eles estão sendo monitorados 24/7 por um espião rival, chamado Eve, e tudo que escrevem na internet pode ser interceptado por Eve. O único jeito de eles se comunicarem de forma privada é via rádio, mas eles precisam acertar a frequência correta para que possam trocar informações. Haveria alguma forma de fazer isso sem tentar achar a frequência correta por força-bruta?
Apesar de ser contra-intuitivo, Merkle construiu uma solução bem engenhosa para esse problema.
Aula do prof. Gideon Samid explicando os quebra-cabeças de Merkle
Aula do prof. Gideon Samid explicando os quebra-cabeças de Merkle
Suponha que Alice crie N quebra-cabeças bem difíceis de serem resolvidos (demandando 10 minutos para cada um), cujas soluções sejam pares de números e diferentes entre si: por exemplo, o primeiro quebra-cabeça tem solução 111 e 215, o segundo, 21 e 42, e assim por diante.