crypto_shared 1.0.0
crypto_shared: ^1.0.0 copied to clipboard
Shared threshold-crypto helpers for Flutter officer apps and Serverpod coordinators — re-exports, hex codecs, DKG relay, signing job coordination.
crypto_shared #
Shared integration helpers for applications that combine pqthreshold and pqforge.
The package provides the application-facing transport and coordination layer for distributed ceremonies. It is intended for Flutter officer clients, Dart services, and Serverpod coordinators.
Included #
CeremonyMessageRelayandInMemoryCeremonyRelayfor DKG message transport.OfficerDkgClientfor driving a participant'sCeremonySessionthrough a relay.DistributedDkgCoordinatorandDistributedSigningCoordinatorfor in-process orchestration.SigningJobCoordinatorandThresholdCeremonyServicefor coordinator-side job handling.- Hex codecs and pqforge-aligned share wrapping helpers.
This package does not provide authentication, authorization, durable storage, or a network transport implementation. Applications must provide those boundaries and must never store officer share secrets in the coordinator.
Installation #
dependencies:
crypto_shared: ^1.0.0
The package supports Dart VM and native Flutter platforms. It is not Web-compatible because the custody and directory-relay helpers use dart:io.
Typical layout #
officer_app/ # Flutter app; stores its own Share securely
serverpod_server/ # coordinator; relays wire messages and collects partials
A Serverpod wiring sketch is available in the repository integration guide.
Security boundary #
The relay may carry DKG wire messages and public transcripts, but it must not receive private share scalars or passphrases. Add officer authentication and authorization to every application endpoint. Dispose temporary sensitive byte buffers and use platform secure storage for persistent shares.
Development #
dart pub get
dart analyze
dart test
The source package lives in the pqthreshold repository.
Because this package lives under the root package's packages/ pub exclusion,
publish it from an external staging copy:
bash ../../tool/publish_crypto_shared.sh --dry-run
bash ../../tool/publish_crypto_shared.sh
License #
MIT. See LICENSE.