La mayoría sigue sin ser suficiente

Las criptomonedas son activos digitales que son mantenidos por la colaboración entre los participantes de una red, denominados nodos. Bitcoin es el principal exponente de esta tecnología en cuanto a adopción y referencia como paradigma de ser un activo digital. Su principal atractivo, y en general d...

Descripción completa

Guardado en:
Detalles Bibliográficos
Autor principal: Tallar, Nicolás
Formato: Tesis de Grado
Lenguaje:Español
Publicado: 14 d
Materias:
Acceso en línea:https://hdl.handle.net/20.500.12110/seminario_nCOM000496_Tallar
Aporte de:
id todo:seminario_nCOM000496_Tallar
record_format dspace
institution Universidad de Buenos Aires
institution_str I-28
repository_str R-134
collection Biblioteca Digital - Facultad de Ciencias Exactas y Naturales (UBA)
language Español
orig_language_str_mv Español
topic SIMULACION
SIMULATION
SELFISH MINING
BLOCKCHAIN
BITCOIN
spellingShingle SIMULACION
SIMULATION
SELFISH MINING
BLOCKCHAIN
BITCOIN
Tallar, Nicolás
La mayoría sigue sin ser suficiente
topic_facet SIMULACION
SIMULATION
SELFISH MINING
BLOCKCHAIN
BITCOIN
description Las criptomonedas son activos digitales que son mantenidos por la colaboración entre los participantes de una red, denominados nodos. Bitcoin es el principal exponente de esta tecnología en cuanto a adopción y referencia como paradigma de ser un activo digital. Su principal atractivo, y en general de las criptomonedas, es que no está controlada por una entidad central, sino que es un sistema distribuido. La base de la seguridad de esta descentralización son los protocolos ejecutados por miles de nodos para consensuar la historia transaccional. El almacenamiento de los datos se sustenta en la blockchain, una estructura de datos distribuida que se valida por todos los nodos de la red y construida por algunos de estos, los mineros. Los mineros compiten entre sí mediante un puzzlecomputacional para añadir transacciones a la blockchain, recibiendo a cambio de su participación una recompensa económica. A partir de la blockchain se puede derivar el ledger, el libro de cuentas indicando qué transacciones se realizaron y cuánto de la criptomoneda tiene cada usuario. Al tratarse de una red de máquinas, cada nodo puede poseer una visión distinta del ledger, pero mediante protocolos comparten y unifican la información de manera de tender a una misma visión del sistema. Una de las hipótesis que se realizan respecto de estos protocolos descentralizados es que incentivan un comportamiento cooperativo entre los mineros: que su mejor estrategia es compartir inmediatamente toda información nueva que produzcan ellos mismos u obtengan de otros nodos. Sin embargo, aparecieron en la literatura algunos trabajos cuestionando que esta suposición sea verdadera para el caso de Bitcoin y presentaron distintas estrategias de comportamiento más económicamente atractivas que un comportamiento cooperativo. La primera estrategia desarrollada y la más investigada al momento es el selfish mining. A diferencia de la estrategia cooperativa, ésta se basa en administrar con astucia la información disponible de la blockchain, reteniendo gran parte para ser su único conocedor, y así tener ventaja en la competencia por añadirle transacciones. Los trabajos mencionados se centran en analizar de forma teórica esta estrategia de minado y otras variantes. En esta tesis, nos centramos en el análisis del ataque de selfish mining pero, a diferencia de los trabajos de la literatura, lo hacemos desde el punto de vista operacional: utilizamos una herramienta de simulación que permite acercanos al comportamiento real de Bitcoin para evaluar este ataque. La herramienta de simulación fue desarrollada usando SimGrid, lo que nos permite estudiar escenarios de gran escala y tener la seguridad de estar utilizando una herramienta con una fuerte adopción en la comunidad de simulación. Para nuestra experimentación, comenzamos estudiando escenarios controlados de baja escala, cuyos resultados fueron utilizados para verificar el comportamiento del atacante y el resto de los nodos. Luego, gracias a la escalabilidad de SimGrid, realizamos simulaciones a gran escala cercanas a Bitcoin: utilizamos topologías de 10000 nodos respetando el tamaño y las propiedades de su red actual. La primera de las conclusiones a las que llegamos es que, en los experimentos de topologías chicas, los resultados obtenidos en la práctica fueron efectivamente los esperados de acuerdo a la literatura. Por otro lado, para los experimentos a gran escala se observó que realizar el ataque es más rentable que no hacerlo, pero no pudimos concluir si es tan rentable como lo predicho teóricamente, ya que no existen actualmente herramientas para realizar dichas predicciones en sistemas similares al real. Como alternativa, se presentó un estimador de la rentabilidad del atacante en base a propiedades del grafo surgido a partir de las conexiones entre nodos. Transversalmente, exploramos el funcionamiento del ataque realizando un análisis del uso de los recursos de todos los mineros de la red. Esto puso en evidencia una fuente adicional de ineficiencia del sistema cuando el ataque está activo.
format Tesis de Grado
author Tallar, Nicolás
author_facet Tallar, Nicolás
author_sort Tallar, Nicolás
title La mayoría sigue sin ser suficiente
title_short La mayoría sigue sin ser suficiente
title_full La mayoría sigue sin ser suficiente
title_fullStr La mayoría sigue sin ser suficiente
title_full_unstemmed La mayoría sigue sin ser suficiente
title_sort la mayoría sigue sin ser suficiente
publishDate 14 d
url https://hdl.handle.net/20.500.12110/seminario_nCOM000496_Tallar
work_keys_str_mv AT tallarnicolas lamayoriasiguesinsersuficiente
AT tallarnicolas majorityisstillnotenough
_version_ 1782026469232345088
spelling todo:seminario_nCOM000496_Tallar2023-10-03T16:48:55Z La mayoría sigue sin ser suficiente Majority is still not enough Tallar, Nicolás SIMULACION SIMULATION SELFISH MINING BLOCKCHAIN BITCOIN Las criptomonedas son activos digitales que son mantenidos por la colaboración entre los participantes de una red, denominados nodos. Bitcoin es el principal exponente de esta tecnología en cuanto a adopción y referencia como paradigma de ser un activo digital. Su principal atractivo, y en general de las criptomonedas, es que no está controlada por una entidad central, sino que es un sistema distribuido. La base de la seguridad de esta descentralización son los protocolos ejecutados por miles de nodos para consensuar la historia transaccional. El almacenamiento de los datos se sustenta en la blockchain, una estructura de datos distribuida que se valida por todos los nodos de la red y construida por algunos de estos, los mineros. Los mineros compiten entre sí mediante un puzzlecomputacional para añadir transacciones a la blockchain, recibiendo a cambio de su participación una recompensa económica. A partir de la blockchain se puede derivar el ledger, el libro de cuentas indicando qué transacciones se realizaron y cuánto de la criptomoneda tiene cada usuario. Al tratarse de una red de máquinas, cada nodo puede poseer una visión distinta del ledger, pero mediante protocolos comparten y unifican la información de manera de tender a una misma visión del sistema. Una de las hipótesis que se realizan respecto de estos protocolos descentralizados es que incentivan un comportamiento cooperativo entre los mineros: que su mejor estrategia es compartir inmediatamente toda información nueva que produzcan ellos mismos u obtengan de otros nodos. Sin embargo, aparecieron en la literatura algunos trabajos cuestionando que esta suposición sea verdadera para el caso de Bitcoin y presentaron distintas estrategias de comportamiento más económicamente atractivas que un comportamiento cooperativo. La primera estrategia desarrollada y la más investigada al momento es el selfish mining. A diferencia de la estrategia cooperativa, ésta se basa en administrar con astucia la información disponible de la blockchain, reteniendo gran parte para ser su único conocedor, y así tener ventaja en la competencia por añadirle transacciones. Los trabajos mencionados se centran en analizar de forma teórica esta estrategia de minado y otras variantes. En esta tesis, nos centramos en el análisis del ataque de selfish mining pero, a diferencia de los trabajos de la literatura, lo hacemos desde el punto de vista operacional: utilizamos una herramienta de simulación que permite acercanos al comportamiento real de Bitcoin para evaluar este ataque. La herramienta de simulación fue desarrollada usando SimGrid, lo que nos permite estudiar escenarios de gran escala y tener la seguridad de estar utilizando una herramienta con una fuerte adopción en la comunidad de simulación. Para nuestra experimentación, comenzamos estudiando escenarios controlados de baja escala, cuyos resultados fueron utilizados para verificar el comportamiento del atacante y el resto de los nodos. Luego, gracias a la escalabilidad de SimGrid, realizamos simulaciones a gran escala cercanas a Bitcoin: utilizamos topologías de 10000 nodos respetando el tamaño y las propiedades de su red actual. La primera de las conclusiones a las que llegamos es que, en los experimentos de topologías chicas, los resultados obtenidos en la práctica fueron efectivamente los esperados de acuerdo a la literatura. Por otro lado, para los experimentos a gran escala se observó que realizar el ataque es más rentable que no hacerlo, pero no pudimos concluir si es tan rentable como lo predicho teóricamente, ya que no existen actualmente herramientas para realizar dichas predicciones en sistemas similares al real. Como alternativa, se presentó un estimador de la rentabilidad del atacante en base a propiedades del grafo surgido a partir de las conexiones entre nodos. Transversalmente, exploramos el funcionamiento del ataque realizando un análisis del uso de los recursos de todos los mineros de la red. Esto puso en evidencia una fuente adicional de ineficiencia del sistema cuando el ataque está activo. Cryptocurrencies are digital assets maintained through the collaboration of participants in a network called nodes. Bitcoin is the dominant exponent of this technology in terms of adoption and reference as a paradigm for being a digital asset. Its main attraction, and generally of cryptocurrencies, is the lack of a central controlling entity but rather a distributed system. The basis for the security of this decentralization is the protocols executed by thousands of nodes to reach a consensus on the transactional history. The blockchain supports data storage, a distributed data structure validated by all nodes in the network and built by some of these called miners. Miners compete with each other through a computational puzzle to add transactions to the blockchain, receiving an economic reward for their participation. The ledger which is the accounting book indicating which transactions were made and the amount of cryptocurrency each user has, can be derived from the blockchain. As it is a network of machines, each node may have a different view of the ledger, but through protocols, they share and unify the information in order to tend toward a shared vision of the system. One hypothesis regarding these decentralized protocols is that they incentivize cooperative behavior among miners: their best strategyis toimmediately shareany newinformation they produceorobtain fromother nodes.However, some studies have questioned whether this assumption holds for Bitcoin and present different behavior strategies that are more economically attractive than cooperative behavior. The first developed and the most researched strategy is selfish mining. Unlike the cooperative strategy, this one is based on cunningly managing the available information on the blockchain, retaining a large part of it to be the only one knowing it, and thus having an advantage in the competition to add transactions. The mentioned studies focus on theoretically analyzing this mining strategy and other variants. In this thesis, we focus on analyzing the selfish mining attack, but unlike other works of literature, we do it from an operational point of view: we use a simulation tool that allows us to get closer to the actual behavior of Bitcoin to evaluate this attack. The simulation tool is based on SimGrid, which has a strong adoption in the simulation community, allowing us to study large-scale scenarios. For our experiments, we started studying controlled low-scale scenarios, whose results verified the behavior of the attacker and the rest of the nodes. Then, thanks to the scalability of SimGrid, we carried out simulations on a large scale close to Bitcoin: we used topologies of 10 000 nodes respecting the size and properties of its current network. The firstof the conclusionswe reachedis thatin the experimentsof small topologies, the resultsobtainedin practice were effectively the ones expected according to the literature. On the other hand, for the largescale experiments, it was observed that carrying out the attack is more profitable than not doing it, but we could not conclude if it is as profitable as theoretically predicted, since there are currently no tools to make such predictions in systems similar to the real one. As an alternative, an estimator of the attacker’s profitability was presented based on properties of the graph arising from the connections between nodes. Transversely, we explored the operation of the attack by analyzing the use of resources by all miners in the network, revealing an additional source of inefficiency in the system when the attack is active. Fil: Tallar, Nicolás. Universidad de Buenos Aires. Facultad de Ciencias Exactas y Naturales; Argentina. 14 de Agosto 2023 Tesis de Grado PDF Español info:eu-repo/semantics/openAccess https://creativecommons.org/licenses/by-nc-sa/2.5/ar https://hdl.handle.net/20.500.12110/seminario_nCOM000496_Tallar