RGB Magic: Ενεργοποιούνται οι συμβάσεις από την πλευρά του πελάτη Bitcoin

By Bitcoin Περιοδικό - 1 έτος πριν - Χρόνος ανάγνωσης: 9 λεπτά

RGB Magic: Ενεργοποιούνται οι συμβάσεις από την πλευρά του πελάτη Bitcoin

RGB is a method of ownership verification built on Bitcoin that allows for the continuation of Bitcoin’s properties.

This is an opinion editorial by Federico Tenga, a long time contributor to Bitcoin projects with experience as start-up founder, consultant and educator.

Πηγή εικόνας

The term "smart contracts" predates the invention of the blockchain and Bitcoin itself. Its first mention is in a Άρθρο του 1994 από τον Nick Szabo, who defined smart contracts as a "computerized transaction protocol that executes the terms of a contract." While by this definition Bitcoin, thanks to its scripting language, supported smart contracts from the very first block, the term was popularized only later by Ethereum promoters, who twisted the original definition as "code that is redundantly executed by all nodes in a global consensus network"

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

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

Αυτό στην πραγματικότητα δεν είναι κάτι καινούργιο, είναι πράγματι ο ίδιος μηχανισμός που χρησιμοποιήθηκε για τη μεταβίβαση ιδιοκτησίας πριν γίνουν δημοφιλή τα δημόσια μητρώα. Στο Ηνωμένο Βασίλειο, for example, it was not compulsory to register a property when its ownership was transferred until the ‘90s. This means that still today over 15% of land in England and Wales is unregistered. If you are buying an unregistered property, instead of checking on a registry if the seller is the true owner, you would have to verify an unbroken chain of ownership going back at least 15 years (a period considered long enough to assume that the seller has sufficient title to the property). In doing so, you must ensure that any transfer of ownership has been carried out correctly and that any mortgages used for previous transactions have been paid off in full. This model has the advantage of improved privacy over ownership, and you do not have to rely on the maintainer of the public land register. On the other hand, it makes the verification of the seller's ownership much more complicated for the buyer.

Πηγή: Τίτλος ιδιοκτησίας μη καταχωρημένης ιδιοκτησίας ακινήτων

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

Δεύτερον, για να αποφευχθεί ο κίνδυνος διπλής δαπάνης του περιουσιακού στοιχείου του πωλητή, πρέπει να εφαρμοστεί ένα σύστημα απόδειξης δημοσίευσης. Για παράδειγμα, θα μπορούσαμε να εφαρμόσουμε έναν κανόνα σύμφωνα με τον οποίο κάθε μεταβίβαση ιδιοκτησίας πρέπει να πραγματοποιείται σε προκαθορισμένο σημείο μιας γνωστής εφημερίδας (π.χ. βάλτε τον κατακερματισμό της μεταβίβασης ιδιοκτησίας στην επάνω δεξιά γωνία της πρώτης σελίδας της Νέας Υόρκης Φορές). Εφόσον δεν μπορείτε να τοποθετήσετε τον κατακερματισμό μιας μεταφοράς στο ίδιο μέρος δύο φορές, αυτό αποτρέπει τις προσπάθειες διπλής δαπάνης. Ωστόσο, η χρήση μιας διάσημης εφημερίδας για το σκοπό αυτό έχει ορισμένα μειονεκτήματα:

You have to buy a lot of newspapers for the verification process. Not very practical.Each contract needs its own space in the newspaper. Not very scalable.The newspaper editor can easily censor or, even worse, simulate double-spending by putting a random hash in your slot, making any potential buyer of your asset think it has been sold before, and discouraging them from buying it. Not very trustless.

For these reasons, a better place to post proof of ownership transfers needs to be found. And what better option than the Bitcoin blockchain, an already established trusted public ledger with strong incentives to keep it censorship-resistant and decentralized?

Εάν χρησιμοποιούμε Bitcoin, we should not specify a fixed place in the block where the commitment to transfer ownership must occur (e.g. in the first transaction) because, just like with the editor of the New York Times, the miner could mess with it. A better approach is to place the commitment in a predefined Bitcoin transaction, more specifically in a transaction that originates from an unspent transaction output (UTXO) to which the ownership of the asset to be issued is linked. The link between an asset and a bitcoin UTXO can occur either in the contract that issues the asset or in a subsequent transfer of ownership, each time making the target UTXO the controller of the transferred asset. In this way, we have clearly defined where the obligation to transfer ownership should be (i.e in the Bitcoin transaction originating from a particular UTXO). Anyone running a Bitcoin node can independently verify the commitments and neither the miners nor any other entity are able to censor or interfere with the asset transfer in any way.

Since on the Bitcoin blockchain we only publish a commitment of an ownership transfer, not the content of the transfer itself, the seller needs a dedicated communication channel to provide the buyer with all the proofs that the ownership transfer is valid. This could be done in a number of ways, potentially even by printing out the proofs and shipping them with a carrier pigeon, which, while a bit impractical, would still do the job. But the best option to avoid the censorship and privacy violations is establish a direct peer-to-peer encrypted communication, which compared to the pigeons also has the advantage of being easy to integrate with a software to verify the proofs received from the counterparty.

This model just described for client-side validated contracts and ownership transfers is exactly what has been implemented with the RGB protocol. With RGB, it is possible to create a contract that defines rights, assigns them to one or more existing bitcoin UTXO and specifies how their ownership can be transferred. The contract can be created starting from a template, called a "schema," in which the creator of the contract only adjusts the parameters and ownership rights, as is done with traditional legal contracts. Currently, there are two types of schemas in RGB: one for issuing fungible tokens (RGB20) και ένα δεύτερο για την έκδοση συλλεκτικών αντικειμένων (RGB21), αλλά στο μέλλον, περισσότερα σχήματα μπορούν να αναπτυχθούν από οποιονδήποτε χωρίς άδεια χωρίς να απαιτούνται αλλαγές σε επίπεδο πρωτοκόλλου.

To use a more practical example, an issuer of fungible assets (e.g. company shares, stablecoins, etc.) can use the RGB20 schema template and create a contract defining how many tokens it will issue, the name of the asset and some additional metadata associated with it. It can then define which bitcoin UTXO has the right to transfer ownership of the created tokens and assign other rights to other UTXOs, such as the right to make a secondary issuance or to renominate the asset. Each client receiving tokens created by this contract will be able to verify the content of the Genesis contract and validate that any transfer of ownership in the history of the token received has complied with the rules set out therein.

So what can we do with RGB in practice today? First and foremost, it enables the issuance and the transfer of tokenized assets with better scalability and privacy compared to any existing alternative. On the privacy side, RGB benefits from the fact that all transfer-related data is kept client-side, so a blockchain observer cannot extract any information about the user's financial activities (it is not even possible to distinguish a bitcoin transaction containing an RGB commitment from a regular one), moreover, the receiver shares with the sender only blinded UTXO (i. e. the hash of the concatenation between the UTXO in which she wish to receive the assets and a random number) instead of the UTXO itself, so it is not possible for the payer to monitor future activities of the receiver. To further increase the privacy of users, RGB also adopts the bulletproof cryptographic mechanism to hide the amounts in the history of asset transfers, so that even future owners of assets have an obfuscated view of the financial behavior of previous holders.

In terms of scalability, RGB offers some advantages as well. First of all, most of the data is kept off-chain, as the blockchain is only used as a commitment layer, reducing the fees that need to be paid and meaning that each client only validates the transfers it is interested in instead of all the activity of a global network. Since an RGB transfer still requires a Bitcoin transaction, the fee saving may seem minimal, but when you start introducing transaction batching they can quickly become massive. Indeed, it is possible to transfer all the tokens (or, more generally, "rights") associated with a UTXO towards an arbitrary amount of recipients with a single commitment in a single bitcoin transaction. Let's assume you are a service provider making payouts to several users at once. With RGB, you can commit in a single Bitcoin transaction thousands of transfers to thousands of users requesting different types of assets, making the marginal cost of each single payout absolutely negligible.

Another fee-saving mechanism for issuers of low value assets is that in RGB the issuance of an asset does not require paying fees. This happens because the creation of an issuance contract does not need to be committed on the blockchain. A contract simply defines to which already existing UTXO the newly issued assets will be allocated to. So if you are an artist interested in creating collectible tokens, you can issue as many as you want for free and then only pay the bitcoin transaction fee when a buyer shows up and requests the token to be assigned to their UTXO.

Furthermore, because RGB is built on top of bitcoin transactions, it is also compatible with the Lightning Network. While it is not yet implemented at the time of writing, it will be possible to create asset-specific Lightning channels and route payments through them, similar to how it works with normal Lightning transactions.

Συμπέρασμα

Το RGB είναι μια πρωτοποριακή καινοτομία που ανοίγει σε νέες περιπτώσεις χρήσης χρησιμοποιώντας ένα εντελώς νέο παράδειγμα, αλλά ποια εργαλεία είναι διαθέσιμα για τη χρήση του; Εάν θέλετε να πειραματιστείτε με τον πυρήνα της ίδιας της τεχνολογίας, θα πρέπει να το δοκιμάσετε απευθείας Κόμβος RGB. Εάν θέλετε να δημιουργήσετε εφαρμογές πάνω από το RGB χωρίς να χρειάζεται να εμβαθύνετε στην πολυπλοκότητα του πρωτοκόλλου, μπορείτε να χρησιμοποιήσετε το βιβλιοθήκη rgb-lib, το οποίο παρέχει μια απλή διεπαφή για προγραμματιστές. Εάν θέλετε απλώς να προσπαθήσετε να εκδώσετε και να μεταφέρετε περιουσιακά στοιχεία, μπορείτε να παίξετε Iris Wallet για Android, του οποίου ο κώδικας είναι επίσης ανοιχτός κώδικας GitHub. Αν θέλετε απλώς να μάθετε περισσότερα για το RGB, μπορείτε να το ελέγξετε αυτόν τον κατάλογο πόρων.

This is a guest post by Federico Tenga. Opinions expressed are entirely their own and do not necessarily reflect those of BTC Inc or Bitcoin Περιοδικό.

Πρωτότυπη πηγή: Bitcoin περιοδικό