SkillAgentSearch skills...

Asynchronousratchetingtree

On Ends-to-Ends Encryption: Asynchronous Group Messaging with Strong Security Guarantees

Install / Use

/learn @facebookresearch/Asynchronousratchetingtree
About this skill

Quality Score

0/100

Supported Platforms

Universal

README

Asynchronous Ratcheting Tree

Asynchronous Ratcheting Tree (ART) is a protocol for end-to-end encrypted group messaging. It aims to provide scalable group messaging while maintaining strong security guarantees.

This repository contains the implementation used for the results in our ART paper. It contains implementations of ART and a pairwise Diffie-Hellman based ratcheting protocol which we used for comparison.

The implementation in this repository is purely academic example code, and should not be used in any production or security-critical system.

Requirements

Asynchronous Ratcheting Trees requires or works with:

  • Java 1.8.
  • Apache Maven 1.8.
  • Java Cryptography Extension (JCE) Unlimited Strength Jurisdiction Policy Files (http://www.oracle.com/technetwork/java/javase/downloads/jce8-download-2133166.html).
  • Apache Thrift 0.10.0 (just for rebuilding the Thrift definitions).

Building and executing

The Makefile in this directory will compile our source and then run the benchmarks; simply run

make run

The Team

The team who worked on the Asynchronous Ratcheting Tree paper are as follows:

From Facebook:

  • Jon Millican

From Oxford University:

  • Katriel Cohn-Gordon
  • Cas Cremers
  • Luke Garratt
  • Kevin Milner

We are grateful to our collaborators from Oxford University for the considerable time and expertise that they put in to this paper, and into the formal proofs of the ART protocol.

Contributing

See the CONTRIBUTING file for how to help out.

License

Asynchronous Ratcheting Tree is CC-BY-NC-licensed.

View on GitHub
GitHub Stars271
CategoryDevelopment
Updated1d ago
Forks37

Languages

Java

Security Score

80/100

Audited on Apr 5, 2026

No findings