EOS入門ガイドPART 4——契約開発マット:ローカルテストノードの構築
前の3編では、EOSソースコードを使用して環境を構築する方法、プライマリネットワークに接続する方法、アカウントを作成する方法について説明しました.それ以来,EOSに対する感性的な認識があり,EOSにおける公開鍵,アカウント,権限に対する新しい認識が得られた.今後数編では、EOSスマート契約の開発方法を学びます.
その前に、ローカルテストノードを構築し、後で契約の作成と導入を容易にする準備をします.
この記事では、ローカルテストノードを構築する方法(RAMを買うのにお金を使うな)、スーパーアカウントeosioを使用して新しいアカウントを作成する方法、基礎をロードするシステム契約biosについて簡単に学びます.
注意:このシリーズは、EOSに触れたことのないパートナーの迅速な入門を支援することを目的としており、学習の深さに要求されているパートナーは、公衆番号の他のシリーズに移行することができ、EOSについてより専門的な分析があります.
EOSノードを実行してプライマリ・ネットワークに接続する方法を学びました.ここでは簡単に繰り返します.
起動エラーが発生した場合、例えば
その後、
ここでは、
必要なコンポーネントを簡単に再確認します. cleos-アカウントの管理、チェーン情報の照会、契約の導入、契約との相互作用などのクライアントツール. eosiocpp-eosのコンパイラは、導入契約に必要なものを生成します....abiファイル; nodeos-チェーン全体の管理を担当するコマンドツール( の起動/停止など) keosd- です.
ここでは、財布のコンセプトを深く強化したいと思います.
財布は、ブロックチェーン上で発生する動作(action)を許可する秘密鍵ライブラリです.
これらの秘密鍵はパスワードで生成され、暗号化されてディスクに格納されます.このパスワードは安全なパスワードマネージャに格納されるべきです.
ここの
eosioアカウントはここでは特殊で、システムが起動したときにデフォルトで作成されたスーパーユーザーであり、システムのすべての操作を実行することができます.このアカウントを持つことで、EOS全体(テストネットワーク)を持つことができると言える.プライマリ・ネットワークでは、21のスーパー・ノードによって共有されています.
ローカルテストネットワークでは、eosioアカウントを使用して新しいアカウントを勝手に作成することができます.このアカウントはどれくらい特殊ですか.公開鍵がプロファイルに書かれています.
前は公開鍵で、後ろは秘密鍵です.
この時、eosioアカウントを操作することができます.
次に、作成する新しいアカウントを管理するための新しい財布を作成します.前の記事の手順と同じです.
上の手順は詳しく展開されていません.分からない学生はまず前の3編を勉強することができます.ここにはeosioアカウントを管理するためのeosio財布があり、作成するアカウントを管理するためのtest財布があります.
次のコマンドを実行します.
ここでは
次のように表示されます.
新しいアカウントの作成に成功しました.
eosioアカウントを所有し、新しいアカウントを勝手に作成するなど、自由に使用できます.このとき、デフォルトのインテリジェント契約
次のインタフェースを返します.
最後の WAST/WASMファイル(このファイルはbuildディレクトリに新しく配置された) を読み込む WASM を組み立てる契約 は取引を実行する(契約も取引である)、ここでは2つの動作によって1つの取引を生成する、 .の上の .
この章では、ローカルノードを構築し、スーパーアカウント
次の章では、LLVMとwebsembly、契約のインタラクティブモードなど、必要な概念を簡単に理解し、最も人気のあるhello world contractを簡単に導入するなど、スマート契約開発前の概念の構築について説明します.
その前に、ローカルテストノードを構築し、後で契約の作成と導入を容易にする準備をします.
サマリ
この記事では、ローカルテストノードを構築する方法(RAMを買うのにお金を使うな)、スーパーアカウントeosioを使用して新しいアカウントを作成する方法、基礎をロードするシステム契約biosについて簡単に学びます.
注意:このシリーズは、EOSに触れたことのないパートナーの迅速な入門を支援することを目的としており、学習の深さに要求されているパートナーは、公衆番号の他のシリーズに移行することができ、EOSについてより専門的な分析があります.
1.EOSローカルノードの実行
EOSノードを実行してプライマリ・ネットワークに接続する方法を学びました.ここでは簡単に繰り返します.
nodeos -e -p eosio --plugin eosio::wallet_api_plugin --plugin eosio::chain_api_plugin --plugin eosio::history_api_plugin
起動エラーが発生した場合、例えば
dirty-flag
というエラーに遭遇した場合、--hard-replay-blockchain
でチェーン状態データベースを強制的にクリアしてみてください.nodeos -e -p eosio --plugin eosio::wallet_api_plugin --plugin eosio::chain_api_plugin --plugin eosio::history_api_plugin --hard-replay-blockchain
その後、
cleos get info
を使用して現在のチェーン情報を表示します.ここでは、
chain_id
がプライマリネットワークのidではなく、ローカルのテストノードにいることを示します.必要なコンポーネントを簡単に再確認します.
cleos
を使用して財布を作成しますが、その下の財布管理ツールはkeos 2.eosioアカウントの財布の作成
ここでは、財布のコンセプトを深く強化したいと思います.
財布は、ブロックチェーン上で発生する動作(action)を許可する秘密鍵ライブラリです.
これらの秘密鍵はパスワードで生成され、暗号化されてディスクに格納されます.このパスワードは安全なパスワードマネージャに格納されるべきです.
create wallet create -n eosio
ここの
eosio
は財布の名前だけで、eosio口座とは何の関係もありません.皆さんは任意に名前を付けることができます.eosioアカウントはここでは特殊で、システムが起動したときにデフォルトで作成されたスーパーユーザーであり、システムのすべての操作を実行することができます.このアカウントを持つことで、EOS全体(テストネットワーク)を持つことができると言える.プライマリ・ネットワークでは、21のスーパー・ノードによって共有されています.
ローカルテストネットワークでは、eosioアカウントを使用して新しいアカウントを勝手に作成することができます.このアカウントはどれくらい特殊ですか.公開鍵がプロファイルに書かれています.
~/Libraries/Application Support/eosio/nodeos/config/config.ini
では、このアカウントの公開鍵を見つけることができます.EOS6MRyAjQq8ud7hVNYcfnVPJqcVpscN5So8BhtHuGYqET5GDW5CV=KEY:5KQwrPbwdL6PhXujxW37FSSQZ1JiwsST4cqQzDeyXtP79zkvFD3
前は公開鍵で、後ろは秘密鍵です.
3.eosioアカウントの秘密鍵のインポート
eosio
アカウントを使用するには、eosio
アカウントの秘密鍵を新しく作成したeosio
財布にインポートします(財布は勝手に名前を付けることができます):cleos wallet import -n eosio 5KQwrPbwdL6PhXujxW37FSSQZ1JiwsST4cqQzDeyXtP79zkvFD3
この時、eosioアカウントを操作することができます.
4.新しいウォレットの作成、および秘密鍵のインポート
次に、作成する新しいアカウントを管理するための新しい財布を作成します.前の記事の手順と同じです.
# test
cleos wallet create -n test
#
# ,
cleos create key
# test
cleos import -n test import
上の手順は詳しく展開されていません.分からない学生はまず前の3編を勉強することができます.ここにはeosioアカウントを管理するためのeosio財布があり、作成するアカウントを管理するためのtest財布があります.
5.新規アカウントの作成
次のコマンドを実行します.
cleos create account eosio ${new_account} ${owner_key} ${active_key}
ここでは
testeosio
というアカウントを作成し、上記のフォーマットと照らし合わせて、具体的なコマンドは以下の通りです(active_keyは省略).cleos create account eosio testeosio EOS7hHoMoPcbJq6gsTViNdTj35AKCjLCqabamj7P68vzwAfRoCLRq
次のように表示されます.
新しいアカウントの作成に成功しました.
6.ベースBIOS契約のロード
eosioアカウントを所有し、新しいアカウントを勝手に作成するなど、自由に使用できます.このとき、デフォルトのインテリジェント契約
eosio.bios
を使用することができます.この契約は、リソースの割り当てを直接制御し、APIにアクセスする権限を持つ多くのアクション(action)の基礎システムです.プライマリ・ネットワークでは、CPU、ネットワーク・アクティビティ、および契約メモリが帯域幅を保持するようにtokenの抵当および償還を管理することもできます.eosio.bios
契約は、${EOSIO_SOURCE}/build/contracts/eosio.bios
経路で見つけることができる.次のコマンドは`${EOSIO_SOURCE
で実行されます.もちろん、任意のパスで実行することもできます. cleos set contract eosio build/contracts/eosio.bios -p eosio@active
次のインタフェースを返します.
最後の
-p eosio
は、eosioアカウント(対応する秘密鍵を使用する)を使用してこのactionに署名することを意味する.cleos set contract
は、以下の2つの独立した動作に分割することができる.eosio::setcode
:codeは、契約がどのように実行されるかを記述するeosio::setabi
:setabi,abiは、契約インタフェースの説明を理解するために、バイナリファイルおよびjsonファイルでどのように変換するかを記述する.まとめ
この章では、ローカルノードを構築し、スーパーアカウント
eosio
を使用してシステムレベルのスマート契約を実行し、新しいアカウントを作成する方法について学習します.これで、スマート契約の開発運営環境を基本的に構築し、以下のEOSスマート契約の開発を深く学ぶために敷き詰めました.次の章では、LLVMとwebsembly、契約のインタラクティブモードなど、必要な概念を簡単に理解し、最も人気のあるhello world contractを簡単に導入するなど、スマート契約開発前の概念の構築について説明します.