Το Ethereum διαθέτει ένα σύνολο προτύπων που ονομάζεται ERC-20 που επιτρέπει στους προγραμματιστές να δημιουργούν τα δικά τους tokens μέσα στο δίκτυο του Ethereum. Παρέχει μια ευκολότερη λύση για τις εταιρείες να αναπτύξουν προϊόντα blockchain αντί να πρέπει να δημιουργήσουν το δικό τους κρυπτονόμισμα. Αυτό το τεχνικό πρότυπο (το ERC-20) καθορίζει έναν αριθμό κανόνων και ενεργειών που πρέπει να ακολουθήσει ένα token του Ethereum ή ένα smart contract και τα βήματα ώστε να είναι σε θέση να τα θέσει όλα αυτά σε εφαρμογή. Ίσως είναι πιο εύκολο να σκεφτούμε το ERC-20 ως ένα σύνολο βασικών οδηγιών και λειτουργιών που πρέπει να ακολουθήσει κάθε νέο token που δημιουργείται στο δίκτυο του Ethereum. To ERC ειναι συντομογραφία για το “Ethereum Request for Comment”.

    Ορισμένα tokens, όπως το token UNI της Uniswap, έχουν παραμείνει και θα παραμείνουν ERC-20 tokens, ενώ, άλλα κρυπτονομίσματα, όπως το Binance Coin, έχουν μεταφερθεί στο δικό τους blockchain.

    Τι είναι τα ERC-20 tokens; #

    Τα ERC-20 tokens είναι τα πιο συχνά χρησιμοποιούμενα tokens στο δίκτυο του Ethereum. Έχουν σχεδιαστεί για να χρησιμοποιούνται για την πληρωμή διαφόρων υπηρεσιών ή αγαθών και ονομάζονται επίσης utility tokens.

    Αυτά τα tokens είναι:

    • Fungible – Ο κωδικός κάθε token είναι ο ίδιος με οποιονδήποτε άλλο, αν και το ιστορικό των συναλλαγών μπορεί να χρησιμοποιηθεί για τον προσδιορισμό και τον διαχωρισμό των tokens.
    • Μεταβιβάσιμα – Μπορούν να σταλούν από τη μία διεύθυνση στην άλλη.
    • Έχουν προκαθορισμένο supply – Πρέπει να δημιουργηθεί ένας σταθερός αριθμός από tokens, έτσι ώστε οι προγραμματιστές να μην μπορούν να εκδώσουν περισσότερα και να αυξήσουν το supply.

    Γιατί, πως και πότε; #

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

    Έτσι το Ethereum αποφάσισε να δημιουργήσει ένα πρότυπο, ένα σύνολο κανόνων που έπρεπε να τηρεί κάθε token στο δίκτυο και έτσι γεννήθηκε το ERC-20.

    Το ERC-20 δημιουργήθηκε από τους προγραμματιστές του Ethereum για λογαριασμό της ευρύτερης κοινότητας του το 2015 και αναγνωρίστηκε επίσημα τον Σεπτέμβριο του 2017. Για να δημιουργηθεί ένα πρότυπο αυτού του τύπου για το Ethereum, ένας προγραμματιστής ή μια ομάδα προγραμματιστών πρέπει να υποβάλει αυτό που είναι γνωστό ως Ethereum Improvement Proposal (EIP) που περιγράφει τη νέα λειτουργικότητα μαζί με τα συγκεκριμένα πρωτόκολλα και πρότυπα της. Στη συνέχεια, μια επιτροπή εξετάζει, εγκρίνει, τροποποιεί και οριστικοποιεί ότι το EIP – σε αυτό το σημείο, γίνεται ERC. Τα smart contracts, τα tokens και άλλες λειτουργίες στο Ethereum υποχρεούνται στη συνέχεια να συμμορφώνονται με ένα από τα εγκεκριμένα πρότυπα.

    Μερικά ERC-20 tokens έχουν φτάσει να γίνουν τόσο πολύτιμα, που τώρα είναι μεταξύ των μεγαλύτερων 20 κρυπτονομισμάτων που υπάρχουν αυτήν τη στιγμή βάση market cap.

    Αγορά και αποθήκευση των ERC-20 tokens #

    Πολλά ERC-20 tokens μπορούν να αγοραστούν μέσω ανταλλακτηρίων όπως το Coinbase, το Binance ή το Uniswap. Για την αποθήκευση τους, αν δε θέλετε να τα αφήσετε στο ανταλλακτήριο, θα χρειαστείτε επίσης ένα πορτοφόλι κρυπτονομισμάτων που τα υποστηρίζει, αυτο μπορεί να είναι είτε ένα πορτοφόλι λογισμικού όπως το MetaMask ή το Coinomi, είτε ένα hardware wallet. Σαν γενικός κανόνας είναι ότι όλα τα μεγάλα πορτοφόλια που υποστηρίζουν το Ethereum υποστηρίζουν και τα ERC-20 tokens, αλλά πριν χρησιμοποιήσετε κάποιο τέτοιο και πριν στείλετε κάποιο ERC-20 token σε ένα καινούργιο πορτοφόλι, κάντε την έρευνα σας και σιγουρευτείτε ότι το υποστηρίζει με κάποιο τρόπο.

    Κανόνες του ERC-20 #

    Εάν κάποιο smart contract θέλει να χρησιμοποιήσει το ERC-20 token, τότε πρέπει να ακολουθήσει ορισμένους κανόνες του ERC-20. Σε διαφορετική περίπτωση, εάν δεν ακολουθήσει αυτούς τους κανόνες, τότε δεν θα ήταν κατάλληλο να ονομαστεί ERC-20 token. Προς το παρόν, υπάρχουν συνολικά 9 κανόνες, όπου oi 6 κανόνες είναι υποχρεωτικοί να υλοποιηθούν και οι άλλοι 3 είναι προαιρετικοί.

    Ας τους δόυμε αναλυτικά:

    Υποχρεωτικοί Κανόνες:

    • allowance
    • approve
    • transferFrom
    • transfer
    • balanceOf
    • totalSupply

    Προαιρετικοί Κανόνες:

    • Token Name
    • Decimal (Max: 18)
    • Symbol

    Προαιρετικοί κανόνες #

    • Token Name – Ας ξεκινήσουμε με τους προαιρετικούς κανόνες. Συνήθως, όταν δημιουργείτε τη δική σας λίστα από ERC-20 tokens, θα δείτε ότι είναι πολύ σημαντικό να συσχετίζετε ένα όνομα με ένα token. Ωστόσο, δεν είναι απαραίτητο να τα ονομάσετε, αν και η συσχέτιση της ταυτότητας μέσω του ονόματος με οποιοδήποτε token είναι εξαιρετική για τη χρήση τους σε μια κοινότητα.
    • Decimal – Έπειτα, έχουμε διαιρετότητα. Στην πραγματικότητα, είναι πραγματικά πολύ σημαντικό, καθώς με αυτήν θα εξασφαλίστει η χαμηλότερη δυνατή τιμή για το token σας. Εάν η διαιρετότητα είναι 0, τότε αυτή η τιμή θα είναι το 1, αν είναι 2, τότε η χαμηλότερη τιμή θα είναι 0,01 και πάει λέγοντας. Η μέγιστη επιτρεπόμενη τιμή είναι μέχρι τα 18 δεκαδικά ψηφία.
    • Symbol – Τέλος, έχουμε το σύμβολο. Αυτό υπάρχει κυρίως για τη δημιουργία ενός brand χρησιμοποιώντας ένα πιασάρικο σύμβολο. Για παράδειγμα, το DogeCoin έχει το σύμβολο “DOGE”, αλλά κυρίως, είναι δημοφιλές ως DogeCoin. Έτσι, όπως βλέπετε, μπορεί να μην χρειάζεστε πάντα ένα σύμβολο για το token σας.

    Υποχρεωτικοί κανόνες #

    • totalSupply – Το totalSupply περιγράφει κυρίως τον συνολικό αριθμό των ERC-20 tokens που θέλετε να δημιουργήσετε. Για να δημιουργήσετε το token, πρέπει πρώτα να καθορίσετε το συνολικό ποσό του supply αυτού του token.
    • approve – Η συνάρτηση approve βοηθάει να απαλλαγούμε από τυχόν παραχάραξη των token. Εδώ, μόλις ο κάτοχος του contract ελέγξει το υπόλοιπο, μπορεί να εγκρίνει το contract για τη συλλογή των χρημάτων. Αυτή η συνάρτηση θα ελέγξει επίσης εάν ο αριθμός είναι σωστός σε σύγκριση με το συνολικό supply. Έτσι, είναι αδύνατο να παραποιηθούν ποτέ τα tokens. Εάν αυτή η συνάρτηση εντοπίσει λάθη στους αριθμούς, τότε θα απορρίψει την πληρωμή και το smart contract.
    • balanceOf – Αυτή η συνάρτηση προορίζεται για την ενημέρωση όσον αφορά τον συνολικό αριθμό των tokens που έχει οποιαδήποτε διεύθυνση. Στην πραγματικότητα, λειτουργεί ως πληροφορίες του χρήστη, οπότε αν έχετε δημιουργήσει κάποιο token και το στείλετε σε άλλες διευθύνσεις, μπορείτε να την χρησιμοποιήσετε για να ελέγξετε πόσα tokens σας έχουν απομείνει.
    • transferFrom – Αυτή η συνάρτηση μεταφοράς είναι βασικά για την αυτοματοποίηση συγκεκριμένων συναλλαγών. Για παράδειγμα, ίσως πρέπει να πληρώνετε κάποιον κάθε μήνα το ίδιο ποσό ή να πληρώνετε ενοίκιο και λογαριασμούς. Επομένως, μπορείτε να χρησιμοποιήσετε το transferFrom για να αυτοματοποιήσετε αυτές τις πληρωμές σε μια συγκεκριμένη ημερομηνία και ώρα.
    • transfer – Η επόμενη συνάρτηση είναι το transfer. Αφού ελέγξει εάν ο χρήστης έχει αρκετά tokens για την μεταφορά, ο κάτοχος μπορεί να χρησιμοποιήσει αυτήν τη λειτουργία για να στείλει τα tokens σε κάποια άλλη διεύθυνση. Πιο συγκεκριμένα, αυτό λειτουργεί όπως μια τυπική συναλλαγή κρυπτονομισμάτων σε άλλες πλατφόρμες blockchain.
    • allowance – Η συνάρτηση allowance είναι η πιο σημαντική. Στην πραγματικότητα, όταν ένα contract θέλει να πραγματοποιήσει μια συναλλαγή, πρέπει να δει το υπόλοιπο του smart contract για να καταλάβει εάν ο χρήστης έχει το ελάχιστο υπόλοιπο για αυτήν την ενέργεια ή οχι. Χρησιμοποιώντας τη συνάρτηση αυτή, το contract μπορεί να πραγματοποιήσει τη συναλλαγή ή ακόμη και να την ακυρώσει.

    Θετικά του ERC-20 #

    Υπάρχουν πολλά οφέλη από το ERC-20. Επιτρέπει στους προγραμματιστές να αναπτύξουν DApps στο blockchain του Ethereum. Βοηθάει επίσης στην απλούστευση ολόκληρης της διαδικασίας. Εν συντομία, ας παραθέσουμε μερικά οφέλη:

    • Η δημιουργία ενός Token γίνεται εύκολη για τους προγραμματιστές blockchain.
    • Υπάρχει ένα καθιερωμένο πρωτόκολλο για διατήρηση και παρακολούθηση του.
    • Τα ERC-20 tokens προσφέρουν υψηλή ρευστότητα.
    • Τα smart contracts διασφαλίζουν ότι οι συναλλαγές πραγματοποιούνται χωρίς κίνδυνο.

    Άλλα πρότυπα εκτός του ERC-20 #

    Άλλα πρότυπα στο Ethereum έχουν δημιουργηθεί για διαφορετικούς λόγους. Μερικά από αυτά έχουν χρησιμοποιήσει το ERC-20 σαν βάση λίγο ή πολύ. Εδώ είναι μερικά:

    • ERC-721 – Αυτά τα tokens είναι non-fungible (NFT). Κάθε token είναι μοναδικό και έχει τον δικό του κώδικα, το οποίο οδήγησε σε μια αναπτυσσόμενη αγορά συλλεκτικών κρυπτονομισμάτων.
    • ERC-1400 – Αυτά ειναι τα security tokens που σημαίνει ότι τα tokens μπορούν να πουληθούν σαν securities. Αυτά τα token πολλές φορές αντιπροσωπεύουν μετοχές σε μια εταιρεία ή δικαίωμα ψήφου για την λειτουργία μιας εταιρείας. Αυτό το πρότυπο απαιτεί μεγαλύτερο έλεγχο στο ποιος μπορεί να έχει αυτα τα tokens και εισάγει Know-Your-Customer (KYC) πρωτόκολλα.
    • ERC-223 – Σε κάθε συναλλαγή οι χρεώσεις πληρώνονται σε Ether. Αυτό το πρότυπο επιτρέπει τις χρεώσεις συναλλαγών να πληρωθούν στα tokens που εμπλέκονται και όχι σε Ether.
    • ERC-777 – Στόχος αυτού του προτύπου είναι η βελτίωση του ERC-20 με την μείωση των εξόδων και την εισαγωγή νέων χαρακτηριστικών. Είναι συμβατό προς τις προηγούμενες εκδόσεις/πρότυπα που σημαίνει ότι ίσως υιοθετηθεί ευκολότερα και χρησιμοποιηθεί σε μεγαλύτερη κλίμακα.
    • ERC-621 – Αυτό ακολουθεί τους ίδιους κανόνες και συναρτήσεις όπως το ERC-20 αλλά προσθέτει επίσης την δυνατότητα της αλλαγής του total supply.
    • ERC-827 – Αυτό επιτρέπει σε έναν κάτοχο να εγκρίνει τη δαπάνη των token του από ένα τρίτο μέρος.

    Συμπέρασμα #

    Χιλιάδες tokens στο blockchain του Ethereum ακολουθούν το πρότυπο του ERC-20 το οποίο είναι επίσης φιλικό προς τους προγραμματιστές. Όλοι μπορούν να δημιουργήσουν ένα ERC-20 token και να το “εισάγουν” στο blockchain και το πρότυπο αυτό μπορεί επίσης να οριστεί ως ένας τρόπος ανάπτυξης των utility tokens για τα DApps. Το ERC-20 χρησιμοποιείται ευρέως και η δημοφιλία του θα συνεχιστεί όσο το Ethereum διατηρεί την θέση του. Αν μη τι άλλο, η μεγαλύτερη απειλή του είναι εκ των έσω, τα νέα πρότυπα του Ethereum. Στο τέλος επιβιώνει ο ικανότερος.