Como se puede ver en una imagen incluida en La introducción de nuevas formas de compartir en Tresorit el enlace para compartir un archivo tiene la sintaxis
https://example.com/some-path#some-special-string
Este some-special-string
después de #
es un ancla y se procesa de una manera especial. Cuando visite la URL, solo se enviará /some-path
dentro de la solicitud al servidor example.com
, mientras que #some-special-string
se mantendrá en el navegador y se podrá acceder a través de Javascript mediante location.hash . De esta manera, some-special-string
puede contener el secreto necesario para descifrar los datos y este secreto no saldrá del navegador.
Por supuesto, no solo los datos cifrados deben descargarse del servidor para el descifrado, sino que también el descifrado debe realizarse de alguna manera. Como el navegador no sabe cómo descifrar los datos, el código JavaScript necesario para descifrar también debe cargarse desde algún servidor. Y este es el punto débil del concepto: incluso si el servidor solo tiene los datos cifrados, en teoría podría enviar no solo el script para descifrar los datos con el secreto en el navegador, sino que también podría enviar un script que envíe este secreto al servidor. servidor, haciendo así posible el descifrado del lado del servidor. Por lo tanto, todavía es necesario confiar en el proveedor de servicios.