Sobre el origen intelectual de blockchain (I). Los precursores remotos

En mi anterior aportación a este blog aludí a ciertos obstáculos intelectuales con los que podemos tropezar los juristas a la hora de enfrentarnos al concepto de smart contract y al fenómeno blockchain en general, siendo el primero de ellos un déficit de formación tecnológica. Precisamente, una de las peculiaridades de esta tecnología, de cuyas múltiples aplicaciones y potencial disruptivo habla todo el mundo, es que presenta un considerable umbral intelectual de acceso: es algo que cuesta explicar y comprender.

En este post y en el siguiente voy a intentar aportar un poco de perspectiva sobre el asunto, lo que quizá pueda ayudar a discernir la señal –lo significativo- de todo el ruido mediático que ahora mismo está provocando tantas interferencias.

En concreto, en el par de posts que he previsto voy a hacer referencia a algunos personajes cuyas aportaciones intelectuales han sido importantes en el camino que ha llevado tanto a las criptomonedas como a blockchain. Al respecto, distinguiré uno precursores remotos y unos precursores próximos.

Como precursor remoto podría aludir al filósofo alemán Leibniz, que a finales del siglo XVII, además de fabricar una calculadora universal mecánica, concibió la idea de una máquina que almacenaba y manejaba información codificada en código digital binario. Pero me voy a centrar en dos personajes más cercanos, que vienen siendo considerados como los padres fundadores de la informática: el británico Alan Turing y el húngaro nacionalizado estadounidense John von Neumann. ¿Y por qué los traigo a colación? Pues no sólo porque en los años treinta y cuarenta del pasado siglo sentaron las bases intelectuales, de naturaleza lógico-matemática, que dieron lugar al desarrollo de la informática y con ella del universo digital en que ahora habitamos, sino porque, además, algunas de sus ideas y visiones anticiparon gran parte de la transformación que justo ahora estamos viviendo.

Alan Turing es conocido en nuestros días por el gran público sobre todo por una película reciente (The Imitation Game -“Descifrando enigma”, en España-, del año 2014) dedicada a su actividad durante la Segunda Guerra Mundial en el servicio de inteligencia de la Marina británica, donde contribuyó a descifrar los códigos de la célebre máquina de encriptación Enigma que empleaban en sus comunicaciones la armada y el ejército alemán. Esto ya nos resulta interesante por su relación con el tema de la criptografía. Pero, sobre todo, quiero hacer referencia al trabajo que le hizo célebre, publicado en el año 1936 en la prestigiosa revista Proceedings of the London Mathematical Society: “Sobre los números computables, con una aplicación al Entscheidungsproblem”.

El Entscheidungsproblem o problema de la decidibilidad es una ardua cuestión lógico-matemática que tuvo ocupados a algunos lógicos y filósofos a principios del siglo XX desde que el matemático alemán David Hilbert la plantease en un escrito programático del año 1900 como uno de los retos pendientes para la centuria que entonces comenzaba: ¿es posible que la matemática dé una respuesta de tipo demostrativo a todos los problemas que ella misma plantea? O dicho de otra forma, ¿es posible la axiomatización plena de la matemática para reconstruirla como un sistema completo y autoconsistente? Hilbert, adalid de lo que se conoce como formalismo lógico, pensaba que sí, y Russell y Whitehead creyeron haberlo logrado con su obra Principia Mathematica. Sin embargo, un ensimismado profesor de lógica austriaco llamado Kurt Gödel demostró que no era posible en un difícil y revolucionario artículo publicado en el año 1931, donde formuló lo que se conoce como el teorema de incompletitud de Gödel.

En la estela de Gödel, en el citado trabajo Turing –como una simple estrategia discursiva en relación con el problema de los límites de la computabilidad- concibió la primera máquina –que sería conocida como la “máquina universal de Turing” y que por entonces era sólo una construcción teórica- de “programa almacenado”, es decir, dotada de una memoria que no sólo conservaría datos, sino también el propio programa para el manejo o cómputo de esos datos, una máquina que sería reprogramable y capaz de computar todo lo computable (es decir, lo que hoy entendemos por un ordenador). Tampoco puedo dejar de mencionar su temprano interés por la inteligencia artificial, hasta el punto de que hoy se sigue empleando el llamado “test de Turing” para evaluar la mayor o menor inteligencia de un dispositivo.

Pues bien, cuando en el año 2014 ese niño prodigio ruso-canadiense llamado Vitalik Buterin, con tan solo 19 años, pone en marcha esa blockchain de segunda generación llamada Ethereum, nos va a decir que se trata de una blockchain que utiliza un lenguaje de programación Turing-completo, y que aspira a convertirse en la máquina universal de programación, the World Computer. Esto supone precisamente llevar la idea originaria de Turing a una nueva dimensión: no se trata de crear una máquina individual reprogramable de objeto de cómputo universal, sino de la existencia de una red tendencialmente universal de ordenadores que no sólo registran de forma simultánea esos mensajes sencillos que son las transacciones de bitcoins, sino que en ellos se puede ejecutar a la vez cualquier operación que sea programable, conservándose todos los pasos del proceso y su resultado en un registro distribuido, transparente, no manipulable y de acceso universal. O dicho de otra forma, no sólo universalidad en cuanto al objeto programable –como la máquina virtual de Turing y nuestros actuales ordenadores-, sino también universalidad en cuanto a los agentes o dispositivos que operan, ya que el programa se ejecuta y su resultado se registra simultáneamente por una infinidad de ordenadores repartidos por todo el mundo.

En cuanto a John von Neumann, se trata de uno de los grandes genios científicos del siglo XX, de un nivel comparable al de un Einstein. En lo que concierne a nuestro tema, von Neumann fue el creador de la estructura lógica de una de las primeras computadoras digitales electrónicas de alta velocidad y memoria almacenada con la que se hizo realidad la imaginada máquina universal de Turing. Esa computadora, conocida por las siglas EDVAC, fue fabricada a finales de los años cuarenta en el Instituto de Estudios Avanzados de Princeton (USA), como instrumento para la realización de los complejos y laboriosísimos cálculos matemáticos que requería el diseño y control de las primeras bombas atómicas. De hecho, todavía hoy la estructura de todos los ordenadores que utilizamos obedece a lo que se conoce como “arquitectura von Neumann”, que distingue la memoria, el procesador, la unidad central de control y los elementos de comunicación con el exterior para la entrada y salida de datos.

Pues bien, aparte de que cualquier aplicación o desarrollo de la tecnología informática es deudora -pese a su prematura muerte con 53 años- de las visiones y concepciones de von Neumann (incluso la inteligencia artificial, que fue el objeto de sus últimas reflexiones en obras como la “Teoría de los autómatas autorreproductivos”), quiero referirme aquí a dos ideas de este gran pionero de la informática.

En primer lugar, en los años que siguieron al final de la Segunda Guerra Mundial había escasez de casi todo y para la construcción del EDVAC se tuvo que echar mano de equipos y materiales de desecho de la industria bélica. Conseguir que funcionase correctamente una máquina fabricada ensamblando ese tipo de elementos fue un verdadero reto al que se enfrentó Von Neumann con la idea de que había que construir una máquina fiable a partir de miles de componentes no fiables. Esta idea, que desarrolló teóricamente en dos artículos de los años 1951 y 1952 (“Organizaciones fiables de elementos no fiables” y “La lógica probabilística y la síntesis de organismos fiables a partir de componentes no fiables”), enlaza con la formulación, ya en los años ochenta y en relación con la fiabilidad de las redes de ordenadores creadas con fines de defensa, de lo que se conoce como el “problema de los generales bizantinos” –al que se suele aludir en las explicaciones de blockchain-. Por supuesto, tiene que ver también con un concepto que hoy está en boca de todos con el nombre de “resiliencia”; y se encuentra en el mismo núcleo del diseño de blockchain: cómo crear el sistema de registro más fiable y transparente que haya existido nunca partiendo sólo de agentes individuales particulares cualquiera de los cuales podría ser un tramposo.

En relación con el diseño de blockchain también podemos rastrear la huella de otra gran aportación intelectual de von Neumann. Como éste estaba dotado de una inteligencia universal, no sólo se interesó por y revolucionó la lógica de conjuntos, la física cuántica y la ciencia de la computación, sino que también hizo su incursión –no menos revolucionaria- en la ciencia económica, donde fue el pionero de la teoría de juegos, con una obra de la que fue coautor junto con Oskar Morgenstern en el año 1944 con el título “Teoría de juegos y comportamiento económico”. Pues bien, mucho de teoría de juegos, de análisis de la racionalidad de las decisiones estratégicas de los agentes individuales que operan en una economía teniendo en cuenta los comportamientos probables de los demás agentes, está también presente en el inteligente diseño que explicó el enigmático Satoshi Nakamoto en su paper del año 2008. En último término, una blockchain pública como la que sirve de base a Bitcoin está diseñada partiendo de la idea de que la persecución del interés individual de ganancia de unos agentes -los “mineros”- redunda en la fiabilidad general del sistema; así como en la idea de que resulta muy poco racional defraudar un sistema para obtener un activo cuyo valor económico depende directamente de la confianza general en la fiabilidad de ese sistema.

(Recomiendo a quien sienta curiosidad por estos temas la lectura de los siguientes libros, disponibles en nuestro idioma: “La catedral de Turing. Los orígenes del universo digital”, de George Dyson, Debate, Barcelona, 2015; “Alan Turing. El pionero de la era de la información”, de B. Jack Copeland, Turner Noema, Madrid, 2012; y “Gödel. Paradoja y vida”, de Rebecca Goldstein, Antoni Bosch, Barcelona, 2010.)

This post is also available in: English (Inglés)