Cómo funciona Shark
Tres piezas: el que expone, el que mira, y un relay en medio que nunca entiende lo que mueve.
El problema
Tu computadora no está en internet
Está detrás de un router, de un NAT, quizá de un operador que ni siquiera te da una IP pública. Abrir puertos no es una opción para la mayoría de la gente y tampoco sería buena idea. Así que hace falta alguien con dirección fija que haga de punto de encuentro.
La pregunta interesante no es si hace falta un intermediario, sino cuánto poder tiene. En Shark, ninguno: recibe bytes cifrados, los reenvía, y los olvida.
El recorrido de un byte
Qué pasa cuando alguien abre un vídeo tuyo
01
Pide un trozo
Su reproductor pide el minuto 12. Eso se traduce en un número de trozo concreto, y esa petición llega al relay.
02
El relay pregunta — o no
Si otra persona ya pidió ese mismo trozo hace un instante, el relay no vuelve a molestarte: reparte el que ya tiene en vuelo. Si nadie lo pidió, te lo pide a ti.
03
Tu máquina cifra y envía
Shark lee ese trozo de tu disco, lo cifra con AES-256-GCM y lo manda. El relay lo pasa tal cual. Solo el otro extremo puede abrirlo.
Mientras eso ocurre, el relay ya va pidiendo los trozos siguientes. Para cuando el reproductor llega a ellos, están esperando — por eso no se ve el típico parón cada pocos segundos.
La contraseña
64 caracteres, y ninguno ambiguo
Shark genera la contraseña en tu máquina con el alfabeto Base58: el abecedario y los dígitos, menos 0, O, I y l — los cuatro que la gente confunde al leerlos en voz alta o copiarlos a mano. Son unos 375 bits de entropía: adivinarla no es una estrategia.
De esa contraseña salen tres claves distintas. Una identifica el espacio ante el relay, otra cifra el listado de carpetas y otra cifra el contenido. El relay solo llega a conocer la primera, que no sirve para descifrar nada.
Permisos
Ver y descargar, o solo ver
Al crear un espacio eliges qué pueden hacer los que se unan. Si escoges solo tiempo real, desaparece el botón de descarga y además la caché de quien se una queda forzada a modo tiempo real: nada de tu espacio llega a tocar su disco, ni siquiera de forma temporal.
Perfiles de caché
Cuánto quieres que toque tu disco
Se elige al abrir el programa por primera vez, y se puede cambiar después por cada espacio al que te unas.
| Perfil | Qué hace | Cuándo conviene |
|---|---|---|
Tiempo real | Nada toca el disco. Los bytes se usan y se sueltan. Rebobinar dos segundos vuelve a pedirlos. | Máquinas sin espacio libre, o cuando no quieres dejar rastro de lo que viste. |
Sesión | Todo lo que descargas se guarda hasta que cierras el espacio. Entonces se borra entero. | El caso normal. Rebobinar, volver a abrir un archivo y saltar por un vídeo salen gratis. |
Tamaño fijo | Caché con techo. Al llenarse, lo más antiguo va cayendo para dejar sitio a lo nuevo. | Poco espacio pero conexión regular: te quedas con lo reciente sin llenar el disco. |
Los límites, dichos claro
Qué no hace Shark
No es una nube
Si apagas tu máquina, el espacio deja de existir. No hay copia en ningún sitio — esa es exactamente la idea, pero conviene tenerla presente.
Tu subida es el techo
Los bytes salen de tu conexión. El relay evita que se multipliquen por espectador, pero no puede darte más subida de la que tienes.
El relay ve tamaños
Para servir un trozo concreto necesita saber cuánto pesa cada archivo. Nombres, rutas y contenido van cifrados; los tamaños, no.
La contraseña es la seguridad entera
No hay segundo factor ni forma de revocarla sin cerrar el espacio. Quien la tenga, entra. Si se te escapa, cierra y abre otro.