Comment un portefeuille matériel interagit-il avec le réseau Bitcoin?
J'ai essayé de comprendre le principe de la façon dont le portefeuille matériel envoie des transactions à une autre adresse Bitcoin car il n'est pas connecté via un nœud complet à la blockchain. J'ai trouvé cette réponse: comment les portefeuilles matériels communiquent-ils avec le monde extérieur?
Dois-je bien comprendre que chaque entreprise de portefeuille matériel comme Ledger, Trezor ou Shiftcrypto exécute un nœud complet (par exemple, bitcoind) dans le réseau de son entreprise et chaque portefeuille matériel, qui est connecté via le logiciel de l'entreprise installé localement sur l'ordinateur de l'expéditeur, envoie simplement une demande à ce nœud complet comme ça?
bitcoin-cli createrawtransaction "[{\"txid\" : \"mytxid\",\"vout\":0}]" "{\"myaddress\":0.01}"
Si tel est le cas, les entreprises gèrent-elles leur propre nœud complet (source fermée) qui fonctionne différemment? La seule exception semble être BitBoxBase de ShiftCrypto, qui est open source.
Mais au fond, le principe de la gestion des transactions entre le portefeuille matériel et la blockchain est toujours le même, non? Ainsi, chaque entreprise gère son propre nœud complet. Seul le "protocole" de transmission entre le portefeuille matériel et ce nœud complet est différent et non standardisé, non?
Réponses
Non.
La société de portefeuille matériel gère parfois un nœud, mais vous pouvez tout aussi facilement utiliser un client comme Electrum à la place et utiliser des nœuds Electrum à la place avec votre portefeuille matériel. Tout le nœud est utilisé pour vérifier les transactions et publier les transactions.
Le logiciel du portefeuille utilisera le xpub du portefeuille matériel pour vérifier les paiements que les gens ont envoyés à vos adresses, en utilisant l'un de ces nœuds complets distants.
Maintenant, disons que vous avez reçu du Bitcoin et que vous aimeriez le dépenser. Votre logiciel de portefeuille générera une transaction non signée sur votre ordinateur, puis il enverra cette transaction non signée à votre portefeuille matériel pour qu'elle soit signée, puis le logiciel de portefeuille utilisera le nœud complet pour publier cette transaction signée.
Ainsi, comme la réponse à laquelle vous avez lié le lien l'a souligné, tous les nœuds complets sont utilisés pour 1) interroger les données de la blockchain existantes et 2) publier ( ne PAS créer) une transaction brute déjà signée.
Dois-je bien comprendre que chaque entreprise de portefeuille matériel comme Ledger, Trezor ou Shiftcrypto exécute un nœud complet (par exemple, bitcoind) dans le réseau de son entreprise et chaque portefeuille matériel, qui est connecté via le logiciel de l'entreprise installé localement sur l'ordinateur de l'expéditeur, envoie simplement une demande à ce nœud complet comme ça?
Non.
Au niveau de base, un portefeuille matériel n'est qu'un appareil qui peut créer et stocker des clés privées et signer des transactions, le tout dans un environnement hors ligne. La manière dont cet appareil interagit avec le réseau plus large est variable, mais il n'est pas nécessaire d'utiliser les services de nœud du fabricant du portefeuille matériel (notez que cela ne sera généralement pas bon pour la vie privée de l'utilisateur).
Notez que l' interface du portefeuille matériel est un outil qui peut être utilisé pour interagir avec un portefeuille matériel, directement à partir de votre propre nœud bitocin-core. La page github liée mentionne spécifiquement 8 modèles différents de portefeuille matériel actuellement compatibles.