4 min read

Bulletproofs+ στο Monero

Bulletproofs+ στο Monero

Περίληψη

Ο κώδικας είναι τώρα διαθέσιμος για το Bulletproofs+, ένα σύστημα απόδειξης μηδενικής γνώσης που μπορεί να χρησιμοποιηθεί στο πρωτόκολλο Monero αντί του υπάρχοντος συστήματος απόδειξης μηδενικής γνώσης Bulletproofs. Η νέα κατασκευή θα καταστήσει τις συναλλαγές μικρότερες, ταχύτερες για τη δημιουργία πορτοφολιών και ταχύτερες για την επαλήθευση από τους συμμετέχοντες στο δίκτυο. Αν και ο κώδικας είναι λειτουργικός και περιλαμβάνει δοκιμές για τους υποκείμενους αλγόριθμους, θα πρέπει να ελεγχθεί από τρίτους ελεγκτές εάν επιλεγεί για ανάπτυξη σε μια μελλοντική αναβάθμιση του δικτύου Monero. Ο κώδικας έχει αδειοδοτηθεί ελεύθερα με την ελπίδα ότι μπορεί να είναι ευρέως χρήσιμος.

Ευχαριστούμε τον μη κερδοσκοπικό οργανισμό Multidisciplinary Academic Grants in Cryptocurrencies (MAGIC) για τον συντονισμό και την υποστήριξη της επιχορήγησης για την υλοποίηση αυτής της εφαρμογής, καθώς και τους δωρητές που κατέστησαν δυνατή αυτή την εργασία.

Πόροι

  • Bulletproofs preprint από τους Benedikt Bünz, Jonathan Bootle, Dan Boneh, Andrew Poelstra, Pieter Wuille και Greg Maxwell. Αυτό είναι το προκείμενο (που δημοσιεύθηκε αργότερα μετά από αξιολόγηση από ομοτίμους) που χρησιμοποιήθηκε ως βάση για την τρέχουσα υλοποίηση του πρωτοκόλλου Monero.
  • Bulletproofs+ preprint των Heewon Chung, Kyoohyung Han, Chanyang Ju, Myungsun Kim και Jae Hong Seo. Αυτό είναι το προκείμενο που χρησιμοποιήθηκε ως βάση για την προτεινόμενη υλοποίηση του πρωτοκόλλου Monero.
  • Κωδικός Bulletproofs+ από τον Sarang Noether. Αυτός είναι ο νέος κώδικας υλοποίησης που γράφτηκε για συμβατότητα με την κωδικοποιημένη βάση του Monero.
  • Κωδικός που σχετίζεται με τη συναίνεση από τον moneromooo. Αυτός ο κώδικας είναι απαραίτητος για μια αναβάθμιση του δικτύου που θα περιλαμβάνει τις αποδείξεις Bulletproofs+ ως κανόνα συναίνεσης.

Απόδειξη εμβέλειας σε μηδενική γνώση

Το πρωτόκολλο εμπιστευτικών συναλλαγών του Monero απαιτεί τη χρήση ενός συστήματος απόδειξης εύρους μηδενικής γνώσης. Επειδή οι είσοδοι και οι έξοδοι στις συναλλαγές Monero έχουν κρυμμένη την αξία τους, είναι απαραίτητο να αποδεικνύεται κρυφά ότι αντιπροσωπεύουν έγκυρα ποσά για την αποφυγή υπερχείλισης που θα ξεγελούσε τους ελέγχους ισορροπίας του πρωτοκόλλου. Οι κατασκευές που χρησιμοποιούνται για την απόδειξη εύρους έχουν εξελιχθεί με την πάροδο του χρόνου. Αρχικά, το πρωτόκολλο Monero χρησιμοποιούσε μια παραλλαγή των υπογραφών δακτυλίου για τον σκοπό αυτό- ωστόσο, οι αποδείξεις που προέκυπταν ήταν πολύ μεγάλες και αργές στη δημιουργία και επαλήθευση, με αποτέλεσμα τον αργό συγχρονισμό του blockchain και ένα μεγάλο ποσοστό διόγκωσης της αλυσίδας.

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

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

Ο κώδικας υλοποίησης είναι πλέον διαθέσιμος και είναι συμβατός με την κωδικοποιημένη βάση του Monero για εύκολη ανάπτυξη.

Αποδοτικότητα

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

Το μέγεθος και τα χρονικά χαρακτηριστικά των αποδείξεων εύρους εξαρτώνται από τη δομή της συναλλαγής που τις χρησιμοποιεί. Λόγω του τρόπου με τον οποίο λειτουργούν οι αλγόριθμοι Bulletproofs και Bulletproofs+, ο αριθμός των εξόδων σε μια συναλλαγή στρογγυλοποιείται ουσιαστικά στην επόμενη δύναμη του δύο για τους σκοπούς της απόδειξης εύρους, με μέγιστο επιτρεπόμενο αριθμό 16 εξόδων σε μια συναλλαγή. Η συντριπτική πλειονότητα των συναλλαγών Monero περιέχει δύο εξόδους, αλλά 16 έξοδοι είναι επίσης συνηθισμένο φαινόμενο για πληρωμές σε δεξαμενές και άλλους σκοπούς.

Μέγεθος

Ανεξάρτητα από τον αριθμό των εξόδων σε μια συναλλαγή, η αντίστοιχη απόδειξη εύρους Bulletproofs+ είναι 96 bytes μικρότερη από μια απόδειξη εύρους Bulletproofs.

Αυτός ο πίνακας δείχνει τη μείωση του μεγέθους για τους πιο συνηθισμένους τύπους συναλλαγών 2 εξόδων που παρατηρούνται στο δίκτυο Monero.

Τα αποτελέσματα είναι σαφή. Οι αποδείξεις εύρους Bulletproofs+ είναι μικρότερες από τις αποδείξεις εύρους Bulletproofs, εξοικονομώντας χώρο στο blockchain!

Χρόνος

Ο χρόνος δημιουργίας αποδείξεων συνήθως δεν αποτελεί πεδίο πρακτικής ανησυχίας, καθώς το λογισμικό πορτοφολιού χρειάζεται να το κάνει μόνο όταν πραγματοποιείται μια συναλλαγή. Ωστόσο, αξίζει να σημειωθεί ότι μια απόδειξη εμβέλειας Bulletproofs+ 2 εξόδων (η πιο συνηθισμένη) παράγει 10,2% ταχύτερα! Οι χρόνοι απόδειξης για άλλους αριθμούς εξόδων κλιμακώνονται περίπου γραμμικά.

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

Αυτός ο πίνακας δείχνει την ποσοστιαία μείωση του χρόνου επαλήθευσης μεταξύ των αλγορίθμων Bulletproofs και Bulletproofs+ για αποδείξεις που περιλαμβάνουν διαφορετικό αριθμό εξόδων. Οι δοκιμές για την επαλήθευση μεμονωμένων αποδείξεων είναι διάμεσες τιμές για 10000 τυχαιοποιημένες δοκιμές. Οι δοκιμές για την επαλήθευση παρτίδων αποδείξεων είναι διάμεσες τιμές σε 1000 τυχαιοποιημένες δοκιμές, όπου κάθε παρτίδα περιέχει 64 αποδείξεις. Οι απόλυτοι χρόνοι δεν παρατίθενται, καθώς εξαρτώνται από το υπολογιστικό περιβάλλον- ωστόσο, οι σχετικοί χρόνοι είναι γενικά συγκρίσιμοι και συνεπείς.

Τα αποτελέσματα είναι σαφή. Οι αποδείξεις εύρους Bulletproofs+ επαληθεύονται γρηγορότερα από τις αποδείξεις εύρους Bulletproofs, οδηγώντας σε ταχύτερο συγχρονισμό!

Ευχαριστούμε τη Mortanta Manolete για το σχεδιασμό του λογότυπου του Bulletproofs+!


Πρωτότυπο Άρθρο (Αγγλική): Bulletproofs+ in Monero

Συντάκτης Πρωτότυπου Άρθρου: Sarang Noether, Ph.D.

Ημερομηνία Συγγραφής Πρωτότυπου Άρθρου: 24 Δεκεμβρίου 2020