Skip to content

Latest commit

 

History

History
14 lines (7 loc) · 2.75 KB

File metadata and controls

14 lines (7 loc) · 2.75 KB

Introduction

A bitcoin transaction requires signatures from all private keys associated with input utxos. A transaction can be broadcast to the blockchain at any time provided the spending conditions and associated signatures are still valid at the time of broadcast. As a result, a transaction can be signed beforehand but broadcast when required. Such a transaction is referred to as a "pre-signed transaction". This transaction can have conditions associated to spending (for example, invest 1000 in this project within 3 months, else refund money to this other address) that refund to a user if not broadcast within a certain interval of time, can have locktimes that automatically render the spending conditions invalid, etc.

If an investor wishes to invest in a project, they could give a pre-signed transaction to the platform guaranteeing their investment if the project reaches its investment threshold. If the investment threshold is reached, the platform checks if the spending conditions and signatures are valid, checks the blockchain to see if the txos are still unspent, and broadcasts the transaction. The investor can also add conditions to investments which are a combination of project conditions and blockchain rules (example: if the project raises atleast 10000 within 1 month, invest 4000 else wait and refund after 3 months if project threshold is not reached), and the platform would check if these conditions are valid at the time of broadcast.

The platform on completion of investment signs transactions paying funds to the developer and contractor but does not publish them until the receiver has marked their role complete and provides proof that the installation was complete. The guarantor gives pre-signed transactions that the platform agrees to not publish unless the receiver defaults on a number of payments.

In the event the investment threshold is not reached, the investor should spend the funds associated with the address to another address or should specify a refund address to the platform. The latter places responsibility for broadcasting the refund transaction onto the platform and the former places emphasis on the investor to transfer their funds as soon as their deadline for investment has is reached.

This model would involve the construction of a secure way to store pre-signed transactions since any user in possession of them can broadcast the transaction, and gried users if they act maliciously. One time passcodes that are relayed on completion of certain events to encrypt the transactions are a potential solution to this problem.

The trust model of this idea relies on the platform not grief attacking its users and not broadcasting funds. At most, the platform has the ability to selectively censor txs and prevent recipients from getting money.