第一篇文章
我想开发一个应用程序来实现与etherjs的交易自动化。
我的问题是关于代码的这一部分:
let walletWithProvider = new ethers.Wallet(privateKey, provider);你们通常在哪里或者怎样存储privateKey,特别是当它不是测试钱包的时候
我的第一个想法是加密密钥并将其本地存储在我的电脑上,然后在程序提示中询问密码,但我想先听听你的想法
发布于 2022-07-25 22:53:26
存储私钥总是很痛苦的,因为您需要用纯文本对事务进行签名。
看看owasp对存储的看法:
存储
严格遵守所有这些准则可能代价很高。因为您只是想使某些事务自动化,所以使用Chainlink服务可能会更有效。例如,链接管理员可以在智能契约中自动生成CRON作业,而无需在从头构建的应用程序中存储和使用私钥。
如果您想在云服务上实现这种自动化,也许使用AWS中的HSM并不理想。我想这是非常昂贵的。您可以使用AWS秘密管理器,但是对于这个特定的用例,它并不理想。
https://ethereum.stackexchange.com/questions/132386
复制相似问题