¿Los sistemas operativos móviles proporcionan aleatoriedad de calidad criptográfica?

13

¿Qué sistemas operativos móviles proporcionan una primitiva para generar aleatoriedad de calidad criptográfica que las aplicaciones pueden usar?

En los sistemas de escritorio, estas características son omnipresentes. Unix proporciona / dev / urandom. Windows proporciona CryptGenRandom. ¿Los sistemas operativos móviles proporcionan algo como esto? ¿Brindan apoyo para que los desarrolladores no tengan que escribir su propio código para recopilar entropía de múltiples fuentes y combinarlo para obtener una semilla? (Eso es algo que es propenso a errores y no trivial para los desarrolladores, así que estoy buscando soporte desde la plataforma, ya sea el sistema operativo, las bibliotecas o cualquier otra cosa).

Daría la bienvenida a las respuestas que especifican un sistema operativo móvil, ya sea que lo proporcione o no este soporte y, en caso afirmativo, cuál es la interfaz que deben usar los desarrolladores.

    
pregunta D.W. 14.02.2011 - 21:57
fuente

5 respuestas

14

iOS en iPhone proporciona entropía desde todas las entradas estándar, como acelerómetros, brújula, banda base de radio, y desde ciertas partes del circuito que detectan interferencias en todos los niveles. Los desarrolladores de aplicaciones disponen de bits aleatorios a través de SecRandomCopyBytes() función.

No tengo información sobre otras plataformas.

    
respondido por el Rory Alsop 14.02.2011 - 22:15
fuente
7

Android proporciona java.util.SecureRandom en su API basada en Java, que se supone que es un PRNG criptográficamente seguro, alimentándose de cualquier La plataforma base proporciona como fuente de aleaciones robustas. Android se basa en un kernel de Linux, por lo que es probable que exista un /dev/urandom de algún tipo.

Del mismo modo, Maemo de Nokia y su sucesor MeeGo , Al estar basado en Linux, ofrece un /dev/urandom .

    
respondido por el Thomas Pornin 14.02.2011 - 22:32
fuente
6

Blackberry OS proporciona net.rim.device.api.crypto.RandomSource a las aplicaciones firmadas. Recoge aleatoriedad de varias fuentes en el dispositivo, al igual que el RNG de iOS. Tenga en cuenta que el paquete crypto también contiene varias clases de PRNG, que no son criptográficamente aleatorias.

    
respondido por el user185 15.02.2011 - 13:05
fuente
5

Para completar la imagen: Silverlight y XNA ofrecen el .NET System.Security.Cryptography habitual, que incluye RNGCryptoServiceProvider . Por lo tanto, esa clase se puede usar en Windows Phone 7. La documentación dice que ofrece una aleatoriedad criptográficamente sólida, pero no explica cómo se garantiza esto.

    
respondido por el user185 16.02.2011 - 17:00
fuente
2

El sistema operativo móvil Symbian también ofrece un RNG de calidad criptográfica, como se describe here .

Gracias a John Kemp, quien proporcionó esta información .

    
respondido por el D.W. 16.02.2011 - 19:42
fuente

Lea otras preguntas en las etiquetas