Beginner question on Ethereum and smart contracts

Have been looking at the Ethereum 101 course and have a beginner question regarding Ivan`s example where a father makes a smart contract where his son would get a certain amount of money if grades were good.
In the example a certain condition would be put into smart contract for the money to be released if grades were =>to what was coded. If the grade was < the money would go back to father.
In this example it is said that the contract could not be tampered with.
My question is then, how it is determined who can release the condition in the contract?
I am guessing that the son would have to update the grade in the smart contract, and then the father would need to verify that in the same contract, but I am not 100% sure I understood correctly.
Would appreciate if someone could enlighten with a more detailed example. Thank you!

hey @toggen! I did that course a long ago but I think I can answer your question. The idea behind smart contracts and the Ethereum blockchain is that the father does not have to trust the kid or vice-versa. Trustlessness! The contract is created and can not be changed once deployed, so I think that in this case, it will get the results directly from the school, so neither the father or kid can manually do it. That’s the beauty of it! Hope I could explain myself, and good luck on the course


Thank you for your reply Pedromndias. Yes, what I didn`t quite get was that if either the father or son could make an input regarding the grades it would be possible to cheat by giving the wrong input. Of course if a 3rd party does the input then the contract will sort it out.
Appreciate the reply. I have a lot to learn:)

1 Like

Hey Toggen,

Look into what’s called an “oracle”. It’s basically a trusted third-party that can upload third-party information that can’t be obtained directly by the Smart Contract.

Rather than it being the son or father, a better person to upload the grades would the Principle or Teacher, for example. It could even be the mom or a grandparent that is trusted by both parties to act honestly and not lie about any grades received.

The Oracle topic is an interesting one in general, as you’d have to design it in a way where the Oracle would want to act honestly and would penalized/lose credibility if they didn’t. But in the simple example above, this wouldn’t be as much of an issue.

1 Like

Yes, that seems interesting. I will have a look at Oracles to learn more.
Thank you very much for your reply