Bitcoin Forum
May 08, 2024, 11:07:08 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: [1]
  Print  
Author Topic: I dont understand Contracts Example 1 on wiki  (Read 926 times)
sebastian (OP)
Full Member
***
Offline Offline

Activity: 129
Merit: 118


View Profile
May 23, 2012, 07:25:18 AM
 #1

I don't understand the Example 1 here:
https://en.bitcoin.it/wiki/Contracts

What would prevent a spammer from getting the money back? Since if the site says he will not allow a early closure of contract, still the contract will expire after (in the example) 6 months of time and the spammer/abusive user will get the coins back...

Basically, we want that the website cannot earn from the contract (if not the user agree to it), and the user will lose from abusiveness, and that theres some automatic "failsafe" in case the website shut down.


** -- Idea Exchange -- **

So basically, for this scheme to work, the website would need some sort of "kill switch" that will spend the coins to a adress which can be proven it does not exist any private key to (or a verifiable charity), which does not require the user's signature. Eg, the contract need to be able to end up in four different states:

1: User & website agree to: Coins coming back to user.
2: User & website agree to: Contract is renewed.
3: Only website needs to agree: Coins are "killed" (or pushed to charity).
4: Contract expires, none need to agree: Coins coming back to user.

(the fifth state - coins go to website - is not useful in this case and is left out).


So lets take some examples:
1: User wants to end the account early. Then the contract is ended early by both the user & website and coins returned.
2: User wants to continue his account. Then the contract is renewed.
3: User is abusive. The website pushes the "kill" button causing the coins to be unspendable. Theres no incentive for the website to push the "kill" button if the user is not abusive, since the website will not earn anything from pushing the "kill" button.
4: The website shut down. Since the "kill" button was not pressed, the contract will automatically expire and user gets his coins back.


But how could such a "kill switch" be implemented in bitcoin terms? The kill switch must be pushable without the user agreeing to it, and both the website and user need to be sure the adress in question ends up nowhere (or a verifiable charity).
Each block is stacked on top of the previous one. Adding another block to the top makes all lower blocks more difficult to remove: there is more "weight" above each block. A transaction in a block 6 blocks deep (6 confirmations) will be very difficult to remove.
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
Etlase2
Hero Member
*****
Offline Offline

Activity: 798
Merit: 1000


View Profile
May 23, 2012, 07:48:06 AM
 #2

Quote
Imagine that you open an account on a website (eg, a forum or wiki) and wish to establish your trustworthiness with the operators, but you don't have any pre-existing reputation to leverage.

The user is punished by not being able to use the money for 6 months or whatever, therefore lowering his spam liquidity. It's always the users money, they just can't do anything with it while they are attempting to gain reputation, or something. It's kind of an odd scenario.

Pages: [1]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!