Tachyon
Πώς το Zcash σχεδιάζει να κάνει τα μυστικά του χρήματα μικρότερα, πιο γρήγορα και πιο εύκολα στη μεταφορά.
Το ταχυόνιο (tachyon) είναι ένα φανταστικό σωματίδιο που θα έτρεχε πιο γρήγορα κι από το φως. Ωραίο όνομα για ένα σχέδιο που θέλει να κάνει τα πράγματα γρήγορα.
Πρώτα απ' όλα, τι είναι το Zcash;
Το Zcash είναι χρήματα που μπορείς να στείλεις μέσω ίντερνετ.
Το ιδιαίτερο: κάθε πληρωμή ταξιδεύει μέσα σε έναν σφραγισμένο φάκελο. Κανείς δεν μπορεί να κρυφοκοιτάξει. Κανείς δεν βλέπει ποιος τον έστειλε, ποιος τον πήρε ή πόσα λεφτά έχει μέσα.
Πολλοί υπολογιστές σε όλο τον κόσμο δουλεύουν μαζί σαν ένα τεράστιο ταχυδρομείο. Μεταφέρουν τους φακέλους και προσέχουν να μην κλέβει κανείς.
Ποιο είναι λοιπόν το πρόβλημα;
Οι σφραγισμένοι φάκελοι είναι τέλειοι για μυστικά. Φέρνουν όμως δύο προβλήματα.
Πρόβλημα 1: κάθε φάκελος είναι βαρύς
Πώς ξέρει το ταχυδρομείο ότι ένας φάκελος έχει αληθινά λεφτά και όχι ψεύτικα; Κάθε φάκελος κουβαλάει ένα χοντρό τετράδιο με μαθηματικά που αποδεικνύει ότι είναι τίμιος, χωρίς να τον ανοίξει κανείς.
Και το ταχυδρομείο κρατάει ένα σημείωμα από κάθε φάκελο, για πάντα. Τα ράφια δεν σταματούν ποτέ να γεμίζουν.
Πρόβλημα 2: τα δικά σου γράμματα βρίσκονται αργά
Κάθε φάκελος είναι σφραγισμένος, οπότε το πορτοφόλι σου δεν ξέρει ποιοι είναι για σένα. Σήμερα πρέπει να δοκιμάσει να ανοίξει κάθε φάκελο που πέρασε ποτέ από το ταχυδρομείο, μόνο και μόνο για να βρει τους λίγους που είναι δικοί σου.
Είναι σαν να ψάχνεις σε κάθε γραμματοκιβώτιο όλης της πόλης για να βρεις την κάρτα για τα γενέθλιά σου.
Κόψε κάθε γράμμα στα δύο
Το Tachyon χωρίζει κάθε πληρωμή σε δύο κομμάτια.
Ένα μικρό σημείωμα άδειας. Λέει «Επιτρέπεται να ξοδέψω αυτά τα λεφτά» και είναι υπογεγραμμένο, σαν σημείωμα από τους γονείς σου.
Και ένα γραμματόσημο. Αυτό είναι το βαρύ κομμάτι με τα μαθηματικά, που αποδεικνύει ότι όλα είναι τίμια.
Γιατί τόσος κόπος; Γιατί τώρα τα γραμματόσημα μπορούν να στριμωχτούν και να μικρύνουν (αυτό είναι το κόλπο 2), ενώ τα σημειώματα άδειας δεν χρειάζεται να αλλάξουν καθόλου.
Οι λέξεις των μεγάλων
- Bundle (ο φάκελος)
- Περιέχει ένα ή περισσότερα actions, το συνολικό value balance και μία binding signature που τα δένει μεταξύ τους.
- Action (το σημείωμα άδειας)
- Ένα value commitment, ένα randomized verification key και μια spend-authorization signature (RedPallas).
- Stamp (το γραμματόσημο)
- Κουβαλάει τα «tachygrams» (nullifiers και note commitments), ένα anchor και το proof. Μένει χωριστά ώστε τα proofs να μπορούν να συγκεντρωθούν (aggregation), ενώ η εξουσιοδότηση κάθε action μένει όπως είναι.
Στρίμωξε πολλά γραμματόσημα σε ένα
Φαντάσου μια σειρά από παιδιά που διορθώνουν εργασίες.
Το πρώτο παιδί ελέγχει ένα φύλλο και δίνει ένα χρυσό αστεράκι. Το επόμενο παιδί ελέγχει το δικό του φύλλο και το αστεράκι του πρώτου, και δίνει ένα καινούργιο αστεράκι. Και πάει λέγοντας.
Στο τέλος, η δασκάλα κοιτάζει μόνο ένα αστεράκι. Αυτό το ένα αστεράκι σημαίνει ότι ελέγχθηκαν όλα τα φύλλα. Και έχει το ίδιο μέγεθος, είτε ήταν 3 φύλλα είτε 300.
Το Tachyon κάνει το ίδιο με τα γραμματόσημα. Μπαίνουν πολλά γραμματόσημα. Βγαίνει μία μικρή απόδειξη. Το ταχυδρομείο ελέγχει μόνο αυτήν.
Φύλλα εργασίας: 12
ελέγχουν
→
12 φύλλα ελέγχθηκαν. Η δασκάλα κοιτάζει 1 αστεράκι.
Αυτή είναι μια εικόνα της ιδέας, όχι μέτρηση.
Οι λέξεις των μεγάλων
Η «σειρά από παιδιά» λέγεται proof-carrying data (PCD): αναδρομικά proofs, όπου κάθε βήμα επαληθεύει το προηγούμενο. Το πλαίσιο PCD του Tachyon λέγεται Ragu, μια παραλλαγή της κατασκευής αναδρομικών SNARK από το Halo, φτιαγμένη για τις καμπύλες Pasta που ήδη χρησιμοποιεί το Zcash. Ο δηλωμένος στόχος του έργου είναι shielded συναλλαγές περίπου 100 φορές μικρότερες από σήμερα.
Άνοιξε μόνο τα δικά σου γράμματα
Θυμάσαι το πρόβλημα 2; Το Tachyon το λύνει με έναν απλό τρόπο. Αυτός που σε πληρώνει σού δίνει τα στοιχεία του γράμματός σου κατευθείαν, σαν να σου περνάει ένα σημείωμα στην τάξη. Έτσι το πορτοφόλι σου δεν χρειάζεται ποτέ να ανοίξει τους φακέλους των άλλων.
Κι όσο το πορτοφόλι σου κοιμάται, ένας βοηθός προσέχει το ταχυδρομείο γι' αυτό. Ο βοηθός κάνει αυτή τη δουλειά χωρίς να μάθει ποτέ τα μυστικά σου.
Το πορτοφόλι σου δοκιμάζει και τους 12 φακέλους. Μόνο οι 2 είναι δικοί σου.
Οι λέξεις των μεγάλων
Σήμερα τα πορτοφόλια κάνουν trial decryption σε κάθε shielded output για να βρουν τα δικά τους notes. Στο Tachyon οι πληρωμές παραδίδονται out of band: ο αποστολέας δίνει τα στοιχεία του note απευθείας στον παραλήπτη, για παράδειγμα σε ένα αίτημα πληρωμής ή ένα URI, οπότε τα κρυπτογραφημένα notes δεν μπαίνουν πια στην αλυσίδα. Τα πορτοφόλια μπορούν να αναθέσουν την παρακολούθηση των νέων blocks σε μια oblivious syncing service, στην οποία δεν εμπιστεύονται ιδιωτικές πληροφορίες.
Και τα ράφια;
Με το Tachyon, το πορτοφόλι σου κουβαλάει το δικό του χρυσό αστεράκι που αποδεικνύει ότι τα λεφτά του είναι αληθινά. Έτσι το ταχυδρομείο χρειάζεται να θυμάται μόνο τα πιο καινούργια σημάδια «αυτό ξοδεύτηκε ήδη». Όλα τα παλιά μπορούν να πάνε στην ανακύκλωση.
Τα ράφια σταματούν να γεμίζουν για πάντα. Αυτό ήταν το πρόβλημα 1.
Και ένα μπόνους ακόμα: τα μυστικά σημειώματα που κάθονταν μέσα σε κάθε φάκελο δεν φυλάγονται πια στο ταχυδρομείο. Άρα μένουν λιγότερα πράγματα για να προσπαθήσουν να σπάσουν οι πανίσχυροι κβαντικοί υπολογιστές που ίσως φτιαχτούν κάποια μέρα.
Οι λέξεις των μεγάλων
Το state του πορτοφολιού αναπαρίσταται ως proof-carrying data, που επισυνάπτεται όταν ξοδεύει. Έτσι οι validators χρειάζονται μόνο τα πρόσφατα anchors και τους nullifiers που αποκαλύφθηκαν πρόσφατα, και μπορούν να κάνουν pruning σχεδόν σε όλα τα υπόλοιπα ενός block. Η αφαίρεση των κρυπτογραφημένων notes από την αλυσίδα αφαιρεί επίσης ευαίσθητα δεδομένα που δεν προστατεύονται ακόμα από κρυπτογραφία ανθεκτική σε κβαντικούς υπολογιστές.
Έχει τελειώσει;
Όχι ακόμα. Κάποιοι άνθρωποι το φτιάχνουν αυτή τη στιγμή. Να τι έχει γίνει μέχρι τώρα.
- Δημιουργία μυστικών κλειδιώνkey derivation
- Κρύψιμο των ποσώνvalue commitments (Pedersen, καμπύλη Pallas)
- Υπογραφή των σημειωμάτων άδειαςspend authorization signatures (RedPallas)
- Έλεγχος ότι ο φάκελος βγάζει σωστό λογαριασμόbinding signatures, bundle verification
- Τα σημάδια «ξοδεύτηκε ήδη»note commitments, nullifier derivation
- Φτιάξιμο και στρίμωγμα των γραμματοσήμωνproofs και stamp compression, περιμένουν το Ragu και το Poseidon
Ακόμα κι όταν ολοκληρωθεί, δεν θα ανάψει απλώς με ένα κουμπί. Πρώτα πρέπει να συμφωνήσει η κοινότητα του Zcash.