Diferencia (si la hay) entre la prueba de trabajo en la minería de bitcoin y la verificación de la transacción

Estoy tratando de entender la idea de prueba de trabajo para verificar una transacción. Creo que entiendo por qué se necesita una prueba de trabajo para verificar las transacciones (esencialmente para evitar la suplantación de identidad/el doble gasto, etc.).

Pero mi entendimiento es este:

  • la prueba de trabajo para verificar una transacción es la misma que para extraer un nuevo bitcoin
  • si este es el caso, entonces se vuelve cada vez más difícil verificar las transacciones.

Estoy bastante seguro de que la primera declaración es falsa, en cuyo caso me gustaría saber qué es exactamente la prueba de trabajo para verificar una transacción.

Respuestas (3)

Creo que entiendo por qué se necesita una prueba de trabajo para verificar las transacciones (esencialmente para evitar la suplantación de identidad/el doble gasto, etc.).

Esto es correcto.

la prueba de trabajo para verificar una transacción es la misma que para extraer un nuevo bitcoin

Esto también es correcto.

si este es el caso, entonces se vuelve cada vez más difícil verificar las transacciones.

Depende, puede volverse más difícil ya que puede volverse más fácil. Pero pase lo que pase no hay problema con eso.

Explicaciones:

El minero genera bloques cuyo encabezado tiene el hash sha256 más bajo posible hasta que encuentra uno cuyo sha256 es más bajo que el objetivo. Este bloque será válido y luego podrá ser incluido en la cadena de bloques. Dentro del bloque, la primera transacción es diferente de las demás porque no tiene una entrada válida y tiene como salida de transacción una dirección controlada por el minero. Esta dirección recibirá la recompensa del bloque (nuevos bitcoins que se generan con el bloque), así como las tarifas de transacción de las transacciones que se incluyeron en el bloque.

Ahora bien, es cierto que generar nuevos bloques se vuelve cada vez más difícil porque cada vez hay más mineros con material de minería cada vez más sofisticado. Es por eso que el objetivo se vuelve cada vez más bajo para mantener un tiempo promedio entre cada bloque generado de aproximadamente 10 minutos. Pero si los mineros comienzan a dejar de minar bitcoin, el objetivo aumentará y la minería volverá a ser más fácil.

Este post te ayudará a entender un poco mejor cuáles son los diferentes componentes de un bloque. Bitcoin: 285 bytes que cambiaron el mundo

Supongo que mi confusión es la siguiente: si verificar una transacción es tan fácil (o difícil) como extraer un bloque, ¿por qué todos los mineros de bitcoin no extraerían sus propios bloques en lugar de verificar las transacciones? porque extraer tu propio bloque te da (una fracción de) 25 BTC, pero verificar una transacción solo te da el costo de la transacción.
Nada obliga al minero a incluir transacciones en el bloque. Pueden crear bloques vacíos si quieren. Mientras que no hay costo extra (en potencia minera) por incluir transacciones en el bloque.
@SureshVenkat: No es uno u otro, son ambos. El minero realiza un trabajo que verifica las transacciones y extrae nuevas monedas.

El minero (la persona que realiza la prueba de trabajo) no tiene que elegir entre verificar transacciones o extraer nuevas monedas. Él trabaja para encontrar bloques, y con cada bloque simultáneamente verifica transacciones y acuña nuevas monedas. El costo adicional de incluir transacciones en el bloque es insignificante.

ah Creo que ahí estaba mi confusión. Gracias !

De https://en.bitcoin.it/wiki/Proof_of_work : "Una prueba de trabajo es un dato que fue difícil (costoso, lento) de producir para satisfacer ciertos requisitos. Debe ser trivial verificar si los datos satisfacen dichos requisitos".

La extracción de bitcoins implica agrupar un montón de transacciones pendientes, agregar un número aleatorio y calcular el valor hash hasta obtener una con muchos ceros al principio. Dado que los hashes son esencialmente aleatorios, crear uno con muchos ceros significa que probablemente probó muchos números aleatorios antes de obtener uno que resultó en un hash con muchos ceros. Mostrar la lista de transacciones, el número aleatorio y el hash con muchos ceros es una "prueba" de que hiciste mucho "trabajo".

Validar transacciones es muy fácil, ya que solo tienes que volver a calcular el hash con el único número que "funciona" y comprobar que tiene muchos ceros.

La minería se vuelve cada vez más difícil (requiere más ceros) a medida que más personas extraen, pero si tiene éxito, obtiene 25 BTC. La verificación de las transacciones sigue siendo fácil sin importar lo difícil que sea extraerlas, pero no se otorgan Bitcoins por esto.

Un punto de confusión es que normalmente valida como parte de la minería (como comentó Meni Rosenfeld), pero también puede validar sin minar, que es lo que hacen la mayoría de las billeteras de Bitcoin para asegurarse de que muestren la cantidad correcta en su billetera.