Ich bin verwirrt darüber, wie die Smart Contracts intern funktionieren.
Ich habe dies gelesen:
https://blog.zeppelin.solutions/the-hitchhikers-guide-to-smart-contracts-in-ethereum-848f08001f05
TLTR: Es gibt ein Beispiel für einen Smart Contract „ProofOfExistence“, der den Hash für eine Zeichenfolge in einem Array speichert
contract ProofOfExistence3 {
mapping (bytes32 => bool) private proofs;
// store a proof of existence in the contract state
function storeProof(bytes32 proof) {
proofs[proof] = true;
}
// calculate and store the proof for a document
function notarize(string document) {
var proof = proofFor(document);
storeProof(proof);
}
// helper function to get a document's sha256
function proofFor(string document) constant returns (bytes32) {
return sha256(document);
}
// check if a document has been notarized
function checkDocument(string document) constant returns (bool) {
var proof = proofFor(document);
return hasProof(proof);
}
// returns true if proof is stored
function hasProof(bytes32 proof) constant returns(bool) {
return proofs[proof];
}
}
Meine Fragen:
1) Was passiert, wenn ich diesen Vertrag einsetze? in Bezug auf die Ethereum-Blockchain. Der Code wird in einem neuen Block im Ethereum-Netzwerk gespeichert? Ich meine, in Bitcoin senden wir etwas BTC von einer Adresse zur anderen, und diese Informationen werden in einem neuen Block gespeichert. Gibt es dazu eine Analogie für Ethereum und Smart Contracts?
2) Entstehen Kosten für die Bereitstellung des Smart Contracts?
3) Wie kann ich diesen Vertrag nutzen? Angenommen, ich möchte überprüfen, ob dort eine Zeichenfolge vorhanden ist. Wie kann ich das tun? das gleiche, wenn ich einen neuen String speichern möchte. Was ist der Workflow, um eine Funktion aus dem Smart Contract auszuführen (und das Ergebnis zu erhalten)?
4) Brauchen wir ETH, um eine Funktion auf dem Smart Contract auszuführen? Warum? Was passiert in der Blockchain, wenn sie ausgeführt (nicht bereitgestellt) wird?
Ich weiß, dass diese Antworten etwas lang werden könnten, aber ich bin mir ziemlich sicher, dass sie für viele Neulinge wie mich eine gute Referenz sein werden :)
Das weiße und gelbe Papier von Ethereum sind ein wirklich guter Ausgangspunkt. Auch: https://medium.com/@preethikasireddy/how-does-ethereum-work-anyway-22d1df506369
Enrique
Nico Vergauwen