Gerador de sementes de entropia nem tudo que foi hackeado para ser

Ao contrário do que muitos possam pensar, o que relatamos nem sempre é perfeito. Embora acertemos muitas coisas e tenhamos um grande grupo de desenvolvedores que esticar continuamente dispositivos às alturas, às vezes destacamos soluções com ganhos desconhecidos. Um artigo recente que publicamos em um hackear para jogos no Nexus 7 e outros dispositivos é um exemplo.

A premissa do hack é que você pode reduzir o atraso mantendo uma seção do sistema de arquivos do Android (/dev/random) cheios de bits aleatórios para que o sistema não precise esperar que o sistema de arquivos os gere. Em teoria, isso parece ótimo e mostrou algum sucesso em certas áreas onde o atraso era óbvio, mas apresenta todos os tipos de outros problemas.

É por essas preocupações que não recomendamos o uso dessa correção. A correção em si não causa danos e seus efeitos são quase placebo. Arcee, desenvolvedor do CyanogenMod informações postadas na correção, afirmando que

Os únicos usuários de /dev/random são libcrypto (usado para operações criptográficas como conexões SSL, geração de chave ssh e assim por diante), wpa_supplicant/hostapd (para gerar chaves WEP/WPA no modo AP) e as bibliotecas que geram IDs de partição aleatórios quando você faz uma formato ext2/3/4. Nenhum desses 3 usuários está no caminho da execução do aplicativo, então alimentar aleatoriamente do urandom não faz nada, exceto tornar aleatório... bem... menos aleatório

Existem preocupações válidas sobre o atraso e como o sistema operacional Android lida com eles, e há discussão atualmente em andamento no Código Android sobre isso, mas essa correção não resolve esses problemas e, em vez disso, oferece ganhos de desempenho ao aumentar a velocidade da CPU. O próprio desenvolvedor afirmou que isso poderia reduzir a vida útil da bateria, já que o hack desperta a CPU a cada segundo.

Como sempre acontece, tudo o que você usa aqui no XDA é feito por sua conta e risco e você assume toda a responsabilidade por suas ações. Dito isto, há momentos em que transmitimos informações imprecisas, e este é um desses momentos. Aplaudimos todos os nossos desenvolvedores por trabalharem para encontrar soluções para as coisas que os incomodam. No entanto, nós nos precipitamos sobre isso, sem permitir que discussões e testes adequados ocorressem.

[Imagem adaptada de /dev/urandom pensamentos.]