  The full realization of smart city technology is dependent on the secure and
honest collaboration between IoT applications and edge-computing. In
particular, resource constrained IoT devices may rely on fog-computing to
alleviate the computing load of IoT tasks. Mutual authentication is needed
between IoT and fog to preserve IoT data security, and monetization of fog
services is needed to promote the fog service ecosystem. However, there is no
guarantee that fog nodes will always respond to IoT requests correctly, either
intentionally or accidentally. In the public decentralized IoT-fog environment,
it is crucial to enforce integrity among fog nodes. In this paper, we propose a
blockchain-based system that 1) streamlines the mutual authentication service
monetization between IoT and fog, 2) verifies the integrity of fog nodes via
service audits, and 3) discourages malicious activity and promotes honesty
among fog nodes through incentives and penalties.
