Hidden in Plain Sight: A Sneaky Solidity Implementation of a Sealed-Bid Auction PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.

Hidden in Plain Sight: A Sneaky Solidity Implementation of a Sealed-Bid Auction

Νοέμβριος 16, 2022

Μάικλ Ζου

Σημείωση του συντάκτη: Αυτό το κομμάτι είναι μέρος της συνεχιζόμενης σειράς δημοπρασιών για όλα τα πράγματα για το web3. Μέρος 1 ήταν μια επισκόπηση των σχεδίων δημοπρασιών και των τεχνικών προκλήσεων (και ευκαιριών) ειδικά για το σχεδιασμό μηχανισμών σε ένα πλαίσιο blockchains χωρίς άδεια. Μέρος 2 ήταν ένα κομμάτι για την εκκαθάριση της αγοράς και την αποφυγή των πολέμων αερίων. Μέρος 3 μοιράζεται μια επισκόπηση των κανονικών τύπων δημοπρασιών, μια ματιά στο πώς η θεωρία μεταφράζεται στην πράξη και την πρώτη μας εφαρμογή μιας νέας δημοπρασίας Vickrey με σφραγισμένη προσφορά. 

Οι δημοπρασίες on-chain είναι ένας από τους πιο ενδιαφέροντες (και πανταχού παρόντες) σχεδιαστικούς χώρους στο web3 — από τις πωλήσεις NFT έως τις παράλληλες δημοπρασίες — δημιουργώντας ένα νέο τοπίο υλοποιήσεων και έρευνας. Ενώ ο σχεδιασμός του μηχανισμού δημοπρασιών υπάρχει εδώ και αιώνες και έχει εξελιχθεί τις τελευταίες δεκαετίες με την εμφάνιση του ιστού και του ηλεκτρονικού εμπορίου, μόλις τώρα εφαρμόζουμε αυτές τις προσεγγίσεις στα έξυπνα συμβόλαια.

Αρχίζουμε επίσης να βλέπουμε περισσότερα σχέδια δημοπρασιών που είναι εγγενή σε blockchain, συμπεριλαμβανομένων δικός μας ανοικτού κώδικα Αλληλεγγύη υλοποίηση μιας δημοπρασίας Vickrey και αρκετές ενδιαφέρουσες εξελίξεις από την κοινότητα (συμπεριλαμβανομένων προτάσεις για βελτιώσεις απόδοσης, καινούργιο θεωρητικά αποτελέσματακαι δύο νικητής στο hackathon υλοποιήσεις πλειστηριασμών με σφραγισμένη προσφορά). Στην πρώτη μας σχεδίαση, κάναμε μια αντιστάθμιση μεταξύ της ιδιωτικής ζωής και της αποδοτικότητας κεφαλαίου: Χρησιμοποιήσαμε υπερασφάλιση (οι πλειοδότες κλειδώνουν περισσότερες εξασφαλίσεις από αυτές που απαιτούνται από την προσφορά τους) προκειμένου να επιβάλουμε την πληρωμή από τον νικητή πλειοδότη, χωρίς να αποκαλύψουμε τις ακριβείς αξίες προσφοράς μέσω της εξασφάλισης ποσό. Με το κλείδωμα περισσότερων κεφαλαίων, αποκτάτε περισσότερη ιδιωτικότητα με δυνητικά μεγαλύτερο κόστος ευκαιρίας. Αλλά τι θα γινόταν αν μπορούσαμε να υποβάλουμε προσφορά για το απόρρητο χωρίς υπερασφάλεια; 

Αυτή η ανάρτηση παρουσιάζει ένα νέο σχέδιο δημοπρασίας που ονομάζουμε "SneakyAuction", το οποίο συνδυάζει το CREATE2 opcode και δηλώστε τα αποδεικτικά στοιχεία για την εγγύηση του απορρήτου της προσφοράς χωρίς να απαιτείται από τους πλειοδότες να δεσμεύσουν περισσότερες εξασφαλίσεις από αυτές που απαιτούνται. Ξεκινάμε αναλύοντας τον τρόπο λειτουργίας του και, στη συνέχεια, το συγκρίνουμε με την προηγούμενη εφαρμογή μας (OverCollateralizedAuction) όσον αφορά το κόστος αερίου, την εμπειρία χρήστη και το απόρρητο. Προσθέσαμε επίσης την υλοποίηση στο δικό μας Δημοπρασία ζωολογικός κήπος αποθετήριο στο GitHub, ώστε να μπορείτε να το διαχωρίσετε, να το χτίσετε και να το ακολουθήσετε καθώς εμβαθύνουμε σε περισσότερους μηχανικούς. Εν τω μεταξύ, περισσότερα για το πώς λειτουργεί και συγκρίνεται με τον προηγούμενο σχεδιασμό μας παρακάτω. 

Πώς λειτουργεί: Δέσμευση για προσφορές χρησιμοποιώντας το CREATE2

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

Στην υπερασπιστική εφαρμογή Vickrey, οι υποψήφιοι αγοραστές υποβάλλουν προσφορές καλώντας το commitBid λειτουργία, παρέχοντας μια δέσμευση κατακερματισμού και την εξασφάλιση που θα δεσμευτεί. Αυτή η προσέγγιση ικανοποιεί τις απαιτήσεις, αλλά έχει ορισμένα μειονεκτήματα. Παρόλο που η ίδια η προσφορά είναι κρυμμένη από τον κατακερματισμό, το commitBid συναλλαγή ανοιχτά και αμέσως σηματοδοτεί την πρόθεση του χρήστη: "Θα ήθελα να υποβάλω προσφορά σε αυτήν τη δημοπρασία και εδώ είναι η ασφάλεια για την προσφορά μου." Χωρίς υπερβολική εξασφάλιση, η ορατότητα (και η συνδεσιμότητα) και των δύο πρόθεση και εγγύηση θα αποκάλυπτε τις τιμές προσφοράς. Ωστόσο, εάν μπορούμε να αποκρύψουμε την πρόθεση μιας συναλλαγής, ενδέχεται να μπορέσουμε να επιτύχουμε το απόρρητο της προσφοράς χωρίς να βασιζόμαστε στην υπερασφάλεια. 

Η CREATE2 opcode, που εισάγεται στο EIP-1014 και περιλαμβάνεται στο σκληρό πιρούνι της Κωνσταντινούπολης, μας δίνει έναν τρόπο να κάνουμε ακριβώς αυτό. ο CREATE και CREATE2 Τα opcodes χρησιμοποιούνται και τα δύο για την ανάπτυξη έξυπνων συμβάσεων, αλλά διαφέρουν ως προς τον τρόπο υπολογισμού των διευθύνσεων ανάπτυξης. ο CREATE Η διεύθυνση ανάπτυξης υπολογίζεται ως κατακερματισμός της διεύθυνσης του προγραμματιστή και της nonce. ο CREATE2 Η διεύθυνση ανάπτυξης, από την άλλη πλευρά, υπολογίζεται ως κατακερματισμός των παραμέτρων bytecode και κατασκευαστή της σύμβασης, ένα αυθαίρετο αλάτι και η διεύθυνση του προγραμματιστή (καθέκαστα).

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

Το πιο σημαντικό για εμάς, το CREATE2 Η διεύθυνση ανάπτυξης μπορεί να λειτουργήσει ως δέσμευση κατακερματισμού σε οποιαδήποτε συμπεριφορά που ορίζεται από τον bytecode εισόδου και τις παραμέτρους. Εάν οι παράμετροι του κατασκευαστή κωδικοποιούν μια προσφορά, το CREATE2 διεύθυνση μπορεί να χρησιμεύσει ως δέσμευση προσφοράς.

Hidden in Plain Sight: A Sneaky Solidity Implementation of a Sealed-Bid Auction PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.

Υπολογισμός της διεύθυνσης ενός θησαυροφυλάκιου στο Solidity

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

sneakyvault σύμβαση δημοπρασίας Soliditysneakyvault σύμβαση δημοπρασίας Solidity

Το συμβόλαιο SneakyVault. Ελέγχει εάν η προσφορά του έχει κερδίσει και αποστέλλει το ETH του στον πωλητή ή στον πλειοδότη ανάλογα. Όλα στον κατασκευαστή!

Αυτή η προσέγγιση κάνει τη συναλλαγή να μην διακρίνεται από τη μεταφορά σε εξωτερική διεύθυνση (EOA). Η συναλλαγή προσφοράς είναι κρυμμένη σε κοινή θέα, μεταξύ άλλων μεταφορών στο blockchain. Μια σημαντική προειδοποίηση, ωστόσο: αυτή η φαινομενικά τακτοποιημένη λύση καθιστά επίσης δύσκολο τον προσδιορισμό πότε η εξασφάλιση ήταν κλειδωμένη. Είναι σημαντικό για την ασφάλεια της δημοπρασίας το θησαυροφυλάκιο να χρηματοδοτήθηκε πριν αποκαλυφθούν τυχόν προσφορές. Διαφορετικά, ένας ευκαιριακός αγοραστής θα μπορούσε να περιμένει μέχρι το τέλος της περιόδου αποκάλυψης, οπότε οι περισσότερες προσφορές έχουν ήδη αποκαλυφθεί, για να αποφασίσει εάν θα εξασφαλίσει ή όχι το θησαυροφυλάκιό του. Πρέπει να διασφαλίσουμε ότι τα θησαυροφυλάκια είναι εξασφαλισμένα κατά την περίοδο υποβολής προσφορών, όχι κατά την περίοδο αποκάλυψης, χρησιμοποιώντας άλλο εργαλείο: δηλώστε αποδείξεις.

Αναδρομική επαλήθευση εξασφαλίσεων με κρατικές αποδείξεις

Ένας τρόπος για να διασφαλίσετε ότι ένα θησαυροφυλάκιο είχε εξασφαλίσει κατά τη διάρκεια της περιόδου υποβολής προσφορών είναι ο έλεγχος του υπολοίπου του σε προηγούμενο μπλοκ. Είναι σχετικά εύκολο να το κάνετε αυτό εκτός αλυσίδας κάνοντας ερώτημα σε έναν κόμβο αρχειοθέτησης. αλλά πολύ πιο δύσκολο να επιτευχθεί (απίστευτα) on-chain. Τα EVM BALANCE Το opcode διαβάζει το τρέχον υπόλοιπο μιας διεύθυνσης, αλλά δεν υπάρχει τέτοιος κωδικός για την ανάκτηση του a Το παρελθόν ισορροπία. Στην πραγματικότητα, ο μόνος κωδικός EVM που παρέχει οποιοδήποτε είδος πρόσβασης ιστορικού κατάστασης είναι BLOCKHASH, το οποίο επιστρέφει τον κατακερματισμό ενός από τα τελευταία 256 μπλοκ. Ευτυχώς - με λίγη βοήθεια εκτός αλυσίδας - το blockhash λειτουργεί αρκετά καλά για την περίπτωση χρήσης μας.

Το blockhash είναι το hash της κεφαλίδας του μπλοκ, το οποίο περιλαμβάνει (μεταξύ άλλων μεταδεδομένων) το ρίζα κατάστασης αυτού του μπλοκ. Η ρίζα κατάστασης είναι ο ριζικός κόμβος του a Δοκίμα Merkle-Patricia, όπου κάθε κόμβος φύλλου αντιστοιχεί σε μια συγκεκριμένη διεύθυνση και περιλαμβάνει τη διεύθυνση' εξισορρόπηση σε εκείνο το τετράγωνο. Δεν μπορούμε να έχουμε απευθείας πρόσβαση σε αυτούς τους κόμβους φύλλων στην αλυσίδα, αλλά μπορούμε να επαληθεύσουμε ότι τα περιεχόμενα ενός κόμβου φύλλου είναι σωστά. Στην πραγματικότητα, το eth_getProof Μέθοδος RPC που υποστηρίζεται από Αλχημεία (μεταξύ άλλων παρόχων) επιστρέφει τις αποδείξεις Merkle που απαιτούνται για την εκτέλεση αυτής της επαλήθευσης (Ο Leo Zhang παρέχει σε βάθος εξήγηση για το πώς λειτουργεί αυτό στο πλαίσιο των πελατών Ethereum light). Αυτό σημαίνει ότι με λίγη βοήθεια εκτός αλυσίδας (μία μόνο κλήση RPC), οι πλειοδότες μπορούν να αποδείξουν στο συμβόλαιο SneakyAuction ότι το θησαυροφυλάκιό τους είχε εξασφαλίσει κατά τη διάρκεια της περιόδου υποβολής προσφορών. 

Hidden in Plain Sight: A Sneaky Solidity Implementation of a Sealed-Bid Auction PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.Hidden in Plain Sight: A Sneaky Solidity Implementation of a Sealed-Bid Auction PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.

Τα στοιχεία μιας κεφαλίδας μπλοκ EVM. Πηγή: https://ethereum.stackexchange.com/a/6414

Στην εφαρμογή μας, το πρώτη προσφορά αποκάλυψε για μια δημοπρασία αποθηκεύει το blockhash του προηγούμενου μπλοκ. Αυτή η συναλλαγή μεταφέρει ουσιαστικά τη δημοπρασία από τη φάση υποβολής προσφορών στη φάση αποκάλυψης — όλα επόμενες προσφορές που αποκαλύφθηκε πρέπει να παράσχει μια απόδειξη Merkle ότι το θησαυροφυλάκιό τους ήταν επαρκώς εξασφαλισμένο πριν από αυτό το μπλοκ (δηλαδή πριν αποκαλυφθεί η πρώτη προσφορά). Σημειώστε ότι το πρώτα revealBid Η συναλλαγή θα ήταν ιδανικά να υποβάλλεται μέσω ιδιωτικής ομάδας συναλλαγών (π.χ. Flashbots). Διαφορετικά, ένας πλειοδότης που παρακολουθεί το mempool (βλέποντας την αξία της αποκαλυπτόμενης προσφοράς) θα μπορούσε να εκτελέσει τη συναλλαγή και να υποβάλει μια προσφορά του τελευταίου δευτερολέπτου. 

LibBalanceProof

Για να ελαχιστοποιήσουμε το κόστος για τους πλειοδότες, γράψαμε ένα βελτιστοποιημένο για το φυσικό αέριο βιβλιοθήκη για να επαληθεύσετε τις αποδείξεις ισορροπίας στην αλυσίδα που βασίζεται συμβάσεις γραμμένο από την ομάδα της Aragon (η οποία πρωτοστάτησε στις αποδείξεις αποθήκευσης on-chain το 2018) και τα συμβόλαια του Hamdi Allam για on-chain Αποκωδικοποίηση RLP. Η βιβλιοθήκη μας χρησιμοποιεί μια σειρά από κόλπα χαμηλού επιπέδου και βελτιστοποιήσεις που βασίζονται στην ιδιαίτερη δομή της δοκιμασίας κατάστασης, επομένως δεν μπορεί να χρησιμοποιηθεί για γενικές δοκιμασίες Merkle-Patricia. Σε αντάλλαγμα, επιτρέπει στο συμβόλαιο SneakyAuction να επαληθεύσει το προηγούμενο υπόλοιπο ενός θησαυροφυλάκιου σε λιγότερο από 30,000 αέριο.

Γράψαμε και ένα ελαφρύ Περιτύλιγμα JavaScript των eth_getProof Μέθοδος RPC. Δεδομένου μιας διεύθυνσης και ενός αριθμού μπλοκ, επιστρέφει την κεφαλίδα μπλοκ απόδειξης υπολοίπου και σειριακής κεφαλίδας μπλοκ RLP, η οποία μπορεί να χρησιμοποιηθεί για την αποκάλυψη μιας προσφοράς. 

Πώς συγκρίνεται 

Ας συγκρίνουμε τη νέα μας προσέγγιση SneakyAuction με τη σχεδίαση OverCollateralizedAuction που κυκλοφόρησε τελευταία, με διάφορες βασικές διαστάσεις που ενδιαφέρουν οι τεχνικοί σχεδιαστές ή οι χρήστες: κόστος φυσικού αερίου, εμπειρία χρήστη και απόρρητο. 

Κόστος φυσικού αερίου

SneakyAuction's revealBid, endAuction, να withdrawCollateral οι λειτουργίες απαιτούν ανάπτυξη α SneakyVault, επομένως είναι πιο ακριβά από τα αντίστοιχα OverCollateralizedAuction. revealBid είναι ιδιαίτερα ακριβό επειδή επαληθεύει επίσης μια απόδειξη ισορροπίας, η οποία κοστίζει περίπου 25,000 αέριο.

Κατά προσέγγιση κόστος αερίου διαφορετικών εργασιών, με βάση τις δοκιμές μονάδων Χυτηρίου

Εμπειρία χρήστη

Αν και οι δύο υλοποιήσεις ακολουθούν παρόμοια συνολική ροή (φάση υποβολής προσφορών, φάση αποκάλυψης, λήξη δημοπρασίας), υπάρχουν ορισμένες διαφορές στην εμπειρία χρήστη. Η SneakyAuction έχει μερικά μικρά μειονεκτήματα:

  • Η εμπειρία της αποστολής ETH σε ένα μη αναπτυγμένο θησαυροφυλάκιο, αν και θα μπορούσε να αφαιρεθεί από το front-end, είναι δυνητικά μπερδεμένη για τους χρήστες που εξετάζουν τη συναλλαγή προσφοράς τους σε έναν εξερευνητή μπλοκ.
  • Με την OverCollateralizedAuction, είναι δυνατό να τερματιστεί νωρίς η δημοπρασία εάν έχουν αποκαλυφθεί όλες οι προσφορές. Αυτό δεν είναι δυνατό στη SneakyAuction επειδή η σύμβαση δεν έχει τρόπο να γνωρίζει πόσες προσφορές έχουν δεσμευτεί.
  • Οι πλειοδότες μπορούν να ενημερώσουν την προσφορά τους και να συμπληρώσουν τις εξασφαλίσεις τους με OverCollateralizedAuction καλώντας commitBid πάλι. Στο SneakyAuction, οι πλειοδότες δεν μπορούν να κάνουν ενημερώσεις αφού το θησαυροφυλάκιο της προσφοράς έχει εξασφαλίσει.

Προστασία προσωπικών δεδομένων

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

Για απλότητα, ας υποθέσουμε ότι κάθε προσφορά παρέχεται με ασφάλεια χρησιμοποιώντας μία μόνο μεταφορά ETH. Παρατηρούμε ότι: 

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

Οι μεταφορές ETH κατά τη διάρκεια της περιόδου υποβολής προσφορών σε κατά τα άλλα «άθικτες» διευθύνσεις είναι εύλογες προσφορές — με άλλα λόγια, είναι ο «θόρυβος» που κρύβει τις συναλλαγές προσφορών. Για να βοηθήσουμε στην ποσοτικοποίηση του απορρήτου του SneakyAuction, μπορούμε να δούμε το σχήμα αυτής της κατανομής θορύβου.Hidden in Plain Sight: A Sneaky Solidity Implementation of a Sealed-Bid Auction PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.

Hidden in Plain Sight: A Sneaky Solidity Implementation of a Sealed-Bid Auction PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.

Αυτό το ιστόγραμμα δείχνει την κατανομή από το έτος έως την ημερομηνία των ημερήσιων μεταφορών ETH (στο δίκτυο Ethereum) σε ανέγγιχτες διευθύνσεις, απεικονίζοντας την κατανομή θορύβου για μια περίοδο υποβολής προσφορών 24 ωρών. Μπορούμε να δούμε ότι οι περισσότερες συναλλαγές εμπίπτουν στο εύρος [0.001, 1] ETH, πράγμα που σημαίνει ότι οι δημοπρασίες με αναμενόμενη τιμή προσφοράς σε αυτό το εύρος θα έχουν το ισχυρότερο απόρρητο. Από την άλλη πλευρά, ο τυπικός θόρυβος μπορεί να μην παρέχει επαρκές απόρρητο για δημοπρασίες όπου η αναμενόμενη προσφορά είναι μεγαλύτερη από 10 ETH — σπάνια υπάρχουν περισσότερες από 100 μεταφορές σε αυτό το εύρος, επομένως μια δημοπρασία που προσελκύει πολλές προσφορές θα δημιουργούσε μια εμφανή άνοδο στη διανομή . 

Για μια άλλη προοπτική αυτών των δεδομένων, αυτά τα οικόπεδα διασποράς απεικονίζουν τις μεταφορές στις 15 Οκτωβρίου 2022, επικαλυμμένες με προσφορές από δύο υποθετικές δημοπρασίες: 

Hidden in Plain Sight: A Sneaky Solidity Implementation of a Sealed-Bid Auction PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.Hidden in Plain Sight: A Sneaky Solidity Implementation of a Sealed-Bid Auction PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.

200 προσφορές, που συνήθως διανέμονται γύρω στο 1 ETH

Hidden in Plain Sight: A Sneaky Solidity Implementation of a Sealed-Bid Auction PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.Hidden in Plain Sight: A Sneaky Solidity Implementation of a Sealed-Bid Auction PlatoBlockchain Data Intelligence. Κάθετη αναζήτηση. Ολα συμπεριλαμβάνονται.

200 προσφορές, που συνήθως διανέμονται γύρω στο 100 ETH

Διαισθητικά, θα ήταν πολύ πιο εύκολο για έναν παρατηρητή να αναγνωρίσει προσφορές από τη δεύτερη δημοπρασία. Στην πράξη, θα μπορούσατε να χρησιμοποιήσετε έναν αλγόριθμο ομαδοποίησης όπως ο προσδοκία-μεγιστοποίηση Αλγόριθμος (EM) για την πρόβλεψη ποιες συναλλαγές είναι προσφορές. 

Ωστόσο, υπάρχουν μερικοί άλλοι παράγοντες που μπορούν να κάνουν το SneakyAuction πιο ιδιωτικό (και επομένως πιο συναρπαστικό) στην πράξη:

  1. Μεγαλύτερες περίοδοι υποβολής προσφορών: Κλίμακες απορρήτου με τη διάρκεια της περιόδου υποβολής προσφορών –– όσο μεγαλύτερη είναι η περίοδος υποβολής προσφορών, τόσο περισσότερες μεταφορές υπάρχουν για την απόκρυψη των προσφορών. 
  2. Ταυτόχρονες δημοπρασίες: Κλίμακες απορρήτου με τον αριθμό των ταυτόχρονων δημοπρασιών –– εάν δύο δημοπρασίες βρίσκονται στη φάση υποβολής προσφορών τους ταυτόχρονα, οι προσφορές της μιας δημοπρασίας χρησιμεύουν ως θόρυβος για την άλλη.

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

Ένα απλό συμπέρασμα του μηχανισμού απορρήτου της SneakyAuction είναι ότι κρύβει το αριθμός των προσφορών κατά την περίοδο υποβολής προσφορών. Αυτό είναι ένα πλεονέκτημα σε σχέση με το OverCollateralizedAuction, το οποίο κρύβει μόνο τις αξίες προσφοράς — ο αριθμός των δεσμεύσεων προσφοράς που έχουν γίνει για μια δεδομένη δημοπρασία είναι πλήρως δημόσιος (και μπορεί να δείξει πόσο ανταγωνιστική είναι η δημοπρασία).

***

Ενώ η πρώτη μας εφαρμογή μιας δημοπρασίας σφραγισμένης προσφοράς μετέτρεψε τα χαρακτηριστικά του πραγματικού κόσμου σε αποφάσεις σχεδιασμού στην αλυσίδα, η δεύτερη σχεδίασή μας βασίζεται σε έναν νέο και πρακτικό μηχανισμό για τη χρήση της δημόσιας φύσης των blockchains προς όφελός της: οι σφραγισμένες προσφορές «κρύβονται» μεταξύ άσχετων δραστηριότητα blockchain.

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

***
Οι απόψεις που εκφράζονται εδώ είναι αυτές του μεμονωμένου προσωπικού της AH Capital Management, LLC ("a16z") που αναφέρεται και δεν είναι απόψεις της a16z ή των θυγατρικών της. Ορισμένες πληροφορίες που περιέχονται εδώ έχουν ληφθεί από τρίτες πηγές, συμπεριλαμβανομένων των εταιρειών χαρτοφυλακίου κεφαλαίων που διαχειρίζεται η a16z. Αν και λαμβάνεται από πηγές που πιστεύεται ότι είναι αξιόπιστες, το a16z δεν έχει επαληθεύσει ανεξάρτητα τέτοιες πληροφορίες και δεν κάνει δηλώσεις σχετικά με την τρέχουσα ή διαρκή ακρίβεια των πληροφοριών ή την καταλληλότητά τους για μια δεδομένη κατάσταση. Επιπλέον, αυτό το περιεχόμενο μπορεί να περιλαμβάνει διαφημίσεις τρίτων. Η a16z δεν έχει ελέγξει τέτοιες διαφημίσεις και δεν υποστηρίζει κανένα διαφημιστικό περιεχόμενο που περιέχεται σε αυτές.

Αυτό το περιεχόμενο παρέχεται μόνο για ενημερωτικούς σκοπούς και δεν θα πρέπει να βασίζεται ως νομική, επιχειρηματική, επενδυτική ή φορολογική συμβουλή. Θα πρέπει να συμβουλευτείτε τους δικούς σας συμβούλους για αυτά τα θέματα. Οι αναφορές σε οποιουσδήποτε τίτλους ή ψηφιακά περιουσιακά στοιχεία είναι μόνο για ενδεικτικούς σκοπούς και δεν αποτελούν επενδυτική σύσταση ή προσφορά για παροχή επενδυτικών συμβουλευτικών υπηρεσιών. Επιπλέον, αυτό το περιεχόμενο δεν απευθύνεται ούτε προορίζεται για χρήση από επενδυτές ή υποψήφιους επενδυτές και δεν μπορεί σε καμία περίπτωση να γίνει επίκληση του κατά τη λήψη απόφασης για επένδυση σε οποιοδήποτε αμοιβαίο κεφάλαιο που διαχειρίζεται η a16z. (Μια προσφορά για επένδυση σε ένα αμοιβαίο κεφάλαιο a16z θα γίνει μόνο από το μνημόνιο ιδιωτικής τοποθέτησης, τη συμφωνία εγγραφής και άλλη σχετική τεκμηρίωση οποιουδήποτε τέτοιου κεφαλαίου και θα πρέπει να διαβαστεί στο σύνολό τους.) Τυχόν επενδύσεις ή εταιρείες χαρτοφυλακίου που αναφέρονται, αναφέρονται ή που περιγράφονται δεν είναι αντιπροσωπευτικές όλων των επενδύσεων σε οχήματα που διαχειρίζεται η a16z και δεν μπορεί να υπάρξει διαβεβαίωση ότι οι επενδύσεις θα είναι κερδοφόρες ή ότι άλλες επενδύσεις που θα πραγματοποιηθούν στο μέλλον θα έχουν παρόμοια χαρακτηριστικά ή αποτελέσματα. Μια λίστα με επενδύσεις που πραγματοποιήθηκαν από αμοιβαία κεφάλαια που διαχειρίζεται ο Andreessen Horowitz (εξαιρουμένων των επενδύσεων για τις οποίες ο εκδότης δεν έχει παράσχει άδεια για δημοσιοποίηση της a16z καθώς και των απροειδοποίητων επενδύσεων σε δημόσια διαπραγματεύσιμα ψηφιακά περιουσιακά στοιχεία) είναι διαθέσιμη στη διεύθυνση https://a16z.com/investments /.

Τα γραφήματα και τα γραφήματα που παρέχονται εντός προορίζονται αποκλειστικά για ενημερωτικούς σκοπούς και δεν θα πρέπει να βασίζονται σε αυτά όταν λαμβάνεται οποιαδήποτε επενδυτική απόφαση. Οι προηγούμενες αποδόσεις δεν είναι ενδεικτικές των μελλοντικών αποτελεσμάτων. Το περιεχόμενο μιλά μόνο από την ημερομηνία που υποδεικνύεται. Οποιεσδήποτε προβλέψεις, εκτιμήσεις, προβλέψεις, στόχοι, προοπτικές και/ή απόψεις που εκφράζονται σε αυτό το υλικό υπόκεινται σε αλλαγές χωρίς προειδοποίηση και μπορεί να διαφέρουν ή να είναι αντίθετες με τις απόψεις που εκφράζονται από άλλους. Ανατρέξτε στη διεύθυνση https://a16z.com/disclosures για πρόσθετες σημαντικές πληροφορίες

Σφραγίδα ώρας:

Περισσότερα από Andreessen Horowitz