  Permissionless distributed ledgers provide a promising approach to deal with
the Internet of Things (IoT) paradigm. Since IoT devices mostly generate data
transactions and micropayments, distributed ledgers that use fees to regulate
the network access are not an optimal choice. In this paper, we study a feeless
architecture developed by IOTA and designed specifically for the IoT. Due to
the lack of fees, malicious nodes can exploit this feature to generate an
unbounded number of transactions and perform a denial of service attacks. We
propose to mitigate these attacks through verifiable delay functions. These
functions, which are non-parallelizable, hard to compute, and easy to verify,
have been formulated only recently. In our work, we design a denial of service
prevention mechanism which addresses network heterogeneity, limited node
computational capabilities, and hardware-specific implementation optimizations.
Verifiable delay functions have mostly been studied from a theoretical point of
view, but little has been done in tangible applications. Hence, this paper can
be considered as a pioneer work in the field, since it builds a bridge between
this theoretical mathematical framework and a real-world problem.
