6 votos

Manera más rápida de probar todas las contraseñas

Supongamos que usted tiene una computadora con una contraseña de longitud $k$ en un alfabeto de $n$ letras. Usted puede escribir un arbitrarly palabra larga y el equipo intentará de todas las subpalabras de $k$ cartas consecutivas. ¿Cuál es la menor palabra que contiene todas las combinaciones de $k$ letras como subword? (es decir, la forma más rápida para hackear el ordenador :) )

La más pequeña palabra que contenga $n^k$ subpalabras de tamaño $k$ tiene una longitud de $k-1+n^k$ y con base en algunas casos, nos gustaría demostrar que de hecho, es posible encontrar una palabra de tal longitud que contiene todas las contraseñas posibles. El problema puede traducirse en un problema de teoría de grafos, tomando como vértices todas las palabras de longitud $k$.

Hemos intentado $k=2$, donde usted puede probar la conjetura por inducción. Para $n=2$ pequeñas y $k$ también funciona.

8voto

afarnham Puntos 1750

Lo que se busca es la secuencia De Bruijn y el gráfico asociado, el De Bruijn gráfico.

Hamilton caminos en el De Bruijn gráfico corresponden a secuencias De Bruijn. Hamilton caminos en el De Bruijn gráfica de palabras de longitud $k$ corresponden también a Euler tours en el De Bruijn gráfica de palabras de longitud $k - 1$, y dado que todos los De Bruijn gráficos son regulares, la existencia de tales secuencias para cada alfabeto tamaño de $n$ y una longitud de palabra de $k$ sigue.

(Hace un par de años me topé con estos gráficos para mi tesis, así que puedo dar más fascinantes propiedades de estos gráficos si es necesario!)

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X