Enabling Micro-payments on IoT Devices using Bitcoin Lightning Network

Bitcoin’s success as a cryptocurrency enabled it to penetrate into many daily life transactions. Its problems regarding transaction fees and longer validation times are addressed through an innovative concept called Lightning Network (LN) which works on top of Bitcoin by leveraging off-chain transactions. This made Bitcoin an attractive micro-payment solution which 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 on resource-constrained IoT devices due to its 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 in LN operations with its digital signature by replacing original 2-of-2 multisignature channels to 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 this LN gateway to request the IoT device’s digital consent for all further operations on the channel such as sending payments or closing the channel. LN’s Bitcoin transactions are revised to incorporate 3-of-3 signatures. In addition, LN’s revoked state broadcast procedure is modified to be able to operate under 3-of-3 multi-signature scheme. We evaluated the proposed protocol by implementing it on a Raspberry Pi for a toll payment scenario and demonstrated its feasibility and security.