追記
こちらも参照ください
https://qiita.com/daoka/items/143f142f1685fc00625a
はじめに
カタパルトのパブリック化についての提案がなされようとしている。
この記事では、それの日本語訳を試みるものである。
注意点
- この訳は何ら公式のものではない
- この訳は必ずどこか間違っているものとする
- この訳によって生じた損害については、一切責任を持たない
訳の更新履歴
- 20190512 投稿
NIP-8 - カタパルトのパブリック化
Summary
NIP: 0008
Layer: Core
Title: Catapult technology release for Public Network
Author: Gregory Saive <greg@nem.foundation>
Discussions-To: https://github.com/nemtech/NIP/issues/22
Comments-URI: https://github.com/nemtech/NIP/issues/22
Status: Draft
Type: Process
Created: 2019-05-10
License: Apache-2.0
Table of contents
(省略)
導入
この文書の目的は、現在利用可能なパブリックブロックチェーンネットワークであるNEM(以降「NIS1」)を、新たに利用可能になったカタパルト(以降「カタパルト」)へアップグレードすることに関する意思決定プロセスを提供することである。
このドキュメントの対象は、以下のプロジェクトである
カタパルト移行についての議論は行われてきたが、いくつか未解決な箇所がある。
仕様
この章では、カタパルトがパブリックネットワークにリリースされる際の手順について記す。
移行方法について
移行方法については、以下にあるもので、さらにこれらに限られる。
- NIS1をカタパルトにアップグレードして、1チェーンのネットワークとする。
- NIS1と並行してカタパルトをリリースして、2チェーンのネットワークとする。
以降、これら2つの結果をそれぞれ1チェーン法、2チェーン法とする。
解法:1チェーン法 もしくは 2チェーン法
モジュール・データ・インテグレーションの移行
次のリストには、NIS1で現在利用可能なすべての移行済みモジュールと、Catapultへの移行時に考慮する必要があるデータもしくはインテグレーション(取引所/クライアント)が含まれる。
これらのモジュールとデータは、このドキュメントのサブセクションの「データセットの移行」の章で詳しく説明される。
Process Implications
法的および技術的な分野における移行の影響について、いくつかの点を考慮する必要がある。これらの影響については、この章のサブセクションで説明される。
Legal implications
提案されている移行手法によっては、課税が発生する可能性がある。移行を正しく計画する前に、この点を明確にすることが重要である。
- エンドユーザーに課税が発生することは望ましいか? YES / NO
- 課税を回避することはできるか?するべきか? YES / NO
- 課税の発生は、移行の障害点となるか? YES / NO
そのほかの参考文献: Tax Considerations for ICOs
Issue Resolution: Resolution to be described here.
Technical implications
移行の過程で、Catapultの移行/リリースを成功させるためには、エンドユーザーが自分のしなければならないことを正確に知っておくことが望ましい。そのためには、この章で重要なドキュメントと記事の参照を定義する必要がある。これにより、アップグレードに必要な手順は、どのようにして、またはどのように行うべきかについての概要を、エンドユーザーに示すことができる。
さらに、カタパルトのパブリックネットワークでのリリースに伴う技術的債務の概要を、nemtech/communityにあるSIG(Special Interest Group)での分類に従い説明する。
以下のリストは、その後のトピックで決定が行われたときに、時間の経過とともに再定義される可能性がある。以下はパブリックネットワーク上のカタパルトリリースのための重要なツールとドキュメントのリストである。
-
catapult-service-bootstrap
: パブリックネットワークノードのDockerコンテナーのガイド -
catapult-server
: パブリックネットワークノードのビルド手順 -
catapult-rest
: パブリックネットワークノードのRESTゲートウェイのガイド -
nem2-sdk-*
: パブリックネットワークを使ったNEM2 TS/JSのガイド -
nem2-cli
: パブリックネットワークを使ったNEM2 CLIのガイド -
nem2-docs
: カタパルトパブリックネットワークを使った開発のセクション -
nem2-e2e-tests
: テスト:パブリックネットワークの使い方 -
all-projects
: Clients/SDK/Docsのテスト:パブリックネットワークノードの使い方
記載されているツールやドキュメントの中には、その後のトピックで決定されたものがあるため変更される場合がある。また、一部のツールでは、パブリックネットワークノードでの使用を可能にするための作業が必要になる。
問題点と解決法:インテグレーションと実装については、2019年のQ2の終わりまでに完了すべきである
データ移行
この章では、Catapultに移行するときに考慮する必要があるさまざまなデータについて説明する。利用可能な各データは、以下の質問事項によってレビューされる。
- 1チェーンの場合
- 移行されないデータに対するユーザーの不満。
- 移行されないデータがあることで、nemやカタパルトの評判が悪くなるか。
- 移行できるか。
- 2チェーンの場合
- 移行されないデータに対するユーザーの不満。
- 移行されないデータがあることで、nemやカタパルトの評判が悪くなるか。
- 移行できるか。
- データの移行に際し、何らかの法的な影響があるか。
- データの移行に際し、技術的責務が伴うか。
データ移行:アカウント
アカウントデータとは、NEMブロックチェーンパブリックネットワーク(MAIN_NET)上のアカウントに関連するデータを意味する。
次のサブセクションは、NIS1ネットワーク上のアカウントに関連するデータについて定義する。
マルチシグの履歴
関連:
移行に関する質問事項: (省略)
インポータンス委任
関連:
移行に関する質問事項: (省略)
マルチシグに関する情報
関連:
移行に関する質問事項: (省略)
XEMの残高
関連:
移行に関する質問事項: (省略)
モザイクの残高
関連:
- Dataset Migration: Namespaces
- Dataset Migration: Mosaics
- Register Namespace Transaction
- Mosaic Definition Transaction
移行に関する質問事項: (省略)
インポータンス
移行に関する質問事項: (省略)
データ移行:トランザクション履歴
NIS1ネットワークのトランザクション履歴は、NEMブロックチェーンパブリックネットワーク上のトランザクションと言われるデータを表す。いくつかの種類のトランザクションが利用可能であり、それらのいくつかは移行する必要とがあるかもしれない。
以下のサブセクションでは、NIS1ネットワーク上のトランザクション履歴に関連するデータについて定義する。
Transfer Transaction
関連:
移行に関する質問事項: (省略)
Modify Multisig Transaction
関連:
移行に関する質問事項: (省略)
Importance Transfer Transaction
関連:
移行に関する質問事項: (省略)
Register Namespace Transaction
関連:
移行に関する質問事項: (省略)
Mosaic Definition Transaction
関連:
移行に関する質問事項: (省略)
データ移行:ネームスペース
NIS1ネットワークのネームスペースは、NEMブロックチェーンパブリックネットワーク上で期限付きのネームスペースの登録として識別されるデータを表します。
以下のサブセクションでは、NIS1ネットワーク上のネームスペースに関連するデータについて定義する。
ルートネームスペース
関連:
移行に関する質問事項: (省略)
サブネームスペース
関連:
移行に関する質問事項: (省略)
モザイク
関連:
移行に関する質問事項: (省略)
データ移行:モザイク
NIS1ネットワークのモザイクは、NEMブロックチェーンPublic Networkで作成されたカスタムモザイクとして識別されるデータを表す。
以下のサブセクションでは、NIS1ネットワーク上のモザイクに関連するデータについて定義する。
残高
移行に関する質問事項: (省略)
分配
関連:
移行に関する質問事項: (省略)
ネームスペース
関連:
移行に関する質問事項: (省略)
データ移行:セカンドレイヤー
NIS1ネットワークのセカンドレイヤーは、NEMブロックチェーンパブリックネットワークに格納されているデータに関連するデータを表す。これにはアポスティーユ、投票/調査などがあるが、それ以外についても含む。
以下のサブセクションでは、NIS1ネットワーク上のセカンドレイヤーに関連するデータについて定義する。
アポスティーユ
関連:
移行に関する質問事項: (省略)
投票データ
関連:
移行に関する質問事項: (省略)
データ移行:取引所
NIS1ネットワークにおける取引所は、NEMブロックチェーンパブリックネットワーク上のXEMまたはカスタムモザイクの取引に関連するデータを表す。
以下のサブセクションでは、NIS1ネットワークにおける取引所に関連するデータについて定義する。
XEM Buy / Sell Integrations
移行に関する質問事項: (省略)
移行をどのようにするかについて、XEMモザイクを扱う取引所へ問い合わせをしなければなりません。
List of available XEM Buy / Sell Integrations:
- 取引所のリスト(予定)
Custom Mosaics Buy / Sell Integrations
移行に関する質問事項: (省略)
NEMブロックチェーンパブリックネットワーク上でカスタムモザイクを発行した企業は、Catapultを使用する手法について探るために連絡をする必要がある。
技術的責務について
パブリックネットワーク上でのカタパルトのリリースに関する意思決定の過程で、行われた決定/決議により技術的債務が発生する可能性がある。円滑なリリースのためには、その技術的債務が当文書上で計画、構成、説明されていることが重要である。
そのため、以下の表に、技術的債務をSIG別に記載します。
SIG | 技術的責務 | 割り当て済み? | 中断中? |
---|---|---|---|
#sig-api | SDK(TS/JS)のKeccak実装 | ![]() |
いいえ |
#sig-api | SDK(Java)のKeccak実装 | ![]() |
いいえ |
#sig-api | ノードの立ち上げの手順 | ![]() |
いいえ |
#sig-client | 移行ツール | ![]() |
YES, needed resolution on Possible Outcomes |
#sig-docs | 解説 | ![]() |
YES, needed resolution on Possible Outcomes |
#sig-testing | e2eテスト | ![]() |
いいえ |
catapult-server | ビルドの手順 | ![]() |
いいえ |
後方互換性
Catapultは(NIS1とは)異なったソフトウェア開発言語で書き直されているため、単純なアップデートプロセスを提供することは不可能である。後方互換性は検討され研究されており、この文書で議論されるべきである。
Catapultの後方互換性のないすべてのモジュールおよび機能は、移行が行われる前にトピックの解決策を見つけるために吟味されている。
問題が解決された際には、追加の情報をこのセクションに記す
参考文献
NIS1
: NemProject/nem.coreCatapult
: nemtech/catapult-server- catapult-service-bootstrap
- catapult-server
- catapult-rest
- nem2-sdk-typescript-javascript
- nem2-cli
- nem2-docs
- nem2-e2e-tests
- @nemtech
- nemtech/community
- Tax Considerations for ICOs
履歴
日付 | バージョン |
---|---|
2019/05/10 | 初回ドラフト |