Convenient SSL implementation

HTTPS for All

© Lead Image © rawpixel, 123RF.com

© Lead Image © rawpixel, 123RF.com

Article from Issue 184/2016
Author(s):

The Let's Encrypt project delivers a free, fast, and uncomplicated way to create SSL certificates.

HTTP, still the most commonly used web protocol, is very much like a postcard or unencrypted email when it comes to transmitting data: Anyone who has access to the data can read the information. Because data packets do not take the shortest route – independent of the protocol – but rather the fastest transmission path, you could find that data travels around the world before reaching the recipient. Your packets therefore have no way of avoiding many potential sniffers.

The Hypertext Transfer Protocol Secure, HTTPS, helps to mitigate this problem by implementing encrypted and authenticated communication between the web server and the browser. Although a sniffer can still see the data traffic between the two endpoints, it cannot see the content. The Let's Encrypt initiative has the aim of establishing HTTPS globally by making it easy for server operators to implement wherever possible. To make it so, the developers automate the procedures for creating, setting up, and updating SSL certificates with just a single command and within minutes.

The Problem

Whether because of stubbornness, a lack of technical knowledge, or financial reasons, HTTPS is still not seeing widespread use, even though the protocol was developed by Netscape and published as early as 1994 in the Netscape browser. Trusted server certificates are hard to come by free of charge, and the annual costs of these certificates often are not worth the price for private server operators.

Certificates available for free from companies like StartSSL [1] or organizations such as CAcert [2] pose technical obstacles to implementation on the server for many virtual server operators. As an alternative, many people resort to self-signed certificates (aka snake oil certs). These certificates may load the page with HTTPS, but most web browsers present a warning message to the user, stating that the page is not trustworthy and asking whether to create an exception (Figure 1). This confuses users who do not know the operator, and it simply annoys returning visitors. Security, then, is not strictly enforced and is definitely not good for the site's reputation.

Figure 1: Most web browsers output a security warning for self-signed, and perhaps not trustworthy, certificates.

Service providers or organizations with the status of a certification authority (CA) issue trustworthy certificates. The box "What Is a CA?" explains what certification authorities are all about. If a CA is trustworthy, the web browser accepts the root certificate, thus identifying the websites accessed in the browser as appropriately protected.

What is a CA?

A certification authority's task includes, among other things, authenticating public keys and issuing appropriately signed certificates for them. These digital certificates typically follow the X.509 standard today. When you visit a website encrypted with HTTPS, you can click on the lock icon in the browser address bar (to the left of the URL) to view the key data for the underlying certificate.

The Solution

The Let's Encrypt project [3] set out about a year ago to establish HTTPS globally to the extent possible. The initiative was launched as the first project of the newly founded Internet Security Research Group (ISRG) [4] and was put under the Linux Foundation umbrella in April 2015. The project's supporters include, among others, Mozilla, the Electronic Frontier Foundation (EFF), Cisco, Akamai, IdenTrust, and researchers from the University of Michigan; Josh Aas from Mozilla is the team lead. The project's first rule is transparency, including regular transparency reports, the first of which is available as a PDF [5].

To achieve its goals, Let's Encrypt seeks to offer X.509 certificates [6] for Transport Layer Security (TLS) [7] free of charge and in a very uncomplicated way. Administrators use the command line to initiate the implementation configuration on the server; updates are handled automatically. This is a giant leap forward in terms of handling; it allows administrators to implement a certificate to the web server without first having to study cryptography and web server configuration.

On Your Mark

Let's Encrypt now has official status as a CA. A closed beta test was completed September 12, and two intermediate certificates, Let's Encrypt Authority X1 and Let's Encrypt Authority X2, became available mid-October. Because they were signed by the CA IdenTrust [8], they are accepted by all web browsers. The closed beta phase was opened to the general public December 3, with no waiting list or need to register.

During the closed beta test, Let's Encrypt issued more than 11,000 certificates by the beginning of November. The feedback from this phase made it possible to go public. The software for issuing the certificate and legitimizing the domain owner as the person with the authority over the domain for which the certificate applies is available, with the exception of automatic certificate renewal. The software is based on an in-house development known as the Automated Certificate Management Environment (ACME) protocol [9]. The project intends to take up regular operations in the spring of 2016.

Buy this article as PDF

Express-Checkout as PDF
Price $2.95
(incl. VAT)

Buy Linux Magazine

SINGLE ISSUES
 
SUBSCRIPTIONS
 
TABLET & SMARTPHONE APPS
Get it on Google Play

US / Canada

Get it on Google Play

UK / Australia

Related content

comments powered by Disqus

Direct Download

Read full article as PDF:

Price $2.95

News

njobs Europe
What:
Where:
Country:
Njobs Netherlands Njobs Deutschland Njobs United Kingdom Njobs Italia Njobs France Njobs Espana Njobs Poland
Njobs Austria Njobs Denmark Njobs Belgium Njobs Czech Republic Njobs Mexico Njobs India Njobs Colombia