Shoeisha Technology Media

CodeZine(コードジン)

特集ページ一覧

ブロックチェーンはもはや遠い技術ではない――Azureが提供する最新のサービスで学ぶ【デブサミ2019】

【15-C-5】今からでも遅くない!?Azureで学ぶ実用Blockchain

  • LINEで送る
  • このエントリーをはてなブックマークに追加
2019/03/22 12:00

目次

「Azure Blockchain as a Service」を活用するメリット

 ブロックチェーンはIaaSでもオンプレでも動く、サーバ1台からスタートできる技術だ。だが、コンソーシアムを構成した場合の企業間ネットワーク接続、ブロックチェーンの鍵管理やアクセス管理、ノードのセキュリティ、既存システムとの接続、ノードに必要なトランザクションやパフォーマンスが推測できない場合でのサービス利用、世界各国の拠点間でP2P(ピア・ツー・ピア)同期などのケースでは、「Azure Blockchain as a Serviceの活用をおすすめする」と廣瀬氏は続ける。

 Azure Blockchain as a Serviceは、Azureにブロックチェーン開発のためのプラットフォームを提供するサービスだ。クラウドなので低コストかつ迅速にブロックチェーンの検証や開発ができるのはもちろん、世界展開まで可能になるという。

 Azureの特徴は、全世界で54のリージョンを展開していることと、地球64周分という世界最大級のネットワークを持つことだ。「ブロックチェーンはP2Pが基本。国際間でコンソーシアムを構成する際、多数のリージョンを展開するAzureはブロックチェーンのプラットフォームとして優れている。また、Azureのネットワーク網で各企業をつなぐことで、P2Pにおけるノード間通信のレイテンシーも小さくなる」と廣瀬氏は説明する。

 しかもAzure Blockchain as a Serviceでは、目的に合わせてさまざまなブロックチェーンが使えるようになっている。最近、Ethereum Proof-of-Authority、金融機関でよく使われているR3 Corda、GoChain Single Node Blockchain、Hyperledger Fabric Consortiumが追加された。

 さらにワークフロー、ドキュメントなどのトレーサビリティを記録・管理するためのミドルウェアとAzureにおける活用リファレンスアーキテクチャを提供する「Blockchain Workbench」も用意。その他にも、Office 365やDynamics 365、G SuiteやDropboxなど、他のSaaSと連携して拡張する「Azure Blockchain Development Kit」も提供されている。「Azure Blockchain Development KitはオープンソースとしてGitHubで提供しています」(廣瀬氏)

 ここで廣瀬氏はD-App(分散アプリ)を開発するためのフレームワーク「Truffle(トリュフ)」を使ったEthereum開発のデモを実施した。

 TruffleはEthereumを簡単に開発するためのフレームワーク。ローカルでのエミュレーター環境「Ganache(ガナッシュ)」を使う。こうすることでエミュレータではあるが、自分のPC1台から開発することができるようになる。Azure Blockchain as a Serviceを使って、自分のみが使い倒せるEthereumネットワークを作ってもよいだろう。Ethereumのネットワークに必要なアドレス情報は「Metamask(メタマスク)」で作成した。

 デモ環境はAzureマーケットプレイスから展開した、TruffleのVMテンプレートをデプロイし、これにVisual Studio Codeを追加セットアップしたもの。Truffleのサンプルを展開するunbox機能で、メタコインのテンプレートを展開し開発していた。その後、最も簡単なサンプルとして、値をブロックチェーンに格納するだけのGetter/SetterのコントラクトとTruffleでのデプロイの仕組みと設定について紹介、実際にAzureに展開されたEthereumネットワークにスマートコントラクトをデプロイしていた。

 現在、Azureのブロックチェーンサービスを使っている企業は400社以上。「その中には身近な例もある」と廣瀬氏が紹介したのが、Xboxのロイヤリティ管理である。ブロックチェーンでパートナーとのロイヤリティ情報を共有、管理しているという。また国連の難民支援にもブロックチェーンを採用。生体認証を実施することで、IDカード無しで難民のサービスが利用になるという。Webjetという旅行予約サービスでもブロックチェーンを活用し、航空会社、レンタカー代理店、ホテルなどと予約台帳を共有することで、予約エラーやトラブルの低減を実現している。

 医薬品の真正性証明にも使われている。「米国では、薬の製造から流通までのトレーサビリティを確保する法律の整備を進めている」と廣瀬氏。この事例では、IoTデバイスでのQRコードスキャンや温度管理なども行い、製品輸送時や格納時の真正性の確認を実現しているという。

 こう説明した廣瀬氏は、IoTとブロックチェーンの連携のデモを実施。Azureを使った、IoTデバイスとBlockchain Workbenchとの連携は、一切のプログラミングを行うことなく、ノンコーディングで作成されているという。

ノンコーディングで作成したデモ環境
ノンコーディングで作成したデモ環境

Azureが提供するIoT関連サービス

 IoTの話題が出てきたところで、太田氏にバトンタッチした。太田氏はIoTをメインにAzure全般の普及啓発活動に従事しているエバンジェリストだ。

日本マイクロソフト株式会社 クラウド&エンタープライズビジネス本部 エバンジェリスト IoT ALGYAN 太田寛氏
日本マイクロソフト株式会社 クラウド&エンタープライズビジネス本部 エバンジェリスト IoT ALGYAN 太田寛氏

 AzureではエンドツーエンドをカバーするさまざまなIoT関連サービスを用意している。例えばIoT向けPaaSサービスとしては「Azure IoT Hub」がある。「IoTデバイスをセキュアに接続するのは難しい。このサービスを使えば、エンドツーエンドのセキュリティが保たれる」と太田氏は語る。IoTスケールの自動プロビジョニングをする「Azure IoT Hub Device Provisioning Service」も用意されている。

 また「サクッと簡単にIoTを構築したいのなら」と紹介したのが、「Azure IoT Central」「Azure IoT Solution Accelerators」というサービスだ。前者はフルマネージドのIoT SaaSでクラウド開発の経験は必要ない。後者はPaaSを組み合わせて構築できるテンプレートサービスで、クラウド開発の経験を活用して必要に応じてカスタマイズできるサービスだ。

AzureでIoTを実現する
AzureでIoTを実現する

 これらのサービスとブロックチェーンを使えば、簡単にモノとコトの一連の流れを追える、トレーサビリティの高い仕組みを実現できる。ここで課題となるのは、このような仕組みで私たちが知りたいのはIoT機械の計測値ではなく、場所や設備の状態や値であるということだ。つまり、IoTの測定値を利用者からの観点で知りたい状態や値に変換、ひも付けする機能が必要になる。

 そこで活用できるのが、「Azure Digital Twins」である。「今はまだプレビュー版で精度は良くないが、ぜひ、覚えておいてほしい。このソリューションを活用することで、実世界のデータとデジタルの世界のデータが一貫してつながる。ブロックチェーンがうまくいくカギを握るソリューションだ」と太田氏は力強く語る。

 最後に廣瀬氏が再登壇。次のように会場に呼びかけ、セッションを締めた。

 「ブロックチェーンはこれからの技術と思われているかもしれないが、水面下ではかなり進んでいる。ただ、技術先行型が多いので、事例として表に出てきていないだけ。遠く離れた技術ではない。ぜひ、Azureでブロックチェーンを学んでほしい」

お問い合わせ

 日本マイクロソフト株式会社



  • LINEで送る
  • このエントリーをはてなブックマークに追加

著者プロフィール

バックナンバー

連載:【デブサミ2019】セッションレポート

もっと読む

All contents copyright © 2005-2019 Shoeisha Co., Ltd. All rights reserved. ver.1.5