Description de l'étiquette scilab
Je me suis trouvé incapable de répondre à ce qui arriverait dans ce cas, si elle est ici:
Un hacker (
M. Hacker
) passeUTXO_1
etUTXO_2
dansTX_1
, du dépôt de la valeur monétaire de tous lesTX_1
's sorties dans unService
(par exemple un processeur de paiement).Un utilisateur légitime (
M. pièce de théâtre
) passeUTXO_3
dansTX_2
. Encore une fois,TX_2
's sorties objectifs le mêmeService
Les deux
TX_1
etTX_2
le faire dans le même bloc, et obtenir une confirmation par le réseau.Le
Service
immédiatement passeUTXO_1
etUTXO_3
dansTX_3
à payerà M. Légitime
etUTXO_2
dansTX_4
à payerà M. Smith
.Monsieur le Pirate
décide alors de double-passerTX_1
et pour cette raison, il créeTX_5
qui "redirige" toutes les sorties à lui-même.M. Hacker
est un mineur, de sorte qu'il est capable d'effectuer toutes les hachage de travail à faire de la double-passer de succès. Il est aussi de la chance et de la double-passer réussit.
La question est donc:
Ont tous TXs avant
TX_5
(TXs: 1,2,3,4) été invalidé ou justeTX_1
,TX_3
etTX_4
(TX_3
etTX_4
passé une sortie précédente contrôlé parTX_1
qui a été double-passé)?M. pièce de théâtre
pourrait voir 1 de confirmation pourTX_2
avant le double des dépenses. Que voit-il maintenant? Ce n'Mr Smith
voir dans son portefeuille, avant et après le double des dépenses?Le
Service
se rend compte qu'un double des dépenses a eu lieu et a besoin de récupérer à partir de cette panne. Que faut-il faire pour revenir à un fonctionnement normal? A-t-elle d'envoyer à nouveau tous les TXs? Faut-il encore avoir en place les dépôts effectués par desTX_2
après le double des dépenses ou faut-il faire quelque chose pour réclamer ces sorties?Comment le
Service de
prévenirM. Hacker
, qui a aussi beaucoup d'argent à dépenser, à partir de répéter le même processus pour toujours juste pour ruiner leService
's un fonctionnement en douceur, plutôt que (leService
) en attente de plus de confirmations avant d'envoyer le paiement?