Skip to content

MASTG-TEST-0063: Teste de Geração de Números Aleatórios

Visão Geral

Análise Estática

Em Swift, a API SecRandomCopyBytes é definida da seguinte forma:

func SecRandomCopyBytes(_ rnd: SecRandomRef?,
                      _ count: Int,
                      _ bytes: UnsafeMutablePointer<UInt8>) -> Int32

A versão em Objective-C é:

int SecRandomCopyBytes(SecRandomRef rnd, size_t count, uint8_t *bytes);

Segue um exemplo de uso das APIs:

int result = SecRandomCopyBytes(kSecRandomDefault, 16, randomBytes);

Observação: se outros mecanismos forem usados para geração de números aleatórios no código, verifique se estes são wrappers em torno das APIs mencionadas acima ou revise-os quanto à sua segurança de aleatoriedade. Geralmente isso é muito difícil, o que significa que é melhor seguir com a implementação acima.

Análise Dinâmica

Se você deseja testar a aleatoriedade, pode tentar capturar um grande conjunto de números e verificar com o plugin sequenciador do Burp para avaliar a qualidade da aleatoriedade.