Πώς λειτουργεί η εξόρυξη κρυπτονομισμάτων

· Ανάγνωση: 7 λεπ.

Αυτός ο οδηγός εξηγεί τι κάνουν οι miners κρυπτονομισμάτων και γιατί: πώς οι συναλλαγές γίνονται μπλοκ, τι είναι το hash και το nonce, πώς η δυσκολία διατηρεί τον ρυθμό των μπλοκ, από πού έρχεται η ανταμοιβή και γιατί οι περισσότεροι εξορύσσουν σε pool. Το Blocknet χρησιμοποιείται ως πρακτικό παράδειγμα σε όλο το άρθρο, οπότε κάθε αριθμός είναι πραγματικός και επαληθεύσιμος.

Τι είναι η εξόρυξη κρυπτονομισμάτων;

Σύντομη απάντηση

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

Η εξόρυξη κάνει δύο δουλειές μαζί. Βάζει τις συναλλαγές σε σειρά, ώστε όλοι να συμφωνούν ποια πληρωμή προηγήθηκε, και εκδίδει νέα νομίσματα βάσει σταθερού προγράμματος, χωρίς να χρειάζεται εμπιστοσύνη σε κάποιον για τη δημιουργία τους. Το Bitcoin εισήγαγε την ιδέα το 2008 και σήμερα τη χρησιμοποιούν πολλά νομίσματα, μεταξύ τους το Blocknet. Ορισμένες αλυσίδες, όπως το Ethereum από το 2022, χρησιμοποιούν απόδειξη συμμετοχής· το απόδειξη εργασίας και απόδειξη συμμετοχής συγκρίνει τις δύο.

Τι περιέχει ένα μπλοκ;

Ένα μπλοκ είναι μια ομάδα συναλλαγών μαζί με μια σύντομη κεφαλίδα που το περιγράφει. Η κεφαλίδα μπλοκ του Blocknet έχει επτά πεδία:

Πεδίο Τι περιέχει
Έκδοση Την έκδοση πρωτοκόλλου
Ύψος Τη θέση του μπλοκ στην αλυσίδα
Προηγούμενο hash Το αναγνωριστικό του προηγούμενου μπλοκ
Ρίζα Merkle Αποτύπωμα όλων των συναλλαγών του μπλοκ
Χρονική σήμανση Πότε δημιουργήθηκε το μπλοκ
Δυσκολία Πόσο δύσκολο είναι να βρεθεί αυτό το μπλοκ
Nonce Τον αριθμό που αλλάζει ο miner σε κάθε προσπάθεια

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

Πώς βρίσκει ένας miner ένα μπλοκ;

Σύντομη απάντηση

Ο miner υπολογίζει το hash της κεφαλίδας μπλοκ, ελέγχει αν το αποτέλεσμα είναι μικρότερο ή ίσο με τον στόχο του δικτύου και, αν όχι, αλλάζει το nonce και ξαναδοκιμάζει. Μια καλή συνάρτηση hash κάνει το αποτέλεσμα απρόβλεπτο, οπότε ο μόνος τρόπος επιτυχίας είναι οι πολλές προσπάθειες. Το hashrate σας είναι οι προσπάθειες που κάνετε ανά δευτερόλεπτο.

Μια συνάρτηση hash μετατρέπει οποιαδήποτε είσοδο σε αριθμό σταθερού μήκους που φαίνεται τυχαίος. Αλλάξτε ένα bit της εισόδου και το αποτέλεσμα αλλάζει εντελώς. Θεωρήστε το αποτέλεσμα έναν τεράστιο αριθμό: αν είναι μικρότερος ή ίσος με τον στόχο, το μπλοκ είναι έγκυρο. Χαμηλότερος στόχος σημαίνει λιγότερα επιτυχημένα hashes και, άρα, περισσότερες προσπάθειες κατά μέσο όρο.

Στο Blocknet κάθε προσπάθεια είναι ένα hash Argon2id. Το nonce των 8 bytes είναι ο κωδικός και η υπόλοιπη κεφαλίδα το salt, και κάθε hash επεξεργάζεται 2 GiB μνήμης πριν παράγει αποτέλεσμα 32 bytes. Όταν ο miner βρει hash μικρότερο ή ίσο με τον στόχο, στέλνει το μπλοκ στο δίκτυο. Κάθε κόμβος επαναλαμβάνει εκείνο το ένα hash για επιβεβαίωση, κάτι που απαιτεί μικρό κλάσμα της εργασίας που χρειάστηκε για την εύρεσή του.

Η εξήγηση του Argon2id παρουσιάζει κάθε βήμα αυτού του hash και γιατί χρειάζεται τόσο πολλή μνήμη.

Τι είναι η δυσκολία εξόρυξης;

Η δυσκολία είναι ο αριθμός που καθορίζει τον στόχο. Στο Blocknet ο στόχος είναι το (2^256 − 1) διαιρεμένο με τη δυσκολία, πράγμα που σημαίνει ότι η δυσκολία αντιστοιχεί περίπου στον αριθμό hashes που χρειάζεται όλο το δίκτυο κατά μέσο όρο για να βρει ένα μπλοκ.

Αυτό δίνει έναν γρήγορο τρόπο να διαβάζετε το δίκτυο. Το Blocknet στοχεύει σε ένα μπλοκ ανά 300 δευτερόλεπτα, οπότε το hashrate δικτύου είναι περίπου δυσκολία ÷ 300. Για παράδειγμα, δυσκολία 6.000.000 θα σήμαινε περίπου 20.000 hashes ανά δευτερόλεπτο στο δίκτυο.

Το δίκτυο προσαρμόζει τη δυσκολία για να κρατά τα μπλοκ στον προγραμματισμένο ρυθμό καθώς miners έρχονται και φεύγουν:

Το LWMA περιορίζει επίσης πόσο μπορεί ένα ασυνήθιστο μπλοκ να μεταβάλει το αποτέλεσμα: ο χρόνος επίλυσης κάθε μπλοκ μετρά ως τουλάχιστον 1 δευτερόλεπτο και το πολύ 1.800 δευτερόλεπτα, έξι φορές τον στόχο. Αν τα μπλοκ έρχονται συχνότερα από κάθε πέντε λεπτά, η δυσκολία αυξάνεται· αν έρχονται αραιότερα, μειώνεται.

Πώς πληρώνονται οι miners;

Κάθε μπλοκ δημιουργεί νέα νομίσματα στη συναλλαγή coinbase. Στο Blocknet η coinbase έχει ακριβώς μία έξοδο, αξίας ακριβώς ίσης με την ανταμοιβή μπλοκ, προς τη διεύθυνση που επέλεξε ο miner. Το μπλοκ γένεσης δεν περιείχε καμία συναλλαγή, οπότε κάθε νόμισμα σε κυκλοφορία έχει εξορυχθεί.

Η ανταμοιβή ακολουθεί δημοσιευμένο πρόγραμμα. Στο Blocknet ξεκίνησε στα 723,25 BNT ανά μπλοκ και φθίνει ομαλά, μειούμενη κάθε μήνα 30 ημερών ή 8.640 μπλοκ. Η έκδοση φτάνει περίπου τα 100 εκατομμύρια BNT μετά από τέσσερα χρόνια και έπειτα κάθε μπλοκ καταβάλλει μόνιμη τελική ανταμοιβή 2 BNT, ώστε οι miners να έχουν πάντα κίνητρο εξόρυξης.

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

Γιατί οι περισσότεροι miners συμμετέχουν σε pool;

Ένα pool συνδυάζει το hashrate πολλών miners, ώστε η ομάδα να βρίσκει συχνά μπλοκ, και μοιράζει κάθε ανταμοιβή βάσει της εργασίας κάθε μέλους. Μόνος του ένας μικρός miner μπορεί να περιμένει ημέρες ή εβδομάδες για ολόκληρο μπλοκ· σε pool το ίδιο hashrate αποφέρει σταθερή ροή μικρότερων πληρωμών.

Οι αριθμοί δείχνουν γιατί. Το Blocknet παράγει 288 μπλοκ την ημέρα, οπότε τα αναμενόμενα solo μπλοκ σας ανά ημέρα είναι 288 × (το hashrate σας ÷ hashrate δικτύου). Αν το μηχάνημά σας αντιπροσωπεύει το ένα χιλιοστό του δικτύου, βρίσκετε περίπου 0,29 μπλοκ την ημέρα κατά μέσο όρο, ένα μπλοκ ανά τρεισήμισι ημέρες, αν και το πραγματικό διάστημα διαφέρει από μπλοκ σε μπλοκ.

Το pool μετρά την εργασία σας με shares. Το share είναι hash που ικανοποιεί ευκολότερο στόχο, τον οποίο ορίζει το pool για τη σύνδεσή σας. Κάθε share μετρά για το μερίδιό σας στην ανταμοιβή, και ένα share που ικανοποιεί και τον πλήρη στόχο του δικτύου είναι πραγματικό μπλοκ, το οποίο το pool υποβάλλει στην αλυσίδα. Στο bntpool.com:

Αν λειτουργείτε δικό σας κόμβο, μπορείτε επίσης να εξορύσσετε solo και να κρατάτε κάθε μπλοκ που βρίσκετε. Ο οδηγός εξόρυξης καλύπτει και τους δύο τρόπους.

Τι καθορίζει πόσο γρήγορα εξορύσσετε;

Η συνάρτηση hash καθορίζει ποιο hardware αποδίδει καλά. Το SHA-256 του Bitcoin χρειάζεται σχεδόν μηδενική μνήμη, οπότε εξειδικευμένα τσιπ, τα ASICs, κάνουν σήμερα το μεγαλύτερο μέρος της εξόρυξης Bitcoin. Το Blocknet επέλεξε το Argon2id, μια memory-hard συνάρτηση σχεδιασμένη να αντιστέκεται στα ASICs: κάθε hash γεμίζει 2 GiB RAM, οπότε το μέγεθος και το εύρος ζώνης μνήμης καθορίζουν την ταχύτητα.

Αυτό αλλάζει τους υπολογισμούς για έναν συνηθισμένο υπολογιστή:

Το καλύτερο αποτέλεσμα που έχει μετρήσει το seine είναι 49,4 H/s σε διακομιστή AMD EPYC Zen 5 (EPYC 9R45, 32 νήματα), ενώ ένα Apple M4 Max MacBook Pro φτάνει τα 30,9 H/s. Ο οδηγός hardware έχει αποτελέσματα για κάθε δοκιμασμένη γενιά και ο οδηγός εξόρυξης με CPU το 2026 εξηγεί γιατί τα memory-hard νομίσματα ταιριάζουν σε συνηθισμένους επεξεργαστές.

Ποιος εξασφαλίζει την τήρηση των κανόνων της αλυσίδας;

Κάθε κόμβος ελέγχει κάθε μπλοκ: το hash ικανοποιεί τον στόχο, οι συναλλαγές είναι έγκυρες και η ανταμοιβή ακριβώς σωστή. Μπλοκ που αποτυγχάνει σε οποιονδήποτε έλεγχο απορρίπτεται, όση εργασία κι αν απαιτήθηκε γι’ αυτό.

Όταν δύο miners βρίσκουν μπλοκ σχεδόν ταυτόχρονα, η αλυσίδα χωρίζεται προσωρινά. Οι κόμβοι του Blocknet ακολουθούν την αλυσίδα με τη μεγαλύτερη συνολική εργασία, το άθροισμα της δυσκολίας κάθε μπλοκ, οπότε η διάσπαση επιλύεται μόλις το επόμενο μπλοκ προστεθεί στη μία πλευρά. Γι’ αυτό τα πορτοφόλια μετρούν επιβεβαιώσεις: στο Blocknet οι 10 επιβεβαιώσεις (περίπου 50 λεπτά) θεωρούνται ασφαλείς και κανένας κόμβος δεν αναδιοργανώνει την αλυσίδα σε βάθος μεγαλύτερο των 100 μπλοκ.

Δοκιμάστε στον δικό σας υπολογιστή

Η εξόρυξη Blocknet απαιτεί τρία βήματα: αποκτήστε διεύθυνση, κατεβάστε το seine, τρέξτε το και αποδεχτείτε το προεπιλεγμένο pool, το bntpool.com. Το seine επιλέγει αριθμό νημάτων, kernel CPU και διάταξη μνήμης όσο εξορύσσει, ώστε να βλέπετε τα πρώτα shares μέσα σε λίγα λεπτά.

Σημείωση

Το Blocknet προγραμματίζει την αναβάθμιση δικτύου Faraday περίπου για τις 16 Φεβρουαρίου 2027, σύμφωνα με το blocknetcrypto.com, και προβλέπεται ελαφρύτερη απόδειξη εργασίας. Οι παραπάνω λεπτομέρειες περιγράφουν το δίκτυο πριν από το Faraday. Το seine ελέγχει για νέες εκδόσεις στην εκκίνηση και κάθε 12 ώρες.

Συχνές ερωτήσεις

Τι υπολογίζει πραγματικά ένας miner κρυπτονομισμάτων;

Ο miner υπολογίζει επανειλημμένα το hash της κεφαλίδας ενός μπλοκ, αλλάζοντας κάθε φορά έναν αριθμό που λέγεται nonce, ώσπου το αποτέλεσμα να είναι μικρότερο ή ίσο με τον στόχο του δικτύου. Στο Blocknet κάθε προσπάθεια είναι ένα hash Argon2id σε 2 GiB μνήμης. Κανείς δεν μπορεί να προβλέψει ποιο nonce θα κερδίσει, οπότε ο μόνος τρόπος να βρεθεί μπλοκ είναι οι συνεχείς προσπάθειες.

Πόσο χρειάζεται για να εξορυχθεί ένα μπλοκ;

Κάθε δίκτυο ορίζει τον δικό του στόχο. Το Bitcoin στοχεύει σε ένα μπλοκ κάθε δέκα λεπτά και το Blocknet σε ένα κάθε πέντε, δηλαδή 288 μπλοκ την ημέρα. Η δυσκολία προσαρμόζεται ώστε να διατηρεί τον ρυθμό καθώς miners προστίθενται ή αποχωρούν, και ο χρόνος μπλοκ παραμένει κοντά στον στόχο ανεξάρτητα από το συνολικό hashrate.

Τι είναι ένα share σε mining pool;

Το share είναι ένα hash που ικανοποιεί ευκολότερο στόχο, τον οποίο ορίζει το pool για τη σύνδεσή σας. Τα shares αποδεικνύουν πόση εργασία συνεισφέρατε χωρίς αναμονή για πλήρες μπλοκ. Στο bntpool.com το pool προσαρμόζει τη δυσκολία share κάθε σύνδεσης με στόχο περίπου δέκα shares κάθε πέντε λεπτά και μοιράζει τις ανταμοιβές μπλοκ βάσει των shares.

Μπορώ να εξορύξω κρυπτονόμισμα σε συνηθισμένο υπολογιστή;

Ναι, σε νομίσματα των οποίων η απόδειξη εργασίας έχει σχεδιαστεί για συνηθισμένο hardware. Το Blocknet χρησιμοποιεί το memory-hard Argon2id, οπότε επιτραπέζιος υπολογιστής, laptop, Mac ή διακομιστής με αρκετή RAM μπορεί να το εξορύξει. Κάθε νήμα εξόρυξης χρειάζεται περίπου 2 GB μνήμης και το seine βρίσκει μόνο του τον σωστό αριθμό νημάτων για το μηχάνημά σας.