OMG Network

Request for Information: ONC Stewardship over Cosmos "spoon"

On the actual topic of a Cosmos spoon (meant to post this yesterday but only ever got around to making a random comment about MetaMask):

As @tousthilagavathy pointed out, there are a number of tools out there to help you spin up a blockchain and put a DEX on it. But launching a multi-operator DEX needs a whole other category of work as well - deploy it, maintain it, bootstrap stakers and the volume that makes staking worthwhile.

Talking about building this as a community means all of that will fall to the community as well; so for the thing to actually function in the real world, you’re also looking at wrangling a whole ecosystem of stakeholders and having the mechanisms in place for them to take collective, coordinated action. There are models out there to take cues from, but it’s not likely to be a copy/paste and it can’t happen in a vacuum.

Not trying to be discouraging, just some items for the to-do list :wink:

1 Like

@AA Not discouraged at all, and I appreciate you adding to our list! This sounds like just the challenge to motivate meaningful action by OMG stakeholders. I will do some research, and @tousthilagavathy has agreed to produce more notes to aid in our discussion and decision-making process on whether ZOMG spoon is worthwhile use of time.

I have also created a vote to credit @tousthilagavathy with 10 DAI - which will execute if confirmed by @nebali in next day.

Note: Creating an endorsement for Bounty here on the Forum, and then the endorsee creating a vote on Aragon or another doing the same (I will manage for now…) feel like easy path forward.

Thanks @ro5s. I sent the vote, still pending in Etherscan.

I do agree that bounty endorsements will be easier here in the forum. We should also consider keeping a ledger of bounties here in the forum, maybe using Discourse badges, as I expect the gas fees for voting frequently will eventually be a concern.

1 Like

Thanks @nebali. I agree that it would be easier to use this forum to keep track of contributions (which might then be redeemed for digital assets from ONC vault?). Would love to iterate more on ‘badges’ and similar, as well!

Recommend we start a new thread to talk about bounties/maybe a running thread to keep track of them as they’re proposed? Since Discourse doesn’t do nested comments afaik, it seems cleaner to discuss that in a separate place where it won’t break up the flow of another topic.

1 Like

Much agreed. Kinda putting Spoon sideways, as it were. I was meaning to create a new topic with a video demo on how to make a bounty withdrawal request from Aragon anyways. Will ping link here in a sec.

Now, I hope we can pivot back to the topic of ZOMG spoon. Are there other chains ONC community should look at? Should we think of ERC20 lockdrop to Polka parachain as way to add governance value to OMG tokens?

Update: Pushing sidetracks over to Bounty DAO Troubleshooting Thread

One advantage polkadot provides over Cosmos is shared validation. With Cosmos the OMG zone would need it’s own validators which we have to arrange for. With polkadot, the OMG parachain can share the validators from the relay chain, making management easier. The details would need to be looked into.

1 Like

Further notes to study and discuss the feasibility of the spoon. @ro5s

Some problems to consider for the spoon

  • As @AA says bootstraping stakers, running and managing the spooned network will involve considerable complexity.
  • Liquidity will be one big obstacle for the spooned DEX which would be quite difficult to solve.
  • Gaining adoption will require marketing efforts. If not done successfully and if liquidity is not solved, the network will become a ghost town and all efforts will be rendered useless.
  • Even if everything is done successfully, it can end up competing with the OMG Network.

I had mentioned two ways in my previous comment. Here I propose a third way for the spoon, the basics of which are

. Ethereum and Cosmos OMG Zone will both connect to the same Plasma based OMG Network. (Concept of plasma chain connecting to multiple root chains)

. The spooned tokens are in the Cosmos OMG Zone. The spooned tokens can be used as reward tokens.

  • Incentiving Stakers : OMG Network uses a staking token and provides incentives for stakers in the form of transaction fees
  • Incentiving Users 1 : It aims to provide scope/convenience/non-financial incentives to users in the form of solving the coordination problem for payment processors, censorship resistance, security, scalability, UX, etc.
  • Incentiving Users 2 : It also provides low cost incentives to users in the form of low transaction fees
  • Incentiving Users 3 : What do you think about the OMG Network providing direct financial incentives to users for participating in the network? The hardspoon token can be used as the reward token. Like BAT reward users for their attention, we can reward users for participation (there are many activities that can be rewarded). A strong reward token mechanism can be worked out. A proper stablecoin/fiat token combined with this financial incentive could kickstart and grow the volume on the OMG Network. This could help with adoption, create loyal users and produce network effects.

. No seperate Cosmos OMG Zone to Ethereum pegging/bridging mechanism is required as the layer1 Cosmos OMG Zone is connected to layer 1 Ethereum via the layer 2 Plasma based OMG Network. Ether, Erc20 are brought into the OMG Network thru Ethereum. Cosmos Atoms and Tokens of other Cosmos Zones are brought into the OMG Network thru the Cosmos OMG Zone. They can be exchanged using the OMG Network DEX and then exited to their respective root chains. This mechanism can later on be used with Eth 2.0 for getting tokens from different shards into the OMG Network and doing cross shard token transfers. This makes the OMG Network highly interoperable.

. The bootstrapping stakers and liquidity problem mentioned above are solved because we utilize the OMG Network solution provided by OmiseGo.

. There is no competing with the OMG Network, rather it is a collaborative approach with chances of greater network effects

. Things to research and develop

  • Cosmos OMG Zone (can use Ethermint & plasma contracts / Tendermint chain built with Cosmos SDK modules & plasma contracts / Parachain with Polkadot / etc.)
  • Connecting Plasma OMG Network to multiple root chains (I think the main updation required will be modification of plasma UTXO to support multiple address/signature schemes)
  • Hardspoon and reward token mechanism
1 Like

These are very thoughtful notes @tousthilagavathy, and I appreciate your clear outline of our options, particularly the potential of a “third-way” that is in collabaration with OMG (or at cooperative competition to all of our benefit).

I would like to endorse you for an award of 20 DAI and 10 OMG for these notes that I think are comprehensive to this RFI (so, 30 DAI and 10 OMG thus far …). @nebali and I are currently troubleshooting ledger voting confirmation issues with the Aragon team, but I will create a transfer vote asap after we resolve these technical hiccups.

In terms of next steps, I think it is well worth our time and dedication of further ONC resources to consider how we will approach 1 (Cosmos Zone)/ 2 (Multi Root Chains)/ 3 (HS and reward mech).

I hope we can get more input here, but in any event, I think I will research Cosmos OMG Zone - @tousthilagavathy Would you like to research “Connecting Plasma OMG Network to multiple root chains”?

1 Like

Thanks @ro5s . I’ll research “Connecting Plasma OMG Network to multiple root chains”.

1 Like

Great - I look forward to following your notes here!

Update 5/8: @tousthilagavathy ONC Coop. successfully enacted a vote to transfer initial disbursement of 30 DAI to your EthAddress:
Screenshot_2019-05-08%20Aragon

Please let us know if it worked for you!

Going ahead: I would endorse follow-on commitment of 20 OMG (including prior 10 OMG award, for ease of voting…) for a brief follow up on “Connecting Plasma OMG Network to multiple root chains.”

As we locate additional support for ONC, I believe we should commit more resources to this independent research project, as it should create value for all OMG stakeholders and presents a practical way to collaborate with OmiseGO + Cosmos on public staking.

1 Like

Thanks @ro5s . I received the 30 dai in my Eth address. Sorry for the late reply. I contracted an infection and had a fever for five days. I’ve recovered and have been up for the past two days. Started getting into more details of “Connecting Plasma OMG Network to multiple root chains". Interoperability has many benefits and seems quite attractive. Will post my notes when things are more clear.

1 Like

Seems @AA has left OmiseGo. Will she continue being a part of ONC?

She certainly will :slight_smile:

1 Like

@AA that’s great to know.

I am glad you are feeling better @tousthilagavathy and look forward to reading your notes here!

I’ve mostly finished researching and organizing my thoughts regarding the feasibility and approx design of “Connecting Plasma OMG Network to multiple root chains”. It required looking into the details. I hope to finalize my thoughts, write it down clearly and put it up here in two to three days.

2 Likes

Thanks for the update @tousthilagavathy :heavy_check_mark:

Sorry, for the late reply. “Connecting Plasma OMG Network to multiple root chains” required some extra work to verify the design.

Some facilities provided by connecting to multiple root chains
. It makes plasma interoperable across many layer1 chains.
. It also means plasma acts like a bridge amongst multiple chains
. Tokens from one chain can be used to indirectly execute contracts on another chain

One associated problem is the plasma withdrawal time of two weeks, which is bad UX. I’ve discussed this problem in the plasma.build forum as an hindrance to plasma adoption itself. Karl has provided some solutions for it and I’ve got a solution too. I hope to post a seperate thread here regarding that.

Providing my design for “Connecting Plasma OMG Network to multiple root chains” in the next comment.

1 Like

@ro5s

CONNECTING PLASMA TO MULTIPLE ROOT CHAINS

REQUIREMENTS TO SATISFY

  1. Foundation requirements
  • Use the existing Tesuji plasma chain design
  • Use the existing plasma contract design of omisego, so that the
    plasma contract code can be used as is or can be used to program
    a duplicate contract code in each root chain
  1. Core requirements
  • Support for multiple wallet addresses and private key schemes that
    each root chain uses.
  • Token transfers only within same root chain wallets(Ethereum,
    Cosmos, etc.)
  • Depositing and Withdrawing tokens, from and to different root chains
  1. Integration requirements
  • Must integrate well and support DEX across tokens from all the root chains

HIGH LEVEL DESIGN

  1. The existing plasma contract design/code of omisego is used to implement a
    duplicate plasma contract on the other root chain. Eg. OMG Cosmos Zone

  2. The overall design is to use root chain id and wallet types with the
    existing Tesuji plasma chain

  • The UTXO output already holds the token, token amount, wallet address, etc.

  • Root chain id and wallet type needs to be additionally stored within the UTXO output

  • Root chain id can be some unique three/four letter symbol to identify the root chain
    the token belongs to. Eg. ZOMG for Cosmos OMG Zone. This root chain id is added to the UTXO ouput

  • Wallet types are for Ethereum, Cosmos, etc. The wallet type is added to the UTXO ouput. The wallet address in the UTXO output then corresponds to the wallet type. The wallet type is used to choose the transaction signing method. Given a private key, the wallet type is used to determine if the provided key matches with the wallet address. Example wallet types are Ethereum ECDSA : uses ECDSA secp256k1 eliptic curve & Keccak256 hashing, Cosmos EDDSA : uses EDDSA ed25519 eliptic curve & SHA256 hashing, etc.
    For wallet type Ethereum ECDSA, a sample private key to wallet address matching
    STEP 1 : Public Key = ECDSA secp256k1(Private Key) -> converts private key to public key using ECDSA secp256k1
    STEP 2 : hash = Keccak256(Public Key) -> Convertes public key to hash using Keccak256 or SHA3 hashing function
    STEP 3 : Wallet Address = ‘0x’ + last 20 bytes of hash

  1. Deposits, Withdrawals and Transfers
  • When depositing from a root chain, an UTXO is created with the corresponding root chain id, wallet type, wallet address, token, token amount, etc.

  • When withdrawing an UTXO, the root chain id, wallet type, wallet address, token, token amount, etc. are used to exit. The root chain id is used to identify the root chain to exit to. The wallet type and wallet address provides the root chain wallet address to withdraw to.

  • Token transfers are only done between wallets that have the same root chain id and wallet type.The wallet type is used to choose the transaction signing method. Given a private key, the wallet type is used to determine if the provided key matches with the wallet address.

  1. DEX across tokens from all the root chains
  • Wallet A is from root chain 1(Eg. Ethereum, DAI), Wallet B is from root chain 2(Eg. OMG Cosmos Zone, ATOM)

  • User of wallet A, creates a wallet A1 in plasma chain, with root chain id belonging to root chain 2 (Eg. OMG Cosmos Zone)

  • User of wallet B, creates a wallet B1 in plasma chain, with root chain id belonging to root chain 1 (Eg. Ethereum)

  • User of wallet A sends chain1 token amount(Eg. DAI) to wallet B1. User of wallet B sends equivalent chain2 token amount to wallet A1(Eg. ATOM)

THE SUBSEQUENT TECHNICAL STEPS HERE ARE

  1. Verify the above design from peers and make the necessary modifications
  2. Do the low level design or specification
  3. Implement and Test
1 Like