1/ With #RGB one needs to change a mindset from “ethereum smart contracts” to normal understanding of what smart contract is. And first, this is a _contract_ between parties. Well-defined parties. Not some record in a global registry, like this concept was distorted in ethereum.
2/ RGB is _bearer rights_ smart contracts, returning the world what was lost of the true free market because of regulations and requirements for centralized censorhip with global registries (even when they are on blockchain, decentralization does not make them less global).
3/ Next, after shifting the point of view, you understand that as an owner of something you are responsible for your own self to keep the data required for securing and ensuring your actual ownership
4/ ownership is: map with the route to the hidden treasury/vault in case of digital gold; keys from the safe/valut in case of paper bearer corporate shares or bonds; private keys in case of bitcoin and RGB client-validated data in case of RGB smart contracts
5/ But how you prove your ownership/digital rights to other party? Well, in case of paper shares you demonstrate you paper with the original signature on it. In case of RGB, you demonstrate your client-validated data, which are committed in a unique way to a blockhain.
6/ These commitments are hidden/secure in terms that w/o client-validated data you are unable to seem them onchain with any tracking tools.
7/ This proves a history of your ownership right up to the issuance - and you will veryfy the issuance (genesis) by checking the identity of the issuer (or confirmance to the issuance conditions in case of decentralized issuance, which is also possible in RGB)
8/ Finally, your main question: how there parties can interact with some smart contract? Well, of course they can do that only in a way which is allowed by the contract creator and (possibly) some specific set of owners.
9/ For instance, you may issue your assets only if that was allowed by the contract creator(s) and only in strict confirmance to their rules. Technically, you will need access to the contract genesis + (optionally) some part of the history up to a specific state, if needed.
10/ Then you create so-called “state extension”, creating/defining new state (=issing assets etc). This operation must conform to smart contract, otherwise your new issued state noone will accept!
11/ So, if you need to “interact with the smart contract” from outside, first it must be allowed by contract creator, second you need a genesis for that contract and third you will have to do a “public state extension” according to the contract rules
12/ If you have two owners of some rights under some contract wishing to interact they do not need “public extensions” for that. Instead, they can use atomic swaps, DLCs and any other technology to structure synchronized/trustless ownership transfer,
13/ ... at the same time confirming to RGB contract rules for the transfer — and that’s all. They structure their deal on top of bitcoin tx/LN (mulripeer)channel/other payment channel or atomic swap + exchange their client-validated state

• • •

Missing some Tweet in this thread? You can try to force a refresh
 

Keep Current with Dr Maxim Orlovsky [LNP/BP]

Dr Maxim Orlovsky [LNP/BP] Profile picture

Stay in touch and get notified when new unrolls are available from this author!

Read all threads

This Thread may be Removed Anytime!

PDF

Twitter may remove this content at anytime! Save it as PDF for later use!

Try unrolling a thread yourself!

how to unroll video
  1. Follow @ThreadReaderApp to mention us!

  2. From a Twitter thread mention us with a keyword "unroll"
@threadreaderapp unroll

Practice here first or read more on our help page!

Did Thread Reader help you today?

Support us! We are indie developers!


This site is made by just two indie developers on a laptop doing marketing, support and development! Read more about the story.

Become a Premium Member ($3/month or $30/year) and get exclusive features!

Become Premium

Too expensive? Make a small donation by buying us coffee ($5) or help with server cost ($10)

Donate via Paypal Become our Patreon

Thank you for your support!

Follow Us on Twitter!