Expand description
This crate implements the core protocol logic for the Distributed Aggregation Protocol
(DAP) standard under development in the
PPM working group of the IETF. See VdafConfig
for a listing of supported
VDAFs.
Daphne implements draft-ietf-ppm-dap-02.
Daphne does not provide the complete, end-to-end functionality of any party in the protocol.
Instead, it defines traits for the functionalities that a concrete instantiation of the
protocol is required to implement. For example, the daphne_worker
crate implements a backend
for the DAP Leader and Helper. See the crate::roles
module for details.
Daphne is not yet feature complete. Known issues include:
-
The collect sub-protocol has not yet been fully implemented. In particular, Daphne Aggreators do not check properly if batch intervals overlap across collect requests. Note that this feature is privacy-critical and implementation is planned. See https://github.com/cloudflare/daphne/issues/45 for details.
-
Daphne is not compatible with DAP tasks whose maximum batch lifetime is longer than one.
-
Aborts are not handled precisely as specified. In particular, some fields in the “Problem Details” document are omitted.
-
Daphne does not implement a complete DAP Client or Collector. However, methods are provided on
VdafConfig
for producing reports and consuming aggregate results.