CHAINIAC: Proactive Software-Update Transparency via Collectively Signed Skipchains and Verified Builds

Software-update mechanisms are critical to the security of modern systems, but their typically centralized design presents a lucrative and frequently attacked target. In this work, we propose CHAINIAC, a decentralized software-update framework that eliminates single points of failure, enforces transparency, and provides efficient verifiability of integrity and authenticity for software-release processes. Independent witness servers collectively verify conformance of software updates to release policies, build verifiers validate the source-to-binary correspondence, and a tamper-proof release log stores collectively signed updates, thus ensuring that no release is accepted by clients before being widely disclosed and validated. The release log embodies a skipchain, a novel data structure, enabling arbitrarily out-of-date clients to efficiently validate updates and signing keys. Evaluation of our CHAINIAC prototype on reproducible Debian packages shows that the automated update process takes the average of 5 minutes per release for individual packages, and only 20 seconds for the aggregate timeline. We further evaluate the framework using real-world data from the PyPI package repository and show that it offers clients security comparable to verifying every single update themselves while consuming only one-fifth of the bandwidth and having a minimal computational overhead.


Published in:
Proceedings of the 26th Usenix Security Symposium, 1271-1287
Presented at:
26th Usenix Security Symposium, Vancouver, BC, Canada, August 16-18, 2017
Year:
2017
Publisher:
USENIX Association
ISBN:
978-1-931971-40-9
Laboratories:




 Record created 2017-07-04, last modified 2018-01-28

External links:
Download fulltextURL
Download fulltextPreprint
Rate this document:

Rate this document:
1
2
3
 
(Not yet reviewed)