見出し画像

NYM ERC20をNYM Cosmosに転送し、Nymメインネットでボンディングまたはデリケートする - Gravity Bridgeを利用して(2022.4.21)

 🚨この記事の方法は旧ver.であり、現在利用不可。
代わりにこの記事を参照してください。

Nymメインネットの立ち上げプロセスにおいて、私たちはいくつかの刺激的な週の真っ最中にいます:

・パブリックセールのNYM ERC20トークンが配布されました;

・つまり、ベスティングスケジュールにある人々は、まもなく最初のネイティブNYMトークンを受け取り、ステークをボンディングしたりデリケートしたりすることができるようになるのです;

・バリデーターが報酬を受け取ることが可能に

しかし、もしあなたがERC20 NYMを持っていて、メインネットでボンディングやデリケートなステークをしたいのであればどうすればいいでしょうか?

この記事では、Nymメインネットでノードをボンディングしたり、ステークをデリケートしたりできるように、ERC20 NYMトークンをネイティブNYMトークンに転送するためにGravity Bridgeを使用する方法について説明します。

概要


前提条件

Nym ウォレット
・基本的なコマンドラインスキル
・Linux マシンへのアクセス
・Metamask アカウント
・Keplrウォレット
・NYM ERC20
・TX手数料のための多少のETH

手順のまとめ:

  1. Gravity Bridgeのバイナリをインストール

  2. Metamask と Keplr ウォレットを準備

  3. OsmosisでGRAVトークンを入手し、Gravity Bridgeの送金手数料を支払う

  4. GRAVへの交換にはATOMトークンが必要

  5. また、ATOMからGRAVへのスワップには、OSMOで送金手数料を支払う必要があります。

  6. ERC20 NYMをGravity Bridgeのアドレスに転送(送金手数料として若干のETHが必要)

  7. Gravity BridgeからNyxブロックチェーンへのIBC転送(GRAV tx手数料を使用)

  8. Nymネイティブウォレットを使用して、ネイティブNYMトークンのボンディングとデリケートを開始します!(送金手数料のためにいくらかのNYMが必要です)。


注:トークンを取引所に移動したい場合は、IBCから入金するのではなく、自分のNYMアドレスから行う必要があり、ほとんどの取引所はまだIBCからの直接入金をサポートしていないためです。

Cosmosのエコシステムにおける送金手数料は非常に低いので、ご安心ください。詳しい手順については、これを参考にしてください:


Gravity Bridgeを使う

Gravity Bridgeは、EthereumブロックチェーンとあらゆるCosmosベースのブロックチェーンとの間のbridge をサポートします。NYM(Cosmos)はNyxブロックチェーン上の、Nymのネイティブトークンです。NYMをEthereumからNyxに転送すると、ブリッジはどちらかの側のトークンをロックし、NYMトークンの総供給量は正確に1Bのままであることを意味します。

まず、お使いのシステムに適したバイナリをダウンロードする必要があります。バイナリは、こちらから入手できます: Bridge Binaries

2つのバイナリ、「gbt」(Gravity Bridgeトランザクションを可能にする)と「gravity binary」(Gravityネットワークにクエリを発行する)をインストールする必要があります。

バイナリの実行に権限が必要な場合は、Linux上でchmod u+x binarynameを実行してください。

gbtクライアントには、あなたの鍵を保存する機能があります。したがって、以下のいずれかを実行するのが適切と思われる場合は、実行してください:

nym@nym:~/directory$ ./gbt keys — helpgbt-keys
Manage keysUSAGE:
   gbt keys <SUBCOMMAND>OPTIONS:
   -h, — help Print help informationSUBCOMMANDS:
help
   Print this message or the help of the given subcommand(s)register-orchestrator-address
   Register delegate keys for the Gravity Orchestrator. this is a mandatory part of setting up a Gravity Orchestrator. If you would like sign using a ledger see `cosmos tx gravity set-orchestrator-address` insteadset-ethereum-key
   Add an Ethereum private key for use with either the Relayer or the Orchestratorset-orchestrator-key
   Add a Cosmos private key to use as the Orchestrator address

ウォレットの準備


MetamaskとKeplrウォレットのブラウザ拡張機能をインストールして、CosmosチェーンとEthereumチェーンにまたがるNYMトークンを簡単に管理しましょう。

まだニーモニックをお持ちでない方は、Nymウォレットをダウンロードし、ニーモニックを生成してください(必ず安全な場所に保管してください!)その後、ニーモニックを入力し、Keplrウォレットで「既存のアカウントをインポート」することができます。(Keplrはまた、Cosmosベースのすべてのチェーンについて、あなたのためにアドレスを自動的に導出します)。

Nymメインネットブロックチェーン「Nyx」のKeplrサポートはベータ版なので、Nyxを表示させるには、以下のコードをブラウザウィンドウに注入する必要があります。

ブラウザのどこかを右クリックして「inspect」を選択し、「console」タブに移動することでこれを行うことができます。そして、以下のコードを貼り付けて、「return」を押してください。これが成功すると、Keplrのポップアップが表示されます。Yesをクリックします。

//this is the code snippet to inject into the browser
//please note staking is not currently available
//but these values have to be inputted to use the APIawait window.keplr.experimentalSuggestChain({
    chainId: "nyx",
    chainName: "Nyx Mainnet",
    rpc: "https://rpc.nyx.nodes.guru",
    rest: "https://api.nyx.nodes.guru",
    bip44: {
        coinType: 118,
    },
    bech32Config: {
        bech32PrefixAccAddr: "n",
        bech32PrefixAccPub: "n" + "pub",
        bech32PrefixValAddr: "n" + "valoper",
        bech32PrefixValPub: "n" + "valoperpub",
        bech32PrefixConsAddr: "n" + "valcons",
        bech32PrefixConsPub: "n" + "valconspub",
    },
    currencies: [ 
        { 
            coinDenom: "nym", 
            coinMinimalDenom: "unym", 
            coinDecimals: 6, 
            coinGeckoId: "nym", 
        },
    ],
    feeCurrencies: [
        {
            coinDenom: "nym",
            coinMinimalDenom: "unym",
            coinDecimals: 6,
            coinGeckoId: "nym",
        },
    ],
    //in the future this will be updated accordingly
    //once staking is available
    //in the interim pass in the nym values as placeholders
    //do not attempt to stake, as we cant validate it will be successful
    stakeCurrency: {
        coinDenom: "nym",
        coinMinimalDenom: "unym",
        coinDecimals: 6,
        coinGeckoId: "nym",
    },
    coinType: 118,
    gasPriceStep: {
        low: 0.01,
        average: 0.025,
        high: 0.03,
    },
    features: [ 
        "cosmwasm", "ibc-transfer", "ibc-go", "wasmd_0.24+"
    ],
});

Gravity Bridgeはそれ自体がブロックチェーンでもあり、独自のネイティブトークンであるGravitons(GRAV)を持っています。GRAVは、チェーン間でトークンを送るために取引手数料を支払う必要があります。しかし、心配は無用です!Cosmosのエコシステムにおける取引手数料は非常に低いです。

GRAVは、Osmosis DEXに移動して入手できます。OsmosisでKeplrウォレットを接続し、取引と通貨スワップを開始し、GRAVを手に入れることができます。コスモスの通貨であるATOMが必要で、これは主要な取引所から入手することができます。

Osmosisでは、まずOSMOを購入し、ATOMをGRAV(Gravity Bridgeのネイティブトークン)に交換するための送金手数料を支払う必要があります(まだ持っていない場合)。あなたのGRAVは、Osmosisブロックチェーン上で見ることができるようになります。

次に、あなたのGRAVをあなたのGravity BridgeのアドレスにIBC転送を行いたいと思います。GRAVがあなたのGravity Bridgeアカウントに到着したことを確認するために、あなたのKeplrウォレットを使用してください。

Cosmosブロックエクスプローラーping.pubを使用して、NyxブロックチェーンとCosmosベースのネットワーク上のすべての取引と残高を見ることができます。Keplrウォレットを添付するだけです。

これでようやく、ERC20 NYMトークンをネイティブNymトークンに移行する段階に入ることができます。

NYM(ERC20)をネイティブNYM(Cosmos)へ移行


terminal に戻り、Gravity Bridge トランザクションを有効にする 'gbt' バイナリを初期化します。

help サブコマンドを実行すると、実行可能ファイルが実行するために必要な値を知ることができます。

例: ./gbt クライアント - help

-a, — amount <AMOUNT>
The Denom and amount you wish to send eg: 100ugraviton
-b, — bridge-fee <BRIDGE_FEE>
The amount you want to pay in bridge fees, these are used to pay relayers on Ethereum
and must be of the same denomination as `amount`
-c, — cosmos-phrase <COSMOS_PHRASE>
Cosmos mnemonic phrase containing the tokens you would like to send
 — cosmos-grpc <COSMOS_GRPC>
(Optional) The Cosmos gRPC server that will be used to submit the transaction [default:
http://localhost:9090]
-e, — eth-destination <ETH_DESTINATION>
The destination address on the Ethereum chain
-f, — fee <FEE>
The Cosmos Denom and amount to pay Cosmos chain fees eg: 1ugraviton
On the command line:
./gbt client eth-to-cosmos \
 — ethereum-key $ETH_PRIVATE_KEY \ {your private eth key — you can find this from exporting it inside metamask}
 — gravity-contract-address 0xa4108aA1Ec4967F8b52220a4f7e94A8201F2D906 { NYMs gravity contract address } \
 — token-contract-address 0x525A8F6F3Ba4752868cde25164382BfbaE3990e1 { Nyms token address } \
 — amount 5 \ { You can now whole NYM values — fractional / decimals amounts have not been tested, try at your own risk}
 — destination gravity1YourGravityAddress
 — ethereum-rpc https://mainnet.infura.io/v3/45a64f6c6fae495f82898092de839e4e

なぜETHの秘密鍵を提供するのですか?Gravity Bridgeにトークンを送信するためのトランザクション手数料のコストを提供するためです。(この文書ではセキュリティに関する最善の方法を強調していませんが、あなたの秘密鍵と機密情報が常に安全に保たれていることを確認してください!)

重力ブリッジから送信する場合、あなたは彼らのチェーン上の手数料のためのトランザクションを実行するためにGravitons(GRAV)を持っていることを確認する必要があります。

注意:トランスファーが迅速に実行されるために、ブリッジ手数料を指定する必要があります。この値はNYMsで、そのマイナーな表現であるunymsで表示されます:

10000000 = 10 NYMs

100000000 = 100 NYM

1000000000 = 1000 NYM

手数料が高いほど、あなたの取引は早くリレーヤー(relayer)に拾われるかもしれません。この値は、Gravity BridgeアドレスのNYM残高から差し引かれます。

トランザクションを送信したら、リクエストのステータスを確認することができます、

Keplrウォレットまたはping.pub経由でウォレットに接続している場合は、ウォレットの概要で確認できます。

ターミナルからコマンドを実行すると、トランザクションが成功したことを知らせるメッセージがコンソールに出力されます。

ETHウォレットの残高を確認し、差し引かれた手数料を確認することができます。その後、5分以内にあなたのGravity Bridgeの残高は、Gravity Bridge上で新しく中継されたNYMトークンで更新されます。

そこから、Gravity BridgeのトークンをあなたのNYMアドレスにトランスファーすることができます。

我々はすでにKeplrにNyxブロックチェーン情報を注入しているので、あなたは単にping.pubに移動し、あなたのウォレットをインポートし、その後、IBCを介してあなたの重力とNymアドレスの間であなたのNyxを送信するインターフェイスを使用することができます。

これで、CosmosへのERC20変換が成功し、NYMトークンをEthereumからNyxブロックチェーンに移動することができました。

Nymウォレットを開くと、あなたのネイティブNYMトークンが表示され、Nymプライバシーメインネットでボンディングとデリケートを開始する準備ができました!

ミックスノードやゲートウェイをボンディングしたい場合は、最低でも101NYM(ボンディング100と送金手数料の1NYM)をトランスファーすることを確認してください。


原文記事:


この記事が気に入ったらサポートをしてみませんか?