当前位置: 首页 > 知识库问答 >
问题:

使用java web3j创建钱包,但如何连接到私有运行的区块链?

白侯林
2023-03-14
WalletUtils.generateFullNewWalletFile()
Web3j web3 = Web3j.build(new HttpService());
WalletUtils.loadCredentials()

..我能够获得钱包的公共地址,但当我使用时,geth客户机中没有列出帐户:

web3.ethAccounts().send().getAccounts()

这是怎么合在一起的?

共有1个答案

华良才
2023-03-14

初始化私有区块链时,需要在genesis.json中指定初始以太。

一个简单的例子:

{
    "config": {
        "chainId": 29462
    },
    "difficulty": "0x400",
    "gasLimit": "0x8000000",
    "alloc": {
        "d69cc234de15189f0ba998a41421961e89837fc5": {
            "balance": "30000000000000000000000000000"
        }
    }
}

这里指定的地址需要在初始化genesis块之前创建。您可以使用geth手动创建地址,也可以使用walletutils.generateFullNewWalletFile()创建的地址。这里重要的部分是确保在运行geth命令时使用相同的keystore目录。传入generateFullNewWalletFile()DestinationDirectory都需要通过--keystore选项传入geth

 类似资料:
  • 创建和使用钱包文件 为了离线脱机交易,你需要有你的钱包文件或与私密钱包/账户相关的公共和私人密钥。 web3j能够为你生成一个新的安全的以太坊钱包文件Ethereum wallet file,或者与也可以通过私钥来和现有的钱包文件一起工作。 创建新的钱包文件: String fileName = WalletUtils.generateNewWalletFile( "your pa

  • 1 基本概念 1.1 什么是账户? 一个钱包地址就代表着一个账户。地址是账户的标识。地址表示的是该账户公钥的后20字节(通常会以0x开头,例如,0xed37f755e56b1d49642dce8ff2b788ae33263c94`)。每个账户都由一对钥匙定义,一个私钥(Private Key)和一个公钥(Public Key)。 账户以地址为索引,地址由公钥衍生而来,取公钥的最后20个字节。 1.

  • 我正在遵循使用IDE IntelliJ从java应用程序连接到Oracle云数据库的指南。 我满足先决条件,因为: 我在Oracle云服务中有一个数据库 我下载了钱包,并将文件放在工作区的src目录中。 我使用的是最后一个JDK 14 我正在使用OJDBC8.jar 并且我还下载了oraclepki、osdt_cert和osdt_core JAR,所有这些JAR都作为java库添加到我的测试项目中

  • 我是OracleDB的新手。我正在研究在不提供用户名和密码的情况下将客户端应用程序连接到服务器上的Oracle DB。我的理解是正确的,这可以通过使用钱包来实现吗?我用我的笔记本电脑作为客户端和服务器来测试这一点。 我使用为客户端和服务器端创建钱包,如下所示: 将证书从一侧装入另一侧的钱包。 显示钱包会得到以下结果: 我从上面了解到,服务器和客户端现在相互信任,因此有利于建立连接。 服务器设置文件

  • 需要使用python 3. x版本的cx_oracle模块来连接Oracle 19c和TLS。有防火墙和代理。 如何实施?我必须使用甲骨文钱包吗?2022年TLS 1.2够好还是我需要TLS 1.3?

  • 我有两个由onetomany映射的实体类: 另一个 结果和表格如下: 现在,我正在尝试执行内部联接并获取fileinfo类型的列表: 我得到了这个错误 Struts检测到一个未处理的异常:Messages: org。冬眠hql。antlr。HqlBaseParser。恢复(Lantlr/RecognitionException;Lantlr/collections/impl/BitSet;)V文件