IOTA開発のロードマップ

この記事は原題「IOTA Development Roadmap」の翻訳です。
ご参考までに公開します。必要だと思われる部分には言葉を補っています。私の力不足のため、だいたいで翻訳されている部分もありますが、ご了承くださいませ。


投稿者:David Sønstebø
投稿日:Apr 1, 2017

IOTA開発のロードマップ

全ての台帳へのパス「IOTA Development Roadmap」より引用

序文

IOTAは、事実上標準化された「全ての台帳」を確立することによって、IoT、インダストリー4.0、信用できない「オンデマンド経済」のパラダイムシフトを可能にするという、非常に明確かつ焦点を当てたヴィジョンから開始されました。コードの最初の行が2015年中頃に入力されて以来、このプロジェクトは長い道のりを歩んできましたが、この偉大な旅の大きな全体像においては、IOTAの開発はほとんど始まっていません。この記事では、このビジョンを実現するためのIOTA財団の公開ロードマップを発表し、概要を説明します。このロードマップは、開発の進捗状況と新しい項目の追加に従って継続的に更新されます。パイプラインには他にもたくさんのものがあり、公開準備ができたら追加されます。

コアクライアントの開発

IOTA Development Roadmap」より引用

IOTAプロジェクトの第一の優先事項は現実世界での採用です。これを達成するための基礎は、展開と開発にフレンドリーなエコシステムにあります。これには、最も重要な構成要素の1つに、異なる言語のクライアントが含まれ、開発者が特定の展開に適した最も望ましいクライアントを選択できるようにする、多彩で広大なエコシステムが必要です。現在取り組んでいることは:

Java

IOTA Development Roadmap」より引用

IOTAリファレンス実装(IRI)はJavaで書かれています。これは、ネットワークとの同期とトランザクションの迅速化を実現する主要なパフォーマンスの改善によってリファクタリングされました。IRIはIOTAの最初の公式な実装であるため、安定したJavaクライアントは非常に採用の鍵です。

ステータス:完了 すぐにストレステスト実施

C++

IOTA Development Roadmap」より引用

現在、IRIをC++に移植しており、この言語のコア開発を継続する予定であるため、このクライアントは現時点で最優先事項です。Javaとは異なり、コードを実行するためにデバイスにインストールされた仮想マシンを必要とせず、マシンコードをリアルタイムでコンパイルするので、リソースを制限されたIoTデバイスにさらに適しています。また、C++は世界で最もサポートされ、型付けされた言語の1つです。

ステータス:初期の移植段階

Rust

IOTA Development Roadmap」より引用

Rustは、安全性、高速実行性、大規模な平行性のサポートのために、特にIoTにとって最も有望で敏捷な言語の1つと考えられています。RustはC++と合わせて、現在IOTA財団によって優先的に扱われています。

ステータス:初期の開発段階

Go

IOTA Development Roadmap」より引用

平行性という点でRustと非常によく似ていますが、Go言語は特にこの分野のさまざまなBlockchianプロジェクトで採用されています。サンドボックス環境とライブラリですでにGoを使用しており、開発に専念するための明確な選択肢となっています。

ステータス:初期の開発段階

アルタナティブクライアント

IOTA Development Roadmap」より引用

ライトクライアント

IOTA Development Roadmap」より引用

IOTAのコアクライアントは本質的に軽量ですが、さらに必要最小限のものを必要とする特定のアプリケーションがあります。例えば、非常にリソースが制限されたエッジデバイスでは、フルノードとして動作することはできません。これらのためにライトクライアントがあります。ライトクライアントに加えて、信頼のおける第三者を必要としない取引と検証のためのSPV(simplified payment verification)のようなクライアントも提供します。

ステータス:完了

スウォームクライアント

IOTA Development Roadmap」より引用

非常にリソースが制限された環境でIOTAクライアントを実行できるようにするもう1つのアプローチは、異なるデバイス間でコア理論とデータベースを断片化し、まとめて実行する方法です。群知能と同様に、これにより、デバイスのクラスタは完全なノードでなくてもSPVおよびライトクライアントからの信頼要件が低下することなく、効率的に取引を行うことができます。

ステータス:研究/準備段階

新しい未来

IOTA Development Roadmap」より引用

ネットワークの改善

IOTA Development Roadmap」より引用

IoTのネットワーキングの特定のニーズのために、我々はP2Pネットワークに接続されている間にも異なるネットワーキングプロトコルを流動的に切り替えることを可能にする、IOTAのネットワーキングブローカの早期研究開発を開始しました。それに加えて、我々は安全な方法でピア発見を可能にするために取り組んでいきます。

ステータス:活発な研究段階

自動スナップショット

IOTA Development Roadmap」より引用

IoTを浸透させ、構成する組み込み型のデバイスのニーズに合わせて、IOTAを維持するために、デバイスのサイズを非常に小さく保つ必要がある台帳データベースを保持する「スナップショット」を使用します。スナップショットはBlockchainプルーニングと似ていますが、スナップショットは同じアドレスへの複数の転送を1レコードにグループ化するという大きな利点があり、全体的なストレージ要件がより小さくなります。

ステータス:活発な開発とテスト段階

IOTA拡張インターフェース(IXI)モジュール

IXI-機能の拡張「IOTA Development Roadmap」より引用

IOTAのコアプロトコルは意図的に軽量かつシンプルです。その役割は、信用無しおよび手数料無しの取引決済ならびに不正なデータ転送を可能にすることです。それでいいんです。ユニバーサルエンジニアリングの原則に忠実に、我々はモジュール性の哲学を通じてトレードオフを減らします。常に各機能で平凡なパフォーマンスにつながるいずれのサイズのスイスアーミーナイフにも合ったサイズを作成するのではなく、私たちは代わりにIOTAプラットフォームをモジュラー化します。これは、各コンポーネントが、その目的に合わせて最適化されたスタンドアローンアプリケーションであることを意味し、他のアプリケーションのパフォーマンスや機能とのトレードオフはありません。さらに、これは、IOTAを選ぶユーザに合わせて、たとえもともとそれらのうちの1つだけを使用する必要があるとしても、機能のオーバーヘッドを課す代わりに、プロトコルの使用方法を調整することができます。これらのコンポーネントの両方は、スケーラブルで機能的なプラットフォームにとって不可欠です。

IDot(モノのアイデンティティ)

IOTA Development Roadmap」より引用

IoTが完全な潜在能力に確実に成熟するためには、マシン/デバイスについての考え方を根本的に変えなければなりません。特定の目的を持つ金属とプラスチックの活気のないアマルガムとしてそれらを認識するのではなく、それぞれのデバイスを異なる属性を持つ独自のアイデンティティとして考える必要があります。例えば、センサには一意の識別子だけでなく、誰が製造したのか、配備された時期、予想されるライフタイムサイクルはどのくらいか、誰が今所有しているのか、どのようなセンサデータを収集しているのか、どんな精度なのか、いくらでデータを販売するのか?これは効率的なインデックス作成と、マシンエコノミーとインダストリー4.0の予測メンテナンスを有効にするためには不可欠です。IDoTは、接続された世界の安全を確保する上で重要な役割を果たします。各デバイスが独自のIDを持つ場合、異常と侵入検知に不可欠な評判システムを確立することもできます。デバイスがそのIDに従って動作しているかどうかを観察することによって、IDに従っていない場合はマルウェアが拡散していることを示し、近隣のデバイスはマルウェアを隔離することができます。

ステータス:現時点では、開発者や主要な業界やIoTの参加者とのアイデアを調査し実施する準備段階にあります。できるだけ多くの人からの入力が必要であり、IDoTが標準になることは不可欠です。ただし、IOTAの台帳は、デバイスの属性と評判が改ざん防止であることを保証する役割を果たすことは明確です。

将来のブログ投函はIDotについて深く掘り下げます。

パーマノード

IOTA Development Roadmap」より引用

IOTAは「スナップショット」を使用して、Tangle台帳データベースのサイズを小さく保つため、これはIoTの前提条件です。これは決済とデータの完全性の使用事例の大多数に必要なすべてです。ただし、台帳の完全な生データを保管し、永続的にアクセスできるようにする必要があるアプリケーションがあります。たとえば、透過的な検査では、そのような能力が必要です。これが「パーマノード」の役割です。パーマノードは、Tangleの履歴とデータ全体を永続的かつ安全に保存します。スナップショットでチェックポイントを設定することにより、信頼要件を完全に削除することが可能になります。

ステータス:αテスト段階

フラッシュネットワーク

IOTA Development Roadmap」より引用

現時点では、IOTAとIoTは、生産準備展開とIoT環境への「移行段階」の初期フェーズにあります。ネットワークがかなり成長し、それを超えてIoTの全般的状況はハードウェアサポートと共に自然にDLT(分散型台帳技術)を採用し始めます。IOTAはあらゆる実用的な目的に対して、無制限のスループットを与えるため、ペイメントチャネルは取引の非常に高速なスループットを必要とする用途に役立ちます。フラッシュチャンネルは、独特のTangle構造のために、ライトニングネットワークやライデンネットワークなどの同様の新提案よりも明らかな利点があります。フラッシュチャンネルには、チャンネルをセットアップするための手数料が含まれていないため、少額取引に適しています。また、Tangleにはマイナーがないので、ブロックに取り込まれる前に期限切れになる取引について心配する必要もありません。

ステータス:中期開発段階

MAM(変装した証明済メッセージング)

IOTA Development Roadmap」より引用

最も期待されている、おそらくIOTAの最もユニークなモジュールの1つは、MAM(変装した証明済メッセージング)です。MAMはセンサーや他のデバイスがデータストリーム全体を暗号化し、それらをIOTA Tangleに量子耐性を持ちつつ安全に固定することを可能にします。許可された当事者だけが、データストリーム全体を読み取り、再構築することができます。本質的には、正しい周波数のものだけが聞くことができるラジオのように多く働きます。MAMでは、正しいチャンネルIDを持つ人だけがデータにアクセスします。サプライチェーン、銀行業、インダストリー4.0などの業界への適用可能性だけでなく、MAMに関するさらに多くの発表が期待できます。

ステータス:βテスト段階

プライベートトランザクション

IOTA Development Roadmap」より引用

MAMがデータ共有にセキュリティとプライバシーを提供しているのと同じように、プライベートトランザクションは取引のプライバシーのためにあります。取引は個人情報を暴露する多くのメタ情報を持ちますが、これは特定のIoTユースケースで増幅されるため、プライベートトランザクション層が開発中です。第1ラウンドでこれを達成するためにトークンシャッフルを使用しますが、ゼロ知識証明などのより広範なテクノロジーも検討しています。

ステータス:初期の開発段階

オラクル(神託機械)

IOTA Development Roadmap」より引用

IOTAのユーティリティとアプリケーションを拡張する主な方法の1つは、神託機械を使用することです。これにより、タイムスタンプなどの外部データをIOTAネットワークに送ることができます。あなたはこのブログでいくつかのエキサイティングな発表を期待できます。

ステータス:高度な開発段階

ツールとライブラリ

IOTA Development Roadmap」より引用

開発エコシステム、特にオープンソースの開発エコシステムは、ツールとライブラリの健全なプールが必要です。 現在、これらの多くが開発中です。

JavaScriptライブラリ

IOTA Development Roadmap」より引用

最も広く使用されているIOTAライブラリであるJavascriptライブラリは、新しい機能を実装して開発者が利用できるようにした初めての他の人のための大量の「参照」ライブラリです。Javascriptライブラリは、完全なAPIガバレッジ、便利なユーティリティとラッパー関数、および完全な複数署名のサポートにより、NodeJSおよびブラウザアプリケーションでIOTAを使用することを非常に簡単にします。

ステータス:完了

Pythonライブラリ

IOTA Development Roadmap」より引用

おそらく最も一般的なプロトタイプ言語、Pythonライブラリ(PyOTA)は機能が大量に完備されており、複数署名のサポートが完全にテストされるのを待っています。PyOTAはすでにいくつかの概念実証やハッカソンで使用されています。

ステータス:完成 すぐさま改良

Javaライブラリ

IOTA Development Roadmap」より引用

現在のテスト段階でAndroidモバイルウォレットで使用されているJavaライブラリが開発され、機能が大量に完備されています。Javasctiptライブラリのすべての機能とラッパー関数は、Javaに移植され、完全なテストカバレッジを備えています。複数署名のサポートはすでに実装されており、現在セキュリティの見直しが行われています。

ステータス:完成

C#ライブラリ

IOTA Development Roadmap」より引用

Javaライブラリと同様に、C#ライブラリは機能が完備されており、JavascriptライブラリのほとんどのAPI機能が実装されています。今後のリリースでは、アドレスとアカウントに複数署名とオプションの鍵セキュリティを追加する予定です。

ステータス:完成 複数署名はすぐ

Goライブラリ

IOTA Development Roadmap」より引用

サンドボックスデベロッパー環境で積極的に使用されているGoライブラリは、2人の開発者によって積極的に開発されており、4月に一般公開される予定です。シンプルなCLIも提供しています。

ステータス:開発中

エコシステムプロジェクト

IOTA Development Roadmap」より引用

ストレステスト

IOTA Development Roadmap」より引用

最高のスループットを備えた最も拡張性の高い公衆分散台帳であるという点でIOTA Tangleの台帳の能力を示すために、実際にネットワークトポロジーがそれ自体を維持できることを見て、アカウント計算能力、ユーザ負荷、分散ノードの反応速度などを考慮して、さまざまな種類のストレステストを計画しています。近いうちにいくつかのパートナーとのより多くの情報と発表を期待できます。

ステータス:計画と準備段階

公開シミュレーション

IOTA Development Roadmap」より引用

Tangleが根本的に新しい概念であることを考えると、理解して十分に意味がわかることが難しいことはよくありますが、私たちはここ数カ月間Pythonのシミュレーションフレームワークに取り組んできました。このシミュレーションフレームワークにより、クラスターとネットワークの設定、トランザクションの最終的な時間、トランザクションの伝播、さまざまなチップ選択戦略、全体的な承認率をシミュレートすることができます。それに加えて、(ホワイトペーパーに記載されているような)攻撃を実装しました。Tangleがそのような攻撃に対してどのように維持できるかを視覚的に見ることができます。

ステータス:大部分は完成 ピアレビューを待っている段階

サンドボックス

IOTA Development Roadmap」より引用

開発者の能力を高めることは、サンドボックスが取り組んでいる参入障壁を削減することを意味します。IOTAサンドボックスは、開発者が「コーディング」するのを非常に簡単にします。ソフトウェアをダウンロードしたり、あなたのローカル環境やその他のものを設定したりする心配はありません。私たちはあなたのためにすべての重労働を世話します。私たちは専用のGPUであなたのPoWをします。短い休憩の後、4月中旬にサンドボックス環境の運用を継続します。

ステータス:4月中旬再開

学ぶ

IOTA Development Roadmap」より引用

IOTAを中心としたアプリケーション開発の推進が最優先事項です。最初の主要なコミュニティ活動の1つとして、関連するすべての開発者のチュートリアル、コードスニペット、およびリソースの中心的なリポジトリとしてIOTA Learnをセットアップしました。これにより、開発者はIOTAに素早く潜入し、コミュニティのエキスパートから学ぶことが容易になるばかりでなく、教師になってプロジェクトやチュートリアルをホームページに掲載することもできます。

ステータス:ここをチェック!

IOTAエコシステムは、新しい開発者、研究者、NGO、スタートアップ、大企業が集まり、IOTAと財団が新しいアプリケーション、社会的インパクト、ビジネスチャンスをさらに促進するために提供するものを探求しながら、毎日成長しています。このような野心的で包括的なロードマップにより、私たちはIOTAをこの分野で最もユニークで尊敬されるソリューションプロバイダーの1つに位置付けています。次の数週間で、エキサイティングな開発とエコシステムについての発表がたくさんあります。IOTAは草の根的な取り組みとして始まり、依然として完全にオープンソースの公開プロジェクトです。誰もがエコシステムに参加したり、Slackに参加したり、Twitterでフォローしたり、ニュースレターを購読したりすることができます。

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です