区块链钱包相关
wypeng2010
这个作者很懒,什么都没留下…
展开
-
什么是区块链
2008年中本聪在互联网上一个讨论信息加密的邮件组中发表了一篇文章,勾画了比特币系统的基本框架原创 2018-07-09 19:31:37 · 542 阅读 · 0 评论 -
区块链开发之BTC离线签名
引言btc的账户系统是基于utxo模式的(utxo具体解释,大家可以自行搜索),如何获取utxo列表,可以看我前篇文章:区块链开发之获取BTC,ETH的余额,BTC的UTXO列表,ETH的nonce获取到的数据格式大致如下[ { "address":"mo9ncXisMeAoXwqcV5EWuyncbmCcQN4rVs", "txid":"d5f8a96faccf7...原创 2018-08-02 13:32:14 · 5945 阅读 · 13 评论 -
区块链开发之计算BTC的fee小费
引言btc的fee也是要经过计算得出的,而不是随便给的,它的计价方式是按照每笔交易的字节数收的,所以要先计算出你这比交易的fee,必须先计算出这笔交易可能的字节数,计算公式如下: 148 x inputNum + 34 x outputNum + 10算出字节数后,再乘以rate(Satoshi/byte),rate可以网上找接口获取 提示:所以为了转账少花手续费,最好把...原创 2018-08-02 14:00:03 · 2582 阅读 · 0 评论 -
获取ETH指定代币的余额
引言之前的文章介绍了获取eth余额的方法和离线签名的方法(指定代币的离线签名),今天就来介绍一下如何获取满足ERC20协议的代币余额的。要想获取代币的余额,要通过rpc接口得到接口为:eth_call参数1.object字段:from: 钱包地址to: 代币地址(智能合约地址)data:0x70a08231000000000000000000000000b60e8dd61...原创 2018-08-02 16:23:40 · 12361 阅读 · 10 评论 -
区块链开发之BTC消息签名和消息验证
BTC的消息签名机制,是使用私钥对一段信息签名,然后使用公钥对此签名做校验,次机制可以作为验证消息真伪的手段,这里使用bitcoinj库实现的 implementation ‘org.bitcoinj:bitcoinj-core:0.14.7’对消息进行签名 /** * @param msg 要签名的信息 * @param privateKey 私钥...原创 2018-08-03 13:42:59 · 4386 阅读 · 5 评论 -
Bip44确定性算法的android实现
title: Bip44确定性算法的android实现date: 2018-12-06 11:24:17tags:Android开发Android开源库categories: Android开源库简介这是一个Bip44确定性算法的Android实现库,可以生成12个助记词,seed种子和根据path路径生成路径的私钥.对Bip44确定算法不了解的可以看我之前的一篇文章:...原创 2018-12-06 11:57:35 · 1170 阅读 · 1 评论 -
一个针对Android的轻量级的ETH库
简介:这是一个轻量级的eth库,支持eth的私钥,公钥,地址的生成,和eth及其智能合约的转账离线签名操作项目地址:https://github.com/wypeng2012/ETHForAndroid欢迎starsupport Android sdk >= 14- 如何使用先添加bip44forandroidlibrary的依赖implementation ‘p...原创 2018-12-06 14:32:46 · 592 阅读 · 0 评论 -
Bip44确定性算法的Java实现库(Android和java平台都可以使用)
简介这是一个Bip44确定性算法的Java实现库(Android和java平台,都可以使用),可以生成12个助记词,seed种子和根据path路径生成路径的私钥.对Bip44确定算法不了解的可以看我之前的一篇文章:区块链开发之确定性算法bip32,bip39,bip44项目地址:https://github.com/wypeng2012/Bip44ForJava欢迎star- ...原创 2018-12-13 11:10:12 · 3171 阅读 · 1 评论 -
一个轻量级的Java实现的ETH库
简介:这是一个轻量级的eth库,支持eth的私钥,公钥,地址的生成,和eth及其智能合约的转账离线签名操作项目地址:https://github.com/wypeng2012/ETHLiteForJava欢迎star- 如何使用first add Bip44ForJava dependenciesimplementation ‘party.52it:Bip44ForJava:...原创 2018-12-13 11:30:11 · 1942 阅读 · 0 评论 -
一个EOS的Android端实现库
简介:这是一个EOS的Android端实现,本库可以创建EOS的公私钥,查询余额,交易,投票,EOS的account绑定,离线签名等,几乎所有EOS的操作。项目地址:https://github.com/wypeng2012/EOSForAndroid欢迎starsupport Android sdk >= 14- 如何使用先添加bip44forandroidlibr...原创 2018-12-06 15:10:54 · 1071 阅读 · 2 评论 -
一个EOS的Java实现(Android平台也可使用)
简介:这是一个EOS的Java端实现,本库可以创建EOS的公私钥,查询余额,交易,投票,EOS的account绑定,离线签名等,几乎所有EOS的操作。项目地址:https://github.com/wypeng2012/EOSForJava欢迎star- Use it首先添加 Bip44ForJava 依赖implementation ‘party.52it:Bip44Fo...原创 2018-12-20 10:43:37 · 3022 阅读 · 5 评论 -
区块链开发之获取BTC,ETH的余额,BTC的UTXO列表,ETH的nonce
获取eth的余额先来说说eth的余额获取,这个是很简单的,直接通过节点的rpc接口,就可以获取到,具体使用到的RPC接口为:eth_getBalance参数:1.要查询钱包地址 2.查询不同状态的余额”latest”(已经确认了的), “earliest”(创世区块的) , “pending”(包含未确认的交易的余额)params: [ '0xc94770007dd...原创 2018-08-02 11:25:12 · 13916 阅读 · 0 评论 -
区块链开发之验证ETH地址的有效性
引言之前介绍了eth私钥公钥地址的生成,接下来介绍一下eth地址有效性的校验,要做地址有效性的校验,首先要知道他的地址规则: eth的地址,就是把公钥用sha256hash之后,取其后160位生成的16进制字符串(40个字符)再加上前缀“0x”(总共42位)校验流程第一步,先判断地址非空和是否0x开头第二步,把16进制字符串转成10进制数,看是否能否转换成功第三部...原创 2018-08-01 10:18:10 · 9461 阅读 · 5 评论 -
区块链大数计算之java的BigDecimal类使用解析
之前讲解了BigInteger类的使用,这个类是做大整数运算的,想做大的浮点数运算就不行了,所以就需要其它的类来解决浮点运算的问题,这个类就是BigDecimal。BigDecimal介绍不可变的、任意精度的有符号十进制数。BigDecimal 由任意精度的整数非标度值 和 32 位的整数标度 (scale) 组成。如果为零或正数,则标度是小数点后的位数。如果为负数,则将该数的非标度值...原创 2018-07-24 14:20:01 · 354 阅读 · 0 评论 -
区块链开发比特币btc单位转换关系
今天来说一下比特币BTC的单位之间的转换关系,比特币有5种计价单位,btc,cbtc,mbtc,ubtc/μbtc,satoshi,其中satoshi是最小的单位,也是一笔交易中真正使用到的计价单位、之间的转化关系如下: 1比特币(Bitcoins,BTC) 0.01比特分(Bitcent,cBTC) 0.001毫比特(Milli-Bitcoins,mBTC) ...原创 2018-07-19 14:47:07 · 4318 阅读 · 1 评论 -
区块链开发以太坊ETH单位转换关系
以太坊中的计价单位要比比特币的多一些,并且数值上也要大很多,超过了64位的无符号long的最大值,他们计价单位一共有,wei,kwei,mwei,gwei,szabo,finney,ether,kether,mether,gether这10种计价单位,他们之间的转换关系如下: 1kwei = 10^3wei(10的 3次幂) 1mwei = 10^6wei(10的 6次幂) ...原创 2018-07-19 14:47:39 · 14033 阅读 · 0 评论 -
区块链大数计算之java的BigInteger类使用解析
引言区块链里面用的最多的就是计算,并且还是很大的数的计算。大家都知道java里面基本类型里面就long类型可以表示一个64位的大数字,其数值范围为: long的最大值:9223372036854775807 long的最小值:-9223372036854775808这个数,看起来很大了,但是对于区块链来说完全是不够的,大家可以看一下我之前的一篇文章:区块链开发以太坊ET...原创 2018-07-19 19:43:57 · 627 阅读 · 0 评论 -
区块链开发之eth转账所需的gas,gasprice,gaslimit介绍
要了结以太坊的转账方式,首先要了解一下几个概念问题,那就是什么是gas,什么是gasprice,什么是gaslimit。gasgas是以太坊交易中所花费的记账方式,在以太坊中,你要转账,部署智能合约,调用智能合约方法,都要消耗一定数量的gasgasprice之前说了gas,但是最终真正花的还是eth,所以就有一个转换率的问题,就像现实中的不同发币之间的汇率一样,gaspri...原创 2018-07-19 20:03:19 · 9626 阅读 · 0 评论 -
区块链开发之确定性算法bip32,bip39,bip44
引言随着比特币区块链的发展,人们已经不满足于,只有一个账号的情况,有些人会有好几个账户,但是这就出现一个问题,我有几个账号,就要保存几个私钥,这就特别麻烦和不友好,所以,就出现了bip32确定性算法,该算法可以让你只有同一个种子,就可以生成无数个私钥和地址,这就大大方便了用户的使用。但是这个种子,也不较长,用户使用起来也比较繁琐,这就出现了bip39,它是使用助记词的方式,生成种子的,这样用户...原创 2018-07-30 18:27:13 · 4393 阅读 · 0 评论 -
区块链开发之生成12个助记词
这里使用bitcoinj库,来实现生成bip39的12个助记词,引用库 implementation ‘org.bitcoinj:bitcoinj-core:0.14.7’填坑1如果你直接引用库之后,直接安装运行apk,会造成app崩溃,这是因为这个库里面有一个libscrypt.dylib,这个库是针对x86_64平台的,并且没有其他平台的这个库,所以在arm cpu平台的...原创 2018-07-30 19:15:35 · 17416 阅读 · 7 评论 -
区块链开发之确定性算法生成BTC,ETH的私钥,公钥和地址
引言首先要生成12个助记词,请看我上篇文章:区块链开发之生成12个助记词使用的库 implementation ‘org.bitcoinj:bitcoinj-core:0.14.7’ implementation ‘org.web3j:core:3.3.1-android’具体代码如下public static ShellWallet generateWal...原创 2018-07-30 19:35:04 · 9418 阅读 · 3 评论 -
区块链开发之验证BTC地址的有效性
引言之前介绍了btc私钥公钥地址的生成,接下来介绍一下btc地址有效性的校验,要做地址有效性的校验,首先要知道他的地址生成规则:第一步,随机选取一个32字节的数、大小介于1 ~ 0xFFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFE BAAE DCE6 AF48 A03B BFD2 5E8C D036 4141之间,作为私钥。 18E14A7B6A307F42...原创 2018-08-01 10:17:31 · 9462 阅读 · 1 评论 -
生成bitcoin不同格式地址(1开头,3开头,bc1开头)的方式
前言:想了解他们的不同,可以看这边文章:以1, 3, bc1 开头的比特币地址的区别我这里只说代码的实现1.首先引入bitcoinj最新的库compile 'org.bitcoinj:bitcoinj-core:0.15'2.按照我之前的文章获取到btc私钥,链接:https://blog.csdn.net/wypeng2010/article/details/8129...原创 2019-04-16 14:37:18 · 17397 阅读 · 10 评论