CITP Luncheon Speaker Series:
Muneeb Ali – Experiences with Building a Global PKI with Blockchains

CITP Luncheon Series

Date: Tuesday, March 8, 2016
Location: 306 Sherrerd Hall
Streaming Live:

Food and discussion begin at 12:30 pm. No RSVP required for current Princeton faculty, staff, and students. Open to members of the public by invitation only. Please contact Jean Butcher at if you are interested in attending a particular lunch.

Cryptocurrency blockchains like Bitcoin and Namecoin and their respective P2P networks have seen significant adoption in the past few years, and show promise as naming systems with no trusted parties. Users can register human-readable names and securely associate data with them; only the owner of a particular private-key can write or update the name/value pair. In theory, many decentralized systems can be built using these cryptocurrency networks, such as new, decentralized versions of DNS or PKI. As the technology is relatively new and evolving rapidly, however, little production data or experience is available to guide design tradeoffs.

In this talk, we describe our experience operating a large, real-world deployment of a decentralized PKI service built on top of the Namecoin blockchain. We present various challenges (network reliability, throughput, security issues) that we needed to overcome while registering/updating over 33,000 entries on the blockchain which involved over 200,000 transactions on the Namecoin network. Further, we discuss how our experience informed the design of a new blockchain-based naming system, Blockstack. We detail why we changed from Namecoin to the Bitcoin network for the new system, as well as operational lessons from this migration. Blockstack is released as open source and currently powers a production PKI system for 46,000 users. See more details here.


Muneeb Ali is co-founder and CTO of Onename, a Y Combinator and Union Square Ventures backed startup focusing on blockchain technologies. Muneeb is also a final-year PhD candidate at Princeton University, where he has worked in the Systems and Networks group and at PlanetLab. He helped start a new course at Princeton on “How to be a CTO” and gives guest lectures on cloud computing at Princeton. Muneeb has been awarded a J. William Fulbright Fellowship (declined) and has served as the Program Co-Chair of ACM NSDR.