Vídeo: Seguro é segurança de 256 bits?

Grant Sanderson • 3Blue1Brown • Boclips

Seguro é segurança de 256 bits?

04:17

Transcrição do vídeo

No vídeo principal sobre criptomoedas, fiz duas referências a situações em que, para quebrar uma determinada peça de segurança, você teria que adivinhar uma sequência específica de 256 bits. Uma delas estava no contexto de assinaturas digitais e o outro no contexto de uma função de criptografia hash.

Por exemplo, se você deseja encontrar uma mensagem cujo hash SHA-256 seja uma sequência específica de 256 bits, não há método melhor do que apenas adivinhar e verificar mensagens aleatórias. E isso exigiria, em média, de dois a 256 palpites. Agora, esse é um número tão distante de qualquer coisa com a qual lidamos que possa ser difícil apreciar seu tamanho. Mas vamos tentar. Dois elevado a 256 é o mesmo que dois elevado a 32 multiplicado por ele mesmo oito vezes. Agora, o que é legal nessa divisão é que dois elevado a 32 são quatro bilhões, o que é pelo menos um número em que podemos pensar, certo? É o tipo de coisa que você pode ver em uma manchete.

Então, o que precisamos fazer é apreciar o que realmente seria multiplicar quatro bilhões vezes ele mesmo oito vezes sucessivas. Como muitos de vocês sabem, a CPU do seu computador pode permitir que você execute vários cálculos em paralelo incrivelmente rápido. Portanto, se você programar especialmente uma CPU para executar uma função de criptografia hash repetidamente, uma realmente boa poderá executar um pouco menos de um bilhão de hashes por segundo. Digamos que você apenas pegue um monte deles e monte seu computador cheio de CPUs extras para que ele possa executar quatro bilhões de hashes por segundo.

Portanto, os quatro primeiros bilhões aqui representam o número de hashes por segundo por computador. Agora, imagine quatro bilhões desses computadores cheios de CPU. Para comparação, embora o Google não torne público o número de servidores, as estimativas estão em um dígito de milhões. Na realidade, a maioria desses servidores será muito menos poderosa do que a nossa máquina cheia de CPU. Mas digamos que o Google substituiu todos os milhões de servidores por uma máquina como esta. Então, quatro bilhões de máquinas significariam cerca de mil cópias desse Google aprimorado. Vamos chamar esse valor de um quiloGoogle de poder de computação.

Existem cerca de 7.3 bilhões de pessoas na Terra. Então, a seguir, imagine dar a pouco mais da metade de cada indivíduo na Terra seu próprio quiloGoogle pessoal. Agora, imagine quatro bilhões de cópias desta Terra. Para comparação, a Via Láctea tem algo entre 100 e 400 bilhões de estrelas. Realmente não sabemos, mas as estimativas tendem a estar nesse intervalo. Portanto, isso seria semelhante a um por cento completo de todas as estrelas da galáxia, com uma cópia da Terra onde metade das pessoas na Terra tem seu próprio quiloGoogle pessoal.

Em seguida, tente imaginar quatro bilhões de cópias da Via Láctea. E chamaremos isso de supercomputador gigagaláctico, executando de duas a 160 tentativas por segundo. Agora quatro bilhões de segundos? São cerca de 126.8 anos. Quatro bilhões desses? Bem, são 507 bilhões de anos, cerca de 37 vezes a idade do universo. Portanto, mesmo que você tenha seu computador gigagaláctico multiplanetário por quiloGoogle por pessoa, equipado com CPU, adivinhando números 37 vezes a idade do universo, ele ainda terá apenas uma chance em quatro bilhões de encontrar o número correto.

A propósito, o estado do hash de bitcoin atualmente é que todos os mineradores criam palpites e verificam a uma taxa de cerca de cinco bilhões de bilhões de hashes por segundo. Isso corresponde a um terço do que acabei de descrever como um quiloGoogle. Isso não ocorre porque existem bilhões de máquinas cheias de CPU por aí. Mas como os mineradores realmente usam algo mil vezes melhor que uma CPU, Aplicativos Integrados de Circuitos Específicos. São peças de hardware projetadas especificamente para mineração de bitcoin, para executar um monte de hashes SHA-256 e nada mais. Acontece que há muitos ganhos de eficiência quando você descarta a necessidade de computação geral e projeta seus circuitos integrados para uma e apenas uma tarefa.

A Nagwa usa cookies para garantir que você tenha a melhor experiência em nosso site. Saiba mais sobre nossa Política de privacidade.