Comment laisser le surplus aller à la collecte de fonds dans le script de financement participatif ANYONECANPAY ?
SIGHASH_ANYONECANPAY. Comme il y a toujours une sortie avec une valeur prédéfinie, comme vous l’avez mentionné, tout excédent sera traité comme des frais de minage dans ce cas.
- Les participants sont prêts à donner de l’argent, et,
- Ils veulent récupérer leur argent si le financement participatif échoue, c’est-à-dire que le plafond n’est pas atteint
Le problème est que si le financement participatif avec un plafond de 10 BTC est atteint, alors qu’en fin de compte, il reçoit un don total de 11 BTC, comment la collecte de fonds peut-elle également obtenir 1 BTC supplémentaire?
le 1 BTC supplémentaire sera traité comme des frais de transaction. En empruntant quelques idées au réseau Lightning, je pense qu’une solution réalisable peut être obtenue en utilisant Bitcoin Script. Voici le brouillon,
Scénario
Un financement participatif avec un plafond de 10 BTC est lancé. Si le plafond n’est pas atteint dans les 60 jours, l’argent est restitué aux participants. Sinon, tout l’argent va à la collecte de fonds.
Première étape – le participant envoie de l’argent
et le hache pour produire payment_hash (par exemple, en utilisant RIPEMD160)
- Sinon, si 60 jours se sont écoulés, l’argent va au participant
l’argent va à la collecte de fonds
Le scénario,
# À la collecte de fonds si le secret de paiement est fourni
# Au participant après 60 jours
et le participant peut le dépenser en utilisant 0.
Deuxième étape – la collecte de fonds collecte / retourne l’argent
La collecte de fonds pourra obtenir tout l’argent, même au-delà du plafond. Pour dépenser les extrants, la collecte de fonds utilise 1 pour les déverrouiller
Le problème du surplus est donc résolu, mais cette approche présente de nombreux inconvénients,
-
bien qu’elle puisse être optimisée
- Les participants doivent savoir combien d’argent a été collecté. Cela nécessite que la collecte de fonds collecte toutes les transactions et les montre à tous les participants, ce qui peut nécessiter un service centralisé, par exemple un site Web