Skynet

Sia blog” > “Skynet” の日本語翻訳です。2020/02/19 にSia分散ストレージをベースとしたSkynetがリリースされました。Skynetは自由なインターネットの基盤としての分散CDN、ファイル共有プラットフォームを提供します。

Author

Skynet

本日発表するのは、20年以上にわたるエンジニアリングと運用の取り組みの成果です。この時間の大半は、開発にのみ焦点をあてていました。ほぼ毎週、「いつ市場に出るのですか?いつビジネス開発チームを編成しますか?」という質問を受けました。そして、私たちは「技術の準備ができていません」と答え続ける必要がありました。そして、私たちのコミュニティと投資家の両方の長年の忍耐の末、ついに前進することができます。技術の準備ができました。

Skynetは、データとアプリケーションの永続的なホームです。これは、ファイルやアプリケーションをデプロイできる公平な基盤であり、アップロード元よりも長く存在し得るのです。 Bitcoinと同様に、Skynetはクラウドサーバーや人間の介入ではなく、マーケットプレイスやインセンティブ構造で動作する独立した有機的組織体です。

Skynetにデプロイできる最も単純なものはファイルです。このビデオを例に取ります。ビデオはSkynetユーザーによってpinされており、その結果、ビデオは世界中で利用できます。いつでも、誰かがビデオをpinすることでビデオを補強できます。一人がビデオをpinする限り、そのビデオはオンラインに残り世界中に公開されます。その人自身はオンラインでいる必要さえありません。 Skynetには、ビデオをホストし、高い稼働時間とスムーズな再生の両方を確保するためのインフラストラクチャがあります。

Skynetはアプリケーションをホスティングするのにも適しています。たとえば、このデモをご覧ください。このデモは、誰でもテキストメッセージをSkynetにアップロードできるアプリケーションです。ビデオと同様に、少なくとも1人がアプリケーションをpinする限り、アプリケーションは使用可能な状態で残ります。また、ビデオと同様に、pinする人は、アプリケーションを世界に公開するために自分自身がオンラインである必要はありません。 Skynetはアプリケーションを稼働し続けます。

Skynetの永続性は、pinの仕組みに由来しています。pinは、何かがグローバルに存在する権利を持つこと決定する力を一人の人間に与えます。 Skynetは、標準、要件、および利用規約がない発表媒体なのです。

アップロードとダウンロード

アップロードとpinは、Siaノードを介して行われます。Skynetは事実上、Siaの上に構築されたレイヤー2です。最新リリースを使用すると、誰でもコマンド “siac skynet upload” を使用してファイルをskynetにデプロイできます。出力は、「sia://TAACfPM8uKM-DG0rbefiQPUUBYfDew4BEaQJd7xeizMltw」の様な形式のskylinkです。このskylinkは、アップロードされたファイルまたはアプリケーションにアクセスするために世界中の誰でも使用できます。

ダウンロードはSkynetポータル経由で行われます。誰でもポータルを運用でき、すべてのポータルはSkynet上のすべてのファイルにアクセスできます。ポータルの運用コストは、一般的なSiaノードの運用よりトランザクション手数料で月間約$10高くなりますが、それ以外は通常のSiaノードの実行と同じです。

ほとんどの人は、自分でポータルを実行する必要はありません。当初、Siaコミュニティの何人かのメンバーが、ファイルをダウンロードしたい人が無料でアクセスできるポータルを実行しています。最終的に、ユーザーは、Lightning Networkなどの支払いレールを介したマイクロトランザクションを使用して、ポータルからダウンロードを実行できるようになります。ユーザーは、すべてのSkynetにアクセスするのに、単一のポータルにアクセスするだけで済みます。

Web互換性

コミュニティが運営するSkynetポータルは、実際にはWebポータルと呼ばれる拡張されたポータルです。名前が示すように、これらのポータルにはWebブラウザーからアクセスできます。アップロードおよびダウンロード用のシンプルなUIを提供し、開発者が使用するAPIも公開しています。

執筆時点で、コミュニティが運営するポータルのリストは以下のとおりです:

https://siasky.net — operated by Nebulous
https://skydrain.net — operated by PixelDrain
https://sialoop.net — operated by Keops
https://siacdn.com — operated by Maxint LLC
https://skynethub.io — operated by jchauan
https://skynet.luxor.tech — operated by Luxor
https://skynet.tutemwesi.com — operated by Tutemwesi
https://vault.lightspeedhosting.com — operated by Lightspeed Hosting

誰でも自分のウェブポータルを自由に作成できます。詳細については、 https://github.com/NebulousLabs/skynet-webportal をご覧ください。

開発者サポート

Skynetには、開発者向けのリッチなSDKも付属しています。現在、Go、Python、およびNodejsのライブラリがサポートされています。今後数か月で、SDKがサポートする言語をひろげ、より多くの機能を搭載する予定です。

デフォルトでは、各言語用SDKは siasky.net ウェブポータルと通信します。すべての言語は、開発者が別のウェブポータルを選択したり、ローカルホストで実行されるSiaノードを指定できるカスタマイズをサポートしています。現在、SDKはアップロードとダウンロードをサポートしていますが、pinのサポートもリリース間近です。

暗号化

素のskynetネットワーク上のファイルは暗号化されておらず、世界中で利用できます。ユーザーはプライバシーを保護するために、Skynetに送る前にいつでもファイルを暗号化することができます。しかし、Skynetは公開プラットフォームとして意図されているため、Skynetはデフォルトで暗号化されていません。これは、デフォルトで暗号化されている個人データ用のSiaとは対照的です。

暗号化のサポートは現在開発中です。ユーザーは独自の暗号化グループを作成し、そのグループ内でのみ使用可能なファイルをSkynetに公開できます。暗号キーリンクを送信することにより、対象者をグループに追加できます。

分散(decentralization)

Skynetは、Bitcoinの設計原則に厳密に準拠した proof-of-work ブロックチェーンであるSiaブロックチェーン上で動作しています。 Siaには、オンチェーンガバナンス、自動更新、定期的にスケジュールされたハードフォーク、およびソフトフォークはありません。 Siaネットワークを構築する際に行われる設計上の決定はすべて、妥協のない最優先事項である分散(decentralization)によって行われました。コードは完全にオープンソースであり、 https://gitlab.com/NebulousLabs/Sia で入手できます。

Siaブロックチェーンは、ファイルコントラクトと呼ばれる特別なタイプのスマートコントラクトを動かすために使用されます。ファイルコントラクトとは、アップローダーとホスト間の合意であり、ホストは特定のデータを特定の期間保存することが求められます。このコントラクトを結ぶために、ホストは、ホストがコントラクトに従わなかった場合に没収されるsiaコインを束縛する必要があります。Siaは、確率的マークル証明(probabilistic Merkle proofs)を使用して、ホストが約束どおりにデータを保存するかどうかを判断します。

Sia(Skynetを含む)にデータがアップロードされると、データは多数のホストにアップロードされ、単一の不良ホスト、または大規模な不良ホスト群でさえ、ファイルの安定性を乱すことはありません。ファイルは、リード・ソロモン符号(Reed-Solomon coding)を使用して冗長にアップロードされます。

自由なインターネットの構築

おそらく、Skynetで最も重要なことは、それがどれほど使いやすいかです。ファイルとアプリケーションは数秒でデプロイできます。ダウンロードは、従来のWebと競合する速度で行われます。開発者は、アプリケーションをSkynetに統合するために、十数行未満のコードの記述で済みます。

ツールが利用可能であり、ネットワークは稼働しています。今日Skynetをお試しください。