...
FarmStack is a reference implementation of an open and interoperable data sharing protocol in agriculture sector that . FarmStack enables data collaboration between different entities. It does this by providing a means tonetwork of data providers and consumers through a suite of products and functionalities:
Share data directly without the need of third party through trusted peer to peer (p2p) connector
Empower the data provider to restrict usage of data by the receiver through usage policies
Enable farmers to Give control their of data back to the farmers by managing consent using data wallet
Enable organisations to create plugins to make their data discoverable (description of data)
FarmStack is the sum total of all the peer to peer connectors and associated usage policies.
Why is FarmStack required?
FarmStack is required because:
Complete Relevant farmer profile including farmer activity not available
Lack of trust on misuse or under utilisation of data with a centralised data warehouse
Need to comply with evolving data policy and privacy safeguarding measures
Existing data integration tools lack the customisation
Value generated by FarmStack
By combining specific datasets, better services or products can be created
Organisations can discover what data resides with whom to foster collaboration
Potential to unlock value of data that was previously considered not shareable
More feedback from lead to more enriching solution - giving rise to virtuous cycle
How does FarmStack network look?
A typical FarmStack network looks as below with three distinct roles the actors in the network can play. Farmers are the end beneficiaries who consume services offered by one or more participants and can have their data wallet using which they manage consent to share data to specific participants in return of anticipated returns. The consent could be granular and customised as per the need. For example, share a specific field for a certain period of time. The participants are the organisations that maintain and exchange data. They run the FarmStack software on their own premise to manage connectors using which they enforce usage restrictions as per the consent. The participants get access to the software once they register with the steward who maintains and oversees the network and acts a gatekeeper.
...
Business roles in FarmStack
Roles | Activities | Interface | Incentive |
---|---|---|---|
Farmers | Manage consent to share data that could be managed by self or an organisation | Data wallet | Control data Get connected to services |
Participants | Organisations that exchange data and manage connectors and usage policies based on consent | FS Participant | Respect farmers' rights Offer better services |
Steward | Nodal agency who manage subscription of the participants (issue certificates, logs transactions etc) | FS Steward | Drive data sharing policies Sustain a network |
How will someone use FarmStack?
There are two ways to use p2p connectors: a) data providers can set up the entire p2p connector set up FS participant software: a) obtain the FS participant software from the first steward, Digital Green and start managing the connectors and usage policies or b) service based model where FS team from Digital Green can deploy the connectorNo software for interested participants and hand over. There is no difference between the two in terms of functionality of data exchange.
Available resources:
Central place to download a p2p connector (github repo)Code repository to see how the software works
FarmStack Website to sign up and register
Help guide to set up a p2p connectorFS participant and FS Steward
Documents
Tutorials
Videos
Fs participant/ steward UI to manage data sharing
UI to configureConfigure p2p connector
Container network
Services (endpoints, auth mechanism etc)
Routes
UI to configure usage policy for consumers
UI to manage activity log
UI to manage certificates
UI to manage which catalog service to be used
Configure usage policies
Manage participant subscriptions and certificates
Manage team members
Examples of policy based usage control (not comprehensive list)
...
Below are the categories of use cases and examples for that. The categorization is a) usage oly, b) view only, c) share, d) download and e) stored.
Not visible - , that is, available for some operations aloneby a containerised application only
Usage of data fields restricted to specific operations like joining
Usage of data fields restricted to specific operations requiring logging
Usage of data fields restricted to specific operation limiting for a limited number of times operations can be made
Revoke usage
Delete data
Usage of data fields restricted to specific operations for a certain time period
Revoke usageDelete data
Visible with constraints
Data Only some part of data available for viewing for specific time period
Revoke access
Delete data
Specific data fields can be viewed by specific persons in specific organizations
Shareable with constraints
Can be shared to specific organizations (IP list) organisations with them only able to view or perform specific operations
Can be shared with logging and notifications
Can be shared with for limited number of times
Revoke permission to share
Delete data
Can be shared for a limited amount of time
Revoke permission to share
Delete data
Can share only specific data fields
Downloadable with constraints
Can download specific data fields
Stored with constraints
Can be stored but in encrypted form at specific instance
Can be stored for usage only for specific operations
Can be stored for usage only for specific time and operations