Escrito por Pröfesor Utonio, miembro de DeFi LATAM.
La seguridad en PoW recae en las recompensas a lo mineros x bloque creado y los incentivos para los mineros provienen del riesgo de que pierdan sus futuras recompensas x bloque.
PoS por el contrario, no solo se basa en incentivos económicos para asegurar la red, sino más bien en posibles castigos por actuar malintencionadamente.
Para poder ser validador, se deben bloquear depósitos en garantía (stake), y son recompensados por ayudar a asegurar la red y mantener los nodos. Si actúan de forma deshonesta (revertiendo transacciones, censurando txs/address) son susceptibles de perder gran parte del stake que dejaron como castigo. A este mecanismo se le llama slashing
Entonces, la seguridad en PoS proviene de la posibilidad de perder lo que han dejado en stake por el riesgo económico que implica atacar la red.
En PoW si atacan una red y fallan, aún pueden usar su equipo de minería/hardware para atacar otras redes que utilicen el mecanismo de PoW. No hay nada ni nadie que les impida seguir utilizando su hashpower.
PoS no tiene este problema, ya que el costo del ataque es comprar los tokens del protocolo para dejar en stake. El atacante solo puede atacar la red en la que posee los tokens, no pudiendo atacar otras redes o siquiera atacar inmediatamente una segunda vez la misma red.
En un eventual escenario de un hardfork, con PoS: la comunidad puede coordinar el hardfork y eliminar a los validadores deshonestos que están atacando la red. Esto es posible ya que se puede “saber” quiénes son los validadores en la red (hay una dirección pública adjunta a cada depósito en stake y, por lo tanto, a cada nodo)
PoW: En un sistema de minado basado en GPU/ASICs/CPU, no hay defensa, y un atacante persistente puede fácilmente hacer que una blockchain quede inutilizada permanentemente. Después de los primeros días, los costos del atacante pueden volverse muy bajos, ya que los mineros honestos se retirarán porque no tienen forma de obtener recompensas mientras se desarrolla el ataque.
PoS: En el caso de PoS las cosas cambian. Atacar la red mediante ataques del 51% sigue siendo posible en PoS (por ejemplo, revertir bloques finalizados). Para llevarlo a cabo, el atacante necesitaría controlar el 51% del token de la red en stake. No solo es mucho dinero, sino que probablemente haría que el precio del token cayera. Existen incentivos más fuertes para mantener la red segura.
Por lo tanto, atacar la blockchain por primera vez le costará al atacante muchos millones de dólares y la comunidad se recuperará en unos días. Atacar la blockchain por segunda vez aún le costará al atacante muchos millones de dólares, ya que necesitaría comprar los tokens nuevas para reemplazar las monedas viejas que se quemaron. Y la tercera vez ... costará aún más millones de dólares. El juego es muy asimétrico y no favorece al atacante.
PoW - “Mining Tragedy of the Commons”: Describe una situación en la cual varios individuos, motivados solo por el interés personal y actuando de forma independiente pero racional, terminan por destruir un recurso que comparten aunque a ninguno de ellos les convenga que tal destrucción suceda.
Aplicado a PoW, y para tomar un caso puntual, Bitcoin: Los mineros gastan dinero en poder computacional y electricidad para poder minar, pero esto se ve amortizado por las recompensas por bloque que generan. Es una hipotética falla de mercado que podría darse en un futuro cuando la recompensa por bloque minado tienda a ser 0. En este escenario, los únicos fees que ganarían los mineros son los fees de las transacciones.
Los mineros aceptarán txs con cualquier fee (porque el costo marginal de incluirlas es mínimo) y los usuarios pagarán fees cada vez más bajos. Y ya que los mineros están incentivados a maximizar ganancias, es posible que los mineros honestos estén poco incentivados y que muy pocos minen, esto reducirá el hashrate y bajará la dificultad. Esto podría significar que se producirán varios ataques del 51% con frecuencia y que Bitcoin no funcionará correctamente.
Esta es una posible situación y se han discutido varias soluciones en foros*, sin llegar a un consenso general.
PoW - “Selfish mining”: Es un escenario hipotético planteado por Emin Sirer, fundador de Avalanche, plasmado en el documento “Majority is not Enough: Bitcoin Mining is Vulnerable” en el que describe cómo los grandes pools de minería podrían incurrir en esta práctica eventualmente.
El mecanismo sería el siguiente: cuando un minero descubre un nuevo bloque, en vez de publicarlo en la red como se esperaría que ocurriese, lo guarda para sí mismo de manera local, forkeando la chain y sacrificando sus propias recompensas.
Los mineros honestos continúan minando sobre la blockchain más longeva (por lo tanto, la más ‘confiable’) sin enterarse que éste minero/pool de minería incurre en esta práctica maliciosa guardando bloques de manera secreta.
Mientras el resto de la red sigue trabajando sobre la pow más larga, el minero malicioso intenta encontrar otro bloque para añadir sobre el bloque que no publicó. Si logra descubrir otro bloque antes que el resto de la red, estará adelantado a los demás.
Mediante esta práctica se engaña al resto de los mineros para que trabajen en bloques que no están conectados a lo que podría ser la cadena más larga, ergo, haciendo su trabajo inútil y quitándole sus recompensas por bloques.
¿Cuál es el beneficio de esta práctica? ¿Por qué un minero querría hacer esto? Supongamos que logra encontrar un segundo bloque para añadir a su chain secreta; puede continuar minando sobre su chain privada, pero una vez que la red pública encuentra un bloque, puede invalidarlo publicando los que guardo para sí mismo.
Ahora le será más fácil minar sobre ese bloque, ya que conoce el header del bloque mas reciente.
Queda entonces, preguntarse: Si ésta es una amenaza existente y posible desde hace casi una década, ¿Por qué todavía no lo vimos implementado? ¿Los incentivos no son suficientemente grandes? ¿O los incentivos para actuar como se espera son mayores?
PoS - “The rich get richer”: Una de las frecuentes críticas hacia PoS es el hecho de que los validadores con más tokens en stake serán elegidos para crear bloques y recompensados más frecuentemente, volviéndose así cada vez más ricos y concentrando el poder.
Pero este ‘problema’ también afecta a PoW. Las personas/entidades que más dinero posean, y lo inviertan en poder computacional para minar, más hashpower tendrán y por lo tanto se harán mas ricos. Al menos en PoS, el mínimo necesario para stake se puede alcanzar entre muchas personas en conjunto.
En este sentido, PoS es similar a PoW: los dos sistemas se basan en incentivos económicos, en el que los usuarios invierten/bloquean recursos económicos en el protocolo a cambio de recompensas en el mismo. Esto es fundamental para que los mecanismos funcionen como se espera.
PoW favorece enormemente a los ricos: cuanto más grande es el pool que opera, más rentable será. Los grandes inversores adinerados obtienen ganancias mucho más altas. Por esto la minería de PoW se ha industrializado y centralizado tanto.
En contraste, PoS no ofrece tal economía de escala y el inversor que no posee tanto capital tiene exactamente el mismo margen de beneficio que el rico.
PoS – “Week subjectivity”: Para entender este problema, primero hay que comprender cómo se define lo objetivo y subjetivo en un mecanismo de consenso:
PoW es objetiva: el estado actual de la blockchain (original) es siempre el estado que contiene la mayor cantidad de trabajo minero, y por lo tanto, la mas honesta. PoW no tiene el problema de la subjetividad.
Los sistemas que utilizan las redes sociales como consenso (Ej: Ripple) son subjetivos: un nuevo nodo que no conoce nada más que el protocolo puede ser convencido por un atacante de que sus 100000 nodos son confiables, y sin reputación no hay forma de lidiar con ese ataque.
Weak Subjectivity (Subjetividad débil): un nuevo nodo que ingresa a la red por primera vez sin ningún conocimiento previo excepto el estado de la blockchain de hace menos de N bloques (que se sabe que son válidos) puede llegar de forma independiente a la misma conclusión que el resto de los nodos de la red en el estado actual.
A pesar de su nombre, el escenario de ataque del 51% en realidad no requiere el 51% del hashrate. Un ataque de este tipo se puede intentar con un % menor de hashrate. El 51% es simplemente el % en el que casi se garantiza que un ataque de este tipo tenga éxito. Con menos hashrate, la probabilidad de éxito se reduce porque otros mineros controlan la generación de otros bloques “honestos”, pero no resulta imposible de cometer.
Para crear bloques maliciosos pero válidos de manera consistente, necesitaría más del 51% del hashpower de la red para vencer a todos los demás. Y el gasto de energía podría incluso superar las ganancias que obtendría en un ataque. Algunos tipos de ataques 51%:
Antecedentes de 51%: En julio del 2014, un pool de minería llamado Ghash (hoy extinto) controló más del 51% del hashrate de Bitcoin por un período corto de tiempo, pero los mismos usuarios abandonaron rápidamente el pool para disminuir el hashrate concentrado y evitar un eventual ataque a la red. A raíz de este evento, Peter Todd, un conocido desarrollador en Bitcoin vendió el 50% de su posición en $BTC argumentando su preocupación. Desde Ghash hicieron un post en Reddit “abiertos” a discutir soluciones, pero lo único que lograron fue crear más dudas escudándose en justificaciones pobres de sentido. Ah, y no respondieron ni una pregunta.
Esta no fue la primera vez que este tipo de ataque estuvo cerca de suceder: En enero del mismo año, el mismo pool de minería (Ghash) estuvo en control del 45% del hashrate, pero
Aunque desde Ghash prometieron que no excederían el 40% del hashrate y que nunca participarían en un ataque del 51%, el punto principal de que una blockchain sea trustless, es justamente no tener que confiar en un ente centralizado. No importa que tanto prometan ni que tan confiables sean, en primer lugar no deberían tener tanto poder. Las corporaciones buscan maximizar beneficios, no tienen otro incentivo que el de hacer dinero.
PoW no es fácilmente escalable. Con este sistema, cada bloque minado está limitado a contener una cierta cantidad de transacciones, esto es conocido como block-size. En Ethereum, se crea un bloque nuevo cada 14 segundos (13 txs x segundo aprox). En Bitcoin, el número asciende a 10 minutos por bloque creado (7 txs x segundo aprox.)
Esto significa que si hay transacciones pendientes que no logran entrar en un bloque (por el block-size), se retrasarán y el usuario deberá esperar a la creación de un nuevo bloque para que se incluya su transacción, pudiendo incluso retrasarse aún más si la red está congestionada.
Si bien PoS no resuelve por completo el problema de escalar la red, < en el caso del conjunto de soluciones que incluye Ethereum 2.0 > traerá consigo implementaciones tal como el sharding: el cual reducirá la congestión de la red y aumentará las TPS mediante la creación de nuevas chains, conocidas como ‘shards’ en donde cada shard tendrá su conjunto de nodos creando y validando bloques.
Con Ethereum 2.0, el sharding dividirá la blockchain en 64 chains nuevas, llevando a la red a procesar transacciones x64 veces más rápido que la actual en PoW.
Mientras que en PoW se requiere sacrificar la seguridad de la red para escalar, en PoS se puede lograr con la misma seguridad.
Si bien no hay una definición universal para acordar qué requiere una blockchain para alcanzar un cierto grado de descentralización, podemos medirla por medio de varios parámetros y/o cuestionamientos:
¿Cuáles son los requerimientos para correr un nodo? Entendiendo que los requerimientos pueden ser técnicos (hardware) y/o económicos (cantidad de tokens nominales)
¿Es posible que la gente de a pie cuente con un nodo completo en su casa? ¿O es tan alto el nivel de exigencia que solo se guarda para unos pocos privilegiados? ¿Cuántos nodos están asegurando la red? ¿Qué porcentaje de los nodos guardan una copia completa de la blockchain, partiendo desde el bloque génesis?
¿Qué tan distribuidos se encuentran los nodos a través del mundo? ¿Están mayormente agrupados en un país/región? ¿Hay grandes empresas que controlan un gran porcentaje del hashrate/stake? ¿Es posible desarrollar sobre la chain libremente, o es necesario un permiso?
¿Cómo se trató la distribución inicial de tokens de la blockchain en cuestión? ¿Un porcentaje < 40-50 % de los tokens se encuentra en manos de insiders? ¿O la repartija fue justa para que todos puedan acceder tempranamente? Es preciso observar qué porcentaje obtuvo la comunidad y el ecosistema para tener una visión general sobre quién cuenta con el poder mayoritario.
Todas estas preguntas y más, son necesarias a la hora de analizar la descentralización de una red, siempre teniendo en cuenta el contexto de cada blockchain en particular, sus casos de uso y balanceando los tradeoffs entre descentralización, escalabilidad y seguridad.**
**
PoW es lo suficientemente descentralizado: no es muy difícil conseguir una GPU/CPU y empezar a minar. Sin embargo, hay puntos que vale la pena remarcar:
ASICs*: Son máquinas especializadas para minar cryptomonedas y bastante costosas
PoS es igualmente descentralizado (en el caso de Ethereum 2.0), cualquiera puede correr un validador teniendo el suficiente token requerido por el protocolo en su poder. Pero como con PoW, es preciso remarcar algunas cosas:
En PoW las posibles ganancias a obtener dependen de factores exógenos a crypto: ¿Cuánto hardware puedo comprar a la vez (descuento por mayor)? ¿Tengo conexiones especiales con los fabricantes de hardware para poder obtener lo más nuevo anticipadamente?
Es sensato preguntarse: Si yo fuese un fabricante de ASICs líder en el mercado, ¿Los lanzaría al consumidor apenas se fabrican? ¿O bien los usaría a mi favor para minar, y luego vender las unidades ya usadas al mercado?
A diferencia de los ASICs/GPU/CPU, los tokens depositados en stake no se deprecian (sin considerar la volatilidad), y cuando queremos dejar de ser validadores/delegantes, retiramos el stake y estamos en poder de nuestros tokens nuevamente sin mayor problema.
En PoS, el único "costo" en el que se incurre para asegurar la red es el hecho de no poder mover los tokens a voluntad mientras están en stake. Mientras que en PoW, el "costo" de mantener el consenso es gastar electricidad real.
En contraste con PoS, en donde para adquirir los tokens para bloquear en stake se deben adquirir en 1) un CEX, donde en general el fee por swapear tokens es porcentual, por lo tanto: más compras, más pagas. 2) un DEX, donde se debe tener en consideración: el fee que se paga a los liquidity provider (porcentual), el fee de la red en la que se opera, slippage/price impact dependiendo la liquidez que haya.
En resumen, en PoS si compras más, pagas más; en cambio, en PoW si compras más, pagas menos.
A continuación, nos enfocamos en comparar las métricas que miden el número de nodos, los requerimientos de hardware para correr uno, su distribución a nivel mundial y el porcentaje de concentración en cuanto a locación del hashrate/stake de las principales blockchains operativas actuales por TVL acorde a Defi Llama. Teniendo en cuenta estos datos podemos tener una visión general de cuán difícil sería atacar la blockchain.
Tomando la red de Ethereum como una blockchain con un grado de descentralización alto y Binance Smart Chain en el extremo opuesto al ser extremadamente centralizada, podemos evaluar las redes y tratar de ubicarlas en algún punto sobre ésta línea para tener noción de su estado de descentralización actual.
En septiembre de 2019, los 4 pools de minería principales (Sparkpool, Ethermine, F2pool, Nanopool) producían el 72,23% de todos los bloques en Ethereum.
Esto no es muy diferente hoy en 2O21. Actualmente el 62% de los bloques en Ethereum son minados por los 3 pools de minería principales (Ethermine, F2Pool Old y Hiveon Pool).
Estados Unidos lidera el ranking de nodos en la red de Ethereum con el 36%, seguido por Alemania (17%) y Reino Unido (16%).
En Bitcoin, los 4 pools de minería más grandes actualmente controlan más del 57% de los bloques minados.
AntPool y BTC.com (22,4% en conjunto) son controlados por Bitmain, la empresa diseñadora de ASICs más grande del mundo. En 2016, el fundador de Bitmain admitía públicamente que desde AntPool estaban minando bloques vacíos. En 2018, esta empresa estuvo en control del 42% aproximadamente.
A partir de julio de 2021 el ecosistema se transformó drásticamente, a raíz del anuncio del gobierno de China en el que dispone la ilegalidad de las actividades en criptomonedas y la prohibición de la minería en el país.
Como consecuencia de este comunicado, los grandes pools de minería con actividades en China dejaron de aceptar usuarios del país asiático y el hashrate de la red dió un giro significativo.
Para fines de marzo de 2021, China controlaba +78% del hashrate de la red. Luego del anuncio del gobierno el hashrate del país se desplomó a ~0% en poco menos de 1 mes.
Desde la Universidad de Cambridge informan que desde junio de 2021 los datos y estadísticas no están disponibles ya que se desconocen por las prohibiciones.
Poco a poco y a causa del éxodo, Estados Unidos fue reuniendo la mayor tasa del protocolo. En julio y luego de la prohibición en China, USA empleaba +35% del poder de hash.
Actualmente (agosto 2O21) Estados Unidos desplazó a todos los países en términos de minería, al contar con la mayor concentración de hashrate de Bitcoin dominando +42% de la red, seguido por Kazajistán con el 22%.
Eth2 (Beacon Chain), donde ya se implementa Proof of Stake, tiene actualmente alrededor de 4500 nodos individuales. Estados Unidos se encuentra nuevamente 1º con el 27,1% seguido por Alemania (22,2%) y Francia (12,8%).
Los requerimientos de hardware para correr un nodo de eth2 son bajos y cualquiera puede ejecutar un nodo local para participar en el consenso de la red.
De los nodos individuales, se desprenden 250.000 validadores corriendo en la red. Pero éstos no son validadores únicos operando por separado. Ya que para convertirse en validador se requieren lockear 32 ETH, muchos de los mismos son controlados por una sola entidad con miles de ETH.
El 16,2% de éstos es controlado por exchanges centralizados (Binance, Huobi y mayormente Kraken con el 11,47%). Lido - una metapool controlado por una DAO que engloba varios pools de staking - se posiciona 3º en la lista con el 11,86% de los validadores.
El gráfico no muestra el porcentaje de posesión en manos del exchange Coinbase, pero definitivamente está presente y no es un porcentaje menor.
En Eth2 hay alrededor de 8M de ETH en stake asegurando la red, valuados en $38B de dólares al momento de escribir esto. Para atacar la blockchain se necesitaría dejar en stake aproximadamente 2.5M de ETH (~$12.2M de dólares actualmente), que serían quemados en su mayoría luego del ataque.
En Fantom Opera, actualmente hay 49 validadores operando en la red. El 46,14% de los FTM en stake provienen de los 4 validadores principales (GoFantom, Hyperblocks Pro, Binary Fintech y uno no identificado). Para convertirse en validador es necesario un stake mínimo de 500.000 FTM, $1.3M al día de hoy.
El 63% de los $FTM en circulación (y 51% del total supply de $FTM) se encuentran en stake asegurando la red, valuados hoy en $409M, por lo que atacar la red costaría aprox. $200M
En Solana, actualmente hay 1037 validadores de los cuales 19 controlan el 33% del stake en la red. Según Solanabeach, aproximadamente el 45% de los validadores (490) se concentran en Estados Unidos.
Si bien es cierto que no hay un mínimo necesario de SOL para convertirse en validador, también es preciso mencionar que los requerimientos de hardware para correr un validador son excesivamente altos, convirtiéndose en una barrera de entrada bastante grande.
En Avalanche, un total de 1051 validadores al día de hoy aseguran la red, de los cuales el 33% del stake acumulado se encuentra distribuido en 27 validadores.
Los requerimientos de hardware son bajos y es necesario un mínimo de 2000 AVAX para ser validador, unos 190k al dia de hoy.
Cabe mencionar que ninguno de los 27 principales validadores acumulan más que el 1,2% del stake total. Avalanche no implementa el castigo mediante slashing de tokens.
Binance Smart Chain es un caso especial. Los requerimientos de hardware son relativamente altos comparados con la competencia. La red está limitada y actualmente solo se permite que haya 21 validadores operativos. De los 21 validadores, 7 concentran el 33% del stake de la red.
Los datos mostrados arriba son aproximados y pueden e irán variando con el tiempo. Si bien es preciso tener en cuenta las métricas que miden el total de validadores y el cumulative stake en la red, éstos datos bien podrían estar sesgados o no mostrar correctamente la realidad, ya que una entidad central con la suficiente motivación económica podría estar controlando el stake mayoritario de la/s rede/s distribuyendo su stake en varios validadores.
Ningún sistema es perfecto y libre de fallas. No hay que olvidar que todas estas tecnologías nuevas y complejas se encuentran en un constante proceso de prueba y error, el que IMHO, nunca terminará ya que los avances/descubrimientos y sus posibles problemas quedan aún por descubrir. Lo importante es ser analíticos y no dejarse llevar por subjetividades que lleven a fanatizarse por una opción por encima de otra.
Los mecanismos son distintos, no necesariamente mejores o peores.
¿Qué mecanismo es mejor? ¿PoW o PoS? Busca en tu corazón, y encontrarás la respuesta.
Fuentes y links de utilidad: