- Purely digital things.
- Name mapping (Example NameCoin, Blockchain used a record of the current state of the mapping)
- Storage – Paying for storage
- Pay for Proof – Paying for computation
- Random Number generation (Using bitcoin as a Beacon)
- Lotteries (payment and payout denominated in the currency of the blockchain, lottery reduces to a random number generation problem, pick one input address as the output address)
- Things can be Represented digitally
- Real World currencies (Example Colored Coin, provides atomicity)
- Who will back the colored coin? Economic Problem: Pegging colored coin to a real world stock is a real challenge. Representation of currency on the block chain is not a challenge.
- Real World currencies (Example Colored Coin, provides atomicity)
- Smart Property and Atomic Exchange (discussion at beginning of lecture)
- Complex Contracts
- Crowd Funding
- Financial derivatives
- Derivatives is like to a conditional statement
- Requires price data feed unless underlying asset is traded on the chain
- Some of the more expressive alt coin based system are great vehicle for this
- Nuance: Conditional statements depend on price of the underlying, script should have a secure way of obtaining the price of the asset (data feed required). Price discovery possible on block chain? What about price manipulation?
- Markets and Auctions
- Features of centralized markets
- Used Bike store – buys your bike , sells it later
- EBay- Matches participants, routes payments
- Paypal – Processes payments, (some dispute mediation)
- Craigslist – matches participants
- How to Decentralize markets?
- Payment : use Bitcoin
- Transfer of goods: Use of smartproperty, atomicity
- Dispute handling: Use Escrow
- Matching Participants: ??
- Alice wants to sell her car
- Partial Transaction: Creates transaction with sale price, perhaps a link to the web-page to the car and broadcasts it, transaction wont get onto the blockchain
- Counterparty finds it, completes, signs and broadcasts
- Transaction gets complete
- Variant: Use Block chain instead of a P2P network, offers can be complete transactions which get onto the blockchain
- Variant: Auction: Buyer cannot finalize the transaction. Counterparty can’t complete directly
- Variant: Double Auction: Both sides simultaneously broadcast partial transactions
- Miners match orders, keep bid-ask spread (Avoids minor front running)
- Alice wants to sell her car
- Features of centralized markets
- Data Feeds:
- Allow arbiters to assert facts about the world into the block chain
- Examples: Price movements, outcome of events
- Decentralization of prediction markets
- Use trusted hardware for security, parses finance data and creates data feed
- Arbiters have Big incentives to lie!
- Decentralization by voting
- Use multi-signature feature, two of three arbiters must agree, Transaction output is a 2 out of three address
- Levels of (de) centralization
- Single Mandatory Intermediary
- Multiple Competing intermediaries
- “Threshold” of intermediaries
- No Intermediary
- Autonomous Agents
- Key Features
- Contracts with other participants
- Data Feeds
- Agents might have shareholders,Voting as a way to change the rules in the way that the agent operates (key distinguishing factor)
- Some Variants: reproduction (mutating the code & improving with time)
- Challenges
- Keeping private state? Or purely execute on a transient basis on the miner nodes. Where does the private state come from?
- Hostile Takeover. Defenses against
- Key Features
- Exchanges
- Alice would like USD for BTC
- Carol would like BTC for USD
- They don’t trust each other, luckily they have a mutual friend Bob
- Bob sends Alice some kind of digital token worth $100
- Represented in the system as IOU
- Pairs of friends pre-declare how much debt they are willing to extend to each of their friends. Triangular debt cancellation means actual settlement may be rare
- Simple version of what ripple does