首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在web3js上存储签名事务的私钥的最佳方法是什么?

在web3js上存储签名事务的私钥的最佳方法是什么?
EN

Ethereum用户
提问于 2023-01-28 18:02:11
回答 1查看 67关注 0票数 0

因此,我有一个web3js脚本(Bot),类似于这样的内容:

代码语言:javascript
复制
let walletAddress = ""
let pvtKey = ""

signed = await web3.eth.accounts.signTransaction(txObject, pvtKey);

没有纯文本私钥的最佳做法是什么?我可以从一个文件中读取它,但是如果攻击者可以提升他的权限,他也可以从文件中读取它。

使用webjs加密/解密功能都没有帮助,因为在本例中,我会在脚本中显示密码(假设攻击者能够提升权限),所以我只是推迟了问题。

如果他能读到我的剧本的话,我想从天蓝色或aws的金库里读东西也是一样的。

什么是最好的方法来做到这一点,而不需要一个硬件钱包(因为这是一个机器人,不断张贴交易)。

EN

回答 1

Ethereum用户

发布于 2023-01-28 18:58:21

你应该使用dotenv软件包。

然后创建一个.env文件,并将所有这些重要的键放在那里。例如,.env文件应该如下所示:

代码语言:javascript
复制
PRIVATE_KEY=okdoqkdoqdefleifhelkslksnhlfksefkl

您希望使用该密钥的文件必须按如下方式访问:

代码语言:javascript
复制
require('dotenv').config() //This configures the usage of the file.

现在,您可以在该文件中将其用作:

代码语言:javascript
复制
signed = await web3.eth.accounts.signTransaction(txObject, process.env.PRIVATE_KEY);

同样,您也可以存储其他密钥并访问它们。

重要事项:将.env文件包含在.gitignore中,否则如果发布,将使密钥易受攻击。

票数 1
EN
页面原文内容由Ethereum提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://ethereum.stackexchange.com/questions/143855

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档