\subsection{Contraseñas}

Una contraseña es una palabra secreta que se utiliza generalmente en combinación con  un nombre de usuario o correo electrónico para obtener acceso 
a determinados recursos de un sistema informático. El sistema informático puede estar en la web, funcionar en un computador sin acceso a red, 
o ser un hardware dedicado tal como un cajero automático de banco, o un mecanismo de control para el  acceso a un lugar físico. 


Las contraseñas son quizás, el método más utilizado para identificar a personas  en el mundo digital. El acceso al correo electrónico, 
a una sesión en una computadora, al sitio de un banco en internet, la acción para desbloquear un teléfono móvil, así como actividades  que hacemos 
a diario con la computadora lo utilizan  como sistema primigenio y en muchas ocasiones  como único procedimiento disponible para este fin.


En primer lugar, para construir un sistema de contraseñas se necesita un
almacén de datos, en el cual se guarden los elementos de información vinculados
con la clave, y que pueden representar   el ámbito de operación de un usuario
dentro de un sistema informático, lo cual incluye esquemas de autorización para
operar sobre objetos o acciones.

Generalmente los almacenes de datos para los esquemas de contraseñas se
construyen  usando archivos de texto (por ejemplo el usado por los sistemas Linux o Unix que es un  archivo \textit{/etc/passwd} o \textit{/etc/shadow}),  o también es muy frecuente utilizar un conjunto de relaciones u objetos en una base de datos.

Algunas de las reglas básicas para almacenar contraseñas se muestran a continuación:

\begin{itemize}
\item Utilizar un nivel alto de seguridad para el resguardo de la base de datos acorde con las reglas generales de administración de  servidores, sistemas de  cómputo embebido o cualquier otro tipo de sistema donde resida el almacén de datos.
\item No guardar las contraseñas en texto plano, en cambio utilizar algoritmos (con la suficiente fortaleza a ataques) de una sola vía para transformar las claves que ingrese el usuario
\item Implementar políticas y protocolos de creación y asignación de claves tales como: vinculación a dos o más correo electrónico; prueba de fortaleza de contraseñas; monitorear los  accesos de los usuarios por lugar, frecuencia; operaciones entre otras.
\item Realizar auditorias periódicas a todo el proceso de gestión de claves.
\end{itemize}

Uno de los objetivos que debe tener cualquier sistema de protección es proveer al usuario de  instrumentos para mejorar su interacción  con los sistemas informáticos, descargándolo de tareas engorrosas o difíciles,  sin que esta prerrogativa desmejore significativamente los niveles de seguridad. En este sentido, actualmente están disponibles varias tecnologías vinculadas con la gestión de contraseñas, que generalmente son implementadas por todos los navegadores para internet, Entre ellas están: 
\begin{itemize}
\item \textbf{cookies}: son pequeñas cápsulas de información sobre los datos de acceso a una aplicación  (sesión) .
\item \textbf{recordación de claves}:  Es una lista donde se encuentran asociadas las claves y usuarios con los sitios que se visitan en internet. Cuando el usuario visita un sitio que se encuentra en la lista, el navegador ingresa automáticamente el nombre de usuario y su clave en el formulario.
\item \textbf{Sistemas centralizados o locales de gestión de claves}: son aplicaciones en la web o de uso local (computadora,tableta o teléfono móvil) para gestionar las claves de todos los sistemas  al que el usuario ingresa desde sus dispositivos digitales.
\end{itemize}


Por otro parte, para que una contraseña sea resistente a ataques de fuerza bruta, debe contar con varias propiedades. Muchos sistemas validan las claves antes de que sean asignadas, pero no pueden asegurar de forma completa que la contraseña es inviolable dado que mucho de la responsabilidad de uso reside en el propietario de la clave: el usuario.

Generalmente para que una contraseña sea considerada fuerte, debe tener por lo menos las siguientes propiedades:

\begin{itemize}
\item  Ser lo suficiente larga. Hoy en día, se considera ocho (8) caracteres la extensión  mínima de una contraseña  para la mayoría de los sistemas informáticos, este número puede disminuir si se acompaña con el uso de una tarjeta o elemento físico seguro (\textit{token}). 
\item No ser una palabra de diccionario. 
\item Estar compuesta por letras minúsculas y mayúsculas, 

\end{itemize}

Muchos sistemas informáticos cuentan entre sus políticas el cambio periódico de claves por parte de los usuarios, con respecto a ello Schneier en \ref{Schneier} considera que la política citada puede ser contraproducente y no se recomienda, debido a que si ya se cuenta con una contraseña fuerte no existe la necesidad de cambiarla.

Las contraseñas como método de control de acceso seguirá siendo por lo menos por unos cuantos años más el método más popular, por lo tanto se hace necesario prestar atención en los aspectos de gestión organizacional y técnica de este tipo de herramienta, logrando conectar de manera eficiente las políticas con las aplicaciones y con las personas, tomando en cuenta que no se debe disminuir la ergonomía significativamente en pro de la seguridad. 








