Entrevista a Matthias Fitzi, investigador de IOHK. Traducción al español 🇪🇸

Video original publicado el 18 de Enero de 2019.

Mi nombre es Matthias Fitzi, vivo en Zurich, Suiza. Estudié ciencias de la computación, hice un doctorado en consensos y protocolos criptográficos, luego de terminar mi doctorado hice mi propia investigación, luego me tomé mi tiempo como artista y recientemente reinicié mi trabajo como investigador, parece que mi trabajo de investigación es mejor apreciado que mi trabajo como artista!

Aprendí sobre Cardano mirando su sitio web hace unos dos años atrás, descubrí algunas caras conocidas de haberlas visto con anterioridad. Pero en ese momento no estaba realizando investigaciones y no sabía lo que estaba pasando en el ambiente, sencillamente lo deje pasar. Luego hubo una reunión cripto aca en Zurich donde me encontré con viejos amigos que ahora trabajan para IOHK y básicamente dijeron "deberías unirte a IOHK", y eso hice.

Mi principal enfoque de investigación son los protocolos de consenso y protocolos distribuidos seguros como computación multipartidaria (multi party computation), este fué incluso el tema de mi doctorado. Hace sólo medio año que me uní a IOHK y durante este tiempo estuve mayormente focalizado en la escalabilidad de blockchains sin permiso (unpermission o permissionless) (sin permiso significa que no se requiere ningún permiso para unirse a la misma)

El problema de la escalabilidad en blockchains sin permiso es que operan en todo el mundo, alrededor de todo el globo, eso significa que se enfrentarán un montón de retrasos en las redes. Para poder tener certeza de que los buenos le van a ganar a los malos, tienes que asegurar que los buenos están trabajando de un modo consistente, eso requiere un enorme esfuerzo de sincronización para asegurarnos que se están manteniendo de forma consistente y trabajando realmente de forma productiva en la blockchain, de un modo que no pueda ser revertido. Ha habido distintos enfoques para tratar de solucionar todos estos inconvenientes de escalabilidad, no todos han sido exitosos si tratas de analizarlo de forma más profunda.

En lo que nos hemos estado focalizando es en intentar paralelizar acción en la blockchains. Creamos un protocolo que corre varias blockchains en paralelo y arroja mejores resultados que una blockchain tradicional. Miremos el sistema de Prueba de Trabajo por ejemplo (Proof of Work, PoW), mientras la prueba de trabajo esta siendo calculada, básicamente no esta ocurriendo trabajo en la blockchain porque la gente tiene que esperar a que el bloque llegue y la transacción sea añadida. Pero, si paralelizas el proceso en múltiples blockchains, mientras algunos están minando una cadena, otros pueden estar minando otra y esto mejora el rendimiento.

Se pueden crear cadenas paralelas tanto como para la Prueba de Trabajo (Proof of Work, PoW) como para la Prueba de Participación (Proof of Stake, PoS). Para el caso de PoS es relativamente sencillo por que puedes correr las cadenas en paralelo y simplemente asignas derechos de creación de bloques independientemente para cada cadena, dependiendo de la distribución de activos, excepto por requerir prueba de que se ha realizado el trabajo correctamente, no es demasiado lo que hay que hacer. En el caso de PoW es mas difícil por que no puedes dejar que todo el mundo decida en que cadena quieren incluir sus esfuerzos para la generación de bloques, porque sino un adversario puede sencillamente seleccionar una cadena y básicamente dominarla y destruirla, tienes que utilizar un método en el que puedas asegurarte que adversario va a tener sus esfuerzos de minería distribuidos de manera pareja. Esto se hace extendiendo el trabajo en PoW y extendiendo el modo en que los bloques son creados.

Estas cadenas paralelas por su puesto incluyen fragmentario de transacciones (transaction sharding) ya que no quieres que una misma transacción sea procesada dos veces en dos cadenas distintas por los generadores de bloques (mineros), eso afectaría el rendimiento, estarías publicando la misma información en múltiples ocaciones, eso no es bueno. Entonces lo que el protocolo incluye es la fragmentacion de transacciones definiendo cadenas dedicadas para cierto tipo de transacciones.

Entonces, ¿que es lo que se ha hecho para enfrentar este problema de la escalabilidad?

El primer enfoque que podría tomarse es sencillamente acelerar el proceso ¿Como aceleras una PoW?, simplemente disminuyendo la dificultad de la prueba de trabajo, esto realmente no te ayudará porque agrandas la cadena a mayor velocidad pero también le das más posibilidad al adversario de alterar la historia. Otro enfoque es del de Bitcoin NG que divide la minería en bloques de mineros, que te dan derecho a minar bloques de transacciones, donde no necesitas solucionar ninguna prueba de trabajo para minar. Esto no es muy bueno frente a adversarios que corrompen el grupo.

La investigación que estamos llevando a cabo es muy interesante, es muy distinta a otras por que la gente esta distribuida, nos tenemos que comunicar de forma electrónica. Tenemos una reunión científica principal semanalmente, que involucra a todos los investigadores, es guiada por Aggelos Kiayias, lo bueno es que es entre todos los investigadores, entonces puedes aprender sobre lo que otras personas están trabajando, eres libre, puedes hacer tu propia investigación y si te ves atorado en algún punto, el resto de los investigadores pueden ayudarte.

La investigación reciente fue realizada en colaboración con Peter Gazi, Aggelos Kiayias y Alexander (perdón, apellido no comprendido). Lo apasionante de la investigación sobre criptografía y computación distribuida segura es que de forma muy seguida las intuiciones son erróneas y muy seguido también puedes obtener resultados que parecen paradójicos, es un viaje entero desde que comienzas con una idea hasta que finalizas el documento, puede ser un proceso muy interesante, donde muchas cosas que no esperabas pueden ocurrir. Hacer esta investigación en IOHK es especialmente interesante porque antes de que tu documento este terminado ya estas siendo contactado por desarrolladores que están muy interesados en lo que estas haciendo y dispuestos a implementarlo.

Remontándonos a finales de los 70, recuerdo mis principios como investigador, estábamos sentados en nuestras oficinas preguntándonos ¿por que nadie se preocupa por la investigación? ¿por que la sociedad no adopta estas ideas, estas muy bellas ideas?, ¿por que la industria no esta interesada en computación distribuida segura? Esto ha cambiado drásticamente, es muy excitante ver que si estas haciendo buena investigación, las probabilidades de que sea implementada rápidamente son muy altas.

1 Like