ES2848030T3 - Servidor y método para intercambio seguro y económico de datos - Google Patents
Servidor y método para intercambio seguro y económico de datos Download PDFInfo
- Publication number
- ES2848030T3 ES2848030T3 ES14786900T ES14786900T ES2848030T3 ES 2848030 T3 ES2848030 T3 ES 2848030T3 ES 14786900 T ES14786900 T ES 14786900T ES 14786900 T ES14786900 T ES 14786900T ES 2848030 T3 ES2848030 T3 ES 2848030T3
- Authority
- ES
- Spain
- Prior art keywords
- entity
- folder
- file
- virtual folder
- acl
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
- G06F21/6218—Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/62—Protecting access to data via a platform, e.g. using keys or access control rules
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/10—Network architectures or network communication protocols for network security for controlling access to devices or network resources
- H04L63/101—Access control lists [ACL]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2107—File encryption
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2141—Access rights, e.g. capability lists, access control lists, access tables, access matrices
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Health & Medical Sciences (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Health & Medical Sciences (AREA)
- General Physics & Mathematics (AREA)
- Bioethics (AREA)
- Computing Systems (AREA)
- Databases & Information Systems (AREA)
- Storage Device Security (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
Método para compartir archivos de manera segura y económica entre una pluralidad de entidades (UEA, UEB) utilizando, al menos, una carpeta virtual (VF), e implementado mediante una aplicación web de servidor conectada a un proveedor de almacenamiento en la nube (SP) y adaptada para usar un interfaz de programación de aplicaciones, API, del proveedor de almacenamiento en la nube (SP), comprendiendo el método las etapas de: - generar (U1) una clave maestra (Ks) por cada carpeta virtual (VF) dedicada al encriptado de archivos (CF) a compartir con el grupo en dicha carpeta virtual (VF), en donde la carpeta virtual (VF) es asociada con una lista de control de autorización (ACL) que especifica una o más entidades que tienen acceso a los archivos almacenados en la carpeta virtual (VF); - en respuesta a la recepción desde una primera entidad de una solicitud para almacenar un archivo de texto sin encriptar en la carpeta virtual (VF), verificar (U2) en la lista de control de autorización (ACL) si la primera entidad está autorizada para acceder a la carpeta virtual, y, si la primera entidad está autorizada, encriptar (U3) el archivo de texto sin encriptar con la clave maestra (Ks) y almacenar (U4) el archivo encriptado (EF) en el proveedor de almacenamiento en la nube (SP) en una carpeta de almacenamiento de la primera entidad; - en respuesta a la recepción desde una segunda entidad de una solicitud para recuperar un archivo de texto sin encriptar en la carpeta virtual (VF), verificar (D1) en la lista de control de autorización (ACL) si la segunda entidad está autorizada para acceder a la carpeta virtual (VF), y, si la segunda entidad está autorizada, recuperar (D2) el archivo encriptado (EF) del proveedor de almacenamiento en la nube (SP) en la carpeta de almacenamiento de la primera entidad, desencriptar (D3) el archivo de texto sin encriptar utilizando la clave maestra (Ks) y enviar (D4) el archivo de texto sin encriptar a la segunda entidad; - en respuesta a la recepción desde una tercera entidad de una solicitud para eliminar una cuarta entidad de la lista de control de autorización (ACL) de una carpeta virtual (VF), verificar (B10) en la lista de control de autorización (ACL) si la tercera entidad está autorizada para eliminar la cuarta entidad, y si la tercera entidad está autorizada, eliminar (B11) la cuarta entidad de la lista de control de autorización (ACL), identificar (B12) todos los archivos de la carpeta virtual (VF) que fueron aportados por la cuarta entidad, y mover (B13) los archivos encriptados (EF) correspondientes a los archivos identificados a una carpeta de almacenamiento de otra entidad en la lista de control de autorización (ACL).
Description
DESCRIPCIÓN
Servidor y método para intercambio seguro y económico de datos
Campo de la invención
Esta invención se refiere al intercambio seguro de datos encriptados almacenados en un servidor de terceros en Internet. La necesidad de dicho encriptado surge en el contexto del almacenamiento en la nube, donde empresas y usuarios individuales almacenan sus datos en un servicio de almacenamiento en la nube en Internet, en lugar de en un depósito local. El concepto de nube permite que los datos sean de acceso público desde una variedad de puntos de extremo, tales como un PC de oficina, un PC doméstico y dispositivos móviles de los usuarios. Específicamente, la invención se refiere a un servidor de aplicaciones web que aprovecha la API publicada de uno o más proveedores de almacenamiento en la nube. La aplicación web está dedicada al intercambio seguro de archivos encriptados que residen en los proveedores de almacenamiento en la nube. De acuerdo con la invención, el uso compartido seguro economiza la utilización de recursos de almacenamiento en los proveedores de almacenamiento en la nube desde el punto de vista del usuario.
Antecedentes de la invención
Si bien el modelo en la nube ofrece comodidad y reduce los costes, siempre existen preocupaciones persistentes sobre la seguridad y la confidencialidad de los datos almacenados en el servicio de almacenamiento en la nube. Estas preocupaciones son especialmente críticas cuando se trata de datos empresariales que deben ser compartidos con otros usuarios autorizados, tanto colegas internos como socios externos.
Los proveedores de almacenamiento en la nube, tales como Box y Dropbox, publican las API para empresas de terceros a utilizar para desarrollar productos personalizados que ofrecen servicios adicionales relacionados con archivos, basados en la capacidad de almacenamiento del proveedor de la nube. Cuando se trata de compartir archivos, las API disponibles varían entre los proveedores de almacenamiento y no siempre incluyen todas las API necesarias para una solución de un extremo a otro. Existen productos para permitir el encriptado de datos, pero no se conoce ninguna solución de encriptado gestionada por el cliente que ofrezca un uso flexible del almacenamiento de datos y un control de acceso dinámico, sin volver a encriptar los datos almacenados. Los productos existentes tampoco soportan el uso compartido de archivos entre varios dispositivos y/o entre varios usuarios. El documento US2010/161964 A1 da a conocer un sistema, que comprende varios dispositivos cliente, un servidor de aplicaciones y una pluralidad de dispositivos de almacenamiento, donde los datos son almacenados en forma encriptada en los dispositivos de almacenamiento. Los usuarios de los dispositivos cliente están asociados a una o más comunidades de interés. Cada comunidad de interés está asociada a una clave de grupo. Los usuarios están asociados a una o más comunidades y los datos almacenados están asociados a una comunidad. Todos los datos asociados con una comunidad son encriptados mediante una clave de archivo que, a su vez, es encriptada mediante la clave de grupo asociada. El documento WO2007/048969 A1 da a conocer un servidor que proporciona medios para encriptar datos utilizando una clave de grupo asociada a un grupo de usuarios. El servidor autentica a los usuarios mediante una clave específica del usuario.
En consecuencia, serían deseables en la técnica otras soluciones alternativas y ventajosas.
Compendio de la invención
La presente invención tiene como objetivo proporcionar un intercambio seguro y económico de archivos entre varias entidades. La presente invención está definida por las reivindicaciones. La invención comprende un servidor, donde los archivos son gestionados bajo una carpeta virtual que es compartida por un grupo de diferentes entidades, teniendo cada entidad un identificador, teniendo dicho servidor una interfaz con las entidades para recibir y enviar los archivos, y teniendo una interfaz con los proveedores de almacenamiento en la nube para recibir y enviar archivos desde y hacia la carpeta correspondiente almacenada en el proveedor de almacenamiento en la nube, teniendo dicho servidor además, para la implementación de la aplicación web:
- un generador de claves para generar, al menos, una clave maestra por cada carpeta virtual dedicada al encriptado de archivos a compartir con el grupo en dicha carpeta,
- acceso a un archivo encriptado emitido a partir de un encriptado utilizando dicha clave maestra de un archivo que se origina en una de las entidades del grupo,
- una lista de control de autorización (ACL - Authorization Control List, en inglés) para cada carpeta compartida, enumerando dicha ACL los identificadores de las entidades autorizadas a desencriptar los archivos encriptados que forman parte de dicha carpeta compartida, y que están almacenados en el proveedor de almacenamiento en la nube,
- un gestor de ACL, para gestionar el contenido de la ACL,
- dicha interfaz con el proveedor de almacenamiento en la nube es tal que envía el archivo encriptado en una sola cuenta en el proveedor de almacenamiento en la nube, proporcionando de este modo un intercambio económico de archivos entre varias entidades mediante el uso de una cuota de almacenamiento de una sola cuenta por archivo compartido, y siendo dicha interfaz tal que, a solicitud de una entidad del grupo de un archivo en la carpeta, después de verificar la autorización de esta entidad en la ACL, recupera el archivo encriptado compartido de la cuenta única y lo reenvía a la entidad solicitante.
La invención utiliza la API publicada del proveedor de almacenamiento y ofrece una interfaz web a los usuarios, que es muy similar a la interfaz de usuario del proveedor de almacenamiento. Los usuarios obtienen la misma experiencia que si estuvieran usando el servicio de almacenamiento en la nube directamente.
Esta invención permite el intercambio seguro de datos encriptados almacenados en un proveedor de almacenamiento utilizando una lista de control de autorización (ACL) y la creación de carpetas compartidas virtuales para almacenar archivos encriptados. Con la invención, la autorización para acceder a la carpeta compartida virtual se gestiona en la ACL. Con el uso de la lista de control de autorización gestionada por el servidor web de acuerdo con la invención, los URI de archivos de acceso público están protegidos. El servidor web gestiona la agregación para presentar contenido unificado para una carpeta compartida a todos los usuarios en la ACL de la carpeta compartida. El servidor web de la invención controla los URI de los archivos individuales y verifica las solicitudes de autorización del usuario con la ACL de cada carpeta compartida.
El uso de una ACL permite que los usuarios sean agregados y eliminados de la ACL de una carpeta compartida de manera dinámica, sin modificar el encriptado de los archivos que ya están almacenados en la carpeta compartida. Cuando un usuario es eliminado de la ACL de una carpeta compartida, se realizan dos etapas adicionales. En primer lugar, los archivos aportados por este usuario eliminado son copiados en la cuenta de servicio de almacenamiento del propietario de la carpeta compartida. Esto garantiza que otros usuarios de la carpeta compartida puedan seguir teniendo acceso a estos archivos compartidos. En segundo lugar, estos archivos compartidos son eliminados de la cuenta de servicio de almacenamiento del usuario eliminado, de modo que no ocupen espacio de almacenamiento y consuman innecesariamente cuota de almacenamiento.
Con la invención, el intercambio de datos se logra utilizando carpetas compartidas creadas para este propósito y donde se cargan los archivos. El servidor web mantiene una clave maestra de encriptado exclusiva y dedicada para cada carpeta compartida. Esta clave maestra de encriptado se utiliza para proteger todos los archivos agregados a la carpeta compartida específica o a las subcarpetas creadas dentro de esta carpeta compartida. El acceso a las carpetas compartidas está controlado por el propio servidor web y por la lista de control de autorización, y no por el proveedor de almacenamiento. El servidor web de la invención gestiona una ACL separada para cada carpeta compartida, lo que permite al propietario especificar qué usuarios están autorizados a acceder a la carpeta compartida.
Asimismo, cada archivo compartido se aloja en una sola cuenta en el proveedor de almacenamiento. La cuenta utilizada es la del usuario que carga el archivo. Por lo tanto, solo cuenta para la cuota de almacenamiento de un único usuario. Todos los demás usuarios pueden acceder al archivo de manera gratuita utilizando el URI público, tan pronto como estén registrados con autorización de acceso en la lista de control de autorización. El intercambio de archivos de acuerdo con la invención es económico, porque los datos se almacenan en una sola cuenta. También es económico para los usuarios ya que, a excepción de la cuenta donde se almacenan los datos, otros participantes de la carpeta compartida no ven el uso de la cuota en su cuenta.
Además, la solución de la invención elimina la necesidad de sincronizar archivos entre diferentes usuarios en un escenario de uso compartido. Además, no se pierden datos cuando uno o más usuarios del grupo compartido abandonan el grupo. Los archivos almacenados en su cuenta se conservan para que los usen otros miembros del grupo. Por tanto, los datos de los archivos pueden ser compartidos con otros usuarios seleccionados del servidor web.
De acuerdo con una primera realización preferida, el servidor de la invención incluye, además, un módulo de encriptado/desencriptado para encriptar el archivo a compartir dentro del servidor, siendo proporcionado el acceso al archivo encriptado por este módulo de encriptado/desencriptado, desencriptando, asimismo, dicho módulo de encriptado/desencriptado, el archivo encriptado compartido recuperado antes de reenviarlo a la entidad solicitante. En esta realización, al actuar como intermediario entre el navegador del usuario y el almacenamiento en la nube, el servidor web de la invención puede encriptar sin problemas los datos antes de reenviarlos al proveedor de almacenamiento, y desencriptarlos antes de devolverlos al usuario.
En esta realización, agregar un archivo a una carpeta compartida requiere las siguientes etapas:
1. El texto sin encriptar es cargado desde el ordenador del usuario al servidor web.
2. El servidor web autoriza al usuario de acuerdo con la ACL de la carpeta compartida.
3. El servidor web encripta el archivo sin encriptar utilizando la clave maestra de la carpeta compartida.
4. El archivo encriptado es cargado desde el servidor web al proveedor de almacenamiento.
5. El servidor web obtiene un enlace público a este archivo del proveedor de almacenamiento.
6. El servidor web obtiene un enlace de referencia de copia a este archivo del proveedor de almacenamiento.
7. El servidor web guarda los enlaces de referencia públicos y de copia, además de metadatos de archivos adicionales, en la base de datos.
Cabe señalar, en este caso, que el término “texto sin encriptar” no se refiere a archivos de texto, sino a archivos que están sin encriptar, y aún no encriptados. Una vez encriptados, estos archivos se denominan comúnmente “texto encriptado”. Por tanto, están implícitos tanto los archivos binarios como los de texto (ASCII).
Todos los usuarios que tienen acceso a una carpeta compartida pueden descargar archivos que pertenecen a esta carpeta compartida. Para descargar un archivo, el servidor web utiliza el enlace público creado en la etapa 5 anterior para recuperar el archivo encriptado del proveedor de almacenamiento. El archivo encriptado es desencriptado utilizando la clave maestra de la carpeta compartida y, a continuación, es descargado en el navegador del cliente del usuario sin encriptar.
De manera ventajosa, dicho generador de claves también genera una clave específica de la entidad y tiene un módulo de aprovisionamiento seguro para aprovisionar dicha entidad con la clave específica, las solicitudes de esta entidad se firman adicionalmente utilizando la clave específica de la entidad antes de ser enviadas al servidor, dicho servidor incluye, además, un módulo de encriptado para verificar dichas firmas.
Esta realización ventajosa permite comprobar el origen de la solicitud de almacenamiento de archivos o el origen de la solicitud de acceso a archivos almacenados. Se refiere especialmente a los dispositivos móviles para los que se pueden observar violaciones de seguridad.
En aplicaciones ventajosas de la invención, las entidades se eligen entre el grupo formado por clientes de navegador web, aplicaciones de cliente de PC, dispositivos móviles.
Estas entidades son las más utilizadas para acceder al proveedor de servicios en la nube. También están particularmente preocupados por cuestiones de seguridad, y la invención se adaptaría especialmente para hacer frente a dichas cuestiones. En el caso de las aplicaciones cliente de PC, el servidor no puede enviar notificaciones automáticas y, por tanto, la invención está particularmente adaptada a esta situación.
De acuerdo con una segunda realización de la invención, dicho servidor proporciona a las entidades del grupo la clave maestra generada, para permitirles encriptar ellos mismos un archivo para ser compartido y enviar el archivo encriptado a dicho servidor, siendo proporcionado, por lo tanto, el acceso al archivo encriptado, por dicha entidad. En esta realización, la invención es una solución totalmente gestionada por el cliente para encriptar los datos almacenados en la nube. El archivo es encriptado en el lado del equipo del usuario antes de ser enviado al servidor web. Aquí, el servidor web gestiona la lista de control de autorización y el reenvío al proveedor de almacenamiento. Todavía permite cobrar a una sola cuenta por el almacenamiento. Se puede observar, en este caso, que un mismo servidor web podría implementar las dos realizaciones presentadas dependiendo del proveedor de almacenamiento al que se haya dirigido o del tipo de equipo de usuario en cuestión, por ejemplo.
De acuerdo con una característica particular, la cuenta única donde se almacena el archivo encriptado en el proveedor de almacenamiento en la nube es la cuenta de la entidad desde la que se origina el archivo.
Esta característica opcional permite estructurar el almacenamiento de archivos y la gestión de carpetas compartidas. Los archivos de una carpeta compartida son almacenados, por lo tanto, en la cuenta del proveedor de almacenamiento de sus respectivos usuarios, dependiendo de quién cargó el archivo.
De acuerdo con otra característica particular, la cuenta única donde se almacena el archivo encriptado en el proveedor de almacenamiento en la nube es la cuenta de la entidad desde la cual se actualizó el archivo por última vez.
Esta característica permite mantener las ventajas económicas de la invención al tiempo que proporciona igualdad de acceso a la descarga entre diferentes usuarios.
Desde un punto de vista aplicativo, las entidades pueden ser diferentes usuarios o diferentes dispositivos de un mismo usuario.
La presente invención también se refiere a un método para gestionar el intercambio seguro y económico de, al menos, una carpeta virtual, en la que se almacenan archivos encriptados, utilizando una aplicación web de servidor utilizando una API publicada de un proveedor de almacenamiento en la nube, siendo dicha carpeta compartida por un grupo de entidades diferentes, teniendo cada entidad un identificador, comprendiendo dicho método las etapas de:
- generar una clave maestra para cada carpeta dedicada al encriptado de archivos a compartir con el grupo en dicha carpeta,
- acceder a un archivo encriptado emitido a partir de encriptado utilizando dicha clave maestra de un archivo que se origina en una de las entidades del grupo,
- determinar, mediante una lista de control de autorización (ACL), para cada carpeta compartida, los identificadores de las entidades autorizadas a acceder a los archivos de dicha carpeta compartida almacenados en el proveedor de almacenamiento en la nube, si la entidad desde la que se origina el archivo está autorizada a acceder a la carpeta, - enviar el archivo encriptado a una sola cuenta en el proveedor de almacenamiento en la nube, comprendiendo, además, dicho método, las etapas de, a petición de una entidad del grupo para un archivo en la carpeta:
- comprobar la autorización para acceder a la carpeta de esta entidad solicitante en la ACL,
- recuperar el archivo encriptado compartido de la cuenta única,
- enviarlo a la entidad solicitante.
Este método implementado en una máquina o grupo de máquinas permite producir un servidor de la invención y proponer un intercambio seguro y económico de archivos de acuerdo con la invención. Se debe tener en cuenta que el método incluye, preferiblemente, una etapa de encriptar el archivo sin encriptar, siendo implementado dicho método completamente en un servidor.
De acuerdo con una realización específica, el método incluye, además, una etapa de generar una clave de dispositivo específica de la entidad, una etapa de aprovisionar dicha entidad con la clave específica, y, dichas solicitudes de firma de entidad relativas a la carpeta compartida usando dicha clave específica de entidad, una etapa de verificar la firma de solicitudes provenientes de la entidad.
De acuerdo con una característica ventajosa, el método incluye, además, una etapa de agregar un usuario compartido para compartir la carpeta compartida en la lista de control de autorización.
Esta función permite agregar un nuevo usuario al recurso compartido sin tener que modificar los archivos ya encriptados.
El método incluye, además, una etapa de eliminar un usuario existente de la lista de autorización de una carpeta compartida para que este usuario no tenga acceso más tarde a los archivos en la carpeta compartida dada.
Una vez más, la función de lista de control de acceso permite gestionar fácilmente la autorización para acceder al archivo sin tener que eliminar el archivo de la carpeta de almacenamiento en el proveedor de servicios, o cargar un archivo recién encriptado al proveedor de almacenamiento. El encriptado del archivo no cambia, incluso si se modifica la lista de usuarios que tienen acceso al archivo
Además, el método incluye, asimismo, la etapa de copiar todos los archivos aportados por el usuario eliminado a la cuenta de otro usuario, y la etapa de limpiar los archivos de la cuenta de almacenamiento del usuario que fue eliminado del recurso compartido.
Esta función permite que cualquier usuario que desee ser eliminado de una lista de intercambio no mantenga los archivos compartidos almacenados en su propia cuenta, limitando, por lo tanto, los recursos de almacenamiento utilizados en la cuenta del usuario.
Para la consecución de los fines anteriores y los relacionados, una o más realizaciones comprenden las características que se describen a continuación en su totalidad y se señalan particularmente en las reivindicaciones.
Breve descripción de los dibujos
La siguiente descripción y los dibujos adjuntos exponen en detalle ciertos aspectos ilustrativos, y son indicativos de algunas de las diversas formas en las que se pueden emplear los principios de las realizaciones. Otras ventajas y características novedosas resultarán evidentes a partir de la siguiente descripción detallada, cuando se considere junto con los dibujos, y se pretende que las realizaciones descritas incluyan todos estos aspectos y sus equivalentes.
• Las figuras 1A y 1B muestran esquemáticamente una primera realización de la invención;
• las figuras 2A y 2B muestran esquemáticamente una segunda realización de la invención;
• la figura 3 ilustra esquemáticamente el caso en el que la entidad firma su solicitud;
• las figuras 4A y 4B describen en detalle, respectivamente, una carga y una descarga de un archivo de acuerdo con la invención;
• las figuras 5A y 5B describen en detalle, respectivamente, las etapas de agregar un usuario a una carpeta compartida existente y las etapas similares cuando se elimina un usuario de una carpeta compartida;
• la figura 6 representa esquemáticamente un servidor de la invención.
Descripción detallada de realizaciones de la invención
Los elementos iguales se han designado con los mismos números de referencia en los diferentes dibujos. En aras de la claridad, en los dibujos se muestran y describirán únicamente aquellos elementos y etapas que son útiles para la comprensión de la presente invención.
La figura 1A muestra esquemáticamente la carga de un archivo que se origina como un archivo sin encriptar, CF, desde un primer equipo de usuario, UEA, usando un servidor web, WS, de la invención para cargar el archivo después del encriptado a un proveedor de almacenamiento, SP, para un almacenamiento del tipo de almacenamiento en la nube.
En una primera etapa U1, el servidor web, WS, genera una clave maestra, Ks, que se utilizará para el encriptado de archivos en una carpeta virtual, VF. Dicha clave puede ser generada en software, HSM (módulo de seguridad de hardware - Hardware Security Module, en inglés) o en un SE (elemento seguro - Secure Element, en inglés, tal como una tarjeta inteligente). Las claves pueden ser almacenadas en software, HSM o en SE.
En la realización presentada, la carpeta virtual, VF, está asociada con la cuenta de la entidad, UEA. Por lo tanto, en esta realización, la entidad UEA envía una solicitud para almacenar un archivo CF sin encriptar en la carpeta virtual, VF, en el proveedor de almacenamiento, SP. En una etapa U2, el servidor web, WS, consulta a continuación, una lista de control de autorización ACL (VF, UEA) que enumera, para cada carpeta VF compartida, identificadores de entidades autorizadas a acceder a archivos en dicha carpeta VF compartida. Si la entidad UEA desde la que se origina el archivo está autorizada para acceder a la carpeta, en una etapa U3, el servidor web usa la clave maestra Ks para encriptar el archivo CF sin encriptar en un archivo encriptado, EF. Este archivo encriptado, EF, es enviado a continuación, en una etapa U4, para ser almacenado en una carpeta de almacenamiento SF en la cuenta de la UEA en el proveedor de servicios SP. La carpeta de almacenamiento SF contiene todos los archivos aportados por el usuario determinado a la carpeta virtual VF. De hecho, las carpetas virtuales VF solo existen en el servidor WS de la invención. El proveedor de servicios SP solo tiene la carpeta de almacenamiento SF asociada a un usuario y donde el archivo encriptado EF es almacenado como parte del contenido. Por último, en una etapa U6, la carpeta virtual VF se actualiza para incluir el archivo CF recién cargado.
La figura 1B muestra esquemáticamente la descarga de un archivo desde el almacenamiento en el lado SP del proveedor de almacenamiento tras una petición R (CF) que se origina en otro equipo de usuario UEB. Se observa, en este caso, que el UEB también podría ser el equipo UEA. En primer lugar, el servidor comprueba, en una etapa D1, en este caso, la autorización del equipo de usuario UEB. Se debe observar, en este caso, que la invención requiere un registro preliminar de cualquier equipo UE destinado a acceder a una carpeta virtual VF compartida determinada. Este registro está totalmente gestionado por el servidor web WS. Cuando se agrega un usuario a una carpeta compartida existente, los archivos que ya fueron agregados para compartir no tienen que ser modificados, y el usuario agregado puede tener una cuenta en un proveedor de almacenamiento diferente. El usuario se agrega a la ACL con las referencias útiles relativas a la carpeta compartida y al proveedor de servicios.
Si el equipo de usuario UEB está autorizado para acceder a la carpeta VF compartida, en una etapa D2, el servidor web recupera el archivo EF encriptado del proveedor de almacenamiento SP. A continuación, desencripta el archivo encriptado en la etapa D3. Por último, el archivo sin encriptar CF es enviado al equipo de usuario UEB en una etapa D4.
Con la invención, el archivo agregado a la carpeta compartida es encriptado y cargado en la cuenta del usuario en el SP. Cada usuario con autorización para acceder a la carpeta compartida puede tener una cuenta en un SP diferente. Cuando se agrega un archivo, todos los usuarios del grupo de carpetas compartidas tienen acceso inmediato al mismo. El archivo agregado reside en una sola ubicación, por lo que no se necesita sincronización. Puesto que el archivo reside en una sola ubicación, solo se usa el espacio de almacenamiento de un usuario en el SP. Para descargar un archivo encriptado de la carpeta compartida, el archivo es desencriptado en el servidor web y pasado al usuario.
Además, cuando se requiere la eliminación de un usuario de una carpeta compartida, dicho usuario simplemente es eliminado de la ACL de la carpeta compartida. No es necesario modificar los archivos que ya están cargados en esta carpeta compartida. Los archivos aportados por el usuario eliminado son copiados ventajosamente en la cuenta de otro usuario en el SP o la cuenta del usuario eliminado en el SP se limpia eliminando archivos. Cuando se requiere la eliminación de una carpeta compartida, la ACL correspondiente es eliminada, para que ningún usuario tenga autorización para acceder a los archivos compartidos. Además, la cuenta de cada usuario se limpia en su SP
correspondiente, por lo que los archivos son eliminados. Cuando el sistema puede tratar con varios proveedores de servicios, la ACL tiene referencias adicionales para indicar qué proveedor de servicios se utiliza.
En la figura 2A se presenta otra realización de la invención en la que la clave maestra Ks se genera en una etapa U1. En este caso, la clave maestra Ks es enviada al equipo de usuario UEA en una etapa U1 ’. La codificación de un archivo sin encriptar CF es realizada por el equipo de usuario UEA en una etapa U2’. El archivo EF encriptado es enviado a continuación al servidor web WS en una etapa U3’. El servidor web WS comprueba la autorización de acceso del UEA en la carpeta compartida VF dentro de la lista de control de autorización, ACL (VF, UEA) en la etapa U4’. Si el UEA está autorizado, el archivo EF encriptado es enviado para su almacenamiento al proveedor de almacenamiento SP en una etapa U5’. Por último, la carpeta virtual VF se actualiza en una etapa U6 para incluir el archivo CF recién cargado.
La figura 2B muestra la descarga de un archivo encriptado por otro equipo de usuario UEB. Una etapa preliminar D0 consiste, en este caso, en referenciar la autorización del equipo de usuario en la lista de control de autorización ACL (VF, UEB). A continuación, cuando el UEB está autorizado para acceder a la carpeta virtual VF, el equipo de usuario UEB recibe la clave maestra Ks en una etapa D1 ’.
A continuación, bajo la solicitud R (EF) para el archivo encriptado EF del UEAB, el servidor web verifica la autorización del equipo de usuario UEB en la lista de control de autorización ACL (VF, UEB) en una etapa D2’. Si el equipo de usuario UEB está autorizado para acceder a la carpeta compartida VF, el servidor web Ws recupera el archivo encriptado EF de la carpeta de almacenamiento SF en una etapa D3’. Este archivo EF encriptado es enviado a continuación al equipo de usuario UEB en una etapa D4’ antes de ser desencriptado usando Ks en el propio equipo de usuario UEB en una etapa U5’.
La realización descrita en las figuras 2A y 2B está particularmente adaptada a los dispositivos móviles. El encriptado en el propio equipo del usuario puede ser muy deseable, ya que reduce el riesgo de que los datos sean espiados de manera malintencionada.
La figura 3 muestra una realización híbrida, donde se generan, al menos, dos claves en una etapa H0: una clave maestra, Ks, y una clave de dispositivo, Kd, asociada al equipo de usuario UEA, por ejemplo. La clave de dispositivo Kd es enviada al equipo de usuario UEA en una etapa H1.
En esta realización, cualquier solicitud de carga/descarga es firmada en una etapa H2 por el equipo de usuario usando su clave de dispositivo Kd. La transmisión de archivos sin encriptar no está firmada, sino realizada bajo la capa SSL/TLS. La solicitud firmada RKd es enviada a continuación al servidor web WS para la verificación de la firma en una etapa H3 y para el procesamiento de la solicitud. Habitualmente, la autorización del equipo de usuario se verifica luego en una etapa H4. Si el UEA está autorizado para acceder a la carpeta compartida VF, dependiendo de la naturaleza de la solicitud RKd, la codificación o decodificación se realiza en el servidor web y el archivo de codificación EF es enviado o recuperado de la carpeta compartida VF, tal como se describe con más detalles en la figura 1A y 1B.
En este caso, se observa que puede ser ventajoso, en caso de que el equipo de usuario sea un dispositivo móvil, enviar también la clave maestra de carpeta compartida al equipo de usuario con la clave específica del dispositivo. En este caso, el dispositivo móvil puede encriptar/desencriptar por sí mismo el archivo que se va a almacenar o recuperar. Resuelve problemas de seguridad específicos de los dispositivos móviles, en particular cuando el archivo se carga desde dicho dispositivo móvil.
Las figuras 4A y 4B describen una secuencia detallada correspondiente a la carga y descarga del archivo, de acuerdo con la primera realización de la invención.
Habitualmente, el equipo de usuario UEA está conectado al servidor web a un cliente de navegador. En una primera etapa S1, el cliente inicia sesión en el servidor web WS. Por lo tanto, el usuario requiere acceso al espacio de almacenamiento proporcionado por el proveedor de almacenamiento SP. Consiste en una solicitud para obtener una lista de carpetas compartidas enviada en una etapa S2. A continuación, el servidor web consulta y crea una tabla de búsqueda que forma una lista de control de autorización ACL en una etapa S3. A continuación, se envía una lista de carpetas compartidas para el usuario UEA al equipo de usuario UEA en una etapa S4.
El usuario elige una carpeta compartida y solicita el acceso a esta carpeta compartida en una etapa S5. A continuación, el servidor web verifica el permiso del usuario para ver en una etapa S6 y obtiene una lista de archivos en esta carpeta compartida en una etapa S7. La lista de archivos en la carpeta compartida se devuelve al UEA en una etapa S8. En una etapa S9, el equipo de usuario carga un archivo en la carpeta compartida seleccionada. El servidor web WS comprueba el permiso para añadir el archivo en una etapa S10. En una etapa S11, el servidor web WS obtiene una clave maestra para la carpeta compartida. Habitualmente, la clave maestra es recuperada del almacenamiento o generada mediante un generador de claves.
A continuación, el servidor web WS encripta el archivo usando la clave maestra en una etapa S12. El archivo encriptado es cargado a continuación al proveedor de almacenamiento SP en la etapa S13. El servidor web WS obtiene de este modo una referencia pública para el archivo cargado en la etapa S14. También obtiene la referencia
de copia para el archivo cargado en una etapa S15. Estos metadatos son almacenados por el servidor web sobre el nuevo archivo en una etapa S16. Por tanto, la base de datos incluye, al menos, una referencia pública y una referencia de copia para cada archivo almacenado en el proveedor de almacenamiento SP. La referencia pública suele ser una URL que apunta al archivo en el proveedor de almacenamiento SP. Cualquiera que tenga esta URL puede descargar el archivo. Se puede utilizar directamente a través de un navegador o mediante la API. CopyRef es una cadena única (identificador) que se puede utilizar para copiar un archivo de la cuenta de un usuario a la cuenta de otro usuario en el mismo proveedor de almacenamiento SP. Esto se hace por medio de la API, y no se realiza ninguna descarga.
Ventajosamente, una confirmación para la carga del archivo es enviada finalmente al equipo de usuario UEA en una etapa S17.
En la figura 4B, se presenta una secuencia de descarga. Un equipo de usuario UEB inicia sesión en el servidor web WS en una etapa T1. Solicita una lista de carpetas compartidas en una etapa T2. En una etapa T3, se consulta la tabla de búsqueda de la lista de control de autorización. La lista de carpetas compartidas para este usuario es enviada a continuación al equipo de usuario UEB en una etapa T4. A continuación, el usuario selecciona una carpeta compartida en una etapa T5. El servidor web WS comprueba el permiso de visualización del equipo de usuario UEB en una etapa T6 y obtiene una lista de archivos en la carpeta compartida seleccionada en una etapa T7. La lista de archivos en la carpeta compartida es devuelta al equipo de usuario UEB en una etapa T8. A continuación, se selecciona un archivo para descargar en una etapa T9.
A continuación, el servidor web WS verifica el permiso para descargar el archivo en la etapa T10. En una etapa T11, el servidor web WS obtiene la referencia pública del archivo de la base de datos en el servidor web WS. Utiliza esta referencia pública para descargar el archivo de la cuenta de almacenamiento del UEA en una etapa T12. A continuación, el servidor web obtiene la clave maestra para la carpeta compartida en cuestión en una etapa T13. En una etapa T14, el servidor web WS desencripta el archivo encriptado. Por último, el archivo desencriptado, sin encriptar, es enviado al equipo de usuario UEA en la etapa T15.
La figura 5A describe las etapas para agregar un nuevo usuario UEA2 a una carpeta compartida existente. Un equipo de usuario UEB inicia sesión en el servidor web WS en una etapa A1. Solicita una lista de carpetas compartidas en una etapa A2. En una etapa A3, se consulta la tabla de búsqueda de la lista de control de autorización. La lista de carpetas compartidas para este usuario es enviada a continuación al equipo de usuario UEB en una etapa A4. Esta lista contiene información sobre las carpetas compartidas que crea este usuario y las carpetas compartidas a las que ha sido invitado. A continuación, el usuario selecciona una carpeta compartida que ha creado en una etapa A5. Él es el propietario de esta carpeta compartida. El servidor web WS comprueba el permiso de visualización del equipo de usuario UEB en una etapa A6 y obtiene una lista de archivos en la carpeta compartida seleccionada en una etapa A7. Asimismo, se devuelve en la etapa A7 la lista de otros usuarios autorizados a acceder a esta carpeta compartida. La lista de archivos en la carpeta compartida y los usuarios que tienen acceso a esta carpeta compartida es devuelta al equipo de usuario UEB en una etapa A8. El usuario UEB hace clic en el enlace editar lista de usuarios para esta carpeta compartida y solicita que se agregue un nuevo usuario UEA2 a la carpeta compartida. Esta solicitud es enviada al WS en la etapa A9. En la etapa A10, el WS consulta la ACL para asegurarse de que el usuario, UEB, está autorizado a cambiar los metadatos de la carpeta compartida. En la etapa A11, el nuevo usuario UEA2 es agregado a la lista de ACL para la carpeta compartida. La confirmación de esta adición, junto con la lista de usuarios actualizada, es devuelta al usuario en la etapa A12. Cabe señalar que, al hacerlo, no es necesario desencriptar ningún archivo y después volver a encriptarlo. Además, no se necesita comunicación con el SP.
La figura 5B describe las etapas para eliminar un usuario existente de una carpeta compartida existente. Un equipo de usuario UEB inicia sesión en el servidor web WS en una etapa B1. Solicita una lista de carpetas compartidas en una etapa B2. En una etapa B3, se consulta la tabla de búsqueda de la lista de control de autorización. La lista de carpetas compartidas para este usuario es enviada a continuación al equipo de usuario UEB en una etapa B4. Esta lista contiene información sobre las carpetas compartidas que crea este usuario y las carpetas compartidas a las que ha sido invitado. A continuación, el usuario selecciona una carpeta compartida que ha creado en una etapa B5. Él es el propietario de esta carpeta compartida. El servidor web WS comprueba que el usuario tiene permiso para ver el contenido de la carpeta en la etapa B6. También obtiene una lista de archivos en la carpeta compartida seleccionada en una etapa B7. Asimismo, se devuelve en la etapa B7 la lista de otros usuarios autorizados a acceder a esta carpeta compartida. Esta lista de archivos en la carpeta compartida y los usuarios que tienen acceso a esta carpeta compartida es devuelta al equipo de usuario UEB en una etapa B8. El usuario hace clic en el enlace editar lista de usuarios para esta carpeta compartida y solicita que un usuario existente, UEA2, sea eliminado de la carpeta compartida. Esta solicitud es enviada al WS en la etapa B9. En la etapa B10, el WS consulta la ACL para asegurarse de que el usuario, UEB, está autorizado a cambiar los metadatos de la carpeta compartida. En la etapa B11, el usuario UEA2 existente es eliminado de la lista ACL para la carpeta compartida. A continuación, el WS comprueba todos los archivos en esta carpeta compartida que han sido aportados por este usuario UEA2 existente, en la etapa B12. En la etapa B13, el WS transfiere todos estos archivos desde la cuenta de UEA2 en el SP a la cuenta del UEA, típicamente mediante copia y posterior eliminación. Esto garantiza que los archivos seguirán estando disponibles para otros usuarios de la carpeta compartida, incluso si el usuario UEA2 que contribuyó con los archivos ya no forma parte del recurso compartido. La confirmación de la eliminación de este usuario, junto con la lista de usuarios
actualizada, es devuelta al usuario UEB en la etapa B15. Más adelante, cuando el usuario UEA2 se conecta al WS, los archivos de su cuenta, que fueron copiados a la cuenta del UEA en la etapa B13, ahora se eliminan de la cuenta del UEA2 en el SP. Esto se muestra en la etapa B16.
La figura 6 describe esquemáticamente un servidor web WS de la invención. Se observa en este caso que este servidor se puede implementar en la práctica en una sola máquina o en varias máquinas físicas. Este servidor WS comprende una aplicación web, WA, dedicada a compartir archivos encriptados EF que residen en los proveedores de almacenamiento en la nube SP. Esta aplicación web WA está relacionada con, al menos, un generador de claves, KG, capaz de generar claves. En particular, la clave maestra utilizada para encriptar/desencriptar datos en un codificador/decodificador ENC/DEC. Se observa en este caso que la línea discontinua permite distinguir la primera y la segunda realizaciones. En la segunda realización, este codificador/decodificador se implementa en el equipo de usuario mientras que está incluido en el servidor web WS en la primera realización preferida. La aplicación web también está vinculada con una lista de control de autorización, ACL, gestionada por un gestor de listas, LM. Por último, la aplicación web, WA, también está relacionada con una interfaz, SPI, dedicada para ser utilizada para la comunicación con el proveedor de almacenamiento, SP. Esta interfaz utiliza una base de datos, DB, que almacena referencias públicas para archivos transferidos por la aplicación web, WA, hacia el proveedor de almacenamiento, SP. La base de datos también incluye referencias de copia.
La invención proporciona un control completo de usuario/cliente/propietario sobre el encriptado de datos antes de enviarlos al proveedor de almacenamiento en la nube. Con la invención, el mismo usuario puede acceder a sus datos de manera segura desde múltiples dispositivos; un PC de oficina, un PC doméstico, un teléfono móvil. Asimismo, los datos pueden ser compartidos de manera segura entre varios usuarios, tanto internos de una empresa como socios externos. Por último, se requiere menos cuota de almacenamiento para participar en el intercambio de archivos que las funciones para compartir que ofrecen directamente los proveedores de almacenamiento.
En la descripción detallada anterior, se hace referencia a los dibujos adjuntos que muestran, a modo de ilustración, realizaciones específicas en las que se puede poner en práctica la invención. Estas realizaciones se describen con suficiente detalle para permitir a los expertos en la técnica poner en práctica la invención. Se debe comprender que las diversas realizaciones de la invención, aunque diferentes, no son necesariamente mutuamente excluyentes. La siguiente descripción detallada, por lo tanto, no debe ser tomada en un sentido limitativo, y el alcance de la presente invención está definido únicamente por las reivindicaciones adjuntas.
Claims (10)
1. Método para compartir archivos de manera segura y económica entre una pluralidad de entidades (UEA, UEB) utilizando, al menos, una carpeta virtual (VF), e implementado mediante una aplicación web de servidor conectada a un proveedor de almacenamiento en la nube (SP) y adaptada para usar un interfaz de programación de aplicaciones, API, del proveedor de almacenamiento en la nube (SP), comprendiendo el método las etapas de: - generar (U1) una clave maestra (Ks) por cada carpeta virtual (VF) dedicada al encriptado de archivos (CF) a compartir con el grupo en dicha carpeta virtual (VF), en donde la carpeta virtual (VF) es asociada con una lista de control de autorización (ACL) que especifica una o más entidades que tienen acceso a los archivos almacenados en la carpeta virtual (VF);
- en respuesta a la recepción desde una primera entidad de una solicitud para almacenar un archivo de texto sin encriptar en la carpeta virtual (VF), verificar (U2) en la lista de control de autorización (ACL) si la primera entidad está autorizada para acceder a la carpeta virtual, y, si la primera entidad está autorizada, encriptar (U3) el archivo de texto sin encriptar con la clave maestra (Ks) y almacenar (U4) el archivo encriptado (EF) en el proveedor de almacenamiento en la nube (SP) en una carpeta de almacenamiento de la primera entidad;
- en respuesta a la recepción desde una segunda entidad de una solicitud para recuperar un archivo de texto sin encriptar en la carpeta virtual (VF), verificar (D1) en la lista de control de autorización (ACL) si la segunda entidad está autorizada para acceder a la carpeta virtual (VF), y, si la segunda entidad está autorizada, recuperar (D2) el archivo encriptado (EF) del proveedor de almacenamiento en la nube (SP) en la carpeta de almacenamiento de la primera entidad, desencriptar (D3) el archivo de texto sin encriptar utilizando la clave maestra (Ks) y enviar (D4) el archivo de texto sin encriptar a la segunda entidad;
- en respuesta a la recepción desde una tercera entidad de una solicitud para eliminar una cuarta entidad de la lista de control de autorización (ACL) de una carpeta virtual (VF), verificar (B10) en la lista de control de autorización (ACL) si la tercera entidad está autorizada para eliminar la cuarta entidad, y si la tercera entidad está autorizada, eliminar (B11) la cuarta entidad de la lista de control de autorización (ACL), identificar (B12) todos los archivos de la carpeta virtual (VF) que fueron aportados por la cuarta entidad, y mover (B13) los archivos encriptados (EF) correspondientes a los archivos identificados a una carpeta de almacenamiento de otra entidad en la lista de control de autorización (ACL).
2. Método para compartir archivos de manera segura y económica entre una pluralidad de entidades (UEA, UEB) utilizando, al menos, una carpeta virtual (VF), e implementado mediante una aplicación web de servidor conectada a un proveedor de almacenamiento en la nube (SP) y adaptada para usar un interfaz de programación de aplicaciones, API, del proveedor de almacenamiento en la nube (SP), comprendiendo el método las etapas de: - generar (U1) una clave maestra para cada carpeta virtual (VF) dedicada al encriptado de archivos (CF) a compartir con el grupo en dicha carpeta virtual (VF), en donde la carpeta virtual (VF) está asociada a una lista de control de autorización (ACL) que especifica una o más entidades que tienen acceso a los archivos almacenados en la carpeta virtual (VF);
- enviar (U1 ’, D1’) la clave maestra (Ks) a, al menos, una primera y una segunda entidad que tienen acceso a los archivos almacenados en la carpeta virtual (VF);
- en respuesta a la recepción desde una primera entidad de una solicitud para almacenar un archivo (EF) encriptado usando la clave maestra recibida (Ks) en la carpeta virtual (VF), verificar (U2) en la lista de control de autorización (ACL) si la primera entidad está autorizada para acceder a la carpeta virtual (VF), y, si la primera entidad está autorizada, almacenar (U4) el archivo encriptado (EF) en el proveedor de almacenamiento en la nube (SP) en una carpeta de almacenamiento de la primera entidad; en donde la primera entidad está adaptada para encriptar un archivo de texto sin encriptar usando la clave maestra (Ks) de la carpeta virtual (VF) antes de transmitir la solicitud, - en respuesta a la recepción desde una segunda entidad de una solicitud para recuperar un archivo encriptado (EF) en la carpeta virtual (VF), verificar (D1) en la lista de control de autorización (ACL) si la segunda entidad está autorizada para acceder a la carpeta virtual (VF), y, si la segunda entidad está autorizada, recuperar (D2) el archivo encriptado (EF) del proveedor de almacenamiento en la nube (SP) en la carpeta de almacenamiento asociada con la primera entidad y enviar (D4) el archivo encriptado (EF) a la segunda entidad, en donde la segunda entidad está adaptada para desencriptar el archivo encriptado (EF) utilizando la clave maestra (Ks) asociada con la carpeta virtual (VF) después de recibir un archivo encriptado (EF),
- en respuesta a la recepción desde una tercera entidad de una solicitud para eliminar una cuarta entidad de la lista de control de autorización (ACL) de una carpeta virtual (VF), verificar (B10) en la lista de control de autorización (ACL) si la tercera entidad está autorizada para eliminar la cuarta entidad, y, si la tercera entidad está autorizada, eliminar (B11) la cuarta entidad de la lista de control de autorización (ACL), identificar (B12) todos los archivos de la carpeta virtual (VF) que fueron aportados por la cuarta entidad, y mover (B13) los archivos encriptados (EF) correspondientes a los archivos identificados a una carpeta de almacenamiento de otra entidad en la lista de control de autorización (ACL).
3. Método de acuerdo con la reivindicación 1 o 2, que comprende, además:
- generar (H0) una clave de dispositivo (Kd) asociada a la primera entidad y enviar la clave de dispositivo (Kd) a la primera entidad,
- en respuesta a la recepción desde una primera entidad de una solicitud para almacenar o recuperar un archivo, verificar (H3) una firma incluida en la solicitud utilizando la clave de dispositivo (Kd) de la primera entidad, en donde la primera entidad está adaptada para firmar (H2) una solicitud para almacenar o recuperar un archivo antes de transmitir la solicitud.
4. Método de acuerdo con cualquier reivindicación anterior, que comprende, además: en respuesta a la recepción desde una tercera entidad de una solicitud para agregar una cuarta entidad a la lista de control de autorización (ACL) asociada con una carpeta virtual (VF), verificar (A10) en la lista de control de autorización (ACL) si la tercera entidad está autorizada a agregar la cuarta entidad de la carpeta virtual (VF), y, si la tercera entidad está autorizada a eliminar la cuarta entidad de la carpeta virtual (VF), agregar (A11) la cuarta entidad de la lista de control de autorización (ACL) de la carpeta virtual (VF).
5. Un servidor (WS) que comprende una interfaz para una pluralidad de entidades (UEA, UEB), teniendo cada entidad un identificador, una interfaz con uno o más proveedores de almacenamiento en la nube (SP) y una aplicación de servidor que usa una interfaz de programación de aplicaciones publicadas, API, de uno o más proveedores de almacenamiento en la nube (SP), para el intercambio seguro y económico de archivos encriptados, en el que uno o más proveedores de almacenamiento en la nube (SP) están adaptados para almacenar un archivo encriptado (EF) en una carpeta de almacenamiento asociada a un entidad, en donde la aplicación web está adaptada para asociar un archivo con una carpeta virtual (VF) asociada a un grupo de entidades que tienen acceso a la carpeta virtual (VF), en donde la aplicación web comprende:
- un generador de claves (KG), adaptado para generar, al menos, una clave maestra (Ks) por cada carpeta virtual (VF) dedicada al encriptado de archivos (CF) a compartir con el grupo en dicha carpeta virtual (VF),
- un módulo de encriptado/desencriptado (ENC/DEC), adaptado para encriptar un archivo de texto sin encriptar y desencriptar un archivo encriptado (EF) utilizando la clave maestra (Ks) asociada a la carpeta virtual (VF) del archivo;
- un gestor de lista de control de autorización (LM), adaptado para verificar si una entidad tiene acceso a una carpeta virtual (VF) y agregar o eliminar entidades a una lista de control de autorización (ACL) existente;
y en el que la aplicación web está adaptada, además, para realizar uno o más de los métodos de acuerdo con las reivindicaciones 1 a 4.
6. Servidor (WS), de acuerdo con la reivindicación 5, en el que las entidades son clientes de navegador web, aplicaciones cliente de PC o dispositivos móviles.
7. Servidor (WS), de acuerdo con las reivindicaciones 5 a 6, en el que la carpeta de almacenamiento donde está almacenado el archivo encriptado (EF) en el proveedor de almacenamiento en la nube (SP) es la carpeta de almacenamiento de la entidad desde la que se origina el archivo.
8. Servidor (WS), de acuerdo con las reivindicaciones 5 a 6, en el que la carpeta de almacenamiento donde está almacenado el archivo encriptado (EF) en el proveedor de almacenamiento en la nube (SP) es la carpeta de almacenamiento de la entidad que actualizó el archivo por última vez.
9. Servidor (WS), de acuerdo con las reivindicaciones 5 a 8, en el que las entidades son usuarios diferentes.
10. Servidor (WS), de acuerdo con las reivindicaciones 5 a 8, en el que las entidades son dispositivos diferentes de un solo usuario.
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US14/071,179 US9626527B2 (en) | 2013-11-04 | 2013-11-04 | Server and method for secure and economical sharing of data |
PCT/EP2014/072498 WO2015062907A1 (en) | 2013-11-04 | 2014-10-21 | Server and method for secure and economical sharing of data |
Publications (1)
Publication Number | Publication Date |
---|---|
ES2848030T3 true ES2848030T3 (es) | 2021-08-05 |
Family
ID=51786949
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
ES14786900T Active ES2848030T3 (es) | 2013-11-04 | 2014-10-21 | Servidor y método para intercambio seguro y económico de datos |
Country Status (6)
Country | Link |
---|---|
US (1) | US9626527B2 (es) |
EP (1) | EP3066609B1 (es) |
BR (1) | BR112016010050B1 (es) |
CA (1) | CA2926309C (es) |
ES (1) | ES2848030T3 (es) |
WO (1) | WO2015062907A1 (es) |
Families Citing this family (22)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US9654571B2 (en) * | 2014-01-21 | 2017-05-16 | Time Warner Cable Enterprises Llc | Publish-subscribe messaging in a content network |
US9405925B2 (en) * | 2014-02-09 | 2016-08-02 | Microsoft Technology Licensing, Llc | Content item encryption on mobile devices |
US9641488B2 (en) | 2014-02-28 | 2017-05-02 | Dropbox, Inc. | Advanced security protocol for broadcasting and synchronizing shared folders over local area network |
US9516028B1 (en) * | 2014-08-06 | 2016-12-06 | Amazon Technologies, Inc. | Hierarchical policy-based shared resource access control |
US10277601B1 (en) * | 2015-05-11 | 2019-04-30 | Google Llc | System and method for recursive propagating application access control |
US11184335B1 (en) * | 2015-05-29 | 2021-11-23 | Acronis International Gmbh | Remote private key security |
US9819673B1 (en) * | 2015-06-24 | 2017-11-14 | Amazon Technologies, Inc. | Authentication and authorization of a privilege-constrained application |
CN106411504B (zh) * | 2015-07-31 | 2020-10-09 | 腾讯科技(深圳)有限公司 | 数据加密系统、方法及装置 |
US10726148B2 (en) * | 2015-08-19 | 2020-07-28 | Iqvia, Inc. | System and method for providing multi-layered access control |
US9992175B2 (en) * | 2016-01-08 | 2018-06-05 | Moneygram International, Inc. | Systems and method for providing a data security service |
US9935772B1 (en) * | 2016-02-19 | 2018-04-03 | Vijay K Madisetti | Methods and systems for operating secure digital management aware applications |
GB201604070D0 (en) | 2016-03-09 | 2016-04-20 | Ibm | On-premise and off-premise communication |
US10805273B2 (en) | 2016-04-01 | 2020-10-13 | Egnyte, Inc. | Systems for improving performance and security in a cloud computing system |
CN107515879B (zh) * | 2016-06-16 | 2021-03-19 | 伊姆西Ip控股有限责任公司 | 用于文档检索的方法和电子设备 |
US10594770B2 (en) | 2016-11-01 | 2020-03-17 | International Business Machines Corporation | On-premises and off-premises communication |
US10872023B2 (en) * | 2017-09-24 | 2020-12-22 | Microsoft Technology Licensing, Llc | System and method for application session monitoring and control |
GB2575670B (en) * | 2018-07-19 | 2021-03-24 | Secure Design Ltd | Encryption device responsive to disconnection request |
US10769101B2 (en) * | 2018-08-23 | 2020-09-08 | Oath Inc. | Selective data migration and sharing |
US10897351B1 (en) * | 2020-07-02 | 2021-01-19 | Slack Technologies, Inc. | Encryption key management for an automated workflow |
US11314875B1 (en) * | 2021-11-30 | 2022-04-26 | Snowflake Inc. | Replication of account security features in multiple deployment database |
US20240303224A1 (en) * | 2021-12-13 | 2024-09-12 | Mckinsey & Company, Inc. | Technologies for organizing and optimizing storage capacity of shared file platforms |
US20230291548A1 (en) * | 2022-03-08 | 2023-09-14 | Western Digital Technologies, Inc. | Authorization requests from a data storage device to multiple manager devices |
Family Cites Families (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
GB9913165D0 (en) | 1999-06-08 | 1999-08-04 | Secr Defence | Access control in a web environment |
WO2007048969A1 (fr) | 2005-10-24 | 2007-05-03 | France Telecom | Serveur, systeme et procede pour le chiffrement de donnees numeriques, en particulier pour la signature electronique de donnees numeriques au nom d'un groupe d'utilisateurs |
US8326814B2 (en) * | 2007-12-05 | 2012-12-04 | Box, Inc. | Web-based file management system and service |
CN101316273B (zh) * | 2008-05-12 | 2012-08-22 | 华中科技大学 | 一种分布式安全存储系统 |
US20100161964A1 (en) | 2008-12-23 | 2010-06-24 | David Dodgson | Storage communities of interest using cryptographic splitting |
EP2710510A4 (en) * | 2011-05-14 | 2015-05-06 | Bitcasa Inc | CLOUD FILE SYSTEM WITH SERVER DEPLOYMENT OF USER UNKNOWN ENCRYPTED FILES |
US20130311598A1 (en) * | 2012-05-16 | 2013-11-21 | Apple Inc. | Cloud-based data item sharing and collaboration among groups of users |
-
2013
- 2013-11-04 US US14/071,179 patent/US9626527B2/en active Active
-
2014
- 2014-10-21 ES ES14786900T patent/ES2848030T3/es active Active
- 2014-10-21 BR BR112016010050-6A patent/BR112016010050B1/pt active IP Right Grant
- 2014-10-21 WO PCT/EP2014/072498 patent/WO2015062907A1/en active Application Filing
- 2014-10-21 EP EP14786900.2A patent/EP3066609B1/en active Active
- 2014-10-21 CA CA2926309A patent/CA2926309C/en active Active
Also Published As
Publication number | Publication date |
---|---|
US20150127937A1 (en) | 2015-05-07 |
BR112016010050A2 (es) | 2017-08-01 |
CA2926309C (en) | 2019-11-12 |
US9626527B2 (en) | 2017-04-18 |
WO2015062907A1 (en) | 2015-05-07 |
EP3066609A1 (en) | 2016-09-14 |
EP3066609B1 (en) | 2020-12-16 |
BR112016010050B1 (pt) | 2022-08-30 |
CA2926309A1 (en) | 2015-05-07 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
ES2848030T3 (es) | Servidor y método para intercambio seguro y económico de datos | |
CN108259169B (zh) | 一种基于区块链云存储的文件安全分享方法及系统 | |
EP3616384B1 (en) | Orthogonal access control for groups via multi-hop transform encryption | |
US9467282B2 (en) | Encryption scheme in a shared data store | |
US9716696B2 (en) | Encryption in the cloud using enterprise managed keys | |
CN105245328B (zh) | 一种基于第三方的用户及文件的密钥产生管理方法 | |
CN108418796B (zh) | 云数据多副本完整性验证及关联删除的方法、云存储系统 | |
CN106254324B (zh) | 一种存储文件的加密方法及装置 | |
US9070112B2 (en) | Method and system for securing documents on a remote shared storage resource | |
CN103731395B (zh) | 文件的处理方法及系统 | |
CN103516516B (zh) | 文件安全共享方法、系统 | |
US20140143541A1 (en) | Method and Apparatus for Managing Encrypted Files in Network System | |
WO2016097851A1 (en) | Client-side encryption with drm | |
US20160072772A1 (en) | Process for Secure Document Exchange | |
JP6341599B2 (ja) | 暗号データ更新システム、暗号データ更新方法 | |
US11075753B2 (en) | System and method for cryptographic key fragments management | |
CN102571329A (zh) | 密码密钥管理 | |
WO2019083379A1 (en) | DATA TRANSMISSION | |
JP2014175970A (ja) | 情報配信システム、情報処理装置及びプログラム | |
KR20120002729A (ko) | 암호화 문서에 대한 다자간 검색 시스템 및 그 방법 | |
Raso et al. | ABEBox: A data driven access control for securing public cloud storage with efficient key revocation | |
KR20170084802A (ko) | 단말기들 간의 보안 데이터 송수신 방법 및 시스템 | |
JP5139045B2 (ja) | コンテンツ配信システム、コンテンツ配信方法およびプログラム | |
Siyal et al. | Secure Cloud Data with Attribute-based Honey Encryption | |
Castiglione et al. | Thalos: secure file storage in untrusted clouds |