Seguridad de datos en la plataforma empresarial Secrata – Topia Technology

La última vez, hablamos sobre algunos de los desafíos de migrar un sistema de seguridad de datos centralizado a un mundo descentralizado. En esta publicación, nos sumergimos profundamente en los mecanismos de seguridad utilizados en la plataforma empresarial Secrata. En la siguiente publicación, veremos cómo se están adaptando estos mecanismos de seguridad para que funcionen en la solución SDFS descentralizada.

Lo que vino antes

Topia Technology lleva años desarrollando su sistema seguro de intercambio de archivos, Secrata. Como parte de este desarrollo, hemos creado técnicas patentadas para proteger archivos y activos digitales, tanto en tránsito como en reposo. Las técnicas aprovechan las tecnologías criptográficas bien probadas utilizadas en toda la industria para lograr nuevos niveles de seguridad de datos.

Secrata se desarrolló como una plataforma para permitir que las empresas proporcionen el intercambio seguro de archivos y la comunicación dentro de su organización y con socios externos, contratistas y clientes. Topia Technology desarrolló una serie de técnicas y las combinó con tecnologías criptográficas probadas y de vanguardia para garantizar que todos los datos se mantengan seguros dentro de la plataforma Secrata.

Considere el caso en el que la usuario Alice desea compartir un archivo con el usuario Bob. Para hacer esto, Alice accederá a la plataforma Secrata a través de uno de sus clientes y se autenticará para desbloquear sus claves criptográficas. Una vez autenticada, crearía un nuevo contenedor de espacio de trabajo e invitaría a Bob a unirse al contenedor. Con la invitación enviada, luego agrega el archivo al contenedor del espacio de trabajo para compartirlo de forma segura con Bob. Bob luego abre su software cliente Secrata y se autentica. Una vez autenticado, el cliente notificará a Bob de la nueva invitación del espacio de trabajo de Alice. Bob acepta la invitación y se le presenta el contenido del nuevo espacio de trabajo, el archivo compartido por Alice. Para hacer uso del archivo, Bob puede descargar el archivo de forma segura y editarlo en la aplicación de su elección.

Bajo el capó

La experiencia del usuario de compartir archivos de forma segura es sencilla para los usuarios finales. Sin embargo, los clientes están realizando una complicada danza de seguridad de datos y cifrado debajo de las cubiertas para garantizar que los archivos se mantengan seguros desde el momento en que Alice los agrega al área de trabajo hasta que Bob descarga el archivo para editarlo, y todo comienza con la autenticación. .

Cuando un usuario recibe una cuenta en la plataforma Secrata, el sistema generará un par de claves criptográficas asimétricas para ellos. Este par de llaves se encripta utilizando una frase de contraseña derivada de su nombre de cuenta y contraseña y se pone a disposición de los clientes de software que utilizan. Cuando Alice y Bob se autentican con sus respectivos clientes, los clientes primero realizan un proceso de autenticación seguro con el servidor para establecer una sesión activa con el servidor. Una vez establecido, el cliente puede recuperar el almacén de claves que contiene el par de claves del usuario. Utilizando la información de autenticación proporcionada por el usuario, el software cliente puede desbloquear el almacén de claves y obtener acceso al par de claves del usuario. Este par de llaves es necesario para todas las demás acciones criptográficas que tienen lugar dentro de la plataforma Secrata.

La creación de un contenedor de espacio de trabajo implica tanto la creación de un contenedor en el servidor como el establecimiento de una clave criptográfica simétrica para el contenedor del espacio de trabajo. Una vez creada, la clave del contenedor del espacio de trabajo se encripta con la clave pública del creador del espacio de trabajo y se incluye en la solicitud de creación del contenedor del espacio de trabajo enviada al servidor. Esto garantiza que el usuario podrá acceder al contenedor en caso de que inicie sesión con un cliente o dispositivo diferente; el segundo cliente podrá recuperar la clave de espacio de trabajo cifrada del servidor y descifrarla utilizando la clave privada del usuario.

Con un contenedor de espacio de trabajo establecido y su clave criptográfica disponible, invitar a un usuario implica ponerse en contacto con el servidor para obtener información sobre la cuenta de usuario que está siendo invitada. Esta información incluye el nombre, si está disponible, el ID de usuario, y lo más importante de este proceso, la clave pública del usuario invitado. Luego, el cliente utiliza esta clave pública para cifrar la clave criptográfica del contenedor del área de trabajo y enviarla, junto con la solicitud de invitación, al servidor. El servidor almacena este registro de invitación y lo envía al usuario invitado cuando se autentican. Con un contenedor de espacio de trabajo establecido y el destinatario deseado invitado al área de trabajo, los archivos ahora se pueden compartir de forma segura.

Los archivos dentro de Secrata están protegidos por múltiples capas de cifrado, así como segmentando los archivos en múltiples partes, denominadas fragmentos. Cuando un archivo se coloca en un contenedor de espacio de trabajo Secrata, los clientes del software Secrata inician el proceso de cifrado dividiendo primero el archivo en varios fragmentos. El número de trozos varía según el tamaño del archivo; cuanto más grande es el archivo, más fragmentos se dividen en. Después de fragmentar el archivo, el cliente recopilará metadatos en cada fragmento, lo comprimirá para ahorrar ancho de banda y espacio de almacenamiento, generará una clave de cifrado aleatoria única, cifrará el fragmento y finalmente le asignará un identificador de fragmento de 256 bits generado aleatoriamente. Con el fragmento ahora encriptado, el cliente de software crea un objeto de metadatos que contiene el ID, el tamaño, la clave criptográfica, los hashes, etc. del fragmento. Una vez que todos los fragmentos están encriptados, el cliente puede crear un documento de metadatos que describa el archivo original: su nombre, sello de fecha, tamaño, hash criptográfico y la lista de metadatos de los fragmentos para cada fragmento que compone el archivo. Luego, estos datos se cifran utilizando la clave de cifrado que pertenece al contenedor del área de trabajo en el que se coloca el archivo. Este documento de metadatos de archivo cifrado se carga en el servidor para su almacenamiento y distribución a los otros miembros del área de trabajo. Por separado, los fragmentos de archivos cifrados se cargan en el servidor para su almacenamiento hasta que son solicitados por un usuario.

Cuando un miembro del contenedor del espacio de trabajo intenta posteriormente acceder a un archivo en el espacio de trabajo, el proceso se invierte. Su clave privada se utiliza para descifrar la clave del contenedor del espacio de trabajo. Con la clave del contenedor del espacio de trabajo, pueden descifrar el documento de metadatos del archivo. Con el documento de metadatos del archivo descifrado, el cliente puede descargar los fragmentos que conforman el archivo, descifrarlos y descomprimirlos, y volver a ensamblar el archivo en su forma original para que lo edite el usuario.