libsignal 1.0.0 copy "libsignal: ^1.0.0" to clipboard
libsignal: ^1.0.0 copied to clipboard

Dart FFI bindings for libsignal — Signal Protocol implementation for end-to-end encryption, sealed sender, group messaging, and secure cryptographic operations.

Changelog #

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

Unreleased #

1.0.0 - 2025-12-31 #

Added #

  • Pre-built native libraries for all platforms (iOS, Android, macOS, Linux, Windows)
  • Signal Protocol: Double Ratchet algorithm for forward secrecy and break-in recovery
  • X3DH: Extended Triple Diffie-Hellman for asynchronous key agreement
  • Key Management: Curve25519 key pairs (PrivateKey, PublicKey, IdentityKeyPair)
  • Pre-keys: PreKeyRecord, SignedPreKeyRecord, PreKeyBundle for session establishment
  • Post-quantum: Kyber key pairs (KyberKeyPair, KyberPreKeyRecord) for quantum resistance
  • Sessions: SessionRecord, ProtocolAddress for session management
  • Messages: SignalMessage, PreKeySignalMessage for encrypted communication
  • Sealed Sender: Anonymous message sending (ServerCertificate, SenderCertificate)
  • Group Messaging: SenderKey distribution (GroupSession, SenderKeyRecord, SenderKeyDistributionMessage)
  • Cryptographic utilities: AES-256-GCM-SIV (Aes256GcmSiv), HKDF (Hkdf), identity fingerprints (Fingerprint)
  • Storage interfaces: SessionStore, IdentityKeyStore, PreKeyStore, SignedPreKeyStore, KyberPreKeyStore, SenderKeyStore
  • In-memory store implementations for testing and prototyping
  • Automatic native library download via build hooks
  • SHA256 verification for native library integrity
  • LibSignal.init() for optional library pre-initialization
  • Comprehensive exception handling with SignalException
  • GitHub Actions CI/CD pipeline for automated testing and publishing
  • Automated upstream version tracking with AI-powered changelog generation
  • Cross-platform build scripts for native library compilation
  • Example Flutter application and CLI example demonstrating all features

Security #

  • Based on libsignal v0.86.9 from Signal Foundation
  • Secret keys are handled securely with proper memory management
  • Cryptographic operations use constant-time implementations where applicable
2
likes
0
points
504
downloads

Publisher

unverified uploader

Weekly Downloads

Dart FFI bindings for libsignal — Signal Protocol implementation for end-to-end encryption, sealed sender, group messaging, and secure cryptographic operations.

Repository (GitHub)
View/report issues

Topics

#encryption #signal-protocol #e2e-encryption #cryptography #messaging

License

unknown (license)

Dependencies

code_assets, crypto, ffi, hooks

More

Packages that depend on libsignal