Quarry es una herramienta de entrega de software diseñada para distribuir imágenes de sistema de forma segura, priorizando la arquitectura de clientes inteligentes y servidores simples. Su objetivo principal es facilitar la instalación de imágenes inmutables en Linux, eliminando la dependencia de servidores que procesen las solicitudes de los clientes. Este enfoque permite una implementación más sencilla de la replicación, un caché más flexible y barato, y ofrece mayor flexibilidad para futuros mecanismos de transporte alternativos.
El sistema se basa en principios de seguridad estrictos, incluyendo la propiedad granular de las claves de firma. Quarry evita el modelo de 'firma de terceros' que actúa como autoridad de certificación, permitiendo que cada entidad signante mantenga el control exclusivo sobre sus datos. Además, soporta un cambio flexible de custodia de claves, lo que es crucial para la interoperabilidad con claves de firma respaldadas por hardware que no son exportables. El protocolo es autónomo, permitiendo actualizaciones completas de forma independiente en los clientes, con soporte para despliegues escalonados y despliegues de color-azul.
Técnicamente, Quarry integra systemd-sysupdate para la instalación de imágenes de kernel unificado (UKI) y discos descubribles (DDI), así como The Update Framework (TUF) para la gestión de metadatos y la supervivencia ante compromisos de claves. TUF separa las etapas de publicación en roles distintos, como 'targets' y 'snapshot', para mitigar riesgos de seguridad. El sistema también permite la direccionabilidad granular, permitiendo actualizar grupos específicos de máquinas sin exponer información sobre la estructura de la flota de la organización, garantizando así la privacidad y la seguridad en entornos corporativos.
