¿Qué es un cliente SPV?

He visto al cliente SPV mencionado en varios lugares. ¿Qué es exactamente un cliente SPV? ¿En qué se diferencia de un cliente estándar?

Respuestas (2)

Verificación de pago simplificada:

Una implementación de Bitcoin que no verifica todo, sino que se basa en conectarse a un nodo de confianza o confía en una gran dificultad como proxy para la prueba de validez. BitCoinJ es una implementación de este modo.

Lea también:

MultiBit , Bitcoin Wallet para Android y Electrum son ejemplos de clientes SPV.

Entonces, ¿"SPV" se contrasta con el nodo "completo"? ¿O hay una tercera clase?
@Pacerier Sí. La comparación es con nodo completo.

SPV es Verificación de pago simplificada y generalmente se contrasta con "ejecutar un nodo completo". SPV existe desde la encarnación original de bitcoin, ha estado allí desde el principio. Es una manera perfectamente buena de operar una billetera.

La red bitcoin se basa en ciertas "reglas de consenso" para operar. Una de estas reglas es que no puedes gastar dos veces algo que posees. Cuando envía una transacción a la red de bitcoin, eventualmente se escribirá en la cadena de bloques. Los nodos completos descargan la cadena de bloques completa y verifican cada transacción en ella para cumplir con las reglas. Esto también es importante para que usted reciba fondos, ya que garantiza que lo que alguien gastó al enviárselo se gastó legítimamente y, por lo tanto, es suyo.

Una billetera SPV solo descarga una cierta parte de la cadena de bloques, los "encabezados de bloque". Cada bloque de la cadena de bloques apunta al bloque anterior. El identificador utilizado para identificar un bloque es un "hash" de su encabezado. Encontrar ese hash a menudo se conoce como el "rompecabezas criptográfico" o el "desafío de prueba de trabajo" que un minero debe resolver para agregar un bloque a la cadena. El hash tiene que ajustarse a una cierta dificultad que se ajusta dinámicamente en la red. Para asegurarse de que no lo engañen, debe escanear el historial más reciente de la cadena de bloques para comprender cuál es la dificultad actual y si los nuevos bloques que ve son realmente válidos de acuerdo con esa dificultad. Esto es mucho menos datos que la cadena de bloques completa.

Otra cosa que hace un nodo completo es retransmitir transacciones. Bitcoin es una red P2P, lo que significa que todos hablan con todos los demás. En la práctica, no todas las notas 10000 se comunican con todos los demás nodos (¡eso requeriría 100000000 conexiones!), sino con un subconjunto de nodos. Entonces, para que su transacción llegue a un minero que eventualmente la coloca en un bloque, es posible que deba ser retransmitida por un nodo.

Una billetera SPV no es menos segura para un usuario final. Le dirá correctamente qué cantidad de bitcoin puede gastar y si una cantidad de bitcoin que se le envió realmente se puede gastar de manera confiable (es decir, si es de su propiedad). Mi redacción puede parecer un poco extraña, eso se debe a que, técnicamente, nunca posee nada, excepto algunas claves criptográficas que le permiten gastar ciertos fondos que se le enviaron.

Es posible que haya leído que es mejor ejecutar un nodo completo. Esta afirmación es cierta con respecto a la red en su conjunto: cuantos más nodos hagan cumplir las reglas del sistema, mejor. Cuantos más nodos operen y transmitan transacciones, mejor. Piense en el principio de los cuatro ojos con esteroides. Pero no es factible ni posible que todos los usuarios ejecuten un nodo completo. Por ejemplo, si tiene una billetera en su dispositivo móvil que podría no tener suficientes recursos para validar todas y cada una de las transacciones en la red, o no tener suficiente ancho de banda para participar.

Para resumir: si no hubiera nodos completos, no habría una red bitcoin. Pero para usar bitcoin para enviar/recibir fondos no es necesario ejecutar un nodo completo. Su propia seguridad no se ve afectada. En mi humilde opinión, es mejor participar y, por lo tanto, aumentar el valor de bitcoins como una utilidad que no participar en absoluto. También es mejor usar su propia billetera que, por ejemplo, una billetera web en cualquier intercambio.

Lecturas adicionales:

"No recomendaría mantener fondos en una billetera SPV", - Jonas Schnelli en.bitnovosti.com/2018/07/06/…
@StephenGornick FYI, está fuera de línea y el archivo de Internet no tiene una copia. (Esta es la razón por la que se desaconsejan las respuestas de solo enlace (y, por extensión, los comentarios)...)