Javascript 使用metamask的公钥和私钥在ipfs上使用非对称加密上传文件

Javascript 使用metamask的公钥和私钥在ipfs上使用非对称加密上传文件,javascript,blockchain,ethereum,encryption-asymmetric,metamask,Javascript,Blockchain,Ethereum,Encryption Asymmetric,Metamask,我想在使用用户的元掩码公共地址对文件进行加密后上载文件,然后用户应该能够使用其元掩码私钥对其进行解密。如何实现此功能?元掩码将允许您使用私钥对数据进行签名,但签名与加密不同。主要是因为没有办法解密 而且你肯定无法从Metamask获得私钥 您可以做的最好的事情是使用metamask对用户的地址进行签名。然后,您可以将其用作加密密钥 const address = web3.eth.accounts[0]; const encryptionKey = web3.eth.personal_sign(

我想在使用用户的元掩码公共地址对文件进行加密后上载文件,然后用户应该能够使用其元掩码私钥对其进行解密。如何实现此功能?

元掩码将允许您使用私钥对数据进行签名,但签名与加密不同。主要是因为没有办法解密

而且你肯定无法从Metamask获得私钥

您可以做的最好的事情是使用metamask对用户的地址进行签名。然后,您可以将其用作加密密钥

const address = web3.eth.accounts[0];
const encryptionKey = web3.eth.personal_sign(address, address);

你想让我们为你写代码吗?你试过什么?您可以从以下内容开始: