Crate sda_protocol [−] [src]
This crate describes the common interface of SDA, including the resources, methods, and message format exposed by an SDA service.
As such it is lightweight crate referenced by most of the other (Rust) crates.
It takes a resource-oriented REST approach whenever possible, influenced by the Google API Design Guide.
Reexports
pub use helpers::*; |
Modules
byte_arrays |
Typed binary arrays of specific sizes. |
helpers |
Various helper traits, structs, methods, and macros. |
Structs
Agent |
Fundamental description of agents in the system, i.e. participants, clerks, recipients, and admins. |
AgentId |
Unique agent identifier. |
Aggregation |
Description of an aggregation. |
AggregationId |
Unique aggregation identifier. |
AggregationStatus |
Current status of an aggregation. |
ClerkCandidate |
Suggested clerk for a given aggregation. |
ClerkingJob |
Partial aggregation job to be performed by a clerk. |
ClerkingJobId |
Unique job identifier. |
ClerkingResult |
Result of a partial aggregation job performed by a clerk. |
Committee |
Description of committee elected for an aggregation. |
EncryptionKeyId |
Unique encryption key identifier. |
Participation |
Description of a participant's input to an aggregation. |
ParticipationId |
Unique participation identifier. |
Pong |
Return message given by the |
Profile |
Extended profile of an agent, providing information intended for increasing trust such as name and social handles. |
SdaError |
The Error type. |
Snapshot |
Captures a subset of the current participations to an agggregation in order to create a consistent set of clerkable shares. |
SnapshotId |
Unique snapshot identifier. |
SnapshotResult |
Result of an aggregation snapshot, including output, ready for reconstruction. |
SnapshotStatus |
Current status of a snapshot. |
VerificationKeyId |
Unique verification key identifier. |
Enums
AdditiveEncryptionScheme |
Supported additive encryption schemes and their parameters. |
Encryption |
Encryption (or ciphertext). |
EncryptionKey |
Encryption key (aka public key). |
LinearMaskingScheme |
Supported masking schemes and their parameters. |
LinearSecretSharingScheme |
Supported secret sharing schemes and their parameters. |
SdaErrorKind |
The kind of an error. |
Signature |
Signature. |
SigningKey |
Signing key for signatures. |
VerificationKey |
Verification key for signatures. |
Traits
SdaAgentService |
Methods used mainly for discovering and maintaining agents and their identities. |
SdaAggregationService |
Methods used mainly for discovering aggregation objects. |
SdaBaseService |
Basic methods for all SDA services. |
SdaClerkingService |
Methods used for clerking in particular. |
SdaParticipationService |
Methods used for participation in particular. |
SdaRecipientService |
Methods used by the recipient in particular. |
SdaResultExt |
Additional methods for |
SdaService |
Combined SDA services. |
Type Definitions
LabelledVerificationKey |
Verification key and its associated id. |
SdaResult |
Convenient wrapper around |
SignedEncryptionKey |
Encryption key with its associated, signed by the owner of the corresponding keypair. |