¿Los números múltiples por botón tienen un efecto en la seguridad?

23

Hace poco me encontré con un cerrojo electrónico como este:

Las teclas tienen varios números por botón, 1|2 , 3|4 , 5|6 , 7|8 , 9|0

¿Hay alguna forma en que esto aumente la seguridad de la cerradura electrónica? Parece que tener dos números por botón reduce dramáticamente tu posible entropía, ya que ahora tienes 5 bits en lugar de 10 bits, ¿no?

¿Es solo una cuestión de estética / reducción de costos sobre la seguridad?

    
pregunta Wayne Werner 03.05.2016 - 16:51
fuente

5 respuestas

12

No, asumiendo códigos de acceso igualmente largos, tener menos botones no puede aumentar la seguridad de ninguna manera.

Dependiendo de cómo se elijan los códigos de acceso, y de si los botones se limpian regularmente o no para eliminar las manchas *, puede (o no) reducir la seguridad de manera significativa, pero reducir la cantidad de botones sin duda no se puede hacer que el bloqueo más sea seguro.

Probablemente tengas razón: solo se hace por estética y / o para ahorrar costos. En cuanto a por qué los botones en su ejemplo de bloqueo están numerados doble, Dennis Jaheruddin probablemente lo detectó en los comentarios :

  

"Es básicamente un bloqueo de 5 botones que permite a las personas abusar de su contraseña de cumpleaños o pin para obtener una contraseña".

Con solo cinco dígitos para elegir, no puede elegir un código de acceso fácil de memorizar como 31121976 o 31415926 . Con cada botón etiquetado dos veces, puedes. (Ya sea que eso sea bueno o malo para la seguridad es discutible; podría decirse que si los usuarios no pudieran elegir códigos como esos, muchos de ellos recurrirían a algo incluso menos seguro como 12341234 , o simplemente escribirían su código de acceso en un post) Nota. Pero desde una perspectiva de usabilidad, definitivamente es una victoria.)

*) Dado que el problema de los ataques de manchas ya se ha mencionado , permítanme señalar brevemente que no lo hacen. afecta a la conclusión general de que menos botones no pueden ser más seguros. Específicamente, supongamos que se sabe que el código de acceso tiene una longitud de & ell; , y usa los botones k de un total de n , y considere los siguientes dos casos extremos:

  1. Los botones se mantienen limpios, de modo que un atacante no puede saber qué botones son parte del código de acceso. En este caso, hay n & ell; posibles códigos de acceso, de los cuales el atacante debe en promedio intentar la mitad antes de encontrar el correcto.

  2. Los botones nunca se limpian y acumulan manchas que finalmente permiten que un atacante le diga a exactamente qué botones k se usan en el código de acceso. En ese caso, los botones no utilizados se vuelven completamente irrelevantes, por lo que el atacante sabe que solo hay como máximo k & ell; posibles códigos de acceso (de los cuales, nuevamente, en promedio, debe intentar la mitad para encontrar la correcta) independientemente de n . (El número real es un poco menor que k & ell; , ya que los códigos que solo usan menos de k se pueden descartar diferentes botones , pero aún no depende de n en absoluto.)

La realidad suele estar en algún lugar entre estos dos extremos: un atacante podría observar algo de desgaste y manchas en los botones, y así obtener información sobre la probabilidad de que cada botón forme parte del código de acceso, pero a menos que el teclado esté muy desgastados y / o sucios, probablemente no estén 100% seguros. Por lo tanto, por lo general, tener menos botones disminuye la seguridad de alguna manera, pero probablemente no tanto como un cálculo ingenuo que ignora las manchas podría llevar a esperar (ya que ya se ha reducido con las manchas).

Por supuesto, una forma adicional en la que la reducción del número de botones puede debilitar la seguridad, incluso en el escenario de gran mancha anterior, es si dos números utilizados en el código de acceso se asignan al mismo botón en el teclado más pequeño (reduciendo así) tanto n como k ). Para los códigos de acceso elegidos al azar, esto comienza a convertirse en un problema (debido a la paradoja de cumpleaños ) cuando n < & ell; ², y definitivamente será un problema cuando n < & ell; . Aún así, esta observación solo refuerza la conclusión de que, manchados o no, menos botones nunca pueden ser más seguros (y pueden ser menos).

    
respondido por el Ilmari Karonen 03.05.2016 - 21:48
fuente
26

Piense en la implementación técnica, no en el usuario o lo que está pintado en los botones: es un teclado con 5 botones. Para desbloquear el dispositivo, necesita una secuencia de esos 5 botones (sin embargo, la cantidad de pulsaciones de esos 5 botones lo permite).

Más botones harían más difícil forzar la fuerza bruta de la combinación. Imagina tener solo 2 botones, o imagina tener 20. Más botones significarían más combinaciones posibles, más combinaciones significa más fuerza bruta.

Puedo imaginar una forma en la que tener menos botones podría aumentar la seguridad: manchas. Si tuviera 20 botones, con el tiempo, los pocos botones que usó aparecerían para usarse, reduciendo así la cantidad de botones posibles que podrían probarse, incluida la capacidad de cortar la cadena de números ("123456") que el usuario necesitaba recordar. Menos botones (con múltiples números por botón) significa que las manchas son menos significativas (todas están manchadas), y una posibilidad reducida de deducir cuál fue la secuencia de números memorizada. Pero, este es solo un aspecto de la seguridad, y es posible que no valore demasiado el bloqueo de una casa residencial.

    
respondido por el schroeder 03.05.2016 - 17:00
fuente
1

No por sí mismo.

El número total de combinación es X Y donde X es el número de botones, y Y es la longitud de la combinación.

Por ejemplo:

  • una combinación de 6 dígitos de 5 botones es 5 6 = 15 625 combinaciones.
  • una combinación de 4 dígitos de 10 botones es 10 4 = 10 000 combinaciones.

Si no conoce la longitud de la combinación, el número de botones es irrelevante para la seguridad. Podrías tener solo 2 botones.

    
respondido por el njzk2 03.05.2016 - 19:21
fuente
1

¿No dependería de lo que realmente sucede cuando desea ingresar el segundo número en cada botón (supongo que lo presiona dos veces)?

Caso 1: dos pulsaciones de tecla en el mismo botón simplemente generan dos dígitos del mismo dígito, similar a presionar el mismo botón dos veces en un teclado de un solo número, el resultado es solo un número reducido de botones, pero un código más largo. En lugar de referirse a los botones por sus números, puede referirse a ellos por el botón que está (es decir, el botón 1, el botón 2 ...... botón n ). El número total de combinaciones de las que estoy seguro es n l , donde l es la longitud de la combinación. Claramente l tiene un efecto mayor en el número total.

Caso 2: dos pulsaciones de tecla en un botón generan un solo dígito (el segundo número en el botón), luego el número de botones es 10, pero la longitud cambia y no es la misma que la cantidad de entradas.

Depende del número máximo de pulsaciones permitidas. Digamos que 10 pulsaciones es el máximo.

Caso 1:

5 botones, 1 dígito por pulsación de tecla, dan como resultado una longitud de 10.

5 10 = 9 765 625

Caso 2:

5 botones, 1 dígito por 1 o 2 pulsaciones, dan como resultado una longitud máxima de 10 y un mínimo de 5. Pero recuerda que en realidad tienes 10 salidas posibles.

Si usa una combinación que solo usa los primeros dígitos de los botones:

5 10 = 9 765 625 - ¡Lo mismo!

Si usa una combinación que utiliza todos los segundos números solamente:

10 5 = 100 000 - mucho más bajo

Entonces, si la mecánica para crear el segundo número es la anterior, y la combinación tiene un número máximo de pulsaciones, la seguridad es menor.

Pero si la combinación tiene un número máximo de dígitos con interminables pulsaciones de teclas, el resultado es muy diferente.

Con un máximo de 10 dígitos:

Caso 1:

Igual que arriba: 5 10 = 9 765 625

Caso 2:

Ahora tiene 5 botones pero el número de pulsaciones de teclas es irrelevante, por lo que efectivamente tiene 10 botones.

10 10 = 10 000 000 000

Puede parecer mucho más, pero es lo mismo que un bloqueo estándar de 10 botones (0-9). Como conclusión, simplemente podría haber comparado el caso final con el estándar y decir que la mayor seguridad que puede lograr con este bloqueo es la misma que la del bloqueo de 10 botones. ¡La verdad es que no lo sabía y me di cuenta de esto mientras lo escribía! Espero que haya dado luz a algo.

    
respondido por el Ryan 04.05.2016 - 06:34
fuente
-1

Para una longitud dada, los múltiples números por botón hacen que sea mucho más difícil, aunque de ninguna manera es difícil, que un surfista informal memorice la contraseña a medida que la escribe.

    
respondido por el Emilio M Bumachar 04.05.2016 - 13:52
fuente

Lea otras preguntas en las etiquetas