Pre-shared key
En criptografía, una clave previamente compartida, clave precompartida o PSK (en inglés pre-shared key) es una clave secreta compartida con anterioridad entre las dos partes usando algún canal seguro antes de que se utilice. Para crear una clave de secreto compartido, se debe utilizar la función de derivación de claves. Estos sistemas utilizan casi siempre algoritmos criptográficos de clave simétrica. El término PSK se utiliza en cifrado Wi-Fi como WEP o WPA, donde tanto el punto de acceso inalámbrico (AP) como todos los clientes comparten la misma clave.
Las características de este secreto o clave son determinadas por el sistema que utiliza. Algunos diseños de sistemas requieren que dichas claves estén en un formato particular. Puede ser una contraseña como «bret13i», una frase de paso como «abracadabra», o una cadena hexadecimal como «65E4 E556 8622 EEE1». El secreto es usado por todos los sistemas implicados en los procesos de cifrado utilizados para proteger el tráfico entre los sistemas.
Al igual que en todos los casos de sistema de cifrado basándose en una o más claves confidenciales, la clave o claves utilizadas deben ser lo suficientemente difíciles de atacar. Un ataque en particular es siempre posible frente a las claves, el ataque de fuerza bruta. Una clave lo suficientemente larga, elegida al azar, puede resistir a cualquier ataque práctico de fuerza bruta, aunque teóricamente sería posible vulnerarla si un atacante tuviera el poder de computación suficiente. Inevitablemente, sin embargo, las claves pre-compartidas se manejan por ambas partes en la comunicación, por lo que puede verse comprometida en un extremo sin el conocimiento de nadie en el otro extremo. Hay varias herramientas disponibles para ayudar a elegir una contraseña fuerte, aunque hacerlo a través de cualquier conexión de red es inherentemente inseguro puesto que uno no puede, en general, saber si alguien está espiando la conversación. Se debe evitar cualquier patrón en la elección de las claves utilizadas por los algoritmos criptográficos, puesto que un patrón puede permitir a un atacante un menor esfuerzo en un ataque de búsqueda por fuerza bruta. Esto implica elección de clave al azar para obligar a los atacantes a realizar un esfuerzo tan grande como sea posible, esto es muy difícil en teoría y en la práctica. Como regla general, se debe evitar cualquier programa de software excepto un generador de números pseudo-aleatorios criptográficamente seguro.