[ 3 / biz / cgl / ck / diy / fa / ic / jp / lit / sci / vr / vt ] [ index / top / reports ] [ become a patron ] [ status ]
2023-11: Warosu is now out of extended maintenance.

/biz/ - Business & Finance

Search:


View post   

>> No.21115796 [View]
File: 110 KB, 287x282, 1596529461575.png [View same] [iqdb] [saucenao] [google]
21115796

>>21115606
Let me try and explain it as simply as possible. Say you write a contract that lets anyone send money to someones wallet, say, a charity. this is what it looks like

charityAddress = 0x123;

function () payable {
sendMoneyTo(charityAddress)
}

All money sent to the contract is rerouted to the charityAddress. Problem is, that charities wallet has changed in the past, and you assume in the future it might change again. If it does change, any money sent to the contract is useless, and you will need to publish a new one. So you write another bit of code instead

function changeAddress(address new) {
charityAddress = new;
}

Great, now we can change the address. Only problem is, it is on the blockchain, which means anyone can change the address, and set it to whatever they want. We don't want people to take advantage of that and scam charity money, so instead we write our own address into the contract as an owner, and put something like this in the changeAddress function

require(msg.sender == ownerAddress);

But this just means you have a single ownerAddress who can change the address whenever they want! that's not decentralized at all! So do you have a frail, easily broken contract with no central owner? Or a centralized contract where you have to trust the single owner?

DFOs let you have the best of both worlds. You can now give voting functionality to an ownership token that allows users to vote for changes. Rather than trusting the owner of the contract, a proposal to change the charityAddress is raised, and the people vote, and the address is changed. But this doesn't even start to cover it. With DFOhub and robe you can build totally decentralized, censorship proof site than can load on any web3 browser, front end on-chain and everything.

Navigation
View posts[+24][+48][+96]