4 releases

Uses new Rust 2024

0.85.3-beta.5 Dec 2, 2025
0.85.3-beta.4 Nov 20, 2025

#1 in #core-crate

Download history 670/week @ 2025-11-20 182/week @ 2025-11-27 198/week @ 2025-12-04 347/week @ 2025-12-11 550/week @ 2025-12-18 47/week @ 2025-12-25 215/week @ 2026-01-01 414/week @ 2026-01-08 370/week @ 2026-01-15 265/week @ 2026-01-22 196/week @ 2026-01-29 211/week @ 2026-02-05 2/week @ 2026-02-12 19/week @ 2026-02-19

481 downloads per month
Used in 6 crates (2 directly)

AGPL-3.0-only

68KB
1.5K SLoC

libsignal-protocol-syft (vendored)

This directory contains a vendored copy of the libsignal crates we need for syft-crypto-core. The upstream source lives under third_party/libsignal as a git submodule. We only copy the minimal subset of crates that the syft protocol depends on (libsignal-core, signal-crypto, and libsignal-protocol).

To refresh the vendored crates after updating the submodule, run:

cd vendor/libsignal-protocol-syft
python3 sync.py

The sync script:

  1. Copies third_party/libsignal/rust/{core,crypto,protocol} into crates/.
  2. Renames the crates to libsignal-core-syft, signal-crypto-syft, and libsignal-protocol-syft.
  3. Rewrites their manifests so that workspace = true dependencies become explicit version requirements, and so local dependencies point at the vendored siblings.

The generated crates are ready to be published to crates.io and can also be used in development via a path dependency in the outer workspace.

Dependencies

~2.7–4MB
~86K SLoC