Module proj_billing::billing::three_party [] [src]

Three Party Billing Scheme

  1. Utility provider
  2. Smart meter (trusted by all parties)
  3. Customer hardware (calculates the bill and performs the external communication to the provider)

The meter signs and commits to readings. The consumer may then perform computations on them which can be blindly verified by the utility provider, without the provider having to know the individual readings.

For the implementation of BillingProtocol (for tests), the Customer and Smart Meter are handled together.

Structs

CustomerState

State associated with the customer

MeterState

State associated with the smart meter

ProviderState

State associated with the provider

Statics

DEFAULT_PARAMS_PATH

The default file to store diffie-hellman parameters in

Functions

read_or_gen_params

Try to read DHParams from the provided file. If this fails, then generate new parameters and write these to the file