Anar al contingut

Prova de treball

De L'Enciclopèdia, la wikipedia en valencià

Un algoritme de prova de treball, sistema de prova de treball o simplement sistema PoW (de l'anglés Proof-Of-Work system) és un sistema que té com a objectiu desincentivar i dificultar comportaments indeseados com ataques DDoS o spam. Requerix que el client del servici realise algun tipo de treball que tinga cert cost i que és verificat fàcilment en la part del servidor. Normalment el treball consistix en realisar un còmput en l'ordenador del client.[1]

La característica clau de l'estratègia és la seua asimetria: El treball deu ser moderadament difícil (pero factible) pel costat del client, pero fàcil de verificar pel costat del servidor.[1]

Despuix del llançament de Bitcoin en 2009 i del sorgiment de les criptomonedas el terme es va fer molt més conegut pel seu us per a dotar de seguritat a sistemes monetaris peer-to-peer.

Tipos

Existixen dos classes de protocols per als sistemes PoW:

  • Els protocols de desafiu-resposta assumixen un enllaç interactiu directe entre el client i el servidor. El servidor elegix un desafiu, per eixemple un element d'un conjunt en una propietat específica; despuix el client troba una resposta apropiada en el conjunt, la qual és enviada de regrés al servidor, que procedix a verificar-la. Com el desafiu és elegit en el moment pel servidor, la seua dificultat pot ser adaptada segons la càrrega actual del servici. El treball per part del client està acotat i el seu varianza és baixa.
  • Els protocols de solució-verificació no assumixen un enllaç com en el cas anterior: per açò el desafiu deu ser auto-impost ans que el client puga buscar una solució, i el servidor deu verificar tant el desafiu elegit com la solució trobada. La majoria dels casos corresponen a procediments iteratius provabilístics no acotats en alta varianza, com#cash.

Més encara, les funcions utilisades pels distints protocols poden ser de 2 tipos:

  • CPU-bound, a on el còmput s'eixecuta a la velocitat del processador, que canvia visiblement en el temps seguint la llei de Moore, i també de servidors dedicats a dispositius portàtils.
  • Memory-bound[2][3][4] a on la velocitat de còmput depén de la velocitat d'accés a la memòria principal (que a la seua volta pot estar llimitada per latencia o ample de banda insuficient), la qual s'espera que siga menys sensitiva a les evolucions d'hardware.

Finalment, alguns sistemes POW oferixen còmput de drecera que permeten a participants que coneixen algun secret, típicament una clau privada, accedir al servici generant treball mínim. L'idea és que, per eixemple, un amo d'una llista de correus puga enviar mensages a tots els inscrits sense incórrer en un alt cost. Si esta característica és o no desijable depén de l'escenari en que s'use el sistema POW.

Implementacions

A lo llarc de l'història algoritmes de prova de treball han segut proposts i/o implementats en una varietat de sistemes entre els quals podem mencionar:

#cash

Artícul principal → #cash.
  1. cash és un método que agrega un string a l'encapçalat d'un correu electrònic que prova que l'emissor va dedicar una miqueta de temps per a calcular dit string. L'idea és que com l'emissor li va dedicar temps a calcular el string i enviar el correu, és improvable que este siga spam. Per un atre costat el receptor pot, en un cost computacional casi nul, verificar que el string és vàlit.

Reusable Proof of Work

Artícul principal → Reusable Proof Of Work.


Precursors de Bitcoin i basats en #cash, un sistema RPOW diferix d'un sistema POW normal en que en acabant de que un servidor rep una prova de treball ("moneda POW") d'un client, est pot canviar esta moneda ya gastada per una atra que no ho estiga, que pot ser utilisada per a accedir a un atre servidor que també requerixca l'entrega d'una prova de treball. D'esta manera el servidor s'aforra el cost de fer el treball requerit, usant en canvi el treball que est ha rebut pels seus servicis. L'atre servidor a la seua volta també pot canviar la prova de treball rebuda per una atra que puga usar.

Criptomonedas

Bitcoin i Un gran número de criptomonedas, utilisa sistemes de prova de treball com a mecanisme per a controlar, llimitar i validar la creació d'unitats monetàries, aixina com per a verificar la validea de les transaccions i evitar el doble despesa de fondos. En este cas, el sistema de prova de treball permet la transferència de valor descentralisada entre els participants de la ret sense dependre de cap institució centralisada.[5][6] Entre les criptomonedas alternatives que implementen algoritmes de prova de treball purs o híbrits es poden mencionar a Ethereum, Bitcoin Cash, Nano i Litecoin.

Elecció de l'algoritme de prova de treball

En l'experiència d'us dels algoritme de prova de treball, especialment en Bitcoin, s'ha argumentat que l'algoritme elegit seria millor si complira certes restriccions:

  • Resistència front a tecnologies ASIC. En Bitcoin l'especialisació del procés de minat, per a fer-ho rendable, està provocant que el poder per a crear blocs s'estiga centralisant en aquells que ampren economies d'escala per a competir i invertix en tecnologies ASIC. Açò provoca la centralisació del poder de producció de blocs en entitats externes. Per este inconvenient si es vol usar algoritmes de prova de treball és bo que siguen resistents a la tecnologia ASIC.[7]
  • Prova de treball útil de l'anglés Proof-Of-Useful-Work. En Bitcoin la cantitat de treball computacional que hui dia es gasta en el procés de mineria és extraordinari. S'estima que s'han gastat varis centenars de megavats. Per això es planteja usar algoritmes de consens per prova de treball de tal forma que el treball que es realise es puga aprofitar per a obtindre algun benefici. Per eixemple l'algoritme de consens de Primecoin (busquen cosins en certes característiques) i de Permacoin (basat en almagasenament distribuït d'informació donant lloc a la cridada prova d'almagasenament de l'anglés proof-of-storage o prova de recuperació de l'anglés proof-of-retrievability).[7]

Referències

  1. ↑ 1,0 1,1 Adam Back. [1] Popular proof-of-work system. First announce in March 1997.
  2. ↑ Martín Abadi, Mike Burrows, Mark Manasse, and Ted Wobber. Moderately hard, memory-bound functions. In 10th Annual Network and Distributed System Security Symposium (NDSS), Sant Diego, CA, USA, February 2003. Also in ACM Trans. Inter. Tech., 5(2):299-327, 2005.
  3. ↑ Cynthia Dwork, Andrew Goldberg, and Moni Naor. On memory-bound functions for fighting spam. In Advances in Cryptology - CRYPTO 2003, volume 2729 of Lecture Notes in Computer Science, pages 426-444. Springer, 2003.
  4. ↑ Fabien Coelho. Exponential memory-bound functions for proof of work protocols. Cryptology ePrint Archive, Report [2].
  5. ↑ Lowenthal, Thomas (2011). "Bitcoin: inside the encryted, peer-to-peer digital currency", ArsTechnica. com (en anglés)
  6. ↑ IEEE. org (ed.): «Bitcoin: The Crytoanarchists' Answer to Cash» (en anglés). Consultat el 12 de juny de 2012.
  7. ↑ 7,0 7,1 Bitcoin and Cryptocurrency Technologies. Chapter 8
    • Archivat el 1 de decembre de 2016 archivat en Wayback Machine. Arvind Narayanan, Joseph Bonneau, Edward Felten, Andrew Miller, Steven Goldfeder. 25 d'agost 2015

Enllaços externs

  • (Inglés)
  • Sistema de Finney (Inglés)
  • Bit gold. Descriu un sistema monetari complet (including generation, storage, assay, and transfer) basat en funcions POW, i el problema de l'arquitectura de màquines generat per l'us d'estes funcions. (Inglés)