00:00
好,接下来我们来看这部分内容,这部分内容我们主要是要了解一下以太网上的一些简单的应用,简单说就是说我们先下载一个以太坊的钱包,然后看看它长什么样子,然后去拿它来发一些简单的交易,去发送一下以太,然后接受一下以太这样的一个状态,那当然我们大家可能知道,呃,本身的以太现在还是很贵的,如果我们真金白银的去发送的话,那肯定可能自己也发不起,光手续费也也一笔挺贵,对吧?呃,所以我们还会给大家介绍一个测试网络相关的一些知识点,我们会在测试网络上去做这些事情。好接下来我们就来看,首先在介绍钱包之前呢,有一个还是必须要跟大家先介绍啊,就是以太币的单位,大家可能你看这个,那以太币那还用说吗?以太币单位不就是以太吗?对吧,一个一。
01:00
怎么也称为ETH,或者我们讲过的那个像E的那个符号,这里想要给大家强调的其实说的不是以太,想要说的是E可以被细分成更小的单位,也就是说eer并不是以太坊上货币单位的最小的面值,这其实跟比特币还是很类似的,对吧?呃,大家还记得比特币最小的单位是什么吗?对,一聪,呃,一葱是大概是多少?比特币一,一亿一亿分之一对吧?对,十的负八子一亿分之一比特币乙太防里边呢,也有类似的这样的一个设置,它的最小单位呢,就是要也是要比本身的1ER要小很多很多,而且比比特币里边定义的一寸更夸张,它的最小单位叫做尾,然后一个。
02:00
呃,以态等于多少尾呢?十的十把次,所以这个我我觉得其实就是把我们能够想到的这种精度基本上都已经穷尽了,对吧?呃,如果要是一维都能值一分钱的话,那这个理态的价值简直就不知道大到什么程度了,所以说现在我们一般是用不到那么小的单位的,但是我们要知道伪是以太坊里边最基本的货币单位,位不能再小了,不能再细分了,而且在这里给大家明确的一点是,在以太坊里边所有表表示货币表达我们要转币的数额金额的这个值,所有的表示都是以尾为单位的,也就是说大家可能有时候就会发现,我们对发送一笔交易的时候,发现是后面要加很多个零这样状况啊,当然。
03:00
当然了,就是我们也有一些组件,就可可以把它转换,比方说我们前面用一个什么样的组件的一个函数,可以把。单位是尾的一个数,转换成单位是呃以态的一个数就是这样是有的,但是大家一定要记住,就是我们发的时候不要发,比方说我转给另外一个同学,然后那个数额填什么呢?填一好,你给他转了一五,就是十的负18次一台,那这个肯定比手续费要要低多了,手续费肯定不止这么多的,等一下我们可以去看一看,一般的手续费是多少啊?呃,还有就是以太坊里边除了以太和伟之外呢,还有各种各样的单位,为什么呢?因为呃,以太是实的,18次伪,这中间这个数量级差的太多,对吧?我们一般的习惯还是会每隔三个数量级就会定义一个单位的,以太坊也也一样,所以这相当于是也是应用了一个国际单位制的科学名称的,都都会有这样的一个定义,还有一个口语名称,呃,像尾呢,就是它本身也是一个科学名称,也是一个口语名称。
04:09
在以太坊里边单位的口语名称其实是什么?其实都是人名,是哪些人的人名呢?其实都是在计算机科学上,或者是密码学,加密算法这些领域做出过突出突出贡献的大牛,以及他们的名字命名以太坊的一些单位。呃,大家说到这个可能想起来比特币的单位葱,它是根据什么来命名的?对,其实就是中本聪嘛,为了也是为了纪念中本聪,也是为了就是表明它的贡献,它的地位。那以太坊里边为什么这个最基本单位叫尾呢?尾,尾是什么?大家可能看到这个单位可能是不是觉得读应该读读微或者读读读读V,还是是什么,为什么我我把它读成伪呢?大家觉得没想过是吧?对,就一般就是中国人的话,外国人我不知道啊,中国人一般读。
05:09
他都读尾,因为他是为了纪念一个华裔的密码学方面的一个大牛,叫代尾。对,他当时写过就是很多论文,就是像关于那个密码学这一块,计算机科学这一块,最重要的是他提出了一个叫做b money的东西,他的一篇论文里面提出了b money的构想,这就是被公认为是最早的分布式数字货币。比中本聪要早,中本聪的白璧树论文里边,其实很多个地方都引到了代理的那篇论文。所以在比特币的社区里边,其实就包括比特币的就是核心团队,靠团队,他们官网上是把这个比玛尼作为比特币的一个,算是精神先驱这样的一个角色的,所以整个的这个加密货币的这个圈子和分布式计算密码学的圈子,对戴维都是非常的尊敬的,呃,这就是为什么他的这个名字叫伟啊,说一些八卦,呃,接下来这就是一张表了,这张表其实一看大家都明白了,这就是以太坊里边所有数量级的货币单位名称,我们可以看到就是最小的是十的三次尾,1000尾,这个叫八比,一般在我们应用的时候可能不会叫这个口语名称,一般都是会叫后面的那个标准名称,简写就KO way,千尾嘛,简写就是K尾,K尾。
06:48
然后之后就是十的六次,那肯定就是赵伟了,对吧,他名字叫loveless,十的九次,这是个大神的名字叫香农,有有些同学可能听说过啊,他是这个信息学和计算机科学方面的一个大神,三农,这个就是纪委,我们平常经翅见到这个纪委这个单位就是我们在算GA或者是怎么样的时候,一般都是以这个为单位的,所可以想象这个尾单位有多小,使得九次的这个计尾呢,相当于是一个比较中间的一个量级,以态本身比较大,尾又比较小,那十的九次刚好就是在,就是尾和仪态之间,对吧,它是十的九次,尾是十的负九次,仪态上面的这些单位其实就一般很少用到了,就是十的12次,像这个Z啊,或者说十的15次分,你这个一般都都用不到,大家如果见到的话,知道他说的是什么就可以,另外就是如果比以太还大的话,还。
07:48
可以有,就是grand,就是相当于是迁移态,就是kilo his,或者是照移态,这个都是没有命名了,一般用不到的,呃,这是单位名称,大家了解一下,下来用到的时候可以去查。接下来我们就要开始我们真正要涉及到应用了,先讲一讲以太网钱包,还得先讲一讲理论性的东西啊,以太网钱包就是我们进入以太网系统的门户了,它里边最重要的包含了一个东西,就是我们的死药。
08:21
呃,以太坊在加密数字货币这一块,其实就是一个典型的区块链加密数字货币的这样一个系统,跟比特币在一块有很多东西都是相像的,特别是公司要呃,非对称加密这一块,大家之前如果对这块已经很熟悉的话,我们就不专门讲了啊,只要以太坊里边有了我们的私钥,那就相当于有了我们整个账户的控制权,所以它就可以代表我们创建和广播交易。接下来我们看几种比较流行的以太网钱包,一个叫做ma mask,这个就是接下来我们要给大家介绍的这种,它其实是一个浏览器的扩展钱包,等一下,呃,当然它本身也可以在浏览器中运行啊,当成一个web钱包来用,但它更多的用法,更方便的用法就是等一下,要给大家讲的直接在Chrome里边装一个插件,它作为一个浏览器扩展,直接就可以当成钱包来用了,非常的好用啊,等一下,而且上手也很简。
09:21
单给大家操作一下就可以,还有一个是叫jacks jacks是一个多平台,多币种,多币种的钱包,它是可以在各种各样的平台操作系统上运用的,Linux Windows Mac什么都可以,而且它支持多币种,就是不光是以太、比特币,莱特币,瑞波什么的,就是它,它是这样的一个,就是比较宽泛的一个功能性大而全的这样的一个钱包,而且它是一个应用程序,它必须要在我们的,呃呃,大家可以看到还有这个移动平台啊,就是安卓iOS也是可以的,它必须要在我们的平台上去运行。jacks呢,其实jacks和ma mask这两种是我们作为一个上手应用的话,或者说做测试应用都是比较方便的,Ma MAS做测试是最方便的,这的话就是如果一个新手,大家想去了解各方面的这个不同的币的话,呃,也是很方便的。
10:20
再接下来就还有两个不太常用,但是其实前面这一个名气也很大,叫做my is wallet,大家有听说过的吧,可能听说过,可能没有他他在国外可能是相对来讲名气是很大的一个钱包,呃,有人把它简写是mew嘛,叫MU,它是一个基于web钱包,在任何浏览器里边都可以运行,它提供的功能非常的复杂,就几乎所有的事情他都可以做,所以功能还是很强大的。最后一个叫iro wallet,这个比较特殊,一般情况我们可能也没听过,他主要是配合ETC来使用,是以太坊经典上配套了一个钱包,呃,我我这里问多问一句大家,大家有用以太钱包的同学吗?一般用什么?
11:14
Ma ma,哦哦,有同学用ma mask是吧,有有用I'm token吧,有有用的是吧,哦,有用是吧,对对哦对对,那那大家其实如果用过ma ma或者是用过IM token的话,这个其实就非常非常简单了,呃,但是我在这里肯定还是等一下,要就是带着大家把那些最基本的流程还是要过一遍,因为有些同学可能是完全没有接触过的,就是这些东西完全没有接触过的话,可能一开始还会有一些担心,或者说有些东西不知道该怎么操作,呃,如果已经比较熟的同学的话,大家可以放轻松一点,呃,但是就是大家不要觉得太太烦就可以了啊。提到m token我多说一句啊,就是在国内我知道的。
12:02
呃,很多就是去去投资数字货币啊,或者说自己去创建钱包的朋友,他们都用IM token,确实是用户量还是挺大的,作为国内的一个产品,IM token我我也用过,确实体验还是挺好的,整个那个界面还有整个的交互都非趁,但是I token有一个问题也也跟大家就是说一句啊,就是他比较受人质疑的一点在于I'm token没有开源代码,呃,这里介绍的这一些以太网的钱包其实都是开源的钱包,所以就是像国内的一些项目,当然这个跟可能跟咱们现在国内的环境有关系,就真正开源去做的公司或者说项目真的是少而又少,大家这方面开源精神确实是跟国外还差的比较多,呃,这个可能也也不能说什么吧,但是就是说像am token,如果他要是不开源的话,这个就是很直接的一个质疑,就是说呃,你说你不会存。
13:02
我的私钥我怎么知道呢,对吧?呃,所以这个就是也是提醒大家一下,当然我不是说m ton不安全啊,就我我自己也用过N,我觉得还是挺好用的,呃,接下来我们还是尽管大家对这块很熟悉了,我们还是过一遍吧,防止大家忘记也是,呃,相当于跟大家再复习一遍私钥公钥的地址,私钥这一块private k,呃,这个所有的几乎所有的区块链系统,它的账,所谓的这个就是账户或者说地址的这套体系,都是从非对称加密算法里面导出来的,这个大家应该是很清楚,对吧?而且我们现在已知的,其实大多数或者说主流的比特币以太坊都是用的椭圆嘉宾,呃,椭圆曲线的加密算法,所以这一点都是一样的,大家之前学到的东西都是都是一致的,以太坊的私钥呢,事实上就是一个256页的随机数。
14:02
呃,之前大家学比特币的时候,比特币的资料是多少倍,还记得吗?呃,有有点忘记了,对,应该也是256位,如果我没记错的话,大家可以回头我再问问左老师,大家也可以再去确认一下,应该是对吧,哦,对,所以。就是大家可以看到这一块其实完全一样,就是一个256位的随机数,那在以太坊里边呢,这个私钥其实就是拥有我们账户的所有的权利的,就是拥有我们账户绝对的控制权,它就可以,它主要是用来创建那个数字签名,这个大家都知道对吧?呃,他在发送以太的交易中,如果创建数字签名的话,就可以证明自己对这个资金的所有权,就像我们在比特币里边可以对这个UTXO做一个确认一样,对吧。公钥这一部分在以太坊里面,公钥一样是由私钥导出的,它用的就是椭圆加密曲线算法单项生成的512位的一个数,嗯,大家记得比特币的公钥是多少位吗?
15:17
这这个我确实有点不记得了啊,我记得好像不是一个,就是我我们程序员所说的整数,就不是一个二的整次方,我记得好像不是,呃,大家如果要是记不太清楚的话,当然这些东西没关系啊,就是我可以我是想借着这个帮助大家回忆一些之前可能学过的一些东西,也是512位是吗?那如果也是一样的话,那这个就是完全一样,没有什么区别,呃,512位那就是六十六十四字节的一个数字了。另外呃,之后生成的就是地址了,地址也是公钥的单向哈希以太坊这里用的是256的单向哈希的算法,它生成哈希之后要取最后的20个字节,然后派生出来要制服,就是我们最后的以太坊地址,这个跟比特币那边应该是不一样了,对吧,大家知道比特币最后生成的,呃,就是截取。
16:17
截取出来的那一部分自己还会做贝斯五八的转码,是不是就是我们,所以大家可以看到我们刚才看到的那个以太坊的地址,其实没有那些奇奇怪怪的字符,比方说J呀K啊什么的,没有的,对吧,所以其实在以太坊里边的话,它就是用了。公钥单向哈希之后的最后100 160位派生出来的标志符我,而我们平常看到的以太坊地址是40位的一个字符串。所以它一个字符是代表四位,所以它其实就是一个hex编码,它是一个16进制的编码,大家如果仔细看的话,以太坊的地址不会出现JK这样的东西,它最多就是abcde。
17:08
大家应该能能明白是吧。啊好,接下来这一块其实呃,其实没有什么特别的意义,但是我觉得需要跟大家再说一下,因为如果有同学真的之前没有接触过区块链的钱包,或者说自己没有真正上手做过的话,这东西可能还是需要去了解一下的,呃之之前其实前面一点就是没有跟大家说啊,就是私钥这一块。大家说私钥是一个256位的随机数。那它的安全性怎么保证呢?它既然是一个256位的随机数码,那是不是我们自己随便都可以生成?不是,或,或者说我们自己也可以生长。
18:01
随机生成,只要随机生成就可以是吧?呃,那那如果说咱们自己要生成一个,呃,以太坊的私钥的话,咱们准备怎么生成,就是到编程语言里面去,咱们直接一个random函数,把它random出来是吧?一个足够随机啊,对这这个点就非常重要,就是说它是256位的一个字符,呃,就是一个数,没错,只要是这样的,就是一个符合标准的以太坊C要,但是安全性如果要保证的话,那一定得保证随机,咱们如果自己去写一段代码,在编程语言里边去调个专函数对吧,或者run,大家如果是用一些里边都有相应的这些数学方法去生成的数字是呃,如果大家测试的话,当然没关系啊,大家怎么玩都可以自己去写那个。
19:02
256个零,256个一也可以去尝试,但是如果要是自己真的是资金账户的话,千万不要用这种自己简单生成的方式,因为大家可能知道我们平常用到的这些随机数生成器都是伪随机的,对吧?而且一般情况下,编程语言里边,或者说是我我们在一些就是简单的工具里边提供的尾随机数生成器,它都是基于时间序列的一个尾随机这种随机数。他的随机性是比较差的。所以出于安全性考虑,我们肯定是要用更加专业的生成器。或者说有一些专业的生成器,它也是尾随机的,但它只要是就是加密安全的就可以,我们如果要是采用一些算法的时候,做这个random生成的时候,也要看这个算法到底是什么样的一个生成,这是多说的一句啊,对,当然其实我觉得咱们自己能不能生成,当然能自己生成,我觉得最简单的一个方法就是找一个特别做的特别好的一个硬币,对吧,就是正反面完全完全均匀的一个硬币,然后自己没有偏差的把它扔256次,我们得到那个数就是一个随机数。
20:18
而且如果我们能保证没有偏差的人的话,这是一个真随技术,就是呃,如果大家愿意用这样的方式也可以尝试啊。呃,我没有尝试过,但我觉得这个听起来好像匪夷所思,但其实它的安全性是非常高的。好,接下来我们再说一下这儿的安全须知,其实就不是说这个生成私钥这一块的安全性了啊,主要说的是我们怎么怎么来存储,前面我们已经说了,私钥可以单向导出公钥。有椭圆加密曲线算法,公钥又可以单向导出地址,做了一个哈希,然后取后20位对吧?呃,后那个一百一百六十位,所以在这个过程当中,私钥是最重要的东西。
21:05
有私钥,所有的一切都能倒出来,没有私钥,什么都没了,我们就没有账户的控制权了。呃,大家接触过比特币之后就会发现,这其实是区块链给我们带来的一个最大的。可以说不方便也是给我们带来的一个最大的好处,大家可以想想,就是我们以前,呃,不用说以前,就现在我们去银行去存钱,存取钱的时候,银行给我们一张卡,那钱能真正的在我们的卡里面吗?其实根本不能,对吧,我们之所以信任我们的钱就在卡里边,其实因为我们信任银行,我们信任我们拿这张卡去银行取钱的时候,他一定会给我们,所以。这个钱其实根本没有控制在我们自己手里,或者说我们去登录一个网站,我们去注册,我们去填用户用户名和密码,那个密码真正掌握在我们自己手里吗?当然不是,大家做过这个后端开发的肯定都知道,嗯,你即使是做了这个,哎,MD5加研或者怎么样的处理的话,那所有的那些用户的密码信息都会存在服务器里面,要不然怎么做用户校验呢?所以如果是这样的一种一种模式的话,我们根本没有完全掌控自己的密码或者说自己的钱。
22:26
但是区块链真正给了我们这种可能,我们真的是有可能把我们的钱拿在自己手里面的,但是随之而来就有了一个问题,就是我们的账户的所有权、控制权就是关键就是这个私钥,有这个私钥,它的控制权就在我们自己一个人手里,但假如我们一旦没存好,把它丢了。那就完蛋,什么东西都没了。呃,这是私钥的重要性,那既然私钥这么重要,我们当然就还是得好好存储了。呃,这里给大家介绍一下,就是真正保障私钥安全的一些合规的做法,大家可以看一下,可能有些看起来有点夸张啊,简单读一下吧。呃,首先我们确认一下这个k store文件,大家应该也见过的,K store文件在区块链存储里面,它就是加密存储之后的私钥。
23:19
什么意思,就是把私钥,然后你再设定一个密码,就你设定的那个密码,把私钥加密,加密完了之后的那个文件叫做到。K文件。所以在假如说让就是用系统让你选择一个密码去加密私钥的时候,这个时候一定要设置成为一个强密码。因为它和你的私钥,就是如果说它跟K文件合在一起,就能把你的私钥解锁出来。所以它的安全性当然也是要注意的,把它备份出来,但是不要共享出来,这当然这都是常识了啊,如果你没有密码管理器的话,那就把它写下来,然后放在带锁的抽屉或保险箱中,这呃,大家在整那个比特币的时候,我估计也听过各种各样的这个状况,可能平常也听过各种各样的新闻,对吧?有些人早些时候去去买了比特币,或者是自己去挖了比特币,然后存在自己账户里边,私钥随便进了一个地方,然后就忘了这回事儿了,过了几年之后发现比特币涨起来了,想想着,诶,自己当时还有几十个比特币的呀,然后发现了一张那寄私钥的那个字条,早不知道扔到哪里去了,或者说就是随意的把它复制到一个文件里边,后来想,哎,好像我重装过电脑,好像是什么都没了,所以这样的事儿其实前几年经常发生,经常听到,所以标准的做法。
24:51
它是什么呢?要不就是用专业的密码管理器,要么就是写下来放在一个带走的抽屉,非常非常保险,自己也确定的地方啊,这是P。另外还有一个地方,大家需要知道的是助句词。
25:06
如果已经用过钱包的同学肯定会对注句词很熟悉了。注句词。它是什么东西呢?它是直接可以导出私钥的一个一串词,一般我们用到的可能就是12个英文单词,或者是24个英文单词。所以我们可以简单认为,助剂词就是私药。那就是说私钥有多重要,助剂词就有多重要,我们就要把助剂词跟私钥一样的去保存,所以他说的也是用笔和纸把它写下来,物理备份,不要把这个任务留到以后你会忘记的。呃,这这其实都是那个就是精通,精通李太坊那本书里边的原话,我觉得读着应该比较有意思,所以我就直接把它翻译过来,抄到这里了。还有一点就是切勿用很简单的方式去存储私钥,尤其是电子方式存储,当然咱们平常如果要存什么东西的话,肯定就是,对吧,从C盘拷到D盘,拷到桌面去,拷到U盘里面去,真正安全的方式不是这样的方式,不能这样去频繁拷贝,因为在我们系统的剪贴板里边就是真正的高手,黑客肯定是可以访问你的内存的。
26:18
呃,就是这些东西其实是其实是不安全的啊,就是你考来考去这种方式都是不安全的,所以呃,这这当然这些东西可能大家听起来可能有一点有一点就是耸人听闻啊,就是就是怎么说的这么严重,那是因为可能我们没有真正把大量的资金放在以太网账户里面去。如果说我们把对吧,几十万几百万一大笔钱都放在这个账户里边,你能不这么重视他吗?可能你就就真的得按这个步骤来,当然我们现在的话,如果只是做一些测试,那没关系,我们把资料拷出来,我直接在这里分享给大家也可以,因为反正里面没有钱,呃,但是大家应该知道标准的安全做法是什么样的,好,下面就不再一句一句读了啊,其实就是说你不要怎么样,你就是要用安全的纸和笔,物理存储最安全。最后一个其实还是挺有必要的,我觉得这大家就之后去给别人转币的时候,也可以用这种方式啊,就是你做大额的支付的时候,或者大额交易的时候,先发一个小的测试交易。
27:24
就是我先转一个,呃,0.01仪态,0.001以态对吧,转一个就是小于一美元的一个,把把这个东西去去先测试一下,如果真正收到了,我再转大的,这是正常的一个思维。
我来说两句