首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >web3j中凭据的钱包路径是什么?

web3j中凭据的钱包路径是什么?
EN

Stack Overflow用户
提问于 2017-05-30 18:07:26
回答 4查看 2.5K关注 0票数 3

我正在使用自述文件指南https://github.com/web3j/web3j

我感兴趣的是开发从我的主机与Java + Web3j到运行在我的虚拟机上的专用以太网络的智能合约。

有这样的几行:

代码语言:javascript
运行
复制
Web3j web3 = Web3j.build(new HttpService());  // defaults to http://localhost:8545/
Credentials credentials = WalletUtils.loadCredentials("password", "/path/to/walletfile");

所以问题是:

我应该如何创建这个钱包?我是否应该在虚拟机上生成帐户,然后将wallet.json文件复制到主机?

EN

回答 4

Stack Overflow用户

发布于 2017-12-08 03:48:32

WalletUtils.loadCredentials可能有错误,我建议您提前创建帐户,然后您可以提取私钥并使用

代码语言:javascript
运行
复制
Credentials.create(privateKey)

您可以使用keystore文件并使用myetherwallet来查看您的私钥。

票数 2
EN

Stack Overflow用户

发布于 2018-09-24 15:06:48

我不推荐使用WalletUtils.loadCredentials(),因为它可能有很多buggy。

我推荐你:

1.事先创建帐户,例如在myetherwallet中或使用web3j时使用:web3j wallet create

2.提取私钥或密码和walletfile。

3.使用Credentials.create()

备选方案1:

如果您有密码和walletfile,您可以使用:

代码语言:javascript
运行
复制
Credentials credentials = Credentials.create(Wallet.decrypt(password, walletFile));

备选方案2:

如果您有EcKeyPair,您可以使用:

代码语言:javascript
运行
复制
Credentials credentials = Credentials.create(getEcKeyPair());

备选方案3:

如果您有privateKey,您可以使用:

代码语言:javascript
运行
复制
Credentials credentials = Credentials.create(privateKey);
票数 2
EN

Stack Overflow用户

发布于 2018-02-07 22:51:51

代码语言:javascript
运行
复制
val k = ECKeyPair.create(BigInteger(credentialsOne.ecKeyPair.privateKey.toString()))
            val test = Credentials.create(k)

像传递纯文本一样传递私钥可以给你一些奇怪的结果,在ECKeyPair中传递他,然后你就可以访问你的公钥和地址了。我正在和kotlin一起在android上开发,我没有任何麻烦

钱包路径是保存json的位置,每次想要获取密钥时,都必须输入相同的路径和密码。

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

https://stackoverflow.com/questions/44259294

复制
相关文章

相似问题

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