我在IPFS上存储了声音文件,并且IPFS散列连接到ERC721令牌。 我想make"只有令牌持有者才能访问数据"。但不幸的是,区块链和ipfs的数据是公开的,所以每个人都可以访问。
有没有办法让令牌持有者可以访问ipfs数据?
我的解决方案不起作用...... - 将加密数据存储在IPFS上并将密钥存储在ERC721令牌上。(如果将密钥设置为公共密钥,则每个人都可以看到它,如果将密钥设置为私有密钥,则包括令牌持有者在内的任何人都无法看到它)
如果您有任何建议或解决方案,请指导我!!
这是我的产品图片。我想让这个声音令牌数据仅供令牌所有者使用。 https://medium.com/coinmonks/converting-sound-file-to-erc721-token-with-digital-art-chain-29b1890b6d4d
答案 0 :(得分:0)
查看Permissioned Blocks白皮书 - https://github.com/autocontracts/permissioned-blocks/blob/master/whitepaper.md#a-permissioned-file-sharing-model-for-distributed-networks
以下内容来自上面分享的链接 -
"Combining a peer-to-peer file sharing protocol with a blockchain protocol, a smart contract can be used as the security mechanism for the peer-to-peer file sharing protocol."
需要彻底了解,但这可能是permissions and access control on IPFS using Ethereum
的良好起点。
答案 1 :(得分:0)
不,这仅适用于区块链和IPFS。抱歉。
您可以尝试这种方法:
[ Customer ] --buy---------------> [ blockchain ]
| ^ \ ^
| | \ verify permission
| | \ |
| | \-request access-> [ DRM server ]
| | |
| \-------------- send access hash---/
|
\----access file with access ID-> [ IPFS ]
客户将通过签署一条使用与区块链上记录的相同帐户的消息来请求访问文件。
此方法(以及使用IPFS的任何方法)的一个实质性缺点是,任何可以访问系统的人也可以在不知情的情况下共享文件。这也意味着他们可以与自己共享(即,您不能限制时间访问权限)。