Overview
My blockchain architecture requires each individual user to keep their data private. There can be unlimited number of users (say in millions). As per Hyperledger Fabric's documentation
An organization can be as large as a multi-national corporation or as small as an individual
Here is an architecture that comes to my mind:
- My company will have Organization A on business network
- Everytime a user signs up I will create a new Organization N, and new Channel C on business network.
- Each new channel will have two members: Organization A and user's newly added organization N
I purposely did not choose Private Data because Add an Org to Channel tutorial suggests that if N organizations exist in a particular channel then N-1 organizations must sign the transaction to allow new organization to come in. Because there is zero sharing of data between each user organization so I am creating unlimited channels (one channel for each user org).
Questions :
- I am trying to dodge the linear complexity that will kick in when I try to add new Org to existing channel. Is my architecture solving the linear increase of complexity effectively?
- Am I running into some other problem with this design?
- Something counterintuitive about my design?