Now on Demand Ransomware Resilience & Recovery Summit - All Sessions Available
Connect with us

Hi, what are you looking for?

SecurityWeekSecurityWeek

Network Security

Facebook Open Sources TLS 1.3 Library

Facebook on Monday announced the open source availability of Fizz, a TLS library written in C++ 14 that includes the new generation of Transport Layer Security (TLS 1.3).

Facebook on Monday announced the open source availability of Fizz, a TLS library written in C++ 14 that includes the new generation of Transport Layer Security (TLS 1.3).

Already deployed globally on Facebook’s mobile apps, load balancers, and internal services, the library handles millions of TLS 1.3 handshakes every second across the social media giant’s infrastructure. At the moment, over 50% of Facebook’s Internet traffic is secured with TLS 1.3, while its mobile apps also leverage TLS 1.3’s zero round-trip resumption (0-RTT) data.

“We believe this makes it the largest deployment of TLS 1.3 — and early (0-RTT) data — on the internet. Fizz has reduced not only the latency but also the CPU utilization of services that perform trillions of requests a day,” Facebook says.

By open-sourcing Fizz, the social networking company aims to help speed up deployment of TLS 1.3 across the Internet. Compared to its predecessor, the protocol can reduce latency significantly, and Fizz too is focused on efficiency.

“Our load balancer synthetic benchmarks show approximately 10 percent higher throughput than our previous stack, and we’re continuing to improve performance,” the company said.

Fizz servers, the company explains, are async by default, as functions such as certificate operations and ticket decryption operations are handled by remote services. Facebook also provides a simple async API and says that callbacks from Fizz can return asynchronous responses without blocking the processing of other handshakes.

With support for scatter/gather I/O APIs, Fizz can handle chunks of data, encrypting it in place into the chunked memory. This means it doesn’t need to copy data and that all applications using the library perform fewer memory allocations and copies.

Fizz also uses early data to reduce latency of requests, but only whitelisted requests are sent this way (the use of early data in TLS 1.3 allows an attacker to replay the data). The library also offers APIs to determine when transports are replay safe.

Advertisement. Scroll to continue reading.

According to Facebook, Fizz was built with security in mind from the ground up. The state machine of TLS in the library is explicit, with all transitions defined in one place, which makes it easier to handle security.

In Fizz, the company also implemented an abstraction to prevent the use of incorrect state transitions. Thus, if the state handler uses an incorrect state transition that hasn’t been defined in the explicit state machine, the code fails to compile.

“Fizz supports APIs that provide exported key material tied to TLS handshake. This has allowed us to support the Token binding protocol, which in turn allows TLS to be used to bind application tokens to improve security and trustworthiness of apps. We’ve also used this to integrate Fizz into our QUIC implementation,” Facebook explains.

At the moment, Fizz supports TLS 1.3 drafts 28, 26 (both wire-compatible with the final specification), and 23. It also supports all major handshake modes, including PSK resumption, early data, client authentication, and HelloRetryRequest. Fizz depends on three libraries, namely folly, OpenSSL, and libsodium.

Related: Facebook Releases New Certificate Transparency Tools

Written By

Ionut Arghire is an international correspondent for SecurityWeek.

Click to comment

Trending

Daily Briefing Newsletter

Subscribe to the SecurityWeek Email Briefing to stay informed on the latest threats, trends, and technology, along with insightful columns from industry experts.

Join the session as we discuss the challenges and best practices for cybersecurity leaders managing cloud identities.

Register

SecurityWeek’s Ransomware Resilience and Recovery Summit helps businesses to plan, prepare, and recover from a ransomware incident.

Register

People on the Move

MSSP Dataprise has appointed Nima Khamooshi as Vice President of Cybersecurity.

Backup and recovery firm Keepit has hired Kim Larsen as CISO.

Professional services company Slalom has appointed Christopher Burger as its first CISO.

More People On The Move

Expert Insights

Related Content

Identity & Access

Zero trust is not a replacement for identity and access management (IAM), but is the extension of IAM principles from people to everyone and...

Cybersecurity Funding

Network security provider Corsa Security last week announced that it has raised $10 million from Roadmap Capital. To date, the company has raised $50...

Network Security

Attack surface management is nothing short of a complete methodology for providing effective cybersecurity. It doesn’t seek to protect everything, but concentrates on areas...

Application Security

Virtualization technology giant VMware on Tuesday shipped urgent updates to fix a trio of security problems in multiple software products, including a virtual machine...

Application Security

Fortinet on Monday issued an emergency patch to cover a severe vulnerability in its FortiOS SSL-VPN product, warning that hackers have already exploited the...

Identity & Access

Hackers rarely hack in anymore. They log in using stolen, weak, default, or otherwise compromised credentials. That’s why it’s so critical to break the...

Network Security

A zero-day vulnerability named HTTP/2 Rapid Reset has been exploited to launch some of the largest DDoS attacks in history.

Cyberwarfare

Websites of German airports, administration bodies and banks were hit by DDoS attacks attributed to Russian hacker group Killnet