Prueba de trabajo
Un sistema (o protocolo, o función) de prueba de trabajo (proof-of-work, POW) es una medida económica para disuadir de ataques de denegación de servicio y otros abusos de servicios, como el spam, en una red, exigiendo cierto trabajo al solicitante del servicio, lo que suele significar tiempo de procesamiento por parte de un ordenador. El concepto se debe a Dwork y Naor. Una característica clave de estos esquemas es su asimetría: el trabajo debe ser moderadamente difícil (pero factible) para el solicitante, pero fácil de comprobar para el proveedor del servicio. Esta idea también se conoce como función de coste de la CPU, rompecabezas del cliente, rompecabezas computacional o función de precio de la CPU. Es distinto de un CAPTCHA, que está pensado para que un humano lo resuelva rápidamente, en lugar de un ordenador. Un sistema popular -utilizado en la minería de Bitcoin y Hashcash- utiliza inversiones parciales de hash para demostrar que se ha realizado un trabajo, como muestra de buena voluntad para enviar un correo electrónico. Por ejemplo, la siguiente cabecera representa unos 252 cálculos hash para enviar un mensaje a [email protected] el 19 de enero de 2038: X-Hashcash: 1:52:380119:[email protected]:::9B760005E92F0DAE Se verifica con un solo cálculo comprobando que el hash SHA-1 del sello (omitir la parte "X-Hashcash: ") empieza por 52 ceros binarios, es decir, 13 ceros hexadecimales: 0000000000000756af69e2ffbdb930261873cd71 Está sujeto a debate si los sistemas POW pueden realmente resolver un problema concreto de denegación de servicio, como el problema del spam; el sistema debe hacer que el envío de mensajes de spam sea manifiestamente improductivo para el spammer, pero tampoco debe impedir que los usuarios legítimos envíen sus mensajes. Los sistemas de prueba de trabajo se utilizan como primitiva en otros sistemas criptográficos más complejos, como Bitcoin, que utiliza un sistema similar a Hashcash.
