AFAIK there are a few websites out there that offer escrow services for Bitcoin. Those however are central, i.e. I have to "trust" them.

Is it being discussed, is it theoretically possible, or does the blockchain technology already enable to implement a decentralized escrow service?

After all, it is easy to imagine that an escrow holder could be nothing more than a "virtual" party or a "bot", with its own wallet or private keys, that two negotiating parties could cast into existence. After the transaction has completed (or cancelled), the software would release (or revoke) the entrusted value to the respective party.

Update: If two parties cannot come to agreement, I can think of these solutions for now:

There could be a form of escrow option that will be chosen where at least one party is public facing and reputational, e.g. a (online) shop, that will be trusted by the other party not to deceive.

Two more "ordinarily" trading parties would choose an escrow option where the funds will never be released in the case of conflict at first. If they disclosed identity to each other, a court hearing could then be invoked which should usually come to a resolution, and the losing party will be enforced by law to provide value. Should Bitcoin never be accepted as negotiable matter by traditional jurisdiction, an alternative, equivalent infrastructure is thinkable, but let's leave that to another question for now.

How about this. There is a box in which there are two types of coins,
"deposit" and "payment". Both parties have permission to open the box.
When the box is opened, the deposits go to whoever put them, and the
payment goes to the party other than the one who opened it.

So first the buyer and seller both put a small deposit in the box.
This is safe since they can get it back. Then the buyer puts the
entire sum of the payment in the box. Now:

If the seller sends the goods, the buyer will open the box and the
seller will receive the funds. He is incentivized not to be lazy or
spiteful because he wants his deposit back.

If the seller for any reason wants to back out of the deal, he can
open the box and have the payment return to the buyer, and is
incentivized to do so because he wants his deposit back.

If the seller goes with the "reimbursement" plot, the buyer knows
he is scamming (since the seller should have just opened the box) and
ignore the request. (There is a potential weakness in that the buyer
can "defect" and open the box anyway, to get the deposit. This may be
alleviated by having the buyer's deposit smaller than the seller's,
giving him more bargaining power).

A fraudulent seller is not incentivized to try this on N people
until it succeeds, since every failure costs him his deposit. Hence,
scenario 3 in which the money is burned should very rarely happen.

In any case this isn't supposed to be bullet-proof, just a significant
extra protection for sellers who already pass the sniff-test.

Additionally, the box can specify a charity address, agreed upon by
both parties, to which the buyer has permission to send all funds,
deposits and payment. So in the worst case the money will go to
charity.

I'm not sure about the technical implementation details but all this
should be very doable.

Its pointless trying - either bitcoin is a trustable currency, a medium of trade, and therefore requires enforcability of contract, which requires enforcable laws, which requires statehood and provision of policing which requires "citizenship", which prohibits anonymity which therfore prohibits bitcoin. Or it is a tradeable asset, highly susceptible to fraudulent transfer of ownership, which therfore defeats its own principals. Unfortunately bitcoin is founded on two items, anonimity coupled with implicit trust. Forget governmetn FIAT, forget asset backing, Bitcoin fails on the level of human
– user3906Apr 4 '13 at 9:05

4 Answers
4

I don't think it's possible in principle. The escrow service is one that is inherently authorized to make a decision as to who ultimately gets the funds. In a decentralized escrow service, who or what would make that decision?

If I place some coins in escrow as part of a transaction to you, something must decide whether those funds ultimately go to me or you. Obviously, that decision can't be made by me or you.

I have heard proposals where the coins are "burned" (lost forever) if both parties don't agree on who should ultimately get them. I think that's a pretty useless service as it allows one party to blackmail the other. "Release the coins to me and I'll give half of them back to you. Otherwise, they're lost forever."

This "burn" model seems to be the only option for a decentralized escrow. Here is a thread at bitcointalk where this approach was discussed.
– nmatSep 4 '11 at 18:28

In an (a AND b) OR c signing model burning is still the main option between parties a and b but burning could be decreased by adding a trusted third party c. It would still require manually finding a third party to trust but it still allows a and b to settle their own transaction in the majority of cases, reduces the number of burned coins and allows the private industry of Bitcoin escrow to continue and thrive.
– David PerrySep 4 '11 at 18:33

It may be possible to write escrow functionality into Bitcoin through the use of one or more scripts which I believe is how Namecoin implemented its DNS-like features on top of simply forking the block chain. Unfortunately the scripting abilities have been severely limited for security reasons. There is also discussion over whether this should be part of the main client at all or if it's better to be handled by third parties or perhaps additional plugins or applications.

If you'd like to stay up to date on this potential feature, there is a discussion on github about a fork by groffer which is still awaiting approval and could potentially be pulled into the main client. Groffer's mod allows for multi-signature Bitcoin transactions, which essentially means that coins can be placed under the control of multiple accounts at once such that both accounts must agree to (sign) any outgoing transactions. In such a system one party cannot claim the funds without the approval of the other party.

Edit:I also believe that groffer's mod allows for more complex multi-signed transactions such as (a AND b) OR c type transactions where either the two involved parties (a and b) must both sign or a transaction to complete it or it may be completed by a chosen trusted third party (c).

Gavin Andresen, the Bitcoin client technical lead, has said that M-of-N transactions are a priority for the next major release of the Bitcoin client.
– David SchwartzSep 4 '11 at 18:22

Any link to where he said this? I'd love to include it in my answer but I'm kind of a stickler for sources.
– David PerrySep 4 '11 at 18:26

He asked about the methods to do this here. I'll try to track down the announcement as well.
– David SchwartzSep 4 '11 at 20:22

I think he backed off a bit and is now working harder to obtain consensus. See here and here. Also, here.
– David SchwartzSep 4 '11 at 20:27

Perhaps we'd best leave this to the comments for the time being now, since we're not really sure if it's a priority for the next release. If he ever obtains consensus we can come back and modify answers then.
– David PerrySep 4 '11 at 22:48

Anything is possible. David Zimbeck, created this concept for bitcoin back in 2014

BitHalo.org does this and has been running since 2014. It's an automated two party escrow service. Both parties put a deposit, if either one cheats the deal they lose their funds. Since there is no escrow agent then it's completely impossible to break the contracts and gain from it.
David, is now the lead developer for BitBay.Market you can download the BitBay Client to see for yourself the most advanced version of Halo.
He is nearly complete with his decentralized dynamic peg as well. This will be the most decentralized stablecoin in the industry and it provides the highest potential ROI because it's a soft peg not a hard peg.

Daniel Larimer said it best back in 2014, "All attempts at creating a “stable currency” that neither grows nor falls in value are fundamentally flawed regardless of design because they are built to on a flawed requirement. "

BitBay's dynamic peg is due to be released in Sept/Oct 2018.
This will make BitBay the only cryptocurrency in the industry that has solved both Crypto 1.0 and Crypto 2.0. The former being the ability to remove the middleman from any form of transaction, not just crypto, but goods and services as well. The latter being the ability to stabilize the price of a cryptocurrency so that it can actually be used as a 'currency'.

On the surface, this doesn't seem to provide any protection - the seller could just tell the buyer, "I'm taking 90% of the bitcoins. I'll give you 10%. If you refuse, neither of us will get anything." A perfectly rational actor would take that deal - but a human wouldn't, because they'd feel cheated.

So essentially, multisignature escrow will work because humans are vindictive.