Τυχαίοι Αριθμοί και Αποκεντρωμένα Δίκτυα: Πρακτικές Εφαρμογές

Εισαγωγή

«Η δημιουργία τυχαίων αριθμών είναι πολύ σημαντική για να αφεθεί στην τύχη».
Robert Cavue, 1970

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

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

Δημιουργία τυχαίων αριθμών

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

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

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

Τυχαίο σε blockchains

Πρώτα απ 'όλα, θα μιλήσω για blockchain με υποστήριξη για έξυπνα συμβόλαια· είναι αυτοί που μπορούν να εκμεταλλευτούν πλήρως τις ευκαιρίες που παρέχει η υψηλής ποιότητας, αναμφισβήτητη τυχαιότητα. Επιπλέον, για συντομία, θα ονομάσω αυτή την τεχνολογία "Τυχαία φάροι με δυνατότητα δημόσιας επαλήθευσης” ή PVRB. Δεδομένου ότι τα blockchains είναι δίκτυα στα οποία οι πληροφορίες μπορούν να επαληθευτούν από οποιονδήποτε συμμετέχοντα, το βασικό μέρος του ονόματος είναι "Δημόσως επαληθεύσιμο", δηλ. Οποιοσδήποτε μπορεί να χρησιμοποιήσει υπολογισμούς για να αποκτήσει απόδειξη ότι ο αριθμός που προκύπτει που δημοσιεύεται στο blockchain έχει τις ακόλουθες ιδιότητες:

  • Το αποτέλεσμα πρέπει να έχει αποδεδειγμένα ομοιόμορφη κατανομή, δηλαδή να βασίζεται σε αποδεδειγμένα ισχυρή κρυπτογραφία.
  • Δεν είναι δυνατός ο έλεγχος κανενός από τα κομμάτια του αποτελέσματος. Κατά συνέπεια, το αποτέλεσμα δεν μπορεί να προβλεφθεί εκ των προτέρων.
  • Δεν μπορείτε να σαμποτάρετε το πρωτόκολλο δημιουργίας μη συμμετέχοντας στο πρωτόκολλο ή υπερφορτώνοντας το δίκτυο με μηνύματα επίθεσης
  • Όλα τα παραπάνω πρέπει να είναι ανθεκτικά στη συμπαιγνία ενός επιτρεπτού αριθμού ανέντιμων συμμετεχόντων στο πρωτόκολλο (για παράδειγμα, το 1/3 των συμμετεχόντων).

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

Φαίνεται ότι η πιο σημαντική εφαρμογή για το PVRB είναι τα διάφορα παιχνίδια, οι λοταρίες και γενικά κάθε είδους τζόγος στο blockchain. Πράγματι, αυτή είναι μια σημαντική κατεύθυνση, αλλά η τυχαιότητα στα blockchain έχει ακόμα πιο σημαντικές εφαρμογές. Ας τους δούμε.

Συναινετικοί αλγόριθμοι

Το PVRB παίζει τεράστιο ρόλο στην οργάνωση της συναίνεσης του δικτύου. Οι συναλλαγές σε blockchains προστατεύονται από μια ηλεκτρονική υπογραφή, επομένως μια "επίθεση σε μια συναλλαγή" είναι πάντα η συμπερίληψη/εξαίρεση μιας συναλλαγής σε ένα μπλοκ (ή πολλά μπλοκ). Και το κύριο καθήκον του αλγορίθμου συναίνεσης είναι να συμφωνήσει σχετικά με τη σειρά αυτών των συναλλαγών και τη σειρά των μπλοκ που περιλαμβάνουν αυτές τις συναλλαγές. Επίσης, απαραίτητη ιδιότητα για πραγματικές αλυσίδες μπλοκ είναι η οριστικότητα - η δυνατότητα του δικτύου να συμφωνεί ότι η αλυσίδα μέχρι το τελικό μπλοκ είναι οριστική και δεν θα αποκλειστεί ποτέ λόγω της εμφάνισης ενός νέου πιρουνιού. Συνήθως, για να συμφωνήσετε ότι ένα μπλοκ είναι έγκυρο και, το πιο σημαντικό, τελικό, είναι απαραίτητο να συλλεχθούν υπογραφές από την πλειοψηφία των παραγωγών μπλοκ (εφεξής καλούμενοι BP - block-producers), κάτι που απαιτεί τουλάχιστον την παράδοση της αλυσίδας μπλοκ σε όλα τα BP και διανομή υπογραφών μεταξύ όλων των BP . Καθώς ο αριθμός των BP αυξάνεται, ο αριθμός των απαραίτητων μηνυμάτων στο δίκτυο αυξάνεται εκθετικά, επομένως, οι αλγόριθμοι συναίνεσης που απαιτούν οριστικότητα, που χρησιμοποιούνται για παράδειγμα στο Hyperledger pBFT consensus, δεν λειτουργούν με την απαιτούμενη ταχύτητα, ξεκινώντας από αρκετές δεκάδες BP, απαιτώντας ένας τεράστιος αριθμός συνδέσεων.

Εάν υπάρχει ένα αναμφισβήτητο και ειλικρινές PVRB στο δίκτυο, τότε, ακόμη και με την πιο απλή προσέγγιση, μπορεί κανείς να επιλέξει έναν από τους παραγωγούς μπλοκ βάσει αυτού και να τον ορίσει ως «αρχηγό» κατά τη διάρκεια ενός γύρου του πρωτοκόλλου. Αν έχουμε N μπλοκ παραγωγών, εκ των οποίων M: M > 1/2 N είναι ειλικρινείς, μην λογοκρίνουν τις συναλλαγές και μην διαχωρίζουν την αλυσίδα για να πραγματοποιήσουν μια επίθεση "διπλής δαπάνης", στη συνέχεια χρησιμοποιώντας ένα ομοιόμορφα κατανεμημένο αδιαμφισβήτητο PVRB θα επιτρέψει την επιλογή ενός έντιμου ηγέτη με πιθανότητα M / N (M / N > 1/2). Εάν σε κάθε ηγέτη ανατεθεί το δικό του χρονικό διάστημα κατά το οποίο μπορεί να δημιουργήσει ένα μπλοκ και να επικυρώσει την αλυσίδα, και αυτά τα διαστήματα είναι ίσα χρονικά, τότε η αλυσίδα μπλοκ των ειλικρινών BP θα είναι μεγαλύτερη από την αλυσίδα που σχηματίζεται από κακόβουλα BP και η συναίνεση Ο αλγόριθμος βασίζεται στο μήκος της αλυσίδας, απλά θα απορρίψει το "κακό". Αυτή η αρχή της κατανομής ίσων τμημάτων χρόνου σε κάθε BP εφαρμόστηκε για πρώτη φορά στο Graphene (τον προκάτοχο του EOS) και επιτρέπει στα περισσότερα μπλοκ να κλείνουν με μία μόνο υπογραφή, γεγονός που μειώνει σημαντικά το φόρτο του δικτύου και επιτρέπει σε αυτή τη συναίνεση να λειτουργεί εξαιρετικά γρήγορα και σταθερά. Ωστόσο, το δίκτυο EOS πρέπει πλέον να χρησιμοποιεί ειδικά μπλοκ (Last Irreversible Block), τα οποία επιβεβαιώνονται από τις υπογραφές του 2/3 BP. Αυτά τα μπλοκ χρησιμεύουν για τη διασφάλιση της τελικότητας (η αδυναμία ενός πιρουνιού αλυσίδας να ξεκινά πριν από το τελευταίο Τελευταίο μη αναστρέψιμο μπλοκ).

Επίσης, σε πραγματικές υλοποιήσεις, το σχήμα πρωτοκόλλου είναι πιο περίπλοκο - η ψηφοφορία για τα προτεινόμενα μπλοκ πραγματοποιείται σε διάφορα στάδια για τη διατήρηση του δικτύου σε περίπτωση που λείπουν μπλοκ και προβλήματα με το δίκτυο, αλλά ακόμη και λαμβάνοντας υπόψη αυτό, οι αλγόριθμοι συναίνεσης που χρησιμοποιούν PVRB απαιτούν σημαντικά λιγότερα μηνύματα μεταξύ των BPs, γεγονός που καθιστά δυνατή την ταχύτερη πραγματοποίηση τους από το παραδοσιακό PVFT ή τις διάφορες τροποποιήσεις του.

Ο πιο σημαντικός εκπρόσωπος τέτοιων αλγορίθμων: ouroboros από την ομάδα Cardano, η οποία λέγεται ότι μπορεί να αποδειχθεί μαθηματικά έναντι της συμπαιγνίας της BP.

Στο Ouroboros, το PVRB χρησιμοποιείται για τον καθορισμό του λεγόμενου "Προγράμματος BP" - ένα χρονοδιάγραμμα σύμφωνα με το οποίο σε κάθε BP εκχωρείται η δική του χρονοθυρίδα για τη δημοσίευση ενός μπλοκ. Το μεγάλο πλεονέκτημα της χρήσης PVRB είναι η πλήρης «ισότητα» των BP (ανάλογα με το μέγεθος των ισολογισμών τους). Η ακεραιότητα του PVRB διασφαλίζει ότι τα κακόβουλα BP δεν μπορούν να ελέγξουν τον προγραμματισμό των χρονοθυρίδων και επομένως δεν μπορούν να χειριστούν την αλυσίδα προετοιμάζοντας και αναλύοντας εκ των προτέρων τα πιρούνια της αλυσίδας και για να επιλέξετε ένα πιρούνι αρκεί απλώς να βασιστείτε στο μήκος του αλυσίδα, χωρίς τη χρήση δύσκολων τρόπων υπολογισμού της «χρησιμότητας» της BP και του «βάρους» των μπλοκ της.

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

Κλιμάκωση και εξισορρόπηση φορτίου

Το PVRB μπορεί επίσης να έχει μεγάλο όφελος σε εργασίες όπως η μείωση φορτίου και η κλιμάκωση πληρωμών. Αρχικά, είναι λογικό να εξοικειωθείτε άρθρο Rivesta «Ηλεκτρονικά Λαχεία ως Μικροπληρωμές». Η γενική ιδέα είναι ότι αντί να κάνετε πληρωμές 100 1c από τον πληρωτή στον παραλήπτη, μπορείτε να παίξετε μια ειλικρινή λοταρία με έπαθλο 1$ = 100c, όπου ο πληρωτής δίνει στην τράπεζα ένα από τα 1 από τα "λαχεία" του για κάθε 100c πληρωμή. Ένα από αυτά τα εισιτήρια κερδίζει ένα βάζο 1 $ και είναι αυτό το εισιτήριο που ο παραλήπτης μπορεί να καταγράψει στο blockchain. Το πιο σημαντικό είναι ότι τα υπόλοιπα 99 εισιτήρια μεταφέρονται μεταξύ παραλήπτη και πληρωτή χωρίς καμία εξωτερική συμμετοχή, μέσω ιδιωτικού καναλιού και με οποιαδήποτε επιθυμητή ταχύτητα. Μπορείτε να διαβάσετε μια καλή περιγραφή του πρωτοκόλλου που βασίζεται σε αυτό το σχήμα στο δίκτυο Emercoin εδώ.

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

Η επιλογή ενός τυχαίου συμμετέχοντα είναι επίσης εξαιρετικά σημαντική για τα πρωτόκολλα διαμοιρασμού, σκοπός των οποίων είναι η οριζόντια κλίμακα της αλυσίδας μπλοκ, επιτρέποντας σε διαφορετικούς BP να επεξεργάζονται μόνο το εύρος των συναλλαγών τους. Αυτό είναι ένα εξαιρετικά δύσκολο έργο, ειδικά όσον αφορά την ασφάλεια κατά τη συγχώνευση θραυσμάτων. Η δίκαιη επιλογή ενός τυχαίου BP με σκοπό την ανάθεση των υπευθύνων για ένα συγκεκριμένο θραύσμα, όπως στους αλγόριθμους συναίνεσης, είναι επίσης καθήκον του PVRB. Στα κεντρικά συστήματα, τα θραύσματα εκχωρούνται από έναν εξισορροπητή· αυτός απλώς υπολογίζει τον κατακερματισμό από το αίτημα και το στέλνει στον απαιτούμενο εκτελεστή. Στις μπλοκ αλυσίδες, η ικανότητα επηρεασμού αυτής της ανάθεσης μπορεί να οδηγήσει σε επίθεση κατά της συναίνεσης. Για παράδειγμα, το περιεχόμενο των συναλλαγών μπορεί να ελεγχθεί από έναν εισβολέα, μπορεί να ελέγξει ποιες συναλλαγές πηγαίνουν στο θραύσμα που ελέγχει και να χειριστεί την αλυσίδα των μπλοκ σε αυτό. Μπορείτε να διαβάσετε μια συζήτηση για το πρόβλημα της χρήσης τυχαίων αριθμών για την κοινή χρήση εργασιών στο Ethereum εδώ
Το Sharding είναι ένα από τα πιο φιλόδοξα και σοβαρά προβλήματα στον τομέα του blockchain· η λύση του θα επιτρέψει τη δημιουργία αποκεντρωμένων δικτύων φανταστικής απόδοσης και όγκου. Το PVRB είναι μόνο ένα από τα σημαντικά μπλοκ για την επίλυσή του.

Παιχνίδια, οικονομικά πρωτόκολλα, διαιτησία

Ο ρόλος των τυχαίων αριθμών στη βιομηχανία τυχερών παιχνιδιών είναι δύσκολο να υπερεκτιμηθεί. Η ρητή χρήση σε διαδικτυακά καζίνο και η σιωπηρή χρήση κατά τον υπολογισμό των επιπτώσεων της δράσης ενός παίκτη είναι όλα εξαιρετικά δύσκολα προβλήματα για τα αποκεντρωμένα δίκτυα, όπου δεν υπάρχει τρόπος να βασιστεί κανείς σε μια κεντρική πηγή τυχαίας. Αλλά η τυχαία επιλογή μπορεί επίσης να λύσει πολλά οικονομικά προβλήματα και να βοηθήσει στη δημιουργία απλούστερων και πιο αποτελεσματικών πρωτοκόλλων. Ας υποθέσουμε ότι στο πρωτόκολλό μας υπάρχουν διαφωνίες σχετικά με την πληρωμή για ορισμένες φθηνές υπηρεσίες, και αυτές οι διαφορές συμβαίνουν αρκετά σπάνια. Σε αυτήν την περίπτωση, εάν υπάρχει αδιαμφισβήτητο PVRB, οι πελάτες και οι πωλητές μπορούν να συμφωνήσουν να επιλύσουν τις διαφορές τυχαία, αλλά με δεδομένη πιθανότητα. Για παράδειγμα, με πιθανότητα 60% κερδίζει ο πελάτης και με πιθανότητα 40% κερδίζει ο πωλητής. Αυτή η προσέγγιση, η οποία είναι παράλογη από την πρώτη άποψη, σας επιτρέπει να επιλύετε αυτόματα διαφορές με ένα ακριβώς προβλέψιμο μερίδιο κερδών/ζημιών, κάτι που ταιριάζει και στα δύο μέρη χωρίς καμία συμμετοχή τρίτου και περιττή απώλεια χρόνου. Επιπλέον, ο λόγος πιθανότητας μπορεί να είναι δυναμικός και να εξαρτάται από ορισμένες καθολικές μεταβλητές. Για παράδειγμα, εάν μια εταιρεία τα πηγαίνει καλά, έχει χαμηλό αριθμό διαφορών και υψηλή κερδοφορία, η εταιρεία μπορεί αυτόματα να μετατοπίσει την πιθανότητα επίλυσης μιας διαφοράς προς την πελατοκεντρικότητα, για παράδειγμα 70/30 ή 80/20, και αντίστροφα, Εάν οι διαφωνίες απαιτούν πολλά χρήματα και είναι δόλιες ή ανεπαρκείς, μπορείτε να μετατοπίσετε την πιθανότητα προς την άλλη κατεύθυνση.

Ένας μεγάλος αριθμός από ενδιαφέροντα αποκεντρωμένα πρωτόκολλα, όπως τα επιμελημένα μητρώα, οι αγορές προβλέψεων, οι καμπύλες σύνδεσης και πολλά άλλα, είναι οικονομικά παιχνίδια στα οποία η καλή συμπεριφορά ανταμείβεται και η κακή συμπεριφορά τιμωρείται. Συχνά περιέχουν προβλήματα ασφάλειας για τα οποία οι προστασίες συγκρούονται μεταξύ τους. Ό,τι προστατεύεται από επίθεση από «φάλαινες» με δισεκατομμύρια μάρκες («μεγάλο ποντάρισμα») είναι ευάλωτο σε επιθέσεις από χιλιάδες λογαριασμούς με μικρά υπόλοιπα («ποντάρισμα sybil») και μέτρα που λαμβάνονται κατά μίας μόνο επίθεσης, όπως μη Οι γραμμικές χρεώσεις που δημιουργούνται για να κάνουν την εργασία με ένα μεγάλο μερίδιο ασύμφορη συνήθως δυσφημίζονται από μια άλλη επίθεση. Εφόσον μιλάμε για οικονομικό παιχνίδι, τα αντίστοιχα στατιστικά βάρη μπορούν να υπολογιστούν εκ των προτέρων, και απλά να αντικατασταθούν οι προμήθειες με τυχαιοποιημένες με την κατάλληλη κατανομή. Τέτοιες πιθανοτικές προμήθειες υλοποιούνται εξαιρετικά απλά εάν το blockchain έχει μια αξιόπιστη πηγή τυχαίας και δεν απαιτεί σύνθετους υπολογισμούς, καθιστώντας δύσκολη τη ζωή τόσο για τις φάλαινες όσο και για τις σίμπλες.
Ταυτόχρονα, είναι απαραίτητο να συνεχίσετε να θυμάστε ότι ο έλεγχος ενός μόνο bit σε αυτήν την τυχαιότητα σάς επιτρέπει να εξαπατήσετε, μειώνοντας και αυξάνοντας τις πιθανότητες στο μισό, επομένως ένα ειλικρινές PVRB είναι το πιο σημαντικό στοιχείο τέτοιων πρωτοκόλλων.

Πού να βρείτε το σωστό τυχαίο;

Θεωρητικά, η δίκαιη τυχαία επιλογή σε αποκεντρωμένα δίκτυα καθιστά σχεδόν οποιοδήποτε πρωτόκολλο αποδεδειγμένα ασφαλές έναντι συμπαιγνίας. Το σκεπτικό είναι αρκετά απλό - εάν το δίκτυο συμφωνεί σε ένα μόνο 0 ή 1 bit και λιγότεροι από τους μισούς συμμετέχοντες είναι ανέντιμοι, τότε, με αρκετές επαναλήψεις, το δίκτυο είναι εγγυημένο ότι θα καταλήξει σε συναίνεση για αυτό το bit με σταθερή πιθανότητα. Απλά επειδή ένας ειλικρινής τυχαίος θα επιλέξει 51 στους 100 συμμετέχοντες το 51% των περιπτώσεων. Αλλά αυτό είναι στη θεωρία, γιατί... σε πραγματικά δίκτυα, για να εξασφαλιστεί ένα τέτοιο επίπεδο ασφάλειας όπως στα άρθρα, απαιτούνται πολλά μηνύματα μεταξύ κεντρικών υπολογιστών, σύνθετη κρυπτογραφία πολλαπλών περασμάτων και οποιαδήποτε επιπλοκή του πρωτοκόλλου προσθέτει αμέσως νέα διανύσματα επίθεσης.
Γι' αυτό δεν βλέπουμε ακόμη ένα αποδεδειγμένα ανθεκτικό PVRB σε blockchains, το οποίο θα είχε χρησιμοποιηθεί για αρκετό χρόνο για να ελεγχθεί από πραγματικές εφαρμογές, πολλαπλούς ελέγχους, φορτία και φυσικά πραγματικές επιθέσεις, χωρίς τις οποίες είναι δύσκολο να καλέσουμε προϊόν πραγματικά ασφαλές.

Ωστόσο, υπάρχουν πολλές υποσχόμενες προσεγγίσεις, διαφέρουν σε πολλές λεπτομέρειες και μία από αυτές σίγουρα θα λύσει το πρόβλημα. Με τους σύγχρονους υπολογιστικούς πόρους, η κρυπτογραφική θεωρία μπορεί να μεταφραστεί αρκετά έξυπνα σε πρακτικές εφαρμογές. Στο μέλλον, θα χαρούμε να μιλήσουμε για υλοποιήσεις PVRB: υπάρχουν τώρα αρκετές από αυτές, το καθένα έχει το δικό του σύνολο σημαντικών ιδιοτήτων και χαρακτηριστικών υλοποίησης, και πίσω από το καθένα υπάρχει μια καλή ιδέα. Δεν υπάρχουν πολλές ομάδες που εμπλέκονται στην τυχαιοποίηση και η εμπειρία καθεμιάς από αυτές είναι εξαιρετικά σημαντική για όλους τους άλλους. Ελπίζουμε ότι οι πληροφορίες μας θα επιτρέψουν σε άλλες ομάδες να προχωρήσουν πιο γρήγορα, λαμβάνοντας υπόψη την εμπειρία των προκατόχων τους.

Πηγή: www.habr.com

Προσθέστε ένα σχόλιο