# signalapp/libsignal-protocol-c

Repository: https://github.com/signalapp/libsignal-protocol-c
Canonical: https://ross.abutalabs.com/products/libsignal-protocol-c
Language: C
License: GPL-3.0
License Family: copyleft
Archived: true
Last push: 2020-07-31T04:48:45+00:00

## Health v2 (maintenance only)
Score: 10/100 (v2, computed 2026-09-02T17:46:02.011165+00:00)
- activity 0, release rhythm 35, longevity 100
- inputs: {"age_days": 3998, "days_push": 2224, "days_rel": null, "gap_med": null, "n_releases_24m": 0}
- flags: no_releases, archived
- formula: round(0.45*activity + 0.35*rhythm + 0.20*longevity); archived -> min(score, 10)

## Adoption (not part of the score)
Stars 1417, forks 286 (observed 2026-08-28T04:04:39.978811+00:00)

## What it is
A C implementation of the Signal Protocol, a ratcheting forward-secrecy encryption protocol for synchronous and asynchronous messaging. It provides the cryptographic primitives used by Signal for end-to-end encrypted communication.

## Use cases
- add end-to-end encryption to a chat application
- implement the Signal double ratchet protocol in C
- encrypt messages with forward secrecy
- integrate Signal protocol into a mobile messaging app
- build secure asynchronous messaging

## When to choose
- you need the Signal Protocol in a C or C-based mobile/embedded project
- you want battle-tested end-to-end encryption primitives for messaging

## When to avoid
- you need an actively developed version - the repo has been superseded by libsignal (Rust) and the last release was 2020
- you want a high-level ready-made chat solution rather than a crypto library
- GPL-3.0 licensing is incompatible with your project

## Facets
- artifact type: library
- maturity: maintenance
- function: cryptography, security, serialization
- domain: security, privacy
- platform: cross-platform, c
- tags: signal-protocol, end-to-end-encryption, double-ratchet, forward-secrecy, messaging-protocol, messaging, ios, android

## Member repositories
- signalapp/libsignal-protocol-c (main) score 10

## Provenance
- Observed fields: from GitHub, fetched 2026-08-28T04:04:39.978811+00:00.
- Health v2: computed from the inputs above; adoption is never an input.
- Inferred fields (summary, facets, guidance): AI-extracted, prompt v1, taxonomy v1, on 2026-08-30T04:38:02.599186+00:00, confidence not recorded.
  - readme: https://github.com/signalapp/libsignal-protocol-c (fetched 2026-08-28T04:04:39.978811+00:00, sha d7d218a44932)
- Data as of 2026-08-30T08:39:29.467469+00:00.
