Tengo esta idea sobre la construcción de una red social que almacena todos sus datos encriptados. La idea es que los datos de un miembro se almacenen en múltiples 'servidores base' (a elección del miembro). Cada miembro tiene 3 conjuntos de datos y 3 claves de cifrado.
- keyP para sus propios datos privados y configuraciones
- keyF para su perfil (publicaciones, fotos, lista de amigos), le da esta clave a todos sus amigos
- teclaA para su información pública (nombre, ciudad, etc.), también entregada a amigos. Los amigos pueden compartir este con sus amigos (esto permite a las personas encontrar amigos de amigos)
Una lista de amigos contendría la ID, la ubicación del servidor y la clave A de todos tus amigos.
Los miembros pueden cambiar los servidores de base cuando lo deseen. Cuando lo hagan, sus datos cifrados se eliminarán completamente del servidor. Cuando se agrega un servidor base, los datos cifrados se copiarán al nuevo servidor y esa ubicación se enviará a todos los amigos para que sepan dónde encontrarlo. Si un miembro quiere "eliminarse" del único servidor que ha dejado allí, debería haber alguna confirmación adicional.
He añadido un diagrama de secuencia aproximado para dar una impresión visual de lo que podría parecer.
Pregunta: ¿Crees que este concepto es realizable sin grandes problemas de rendimiento y crees que se puede mantener la seguridad?
Actualización:talvez"Red social" no sea realmente un nombre adecuado para ella, quiero que sea una plataforma con una mentalidad de seguridad en primer lugar y tratar de ser más astuto que las organizaciones similares a las de la NSA descifrar los datos (lo que requeriría tener mucho cuidado con las claves en lugar de compartirlas con todos tus amigos).