JAVA 使用web3j接入以太坊(一)

2023-11-10

第一步先创建maven项目,在项目的pom文件依赖中添加web3j

<dependency>
    <groupId>org.web3j</groupId>
	<artifactId>core</artifactId>
	<version>4.2.0</version>
</dependency>

创建钱包

利用org.web3j.crypto.WalletUtils的public static String generateNewWalletFile(String password, File destinationDirectory)方法创建钱包

String wallet = WalletUtils.generateNewWalletFile("123465", new File("D:/"));

generateNewWalletFile 方法 入参

password String 钱包密码
destinationDirectory File 要创建本地钱包文件的目录
useFullScrypt boolean 是否为轻量级钱包true全钱包 false 轻量级钱包

 

创建钱包伪代码:

        //创建钱包
        try {
             String s = WalletUtils.generateNewWalletFile("123465", new File("D:/"));
        } catch (CipherException e) {
            e.printStackTrace();
        } catch (InvalidAlgorithmParameterException e) {
            e.printStackTrace();
        } catch (NoSuchAlgorithmException e) {
            e.printStackTrace();
        } catch (NoSuchProviderException e) {
            e.printStackTrace();
        }

代码执行完后会在文件目录下创建一个json文件这个就是以太坊钱包,仅仅只是本地的文件。如果需要操作钱包的话,则需要通过调用WalletUtils.loadCredentials(String password, File source)来生成一个钱包证书。

钱包证书类org.web3j.crypto.Credentials包括address,ECKeyPair 两个属性,其中address为钱包地址字符串。ECKeyPair对象中包括钱包的公钥privateKey和私钥publicKey两个属性,这两个属性都是BigInteger类型

创建钱包伪代码:

Credentials credentials = WalletUtils.loadCredentials("123456", new File("D:/UTC--2019-09-03T16-31-31.955004500Z--a8d1680c19394f388b9a9bb3e2c4051286ac9554.json"));
            

 

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

JAVA 使用web3j接入以太坊(一) 的相关文章

  • 如何为最终用户方便地启动Java GUI程序

    用户想要从以下位置启动 Java GUI 应用程序Windows 以及一些额外的 JVM 参数 例如 javaw Djava util logging config file logging properties jar MyGUI jar
  • Java中反射是如何实现的?

    Java 7 语言规范很早就指出 本规范没有详细描述反射 我只是想知道 反射在Java中是如何实现的 我不是问它是如何使用的 我知道可能没有我正在寻找的具体答案 但任何信息将不胜感激 我在 Stackoverflow 上发现了这个 关于 C
  • Java - 将节点添加到列表的末尾?

    这是我所拥有的 public class Node Object data Node next Node Object data Node next this data data this next next public Object g
  • 无法展开 RemoteViews - 错误通知

    最近 我收到越来越多的用户收到 RemoteServiceException 错误的报告 我每次给出的堆栈跟踪如下 android app RemoteServiceException Bad notification posted fro
  • Liferay ClassNotFoundException:DLFileEntryImpl

    在我的 6 1 0 Portal 实例上 带有使用 ServiceBuilder 和 DL Api 的 6 1 0 SDK Portlet 这一行 DynamicQuery query DynamicQueryFactoryUtil for
  • 路径中 File.separator 和斜杠之间的区别

    使用有什么区别File separator和一个正常的 在 Java 路径字符串中 与双反斜杠相反 平台独立性似乎不是原因 因为两个版本都可以在 Windows 和 Unix 下运行 public class SlashTest Test
  • 十进制到八进制的转换[重复]

    这个问题在这里已经有答案了 可能的重复 十进制转换错误 https stackoverflow com questions 13142977 decimal conversion error 我正在为一个类编写一个程序 并且在计算如何将八进
  • 从 127.0.0.1 到 2130706433,然后再返回

    使用标准 Java 库 从 IPV4 地址的点分字符串表示形式获取的最快方法是什么 127 0 0 1 到等效的整数表示 2130706433 相应地 反转所述操作的最快方法是什么 从整数开始2130706433到字符串表示形式 127 0
  • Java按日期升序对列表对象进行排序[重复]

    这个问题在这里已经有答案了 我想按一个参数对对象列表进行排序 其日期格式为 YYYY MM DD HH mm 按升序排列 我找不到正确的解决方案 在 python 中使用 lambda 很容易对其进行排序 但在 Java 中我遇到了问题 f
  • 使用Caliper时如何指定命令行?

    我发现 Google 的微型基准测试项目 Caliper 非常有趣 但文档仍然 除了一些示例 完全不存在 我有两种不同的情况 需要影响 JVM Caliper 启动的命令行 我需要设置一些固定 最好在几个固定值之间交替 D 参数 我需要指定
  • Java Integer CompareTo() - 为什么使用比较与减法?

    我发现java lang Integer实施compareTo方法如下 public int compareTo Integer anotherInteger int thisVal this value int anotherVal an
  • 如何在控制器、服务和存储库模式中使用 DTO

    我正在遵循控制器 服务和存储库模式 我只是想知道 DTO 在哪里出现 控制器应该只接收 DTO 吗 我的理解是您不希望外界了解底层域模型 从领域模型到 DTO 的转换应该发生在控制器层还是服务层 在今天使用 Spring MVC 和交互式
  • 仅将 char[] 的一部分复制到 String 中

    我有一个数组 char ch 我的问题如下 如何将 ch 2 到 ch 7 的值合并到字符串中 我想在不循环 char 数组的情况下实现这一点 有什么建议么 感谢您花时间回答我的问题 Use new String value offset
  • Java执行器服务线程池[关闭]

    很难说出这里问的是什么 这个问题是含糊的 模糊的 不完整的 过于宽泛的或修辞性的 无法以目前的形式得到合理的回答 如需帮助澄清此问题以便重新打开 访问帮助中心 help reopen questions 如果我使用 Executor 框架在
  • 如何从指定日期获取上周五的日期? [复制]

    这个问题在这里已经有答案了 如何找出上一个 上一个 星期五 或指定日期的任何其他日期的日期 public getDateOnDay Date date String dayName 我不会给出答案 先自己尝试一下 但是 也许这些提示可以帮助
  • 如何在桌面浏览器上使用 webdriver 移动网络

    我正在使用 selenium webdriver 进行 AUT 被测应用程序 的功能测试自动化 AUT 是响应式网络 我几乎完成了桌面浏览器的不同测试用例 现在 相同的测试用例也适用于移动浏览器 因为可以从移动浏览器访问 AUT 由于它是响
  • 声明的包“”与预期的包不匹配

    我可以编译并运行我的代码 但 VSCode 中始终显示错误 早些时候有一个弹出窗口 我不记得是什么了 我点击了 全局应用 从那以后一直是这样 Output is there but so is the error The declared
  • 获取 JVM 上所有引导类的列表?

    有一种方法叫做findBootstrapClass对于一个类加载器 如果它是引导的 则返回一个类 有没有办法找到类已经加载了 您可以尝试首先通过例如获取引导类加载器呼叫 ClassLoader bootstrapLoader ClassLo
  • 静态变量的线程安全

    class ABC implements Runnable private static int a private static int b public void run 我有一个如上所述的 Java 类 我有这个类的多个线程 在里面r
  • 如何修复 JNLP 应用程序中的“缺少代码库、权限和应用程序名称清单属性”?

    随着最近的 Java 更新 许多人都遇到了缺少 Java Web Start 应用程序的问题Codebase Permissions and Application name体现属性 尽管有资源可以帮助您完成此任务 但我找不到任何资源综合的

随机推荐

  • 如何构建用户画像

    从1991年Tim Berners Lee发明了万维网 World Wide Web 开始 到20年后2011年 互联网真正走向了一个新的里程碑 进入了 大数据时代 经历了12 13两年热炒之后 人们逐渐冷静下来 更加聚焦于如何利用大数据挖
  • vue3的hooks和vue2的mixins有什么区别

    接上一篇文章继续解释 语法和用法 Hooks 是在 Vue 3 的 Composition API 中引入的一种函数式编程的方式 而 Mixins 是在 Vue 2 中的一种对象混入机制 Hooks 使用函数的方式定义和使用 而 Mixin
  • Android9自动更新,详解Android app自动更新总结(已适配9.0)

    1 配置 1 1 AndroidManifest xml中添加权限和FileProvider android name androidx core content FileProvider android authorities com f
  • Oracle 数据库密码文件的使用和维护

    Oracle 数据库密码文件的使用和维护 最近在做dataguard测试时 遇到个关于oracle的密码文件的问题 现在就把有关密码文件做下简单的总结 方便以后应对类似的问题 概要 Oracle 关系数据库系统以其卓越的性能获得了广泛的应用
  • 对话MVP

    本期 对话MVP 清华大学软件学院在读博士马福辰将为大家分享他参与社区共建4年以来的成长与蜕变 在这期间 他冲破迷茫 与团队协力开发了面向Solidity合约的安全分析工具SCStudio 并以开源形式贡献给社区 该工具帮助不少开发者检测安
  • 在R语言中,我们经常使用可视化图像来展示数据的分布、关系和趋势

    在R语言中 我们经常使用可视化图像来展示数据的分布 关系和趋势 图像的标题是非常重要的 它能够提供关键信息并帮助读者理解图像的含义 在R中 我们可以使用cex main参数来指定可视化图像标题文本的字体大小 在本文中 我将详细介绍如何使用c
  • springcloud 总 架构图

    版权所有 转载 请表明出处 相关代码地址 欢迎到我的网站寻找更多的知识
  • img图片加载失败?

    问题场景 在工作中经常会使用 lt img gt 标签进行图片展示 但是经常有图片加载失败的情况发生 图片地址不存在 图片已经删除等 场景再现 图片加载失败时的用户体验是很不好的 虽然 lt img gt 标签有alt属性可以展示文本 但是
  • UE4_UnrealBuildTool : error : UBT ERROR: Failed to produce item

    C 编译报错 可能原因 路径太长 包含中文
  • Flink安装部署{单机模式、会话模式(集群部署)、yarn模式(包含hadoop3.1.3部署)}

    flink部署 前置准备 1 CentOS7 5 2 java8 3 配置三台机器时间同步和免密登陆 关闭防火墙 ip地址 主机名 192 168 10 128 master 192 168 10 129 slave1 192 168 10
  • Qt信号和槽的连接方法

    官方文档 查看手册 可以看出 如果想要把信号和槽函数联系起来 通过connect 方法即可 connect 的参数 sender 产生信号的对象 signal 信号的名字 method 槽函数 示例 UdpReceiver UdpRecei
  • spring中Service类中调用this导致@Transaction使用失效的情况

    发现一个有趣的地方 以前在开发中经常遇到的情况 现象 关于expose proxy的解释 this指向目标对象 因此调用this b 将不会执行b事务切面 即不会执行事务增强 spring Transaction 在refresh过程中 通
  • 常见的标识符

    关键字 abstract assert boolean break byte case catch char class const continue default do double else enum extends final fi
  • java后端向前端发送blob类型、arraybuffer类型数据流

    java后端向前端发送blob类型 arraybuffer类型数据流 项目需求概述 前端请求图片时遇到跨域问题 思考解决方案时 考虑前端请求本地javaweb接口时带上图片url 由后端请求到图片后再发送到前端 后端代码 package c
  • Webpack 和 Vite 的区别

    Webpack 和 Vite 都是前端构建工具 但它们在设计哲学和执行方式上有所不同 以下是两者之间的主要区别 基本原理 Webpack 它是一个模块打包工具 它的主要目标是打包 JavaScript 模块 为了处理 ES modules
  • Linux下多线程编程互斥锁和条件变量的简单使用

    Linux下的多线程遵循POSIX线程接口 称为pthread 编写Linux下的多线程程序 需要使用头文件pthread h 链接时需要使用库libpthread a 线程是进程的一个实体 是CPU调度和分派的基本单位 它是比进程更小的能
  • 自己写一个简单的弹窗页面

    最终效果 我使用的vue的js做绑定处理 虽然现在各种 弹窗插件到处都是 但是本着造轮子的本心还是写了一点 这段内容是17年的时候写的 时间跨度稍微有点大 表在意了 基本思路 1 为需要添加遮罩的页面添加一个组件 这个组件绑定在isShow
  • angular2系列教程(六)两种pipe:函数式编程与面向对象编程

    今天 我们要讲的是angualr2的pipe这个知识点 例子 这个例子包含两个pipe 一个是stateful 一个是stateless 是直接复制官方的例子 最新的官网文档已经将其改为了pure和impure 并移除了面向对象的比喻 个人
  • 基于SSM实现校园互助论坛平台

    作者简介 Java 前端 Python开发多年 做过高程 项目经理 架构师 主要内容 Java项目开发 Python项目开发 大学数据和AI项目开发 单片机项目设计 面试技术整理 最新技术分享 收藏点赞不迷路 关注作者有好处 文末获得源码
  • JAVA 使用web3j接入以太坊(一)

    第一步先创建maven项目 在项目的pom文件依赖中添加web3j