Skip to main content
QUICK REVIEW

[論文レビュー] Dynamic Role Binding in Blockchain-Based Collaborative Business Processes

Orlenys López‐Pintado, Marlon Dumas|arXiv (Cornell University)|Dec 7, 2018
Blockchain Technology Applications and Security参考文献 11被引用数 9
ひとこと要約

本稿では、ブロックチェーンベースの共同ビジネスプロセスにおける動的ロールバインディングモデルおよびポリシー言語を提案し、実行時における信頼関係の変化を反映した、正式な整合性検証を伴うアクターのロールへの共同バインディングを可能にする。本手法はポリシーをスマートコントラクトにコンパイルし、Ethereum上でのスケーラブルなアクセス制御を実現する。評価では、ロール数および制約数に比例してコストが線形に増加することが示された。

ABSTRACT

Blockchain technology enables the execution of collaborative business processes involving mutually untrusted parties. Existing platforms allow such processes to be modeled using high-level notations and compiled into smart contracts that can be deployed on blockchain platforms. However, these platforms brush aside the question of who is allowed to execute which tasks in the process, either by deferring the question altogether or by adopting a static approach where all actors are bound to roles upon process instantiation. Yet, a key advantage of blockchains is their ability to support dynamic sets of actors. This paper presents a model for dynamic binding of actors to roles in collaborative processes and an associated binding policy specification language. The proposed language is endowed with a Petri net semantics, thus enabling policy consistency verification. The paper also outlines an approach to compile policy specifications into smart contracts for enforcement. An experimental evaluation shows that the cost of policy enforcement increases linearly with the number of roles and constraints.

研究の動機と目的

  • 信頼できない当事者が関与するブロックチェーンベースの共同ビジネスプロセスにおける静的ロールバインディングの制限を解決すること。
  • 実行時における信頼関係の変化を反映し、アクターがロールに動的かつ共同でバインド・アンバインドできるようにすること。
  • デプロイ前に整合性を検証可能な形式的ポリシー記述言語とその意味論を提供すること。
  • 実行可能でブロックチェーンプラットフォーム(Ethereum など)で強制可能なスマートコントラクトにポリシーをコンパイル可能にすること。
  • Ethereum 上でのポリシー強制のパフォーマンスおよびコスト(ガス消費量とトランザクションコスト)を評価すること。

提案手法

  • 本稿では、ブロックチェーンアカウント(アイデンティティ)をロールに動的割り当てできるロールバインディングモデルを導入し、信頼関係や協働の有無に応じてアクターがバインド・アンバインドできるようにする。
  • ロールバインディングルール(ノミネート、バインディング、エンダースメントを含む)を表現できるポリシー記述言語を設計し、整合性チェックのための形式的意味論をペトリネットに根ざして定義する。
  • 複数の当事者のエンダースメントや条件付きバインディングを含む複雑な制約をサポートし、細かく制御されたアクセス制御を実現する。
  • ポリシー仕様をEthereumスマートコントラクトにコンパイルするアプローチを採用し、実行時にアクセス制御ロジックが強制されるようにする。
  • コンパイル前に、ペトリネットの意味論を用いてポリシーの整合性を形式的に検証し、矛盾するまたは整合性のとれないアクセスルールを防止する。
  • 実装はCaterpillarブロックチェーン実行エンジンに統合されており、Ethereum上でBPMNベースのプロセスモデリングと実行をサポートする。

実験結果

リサーチクエスチョン

  • RQ1信頼関係が時間とともに変化するブロックチェーンベースの共同ビジネスプロセスにおいて、動的ロールバインディングをどのようにモデル化できるか?
  • RQ2整合性と正しさを保証する動的ロールバインディングポリシーを指定・検証するための形式的言語および意味論は何か?
  • RQ3動的ロールバインディングポリシーを、ブロックチェーンプラットフォームで実行可能なスマートコントラクトにどのようにコンパイルできるか?
  • RQ4Ethereum 上でのポリシー強制に伴うガス消費量およびトランザクションコストという観点から、パフォーマンスのオーバーヘッドはどの程度か?
  • RQ5ロール数および制約の複雑さの増加に伴い、ポリシー強制のコストはどのようにスケーリングするか?

主な発見

  • 最も単純なポリシー(1つのロールがケース作成者にバインド)のデプロイコストは154,167ガスであり、メインアクセス制御コントラクトの固定デプロイコストは1,340,098ガスである。
  • ポリシー強制コストは、ロール数および制約の複雑さに比例して線形に増加し、エンダースメント制約が最も大きなコスト増加要因となり、1つの制約追加で16.0–19.0%の増加を示した。
  • バインディング制約を追加するとガスコストが4.0–5.7%増加し、制約に論理積(conjunction)を追加すると2.4–3.5%のオーバーヘッドが生じた。
  • ノミネート操作のコストは111,407~168,270ガス、ボート操作のコストは76,845~78,184ガスであり、ステートメントがポリシー内で後方に位置するほどコストが高くなる傾向を示した。
  • canPerform 関数のコストは、タスク数の増加に伴い31,693から33,066ガスに線形に増加し、予測可能な実行時パフォーマンスを示した。
  • プロセスケースの実行総コストには、ポリシーのデプロイコスト(均等化済み)と変動する実行時コストが含まれており、後者はポリシーの複雑さに比例して予測可能にスケーリングされた。

より良い研究を、今すぐ始めましょう

論文の読解から最終レビューまで、研究時間を劇的に削減しましょう。

クレジットカード登録不要

このレビューはAIが作成し、人間の編集者が確認しました。