Skip to content

Implementations of some secure privacy preserving smart meter protocols.

License

Notifications You must be signed in to change notification settings

tblah/project-billing

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

34 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

project-billing

The protocols implemented in this repository are written up in a paper available here.

This project contains some implementations of secure privacy-friendly billing for smart meters. It is build on top of proj_net.

Documentation automatically generated by cargo doc is available here. And there is a demo program in src/main.rs. As an example usage of the test program, see ./test_scripts and demo.odp.

This project is licenced under GPL version 3 or later as published by the Free Software Foundation.

Please do not use this for anything important. The cryptography in proj_crypto has not been reviewed by a professional. And this implementation is far from production ready. Furthermore, the producer in the three party protocol does not check that it has received all of the measurements which it expects, from the correct times. This is necessary in a real implementation to prevent replay attacks by the customer but it is not implemented here as it would be a pain in the live demo.

Building (you may need to install libsodium first):

cargo build

Testing:

Be warned that he timing on the automated test of the three party protocol is very temperamental on slower machine, probably because my code sucks. If you are having problems please first try the interactive demo to determine if the issue is just in the timing of the test. A quick and dirty solution would be to increase the thread sleeps in billing/mod.rs around the part which is not working.

cargo test

To generate documentation:

cargo doc

For documentation of the cryptography see proj_crypto.

About

Implementations of some secure privacy preserving smart meter protocols.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published