我正在开发一个应用程序,它可以处理存储在Blockchain中的数据的SQL查询。目前,我正在使用智能契约来实现这一点,因为这允许我以良好的结构形式存储数据。具体来说,我正在医疗保健部门中提供SQL查询。虽然实际的EHR文档仍然保留在一些分散的文件系统中,比如IPFS,但对于我来说,能够使用SQL进行查询,我使用智能契约存储了很少的元数据信息,使用结构化和映射等数据类型。我知道在Blockchain中存储数据是一项昂贵的任务,但对于我来说,要能够查询数据,我需要(至少)将元数据存储在Blockchain中。我对web3库的研究并不多,但我只是知道,使用web3,我们可能只能看到诸如块号、块散列、先前块哈希等细节,而不能看到我的自定义数据,如病人姓名、症状等。使用智能契约查询Blockchain的想法听起来公平吗?如果这可以在成本或吞吐量方面以其他更有效的方式实现,那么有什么指示吗?
发布于 2023-02-08 07:06:26
使用IPFS和区块链存储医疗数据听起来很危险。因为病人的所有数据都可以公开查看。
从技术上讲,您可以使用“写函数”将记录存储在智能契约中,并使用"read函数“从智能契约读取存储的数据。
为了示例。
您不需要为检索数据支付任何费用,但是更新/创建新记录需要气体。希望这能帮上忙。
发布于 2023-02-08 09:09:04
最好不要将个人信息直接存储到任何可查看的公共共享网络。您可以将散列元数据放在上面,但公众仍然可以看到它。
请注意,IPFS并不保证文件始终在那里。因此,您可以存储数据,一旦不再有节点共享数据,数据就会丢失。因此,只有当链接的组织也是IPFS节点并始终保存数据时,数据才会存在。我猜这不是你想要区块链上的数据的原因。
检查其他选项,如陶瓷和灵魂标记。
发布于 2023-02-09 16:19:48
像Opensea这样的NFT市场有单独的数据库,它存储nft数据,并在用户请求数据时从数据库中检索。因此,他们不是在查询区块链,而是查询数据库或使用API (Moralis)。因此,将机密数据上传到分布式存储并获取散列,并将其上传到带有输入值的区块链(患者姓名、症状)。我们不能用输入值搜索区块链。因此,在上传到区块链的同时,同样上传到数据库和数据库查询。而关于灵魂绑定的标记,它很好地应用于医疗领域,如疫苗接种证书,作为不可转让的NFT,但在您的应用中,它没有任何用处。对于存储文件,可以尝试Stroj,它有默认的加密,部分块就足以检索数据。
https://ethereum.stackexchange.com/questions/144504
复制相似问题