プライバシーとセキュリティが大きな懸念事項となるにつれ、安全にユーザーのデータを保存したいと考える開発者は、BitTorrentによる新たなAPIに興味を抱いていることだろう。この新たなAPIは、以前のバージョンよりもより多くのオプションが備わり、導入しやすくなっている。

BitTorrentは、ピア・ツー・ピアのファイル転送テクノロジーにより、すでに多くの開発者によく知られている。The Pirate Bayのようなウェブサイトは、この技術を利用している。しかし、同社は他分野にも手を広げ、従来とは異なる、自社の核であるテクノロジーにより特化したアプリを探求してきた。

2013年、同社はBitTorrent Syncをリリースした。これはBoxやDropboxのようなアプリと同様に動作するファイル同期サービスであった。しかし、BitTorrent Syncは従来の発想と同じようにクラウドを使用したわけではない。転送されるデータは、サードパーティーのサーバーに保存されない。そうではなく、データは必要に応じてデバイス同士で共有される。さらに、インターネットに接続していなくとも、デバイスが相互に接続されていれば、データの共有が可能となるのだ。

BitTorrentはSyncのリリース後まもなく、製品版のAPIもリリースし、これらを試してみるよう開発者にアピールした。それ以来、同社は同期テクノロジーに関して、主な4つの用途を考えてきた。ファイルの統合、ワークフロー管理、自動同期、カスタム・レポートである。

また、BitTorrentの製品管理副社長、エリック・ポンズによると、開発チームが全く予期していなかった、想定外のプロジェクトも行われている。これらのうちで最も高度なのが、電気技師でハーバード大学の特別研究員にして、3Dプリント会社Voxel8の共同創設者、ジャック・ミナルディによるプロジェクトだった。

ミナルディのプロジェクトは、許可されたマシンのみでユーザーが利用できる、分散型のウェブページである。TorrentFreakの使用説明は次のとおりだ。

ウェブサイトをローカル環境に作成し、BitTorrent Sync/SyncNetをとおしてマシンにアクセスする場合、従来通りサーバー・ベースのウェブサイトにアクセスしなくても、誰でもピア・ツー・ピアで表示できます。ウェブサイトに更新があれば、自動的にユーザーにプッシュ通知が行われます。BitTorrent Syncには、ユーザーに読み取り専用アクセスを許可する機能があるため、コンテンツが不正に変更される心配はありません。

水曜にリリースされたSync API 2.0は、ミナルディのような、より創造的なプロジェクトを奨励するだろう。APIはより柔軟であり、APIコール、つまり許可されている操作の数は、14から42へ、約3倍となったが、より重要なのは、使用方法が簡単なことにある。それが今回、BitTorrentがREST(representational state transfer)スタイルを利用して、APIを構築した理由だ。これにより開発者は、より速く、よりスムーズにコマンドをテストすることが可能となった。

「開発は、はるかに容易でした」。BitTorrentのシニア・エンジニアで、APIの主要開発者であるセロン・ルイスは語った。 「以前のAPIを利用する場合より、サンプル・アプリを書くのがはるかに簡単でした。(RESTを使えば、)統合がはるかに容易になるツールキットやフレームワークなどが山のようにあります。われわれが構成した内部のフレームワークによって、新たな機能を組み込むことが容易になるでしょう」。

ポンズとルイスは、BitTorrentが以前のバージョンのAPIでは6,300個の開発者向けキーを発行したと述べ、同期への関心がかなり高いことを示している。

開発者によるその成果の一つがOnehubだ。これは企業のファイル共有サービスで、より高速のファイル転送を可能にするため、Syncを使用している。

「ほとんどのファイル同期ソリューションがそうなのですが、(自社製品を)全てクラウドベースにするのは困難でした」とポンズは述べている。 「顧客の一部にとっては、あまりにもスピードが遅すぎたのです」。

OnehubはSyncとAPIを利用し、クラウドでバックアップ用のコピーを同時に作成する間、マシン間で直接ファイルを転送するサービスを生み出した。

ファイル共有は、Syncにとって疑う余地のない用途となるが、オフライン機能についてはまだ始まったばかりだ。Syncは、ウェアラブルや、インターネットに断続的に接続する他のデバイスの開発者には安住の地をもたらしてくれるかもしれない。しかし、アマゾン、Box、Dropbox、グーグル、マイクロソフトなど、インターネットに依存するサービスでは動作しないだろう。

写真提供:Ari Bakker

Pocket