%0 Thesis %A González, Jorge %T Blockchain light clients from proofs of sequential work schemes %D 2025 %U https://hdl.handle.net/20.500.14352/122621 %X As cryptocurrencies have become more popular, it has become more common to operate them from mobile devices. This can be problematic, since blockchains can take hundreds of gigabytes in disk storage. Typically, this is solved by connecting to some supplier that holds the blockchain, but that contradicts the decentralized nature of cryptocurrencies. It would be interesting to make this connection trustless. In this work, we will focus on the FlyClient protocol, presented by Luu, B¨unz, Kiffer and Zamani in 2019. This protocol allows light clients, i.e. users that do not have the blockchain stored locally, to verify cryptocurrency transactions by downloading a very small subset of blocks. This work has raised public interest as it presents a simple and efficient solution to the mentioned problem. However, it suffers from some problems. Mainly, there is a general lack of formalization along the paper which makes the exact functionality of the protocol unclear. Moreover, the security guarantees of the protocol are depicted in an extremely vague way. We have formalized the protocol as a proof system. Furthermore, we have explored the connection between FlyClient and Cohen and Pietrzak’s Proof of Sequential Work scheme, using this to specify the security guarantees of the FlyClient protocol. Finally, we have reviewed the most well known alternatives to this problem, namely Non-Interactive Proofs of Proof-of-Work (NIPoPoWs, from now on) and Succint Non-Interactive Arguments of Chain Knowledge (SNACKs, from now on), and compared their features and guarantees to FlyClient’s. We have concluded that FlyClient has remarkable advantages with respect to NIPoPoWs, mainly in the form of compatibility with variable difficulty blockchains. On the other hand, we have noted many similaritiesbetween FlyClient and SNACKs, with SNACKs being silghtly more efficient and versatile. %X A medida que las criptomonedas se han popularizado, se ha vuelto más frecuente operar con ellas desde dispositivos móviles. Esto puede resultar problemático, puesto que las blockchains pueden llegar a ocupar cientos de gigabytes de almacenamiento en disco. Habitualmente, esto se soluciona mediante la conexión a algún proveedor que posea la blockchain completa. Sin embargo, esto contradice la naturaleza descentralizada de la tecnología blockchain. Sería interesante lograr que la seguridad de estas conexiones no dependiera de la honestidad del proveedor. En este trabajo nos centraremos en el protocolo FlyClient, presentado por Luu, Bünz, Kiffer y Zamanien 2019. Este protocolo permite a un cliente ligero, es decir, aquel que no tiene la blockchain en almacenamiento local, verificar transacciones de criptomonedas con tan solo descargar una pequeña cantidad de bloques. Este trabajo ha despertado bastante interés puesto que ofrece una solución simple y eficienteal problema mencionado. Sin embargo, sufre de algunos problemas. En primer lugar, hay una falta general de formalización que impide determinar con precisión el funcionamiento del protocolo. Además, las garantías de seguridad del protocolo fueron mostradas de una forma muy vaga. Hemos formalizado el protocolo como un sistema de pruebas. Además, hemos explorado las conexiones entre el protocolo FlyClient y el esquema de pruebas de trabajo secuencial de Cohen y Pietrzak. Esta conexi´on nos ha sido ´util para especificar las garantías de seguridad del protocolo FlyClient.Finalmente, hemos analizado las principales soluciones alternativas al problema en cuestión, esto es, los Non-Interactive Proofs of Proof-of-Work (NIPoPoWs, de aqu´ı en adelante) y los Succint NonInteractive Arguments of Chain Knowledge (SNACKs, de aquí en adelante), y hemos comparado sus características y garant´ıas con las de FlyClient. Hemos concluido que FlyClient tiene ventajas notables sobre los NIPoPoWs, principalmente por ser compatible con cadenas de dificultad variable. Por otra parte, hemos notado varias similitudes entre FlyClient y los SNACKs, siendo los SNACKs ligeramente más eficientes y versátiles. %~