  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.

Software Engineering