¿Cómo funciona la tecnología del explorador de bloques?

Si hace clic en una billetera aleatoria en el explorador de bloques, obtiene información instantánea de todas las transacciones, el saldo, etc. Mi pregunta es, ¿cómo funciona exactamente su tecnología? ¿Transforman archivos blk????.dat en algún tipo de base de datos y luego leen las cosas de la base de datos? Si es así, ¿qué tecnología utilizan para poner todas las transacciones en la base de datos? ¿Hay algún protocolo que trate de hacer tan bien con el programa?

Cuando abro archivos blk.dat, solo veo caracteres extraños y, por lo que he leído hasta ahora, la información no es realmente transparente.

Respuestas (1)

Los archivos blk.dat contienen datos de bloques en formato sin formato. También se mantiene un índice leveldb que ayuda a buscar rápidamente bloques/utxo. Puede encontrar los detalles aquí y aquí .

Blockexplorers no leerá directamente estos archivos. No es seguro que múltiples procesos accedan a leveldb al mismo tiempo (blockexplorer y proceso de nodo bitcoin). Aquí hay un breve resumen de lo que hará un explorador de bloques:

  1. Cree tablas que tengan índices para almacenar bloques/transacciones/direcciones
  2. Realice llamadas RPC / escuche las devoluciones de llamada a bitcoind para obtener los datos más recientes
  3. Almacene los datos obtenidos en tablas
  4. Ir a 2.

La mayoría de los exploradores de bloques de uso común se bifurcan del código fuente abierto a continuación: