Oblivious RAM (ORAM) es un esquema criptográfico que permite a un cliente acceder a una memoria externa de tal manera que el proveedor de la memoria (o cualquier observador externo) no puede inferir qué direcciones de memoria se están accediendo. Su objetivo principal es proteger la privacidad de los patrones de acceso, no el contenido de los datos en sí (aunque a menudo se usa junto con cifrado). ORAM logra esto mediante la reorganización constante de los datos en la memoria y la introducción de accesos 'ficticios' o 'cegados', de modo que cada operación de lectura o escritura en una dirección lógica se traduce en una secuencia de accesos físicos que es computacionalmente indistinguible de cualquier otra secuencia de accesos.
Aunque ORAM es una construcción compleja con sobrecarga significativa, ha encontrado aplicaciones en escenarios donde la privacidad del patrón de acceso es crítica. Por ejemplo, se utiliza en sistemas de computación segura multipartita (Multi-Party Computation - MPC) y en entornos de computación confidencial (Confidential Computing) para proteger la privacidad de los datos en uso, incluso de un proveedor de nube malicioso o comprometido. Proyectos de investigación y prototipos en el ámbito de bases de datos cifradas y sistemas de archivos seguros también exploran ORAM para garantizar que las consultas y las operaciones de archivo no revelen información sobre los datos accedidos. Un ejemplo concreto es su integración en bibliotecas criptográficas avanzadas para construir esquemas de almacenamiento en la nube con privacidad mejorada.
Para un Arquitecto de Sistemas, ORAM representa una herramienta poderosa para construir sistemas con garantías de privacidad de datos extremadamente fuertes, especialmente en entornos de nube o distribuidos donde no se confía en el proveedor de infraestructura. Sin embargo, es crucial entender los trade-offs: ORAM introduce una sobrecarga computacional y de ancho de banda considerable, a menudo con factores logarítmicos o incluso polinomiales en el tamaño de la memoria. Esto significa que su aplicación está justificada solo en casos donde la privacidad del patrón de acceso es un requisito de seguridad no negociable y el costo de rendimiento es aceptable. Un arquitecto debe evaluar cuidadosamente si los requisitos de cumplimiento, la sensibilidad de los datos y el modelo de amenaza justifican la complejidad y el impacto en el rendimiento de ORAM frente a otras soluciones de seguridad como el cifrado de datos en reposo y en tránsito.