January 8, 2018

¿Qué es un AxCrypt ID?

Advertencia: esta es una publicación bastante técnica ;-). Es solo para quienes estén realmente interesados ​​​​en algunos de los mecanismos internos de AxCrypt.

En realidad, es más que eso. Técnicamente, una ID de AxCrypt es un par de claves RSA-4096.

Un par de claves es un concepto utilizado en criptografía de clave pública o asimétrica. En este tipo de criptografía existen dos claves relacionadas con las siguientes propiedades:

  • Una clave pública: esta clave no es secreta y cualquiera puede usarla para cifrar datos. ¡Pero no se puede usar para descifrar nada! A veces llamamos a esto una clave para compartir.
  • Una clave privada: esta clave debe ser secreta y se requiere para descifrar cualquier dato cifrado con la clave pública. A veces llamamos a esto una clave secreta.
  • Conociendo la clave pública, es computacionalmente inviable (es decir, imposible en términos sencillos) derivar la clave privada.
  • Cuando ciframos cualquier archivo usando AxCrypt, lo hacemos usando AES-128/-256. Este es un algoritmo de cifrado fuerte simétrico, con una sola clave utilizada tanto para el cifrado como para el descifrado.

    El proceso en principio cuando AxCrypt cifra un archivo es el siguiente:

  • Se genera una clave de sesión aleatoria de 128 o 256 bits cada vez que se cifra un archivo.
  • Los datos del archivo se cifran mediante AES y la clave de sesión.
  • La clave de sesión está cifrada con tu contraseña, utilizando un algoritmo de ajuste de clave especial, con AES en el núcleo. Esta clave de sesión cifrada se agrega al archivo cifrado.
  • La clave de sesión está cifrada con tu clave pública de AxCrypt ID, usando RSA-4096. Esta clave de sesión cifrada se agrega al archivo cifrado.
  • La clave de sesión está cifrada con la clave pública de AxCrypt ID de cualquier otro usuario de AxCrypt con el que hayas elegido compartir la clave del archivo. Estas claves de sesión cifradas se agregan al archivo cifrado.
  • Para descifrar un archivo, AxCrypt en principio hace lo siguiente:

  • Toma tu contraseña, busca la clave de sesión cifrada con una contraseña anterior e intenta descifrarla. Si tienes éxito, la clave de sesión descifrada se usa para descifrar el archivo.
  • Toma tu clave privada de AxCrypt ID, encuentra todas las claves de sesión cifradas con una clave pública de AxCrypt ID e intenta descifrar cada una. Si alguien tiene éxito, la clave de sesión descifrada se usa para descifrar el archivo.
  • El par de claves generalmente se genera en nuestro servidor cuando se crea una cuenta. La clave privada se cifra temporalmente utilizando nuestra clave de sistema local. Una vez que inicias sesión y estableces tu contraseña, la volvemos a cifrar usando tu contraseña.

    La clave privada, cuando está cifrada, en realidad está cifrada como un archivo AxCrypt, por supuesto, pero solo usando tu contraseña para cifrar la clave de sesión como se indicó anteriormente. No utilizamos ninguna clave pública para este cifrado.

    Normalmente, entonces, el proceso consta de lo siguiente:

  • Tú te registras para obtener una cuenta. Generamos y creamos un par de claves en nuestro servidor y ciframos la clave privada temporalmente.
  • Tú estableces tu contraseña. Volvemos a cifrar la clave privada con tu contraseña. En este punto, nadie puede recuperar tu clave privada sin conocer tu contraseña. Ni nosotros, ni nadie más.
  • Inicia sesión con una app AxCrypt. La app se pone en contacto con nuestro servidor y descarga el par de claves, tanto las claves públicas como las privadas, del servidor. La clave privada se mantiene cifrada.
  • Cada vez que falla la apertura de un archivo con tu contraseña de inicio de sesión, AxCrypt descifrará la clave privada e intentará descifrar la clave de sesión como se describe anteriormente. Esto te permitirá abrir la clave de los archivos compartidos contigo, así como los archivos más antiguos cifrados con una contraseña anterior si ha cambiado la contraseña desde entonces (nota: cambiada, no restablecida).
  • Cambiar tu contraseña de AxCrypt ID significa que tomamos tu clave privada, la desciframos con la contraseña anterior y luego la volvemos a cifrar con la nueva contraseña. Así es como un cambio de contraseña te permitirá abrir archivos antiguos cifrados con AxCrypt. ¡Ten en cuenta que, de hecho, también se abrirán con la contraseña anterior! Esta es también la razón por la que nunca dependes de nuestros servidores. Si conoces la contraseña original, siempre puedes abrir el archivo. Si tienes disponible una copia sincronizada de la clave privada cifrada, puedes abrir cualquier archivo siempre que tengas la contraseña actual.

    AxCrypt realiza toda esta gestión de claves de forma automática y entre bastidores, de manera completamente transparente, siempre que permitas que AxCrypt acceda a nuestros servidores.

    Para usuarios avanzados que entienden completamente los mecanismos anteriores, es posible hacer todo esto sin nuestros servidores. Es posible generar pares de claves de AxCrypt ID, exportarlos, importarlos, etc. No recomendamos que nadie haga esto, ya que un error o un malentendido fácilmente puede provocar la pérdida de datos o la imposibilidad de usar AxCrypt.

    Todo lo anterior es una versión simplificada del proceso. En realidad, se incluyen muchos detalles adicionales para garantizar la seguridad y para manejar varios escenarios de sincronización, eventos de restablecimiento de contraseña, etc. Para obtener más información, puedes leer la documentación técnica.

    Pruébalo gratis