Escrito por: Oliver Jaros, analista, CMT Digital, Shlok Khemani, decentralized.co
Compilado por: Yangz, Techub News
La sede de Uber en San Francisco es similar a la mayoría de las empresas de tecnología, con un plano de planta abierto donde los empleados pueden moverse libremente y compartir sus ideas. Sin embargo, en el centro del piso principal hay una sala que pocos empleados visitan. La fachada de metal y vidrio, un interruptor que vuelve opaco el vidrio transparente y la presencia frecuente de personal de seguridad dan a la habitación una sensación misteriosa.
Esta es la “sala de guerra” de Uber, un espacio abierto las 24 horas, los 7 días de la semana, donde los ejecutivos intercambian ideas sobre soluciones a los mayores problemas de la empresa. Para mantener la confidencialidad, esta sala está estrictamente abierta según el principio de "necesidad de saber". Este tipo de medida de confidencialidad es extremadamente necesaria, después de todo, para ocupar una posición dominante en el mercado de viajes compartidos en línea, Uber necesita competir ferozmente con competidores a escala global, y sus oponentes no dejarán escapar ninguna oportunidad que se les presente. revelar sus estrategias. Lo que sucede en la sala de guerra se queda en esa sala.
Dentro de la sala de guerra de Uber Fuente: Andrew Chen, a16z;
Esta práctica de crear cubículos privados dentro de espacios que de otro modo serían accesibles es común. Cuando Apple trabaja en proyectos secretos, alberga equipos designados en edificios separados de su sede. El Capitolio y otros edificios del gobierno de EE. UU. albergan el Centro de Información Sensible (SCIF), que proporciona paredes insonorizadas y blindaje electromagnético para debates delicados. También existen cajas fuertes en nuestras propias casas o en las habitaciones de hotel en las que nos alojamos.
Los enclaves seguros se han extendido más allá del mundo físico. Hoy en día, utilizamos principalmente computadoras para almacenar datos y procesar información. A medida que nuestra dependencia de las máquinas basadas en silicio continúa creciendo, también aumenta el riesgo de ataques e infracciones. Al igual que la sala de guerra de Uber, las computadoras necesitan un espacio separado para almacenar los datos más confidenciales y realizar cálculos críticos. Este espacio se denomina entorno de ejecución confiable (TEE).
Si bien los TEE se han convertido en una palabra de moda en la industria de las criptomonedas, a menudo se malinterpretan su propósito y funcionalidad. Esperamos cambiar eso con este artículo. Aquí le explicaremos todo lo que necesita saber sobre los TEE, incluido qué son, por qué son importantes, cómo los usamos todos los días y cómo ayudan a crear mejores aplicaciones Web3.
TEE está en todas partes
Primero, comprendamos la definición de TEE.
El TEE es un área segura dedicada dentro del procesador principal del dispositivo que garantiza la confidencialidad de los datos y el código que se procesan. TEE proporciona un entorno de ejecución aislado independiente del sistema operativo principal, lo cual es fundamental para mantener la seguridad de los datos de las aplicaciones que manejan información confidencial.
TEE ofrece dos tipos principales de garantías.
Ejecución aislada: TEE ejecuta código en un entorno aislado. Esto significa que incluso si el sistema operativo principal se ve comprometido, el código y los datos del TEE seguirán estando seguros.
Cifrado de memoria: los datos procesados dentro del TEE están cifrados. Esto garantiza que incluso si un atacante accede a la memoria física, la información confidencial almacenada en el TEE no podrá descifrarse.
Para comprender la importancia del TEE, el dispositivo que quizás esté utilizando para leer este artículo, el iPhone, es un buen ejemplo. FaceID se ha convertido en la principal forma en que los iPhone autentican a los usuarios para acceder al dispositivo. En unos cientos de milisegundos, ocurre el siguiente proceso dentro del dispositivo:
Primero, el proyector de puntos proyecta más de 30.000 puntos infrarrojos (IR) invisibles en la cara del usuario. Una cámara de infrarrojos captura este patrón y una imagen infrarroja del rostro. En condiciones de poca luz, los iluminadores de inundación mejoran la visibilidad.
En segundo lugar, un procesador toma estos datos sin procesar y crea un modelo matemático de la cara, que incluye datos de profundidad, contornos y características únicas.
Finalmente, el modelo matemático se compara con el modelo almacenado cuando se configuró inicialmente FaceID. Si el modelo es lo suficientemente preciso, se envía una señal de "éxito" al sistema iOS y se desbloquea el dispositivo. Si la comparación falla, el dispositivo permanecerá bloqueado.
30.000 puntos infrarrojos proyectados en la cara al desbloquear el teléfono Fuente: YouTube;
FaceID se utiliza no sólo para desbloquear el dispositivo, sino también para autenticar otras acciones, como iniciar sesión en aplicaciones y realizar pagos. Por tanto, cualquier brecha de seguridad puede tener graves consecuencias. Si el proceso de creación y comparación de modelos se ve comprometido, los propietarios que no sean del dispositivo pueden desbloquear el dispositivo, acceder a los datos personales del propietario y realizar transacciones financieras fraudulentas. Si un atacante logra extraer un modelo matemático almacenado del rostro de un usuario, podría provocar el robo de datos biométricos y una grave violación de la privacidad.
Por supuesto, Apple está siendo particular acerca de su enfoque para implementar FaceID. Todo el procesamiento y almacenamiento se realiza a través de The Secure Enclave, un procesador independiente integrado en los iPhone y otros dispositivos Apple que funciona de forma aislada de otras memorias y procesos. Está diseñado para que un atacante no pueda acceder a él incluso si otras partes del dispositivo están comprometidas. Además de la biometría, puede almacenar y proteger la información de pago, contraseñas, llaveros y datos de salud de los usuarios.
The Secure Enclave de Apple es sólo un ejemplo de TEE. Dado que la mayoría de las computadoras manejan datos y cálculos confidenciales, casi todos los fabricantes de procesadores ofrecen ahora alguna forma de TEE. Intel ofrece Software Guard Extensions (SGX), AMD tiene procesadores AMD Secure, ARM tiene TrustZone, Qualcomm ofrece Secure Foundation y las últimas GPU de Nvidia vienen con capacidades informáticas seguras.
TEE también tiene variantes de software. Por ejemplo, AWS Nitro Enclaves permite a los usuarios crear entornos informáticos aislados para proteger y procesar datos altamente confidenciales en instancias regulares de Amazon EC2. Asimismo, Google Cloud y Microsoft Azure ofrecen informática confidencial.
Apple también anunció recientemente Private Cloud Compute, un sistema de inteligencia en la nube diseñado para manejar de forma privada solicitudes de IA que un dispositivo no puede atender localmente. De manera similar, OpenAI también está desarrollando una infraestructura de seguridad para la computación en la nube con inteligencia artificial.
Parte de lo que hace que los TEE sean interesantes es su ubicuidad en las PC y los proveedores de servicios en la nube. Permite a los desarrolladores crear aplicaciones que se benefician de los datos confidenciales de los usuarios sin preocuparse por fugas de datos ni violaciones de seguridad. También mejora directamente la experiencia del usuario a través de tecnologías innovadoras como la autenticación biométrica y las contraseñas.
Entonces, ¿qué tiene que ver todo esto con las criptomonedas?
atestación remota
TEE ofrece la posibilidad de realizar cálculos que no pueden ser alterados por personas externas, y la tecnología blockchain también puede proporcionar garantías de cálculo similares. Los contratos inteligentes son esencialmente código informático que, una vez implementado, se ejecuta automáticamente y no pueden ser modificados por terceros.
Sin embargo, existen algunas limitaciones para ejecutar cálculos en la cadena de bloques:
Las cadenas de bloques tienen una capacidad de procesamiento limitada en comparación con las computadoras normales. Por ejemplo, un bloque en Ethereum se genera cada 12 segundos y sólo puede contener hasta 2 MB de datos. Esto es menos que la capacidad de un disquete, que es una tecnología obsoleta. Si bien las cadenas de bloques son cada vez más rápidas y poderosas, todavía no pueden ejecutar algoritmos complejos, como el que está detrás de FaceID.
Blockchain carece de privacidad nativa. Todos los datos del libro mayor son visibles para todos, lo que los hace inadecuados para aplicaciones que dependen de información privada como identidad personal, saldos bancarios, puntajes crediticios e historial médico.
TEE no tiene estas limitaciones. Si bien los TEE son más lentos que los procesadores normales, siguen siendo órdenes de magnitud más rápidos que las cadenas de bloques. Además, el propio TEE tiene funciones de protección de la privacidad y todos los datos procesados están cifrados de forma predeterminada.
Por supuesto, las aplicaciones en cadena que requieren privacidad y mayor potencia informática pueden beneficiarse de las capacidades complementarias de TEE. Sin embargo, blockchain es un entorno informático altamente confiable y cada punto de datos en el libro mayor debe ser rastreable hasta su fuente y replicado en numerosas computadoras independientes. Por el contrario, los procesos TEE ocurren localmente en un entorno físico o en la nube.
Por lo tanto, necesitamos una forma de combinar estas dos tecnologías, lo que requiere el uso de autenticación remota. Entonces, ¿qué es la prueba remota? Demos un rodeo hacia la Edad Media y comprendamos primero el trasfondo.
Antes de la invención de tecnologías como el teléfono, el telégrafo e Internet, las cartas escritas a mano y entregadas por mensajeros humanos eran la única forma de enviar información a largas distancias. Pero, ¿cómo puede un destinatario asegurarse de que el mensaje realmente proviene del remitente previsto y no ha sido manipulado? Durante cientos de años, los sellos de cera fueron la solución a este problema.
Los sobres que contenían las cartas estaban estampados con cera caliente con diseños únicos e intrincados, a menudo escudos de armas o emblemas de reyes, nobles o figuras religiosas. Dado que cada patrón es exclusivo del remitente y casi imposible de replicar sin el sello original, el destinatario puede estar seguro de la autenticidad de la carta. Además, mientras el sello permanezca intacto, el destinatario puede estar seguro de que el mensaje no ha sido manipulado.
Gran Sello del Reino: un sello utilizado para simbolizar la aprobación de los documentos estatales por parte del monarca.
Una certificación remota es el equivalente moderno de un sello, una prueba criptográfica generada por un TEE que permite al titular verificar la integridad y autenticidad del código que se ejecuta en él y confirmar que el TEE no ha sido manipulado. Así es como funciona:
El TEE genera un informe que contiene información sobre su estado y el código que se ejecuta en su interior.
El informe está firmado criptográficamente mediante una clave que sólo puede utilizar el hardware TEE real.
El informe firmado se enviará al validador remoto.
El validador verifica la firma para asegurarse de que el informe provenga de hardware TEE genuino. Luego verifique el contenido del informe para confirmar que el código esperado se esté ejecutando y no haya sido modificado.
Si la autenticación es exitosa, la parte remota puede confiar en el TEE y el código que se ejecuta en él.
Para integrar blockchain con TEE, estos informes pueden publicarse en cadena y verificarse mediante contratos inteligentes designados.
Entonces, ¿cómo puede ayudarnos TEE a crear mejores aplicaciones de criptomonedas?
Casos de uso prácticos de TEE en blockchain
Como "líder" en la infraestructura MEV de Ethereum, la solución MEV-boost de Flashbot separa a los proponentes de bloques de los constructores de bloques e introduce un posible "repetidor" entre los dos intermediarios de entidades fiduciarias. Los retransmisores verifican la validez de los bloques, realizan subastas para seleccionar los bloques ganadores y evitan que los validadores aprovechen las oportunidades MEV descubiertas por los constructores.
Arquitectura MEV-Boost
Sin embargo, aún pueden surgir problemas si los relés están centralizados, como por ejemplo tres relés que manejan más del 80% de los bloques. Como se describe en esta publicación de blog, este tipo de centralización corre el riesgo de que los retransmisores censuren las transacciones, se confabulen con los constructores para dar prioridad a ciertas transacciones sobre otras y el riesgo de que los propios retransmisores puedan robar MEV.
Entonces, ¿por qué los contratos inteligentes no implementan la funcionalidad de retransmisión directamente? En primer lugar, el software del relé es demasiado complejo para ejecutarlo directamente en la cadena. Además, los retransmisores se utilizan para mantener las entradas (bloques creados por los constructores) privadas del robo de MEV.
TEE puede resolver este problema muy bien. Al ejecutar el software de retransmisión en un TEE, un retransmisor no sólo puede mantener privados los bloques de entrada, sino también demostrar que el bloque ganador se eligió de manera justa y sin colusión. Actualmente, SUAVE (en prueba) desarrollado por Flashbots es una infraestructura impulsada por TEE.
Recientemente, esta revista y CMT Digital discutieron cómo la red Solver y Intent pueden ayudar a la abstracción de la cadena y resolver problemas de experiencia del usuario en aplicaciones de criptomonedas. Ambos mencionamos una solución de este tipo, a saber, la subasta de flujo de órdenes, que es una versión general de la subasta realizada en. MEV impulsa y TEE puede mejorar la equidad y eficiencia de estas subastas de flujo de pedidos.
Además, TEE también es de gran ayuda para las aplicaciones DePIN. DePIN es una red de dispositivos que aportan recursos (como ancho de banda, informática, energía, datos móviles o GPU) a cambio de recompensas simbólicas, por lo que los proveedores tienen todos los incentivos para engañar al sistema cambiando el software DePIN, por ejemplo, para mostrar Contribuciones duplicadas desde el mismo dispositivo para ganar más recompensas.
Sin embargo, como hemos visto, la mayoría de los dispositivos modernos tienen algún tipo de TEE incorporado. Los proyectos DePIN pueden verificar de forma remota que las contribuciones son legítimas y seguras al requerir la generación de prueba del identificador único de un dispositivo creado a través de TEE, asegurando que el dispositivo sea auténtico y ejecute el software de seguridad previsto. Bagel es un proyecto de datos DePIN que está explorando el uso de TEE.
Además, TEE también desempeña un papel importante en la tecnología Passkey que Joel analizó recientemente. Passkey es un mecanismo de autenticación que almacena claves privadas en un dispositivo local o en una solución TEE en la nube, lo que elimina la necesidad de que los usuarios administren frases mnemotécnicas, admite billeteras multiplataforma, permite la autenticación social y biométrica y simplifica la recuperación de claves.
Clave y Capsule utilizan la tecnología para carteras de consumo integradas, mientras que la empresa de carteras de hardware Ledger utiliza TEE para generar y almacenar claves privadas. El protocolo Lit respaldado por CMT Digital proporciona firma descentralizada, cifrado e infraestructura informática para desarrolladores de aplicaciones, billeteras, protocolos y agentes de inteligencia artificial. El protocolo utiliza TEE como parte de su red informática y de gestión de claves.
También existen otras variaciones de TEE. A medida que avanza la IA generativa, resulta cada vez más difícil distinguir entre imágenes generadas por IA e imágenes reales. Para ello, los principales fabricantes de cámaras como Sony, Nikon y Canon están integrando tecnología que asigna firmas digitales a las imágenes capturadas en tiempo real. También proporcionan infraestructura para que terceros verifiquen la procedencia de las imágenes mediante la verificación de pruebas. Si bien esta infraestructura está actualmente centralizada, esperamos que estas pruebas se verifiquen en cadena en el futuro.
La semana pasada escribí sobre cómo zkTLS incorpora información de Web2 a Web3 de forma verificable. Discutimos dos métodos para usar zkTLS, incluida la computación multipartita (MPC) y los proxies. TEE proporciona un tercer enfoque, que consiste en manejar las conexiones del servidor en un enclave seguro del dispositivo y publicar pruebas computacionales en cadena. Clique es un proyecto que está implementando zkTLS basado en TEE.
Además, las soluciones Ethereum L2 Scroll y Taiko están experimentando con enfoques de pruebas múltiples, con el objetivo de integrar TEE con pruebas ZK. TEE puede generar pruebas de forma más rápida y rentable sin aumentar el tiempo final. Complementan las pruebas ZK al aumentar la diversidad de mecanismos de prueba y reducir errores y vulnerabilidades.
A nivel de infraestructura, también hay proyectos que soportan un número cada vez mayor de aplicaciones que utilizan la certificación remota TEE. Automata está lanzando una cadena de verificación modular como Eigenlayer AVS que actúa como un registro para la verificación remota, haciéndola públicamente verificable y de fácil acceso. Automata es compatible con varias cadenas de EVM, lo que permite pruebas TEE componibles en todo el ecosistema de EVM.
Además, Flashbots está desarrollando Sirrah, un coprocesador TEE para establecer un canal seguro entre los nodos TEE y la cadena de bloques. Flashbots también proporciona a los desarrolladores código para crear aplicaciones Solidity que pueden verificar fácilmente las pruebas TEE. Están utilizando la cadena de verificación de Automata mencionada anteriormente.
"Las rosas tienen espinas"
Si bien los TEE son versátiles y se han utilizado en diversas áreas de las criptomonedas, la adopción de la tecnología no está exenta de desafíos. Es de esperar que los constructores que adopten TEE tengan en cuenta algunos de estos puntos.
Primero, la consideración principal es que TEE requiere una configuración confiable. Esto significa que los desarrolladores y usuarios deben confiar en que los fabricantes de dispositivos o los proveedores de la nube mantendrán las garantías de seguridad y no tendrán (ni proporcionarán actores externos como los gobiernos) puertas traseras al sistema.
Otro problema potencial son los ataques de canal lateral (SCA). Imagine un examen de opción múltiple en un salón de clases. Aunque no puede ver el examen de nadie, definitivamente puede observar el tiempo que los compañeros a su lado pasan eligiendo diferentes respuestas.
El principio del ataque del canal lateral es similar. Los atacantes explotan información indirecta, como el consumo de energía o los cambios de tiempo, para inferir los datos confidenciales procesados dentro del TEE. Mitigar estas vulnerabilidades requiere una implementación cuidadosa de operaciones criptográficas y algoritmos de tiempo constante para minimizar los cambios observables durante la ejecución del código TEE.
Se ha demostrado que los TEE como Intel SGX tienen vulnerabilidades. El ataque SGAxe de 2020 aprovechó una vulnerabilidad en Intel SGX para extraer claves de cifrado de un enclave seguro, exponiendo potencialmente datos confidenciales en el entorno de la nube. En 2021, los investigadores demostraron un ataque “SmashEx” que podría provocar el colapso de un enclave SGX y potencialmente filtrar información confidencial. La técnica "Prime+Probe" también es un ataque de canal lateral que puede extraer claves de cifrado de periféricos SGX mediante la observación de patrones de acceso a la caché. Todos estos ejemplos resaltan el juego del gato y el ratón entre investigadores de seguridad y atacantes potenciales.
Una de las razones por las que la mayoría de los servidores del mundo utilizan Linux es su sólida seguridad. Esto se debe a su naturaleza de código abierto y a los miles de programadores que constantemente prueban el software y corrigen los errores que surgen. El mismo enfoque se aplica al hardware. OpenTitan es un proyecto de código abierto que tiene como objetivo hacer que las raíces de confianza del silicio (RoT, otro término para TEE) sean más transparentes, confiables y seguras.
perspectiva futura
Además de TEE, existen otras tecnologías que preservan la privacidad disponibles para los constructores, como pruebas de conocimiento cero, computación multipartita y cifrado totalmente homomórfico. Una comparación completa de estas tecnologías está más allá del alcance de este artículo, pero TEE tiene dos ventajas destacadas.
El primero es su universalidad. Si bien la infraestructura de otras tecnologías aún está en su infancia, TEE se ha generalizado y está integrado en la mayoría de las computadoras modernas, lo que reduce el riesgo técnico para los fundadores que buscan aprovechar las tecnologías de privacidad. En segundo lugar, TEE tiene una sobrecarga de procesamiento mucho menor en comparación con otras tecnologías. Si bien esta característica implica compensaciones en materia de seguridad, puede ser una solución práctica para muchos casos de uso.
Finalmente, si está considerando si TEE es adecuado para su producto, hágase las siguientes preguntas:
¿El producto necesita demostrar cálculos complejos fuera de la cadena dentro de la cadena?
¿Las entradas de la aplicación o los puntos de datos clave deben ser privados?
Si la respuesta es sí, entonces vale la pena probar el TEE.
Sin embargo, permanezca siempre alerta, dado que los TEE siguen siendo vulnerables a los ataques. Si el valor de seguridad de su aplicación es menor que el costo de un ataque, que puede ser de millones de dólares, podría considerar usar TEE solo. Sin embargo, si está creando aplicaciones que priorizan la seguridad, como billeteras y Rollups, debería considerar usar una red TEE descentralizada como Lit Protocol, o combinar TEE con otras tecnologías como pruebas ZK.
A diferencia de los constructores, los inversores pueden estar más preocupados por el valor del TEE y por si surgirán empresas multimillonarias como resultado de esta tecnología.
En el corto plazo, a medida que muchos equipos continúen experimentando con TEE, creemos que se generará valor a nivel de infraestructura, incluidos paquetes acumulativos específicos de TEE (como Automata y Sirrah), además de proporcionar componentes básicos clave para otras aplicaciones que Utilice el protocolo TEE (como Lit). A medida que haya más coprocesadores TEE disponibles, el costo del cálculo de la privacidad fuera de la cadena disminuirá.
Y a largo plazo, esperamos que el valor de las aplicaciones y productos que aprovechan TEE superen la capa de infraestructura. Sin embargo, es importante señalar que los usuarios adoptan estas aplicaciones no porque utilicen TEE, sino porque son excelentes productos que resuelven problemas reales. Hemos visto esta tendencia con carteras como Capsule, donde la experiencia del usuario mejora enormemente en comparación con las carteras del navegador. Es posible que muchos proyectos DePIN solo utilicen TEE para la autenticación en lugar de convertirlo en parte del producto principal, pero también acumularán un valor significativo.
Cada semana que pasa, nos volvemos más seguros de nuestra afirmación de que estamos pasando de la teoría del protocolo de grasas a la teoría de la aplicación de grasas. Esperamos que tecnologías como TEE también sigan esta tendencia. La línea de tiempo en