As a foreword, yes I am very aware of resources like https://web3isgoinggreat.com You don’t need to spam the comments with the link.

I am not asking about your general opinions on why crypto kittens is a jerk fest for crypto bros. Please cut the automatic generic rant on why cryptocurrencies is the sandbox of brainless dopamine monkeys. I am asking about your sentiment on a specific scenario, that tries to solve a real problem.

This is just an example, for oversimplification.
In a trust-less environment, one person shares some of their cloud space for a fixed amount of time, with another person they don’t know much.

The person asking for the cloud space, promises that they will use it only for X,Y or Z. They both agree to leave all the data in clear text (it is easy to prove whether there has been a breach of trust).
If the person doesn’t respect their engagement, they must be penalized. In this scenario, there is no legal tool to ensure this.

Enters the smart contract. The individual asking for a share of the cloud space, deposits a certain amount of ETH in a smart contract. The smart contract itself ensures that the owner of the cloud space will NEVER have access to the deposit fund.
Both individuals sign the smart contract. After a fixed amount of time, the depositor can retrieve their deposit back.
However, if for somewhat reason the depositor breaks their engagement (and do something outside X,Y, Z), the person sharing their cloud space can refuse the refund of the deposit.
Both individuals must then reach a consensus, or the deposit will stay frozen on the smart contract forever.

In this case, would the use of a smart contract be a reasonable solution to you?

  • rentar42
    link
    fedilink
    10
    edit-2
    1 year ago

    Even in very specific instances the smart contracts can only ever observe the Information they are given and have to assume that all that information is correct. What if the donation was done fraudulently or in error?

    These systems have no way to undo these transactions (by design). They simply move all the “error handling” or “fraud prevention” to outside of the system.

    And yes: if you can pretend that errorsor fraud don’t happen, then one can design much simpler sysfems
    But those assumptions don’t make errors or fraud go away.

    Edit: another aspect that the “traditional Systems” have at least some provision for is to prevent abusive or one sided contracts from being entered or at least enforced. For some the lack of those safeguards is a feature. For me it’s terrible. Tons of contracts happen between unequal parties so the law has to protect the weaker one more.

    • 10ofSwordsOP
      link
      fedilink
      11 year ago

      It is easy to set a time frame within which the funds are not distributed, and the donator can reclaim them back. I think that in this specific case, it boils down to whether the developer of the smart contract knows what they are doing, and acting in good faith. Fortunately, the opensource nature of smart contract allows anyone to double check the quality of a contract.

      On the other hand, you have a strong point. Not everyone has the time, motivation, and knowledge to check whether a contract has the correct functionalities. The platforms and tools acting as intermediates are rare, not mature enough, and often straight scammy for now.