Cómo crear un generador de contraseñas aleatorias

Instalar un gestor de contraseñas y rellenarlo con todas tus contraseñas es un buen y noble comienzo, pero no es el final del trabajo. Sólo estarás completamente protegido cuando reemplaces cada contraseña débil y reutilizada por una contraseña única que nadie pueda adivinar y que ni siquiera tú puedas recordar. Un ataque de fuerza bruta de descifrado de contraseñas podría encontrar una contraseña como la de Rover, pero fallará si la contraseña es aproximadamente 1ywN@WKglvp$qC4N.

La pregunta es de dónde sacas estas contraseñas aleatorias . Casi todos los administradores de contraseñas tienen su propio generador de contraseñas aleatorias, algunas de las cuales son mejores que otras. En la mayoría de los casos, sin embargo, el programa utiliza un algoritmo llamado pseudo-aleatorio. Teóricamente, un hacker que conozca el algoritmo y tenga acceso a una de sus contraseñas generadas podría replicar todas las contraseñas generadas posteriormente (aunque esto sería bastante difícil). Si eres lo suficientemente paranoico, tal vez quieras crear tu propio generador de contraseñas aleatorias. Podemos ayudarte a crearlo usando Microsoft Excel.

Algunas tareas de seguridad están innegablemente más allá del ámbito del bricolaje, eso es cierto. Por ejemplo, no construirás tu propia red privada virtual o VPN. Pero la construcción de este pequeño proyecto no requiere conocimientos avanzados, sólo la capacidad de seguir instrucciones. No se usarán macros o cosas extravagantes, sólo funciones ordinarias de Excel. Tenga en cuenta que este proyecto se basa necesariamente en el algoritmo pseudo-aleatorio de Excel. La diferencia es que los malos pueden estudiar el generador de contraseñas en cualquier gestor de contraseñas de acceso público, mientras que no tienen acceso al tuyo.

Crear el marco generador de contraseñas

Primero creamos el marco que enmarcará nuestro generador de contraseñas, las etiquetas y los componentes estáticos. Por favor, introduzca las cosas exactamente en las células que he descrito para que las fórmulas funcionen. Una vez que lo pongas en marcha, puedes configurarlo para que sea completamente tuyo.

En la celda B1, introduzca «Generador de contraseñas aleatorias» o el título que desee para su proyecto. Comienza en la celda B3 y baja, introduce «Longitud», «Mayúsculas», «Minúsculas», «Números» y «Caracteres especiales». Salta la celda B8, introduce «Presiona F9 para regenerar» en B9 y «CONTRASEÑA» en B10. Debería parecerse a la figura de abajo.

Password Generator Fig. 1

En la celda C3, introduzca 16 o la longitud de la contraseña predeterminada que prefiera. Escriba «Sí» en las cuatro celdas siguientes. Ahora introduzca todo el alfabeto en mayúsculas en la celda D4 y todo el alfabeto en minúsculas en D5. Introduce los 10 dígitos en D6 y los caracteres especiales que quieres usar en D7. Consejo profesional: Ponga el 0 como último y no como primer dígito de la lista de dígitos, o Excel lo eliminará. La estructura terminada debería verse algo así:

Cómo crear un generador de contraseñas aleatorias

Añadiendo las fórmulas que generan las contraseñas

Al principio tenemos que crear una cadena de texto que contenga todos los caracteres que hemos seleccionado para su uso. La fórmula para esto parece un poco complicada, pero en realidad es simplemente larga. Introduce esta fórmula en la celda D8:

=IF(C4=»Sí»,D4,»») IF(C5=»Sí»,D5,»») IF(C6=»Sí»,D6,»») IF(C7=»Sí»,D7,»»»)

El operador Pega las cadenas de texto. Esta fórmula establece que para cada uno de los cuatro conjuntos de caracteres, si la celda adyacente contiene Sí, el conjunto de caracteres debe ser incluido. Sin embargo, si esta célula contiene algo que no sea Sí (insensible a las mayúsculas y minúsculas), ignóralo. Inténtalo ahora; cambia algunas de las células de Sí a No o No o Rana. La cadena de caracteres disponibles cambiará de acuerdo a su entrada.

A continuación viene la fórmula para generar una contraseña aleatoria. Comienza en la celda C10 con esta versión preliminar:

=MID(D8,EDGE(1,LEN(D8)),1)

Voy a analizar esto de adentro hacia afuera. La función LEN devuelve la longitud de cada valor que se le pasa, en este caso la longitud de la cadena de caracteres disponibles. No es sorprendente que la llamada RANDBETWEEN devuelva un número aleatorio entre los dos números que le pasas, en este caso uno y la longitud. Y la función MID devuelve una parte de la cadena de entrada, empezando por el primer número que le pasas, hasta el número de caracteres que especificas, en este caso sólo uno. Así que esta fórmula devuelve un carácter aleatorio del conjunto de caracteres disponibles. Presionando F9 le dice a Excel que recalcule todas las funciones; inténtalo unas cuantas veces y observa cómo cambia el carácter aleatorio.

Por supuesto que esto es sólo un personaje, no una contraseña completa. El siguiente paso es un poco tedioso, pero no es realmente difícil. Haz clic en la barra de herramientas para editar la última entrada, añade un carácter al final, selecciona todo excepto el signo igual y pulsa Ctrl+C para copiarlo en el portapapeles. Supongamos que queremos una contraseña de un máximo de 40 caracteres. Así que presiona Ctrl+V 39 veces. Borra el último carácter del ampersand, pulsa Enter, y eso fue ‘s.

Cómo crear un generador de contraseñas aleatorias

Bueno, ya casi has terminado . Como está escrito, este generador de contraseñas siempre genera contraseñas de 40 caracteres. Tenemos que acortar su salida a la longitud especificada. Guarda tu trabajo en este punto, porque estarás editando esta fórmula de una milla de largo; ¡no querrás borrarla accidentalmente!

Selecciona la fórmula que genera la contraseña y luego haz clic en el signo de igualdad en la barra de fórmulas justo después del signo de igualdad. Consejo profesional: Presionar Ctrl+Alt+U en este punto amplía la barra de fórmulas. Escriba IZQUIERDA seguido de un paréntesis abierto. Desplácese hasta el final de la fórmula e introduzca una coma, C3 y un paréntesis de cierre. ¡Bravo! La fórmula ahora acorta la contraseña a la longitud que has elegido.

Ajuste fino del generador de contraseñas

El generador de contraseñas es completamente funcional en este momento. Si estás tan satisfecho con él como lo está, genial: ¡lo has hecho! Pero si estás interesado, puedes mejorar su aspecto y funcionalidad de varias maneras. Para empezar, haz clic con el botón derecho del ratón en la D, en la parte superior de la columna D, y selecciona Ocultar en el menú. Ahora ya no necesitas ver las listas de fuentes y los cálculos intermedios.

Normalmente se quiere establecer límites superiores e inferiores para la longitud en un generador de contraseñas. Además, si introduces algo que no sea un número en el campo de la longitud, la fórmula falla. Podemos arreglar esto. Haga clic en la celda C3, que define la longitud, haga clic en Datos en la cinta y elija Validación de datos. Si no ves la etiqueta de validación de datos, estira más la hoja de trabajo.

Cómo crear un generador de contraseñas aleatorias

En la ventana emergente que se abre, haga clic en el menú desplegable en Permitir y seleccione Entero. Desmarque la casilla de verificación Ignorar espacios y establezca el mínimo a 8 y el máximo a 40. Si se parece a la captura de pantalla de aquí, haga clic en la siguiente pestaña Mensaje de entrada. Escriba «Introduzca una longitud de 8 a 40» como mensaje de entrada. Copie este texto al portapapeles y péguelo en el cuadro de mensaje de error de la ficha Mensaje de error y, a continuación, haga clic en Aceptar. Si ahora hace clic en la celda de longitud, se le pedirá que introduzca la longitud correcta, y si comete un error, recibirá un mensaje de error informativo.

Cómo usar un generador de contraseñas aleatorias

¿Listo para el toque final? Escriba «sí» en la celda E1 y «no» directamente abajo. Haga clic en la celda C4, la celda a la derecha de la etiqueta en mayúsculas. Haga clic en Datos en la Cinta de nuevo y seleccione Validación de Datos. Seleccione Lista en la lista desplegable, deseleccione Ignorar espacios, haga clic en el campo Fuente y seleccione las celdas E1 y E2. En la pestaña Mensaje de entrada, introduzca Sí o No como mensaje. En la página de alerta de errores, introduzca «Sí o No» como mensaje de error. Cuando termines, haz clic en OK. Copia esta célula a las tres células de abajo.

¡Ahora con ‘ es suficiente! Ahora estas cuatro células sólo aceptan sí o no como valores. Mejor aún, cada celda tiene ahora una lista desplegable de la que se puede seleccionar uno de estos valores. Ahora que has terminado, haz clic con el botón derecho del ratón en la gran E en la parte superior de la columna E y selecciona Ocultar, para que no veas las celdas que se introducen en el sistema de validación de datos.

En este punto, puede que quieras ser creativo y añadir formato para que tu generador de contraseñas tenga un aspecto menos industrial. Escoge las fuentes que te gustan, añade color, ajusta las cosas hasta que te quede bien.

Por último, deberíamos cerrarlo para que no se destruya accidentalmente una fórmula introduciendo datos en la celda equivocada. Seleccione las celdas C3 a C7 (esta es la celda de longitud más las cuatro celdas de sí/no), haga clic con el botón derecho del ratón y elija Formato de celdas. Haga clic en la ficha Protección, desactive la casilla Bloqueado y, a continuación, haga clic en Aceptar. En la Cinta, haga clic en Escanear y, a continuación, en Proteger hoja. Sólo tienes que hacer clic en Aceptar para aplicar la configuración en el cuadro de diálogo resultante; no estás tratando de proteger la hoja con una contraseña, sólo estás tratando de protegerla de la manipulación. ¡Salva el glorioso resultado!

Cómo crear un generador de contraseñas aleatorias

Crear un generador de contraseñas en Google Sheets

Soy un experto en Excel y lo era antes de que existiera Google Sheets. ¡Quizás incluso antes de que Google existiera! Pero sé que mucha gente jura por Google Sheets, así que lo animé para asegurarme de que apoyaba este proyecto.

Seguí mis propias instrucciones para construir el generador de contraseñas en hojas, y descubrí que todo funcionaba bien, hasta la fórmula que mostraba un carácter aleatorio. Todo funcionó, pero al pulsar F9 no se actualizó con un nuevo personaje aleatorio. Cuando consulté Google, descubrí que para forzar una actualización, hay que pulsar F5, que actualiza toda la página, o cambiar el valor de cualquier celda. Es engorroso pero factible. Cambié el aviso a «Presione F5 para forzar una actualización».

En lugar de recrear la fórmula gigante que hace toda la generación de contraseñas, la copié de mi hoja de cálculo de Excel. ¡Aleluya! ¡Funcionó de maravilla! No entraré en detalles aquí, pero me las arreglé para recrear las reglas de validación de datos y también para ocultar las columnas no deseadas. Si usas hojas en lugar de Excel, este proyecto puede seguir funcionando para ti.

Cómo crear un generador de contraseñas aleatorias

¡Lo lograste!

No importa si aceptaste la versión de «bare-bones» o hiciste los cambios de fantasía, ahora tienes un generador de contraseñas que tú mismo escribiste. Es cierto que Excel utiliza un generador de números seudoaleatorios, pero puedes añadir tu propia aleatoriedad pulsando repetidamente F9 antes de aceptar la contraseña generada. Y mientras un hacker podría reproducir el generador de contraseñas en un producto de gestión de contraseñas usado por millones de usuarios, su uso único simplemente no está en el radar. ¡Lo has hecho!

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)
Compártelo!

Deja un comentario