"nemint" Cosmos pegging Zone for NEM


#1

Now we, lcnem are considering how to implement “nemint”, Cosmos pegging Zone for NEM(accurately, NEM2).

Ethermint is in progression now.
Ethermint is called “Hardspoon” of Ethereum.

Cosmos is known as blockchain interoperability project.

Assets on nem can be used in other blockchains in Cosmos Network.

Architecture I considered is this:

Generating address NEMINT-XXXXXX-XXXXXX-XXXXXX-XXXXXX-XXXX by brute-force.
Then it will be made as multisig account where validators of nemint are cosignatories.
This multisig is set as floor(2N/3) of 3 because Tendermint DBFT Consensus is durable for byzantine by 33%.

lcnemint valiators will make consensus of:

  • nem2 blocks got via localhost websocket
  • nemint block
    Thus, nemint will hold two sections(nem2 and nemint) for account.

Functions of lcnemint:

Send mosaics from nem2 to nemint
An address of nem2 An make a transaction to send mosaics to NEMINT-XXXXXX-XXXXXX-XXXXXX-XXXXXX-XXXX, but not announcing. Signed object is S.
Then , transaction which contain {An, S} will be sent to nemint.

Send mosaics from nemint to other chains in Cosmos
It is easy to implement as long as we use Cosmos SDK.

Send mosaics from nemint to nem2
An address of nemint(shared with cosmos) Ac announce returning transaction to nemint, not nem2.
The block generator of nemint send a multisig transaction of nem.
Other validators of nemint will cosign.
Of course, validators can vote for giving penalty to the sender of multisig transaction.

I want you to join nemint project. Golang is needed.

Thanks.