MixinNetwork / mips

Messenger Improvement Proposals
https://mixin.one/mm
Apache License 2.0
2 stars 0 forks source link

On-chain domain + transferable key item #29

Open liusining opened 3 years ago

liusining commented 3 years ago

Mixin manages many assets of other blockchains, some of which feature smart contracts. If a user stores tokens in Mixin but wants to call a smart contract on another blockchain, He/she must withdraw the tokens first, from Mixin to his/her own wallet, and then handles private key things and signing things by him/herself.

What if we have a specialized domain that helps users manage their private keys of other blockchains. They will be able to deal with many smart contract stuff using their familiar tool, the Mixin Messenger, by telling the domain what to do.

Unlike the current domain, this new one does not broadcast asset addition and subtraction to Kernels, but instead, report that a new key is generated for a user. The Kernels may then treat the item as an undividable, non-fungible token (if Kernel can get NFT working on it #26).

Since this domain help users finish on-chain tasks, I prefer to call it an “On-chain domain.”

The next question is how to integrate the managed keys with Mixin Messenger. Just like Kernel, Messenger may regard them as undividable, non-fungible tokens stored in the wallet, which, by the way, give the key items another attribute, transferability.

Suppose a user wants to use a managed key, say, to call Uniswap contract. In that case, he/she may open a bot, prove his/her ownership of the key item using a related token in his/her wallet, and then ask the domain to sign and dispatch an Ethereum transaction.

As for how to ensure that the domain manages private keys safely and trustworthily, it’s beyond my horizon. Maybe we can rely on D3M-PIN?

This idea was originated in thinking how to use Uniswap inside Mixin Messenger, and later got influenced by tor.us.

cedricfung commented 3 years ago

This proposal has been discussed a lot in our team. We decide to make it.