Μετάβαση στο κύριο περιεχόμενο
Change page

Εισαγωγή στο Ethereum

Τελευταία επεξεργασία: @mr_giorgos(opens in a new tab), 26 Ιουνίου 2024

Τι είναι μια κρυπτοαλυσίδα;

Μια κρυπτοαλυσίδα περιγράφεται καλύτερα ως μία δημόσια βάση δεδομένων που ενημερώνεται και μοιράζεται σε πολλούς υπολογιστές σε ένα δίκτυο.

Το «Block» αναφέρεται στο γεγονός ότι τα δεδομένα και η κατάσταση αποθηκεύονται σε διαδοχικά τμήματα γνωστά ως μπλοκ. Εάν στείλετε ETH σε κάποιον άλλο, τα δεδομένα συναλλαγών πρέπει να προστεθούν σε ένα μπλοκ για να είναι επιτυχής.

Το "Chain" αναφέρεται στο γεγονός ότι κάθε μπλοκ κρυπτογραφικά αναφέρεται στον γονέα του. Με άλλα λόγια, τα μπλοκ συνδέονται μεταξύ τους, όπως οι κρίκοι. Τα δεδομένα ενός μπλοκ δεν μπορούν να αλλάξουν χωρίς αλλαγή όλων των επόμενων μπλοκ, κάτι που θα απαιτούσε τη συναίνεση ολόκληρου του δικτύου.

Κάθε υπολογιστής στο δίκτυο πρέπει να συμφωνεί για κάθε νέο μπλοκ και την αλυσίδα συνολικά. Αυτοί οι υπολογιστές είναι γνωστοί ως «κόμβοι». Οι κόμβοι διασφαλίζουν ότι όλοι όσοι αλληλεπιδρούν με την αλυσίδα συστοιχιών έχουν τα ίδια δεδομένα. Για να επιτευχθεί αυτή η κατανεμημένη συμφωνία, οι αλυσίδες συστοιχιών χρειάζονται έναν μηχανισμό συναίνεσης.

Το Ethereum χρησιμοποιεί έναν μηχανισμό συναίνεσης βασισμένο στην απόδειξη συμμετοχής. Οποιοσδήποτε θέλει να προσθέσει νέα μπλοκ στην αλυσίδα συστοιχιών πρέπει να αποθηκεύσει ETH, το εγγενές νόμισμα στο Ethereum, ως εγγύηση και να εκτελέσει λογισμικό επικύρωσης. Αυτοί οι «επικυρωτές» μπορούν στη συνέχεια να επιλεγούν τυχαία για να προτείνουν μπλοκ που άλλοι επικυρωτές ελέγχουν και προσθέτουν στην αλυσίδα συστοιχιών. Υπάρχει ένα σύστημα ανταμοιβών και κυρώσεων που δίνουν ισχυρά κίνητρα στους συμμετέχοντες να είναι ειλικρινείς και διαθέσιμοι σε σύνδεση όσο το δυνατόν περισσότερο.

Εάν θέλετε να δείτε πώς τα δεδομένα της αλυσίδας συστοιχιών κατακερματίζονται και στη συνέχεια προσαρτώνται στο ιστορικό των αναφορών μπλοκ, φροντίστε να δείτε αυτήν την επίδειξη(opens in a new tab) από τον Anders Brownworth και παρακολουθήστε το συνοδευτικό βίντεο παρακάτω.

Παρακολουθήστε τον Anders να εξηγεί τους κατακερματισμούς στις αλυσίδες συστοιχιών:

Τι είναι το Ethereum;

Το Ethereum είναι μια αλυσίδα συστοιχιών με έναν υπολογιστή ενσωματωμένο σε αυτό. Είναι το θεμέλιο για τη δημιουργία εφαρμογών και οργανισμών με ένα τρόπο αποκεντρωμένο, χωρίς άδεια και ανθεκτικό στη λογοκρισία.

Στο σύμπαν του Ethereum, υπάρχει ένας μοναδικός, κανονικός υπολογιστής (που ονομάζεται εικονική μηχανή Ethereum ή EVM), στην κατάσταση του οποίου συμφωνούν όλοι στο δίκτυο Ethereum. Όλοι όσοι συμμετέχουν στο δίκτυο Ethereum (κάθε κόμβος Ethereum) διατηρούν ένα αντίγραφο της κατάστασης αυτού του υπολογιστή. Επιπλέον, κάθε συμμετέχων μπορεί να μεταδώσει ένα αίτημα σε αυτόν τον υπολογιστή για να εκτελέσει αυθαίρετους υπολογισμούς. Κάθε φορά που μεταδίδεται ένα τέτοιο αίτημα, άλλοι συμμετέχοντες στο δίκτυο επαληθεύουν, επικυρώνουν και πραγματοποιούν («εκτελούν») τον υπολογισμό. Αυτή η εκτέλεση προκαλεί μια αλλαγή κατάστασης στο EVM, η οποία δεσμεύεται και διαδίδεται σε ολόκληρο το δίκτυο.

Τα αιτήματα για υπολογισμό ονομάζονται αιτήματα συναλλαγής, το αρχείο όλων των συναλλαγών και η παρούσα κατάσταση του EVM αποθηκεύονται στην αλυσίδα συστοιχιών, που με τη σειρά της αποθηκεύεται και συμφωνείται από όλους τους κόμβους.

Κρυπτογραφικοί μηχανισμοί διασφαλίζουν ότι, από τη στιγμή που οι συναλλαγές επαληθευτούν ως έγκυρες και προστεθούν στην αλυσίδα συστοιχιών, δεν θα μπορούν να παραβιαστούν αργότερα. Οι ίδιοι μηχανισμοί διασφαλίζουν επίσης ότι όλες οι συναλλαγές υπογράφονται και εκτελούνται με τις κατάλληλες «άδειες» (κανείς δεν θα πρέπει να μπορεί να στείλει ψηφιακά περιουσιακά στοιχεία από τον λογαριασμό της Alice, εκτός από την ίδια την Alice).

Τι είναι το ether;

Το Ether (ETH) είναι το εγγενές κρυπτονόμισμα του Ethereum. Σκοπός του ETH είναι να επιτρέπει μια αγορά για υπολογισμούς. Μια τέτοια αγορά παρέχει ένα οικονομικό κίνητρο στους συμμετέχοντες να επαληθεύουν και να εκτελούν αιτήματα συναλλαγών και να παρέχουν υπολογιστικούς πόρους στο δίκτυο.

Κάθε συμμετέχων που μεταδίδει μια αίτηση συναλλαγής πρέπει επίσης να προσφέρει ένα ποσό ETH στο δίκτυο ως ανταμοιβή. Το δίκτυο θα κάψει μέρος της ανταμοιβής και θα απονείμει το υπόλοιπο σε όποιον τελικά κάνει τη δουλειά επαλήθευσης της συναλλαγής, της εκτέλεσής της, της καταχώρισής της στην κρυπτοαλυσίδα και της μετάδοσής της στο δίκτυο.

Το ποσό του ETH που πληρώθηκε αντιστοιχεί στους πόρους που απαιτούνται για τον υπολογισμό. Αυτές οι ανταμοιβές αποτρέπουν επίσης τους κακόβουλους συμμετέχοντες από το να εμποδίζουν σκόπιμα το δίκτυο ζητώντας την εκτέλεση άπειρου υπολογισμού ή άλλων ενεργοβόρων σεναρίων, καθώς αυτοί οι συμμετέχοντες πρέπει να πληρώσουν για τους πόρους υπολογισμού.

Το ETH χρησιμοποιείται επίσης για την παροχή κρυπτοοικονομικής ασφάλειας στο δίκτυο με τρεις κύριους τρόπους: 1) χρησιμοποιείται ως μέσο ανταμοιβής των επικυρωτών που προτείνουν μπλοκ ή καταγγέλλουν ανέντιμη συμπεριφορά από άλλους επικυρωτές, 2) αποθηκεύεται από τους επικυρωτές, λειτουργώντας ως εγγύηση κατά της ανέντιμης συμπεριφοράς, εάν οι επικυρωτές επιχειρήσουν να συμπεριφερθούν ανέντιμα, τα ETH τους μπορούν να καταστραφούν, 3) χρησιμοποιείται για να σταθμίζει τις «ψήφους» για τα νεοπροτεινόμενα μπλοκ, τροφοδοτώντας το τμήμα ενσωμάτωσης του μηχανισμού συναίνεσης.

Τι είναι τα έξυπνα συμβόλαια;

Στην πράξη, οι συμμετέχοντες δεν γράφουν νέο κώδικα κάθε φορά που θέλουν να ζητήσουν έναν υπολογισμό στο EVM. Αντίθετα, οι προγραμματιστές εφαρμογών ανεβάζουν προγράμματα (επαναχρησιμοποιήσιμα αποσπάσματα κώδικα) στην κατάσταση EVM και οι χρήστες κάνουν αιτήματα για την εκτέλεση αυτών των αποσπασμάτων κώδικα με ποικίλες παραμέτρους. Τα προγράμματα που μεταφορτώνονται και εκτελούνται από το δίκτυο τα ονομάζουμε έξυπνα συμβόλαια.

Σε ένα πολύ βασικό επίπεδο, μπορείς να σκεφτείς ένα έξυπνο συμβόλαιο σαν ένα είδος αυτόματου πωλητή: ένα σενάριο που, όταν καλείται με ορισμένες παραμέτρους, εκτελεί κάποιες ενέργειες ή υπολογισμό εάν πληρούνται ορισμένες συνθήκες. Για παράδειγμα, ένα απλό έξυπνο συμβόλαιο πωλητή θα μπορούσε να δημιουργήσει και να αναθέσει την ιδιοκτησία ενός ψηφιακού περιουσιακού στοιχείου εάν ο αποστολέας στείλει ETH σε έναν συγκεκριμένο παραλήπτη.

Οποιοσδήποτε προγραμματιστής μπορεί να δημιουργήσει ένα έξυπνο συμβόλαιο και να το δημοσιοποιήσει στο δίκτυο, χρησιμοποιώντας την κρυπτοαλυσίδα ως επίπεδο δεδομένων, έναντι αμοιβής που καταβάλλεται στο δίκτυο. Οποιοσδήποτε χρήστης μπορεί στη συνέχεια να καλέσει το έξυπνο συμβόλαιο για να εκτελέσει τον κώδικά του και πάλι με χρέωση που καταβάλλεται στο δίκτυο.

Έτσι, με τα έξυπνα συμβόλαια, οι προγραμματιστές μπορούν να δημιουργήσουν και να αναπτύξουν αυθαίρετα πολύπλοκες εφαρμογές και υπηρεσίες που απευθύνονται στους χρήστες, όπως: αγορές, χρηματοοικονομικά μέσα, παιχνίδια, κλπ.

Ορολογία

Κρυπτοαλυσίδα

Η ακολουθία όλων των μπλοκ που έχουν δεσμευτεί στο δίκτυο Ethereum στην ιστορία του δικτύου. Ονομάζονται έτσι επειδή κάθε μπλοκ περιέχει μια αναφορά στο προηγούμενο μπλοκ, το οποίο μας βοηθά να διατηρήσουμε μια σειρά σε όλα τα μπλοκ (και συνεπώς στο ακριβές ιστορικό).

ETH

Το Ether (ETH) είναι το εγγενές κρυπτονόμισμα του Ethereum. Οι χρήστες πληρώνουν ETH σε άλλους χρήστες για να εκπληρωθούν τα αιτήματά εκτέλεσης του κωδικά τους.

Περισσότερα για το ETH

EVM

Η εικονική μηχανή Ethereum είναι ο παγκόσμιος εικονικός υπολογιστής του οποίου την κατάσταση αποθηκεύει και συμφωνεί κάθε συμμετέχων στο δίκτυο Ethereum. Οποιοσδήποτε συμμετέχων μπορεί να ζητήσει την εκτέλεση αυθαίρετου κώδικα στο EVM, η εκτέλεση κώδικα αλλάζει την κατάσταση του EVM.

Περισσότερα για το EVM

Κόμβοι

Τα πραγματικά μηχανήματα που αποθηκεύουν την κατάσταση EVM. Οι κόμβοι επικοινωνούν μεταξύ τους για τη διάδοση πληροφοριών σχετικά με την κατάσταση EVM και τις νέες αλλαγές. Οποιοσδήποτε χρήστης μπορεί επίσης να ζητήσει την εκτέλεση κώδικα μεταδίδοντας ένα αίτημα εκτέλεσης κώδικα από έναν κόμβο. Το ίδιο το δίκτυο Ethereum είναι το σύνολο όλων των κόμβων Ethereum και των επικοινωνιών τους.

Περισσότερα για τους κόμβους

Λογαριασμοί

Που αποθηκεύονται τα ETH. Οι χρήστες μπορούν να ενεργοποιήσουν λογαριασμούς, να καταθέσουν ETH στους λογαριασμούς και να μεταφέρουν ETH από τους λογαριασμούς τους σε άλλους χρήστες. Οι λογαριασμοί και τα υπόλοιπα λογαριασμών αποθηκεύονται σε έναν μεγάλο πίνακα στο EVM. αποτελούν μέρος της συνολικής κατάστασης EVM.

Περισσότερα για λογαριασμούς

Συναλλαγές

Ένα «αίτημα συναλλαγής» είναι ο επίσημος όρος για ένα αίτημα για εκτέλεση κώδικα στο EVM και μια «συναλλαγή» είναι ένα εκπληρωμένο αίτημα συναλλαγής και η σχετική αλλαγή στην κατάσταση EVM. Οποιοσδήποτε χρήστης μπορεί να μεταδώσει ένα αίτημα συναλλαγής στο δίκτυο από έναν κόμβο[node]. Για να επηρεάσει η αίτηση συναλλαγής την συμφωνημένη κατάσταση EVM, πρέπει να επικυρωθεί, να εκτελεστεί και να «δεσμευτεί στο δίκτυο» από έναν άλλο κόμβο. Η εκτέλεση οποιουδήποτε κώδικα προκαλεί αλλαγή κατάστασης στο EVΜ, μετά τη δέσμευση, αυτή η αλλαγή κατάστασης μεταδίδεται σε όλους τους κόμβους του δικτύου. Μερικά παραδείγματα συναλλαγών:

  • Στείλε X ETH από τον λογαριασμό μου στον λογαριασμό της Alice.
  • Δημοσίευσε κάποιο κώδικα έξυπνου συμβολαίου στην κατάσταση EVM.
  • Εκτελέστε τον κωδικό του έξυπνου συμβολαίου στη διεύθυνση X στο EVM, με ορίσματα Y.

Περισσότερα για τις συναλλαγές

Μπλοκ

Ο όγκος των συναλλαγών είναι πολύ μεγάλος, επομένως οι συναλλαγές «δεσμεύονται» σε παρτίδες, ή μπλοκ. Τα μπλοκ γενικά περιέχουν δεκάδες έως εκατοντάδες συναλλαγές.

Περισσότερα για τα μπλοκ

Smart contracts

Ένα επαναχρησιμοποιήσιμο απόσπασμα κώδικα (ένα πρόγραμμα) το οποίο ένας προγραμματιστής δημοσιεύει στην κατάσταση EVM. Οποιοσδήποτε μπορεί να ζητήσει να εκτελεστεί ο κώδικας του έξυπνου συμβολαίου υποβάλλοντας αίτημα συναλλαγής. Επειδή οι προγραμματιστές μπορούν να γράψουν αυθαίρετες εκτελέσιμες εφαρμογές στο EVM (παιχνίδια, αγορές, χρηματοπιστωτικά μέσα κ. λπ.) δημοσιεύοντας έξυπνα συμβόλαια, αυτά συχνά ονομάζονται επίσηςdapps ή Αποκεντρωμένες εφαρμογές.

Περισσότερα για τα smart contracts

Περισσότερες πληροφορίες

  • Ethereum Whitepaper
  • Πώς λειτουργεί το Ethereum;(opens in a new tab) - Preethi Kasireddy (Σημ.: Αυτή η πηγή είναι ακόμα πολύτιμη, αλλά να έχετε υπόψη ότι προηγείται της Συγχώνευσης και επομένως αναφέρεται ακόμα στον μηχανισμό απόδειξης εργασίας του Ethereum. Το Ethereum πλέον προστατεύεται με απόδειξη συμμετοχής)

Γνωρίζετε κάποιο πόρο της κοινότητας που σας βοήθησε; Επεξεργαστείτε αυτή τη σελίδα και προσθέστε το!

  • Οδηγός προγραμματιστή για το Ethereum, μέρος 1 – Μια πολύ φιλική εξερεύνηση του Ethereum για αρχάριους με τη χρήση Python και web3.py

Ήταν χρήσιμο αυτό το άρθρο;