Το Cloudflare εισήγαγε μια κατανεμημένη γεννήτρια τυχαίων αριθμών

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

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

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

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

Το Drand μπορεί επίσης να χρησιμοποιηθεί για την παράδοση τοπικά δημιουργημένων ιδιωτικών τυχαίων αριθμών σε πελάτες. Για τη μετάδοση ενός τυχαίου αριθμού, χρησιμοποιείται το σχήμα κρυπτογράφησης ECIES, εντός του οποίου ο πελάτης δημιουργεί ένα ιδιωτικό και δημόσιο κλειδί. Το δημόσιο κλειδί μεταφέρεται στον διακομιστή από το Drand. Ο τυχαίος αριθμός κρυπτογραφείται χρησιμοποιώντας το δεδομένο δημόσιο κλειδί και μπορεί να προβληθεί μόνο από τον πελάτη που κατέχει το ιδιωτικό κλειδί. Για πρόσβαση στους διακομιστές, μπορείτε να χρησιμοποιήσετε το βοηθητικό πρόγραμμα "drand" (για παράδειγμα, "drand get public group.toml", όπου το group.toml είναι μια λίστα κόμβων προς δημοσκόπηση) ή το Web API (για παράδειγμα, μπορείτε να χρησιμοποιήσετε " κουρδίστε το https://drand.cloudflare.com /api/public" ή αποκτήστε πρόσβαση από JavaScript χρησιμοποιώντας τη βιβλιοθήκη DrandJS). Τα μεταδεδομένα αιτήματος αποστέλλονται σε μορφή TOML και η απάντηση επιστρέφεται σε JSON.

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

  • σύννεφο, LavaRand, τυχαίες τιμές σχηματίστηκε με βάση τις απρόβλεπτες ροές υγρών λάμπες λάβας, εικόνες των οποίων παρέχονται ως εντροπία εισόδου για το CSPRNG (Cryptographically Secure PseudoRandom Number Generator).
  • EPFL (Ecole Polytechnique Federale de Lausanne), URand,
    χρησιμοποιείται μια τυπική τοπική γεννήτρια /dev/urandom, η οποία χρησιμοποιεί είσοδο πληκτρολογίου, κίνηση του ποντικιού, ροές κυκλοφορίας κ.λπ. ως πηγές εντροπίας.

  • Πανεπιστήμιο της Χιλής, UChile, ένα δίκτυο σεισμικών αισθητήρων χρησιμοποιείται ως πηγή εντροπίας, καθώς και δεδομένα από ραδιοφωνικές εκπομπές, δραστηριότητα Twitter, αλλαγές στο blockchain Ethereum και μια σπιτική γεννήτρια RNG υλικού.
  • Η Kudelski Security, ChaChaRand, παρέχει μια CRNG (Cryptographic Random Number Generator) που βασίζεται στον κρυπτογράφηση ChaCha20.
  • Τα Protocol Labs, InterplanetaryRand, τα τυχαία δεδομένα εξάγονται από τα noise catchers και συνδυάζονται με Linux PRNG και μια γεννήτρια ψευδοτυχαίων αριθμών ενσωματωμένη στην CPU.

Επί του παρόντος, ανεξάρτητοι συμμετέχοντες έχουν ξεκινήσει 8 δημόσια σημεία πρόσβασης στο API, μέσω των οποίων μπορείτε να μάθετε τόσο τον τρέχοντα συνοπτικό τυχαίο αριθμό (για παράδειγμα, "curl https://drand.cloudflare.com/api/public") και να προσδιορίσετε αξία σε μια συγκεκριμένη στιγμή στο παρελθόν (“curl https://drand.cloudflare.com/api/public?round=1234”):

  • https://drand.cloudflare.com:443
  • https://random.uchile.cl:8080
  • https://drand.cothority.net:7003
  • https://drand.kudelskisecurity.com:443
  • https://drand.lbarman.ch:443
  • https://drand.nikkolasg.xyz:8888
  • https://drand.protocol.ai:8080
  • https://drand.zerobyte.io:8888

Πηγή: opennet.ru

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