Esto es lo que tengo hasta ahora:
¿El móvil puede configurar un filtro de floración, para que algunas de las teclas incluidas no sean suyas?
Además, cuando el nodo recibe una solicitud, ¿necesita escanear la cadena de bloques nuevamente para obtener el historial de transacciones?
Un móvil se conecta a un nodo mediante rpc.
Los nodos no se conectan entre sí mediante RPC. RPC es para propietarios de nodos y, por lo general, tiene una contraseña larga.
Luego, el móvil le pide al nodo que le dé un conjunto de transacciones para un conjunto de claves públicas.
No exactamente. En primer lugar, los encabezados de bloque tienen una parte denominada "raíz de Merkle" que permite a los clientes verificar si una transacción estaba en el bloque. En teoría, como se describe en el documento técnico, los nodos SPV pueden mantener encabezados de bloque y solicitar a otros nodos una prueba de Merkle de su transacción. En la práctica, es más complicado. Actualmente el 99% de los nodos SPV utilizan BIP 37 . Además, se están investigando mejores métodos SPV como BIP 157 y Neutrino .
Además, cuando el nodo recibe una solicitud, ¿necesita escanear la cadena de bloques nuevamente para obtener el historial de transacciones?
Los nodos necesitan escanear toda la cadena de bloques en busca de una transacción si no conocen la altura del bloque, a menos que usen txindex=1
, etc. Si lo saben, acceder a ella es trivial.
kyle graham
MCCCS
gettxout
Ellos no usan Esto es lo que usan . Además, los SPV nunca entregan las claves públicas, eso dañaría la privacidad.kyle graham
MCCCS
merkleblock
, los nodos envían [todas las transacciones en esos bloques] hashes. Filteradd le dice a los nodos qué claves públicas le interesan al SPV. Si el bloque no pasó el filtro de floración, los nodos pueden omitir los hash tx y guardar los datos. Puede dar más detalles: bitcoin.stackexchange.com/a/11721/38618kyle graham