El protocolo de clave privada fuera de línea ( OPKP ) es un protocolo criptográfico para evitar el acceso no autorizado para realizar copias de seguridad o archivar datos. El protocolo da como resultado una clave pública que se puede usar para cifrar datos y una clave privada fuera de línea que luego se puede usar para descifrar esos datos.
El protocolo se basa en tres reglas con respecto a la clave. Una clave privada sin conexión debe:
- no almacenarse con los datos cifrados (obviamente)
- no ser guardado por la organización que almacena físicamente los datos cifrados, para garantizar la privacidad
- no almacenarse en el mismo sistema que los datos originales, para evitar la posibilidad de que el robo de solo la clave privada dé acceso a todos los datos en el proveedor de almacenamiento; y para evitar que cuando se necesite la clave para restaurar una copia de seguridad, la clave se pierda junto con la pérdida de datos que hizo necesaria la restauración en primer lugar
Para cumplir con estas reglas, el protocolo de clave privada fuera de línea utiliza un método de envoltura de clave asimétrica .
Seguridad
Como el protocolo no proporciona reglas sobre la solidez de los métodos de cifrado y las claves que se utilizarán, la seguridad del protocolo depende de la implementación criptográfica real. Cuando se utiliza en combinación con métodos de cifrado sólidos , el protocolo puede proporcionar una seguridad extrema.
Operación
Inicialmente:
- un programa cliente (programa) en un sistema (sistema local) con datos para respaldar o archivar genera una clave privada aleatoria PRIV
- El programa crea una clave pública PUB basada en PRIV.
- el programa almacena PUB en el sistema local
- El programa presenta PRIV al usuario que puede almacenar la clave, por ejemplo, impresa como una clave de papel confiable o en una tarjeta de memoria.
- programa destruye PRIV en el sistema local
Al archivar o crear una copia de seguridad, para cada sesión o archivo:
- El programa genera un OTRK de clave aleatoria de una sola vez
- El programa cifra los datos utilizando OTRK y un método de cifrado simétrico.
- El programa cifra la clave OTRK (opcionalmente acolchada ) usando PUB para OTRKCR
- El programa almacena el OTRKCR y los datos cifrados en un servidor.
- programa destruye OTRK en el sistema local
- programa destruye OTRKCR en el sistema local
- el servidor almacena OTRKCR y almacena los datos cifrados
Para restaurar datos archivados o respaldados:
- el usuario introduce PRIV en el programa
- programa descarga datos con el respectivo OTRKCR
- programa descifra OTRKCR usando PRIV, dando OTRK
- programa descifra datos usando OTRK
- programa destruye PRIV en el sistema local