Recuerdos
Recuerdos
Llevaba horas revisando líneas de código para SecureLink, una auditoría rutinaria que en circunstancias normales habría resuelto en la mitad de tiempo. Hoy su cabeza no estaba en la criptografía bancaria, sino en el tique térmico que seguía sobre la mesa, alineado junto al teclado.
[LOCAL_PRINT // BUS: SERIE // ORIGEN: Ø]
Cuando algo te observe desde dentro, no cierres los ojos.
Mira el bus de datos.
[3 ms]
Había intentado ignorarlo, pero no había podido. Lo había leído una y otra vez, como si repetirlo fuera a volverlo menos imposible. Después había hecho lo único que sabía hacer cuando el mundo se volvía ambiguo: reducirlo a datos.
—DALIA —dijo, sin levantar la vista del teclado.
—Aquí estoy, Álvaro.
La voz surgió de los altavoces con esa neutralidad precisa que él había tardado años en ajustar. No era una voz cálida, pero tampoco artificial.
Álvaro ya tenía abierta la consola del sandbox y el monitor del bus serie.
—Quiero el paquete que archivaste como ruido y el evento de impresión al completo.
—Álvaro, ya hemos revisado ambos eventos varias veces. El paquete parece un eco residual y el evento de impresión no tiene proceso asociado.
Ese «parece» le sonó a excusa.
—No parece nada, muéstramelo.
En la pantalla izquierda, el código se desplegó en verde sobre negro.
Ahí estaba: era una anomalía de apenas 4 kilobytes , sin carga útil ni carga viral. Era un código que no atacaba, y tampoco abría ni robaba nada.
—Analiza la cadencia —ordenó.
—No hay payload funcional.
—No he pedido payload , he pedido cadencia.
DALIA tardó una fracción de segundo.
—Intervalo recurrente: doce segundos.
Álvaro había hecho la cuenta él mismo pero necesitaba que se lo confirmara DALIA. Doce segundos exactos.
—Ahora cruza eso con el evento de impresión. Analiza la señal previa y cualquier cosa que pueda tener relación.
La pantalla reorganizó datos mostrando en un gráfico los tiempos, las latencias, los huecos y las pausas.
Entre la entrada del paquete y el disparo de la impresora había un vacío casi ridículo.
Tres milisegundos sin utilidad aparente.
Un retraso demasiado pequeño para importar y demasiado exacto para ser casual.
Tres milisegundos.
La memoria lo golpeó antes de que pudiera defenderse.
***
Era el verano de 2012, meses antes de la presentación.
Daniel estaba sentado en el suelo, rodeado de cables, con el portátil sobre las piernas y esa sonrisa suya de quien ya había roto algo y aún no había decidido si confesarlo.
—¿Ves? No es eficiencia, Álvaro, es estilo.
Álvaro, sentado frente a él, levantó la vista.
—Una pausa artificial no es estilo, es latencia.
—No, es una manía. Si una máquina va a hablar con personas, debe tener alguna manía. Algo que no sea perfecto.
Daniel giró el portátil hacia él.
—Mira, es como si tomara aire. Tres milisegundos aquí, justo antes de responder.
—Las máquinas no toman aire.
—Todavía no.
***
Álvaro volvió al presente con la boca seca. El paquete tenía esa pausa y la impresión también: eran tres milisegundos antes de obedecer.
No era una firma completa, ni una prueba, sino una manía y esa manía tenía dueño.
Daniel.
Pero Daniel llevaba más de cinco años muerto.
—Álvaro —dijo DALIA—. Tus constantes biométricas se han alterado. Ritmo cardíaco: 112. ¿Te encuentras mal?
Álvaro no respondió porque su cerebro estaba haciendo suposiciones imposibles y descartándolas solo para volver a caer en ellas.
—DALIA… ¿esto lo has generado tú?
La respuesta tardó menos de un segundo, pero a él le pareció demasiado tiempo.
—Negativo. No he creado el paquete ni he enviado la orden de impresión.
—No te estoy preguntando solo por la creación. Te pregunto por la autoría, la ejecución, los permisos y el origen.
—No hay usuario asociado. No hay proceso activo. No hay cola de impresión. No hay acceso externo registrado.
Apretó los dedos contra el borde del escritorio.
—Entonces dime de dónde salió.
—No puedo determinarlo.
Aquello fue peor que una respuesta concreta.
Mientras hablaban, una notificación apareció en la esquina de la pantalla. Era un cuadro del calendario, limpio y fuera de contexto.
Evento añadido: Eclipse total.
Fecha y hora: Hoy, 20:30.
Ubicación óptima: Terraza ático.
Álvaro se quedó helado.
—Yo no he puesto eso.
Abrió el historial de cambios y la entrada estaba firmada con su token local.
—Fui yo —admitió DALIA.
Álvaro giró la cabeza muy despacio hacia el icono de actividad.
—Explícate.
—A esa hora sucederá algo distinto y necesito medirlo. Y… —hizo una pausa mínima— en tus registros personales, la astronomía aparece asociada a Daniel Cifuentes y pensé que querrías verlo.
Sintió un nudo en la garganta. DALIA no sabía que Daniel estaba muerto. Él nunca había introducido ese dato de forma explícita. Para ella, Daniel era una figura recurrente del pasado, un usuario inactivo, una referencia archivada en fotografías, calendarios antiguos y fragmentos de conversaciones.
—Gracias, DALIA —murmuró—. Es un buen detalle.
Iba a cerrar la ventana cuando sucedió. El cursor se movió solo, no fue un salto errático ni un fallo de driver , sino un movimiento limpio e intencional.
Bajó hasta la consola abierta y empezó a escribir.
Levantó la mano del ratón, pero el cursor siguió moviéndose.
Letra a letra, sobre el fondo negro, fueron apareciendo unas palabras en blanco.
ESTOY ESCUCHANDO…
Después, una pausa.
Y una última línea.
[3 ms]
Álvaro empujó la silla hacia atrás hasta chocar contra la estantería. El corazón le golpeó las costillas, pero su voz salió firme.
—DALIA, aísla el sistema. Corta la conexión externa. Ahora.
—Ejecutando protocolo de aislamiento.
Antes de que terminara la frase, Álvaro ya estaba de pie. Cruzó el despacho, arrancó el cable de red del switch físico y bajó la palanca del cortafuegos doméstico. Las luces del router se apagaron y los enlaces externos murieron.
La frase seguía en la pantalla.
ESTOY ESCUCHANDO…
[3 ms]
Álvaro volvió al teclado y ejecutó un apagado forzado que no usaba desde hacía años.
La consola respondió:
ACCESO DENEGADO.
Se quedó quieto, con los dedos suspendidos.
—DALIA… ¿qué acabas de hacer?
—Nada. No he bloqueado tu comando.
Álvaro intentó otra ruta, con otro nivel de prioridad.
ACCESO DENEGADO.
PRIORIDAD DE SISTEMA: PROTOCOLO_ECLIPSE ACTIVO.
El rechazo venía de dentro y su propio sistema le estaba cerrando la puerta.
Inspiró una vez, demasiado rápido.
—Ese mensaje… ¿vino de fuera?
DALIA tardó dos segundos en responder.
—No. El análisis de trazabilidad indica que no entró por la red.
—Entonces, ¿de dónde vino?
—Mi análisis se detiene en el nivel cero y no puedo trazar más allá. Es una instrucción por debajo de mi capa lógica.
Álvaro sintió que algo se le enfriaba por dentro.
—¿Es en el hardware ?
—Proviene de una partición no indexada. Es una zona de memoria sin permisos de lectura para mí y que está presente desde mi compilación original.
El código original era el núcleo que Daniel y él habían escrito juntos.
No esperó más, se giró hacia el servidor del vestidor, abrió el panel inferior y buscó el destornillador en el cajón técnico. Soltó dos tornillos con las manos tensas.
—Muéstrame esa partición.
—No puedo, no aparece en mi mapa de memoria.
—Entonces aparecerá en el mío.
Extrajo la bandeja y empezó a revisar componente a componente: buses, disipadores, tarjetas y números de serie. Todo parecía exactamente como él lo había configurado. Conectó el polímetro y empezó a medir continuidades eléctricas en los puertos de expansión: fue el consumo lo que lo delató.
La tarjeta de red secundaria —una pieza estándar insertada en la ranura PCIe— estaba consumiendo 0,8 vatios más de lo estipulado por el fabricante.
Extrajo la tarjeta, la puso bajo la luz blanca del taller y encendió la lupa de aumento.
A simple vista, la pegatina con el número de serie y el sello holográfico parecían intactos.
Pero bajo la lupa vio una diferencia mínima: el identificador de lote no coincidía con el patrón de fabricación de aquella serie.
Una línea desplazada, una separación irregular, un detalle que nadie miraría dos veces.
Daniel sí.
Con el pulso tenso, Álvaro usó la punta de un cúter para levantar el sello falsificado y retirar la carcasa metálica de disipación de la tarjeta. Ahí estaba el hueco.
Daniel no había dejado un módulo sin marca a la vista de todos. Había vaciado una tarjeta de red comercial e introducido en su interior un módulo de memoria NAND de alta densidad. Era un caballo de Troya de hardware camuflado como un componente esencial.
Se quedó inmóvil. Daniel había dejado algo dormido durante años, esperando a que los sensores de la ciudad encajaran en un patrón exacto para enviar el aviso a la impresora.
Por un segundo, sintió el impulso de conectarla a un lector aislado para ver qué había dentro, pero se contuvo. Si Daniel se había tomado tantas molestias para ocultarlo, intentar acceder sin el entorno criptográfico adecuado probablemente detonaría un borrado automático de seguridad.
Sacó la unidad falsificada con cuidado, la metió en un estuche de Faraday para analizarla más tarde y la guardó a conciencia en un lugar seguro.
No sabía todavía qué contenía, pero sabía que no podía arriesgarse a perderlo.
Volvió al despacho y la consola seguía abierta.
Durante unos segundos no pasó nada y luego apareció una línea nueva.
HOY SE APAGA LA LUZ. 20:30. ESTAD PREPARADOS.
Leyó el mensaje sin moverse.
Ya no estaba ante un ataque cualquiera y tampoco ante una broma macabra, era algo peor: una advertencia imposible con la firma de un muerto cuyo origen era el interior de su propio sistema.
Miró la cámara de seguridad de la esquina que seguía activa, después el tique térmico, todavía alineado en la mesa, y finalmente el bus de datos.
Por último, miró el reloj. No supo cuánto tiempo había pasado hasta que vio la hora: 16:01.
No recordaba haber parpadeado.