HTTPS, the cryptographic protocol used to secure web traffic as it travels across the Internet, has been in the news a lot recently. We’ve heard about security problems like Goto Fail, Heartbleed, and POODLE — vulnerabilities in the protocol itself or in specific implementations — that resulted in major security headaches. Yet the single biggest problem with HTTPS is that not enough sites use it. More than half of popular sites — and a much larger fraction of sites overall — still use old-fashioned HTTP, which provides no cryptographic protection whatsoever. As a result, these sites and their users are vulnerable to eavesdropping and manipulation by a range of threat vectors, from compromised WiFi access points to state-level mass surveillance. When deployed correctly, HTTPS defends against all these attacks.
Why don’t more sites use HTTPS? The major obstacle is that it’s too difficult for web sites to set up and maintain. Switching to HTTPS involves purchasing a digital certificate (a cryptographic statement that your domain name belongs to you) from a “certificate authority,” an identity-checking organization that users’ browsers are programmed to trust. This process involves a long series of manual steps, as well as fees that range from tens to hundreds of dollars a year. Site operators must also navigate a complicated process to generate crypto keys, validate the site’s identity, retrieve a certificate, and configure their server to use it. These steps, which have to be repeated every year or so when the certificate expires, are also prone to human error, with the result that a substantial fraction of all HTTPS sites have configuration problems that jeopardize their security.
For the past two years, I’ve been working with a talented group of people to do something about these problems. My student James Kasten and I joined forces with Peter Eckersley and Seth Schoen from EFF and Eric Rescorla, Josh Aas, and Richard Barnes from Mozilla. Our goal is to remove the barriers to deploying HTTPS and see an encrypted web completely replace unencrypted HTTP.
Today, we’re announcing Let’s Encrypt, a new certificate authority we’re creating that will begin operation in Summer 2015. What makes Let’s Encrypt different is that it takes the pain out of switching to HTTPS. Web site operators simply install a small piece of software that takes care of the entire process. This software interacts with Let’s Encrypt to validate the server’s identity, obtain a certificate, securely configure the server to use HTTPS, and automatically renew the certificate when necessary. With Let’s Encrypt, one click or one command is all it will take for a site to deploy HTTPS.
It’s also going to be free. With the rest of the process automated, arranging payment would be the one remaining headache, as well as a barrier to adoption for smaller sites and individuals. Let’s Encrypt will do away with fees and provide domain-validated certificates to nearly any server with a domain name, at zero cost.
Becoming a certificate authority isn’t a simple process, but we’ve already cleared some of the biggest hurdles. We recently completed a cross-signing agreement with IdenTrust that will let certificates from Let’s Encrypt be trusted by almost all web browsers from day one. We’re also going to work with browser makers to have our root integrated into major browsers going forward, to ensure lasting trust.
Let’s Encrypt will be operated by a new organization called ISRG, the Internet Security Research Group. ISRG, chartered to work towards a more secure Internet in the public interest, is a California public benefit corporation whose mission is to reduce financial, technological, and education barriers to secure communication over the Internet. Crucially, ISRG has “research” right in its name. It will serve as a vehicle for conveying advances from security research into practice more quickly. For instance, Let’s Encrypt will involve a number of new technologies, such as an automated certificate management protocol we’re developing called ACME, which includes support for new and stronger forms of domain validation.
ISRG and Let’s Encrypt are being made possible by an amazing group of sponsors, including Cisco, Akamai, Mozilla, IdenTrust, and EFF. We are still welcoming additional sponsors — if your company or organization is interested in providing financial support for this effort, please get in touch.
We have a lot of work left to do before we can start providing Let’s Encrypt to web site operators: We have to complete the software that will power the CA, the certificate management software for use by web sites, and the open, secure protocol that they’ll use to speak to each other. Today, we’ve posted a draft protocol specification and prototype implementations, which are available on Github. If you’d like to help by contributing to development and security review, please take a look at the code.
For server operators, watch this space. Let’s Encrypt will be available starting in Summer 2015, making free, automatic, browser-trusted HTTPS certificates available to everyone.
More links:
- Let’s Encrypt web site
- EFF blog post
- EFF press release
- Andreas Gal’s blog post
- Demo video by James Kasten
J. Alex Halderman is a computer science professor at the University of Michigan and director of Michigan’s Center for Computer Security and Society.
Leave a Reply