Como costumamos dizer, é muito importante para a segurança e privacidade de nossos smartphones a criação de um código de bloqueio. As opções variam desde um padrão de pontos até uma impressão digital biométrica. Entretanto, as senhas de 4 dígitos ou alfanuméricas ainda são as mais recomendadas. A questão é: qual é a complexidade matemática de cada um e qual pode ser a mais difícil para um cibercriminoso decifrar?

Para responder a esta pergunta, devemos basicamente levar em conta dois fatores: a complexidade da chave e o poder de processamento do hardware utilizado por um cibercriminoso ao realizar um ataque de força bruta que tenta um grande número de combinações possíveis por segundo.

Quantas combinações podem ser feitas com quatro caracteres

Ao usar uma chave numérica (números de 0 a 9) temos 10 possibilidades de 4 dígitos de longitude, que é a extensão padrão dos telefones. Para 4 dígitos, as combinações possíveis seriam de 10 mil:

104 = 10.000

Por outro lado, se tomarmos um alfabeto de 26 letras maiúsculas e 26 minúsculas, 10 números e 10 caracteres não convencionais (por exemplo, "$", "#", "!"), no total, temos 72 possibilidades diferentes para um único caractere. Isso significa que as combinações para um PIN de 4 caracteres de bloqueio seriam:

724 = 26.873.856

Basicamente, mais de 26 milhões de combinações em uma senha de 4 caracteres contra 10 mil em uma senha de 4 dígitos. Neste caso, usamos uma chave de bloqueio, mas este cálculo é válido para qualquer senha. Na verdade, você pode substituir o expoente pelo correspondente ao comprimento de sua senha e calcular quantas combinações seriam necessárias para decifrá-lo.

Tempo de processamento para decifração por ataques de força bruta

Nota: Um ataque de força bruta ocorre quando os atacantes usam software e hardware para testar combinações de senha com o objetivo de decifrá-las para obter acesso a uma conta ou computador.

Para determinar quanto tempo levaria para um cibercriminoso decifrar a combinação usando um ataque de força bruta, devemos levar em conta o número de combinações que podemos juntar com os símbolos do alfabeto que temos. Se o ataque tiver uma capacidade média de 4 bilhões de cálculos por segundo, levaria muito pouco tempo para obter uma chave de 4 caracteres (s = segundos):

724 / 4.000.000.000 = 0,006718464 s

Com este poder computacional, praticamente qualquer criminoso poderia atacar uma chave de 26 milhões de combinações em menos de um centésimo de segundo. Embora o processo custe 2.687 vezes mais do que a variante numérica, ainda é muito fácil para um cibercriminoso. Na verdade, eles poderiam atacar 50 chaves alfanuméricas de quatro caracteres literalmente num piscar de olhos (considerando que um piscar de olhos dura entre 300 e 400 milissegundos).

Qual é o tamanho mais seguro ao escolher uma chave?

Uma vez analisada a situação, a questão do comprimento da chave que deve ser usada a fim de ser mais segura contra um ataque com força bruta torna-se uma questão recorrente. Por exemplo, se tomarmos como referência um comprimento de 10 caracteres com 72 símbolos diferentes para cada um deles, o número de combinações que podem ser formadas ultrapassa 3 trilhões:

7210 = 3.743.906.242.624.487.424

Se calcularmos o tempo que leva para atacar, tomando o processamento acima e 31.556.925 segundos, que é a duração de um ano, obteríamos:

7210 / 4.000.000.000 x 31.556.926 = 29,6 años

Este é um bom tempo, se considerarmos que não vale a pena esperar tanto tempo, embora nunca se saiba. Entretanto, como este é um cálculo exponencial, acrescentando apenas mais um caractere, o tempo necessário seria aproximadamente o tempo desde o início do cristianismo:

7211 / 4.000.000.000 x 31.556.926 = 2135 años

Enquanto alguns criptógrafos acreditam que uma chave segura deve ser aquela que leva uma vez (ou mais) o tempo decorrido desde a criação do universo (aproximadamente 14 bilhões de anos), com uma chave de 15 caracteres e o cálculo feito, levaria quatro vezes esse tempo para quebrá-la. Portanto, você pode escolher se 2.000 anos é tempo suficiente para se sentir relativamente seguro, ou se você prefere uma chave mais longa - sempre levando em conta o quão sensíveis são as informações que você quer proteger.

Este exercício nos ajuda a entender o impacto dos ataques por força bruta como uma técnica para decifrar uma senha e, finalmente, visualizar o grau de proteção que uma senha forte proporciona.

Em resumo: recomenda-se usar pelo menos uma senha alfanumérica de 4 caracteres, pois o esforço necessário é o mesmo que uma senha numérica, mas o poder de processamento necessário para decifrá-la é maior.