Skip to content

Instantly share code, notes, and snippets.

View drwasho's full-sized avatar

Dr Washington Sanchez drwasho

View GitHub Profile
@drwasho
drwasho / Notaries-pools-certification-blinding.md
Last active September 16, 2015 22:30
Further description of notaries within OpenBazaar

# Notary Selection in OpenBazaar: Voting Pools, Certification, and Contract Blinding

1. Introduction

There is a significant bottleneck in the current workflow for OpenBazaar, which is the selection of a third party notary or arbiter. Irrespective whether the notary or arbiter is the same agent, both the merchant and the buyer are required to come to a consensus in selecting a third party key-holder in a 2-of-3 multisignature escrow address. The fundamental obstacle is the risk of possible collusion between one of the parties and the notary, and the subsequent distrust one party has for the other party's notary preference. Unless both parties have preselected the same notary that they both trust, somewhat coincidentally, then a transaction cannot take place. This may result in significant and frustrating delays that run counter to the values that OpenBazaar ho

@drwasho
drwasho / Dispute Resolution in OpenBazaar.md
Last active February 19, 2021 21:17
Dispute Resolution in OpenBazaar

Dispute Resolution in OpenBazaar

1.0 Introduction

Multisignature escrow addresses are the key to managing risk for trades between peers on OpenBazaar. These addresses mathematically ensure that a single agent is incapable of stealing funds from an address using their private key alone. Furthermore, multisignature addresses can be designed to accommodate several parties within a voting pool as previously discussed.

In a typical 2-of-3 multisignature transaction in OpenBazaar, the first two signers are the buyer and seller. The third signature is a 'trusted' third party who has the power to sign a transaction in combination with the buyer or seller in the event of an accident, key theft, or dispute. The third party signer, a notary, in OpenBazaar also acts as the third signer of Ricardian contracts for the sale o

@drwasho
drwasho / Risk and Insurance in OpenBazaar.md
Last active August 29, 2015 14:03
How to manage risk in trade within OpenBazaar.

Risk and Insurance in OpenBazaar

1.0 Introduction

Insurance is a valuable service that is often misinterpreted, over-regulated, and out of reach for many people. On OpenBazaar, insurance is contextualized as a service that can be offered by anyone or group, leveraging:

  1. The clarity of terms and conditions set out in a Ricardian contract
  2. An open marketplace for competing insurance policies and service providers
@drwasho
drwasho / Notary-Arbiter.md
Last active November 22, 2015 19:10
Separation of Notary and Arbitration Services on OpenBazaar

Separation of Notary and Arbitration Services on OpenBazaar

Introduction

Thus far the proposals for various market implementations within OpenBazaar have assumed that the third party in a transaction (signer #3 in a 2-of-3 multisignature escrow address) performs two roles: a notary, and an arbiter. The notary aspect of their service includes digitally signing contracts and transactions, the latter in the event of a dispute between the buyer seller. The arbitration aspect of their role is to decide who the winning side is in a dispute between the buyer and seller. However, this overlapping notary-arbiter model is prone to several weakenesses:

  • There is a conflict of interest between the arbiter and disputing parties
  • There is a practical burden on a single agent to perform all of these tasks simultaneously for potentially dozens/hundreds of transactions
@drwasho
drwasho / DEX-OB.md
Last active November 5, 2017 14:53
Distributed currency exchange in OpenBazaar

Distributed Currency Exchange on OpenBazaar

Introduction

OpenBazaar allows for the decentralised exchange of types of currencies using the flexible Ricardian contract system. Currency exchanges are not limited trades between crypto-currencies, but can also facilitate exchanges with fiat currencies using reverisble and non-reversible payment systems.

Currency Exchanges

Fundamentally, currency exchanges require a matching of buy and sell orders at a certain price for a given volume. Firstly, buy and sell orders will be created and issued as a Ricardian contract, formatted according to a specialised 'currency' template in OpenBazaar. Secondly, matching buy and sell orders theoretically will be mediated over exchange nodes, which may also function as arbiters for each exchange. Alternative, buy and sell orders may be matched over the OpenBazaar distributed hash table. Finally, private exchanges can be made bet

@drwasho
drwasho / OBGenesisContract.md
Last active August 29, 2015 14:03
OB Genesis Contract

OpenBazaar Genesis Contract

The following article contains OpenBazaar's first ever Ricardian contract for the sale of a good between Sam Patterson and Brian Hoffman, arbitrated by Dr Washington Sanchez. In short, the signing process follows these steps:

  1. Creation of the seed contract by the seller
  • The seller creates a contract to sell a good
  1. Creation of a bid offer for the contract by the buyer
  • The buyer appends their details to the seed contract and digitally signs it
@drwasho
drwasho / Voting Pools in OpenBazaar.md
Last active August 29, 2015 14:02
How voting pools can be used to manage risk in exchanges on OpenBazaar

Voting Pools in OpenBazaar

Introduction

The advent of multisignature transactions within Bitcoin is a monumental achievement for the development of trustless (and near-trustless) systems. Building on top of the multisignature revolution is the possibility to create voting pools. A voting pool further distributes the role of an arbiter in a multi-party transaction and reduces the risk of fraudulent behavior within a pseudonymous marketplace like OpenBazaar.

Voting Pools

@drwasho
drwasho / Issuance and P2P transfer of shares in OpenBazaar.md
Last active August 29, 2015 14:02
The issuance and P2P transfer of shares in OpenBazaar

The Issuance and P2P Transfer of Shares in OpenBazaar

by drwasho and Delain Markos

Introduction

Decentralised money necessarily requires decentralised markets.

@drwasho
drwasho / Service Contracts in OpenBazaar.md
Last active August 29, 2015 14:02
Service Contracts: buying and selling services on OpenBazaar

Service Contracts in OpenBazaar

Introduction

A service contract in OpenBazaar replaces a physical good to be sold with the terms and conditions of a service to be performed by one party. The distinction between a good and service within a Ricardian contract is minimal, as will be described in this article. Morever, the combination of pseudonym (nym) reputation management (proof of burn nyms, web of trust) and surety bonds can ensure a robust service industry within OpenBazaar.

Service Contracts

@drwasho
drwasho / Auctions on OpenBazaar.md
Last active March 17, 2016 16:38
Auctions on OpenBazaar