Attesto

Procedencia de Attesto 3

AttestoMark Audio

AttestoMark Audio inserta un locator con clave en audio PCM de 16 bits y deja que el Local Vault lo busque en un registro local cifrado. Esta página indica qué sobrevive según la medición, qué se pierde según la medición y qué no establece una detección.

Alcance

AttestoMark Audio escribe un locator de 61 bits en audio PCM de 16 bits mediante una transformación patchwork sobre bandas FFT. Ese locator no es el contenido que interesa a un lector: es un índice hacia un registro cifrado que mantiene el Local Vault, y ese registro lleva la identidad de la marca, el conjunto de claves y los digests del activo original y del marcado.

El proveedor solo acepta audio/wav. Convertir entre contenedores es una transformación alrededor del proveedor y no dentro de él, y por eso la imagen base del Local Vault lleva audio mientras que el vídeo exige la imagen multimedia con sus bibliotecas de códecs.

Arquitectura

El proveedor es un binario de clase S: se ejecuta bajo el sandbox setuid sin red, con una identidad fija sin privilegios, acceso de archivos limitado a su propio binario, al activo y a un único archivo de salida, más límites de procesos, espacio de direcciones y tamaño de salida. Ve el audio y nada más.

El sandbox ha sido atacado y no solo configurado. Trece intentos de fuga contra el binario entregado, instalado setuid root, fracasaron todos; un brazo de control que ejecuta cada intento sin el sandbox muestra que nueve de ellos los rechaza el sandbox y no el entorno que lo rodea.

Ciclo de inserción

La bóveda reserva un registro contra el digest del activo sin marcar, deriva el locator como HMAC sobre el identificador del conjunto de claves, el de la marca y ese digest, y pide al proveedor que lo inserte. La salida se vuelve a detectar de forma independiente antes de completar el registro: una inserción que no se puede releer se rechaza y la reserva se aborta, de modo que un registro nunca guarda una entrada para una marca que nadie puede encontrar.

Detección con clave

La detección prueba cada época del conjunto de claves aún habilitada para verificar, la más reciente primero, y solo cuenta una resolución exacta del registro. Un locator que no lleva a nada se informa como not_observed y no como fallo, porque un archivo sin marca es un archivo normal.

Una inscripción reservada pero nunca insertada no se revela deliberadamente en la detección. De lo contrario se resolvería e informaría de una marca para contenido que nada marcó nunca.

Formatos y límites

WAV PCM de 16 bits, hasta 256 MB y 600 segundos. Los activos más largos o más grandes se rechazan, no se truncan.

Claves y registro

Un conjunto de claves lleva una clave de locator, una de búsqueda y una de registro, y solo existe en el Local Vault. El registro está cifrado en reposo: el identificador de marca y los bits del locator no aparecen en el archivo de base de datos, algo que el canario del contenedor comprueba recorriendo los bytes.

Evidencia

Lo que llega a la cápsula es el propio resultado del proveedor. La bóveda no lo reconstruye: un objeto de evidencia montado junto a una ejecución informaría de un estado con independencia de que la ejecución lo produjera.

Robustez medida

Ocho activos de diez segundos, diez casos por activo, medidos contra el proveedor real bajo el sandbox real con ffmpeg real. Cada transformación regresa a WAV, porque lo que atraviesa un archivo distribuido es una codificación y más tarde una decodificación; una marca que solo sobrevive a muestras intactas no ha sobrevivido a nada.

8/8 para MP3 a 192 y 128 kbit/s, AAC a 128 kbit/s, remuestreo a 22050 Hz y 48000 Hz, normalización de sonoridad, atenuación del 15 %, detección exacta y la comprobación de falso positivo con clave no coincidente. El recorte inicial midió 6/8: quitar 0,35 s desplaza las ventanas de análisis con las que se alinea la señal patchwork, y dos activos la perdieron.

Estas cifras describen ese corpus, esas transformaciones, esta versión del proveedor y este entorno de publicación. No son una tasa de supervivencia universal y deben volver a medirse en cuanto cambie cualquiera de ellos.

Eliminación medida

La robustez mide la supervivencia bajo transformaciones que realiza una cadena honesta. La eliminación es la otra pregunta y tiene su propio corpus: transformaciones cuyo único fin es destruir la marca, cada una acompañada de lo que le cuesta a un oyente en vez de en decibelios, porque ninguna cifra en decibelios le dice nada a una persona.

Un estiramiento temporal del 5 % y un desplazamiento de tono del 3 % eliminan la marca en todos los activos. Ambos son audibles y ninguno arruina la grabación, lo que los hace mucho más baratos que la recompresión a 8 kbit/s en 16 kHz, el único otro ataque que la elimina por completo y que deja el audio apenas inteligible.

Los resultados del filtrado dependen de la grabación. En tres ejecuciones el filtrado paso bajo midió entre el 25 % y el 100 % de supervivencia sobre ocho activos, así que no se reclama ninguna tasa para él. Lo que sí se reclama es la forma: ningún filtro ni recompresión suave eliminó la marca en todos los activos.

La supervivencia de una marca de audio se reclama, por tanto, para conversión de códec, remuestreo, normalización, ganancia y filtrado, y no para nada que desplace la línea temporal.

Operación

El proveedor viaja en la imagen del Local Vault, instalado bajo la raíz de proveedores, propiedad de root y no escribible, con un manifiesto que fija el digest de su binario. Un contrato inspecciona el artefacto construido en lugar del Dockerfile: cada suma de comprobación fijada se recalcula desde el binario que fija, y cada manifiesto se carga con el propio cargador de la bóveda, de modo que un manifiesto que la bóveda rechazaría hace fallar la construcción y no al primer cliente.

Modos de fallo

Una inserción que no se puede releer de forma independiente se rechaza. Un activo por encima del límite de tamaño o duración se rechaza. Un proveedor que supera sus límites de sandbox se termina y la ejecución informa de un fallo en lugar de un resultado parcial. Ninguno de estos casos produce un registro de marca.

Límite de las afirmaciones

Una detección correcta demuestra que este Local Vault resolvió un locator con clave presente en el audio que se le mostró y lo vinculó a su registro cifrado de marca. No demuestra que el audio sea el activo que se marcó, quién lo grabó, si fue generado, si es cierto ni de quién es. La ausencia de marca no es prueba de que algo no proceda de esta cadena. Una marca puede eliminarse desplazando la línea temporal, lo que se indica arriba, y por eso una detección es evidencia que se sopesa junto a los recibos, los vínculos de origen y la política, y no un veredicto por sí sola.