06.17 「教程」撸空投糖果的基本知识

一、区块链基本特性

区块链具有去中心化、不可篡改、不可逆、匿名等特性。

去中心化: 因为整个网络没有中心统治者。系统依靠的是网络上多个参与者的公平约束,所以任意每几个节点的权利和义务都是均等的,而且每一个节点都会储存这个区块链上所有数据。即使该节点被损坏或遭受攻击,仍然不会对账簿造成任何威胁。

不可篡改:确保信息或合约无法伪造。账簿在某个人或某几人手上,造假的可能性就非常高,但每个人手里都有一本账簿,除非整个游戏里超过51%的人都更改某一笔账目,否则任何的篡改都是无效的,这也是集体维护和监督的优越性。

不可逆:区块链上的信息必须不可撤销,不能随意销毁。系统是开源的,整个系统都必须是公开透明的,因此某笔交易被全网广播以后,达到 6 个确认以上就成功记录在案了,且不可逆转不可撤销。注: imToken 是 12 个区块确认。

匿名性: 各区块节点的身份信息不需要公告或验证, 信息传递可以匿名进行。举个简单的例子, 就是你在区块链上向一个钱包地址发起交易, 但是却无法知道这个地址背后确切对应的是那一个人, 或者你的私钥被某一个黑客盗窃了, 无法从一个钱包地址中得知黑客是谁。

二、何谓钱包

钱包是密钥的管理工具, 他只包含密钥而不是确切的某一个代币。钱包中包含成对的私钥和公钥。用户用私钥来签名交易, 从而证明该用户拥有交易的输出权。而输出的交易信息则存储在区块链中。

用户在使用 imToken 时, 你的 Keystore, 助记词, 明文私钥, 都是钱包, Keystore 是你加了”锁”的钱包, 而助记词和明文私钥是完全暴露在外的钱包, 没有任何安全性可言, 所以在使用助记词和明文私钥时, 一定要注意保密

三、何谓KEYSTORE

Keystore 文件是以太坊钱包存储私钥的一种文件格式 (JSON)。它使用用户自定义密码加密,以起到一定程度上的保护作用, 而保护的程度取决于用户加密该钱包的密码强度, 如果类似于 123456 这样的密码, 是极为不安全的。 在使用 Keystore 时有两点需要注意: 1. 使用不常用, 并且尽可能复杂的密码加密 Keystore 文件; 2. 一定要记住加密 Keystore 的密码, 一旦忘记密码, 那么你就失去了 Keystore 的使用权, 并且imToken 无法帮你找回密码, 所以一定要妥善保管好 Keystore 以及密码。

下面是 keystore 的样式:

{“version”:3,”id”:”b7467fcb-3c8b-41be-bccf-73d43a08c1b7″,”address”:”540f18196da5a533fa36577a81de55f0a2f4e751″,”Crypto”:{“ciphertext”:”78ed11b8b6bf29b00f52b42b8542df0e4a6ac078e626af7edcf885c3b68154a4″,”cipherparams”:{“iv”:”4516579601d96695fe30ace985a9066f”},”cipher”:”aes-128-ctr”,”kdf”:”scrypt”,”kdfparams”:{“dklen”:32,”salt”:”6276cfda7d40872352c801db5871e5a3368a8d0994cea39ed936760db78d1cdc”,”n”:1024,”r”:8,”p”:1},”mac”:”d889a5dc609c3f312a41394cc47640676d2612501a6f8c837ed55598158336db”}}

PS: Keystore 的密码是唯一、不可更改的, 如果想更改钱包密码需要使用助记词或明文私钥重新导入钱包, 并使用新密码加密, 生成新的 Keystore。

四、何谓助记词

助记词是明文私钥的另一种表现形式, 最早是由 BIP39 提案提出, 其目的是为了帮助用户记忆复杂的私钥 (64位的哈希值)。助记词一般由12、15、18、21个单词构成, 这些单词都取自一个固定词库, 其生成顺序也是按照一定算法而来, 所以用户没必要担心随便输入 12 个单词就会生成一个地址。虽然助记词和 Keystore 都可以作为私钥的另一种表现形式, 但与 Keystore 不同的是, 助记词是未经加密的私钥, 没有任何安全性可言, 任何人得到了你的助记词, 可以不费吹灰之力的夺走你的资产。所以在用户在备份助记词之后, 一定要注意三点:

1. 尽可能采用物理介质备份, 例如用笔抄在纸上等, 尽可能不要采用截屏或者拍照之后放在联网的设备里, 以防被黑客窃取;

2. 多次验证备份的助记词是否正确, 一旦抄错一两个单词, 那么将对后续找回正确的助记词带来巨大的困难;

3. 将备份后的助记词妥善保管, 做好防盗防丢措施。

PS: 用户可以使用备份的助记词, 重新导入 imToken , 用新的密码生成一个新的 Keystore, 用这种方法来修改钱包密码

五、何谓私钥

我们常说, 你对钱包中资金的控制取决于相应私钥的所有权和控制权。在区块链交易中, 私钥用于生成支付货币所必须的签名, 以证明资金的所有权。私钥必须始终保持机密, 因为一旦泄露给第三方, 相当于该私钥保护下的资产也拱手相让了。它不同于Keystore, Keystore 是加密过后的私钥文件, 只要密码强度足够强, 即使黑客得到 Keystore, 破解难度也足够大。

私钥实际上并不是存储在网络中, 而是由用户生成并存储在一个文件或者简单的数据库中, 称为钱包。存储在用户钱包中的私钥完全独立, 可由用户的钱包软件生成并管理, 无需区块链或者网络连接。用户的钱包地址就是由私钥通过椭圆曲线加密生成公钥, 进而生成以0x开头的42位地址。 私钥的样式为 64 位 16 进制的哈希值字符串, 例如: 56f759ece75f0ab1b783893cbe390288978d4d4ff24dd233245b4285fcc31cf6

PS: 用户可以使用明文私钥导入 imToken , 用新的密码生成一个新的 Keystore (记得要将旧的 Keystore 删除), 用这种方法来修改钱包密码。

六、何谓钱包地址

地址由公钥 (公钥是私钥通过非对称加密算法生成) 生成, 以 0x 开头的 42 位 16 进制哈希值字符串。例如: 0xc2d5ef1b5e6234c6bcbce87bb05d579c8e9d5720

如果将钱包比作银行卡, 那么钱包地址就是银行卡号。

七、何谓去中心化

在一个分布有众多节点的系统中,每个节点都具有高度自治的特征。节点之间彼此可以自由连接,形成新的连接单元。任何一个节点都可能成为阶段性的中心,但不具备强制性的中心控制功能, 没有单一方控制数据或信息。节点与节点之间的影响,会通过网络而形成非线性因果关系。这种开放式、扁平化、平等性的系统现象或结构,我们称之为去中心化。区块链上的每一方都可以访问整个数据库及其完整的历史记录。 直接验证其交易合作伙伴的记录,而无需中间人。

例如用户在使用 imToken 进行 P2P 交易时, imToken 并不会充当第三方担保的角色, 一切行为都是用户自主发起, 就像私钥、助记词和 Keystore 这些钱包信息, 都是本地保存在用户的手机里, 并没有保存在 imToken 的数据库中, 所以用户要做好安全措施, 一旦丢失, imToken 无法帮你找回资产。

八、何谓不可以逆性

区块链采取单向哈希算法,同时每个新产生的区块严格按照时间线形顺序推进,时间的不可逆性导致任何试图入侵篡改区块链内数据 信息的行为都很容易被追溯,导致被其他节点的排斥,从而可以限制相关不法行为。

举个例子, 当你使用 imToken 发起一笔交易转账, 如果你一不小心将地址填写错误, 那么这笔交易是无法回滚的, 除非交易双方链下协商, 否则 imToken 无法改变这次交易。

九、何谓TXLD

TxId 其实就是交易编号, 例如我们从 A 地址转 10 个 ETH 到 B 地址 , 我们会使用 A 地址进行私钥签名, 得到一个签名的 SIGN, 然后这个签名和交易合并, 最后进行哈希值运算, 就得到了TXID, 然后向网络广播, 如果交易成功, 你就可以在区块链网络上查询到该交易编号, 也就是 TxId。

十、使用ETHERSCAN查询交易记录

Etherscan 是 2015 年推出的一个以太坊区块探索和分析的分布式智能合同平台, 用户可以使用Etherscan 查看自己的交易详情。

PS: 如果你在区块链进行交易时遇到转账失败, 交易所提币长时间未到账等情况, 可以前往 Etherscan 上查询该交易信息。

十一、何谓矿工费

矿工费其实是非常好理解的, 首先明确我们使用 imToken 钱包发送交易, 矿工费是谁来收的?

答案当然是矿工, imToken 到目前为止没有对用户收取任何交易费用, 这和交易所或者一些平台有很大区别 (例如之前很多交易所都收 0.01 ETH 的手续费) 。

还有矿工费到底是怎么计算的, 公式: Gas fee = gas * gas price, gas price 的单位是 gwei, 4 gwei 相当于 0.000000004 ETH ,我们可以去 Etherscan 上查看最近一笔转账成功的交易, 看看这笔交易的 gas 和 gas price 是多少, 我们照着设置就可以了。其实使用 imToken 只要不是特殊的交易, 我们无需理会矿工费问题, imToken 已经帮我们做好了这一切。


分享到:


相關文章: