数字货币投资⼊入⻔门

之

钱包原理理及钱包安全
ULORD 上海海社区
AGENDA
• 什什么是⽐比特币,什什么是ULORD
• ⽐比特币的三⼤大⽀支柱,以及⼀一些误解
• 钱包初步:ULORD 钱包下载/使⽤用和备份
• 钱包进阶:钱包原理理,分类和钱包安全
• 预备知识:散列列函数和双密钥体系
• 钱包/开户,存取,消费
• 私钥,公钥,地址,签名,…
• 钱包安全总结
什什么是⽐比特币
核⼼心理理念:建⽴立⼀一个不不需要⾦金金融机构的体系。
“传统货币的根源问题是它完全依赖⼈与⼈之间强⼤的信任才可正常运 作。⼈们需要
信任央⾏不会让货币贬值,但法定货币的历史遍布了多次 违反此信任的案例。⼈们需
要信任银⾏会保存我们的钱财,做电⼦转帐, 但他们以信贷泡沫的⽅式将钱财⼤量放
贷,仅保留⼀⼩部分作为储备。 我们不得不信任他们会保护我们的隐私,信任他们不
会让⾝份窃贼将 我们的账户⼀扫⽽空。其庞⼤的管理费⽤使⼩额⽀付完全⾏不通”
– 中本聪

http://p2pfoundation.ning.com/forum/topics/bitcoin-open-source?xg_source=activity&id=2003008%3AT opic%3A9402&page=1
数字货币的繁荣
• ⽬目前可交易易的数字货币近3000种
• 区块链技术已经⾛走出货币领域,开始在各⾏行行各业⼤大展拳脚
• 代表性的币种:BTC/LTC/BCH,ETH/EOS,FILECOIN/IPFS, ULORD
• ULORD: 突破计算瓶颈,突破存储限制
• 基于区块链技术的价值传播⽹网络
• 价值信息上链,实现数字内容资产化管理理
• 致⼒力力于为企业级⽤用户提供友好的 API 接⼝口和完整的 P2P 数据服务,构建⼀一个内容共享的基础⽹网
络环境和服务环境。
⽐比特币的三⼤大⽀支柱
固定货币基数
• 2100万⽐比特币,固定
通胀率(每10 分钟),
直到2140年年
• 可算⾄至8
个⼩小数
点,即
⼀一个聪
不不可篡改的账簿
• ⽇日志从第⼀一天起保存
所有交 易易的完整历史
• 百分百透明
• 可动⽤用资⾦金金能轻易易核
实

仅您能控制资⾦金金
• ⽐比特币
所有交
易易均为
所有权和转账
• ⽐比特币
是⼀一个
代码库。
没有
CEO,
对数字货币的⼀一些误解
• “虚拟”货币,没有实际价值
• 所有法币都是虚拟的,建议不不再称呼为虚拟货币,称为数字货币或加密货币
• 挖矿导致资源浪费,成本⾼高昂
• ⻩黄⾦金金/⽩白银开采,提炼,运输,保存成本更更⾼高,法币的体系维护成本⾼高得多
• 没有政府背书,缺乏信⽤用
• 漫漫历史⻓长河中,只有很短的时间由政府发⾏行行货币,⼈人⺠民有选择货币的权利利
• 确认时间过⻓长,难以成为⽇日常使⽤用
• 对标各⼤大银⾏行行的清算系统,数字货币系统的确认要快得多
• ⽐比特币不不透明,不不受监管
• ⽐比特币的每⼀一笔交易易都可查,每⼀一个地址都透明,极易易跟踪
• ⽤用于⻩黄赌毒,⽀支持恐怖组织?
• 美国财政部曾表示: ⽐比特币并未在任何可观的程度上被⽤用于资助恐怖主义
• 新技术总是⾸首先适⽤用于特殊场合,想想 概率和统计理理论,加密体系,HTTPS协议,甚⾄至 QQ, FACEBOOK, …
拥有⽐比特币/ULORD – 开户?
• 交易易所账号算吗?
• NO,你交易易所的账号并不不是你真正拥有的的数字货币账号
• 你在交易易所的资产并没有上链,有诸多⻛风险:⿊黑客,交易易所软件故障,破产跑路路,…
• 你需要拥有⾃自⼰己的账号
• 但没有银⾏行行等中介机构为你服务
• 不不需要任何⼈人,⾃自⼰己动⼿手
钱包初步:ULORD钱包创建
• 钱包下载地址:HTTP://WWW.ULORD.ONE/DOWNLOAD.HTML
钱包初步:ULORD钱包使⽤用
• 查询/转账/收款/备份/删除/…
钱包进阶 – 预备知识:摘要/散列列函数
• SHA256: 哈希/散列列/杂凑
• 对任何⻓长度的报⽂文(就是你要加密的信息), 计算出来都是⼀一个32 BYTE的结果, 称之为摘要
• 可看成数据指纹,内容相同,指纹相同;内容不不同,指纹不不同,可以代表数据的唯⼀一性
• 不不可逆:正向运算简单,逆向运算⼏几乎不不可能
• ⽤用处:
• 提取数据指纹
• ⽤用于验证数据的完整性和正确性
• ⽤用于数据签名
校验码 - 哈希(摘要)的⼀一种⽅方式
• ⼀一个简单的例例⼦子
• 求和
• 取最后⼀一个数字
• ⼀一起送出
7
7
3
4
2
5
9
0
0
6
43
• 数字货币⼀一般采⽤用SHA256
• 对数据计算出⼀一个256位的哈希值
• 取⼀一部分或全部
• 与数据放在⼀一起,送出(相当于签名或盖章)
• 例例⼦子:
• ⽐比特币地址
• 助记词
• 交易易 …
钱包进阶 - 预备知识:⾮非对称密码体系
• ⼜又称双密钥体系:⼀一对孪⽣生密钥,互为加解密关系
• 重要概念:签名(在⽐比特币交易易中,签名意味着确认交易易)
先看对称密钥
• 使⽤用相同的密钥进⾏行行加解密
• 问题:密钥传递的安全性
Key
Unencrypted data Encrypted data
Key
Unencrypted data Encrypted data
双密钥体系
• 必须有⼀一对密钥,成对产⽣生
• 他们都是⾮非常⼤大的数,难以破解 Key 1 Key 2
Unencrypted data
双密钥 – 互为加解密
• KEY1 加密, KEY2解密
• KEY2加密, KEY1解密
Key 1 Key 2
Unencrypted data Encrypted data
Key 1 Key 2
Unencrypted data Encrypted data
Key 1 Key 2
Encrypted data Unencrypted data
Key 1 Key 2
Encrypted Unencrypted
⾮非对称密钥通信
• 公钥公之于众,⼈人⼈人可⽤用来给我发送加密数据,防泄密
• 私钥⾃自⼰己保存(绝不不能公开),⽤用于签名,证明是我发送的数据,防伪造
• ⼀一般先做摘要,再加密(签名)
⽐比特币/ULORD 账号 – 地址
• ⼀一个例例⼦子:3AVWDHFN87JHGVR624XY92HVAJN7YVSHIZ (BTC)
• UJKZT4UMCXP12X2QEE3AF9CMLGZSEAQ6E8 (ULORD)
• 怎么来的:
• 由私钥推导出公钥,由公钥运算出地址
• 可⻅见:
• 有了了私钥,就有了了⼀一切控制权
• 区块链的世界⾥里里,账号和密码不不是分离的
花费⽐比特币
• 类似于签⼀一个⽀支票
• 交易易内容 + 签名 = ⽣生效
• 私钥⽤用于签名
• 矿⼯工利利⽤用公钥进⾏行行验证
如何⽣生成 私钥
• 私钥就是⼀一个256位(32个字节)的数
• ⼏几乎所有32字节的数都可以作为私钥
• “⼏几乎”是因为有⼀一个范围:1 到 0XFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFFEBAAEDCE6AF48A03BBFD25E8CD0364141
• ⼏几个问题:
• 真的在这个范围内的任何32字节数都可以吗?
• 那会不不会我的私钥跟别⼈人的相同呢?那样我的钱岂不不是被⼈人可以划⾛走了了。
• 怎么能做到⾃自⼰己的私钥跟别⼈人不不⼀一样?
• 随机⽣生成私钥多难记啊?有没有更更好的办法呢?
• 私钥就是⼀一切,遗失私钥,意味着遗失数字资产
私钥安全
• 做到三点:
1. ⾃自⼰己不不丢失/忘记
2. 别⼈人看不不到
3. 别⼈人猜不不到
钱包的作⽤用
1. 随机产⽣生(⾜足够强度的)私钥 (往往是⼀一批)
2. 根据私钥运算出公钥及地址
3. 同步区块链头部信息,查询区块链确知账户余额
• 注意:你的币不不在钱包⾥里里,⽽而是记录在链上,钱包需要同步和查询得到信息
4. 提供地址⽤用于接受数字货币
5. 为发送数字货币(交易易)进⾏行行签名
6. 管理理使⽤用过的地址和产⽣生新地址
7. 其他备份、恢复、密码管理理等附加功能
钱包的类别
• 在线WEB钱包/离线钱包
• 在线钱包:HTTPS://BLOCKCHAIN.INFO, HTTPS://GREENADDRESS.IT/EN/, HTTPS://BITCOIN.ORG/EN/WALLETS/WEB/BITGO/
• 全节点钱包/轻钱包
• 全节点钱包包含整个区块链信息
• 轻钱包为SPV(简单⽀支付验证协议)客户端
• 纸钱包/脑钱包
• 桌⾯面钱包/⼿手机钱包
• 桌⾯面钱包: ELECTRUM, BITCOIN CORE, GREEN ADDRESS, ARMONY, …
• ⼿手机钱包: BREAD,GREEN ADDRESS, IMTOKEN, ELECTRUM, BITHER
• 冷钱包(硬件钱包)
• KEEPKEY, LEDGER NANO S, TRAZOR, DIGITAL BITBOX
钱包的烦恼
• 传统钱包(⾮非确定性钱包)- 如传统的 BITCOIN CORE
• 地址更更新(为了了隐私和安全)
• 私钥备份和管理理
• 私钥的记录和保存
• 私钥的更更新、存储和记忆为数字货币的使⽤用带来了了⾼高⻔门槛
• 确定性钱包的问世解决了了这⼀一问题
早期BITCoin Core: 客户端会
预先⽣生成 100 个随机私钥,并
且每个私钥只使⽤用⼀一次。每个交
易易使⽤用⼀一个地址的概念念是中本聪
提出的。如果交易易比较频繁,私
钥可能会⽤用光,然后再产⽣生⼀一批
私钥,所以每次完成 100 个交
易易后,你必须备份新的
wallet.dat ⽂文件,否则可能会丢
失资产。
(分层)确定性钱包
• ⽐比特币改进建议:
• BIP32:HIERARCHICAL DETERMINISTIC WALLETS (分层确定性钱包)
• BIP39:MNEMONIC CODE FOR GENERATING DETERMINISTIC KEYS (助记词字典)
• BIP43:PURPOSE FIELD FOR DETERMINISTIC WALLETS (确定性钱包⽬目的字段定义:44)
• BIP44:MULTI-ACCOUNT HIERARCHY FOR DETERMINISTIC WALLETS (多账户分层确定性钱包)
• BIP32 地址路路径:
M / PURPOSE' / COIN_TYPE' / ACCOUNT' / CHANGE / ADDRESS_INDEX
例例如:M / 44‘ / 0’ / 0‘ / 0 / 1; M/44‘/60’/0‘/0/0; M/44’/247’/0’/0/1
REGISTERED COIN TYPES: HTTPS://GITHUB.COM/SATOSHILABS/SLIPS/BLOB/MASTER/SLIP-0044.MD
BITCOIN: 0; ETHER: 60; ULORD: 247
助记词
• 多种语⾔言⽀支持
• 不不同语⾔言的字典定义:ENGLISH ⽇日本語 ESPAÑOL 中⽂文(简体) 中⽂文(繁體) FRANÇAIS ITALIANO 한국어
• 相互之间可以转换: HTTPS://IANCOLEMAN.IO/BIP39/
• 每个字典包含2048个字或单词
• 单词(字)本身没有特殊意义,其在字典中的位置起作⽤用
• 每个汉字代表11位2进制码,组合起来形成⼀一⻓长串串⼆二进制序列列,作为根密钥种⼦子(包含校验)
• 常⻅见的助记词⻓长度为:12, 15, 18,21,24
• 注意与脑钱包的区别
根种⼦子 和 助记词
确定性钱包密钥产⽣生办法
分层确定性钱包(BIP32)
分层确定性钱包密钥产⽣生算法
钱包的安全问题
• ⾮非确定性钱包
• 私钥之间没有关联
• 私钥被盗,⻢马上失去数字资产
• 私钥遗失,资产永久消失
• 确定性钱包
• 助记词 !" 根种⼦子(包括主私钥 和 主链编码): 助记词可以推出所有私钥
• 助记词被盗:(不不)定时炸弹
• 助记词遗失:损失整个钱包资产
• 分层确定性钱包,私钥和上级公钥都应妥善管理理,否则可能造成资产遗失
• 根据资产情况,配置不不同的钱包
• 根据资产情况,配置多个钱包
我的介绍钱包的⼏几篇⽂文章
• 玩转⽐比特币之⼀一:私钥/公钥/地址
• 玩转⽐比特币之⼆二:⾃自⼰己动⼿手⽣生成安全私钥
• 玩转⽐比特币之三:⾃自⼰己开户-由私钥⽣生成公钥和地址
• 玩转⽐比特币之四:你的钱包并不不安全

Digital wallets functions & security