Hacker News new | comments | show | ask | jobs | submit login

This article outlines the basic problem. If you want smart contracts that do anything off chain, there have to be connections to trusted services that provide information and take actions. If you have trusted services available, you may not need a blockchain.

The article points out that you can't construct an ordinary loan on chain, because you have no way to enforce paying it back short of tying up the loaned funds tor the duration of the loan. Useful credit fundamentally requires some way of making debtors pay up later. It's possible to construct various speculative financial products entirely on chain, and that's been done, but it's mostly useful for gambling, broadly defined.

"If you have trusted services available, you may not need a blockchain" assuming you can actually trust those services. In the U.S., among people in lower economic strata, this is not actually the case.

Matt Taibbi's recent book The Divide has a chapter on the abuses of our credit collections system. People are getting taken to court of debts they never actually owed in the first place, or already paid off. The lender has sold the loan to someone else, the records are lost, the borrower get "served" at an old address and never actually hears about the case, then loses to a default judgement for not showing up at court...and finds out about it when wages are garnished.

Here's a simple idea I came up with to fix that:


It still uses the courts to enforce payment, but it uses the public blockchain to stop this nonsense about lost records and fraudulent attestations that they exist, while still protecting borrower privacy.

A lot of the issue with this is that people don't often know their rights. In most of these cases the person being sued can turn the tables and extract penalties from the debt collectors because they violate all sorts of laws that provide statutory penalty. Unfortunately no one reads the law until it affects them and often not even then.

I'm not a huge proponent on smart contracts, and I agree that it's a big problem enforcing payback, but that's no worse than regular loans. At least the ownership/transfership and payback of loans could be tracked, which is a far cry from the current method of debt ownership. It's extremely common for spreadsheets full of loans to be passed from owner to owner with no real ownership trail, accounting, etc, which I find disgusting.

Often fighting these loans is as simple as asking the owner to show proof of the loans in court, at which point they often evaporate, however it can be a long winding road to get there and often people just don't show up in court, or don't know, and get judgements against them that they might not otherwise owe. If the debt status was easily verifiable, it would be better for all sides (other than the bad actors) when it ends up in court.

> but that's no worse than regular loans

If the blockchain isn't enforcing payback, then it's just a normal transfer of money from one party to another. There's no smart contract needed.

it's not needed, but transfers using smart contracts could be more convenient than in other ways. It doesn't have to be a zero or 1 proposition. It's like saying cloud is not needed because we can do it on the desktop

> it's not needed, but transfers using smart contracts could be more convenient than in other ways.

Can you provide an example of this?

ok, so say I need to distribute payments. If I transfer money to a wallet and then a smart contract automatically takes care of sending the right amounts to the right wallets, it could be more convenient than current payment distribution solutions, no?

I think that's a poor example for the following reasons;

* if it's a one off payment to all recipients, why not just send it manually? * what happens when you need to add or remove recipients? Compared to just phoning up the bank to amend a standing order. * what happens if you accidentally pay someone the wrong amount? * what happens if you lose your wallet and you can't continue paying?

I would rather have a bank handle all of the edge cases and provide the consumer protections I want out of a payments/account system than some random script that I (or someone I have to pay) has to maintain that could be responsible for vast amounts of funds.

Sure, you can use the bank. Internally, the bank could do this on the chain though and give you all those protections, so you don't even need to do know the details

But why would the bank use the chain, the financial web of trust is already there and doesn't need to use a chain to facilitate internal or external transfers of monies. It would be a huge time sink with no real benefit to the consumer or the shareholders.

And yet banks are experimenting with blockchains, no?

They do, it's just that the way they do that has nothing to do with ETH or BTC http://www.r3cev.com/blog/2016/4/4/introducing-r3-corda-a-di...

Say this smart contract is aware of interest rates, and due dates, and minimum payments, ... and it will prioritize payments according to interest rate?

I wrote a program to help me do this with my student loans, that does sound useful.

You still need to be able to transfer the loan from party to party, and allow parties to prove ownership of the loan. That's not a complex contract obviously, but it's important.

OK, that makes sense. Just using it as a ledger for a blob of text about the loan

But a loan documented on the blockchain is just as assignable as one documented on paper, and a lender has no more incentive to agree to a clause prohibiting off-chain assignment than a clause prohibiting assignment without the borrower's knowledge or consent.

On the face of it, the lender has no more incentive, but having an unforgeable trail of ownership and payment may improve the value of the loan as it passes from hand to hand.

That all said, a blockchain is not really required. Better standards and a trusted third party would do fine.

Provenance is one of the 3 cases he recognizes in the opening section. Isn't the problem you describe provenance? His loan discussion focuses moreso on them being zero risk. Risk in loans is a feature, otherwise there's no point to paying interest and thus no point to the transaction.

"If you have trusted services available, you may not need a blockchain."

I would observe, though, that the word "trust" here does not mean universal trust. Two signatories to a contract may agree to trust a given oracle without affecting anyone else on the blockchain, or trust a combination of oracles, or etc. etc. If the trusted service is simply pushing "the price of tea in China" into the blockchain, then the blockchain may still be doing "real work" for your contract which involves other things.

"Decentralization" doesn't mean that every single contract won't ever use a central authority. It means there's no mandated one.

"If you have trusted services available, you may not need a blockchain."

You mean the way people should trust their governments.

"Paul Kagame re-elected president with 99% of vote in Rwanda election" https://www.theguardian.com/world/2017/aug/05/paul-kagame-se...

Guidelines | FAQ | Support | API | Security | Lists | Bookmarklet | Legal | Apply to YC | Contact