KeyChain: Blockchain-Based Key Distribution

Yifei Hu,Yan Xiong,Wenchao Huang,Xianglin Bao
DOI: https://doi.org/10.1109/bigcom.2018.00027
2018-01-01
Abstract:End-to-End Encryption (E2EE) is widely used in messaging services to protect the security of messages, and most E2EE systems are implemented by asymmetric encryption. However, most mechanisms of public key distribution rely on centralized servers, which may cause leakage and tampering of messages if centralized servers are compromised. In this paper, we propose a decentralized key distribution protocol based on blockchain to solve this problem, and we call it KeyChain. Blockchain can build transparent systems without centralized servers and inherently resist tampering with high Byzantine fault tolerance, therefore it is employed in KeyChain to store public-key-to-id bindings. In addition, in KeyChain, every modification of the public key will be added to the blockchain, so that tampering behaviors can be traced; for the purpose of implementing Byzantine fault tolerance by a low computation cost, KeyChain employs Delegated Proof of Stake (DPOS) as the consensus mechanism to avoid waste of computing resources. Our experiments results show that KeyChain can distribute public keys within 1.3 seconds and only cost a client 0.262MB hard disk space in 24 hours.
What problem does this paper attempt to address?