Acabamos de lanzar. El sitio y el servicio aún se están puliendo: le pedimos disculpas de antemano por posibles imprecisiones o fallos. ¿Ha visto un error o algo no funciona como esperaba? Escríbanos y lo corregiremos enseguida.

← Todos los proyectos
ES
Más allá de TAKT

escrow-box

Escrow box es un prototipo de código abierto que guarda un secreto en una máquina virtual medida y lo entrega según una regla acordada. La implementación de referencia custodia código fuente. Tras sellarla y verificarla, la VM puede permanecer apagada hasta que sea necesario comprobar el evento de entrega.

  • TPM 2.0
  • UKI
  • Clevis
Estado
Prototipo probado localmente con QEMU y swtpm; el repositorio documenta el arranque en una Shielded VM. El uso en producción requiere calificar la plataforma y verificar el traspaso de control. La firma con un monedero es una aplicación descrita, no implementada en la referencia de código fuente.
Licencia
Apache 2.0.
Plataformas
Linux x86-64; banco local QEMU/OVMF/swtpm y experimentos documentados en la nube.

Qué resuelve

El cliente necesita comprobar que el código depositado reproduce el binario entregado, y el proveedor necesita mantenerlo privado hasta el evento acordado. La verificación se separa de la entrega.

Funciones principales

  • La clave de descifrado queda vinculada al TPM y a las mediciones de la imagen de arranque.
  • El verificador recompila el artefacto entregado y lo compara byte a byte; solo salen los hashes y el resultado.
  • La regla de referencia usa el estado del registro mercantil y una señal de actividad firmada, con un plazo de espera si faltan pruebas.
  • Comandos SSH fijos permiten comprobar, consultar el estado y liberar el depósito sin una consola interactiva.
  • Después del sellado y la verificación, la VM puede mantenerse apagada hasta comprobar el evento. Sus discos pueden respaldarse, retirarse del host para liberar espacio y restaurarse cuando hagan falta. Se conservan la VM y el estado original del TPM, que ocupa solo unos kilobytes. La copia incluye la imagen, el depósito cifrado, el contenedor sellado de la clave y el estado guardado del box.

Cómo funciona

Una imagen unificada del núcleo contiene el depósito cifrado, las herramientas de verificación y la regla de entrega. El arranque medido vincula la clave a esa imagen. La protección de memoria y estado del TPM depende de la plataforma.

provision → check → verify → status → unlock

Requisitos

  • Una máquina Linux de compilación con las herramientas del repositorio y una VM con TPM.
  • Para un depósito real, una plataforma que impida al receptor leer la memoria y el estado del TPM, con procedimientos acordados de reinicio y recuperación.
  • Un evento de entrega acordado, pruebas autenticadas y verificaciones de aceptación antes de depositar un secreto real.
  • Conservar la misma VM y su estado TPM; guardar una copia completa de los discos y restaurarla en esa VM con la configuración de plataforma acordada.

Esta página resume el README y la documentación del repositorio a octubre de 2026. La fuente de referencia es el propio repositorio.