¿Cuál es la fuerza de la función de derivación de claves en el cifrado de dispositivos Android?

1

¿Qué es la fuerza de la derivación clave? Específicamente, ¿cuántos milisegundos o microsegundos tomaría una computadora de escritorio para verificar una contraseña adivinada para ver si es una coincidencia? Soy consciente de que esto varía según la computadora, así que quiero un estadio de béisbol, y daría una computadora de núcleo único de 3GHz como ejemplo, pero elija.

Suponiendo que no hay fallas significativas en la implementación y que el cifrado simétrico es de buena calidad, entonces puedo usar tu respuesta combinada con el conocimiento de la fortaleza de mi contraseña para estimar el costo de un atacante para descifrar mi Android.

Obviamente hay advertencias. Si el teléfono todavía está encendido, el atacante podría siga un procedimiento para eludir el obstáculo de encriptación (usando un congelador y una ROM intercambiada, u otra técnica). Puede haber otras advertencias que vale la pena mencionar.

    
pregunta George Bailey 13.01.2014 - 21:03
fuente

1 respuesta

2

La diapositiva 23 de esta presentación afirma que la derivación clave para "Android Encryption" es PBKDF2 (presumiblemente con HMAC / SHA-1) y 2000 iteraciones. Dado que cada iteración implica una llamada HMAC, que a su vez utiliza dos invocaciones SHA-1 anidadas, equivale a 4000 llamadas SHA-1 para verificar una contraseña.

Una CPU cuádruple Core2 de 2,4 GHz puede calcular aproximadamente 48 millones de SHA-1 por segundo (fuente: yo), lo que se traduce en aproximadamente 12000 contraseñas probadas por segundo. Si la contraseña es un código PIN de cuatro dígitos, no durará mucho ...

Con una GPU, puede ir a los miles de millones de instancias de SHA-1 por segundo. OclHashcat afirma que el rendimiento medido de 27 billones de SHA-1 en una PC con ocho GPU grandes; esto se traduciría a más de 6 millones de contraseñas probadas por segundo con PBKDF2 como se usa en Android.

    
respondido por el Thomas Pornin 13.01.2014 - 21:16
fuente

Lea otras preguntas en las etiquetas