## Consent Handling Prototype
An investigative  prototype for consent handling using an ethereum blockchain under a consortium type setup with proof-of-authority, a web server (express on node) and a mongo database for user registration.

See the ![wiki](https://github.com/dnulnets/consent/wiki) for full information on the solution.

**Disclaimer!** This is work in progress and do not by any means make any claims of being bug free, exhaustive or being a provider of a blockchain for this purpose. It contains a sample IT-service provided by a company, a set of public web applications for consent handling and registration, a PoA blockchain, source code and wiki describing the system analysis, information model, solution overview and contract model.

**Feel free to contact me with any questions, comments or if you want to suggest changes, ideas or whatever**

## What is a consent?
**When one person voluntarily agrees to the proposal or desires of another.**

This is a common use case when a company wants to perform processing of information collected from a person for a specific purpouse. For example: If a company collects data on a persons usage of a product with the intention of using that data to perform product improvements based on that data, the company needs to have a consent.

## Consent Handling Prototype
An investigative  prototype for consent handling using an ethereum blockchain under a consortium type setup with proof-of-authority, a web server (express on node) and a mongo database for user registration.

See the ![wiki](https://github.com/dnulnets/consent/wiki) for full information on the solution.

**Disclaimer!** This is work in progress and do not by any means make any claims of being bug free, exhaustive or being a provider of a blockchain for this purpose. It contains a sample IT-service provided by a company, a set of public web applications for consent handling and registration, a PoA blockchain, source code and wiki describing the system analysis, information model, solution overview and contract model.

**Version** This is now updated for solc version 0.5.2 and geth version 1.8.21 and needs the Byzantium update due to STATICCALL to other contracts. 

**Feel free to contact me with any questions, comments or if you want to suggest changes, ideas or whatever**

## What is a consent?
**When one person voluntarily agrees to the proposal or desires of another.**

This is a common use case when a company wants to perform processing of information collected from a person for a specific purpouse. For example: If a company collects data on a persons usage of a product with the intention of using that data to perform product improvements based on that data, the company needs to have a consent.

Update to Solidity 0.5 and Byzantium
Update to Solidity 0.5 and Byzantium

Update to Solidity 0.5 and Byzantine for STATICCALL:s to other contracts.