Documentation
    Preparing search index...

    Class Task<Spec, Measurement>

    A client for interacting with DAP servers, as specified by draft-ietf-ppm-dap-02. Instances of this class contain all of the necessary functionality to generate a privacy-preserving measurement report for the provided ClientVdaf, such as an implementation of Prio3, as specified by draft-irtf-cfrg-vdaf-03.

    Type Parameters

    Index

    Constructors

    Properties

    protocolVersion: string = DAP_VERSION

    the protocol version for this task, usually in the form dap-{nn}

    Methods

    • Fetches hpke configuration from the configured aggregators over the network. This will make one http/https request for each aggregator (leader and helper).

      Returns Promise<void>

      DAPError if any response is not Ok.

    • Produce a Report from the supplied Measurement

      This may make network requests to fetch key configuration from the leader and helper, if needed.

      Parameters

      • measurement: Measurement

        The type of this argument will be determined by the Vdaf that this task is constructed for.

      • Optionaloptions: ReportOptions

      Returns Promise<Report>

      Error if there is any issue in generating the report

    • A convenience function to fetch the key configuration (if needed), generate a report from the provided measurement and send that report to the leader aggregator.

      This will call Task.generateReport and Task.sendReport, while automatically handling any errors due to server key rotation with re-encryption and a retry.

      Parameters

      Returns Promise<void>

      DAPError if any http response is not Ok or Error if there is an issue generating the report