  Bitcoin's success as a cryptocurrency enabled it to penetrate into many daily
life transactions. Its problems regarding the transaction fees and long
validation times are addressed through an innovative concept called the
Lightning Network (LN) which works on top of Bitcoin by leveraging off-chain
transactions. This made Bitcoin an attractive micro-payment solution that can
also be used within certain IoT applications (e.g., toll payments) since it
eliminates the need for traditional centralized payment systems. Nevertheless,
it is not possible to run LN and Bitcoin on resource-constrained IoT devices
due to their storage, memory, and processing requirements. Therefore, in this
paper, we propose an efficient and secure protocol that enables an IoT device
to use LN's functions through a gateway LN node even if it is not trusted. The
idea is to involve the IoT device only in signing operations, which is possible
by replacing LN's original 2-of-2 multisignature channels with 3-of-3
multisignature channels. Once the gateway is delegated to open a channel for
the IoT device in a secure manner, our protocol enforces the gateway to request
the IoT device's cryptographic signature for all further operations on the
channel such as sending payments or closing the channel. LN's Bitcoin
transactions are revised to incorporate the 3-of-3 multisignature channels. In
addition, we propose other changes to protect the IoT device's funds from
getting stolen in possible revoked state broadcast attempts. We evaluated the
proposed protocol using a Raspberry Pi considering a toll payment scenario. Our
results show that timely payments can be sent and the computational and
communication delays associated with the protocol are negligible.
