Hay un par de formas de iniciar un nodo cliente de blockchain. La más utilizada es la DNS Seed . En la mayoría de los monederos, hay una lista de registros DNS codificados que apuntan a sus pares.
Es posible descargar peers.dat
desde el sitio oficial de blockchain, y hacer que el nodo del cliente se conecte a compañeros de ese archivo. Esta no es la forma más utilizada, pero funciona.
La forma menos utilizada es conectarse al canal IRC para la cadena de bloques, preguntar a los usuarios allí y conectarse con el par a mano. No se usa hoy en día para la mayoría absoluta de monedas, pero se puede usar para personas pequeñas y con poco conocimiento.
Después de descubrir y conectarse con el primer par, el nodo escuchará las transacciones y creará su propia lista de nodos.
En el software de bitcoin (y en casi todas las demás monedas), hay un bloque especial llamado Genesis Block que están codificados en la aplicación. De esta manera, puede conectarse a cualquier par, de confianza o no, y solicitar el bloque de génesis. Teniendo el bloque de génesis y una lista de compañeros, puede pedir a diferentes pares diferentes bloques y calcular sus hashes siguiendo la cadena, y ver si sus hashes coinciden. Con suficientes nodos conocidos, es prácticamente imposible (matemáticamente posible pero muy, muy poco probable) que los nodos engañen a su cliente. Es como tener docenas de extraños completos que nunca se comunicaron antes de contarles los mismos números falsos en el sorteo de lotería.