比特币钱包(数字钱包)都有哪些类型?
http://bjiebtc.com/bitebi-qianbao-leixing/
如何创建以太坊账户
https://www.jianshu.com/p/15b0e81a674d
https://www.jianshu.com/p/202f11b43cd3
以太坊源码分析:地址如何生成的?
http://baijiahao.baidu.com/s?id=1597007700502456856&wfr=spider&for=pc
我们看到以太坊使用私钥通过 ECDSA算法推导出公钥,继而经过 Keccak-256 单向散列函数推导出地址。
至此,以太坊地址的生成过程,可以总结为下面 3 个步骤:
1. 创建随机私钥 (64 位 16 进制字符 / 32 字节)
2. 从私钥推导出公钥 (128 位 16 进制字符 / 64 字节)
3. 从公钥推导出地址 (40 位 16 进制字符 / 20 字节)
这是一件很奇妙的事情,这几行代码承载着亿万级别的资产,至简至美。以上的几行代码已经囊括密码学中大多数技术,比如随机数生成器、非对称加密,单向散列函数等。
多重签名(Multisig)技术在比特币交易中的应用 - 钱包存储
千里之堤毁于蚁穴(慎用HD Wallets)
http://www.wanbizu.com/jingyan/201411123389.html
https://www.jianshu.com/p/099b520ba7a8
iOS 以太坊钱包 Trust源码解析
以太坊地址生成
https://www.jianshu.com/p/202f11b43cd3
289c2857d459
8e37fb964750
7e47a309d613
3539bf21a8b9
cb6df88fd523
2032
64
ac902cd1
0d581341
9bbfc56a
87d0d855
b72b9a9a
921e2cd1
84bd9624
0f43fa45
precondition
地址的生成的流程是:私钥 -> 公钥 -> 地址。因此地址的生成需要三步:
1、生成一个随机的私钥(32字节)
2、通过私钥生成公钥(64字节)
3、通过公钥得到地址(20字节)
私钥的生成
私钥是一组64位的16进制字符,通过私钥我们能够访问一个账户。以太坊的私钥生成是通过secp256k1^5曲线生成的,secp256k1是一个椭圆曲线算法,比特币使用的也是相同的曲线算法。
地址的生成
地址是通过对上述的公钥做Keccak-256哈希^7,然后取最后的40位16进制字符得到的。我们对上述的公钥做哈希后并取后40位的结果是:0x24602722816b6cad0e143ce9fabf31f6026ec622。得到的该结果就是一个有效的以太坊地址。
以太坊系列之三: 以太坊的crypto模块--以太坊源码学习
https://www.cnblogs.com/baizx/p/6936258.html
//签名
var testPrivHex = "289c2857d4598e37fb9647507e47a309d6133539bf21a8b9cb6df88fd5232032"
//1.获取私钥
key, _ := crypto.HexToECDSA(testPrivHex)
//2.对message进行hash
msg := crypto.Keccak256([]byte("foo"))
//3.对hash进行签名,注意签名对象只能是hash,并且长度真是32个字节的hash
sig, err := crypto.Sign(msg, key)
//sig:d155e94305af7e07dd8c32873e5c03cb95c9e05960ef85be9c07f671da58c73718c19adc397a211aa9e87e519e2038c5a3b658618db335f74f800b8e0cfeef4401
//签名结果长度和公钥长度相同
关于区块链钱包的基础密码学 (1)
http://www.qukuaiwang.com.cn/news/3479.html
这是以太坊黄皮书关于钱包(私钥、公钥、地址)的描述,仅仅 2 行文字。主要讲解私钥通过 ECDSA(椭圆曲线签名算法)推导出公钥,继而经过 Keccak 单向散列函数推导出地址。
为了形象的表现椭圆曲线算法如何将私钥推导出公钥,我们将使用简单的整数作为私钥 k,找到公钥 K = k * G,也就是 G 相加 k 次(数学原理一致)。在椭圆曲线中, 点的相加等同于从该点画切线找到与曲线相交的另⼀点, 然后映射到 x 轴。下图展示了从曲线上获得 G、2G、4G、8G 的几何操作。
学习以太坊Dapp开发
http://www.code4app.com/blog-948191-3477.html
5. 比特币钱包
a. 比特币钱包的生成
- 256bits SECP256K1SECP256K1SHA256RIPEMD160Hashpubkey“0”SHA2564BASE58()
转账
Transaction
- “”“”“”“”2“”“”
区块链学堂(5):Geth 安装
https://blog.csdn.net/ethchinese/article/details/62220817
Geth Go Ethereum. Go
Showing Recent Errors Only
ld: library not found for -lrealmcore-ios
Showing Recent Errors Only
ld: library not found for -lrealmcore-ios
分层确定性钱包(HD Wallets)
https://www.jianshu.com/p/53405db83c16
- “”“”“”“”2“”“”