You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Right now, the only way to store personal/private data on the network is to:
Use a private network (with swarm keys for example),
Use semantic security (by encrypting the data).
For some use cases, this is too restrictive:
"I wouldn't store my passwords or my medical records on the IPFS network, even encrypted."
For these use cases, decentralization might still be necessary, but they would require a permissioned approach:
ideally, we'd let a user define who can replicate their data / what can be replicated from their node.
There are a lot of discussions around the question of authorizations (see below), @kylehuntsman and I have been working on the smallest step forward we could find: let a node accept/reject a bitswap request based on peerID and CID.
(one might find a certain resemblance with libp2p's ConnectionGater.)
Stories / Plan
As a developer, I can define a filter predicate (policy). This lets me filter requests based on the requester's ID and the content requested.
Add an optional configuration to go-bitswap that lets a user define this peer-block filter,
Add ipfs-related plumbing to pass this configuration down to the bitswap instance.
As a regular user, I can configure a default policy with a few allow, deny commands, similar to the IPFS filter proposed for gateway operators.
Checklist
Background
Right now, the only way to store personal/private data on the network is to:
For some use cases, this is too restrictive:
"I wouldn't store my passwords or my medical records on the IPFS network, even encrypted."
For these use cases, decentralization might still be necessary, but they would require a permissioned approach:
ideally, we'd let a user define who can replicate their data / what can be replicated from their node.
There are a lot of discussions around the question of authorizations (see below), @kylehuntsman and I have been working on the smallest step forward we could find: let a node accept/reject a bitswap request based on peerID and CID.
(one might find a certain resemblance with libp2p's ConnectionGater.)
Stories / Plan
allow,denycommands, similar to the IPFS filter proposed for gateway operators.Current State
Related Issues and discussions