Analysis and Design of Identity Authentication for IoT Devices in the Blockchain Using Hashing and Digital Signature Algorithms
Algorithm 1
The authentication method proposed in this paper.
Input: IoT trust domain configuration, blockchain network, master device information, slave device information, and data for identity authentication.
Output: Identity authentication result.
① System Initialization: initialize the IoT trust domain; identify the master and slave devices.
② Generate Trust Credentials: master device generates trust credentials for slave devices; trust credentials include ID, SID, PA, and SA.
③ Trust Domain Creation: master device requests the blockchain to create a trust domain; the blockchain node verifies the request and creates the trust domain; trust domain data (ID and MID) is stored in the blockchain.
④ Association Trust Domain: slave device requests association with a trust domain; blockchain node verifies the request using the public key; if valid, association data (SID, ID, and PA) is stored in the blockchain.
⑤Identity Authentication: slave device initiates identity authentication; authentication includes multiple steps: (a) slave device signs a ticket; (b) blockchain node verifies the ticket; (c) slave device interacts with other devices; (d) Data is signed, sent, and verified; (e) hash values are compared; and (f) if successful, data interaction is allowed.
⑥ Aggregate Signature: multiple signatures can be aggregated into one using an algorithm; blockchain node verifies the aggregated signature; authentication continues as usual.