(一)区块链钱包之生成助记词
(一)区块链钱包之生成助记词
(二)区块链钱包之创建钱包地址
(三)区块链钱包之加密算法简介
(四)区块链钱包之创建比特离线交易(BTC交易)
(五)区块链钱包之创建以太坊交易(ETH交易)
- 助记词
明文私钥的另一种表现形式,最早是由 BIP39 提案提出,其目的是为了帮助用户记忆复杂的私钥 ( 64 位的哈希值)。助记词一般由12、15、18、21个单词构成,这些单词都取自一个固定词库(2048个),其生成顺序也是按照一定算法而来,所以用户没必要担心随便输入 12 个单词就会生成一个地址。
- 生成过程
生成一个128位随机数,再加上对随机数做的校验4位,得到132位的一个数,然后按每11位做切分,这样就有了12个二进制数,然后用每个数去查BIP39定义的单词表,这样就得到12个助记词(当然不一定都是12位)。
- 上代码
导入Gradle依赖
api group: 'org.bitcoinj', name: 'bitcoinj-core', version: '0.15.10'
public static List<String> getMnemonicKeyWords() {try {List<String> strings;HashSet<String> hashSet = new HashSet<>();do {MnemonicCode mnemonicCode = new MnemonicCode();byte[] bytes = new byte[16];SecureRandom random = new SecureRandom();random.nextBytes(bytes);strings = mnemonicCode.toMnemonic(bytes);hashSet.clear();hashSet.addAll(strings);} while (hashSet.size() != 12);return strings;} catch (Exception e) {e.printStackTrace();}return null;}
byte数组length必须是4的倍数,它决定助记词个数
byte lenth | 助记词个数 |
---|---|
16 | 12 |
20 | 15 |
24 | 18 |
28 | 21 |
32 | 25 |
注意:生成的助记词中可能有重复的,所有为了安全最好去重。
希望我的分享能帮助到大家
(一)区块链钱包之生成助记词相关推荐
- 基于Java的Android区块链开发之生成助记词(位数可选)
基于Java的Android区块链开发之生成助记词 位数可选 具体实现代码 这里使用bitcoinj库,来实现生成bip39的12个助记词,引用库 implementation 'org.bitcoi ...
- 私钥,公钥,钱包地址,助记词,keyStore的区别
私钥,公钥,钱包地址,助记词,keyStore的区别 私钥:本质上是一个包含64位的随机数,是随机生成的 公钥:公钥是由私钥经过加密算法后生成的,拥有私钥,可以算出公钥,拥有公钥却不能算出私钥 钱包地 ...
- 比特币钱包(4) BIP39 助记词
1. 定义生成助记词 助记词句子(mnemonic word sequence)作为密码,使用若干个助记词来替换之前直接生成随机数的方式(确定性钱包的种子随机数). 1.1. 生成步骤 1) . 生成 ...
- imToken—钱包如何导出助记词?
imToken钱包tokenw.me 是现在很受投资者欢迎的一款轻钱包,该钱包不仅使用非常方便,并且还十分的安全.不管是从下载安装角度,还是去中心化的角度,亦或是使用的角度上来说,该钱包都是安全的.i ...
- Android(以太坊)生成助记词
Android(以太坊)生成助记词 之前都是看别人的文章,很少自己写,有时即使是自己摸索出的解决方案(无法直接搜到)的也没有记录下来, 说白了其实就是懒. 先从小的写起,一点一点把还没忘记的记录一下吧 ...
- java助记词反向_GitHub - gangan1345/mnemonic-sdk: Mnemonic bip39 bip32 bip44 生成助记词 私钥...
mnemonic-sdk Mnemonic bip39 bip32 bip44 支持 BIP39 助记词 支持 BIP32 子私钥 支持 BIP44 多币种管理 Install Gradle: Add ...
- bip39:使用bip39生成助记词
助记词 从HD钱包的创建方式可知,要创建一个HD钱包,我们必须首先有一个确定的512bit(64字节)的随机数种子. 如果用电脑生成一个64字节的随机数作为种子当然是可以的,但是恐怕谁也记不住. 如果 ...
- vue+vite项目当中:介绍一种生成助记词新方法,兼容以太坊
在上一篇文章 当中我介绍了使用bip39生成助记词,在vue3不同的框架vite.vue-cli当中引入配置的方法.虽然可以生成助记词但是,需要进行大量的配置,尤其是在vite+ES6+vue3项目当 ...
- PHP生成助记词和BTC、ETH、LTC地址
本文作者:陈进坚 个人博客:https://jian1098.github.io CSDN博客:https://blog.csdn.net/c_jian 简书:https://www.jianshu. ...
最新文章
- php多浏览器支持,测试网站在多个浏览器中的兼容性:MultiBrowser ┆V1.3.1 多国语言版...
- DVS/DVR常见的监控名词
- Mono新突破:CentOS 7.2下安装Mono 5.0
- bash/shell编程学习(2)
- 【CSWS2014 Summer School】大数据下的游戏营销模式革新-邓大付
- [译] 搜索结果页的最佳实践
- qchart 坐标轴设置_「Qt」利用QChart实现实时动态的曲线数据展示
- 地震数据爬取——Scrapy爬虫框架应用
- tabbar图标大小更改
- 金蝶KIS旗舰版新建,恢复帐套时提示:ActiveX部件不能创建对象
- 虚拟现实大作业——太阳系
- 平台交叉打包 GYP
- java xml 查询_java对xml进行查询操作代码
- 玩qq游戏提示计算机内存不足,Win8系统下玩lol提示关闭程序以防止信息丢失内存不足怎么办...
- 英文字体设计标志需要注意什么?
- daimayuan每日一题#849 国家铁路
- WORD公式居中、题注插入、交叉引用
- [转]中国将建口径8米巨型太阳望远镜
- C语言——用函数方法判断闰年
- 【华为报考全攻略】华为考试自己如何报考?