Tendencias del momento
#
Bonk Eco continues to show strength amid $USELESS rally
#
Pump.fun to raise $1B token sale, traders speculating on airdrop
#
Boop.Fun leading the way with a new launchpad on Solana.
Está bien, después de 2 meses de esfuerzo sólido, me rindo.
El proyecto de "hacer la configuración de confianza de Groth16 en un TEE y obtener una atestación remota de que los desechos tóxicos fueron destruidos" ha sido un fracaso. Haré un resumen a continuación.
Lo menciono aquí solo porque no quiero que nadie se desanime de trabajar en ello porque piensen que todavía estoy trabajando en ello cuando en realidad no lo estoy.
Resumen:
- El único TEE que actualmente puede hacer esto (según lo que veo) es TDX, porque tiene las garantías de RAM encriptada requeridas. (Recuerda, para este proyecto no es suficiente saber que el código correcto se está ejecutando en el TEE, TAMBIÉN necesitas saber que un atacante físico en la máquina no puede volcar la RAM durante la ceremonia y aprender sobre los desechos tóxicos).
- La atestación remota de TDX firma sobre “MRTD”, que es un hash que cambiará si cualquier byte de la imagen de la VM cambia.
- Por lo tanto, para que un auditor/usuario futuro verifique que el TDX estaba ejecutando el código correcto durante la configuración de confianza (especialmente de alguna manera automatizada), necesitan poder reproducir ese hash MRTD, lo que a su vez requiere reconstruir la imagen de la VM a partir del código fuente legible por humanos de manera reproducible bit a bit.
- No he podido crear una imagen de GCP de manera reproducible bit a bit. (Incluso una super mínima, que solo arranca y abre un puerto SSH y literalmente nada más).
No estoy seguro de que esto sea posible con las herramientas estándar existentes. Puede que requiera ajustar las herramientas actuales.
StageX fue profundamente útil, así que recomiendo usarlo tanto como sea posible. Los problemas surgen cuando necesitas algo que no está disponible actualmente a través de una capa de StageX. Para eso, necesitas construir lo que necesites desde la fuente (ya que descargar tarballs sin compilarlos tú mismo es un riesgo en la cadena de suministro).
Y he encontrado que construir/compilar _la mayoría_ del software desde la fuente de una manera reproducible bit a bit es extraordinariamente consumidora de tiempo, difícil y frágil. Y en muchos casos no he podido hacerlo *en absoluto*.
Recomiendo hacer cualquier construcción de cualquier software que necesites dentro de un contenedor Docker que consista únicamente en capas StageX fijadas por hash. Esa técnica me ha dado el mejor rendimiento.
3,32K
Parte superior
Clasificación
Favoritos