简体   繁体   中英

Blockchain/IPFS for data sharing between applications

I am going deploy multiple(30+) applications for multiple customers in different cloud environments (AWS, Azure, google cloud, etc) and let them share data with each other. My plan is to use Blockchain/IPFS sort of technology where each customer keeps a copy of the data, and any changes to those data are propagated to all the nodes.

The data can be categorized into two types:

Public data of each customer are shared and accessed by all applications directly.

Private data of each customer are encrypted with the customer's public key before stored and the cipher can be accessed by all applications.

Does this sound like a viable solution ? IPFS seems to be a good candidate for data storage, but not sure which database works well with IPFS.

You can use the Ethereum blockchain to store the IPFS hash tied to each customer.

Each IPFS hash references a piece of data. The data it's referencing can be public in plain text, or public but encrypted with their public key.

Each customer would have a unique public address which will function as a unique identifier. In the Ethereum smart contract, you'd map each customer public address to a list of IPFS hashes, which reference their data. You'd also set up event triggers in the smart contract methods.

Any participant can subscribe to the smart contract events and act on the updated information.

Anyone can read the IPFS hashes tied to a customer.

The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM