Pub/Subとブロックチェーンの組み合わせ

こんにちは、髙田です。

IoTの発展によりたくさんのデータをやり取りしなければならなくなってきています。現在は、たくさんのデータをやり取りする場合にPub/Sub型のメッセージングモデルが多く使われています。
しかし、このPub/Sub型のメッセージングモデルはパブリッシャー(情報を送信する側)とサブスクライバー(情報を受け取る側)との間にブローカーを置いて通信する集中型アーキテクチャのため、障害や改ざんなどに弱いという欠点があります。
そこで、Pub/Sub型のメッセージングモデルにブロックチェーンを組み込むことによって障害や改ざんに強くしよう、さらにPub/Sub型のメッセージングモデルではできなかったデータの順序づけも行おうという論文を見つけたので、ミーティングにて発表、議論しました。

・タイトル Trinity: A Byzantine Fault-Tolerant Distributed Publish-Subscribe System with Immutable Blockchain-based Persistence
・著者 Gowri Sankar Ramachandran, 他
・発表 2019 IEEE International Conference on Blockchain and Cryptocurrency (ICBC)

この論文では、ネットワーク内のあるブローカーに公開されたデータをネットワーク内の全ブローカーに配信し、ブロックチェーン技術を利用してデータをブロックにして保存するという仕組みを提案しています。コンセンサスプロトコル(ネットワークを動かすための手順のルール)と分散型台帳技術(ブロックチェーン)を使用することによって、障害や改ざんに強くなりデータの順序づけも行える仕組みとなったそうです。 評価では、ネットワークオーバーヘッド、CPU使用率などを既存のブロックチェーンプラットフォームと比べています。

この論文の中ではブロックチェーンとPub/Subを組み合わせた最初のフレームワークと言っているので、まだまだ課題のたくさんあるものだと考えられます。これに関連した研究をしてみるのもいいかもしれません。