Gobernanza de IA 7 min de lectura

Cifrado de aplicación y búsqueda: lo que decidimos no indexar

Cifrar el contenido y además indexarlo como texto anula el cifrado. Igniten busca texto sólo en metadatos en claro, y las búsquedas de frase exacta empeoran.

En resumen

  • Cifrar el contenido en la capa de aplicación y además indexarlo como texto plano anula el cifrado: el índice se vuelve una copia legible de lo que se cifró, y un acceso al índice alcanza para leerlo.
  • En Igniten, la búsqueda léxica opera exclusivamente sobre metadatos en claro —títulos, nombres de archivo, participantes, fechas—. El contenido cifrado nunca entra a un índice de texto, sin excepciones ni configuración que lo habilite.
  • La decisión tiene un costo verificable: las búsquedas por una frase exacta que aparece en el cuerpo de un documento y no en su título funcionan peor que con el contenido indexado.
  • Lo que se gana es que un acceso al almacenamiento, a un respaldo o a una réplica no alcance para leer contenido, y que destruir la clave de una organización vuelva indescifrable todo su contenido, incluidos los respaldos.
  • Para evaluar a un proveedor que lee el correo y los documentos de una empresa, la pregunta útil no es qué puede hacer el sistema, sino qué eligió deliberadamente no poder hacer y a cambio de qué.

Cifrar el contenido en la capa de aplicación y, además, indexarlo para búsqueda de texto anula el cifrado, porque el índice guarda una copia legible de lo que se cifró. Por eso Igniten no indexa el contenido cifrado: la búsqueda léxica opera sólo sobre metadatos en claro. El costo es que las búsquedas de frase exacta funcionan peor.

Casi todo lo que un proveedor publica sobre su producto es una lista de capacidades. Cuando el producto lee el correo, los documentos, las reuniones y las bases de datos de una empresa, esa lista deja de ser lo más útil: un sistema con ese acceso puede hacer casi cualquier cosa. La pregunta que ordena una evaluación es la opuesta: ¿qué eligieron deliberadamente que el sistema no pueda hacer, y a cambio de qué? Esta nota es una de las respuestas de Igniten.

¿Qué es el cifrado en la capa de aplicación?

El cifrado en la capa de aplicación es el que cifra el contenido antes de guardarlo en la base, con una clave que controla la aplicación y no el disco. En Igniten, cada organización tiene su propia clave de datos, y con ella se cifran los resúmenes, los fragmentos indexados y las credenciales de integración. Es un esquema de cifrado de sobre: la clave de cada organización está envuelta por una clave maestra en un servicio gestionado de claves, y el cifrado es autenticado.

Esa capa está por encima del cifrado del volumen, no en lugar de él. La razón de tener las dos es concreta:

Cifrado de volumenCifrado en la capa de aplicación
Qué protegeEl discoEl contenido, organización por organización
Quién ve el contenido en claroCualquier proceso que lea la base a través del motorSólo el proceso que tiene la clave de esa organización, mientras la necesita
Un acceso a la base, un respaldo o una réplicaQuien consulta a través del motor lee el contenido en claroNo alcanza para leer contenido
Borrado de una organizaciónHay que recorrer cada copiaDestruir la clave vuelve ilegible todo

¿Por qué cifrar y buscar por texto tiran para lados opuestos?

Porque un índice de texto necesita el texto. El índice que permite buscar «contrato de arrendamiento» y encontrar los documentos que contienen esa frase no trabaja con una versión cifrada: guarda fragmentos legibles del contenido para poder compararlos. Un índice invertido o uno trigramático son, en la práctica, otra forma de almacenar el texto.

Si el contenido se cifra y además se indexa como texto, el índice se convierte en una copia legible de lo que se cifró. Todo el trabajo del cifrado de aplicación se anula, y de la peor manera: con la apariencia intacta de estar protegido. Un acceso al índice alcanzaría para leer lo que el cifrado debía proteger.

¿Qué decidimos no indexar?

El contenido cifrado. La recuperación de Igniten —la etapa de búsqueda de un sistema de RAG, que encuentra los fragmentos relevantes antes de que el modelo redacte— combina dos ramas:

  • Una rama vectorial, sobre incrustaciones, que busca por significado.
  • Una rama léxica, que busca por coincidencia de texto mediante un índice trigramático.

La rama léxica opera exclusivamente sobre metadatos en claro: títulos, nombres de archivo, participantes de una reunión, fechas. Esos campos están sin cifrar de forma deliberada, porque la búsqueda por texto los necesita y porque el riesgo de que un título sea legible es de otra magnitud que el de que lo sea el cuerpo del documento.

El contenido cifrado nunca se indexa para búsqueda de texto. No hay excepción para casos especiales ni configuración que lo habilite. Los vectores tampoco están cifrados, porque un vector cifrado no se puede comparar por similitud; esa es otra renuncia, del lado opuesto, y se trata al darse de baja, como se explica más abajo.

¿Qué búsquedas funcionan peor por esta decisión?

Las de frase exacta que aparece en el cuerpo de un documento y no en su título. La rama vectorial las recupera por significado, lo que funciona bien para preguntas conceptuales —«¿qué acordamos sobre la penalidad por demora?»— y claramente peor para una cadena literal:

  • un número de orden que sólo figura dentro de un adjunto;
  • una cláusula que hay que citar palabra por palabra;
  • un nombre propio poco frecuente que aparece una vez en la página cuatro.

En esos casos el sistema encuentra los documentos sobre el tema, y no necesariamente el que contiene la cadena exacta. Quien viene de buscar con Ctrl+F sobre una carpeta compartida nota la diferencia.

Lo compensan los metadatos en claro —título, archivo, participantes, fecha—, que resuelven buena parte de los casos, y la rama vectorial, que resuelve buena parte del resto. Queda un remanente que funciona peor, y conviene saberlo antes de contratar.

¿Qué se gana a cambio?

Dos cosas, y la segunda pesa más en una evaluación.

Un acceso al almacenamiento no alcanza para leer contenido. Ni a la base, ni a un respaldo, ni a una réplica. El escenario que esto cubre no es el ataque sofisticado sino el más común: una credencial de infraestructura filtrada, una copia de seguridad expuesta por error, una réplica de lectura accesible desde donde no debería.

El borrado deja de depender de un proceso. Como cada organización tiene su propia clave, destruirla vuelve indescifrable todo su contenido de una sola vez, incluidos los respaldos, sin recorrerlos ni reescribirlos. Es lo que se conoce como borrado por destrucción de clave. Nadie que retenga respaldos puede cumplir de verdad una promesa de borrado total instantáneo si depende de sobrescribir cada copia; con la clave destruida, los bytes que quedan no significan nada.

La baja tiene entonces dos mecanismos y dos plazos, y la constancia que se entrega indica los dos, con su fecha:

  1. El contenido cifrado se vuelve indescifrable de inmediato al destruir la clave.
  2. Los metadatos y los vectores, que no están cifrados porque la búsqueda los necesita, se eliminan por procedimiento: salen de los sistemas activos en el momento y terminan de desaparecer cuando caduca la última ventana de respaldo que los contenía.

Del mismo diseño sale otra consecuencia: las direcciones de correo que forman las listas de acceso tampoco se guardan en claro. Se guarda un resumen calculado con la clave de la organización. La comparación de permisos funciona idéntico, y quién habló con quién no es legible en la base ni en un respaldo, tampoco para Igniten.

¿Por qué preguntarle a un proveedor qué decidió no hacer?

Porque las renuncias son informativas y las capacidades no. Todo producto que lee la información de una empresa enfrenta la misma familia de decisiones:

  • indexar más para buscar mejor, o menos para exponer menos;
  • guardar el contenido de las reuniones o sólo sus metadatos;
  • permitir que el asistente ejecute acciones solo, o exigir confirmación humana en cada una.

Ninguna es gratis. Un proveedor que enumera capacidades sin nombrar ninguna renuncia describe un producto en el que las renuncias no se tomaron. Cuando evalúe una herramienta de esta categoría, después de la lista de lo que hace, pregunte qué decidió no hacer y qué le costó. Una respuesta específica, con el caso de uso concreto que funciona peor, es de otra calidad que una genérica.

Es una pregunta de gobernanza de datos antes que de tecnología, y aplica igual a cualquier agente de IA con acceso a información interna. Otras dos decisiones del diseño de Igniten que limitan al propio proveedor están en por qué el asistente no ejecuta nada sin confirmación humana y en quién controla el acceso de una aplicación de terceros a Google Workspace.

El resto de los mecanismos —la separación entre organizaciones con seguridad a nivel de fila forzada por el motor, el control de acceso por elemento, el inventario de controles fila por fila— está en la documentación técnica de seguridad. Las preguntas sobre inteligencia artificial de un cuestionario de proveedor incluyen las dos cosas que decidimos no publicar y el motivo de cada una. La plataforma está en beta privada, y esas páginas describen sus controles en disponibilidad general. Cómo se sostiene todo esto una vez que la IA ya está en uso se trabaja en el gobierno de IA en producción, y las demás notas del tema están en el tema de gobernanza de IA del blog.

  • Seguridad
  • Cifrado
  • Búsqueda
  • Gobernanza de IA
Más sobre gobernanza de ia

Preguntas frecuentes

Preguntas sobre este tema

¿Se puede cifrar el contenido de una empresa y a la vez buscar dentro de él?

No de forma completa sin renunciar a algo. Un índice de texto sobre contenido cifrado exige tener el texto en claro en algún lugar, lo que convierte al índice en una copia legible de lo que se cifró. Las alternativas prácticas son buscar por texto sólo sobre metadatos en claro, buscar por significado sobre vectores, o aceptar que el índice de texto no está protegido. Igniten eligió las dos primeras.

¿Qué diferencia hay entre cifrado de volumen y cifrado en la capa de aplicación?

El cifrado de volumen protege el disco: si alguien se lleva el disco, no lee nada. Pero cualquier proceso que lea la base a través del motor ve el contenido descifrado. El cifrado en la capa de aplicación cifra el contenido antes de guardarlo, con una clave por organización, de modo que un acceso al almacenamiento, a un respaldo o a una réplica no alcanza para leerlo. Son complementarios: el segundo va encima del primero.

¿Qué búsquedas funcionan peor cuando el contenido no se indexa como texto?

Las de frase exacta sobre el cuerpo de un documento: una cláusula literal, un número de orden que sólo figura dentro de un adjunto o un nombre propio poco frecuente que no aparece en el título ni en los metadatos. La búsqueda vectorial recupera esos casos por significado y no por coincidencia literal, lo que funciona bien para preguntas conceptuales y peor para una cadena exacta.

¿Qué pasa con los datos cifrados cuando una empresa deja de ser cliente?

Se destruye la clave de cifrado de su organización, lo que vuelve indescifrable su contenido de inmediato, incluidos los respaldos, sin necesidad de reescribirlos. Los metadatos y los vectores de búsqueda, que no están cifrados porque la búsqueda los necesita, se eliminan por procedimiento: salen de los sistemas activos de inmediato y terminan de desaparecer cuando caduca la última ventana de respaldo que los contenía.

¿Qué es el crypto-shredding o borrado por destrucción de clave?

Es el borrado que se logra destruyendo la clave con la que se cifró un conjunto de datos, en lugar de recorrer y sobrescribir cada copia. Si cada organización tiene su propia clave, destruirla vuelve ilegible todo su contenido de una sola vez, incluidas las copias de respaldo que ya no se pueden reescribir. Es una garantía criptográfica y no una promesa de proceso.

Ver todas las preguntas frecuentes

Siguiente paso

Encontremos lo primero que vale la pena construir.

30 minutos. Sin compromiso. Se define qué se ataca primero.

Beta privada

¿Quiere acceso a la beta?

Para seguir usando los agentes sobre los datos de su empresa, pida acceso a la beta.

Lo vamos a contactar sobre su acceso a la beta.