Seguridad de datos en SDFS

Anteriormente, analizamos cómo se mantiene la seguridad de datos en la plataforma centralizada de Secrata Enterprise. En este post, analizamos los desafíos de adaptar la seguridad de los datos de una plataforma centralizada a una aplicación descentralizada en la cadena de bloques.

El objetivo del proyecto SDFS es llevar la seguridad de los datos de Secrata al espacio de la cadena de bloques descentralizada. Lograr este objetivo requiere reemplazar los aspectos centralizados de Secrata con soluciones descentralizadas basadas en blockchain que proporcionan al menos el mismo nivel de seguridad que Secrata. Topia ha avanzado en este empeño al identificar alternativas criptográficas y diseñar nuevas soluciones para resolver los desafíos inherentes a los sistemas descentralizados. Además, Topia ha identificado una serie de tecnologías que facilitarán el arranque y descubrimiento de nodos, así como la transferencia de datos de igual a igual.

La base misma de la seguridad de Secrata radica en que cada usuario tiene un par de llaves asimétricas criptográficas. Convenientemente, los usuarios de blockchain se identifican por una billetera que contiene un par de claves asimétricas criptográficas, que SDFS planea usar en lugar de los pares de claves de usuario generadas centralmente por Secrata. Además, la billetera proporcionará identificadores únicos de los usuarios en la forma de la dirección de su billetera.

La siguiente capa de seguridad de Secrata es el contenedor del área de trabajo, que contiene la clave del área de trabajo y la lista de miembros. En Secrata, la información del contenedor del espacio de trabajo se almacena en los servidores de la plataforma y los clientes la buscan. En SDFS, el contenedor del espacio de trabajo estará representado por una micro-red basada en blockchain. La clave del área de trabajo y las listas de miembros están contenidas dentro de la cadena de bloques, ya sea como datos de transacción o como estado de contrato inteligente, dependiendo de la implementación específica.

Secrata proporciona funciones de control de acceso en el servidor que impiden que los usuarios accedan a los contenedores del área de trabajo de los que no son miembros. En SDFS, este control de acceso se implementa mediante el control del acceso a la propia cadena de bloques. En la cadena de bloques privada de la micro-red, solo los miembros del área de trabajo podrían conectarse, interactuar y enviar transacciones a la cadena de bloques. Se rechazan las conexiones de no miembros. Además, si un contrato inteligente administra el estado del área de trabajo dentro de la cadena de bloques privada, podrá rechazar la actividad en la cadena de bloques por parte de usuarios no autorizados y usuarios que no son miembros de la zona de trabajo.

Para mejorar la seguridad de los datos en los contenedores SDFS, SDFS empleará una estrategia de rotación de claves de espacio de trabajo. Esto permite a los usuarios del área de trabajo solicitar que se cambie la clave del área de trabajo en cualquier momento. Al hacer esto, el área de trabajo cambiará a una nueva clave de cifrado y rechazará cualquier información de transacción futura que no esté cifrada con la nueva clave. Esto asegura que una vez que un usuario sea eliminado de un área de trabajo, no tendrá acceso a más transacciones y datos almacenados en la cadena de bloques, incluso si de alguna manera obtienen una copia de la cadena de bloques.

El tercer nivel de seguridad en Secrata está en el nivel de activos digitales. La estructura básica de la seguridad de datos en este nivel en SDFS coincidirá con la de Secrata. Después de realizar la fragmentación y el cifrado, los clientes SDFS almacenarán metadatos de activos digitales dentro de la cadena de bloques de contenedores encriptados con la clave simétrica del contenedor de manera normal. Un miembro del contenedor deberá recuperar estos metadatos de la cadena de bloques para comenzar a transferir datos de activos digitales.

Cuando Secrata almacenó los datos en y los datos obtenidos de una plataforma de servidor central, la naturaleza descentralizada de SDFS requiere que las transferencias de datos de activos digitales se realicen de igual a igual. Debido a que los datos de los archivos son tan grandes, estas transferencias no pueden ocurrir en la propia cadena de bloques. Como tal, se está diseñando un mecanismo de seguridad para resolver problemas de autorización y criptografía exclusivos de SDFS. Este mecanismo comienza con un acuerdo de negociación de clave Diffie-Hellman, en el que el titular de los datos validará que el usuario que realiza la solicitud es miembro del contenedor antes de continuar con el acuerdo. Una vez que se completa el protocolo, ambas partes utilizan la clave compartida derivada para crear datos de autorización que se incluirán en las solicitudes de datos de activos digitales. Si el titular de los datos puede validar los datos de autorización de un solicitante, utilizará tecnologías de transferencia de datos de igual a igual para transferir los datos del fragmento de activos digitales al solicitante. Una vez que se hayan obtenido los fragmentos necesarios, el solicitante utilizará la clave criptográfica que se encuentra en los metadatos del activo para descifrar y reensamblar los datos del activo digital.

Con todos los aspectos de seguridad abordados, el desafío final en SDFS se relaciona con el descubrimiento y el arranque de los clientes. En Secrata, cuando un usuario inicia sesión, el software del cliente sabe con qué servidor comunicarse para la autenticación y la recuperación de datos. Simplemente puede solicitar al Servidor información sobre los espacios de trabajo a los que pertenece el usuario, así como cualquier espacio de trabajo al que haya sido invitado. En SDFS, esta información del espacio de trabajo se almacena dentro de una micro-red. Para que el software cliente funcione, necesita saber cómo conectarse a cada una de las micro-redes para obtener información sobre los contenedores del usuario. De manera similar, cuando se invita a un usuario a unirse a un contenedor, esa información debe transmitirse al software cliente de ese usuario para que pueda conectarse a la micro-red del contenedor correspondiente. Para superar estos problemas, SDFS utiliza una tabla de hash distribuida (DHT) para almacenar de forma segura la metainformación de la cuenta de un usuario. Cuando un usuario inicia sesión en un cliente SDFS, el cliente puede consultar la DHT para obtener información sobre los contenedores de los que forma parte el usuario, a qué contenedores se les ha invitado y cómo conectarse a las micro-redes de esos contenedores.

Con el alto nivel de seguridad de Secrata cubierto, SDFS puede extender su postura de seguridad mediante el uso de cadenas de bloques no repudiables de las micro-redes para registrar los eventos que ocurren en un contenedor de SDFS, asegurándolos encriptándolos y desencriptándolos con la clave del contenedor . Las capacidades basadas en información secreta, como la versión de archivos, el bloqueo de archivos, la mensajería, etc. están disponibles en SDFS a través de este mecanismo. Al hacerlo, hemos tomado Secrata, un mecanismo centralizado extremadamente seguro para sincronizar y compartir archivos y colaborar con miembros de áreas de trabajo, y hemos traducido esa funcionalidad en SDFS, al mismo tiempo que mantenemos o mejoramos los estándares de seguridad de Secrata, sin perder prácticamente ninguna funcionalidad de cara al usuario. en el proceso.