Skip to content

Instantly share code, notes, and snippets.

@chriseth
Created May 22, 2015 09:43
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save chriseth/001d384f3cb417f4e9b4 to your computer and use it in GitHub Desktop.
Save chriseth/001d384f3cb417f4e9b4 to your computer and use it in GitHub Desktop.
Blind Auction

Blind Auction

Bidding period

Everyone can place a nonce-hashed bid together with a value transfer.

Revealing Period

Every bidder can reveal their nonce and thus the bid. If the previously transferred value is smaller than the bid, the person is refunded and the bid discarded. Otherwise, the difference to the bid is refunded and the bid marked as valid.

Claiming

The winner can claim the auctioned item. Depending on the winning model, bids can be refunded, but non-revealed bids will be destroyed.

Discussion

Compared with the English auction, there is no time or bidding pressure strain on the network or the miners around the deadline.

The auction is only partially blind because the value transfer is visible, but it can be concealed by transferring more ether than necessary or placing multiple fake bids with not enough value.

It is not possible to alter the bid after the bidding period and an otherwise valid bid can only be "retracted" (by not revealing the nonce) at the cost of the transferred value.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment