Κατανεμημένη τεχνολογία επικύρωσης
Η τεχνολογία κατανεμημένης επικύρωσης (DVT) είναι μια προσέγγιση για την ασφάλεια του επικυρωτή που κατανέμει τις ευθύνες διαχείρισης κλειδιών και υπογραφής σε πολλά μέρη, για τη μείωση μεμονωμένων σημείων αστοχίας και την αύξηση της ανθεκτικότητας του επικυρωτή.
Αυτό το κάνει διαχωρίζοντας το ιδιωτικό κλειδί που χρησιμοποιείται για την ασφάλεια ενός εργαλείου επικύρωσης σε πολλούς υπολογιστές οργανωμένο σε ένα «cluster». Αυτό παρέχει το πλεονέκτημα ότι καθιστά πολύ δύσκολο για τους εισβολείς να αποκτήσουν πρόσβαση στο κλειδί, επειδή δεν αποθηκεύεται πλήρως σε κανένα μεμονωμένο μηχάνημα. Επιτρέπει επίσης σε ορισμένους κόμβους να βγαίνουν εκτός σύνδεσης, καθώς η απαραίτητη υπογραφή μπορεί να γίνει από ένα υποσύνολο των μηχανών σε κάθε σύνολο. Αυτό μειώνει τα μεμονωμένα σημεία αστοχίας από το δίκτυο και καθιστά όλο το σετ επικύρωσης πιο ισχυρό.
Γιατί χρειαζόμαστε το DVT;
Ασφάλεια
Οι επικυρωτές δημιουργούν δύο ζεύγη κλειδιών δημόσια - ιδιωτικά: τα κλειδιά επικύρωσης για συμμετοχή στη συναίνεση και τα κλειδιά ανάληψης για πρόσβαση στα κεφάλαια. Ενώ οι επικυρωτές μπορούν να ασφαλίσουν τα κλειδιά ανάληψης σε σημείο αποθήκευσης εκτός δικτύου, τα ιδιωτικά κλειδιά επικύρωσης πρέπει να είναι σε σύνδεση 24/7. Εάν ένα ιδιωτικό κλειδί επικύρωσης έχει παραβιαστεί, ένας εισβολέας μπορεί να ελέγξει το εργαλείο επικύρωσης, κάτι που ενδέχεται να οδηγήσει σε περικοπή ή απώλεια των ETH του χρήστη. Το DVT μπορεί να βοηθήσει στον μετριασμό αυτού του κινδύνου. Δείτε πώς:
Με τη χρήση του DVT, οι χρήστες μπορούν να συμμετέχουν στην αποθήκευση κεφαλαίου διατηρώντας παράλληλα το ιδιωτικό κλειδί του εργαλείου επικύρωσης σε σημείο αποθήκευσης εκτός δικτύου. Αυτό επιτυγχάνεται με την κρυπτογράφηση του αρχικού, ολόκληρου κλειδιού επικύρωσης και στη συνέχεια με διαχωρισμό του σε κοινόχρηστα στοιχεία κλειδιού. Τα βασικά κοινόχρηστα στοιχεία υπάρχουν στο διαδίκτυο και διανέμονται σε πολλούς κόμβους επιτρέποντας την κατανεμημένη λειτουργία του επικυρωτή. Αυτό είναι δυνατό επειδή οι επικυρωτές Ethereum χρησιμοποιούν υπογραφές BLS που είναι προσθετικές, που σημαίνει ότι το πλήρες κλειδί μπορεί να ανακατασκευαστεί αθροίζοντας τα κατανεμημένα μέρη τους. Αυτό επιτρέπει στο χρήστη να διατηρεί το πλήρες, αρχικό «κύριο» κλειδί επικύρωσης με ασφάλεια εκτός σύνδεσης.
Κανένα μεμονωμένο σημείο αποτυχίας
Όταν ένας επικυρωτής χωρίζεται σε πολλούς χειριστές και πολλαπλά μηχανήματα, μπορεί να αντέξει μεμονωμένες αστοχίες υλικού και λογισμικού χωρίς να βγει εκτός σύνδεσης. Ο κίνδυνος αποτυχιών μπορεί επίσης να μειωθεί με τη χρήση διαφορετικών διαμορφώσεων υλικού και λογισμικού στους κόμβους σε ένα σύμπλεγμα. Αυτή η ανθεκτικότητα δεν είναι διαθέσιμη σε διαμορφώσεις επικύρωσης ενός κόμβου και προέρχεται από το επίπεδο DVT.
Εάν ένα από τα στοιχεία ενός μηχανήματος σε ένα σύμπλεγμα πέσει (για παράδειγμα, εάν υπάρχουν τέσσερις συντονιστές σε ένα σύμπλεγμα επικυρωτή και ο ένας χρησιμοποιεί συγκεκριμένη εφαρμογή πελάτη που έχει σφάλμα), οι άλλοι διασφαλίζουν ότι το πρόγραμμα επικύρωσης συνεχίζει να λειτουργεί.
Αποκέντρωση
Το ιδανικό σενάριο για το Ethereum είναι να διαθέτει όσο το δυνατόν περισσότερους ανεξάρτητους επικυρωτές. Ωστόσο, ορισμένοι πάροχοι αποθήκευσης κεφαλαίου έχουν γίνει πολύ δημοφιλείς και αντιπροσωπεύουν σημαντικό μέρος του συνολικού αποθηκευμένου κεφαλαίου σε ETH στο δίκτυο. Το DVT μπορεί να επιτρέψει σε αυτούς τους χειριστές να λειτουργούν διατηρώντας παράλληλα την αποκέντρωση του δικτύου. Αυτό συμβαίνει επειδή τα κλειδιά για κάθε επικυρωτή κατανέμονται σε πολλά μηχανήματα και θα χρειαζόταν πολύ μεγαλύτερη προσπάθεια για να γίνει κακόβουλος ένας επικυρωτής.
Χωρίς το DVT, είναι ευκολότερο για τους παρόχους αποθήκευσης κεφαλαίου να υποστηρίζουν μόνο μία ή δύο διαμορφώσεις εφαρμογής πελατών για όλους τους επικυρωτές τους, αυξάνοντας τον αντίκτυπο ενός σφάλματος εφαρμογής πελάτη. Το DVT μπορεί να χρησιμοποιηθεί για την κατανομή του κινδύνου σε πολλαπλές διαμορφώσεις πελατών και διαφορετικό υλικό, δημιουργώντας ανθεκτικότητα μέσω της διαφορετικότητας.
Το DVT προσφέρει τα ακόλουθα οφέλη στο Ethereum:
- Αποκέντρωση της συναίνεσης απόδειξης συμμετοχής του Ethereum
- Εξασφαλίζει την επιβιωσιμότητα του δικτύου
- Δημιουργεί ανοχή σφάλματος του επικυρωτή
- Λειτουργία επικύρωσης με περισσότερη εμπιστοσύνη
- Μείωση κινδύνου περικοπής και διακοπής λειτουργίας
- Βελτιώνει την ποικιλομορφία (πελάτης, κέντρο δεδομένων, τοποθεσία, ρύθμιση κλπ.)
- Βελτιωμένη ασφάλεια της διαχείρισης του κλειδιού επικύρωσης
Πώς λειτουργεί το DVT;
Μια λύση DVT περιέχει τα ακόλουθα στοιχεία:
- Κοινοποίηση μυστικών του Shamir(opens in a new tab) - Οι επικυρωτές χρησιμοποιούν κλειδιά BLS(opens in a new tab). Τα μεμονωμένα «τμήματα κλειδιών» BLS μπορούν να συνδυαστούν σε ένα ενιαίο συγκεντρωτικό κλειδί (υπογραφή). Στο DVT, το ιδιωτικό κλειδί για έναν επικυρωτή είναι η συνδυασμένη υπογραφή BLS κάθε χειριστή.
- Σχήμα υπογραφής κατωφλίου(opens in a new tab) - Καθορίζει τον απαιτούμενο αριθμό μεμονωμένων τμημάτων κλειδιού που απαιτούνται για τη διαδικασία υπογραφής, π.χ. 3 στα 4.
- Δημιουργία κατανεμημένων κλειδιών (DKG)(opens in a new tab) - Κρυπτογραφική διαδικασία που δημιουργεί τα τμήματα κλειδιού που θα διανεμηθούν ενός υπάρχοντος ή νέου κλειδιού επικύρωσης στους κόμβους σε ένα σύμπλεγμα.
- Υπολογισμός πολλαπλών μερών (MPC)(opens in a new tab) - Το πλήρες κλειδί επικύρωσης δημιουργείται κρυφά με χρήση υπολογισμού πολλών μερών. Το πλήρες κλειδί δεν είναι ποτέ γνωστό σε κανέναν μεμονωμένο χρήστη. Γνωρίζει μόνο το δικό του μέρος (το «τμήμα» του).
- Πρωτόκολλο συναίνεσης - Το πρωτόκολλο συναίνεσης επιλέγει έναν κόμβο ως τον προτείνοντα του μπλοκ. Μοιράζονται το μπλοκ με τους άλλους κόμβους του συμπλέγματος, οι οποίοι προσθέτουν τα τμήματα του κλειδιού τους στη συγκεντρωτική υπογραφή. Όταν έχουν συγκεντρωθεί αρκετά βασικά τμήματα κλειδιού, το μπλοκ υποβάλλεται για πρόταση στο Ethereum.
Οι επικυρωτές μετά την κατανομή έχουν μια ενσωματωμένη ανοχή σφαλμάτων και μπορούν να συνεχίσουν να λειτουργούν ακόμα και αν ορισμένοι από τους μεμονωμένους κόμβους τεθούν εκτός σύνδεσης. Αυτό σημαίνει ότι το σύμπλεγμα είναι ανθεκτικό ακόμα και αν ορισμένοι από τους κόμβους μέσα του αποδειχθούν κακόβουλοι ή καθυστερούν.
Χρήσεις DVT
Το DVT έχει σημαντικές επιπτώσεις για τον ευρύτερο κλάδο αποθήκευσης κεφαλαίου:
Μεμονωμένοι χρήστες με αποθηκευμένο κεφάλαιο
Το DVT επιτρέπει επίσης την αποθήκευση κεφαλαίου χωρίς έλεγχο, επιτρέποντάς σας να διανέμετε το κλειδί επικύρωσής σας σε απομακρυσμένους κόμβους, ενώ διατηρείτε το πλήρες κλειδί εντελώς εκτός σύνδεσης. Αυτό σημαίνει ότι οι οικιακοί χρήστες δε χρειάζεται απαραίτητα να δαπανήσουν χρήματα για υλικό, καθώς η κατανομή του κλειδιού μπορεί να βοηθήσει στην ενδυνάμωση τους έναντι πιθανών εισβολών.
Η αποθήκευση ως υπηρεσία (SaaS)
Οι διαχειριστές (όπως οι δεξαμενές και οι οργανισμοί αποθήκευσης κεφαλαίου) που διαθέτουν πολλούς επικυρωτές μπορούν να χρησιμοποιήσουν το DVT για να μειώσουν τον κίνδυνο. Με την κατανομή της υποδομής τους, μπορούν να αυξήσουν την επιβιωσιμότητα των λειτουργιών τους και να διαφοροποιήσουν τους τύπους υλικού που χρησιμοποιούν.
Το DVT διαμοιράζει την ευθύνη της διαχείρισης των κλειδιών σε πολλούς κόμβους, πράγμα που σημαίνει ότι ορισμένα λειτουργικά κόστη μπορούν επίσης να μοιραστούν. Το DVT μπορεί επίσης να μειώσει τον λειτουργικό κίνδυνο και το κόστος ασφάλισης για τους παρόχους αποθήκευσης κεφαλαίου.
Δεξαμενές αποθήκευσης κεφαλαίου
Λόγω των τυπικών ρυθμίσεων επικυρωτών, οι δεξαμενές αποθήκευσης κεφαλαίου και οι πάροχοι ρευστότητας αποθηκευμένου κεφαλαίου, υποχρεούνται να έχουν διαφορετικά επίπεδα εμπιστοσύνης για έναν μόνο χειριστή, καθώς τα κέρδη και οι ζημίες διανέμονται σε όλη την ομάδα. Εξαρτώνται επίσης από τους διαχειριστές για την προστασία των κλειδιών υπογραφής, επειδή μέχρι τώρα, δεν υπήρχε άλλη επιλογή για αυτούς.
Παρόλο που παραδοσιακά γίνονται προσπάθειες για την κατανομή του κινδύνου, κατανέμοντας το αποθηκευμένο κεφάλαιο σε πολλά συστήματα λειτουργία, κάθε διαχειριστής εξακολουθεί να διαχειρίζεται ένα σημαντικό μερίδιο ανεξάρτητα. Η διατήρηση ενός μόνο συστήματος εγκυμονεί τεράστιους κινδύνους σε περίπτωση που υπολειτουργήσει ή αντιμετωπίσει διακοπές λειτουργίας, που παραβιαστεί ή ενεργήσει με κακόβουλο τρόπο.
Με τη μόχλευση του DVT, το επίπεδο εμπιστοσύνης που απαιτείται από τους χειριστές συστήματος μειώνεται σημαντικά. Οι δεξαμενές μπορούν να επιτρέψουν στους χειριστές συστήματος να διατηρούν αποθηκευμένο κεφάλαιο χωρίς να χρειάζεται η φύλαξη των κλειδιών επικύρωσης (καθώς χρησιμοποιούνται μόνο τα βασικά τμήματα). Επιτρέπει επίσης τη διαχείριση αποθηκευμένων κεφαλαίων μεταξύ περισσότερων συστημάτων (π.χ. αντί να υπάρχει μόνο ένας διαχειριστής για 1000 επικυρωτές, το DVT επιτρέπει σε αυτούς τους επικυρωτές να εκτελούνται συλλογικά από πολλούς διαχειριστές). Οι διάφορες ρυθμίσεις του διαχειριστή, θα εξασφαλίσουν ότι εάν ένας τεθεί εκτός λειτουργίας, οι άλλοι θα εξακολουθούν να μπορούν να εκτελούν επικυρώσεις. Αυτό έχει ως αποτέλεσμα την επιβιωσιμότητα και τη διαφοροποίηση που οδηγεί σε καλύτερη απόδοση και ανθεκτικότητα, μεγιστοποιώντας παράλληλα τις ανταμοιβές.
Ένα άλλο όφελος για την ελαχιστοποίηση της ανάγκης εμπιστοσύνης ενός διαχειριστή, είναι ότι οι δεξαμενές αποθήκευσης κεφαλαίου μπορούν να επιτρέψουν πιο ανοιχτή και τη χωρίς άδεια συμμετοχή διαχειριστή. Με αυτόν τον τρόπο, οι υπηρεσίες μπορούν να μειώσουν τον κίνδυνο και να υποστηρίξουν την αποκέντρωση του Ethereum χρησιμοποιώντας ελεγμένα και χωρίς την ανάγκη παροχής άδειας από σύνολα συστημάτων, για παράδειγμα συνδέοντας οικιακούς ή περισσότερους χρήστες με μικρό αποθηκευμένο κεφάλαιο με μεγαλύτερους.
Πιθανά μειονεκτήματα της χρήσης DVT
- Πρόσθετο στοιχείο - η εισαγωγή ενός κόμβου DVT προσθέτει ένα ακόμη τμήμα που μπορεί να είναι ελαττωματικό ή ευάλωτο. Ένας τρόπος για να μετριαστεί αυτό είναι να προσπαθήσουμε για πολλαπλές υλοποιήσεις ενός κόμβου DVT, δηλαδή πολλαπλούς πελάτες εφαρμογών DVT (όπως ακριβώς υπάρχουν διαφορετικά λογισμικά πελάτη για τα επίπεδα συναίνεσης και εκτέλεσης).
- Λειτουργικό κόστος - καθώς το DVT κατανέμει το σύστημα επικύρωσης μεταξύ πολλών μερών, απαιτούνται περισσότεροι κόμβοι για τη λειτουργία αντί για έναν μόνο κόμβο, γεγονός που αυξάνει το λειτουργικό κόστος.
- Δυνητικά αυξημένη καθυστέρηση - καθώς το DVT χρησιμοποιεί ένα πρωτόκολλο για την επίτευξη συναίνεσης μεταξύ των πολλαπλών κόμβων που λειτουργούν με έναν επικυρωτή, μπορεί ενδεχομένως να εισάγει αυξημένο λανθάνοντα χρόνο.
Περισσότερες πληροφορίες
- Προδιαγραφές επικυρωτή με κατανομή Ethereum (υψηλού επιπέδου)(opens in a new tab)
- Τεχνικές προδιαγραφές επικυρωτή με κατανομή Ethereum(opens in a new tab)
- Εφαρμογή επίδειξης κοινής χρήσης μυστικών Shamir(opens in a new tab)