什么是token

token的概念很广泛,在计算机领域中,无论是基础的网络架构还是服务系统的身份验证等,都有涉及到token的概念,然而在这里我想阐述的是在区块链世界中的token是什么。相信对区块链有些了解的朋友,都或多或少的听过或者看过关于token的描述,过去的两年里,被炒的轰轰烈烈的,通过ICO方式去募集的那些个玩意儿,都是指的一种token,有人翻译为数字代币,有人称之为是通证,不管怎么说,总之就是被不少人认为是一种有价值的东西,不,应该说被认为是一种有价格的东西。

回想长时间以来对于区块链的概念阐述,都是基于技术角度的,总认为这样的阐述立场会更客观一些,更朴素一些,对于看官或者读者来说,能够排除其他的主观干扰或者排除一些别有用心的心理暗示。在之前所著的书籍《白话区块链中》,绝大部分的文字也都是阐述技术概念,很少讨论经济学上的意义,或者在社会学、金融领域等的定义。很显然,如果说在技术上定义一下,区块链系统中的token是什么,那不过就是通过一段程序定义的符号或者说一个值。嗯?就这么结束了?呵呵,当然不是,我们可以在软件开发中通过程序定义各种值,难道那些都是能被称为token么?即便是在区块链软件的开发中或者基于某个基础链的智能合约开发中,随便定义一组数字量,难道就是token了?而这些定义程序不过就是寥寥数十行代码,比如我们常用的基于以太坊公链部署的token合约,最简单的程序代码,不过就十几行,我们来看一个例子:

如图所示,就是一份最简单的基于以太坊的token合约代码,部署在以太坊上时,初始化一个期初总量,这个总量是可以自己随便定义的,一百、一千、一万、一个亿或者更多都可以。部署后,你就拥有了一个名字叫MyToken的token了,或者叫代币,叫通证都可以。当然,这还只是区块链系统中定义token的其中一种方式,token还可以生成子token,可以有变化,定义方法或者说玩法还是挺多的。

说到这,很多朋友可能会有些迷茫,总觉的这个什么token的概念太虚了,真个是如梦幻泡影,如雾亦如电。其实不然,我们来举些例子吧,咱老百姓说话得接点地气。大家在商店买东西的时候,买完一般都会要求收取一张发票,这张发票是商家开具的,证明商品的销售来源和价格的,这张发票就可以算是一种token;古代的时候,有些钱庄银号,为了让客户方便在各地的分号兑换银两,会给客户开具带有兑换效力的银票,这个以银票也是一种token;国家给每位公民都办理了身份证,这个身份证也是一种token;某个村子,全村人都姓王,家家户户的人口信息都会登记到一个册子上,这个册子每隔一段时间就会印发,每户一本,这个册子也是一种token;工厂里工人干活,每个人分配的工时会记录在本子上,到了月底就会汇总,换算成酬劳,这个记在本子上的工时也是一种token。好了,让我们停一下,大家发现没有,这里被称之为是token的东东都有哪些共同点呢?

在考虑共同点的时候,我们来看下这些token有什么用。如果没有没有这些个发票、银票或者工时记录什么的会怎么样?那就会在需要兑换某种权益的时候没有对应的证明。是不是?没有发票的话,如果要去店里退换货或者返修,人家可能就不认了;没有银票,那些个银号能给你兑钱么;没有工时记录,到了月底拿什么给你结算?是的,我们发现这些个东西都承载了某种权益,当然了,这些权益都是有归属的,谁拥有这些个token的所有权,谁就拥有这些token所代表的权益。那么,既然是一种权益,那自然也是可以转移喽,当然现实生活中的一些token并不都是能通过交易来转换所有者的,比如身份证就是不能随便卖的😜。

世界黄金协会黄金历史价格数据库 世界黄金协会中的黄金价格

现在让我们再来抽象一下,要说以上这些个token的概念,那还是能理解的,毕竟代表了具体的一些权益的,可是建立在区块链系统中的那些个所谓的token代表了什么呢?比如我在以太坊上部署了一个token的合约程序,这代表了什么具体的权益呢?就这么数行数十行代码写的一段程序怎么就是token了呢?它代表了什么样的价值或者说权益呢?

首先,这些token合约程序,是部署在区块链系统之上的,区块链系统是一种网络系统,而且是一种分布式点对点的网络系统,在这样的一个网络系统中,存在着一种共识机制。在这个网络中,每条数据都是有所有权的,这个所有权通过一种叫私钥的密钥来识别,拥有私钥的人就拥有对应数据的所有权。而整个所有权会通过共识机制让全网来共同验证。比特币是这种机制,以太币是这种机制,以太坊上的token也是这种机制,在这种机制中产生的带有所有权的数据,就是一种token,它代表着什么样的权益呢?就是代表一种所有权,一种被网络中大多数节点都验证认可的所有权。

当然,区块链系统为了维持运转,是需要一整套的运行机制的,比如比特币系统、以太坊系统等,需要部署为一个网络,这个网络要尽可能的广泛,需要共识机制比如挖矿算法就是一种共识机制,当然也还有其他类型的共识机制,还需要有脚本指令系统用于转换所有权,以及等等。在这样的网络系统中,不依赖于某一个权威者,而是通过既定的规则机制来进行这个所有权的自动化证明,因此能获得参与者的认可共识,通过共识保障了所有权。

可能有朋友会问,说我发现目前在一些交易系统中就有交易这些token,价格或高或低,问题是就这么一个所有权,感觉就是人为制造出来的,也不对应什么具体的实物权益,怎么就有高高低低的价格呢?我们知道,一个所有权,不管它是否用于交易,它都是存在的,至于说价格,那是一种市场行为,或者说是炒作行为,这里面又有一番理论,就像黄金为什么会有价格,荷兰郁金香为什么会有价格,一套软件为什么会有价格等等,价格或许是反应这个token的价值的,或者只是人为炒作的,不用去管它,对于我们来说,理解token是一种所有权就可以了。如果能够正确的使用token这个东西,那么可以设想在网络系统中通过token来携带相应的价值,转换相应的权益,可以去实现类似智能合约这种应用以及等等,可以去发挥一些创意,去对应现实生活中的一些需求,找到一些应用的点,将这个token与具体化的价值物连接起来,这样才能发挥token的作用,否则光是token是没有意义的,不管这个具体化的价值物是什么,它得是对人们有用的,能满足一些需求的才行。

以上就是对区块链系统中的token的一些个人观点,不足之处,欢迎大家指教。

Token从定义的角度看,可以分为三个阶段或者三个角度:

最早,token是网络基础设施层面的一个概念,包括最早的令牌环(token ring)网络,以及网络安全体系中的身份认证机制等。这个时期/角度与区块链无关,那时候区块链技术还没有产生。

第二个阶段的token主要与ICO模式相关:一个区块链平台的开发者,在为自己的项目融资时,融资条件之一往往是未来给投资者一定数量的“平台币”(coin),数量与投资额有关。由于平台还没有开发出来,所以只能以一种特定符号来替代,等到未来平台上线时,作为兑换平台币的凭证。由于以太坊ERC20模式token的出现,这种模式变得简便易行,所以成为了ICO的主流模型。时至今日著名的EOS系统还处在开发过程中即将上线,也很快就要用EOS的平台币来兑换发行在以太坊上的,名为“EOS”的token了。

第三阶段的token,来自于token economy的概念,是第二阶段token的引申:大家发现,token作为区块链上的一种凭证,与比特币、以太币等平台币(coin),同样具有加密、不可篡改、可追踪、总量受控等特性,实际上可以与平台币有同样的效用,完全可以直接在应用场景中使用,并且有可能进一步对接线下实际资产,包括票据、物权等。国内的“通证派”就将其定义为可流通的加密数字权益凭证,也就是“通证”,就来源于上述理念。

由此可见,token概念历经三个阶段的变化,有其特定的演进路线,目前已经成为一种新的经济模型的理念,其基本含义、实际应用和未来发展,仍处于不断变化中。

区块链经济的奥秘就在于使用了通证(token)。

那么到底什么是通证呢?它的最主要定义是什么?

每一个发币的区块链项目,都是试图以其所发行的币(通证)作为一种经济激励的工具,促进生态圈内各个角色的协作。你的贡献越大,你得到的币越多。大家协作得越好,币价越高。因此,每一个发币的区块链项目都在试图设计一个通证经济系统(token economic system)。

通证经济系统的设计,就是要用经济激励的手段,让你整个生态圈的每一个人、每一个角色尽可能行善事,不作恶。

为此,在设计一个通证经济系统里要回答下面这些问题:

你认为使用你这个通证的用户分成哪几类角色?

他们的利益诉求各是什么?

什么是对你这个生态系统有益的行为?什么是有害的行为?

你怎样激励每一个用户做好事?

你怎样说服每一个用户不做恶?

所以,重要的不是区块链,是通证系统,是你建设的制度体系。

如果你建立了一个做恶的系统,那么就是一个做恶的体系。

许多交易型代币就提供了这样的甄别手段,比如ICST就用这样的系统识别东南亚网红直播他们是否遵从了社区应用的制度。

类似于上述的通证系统从一开始就开就设计了一套制度,在这套制度里,用户及社群、通证持有者就只能做好事,不能做坏事。

这是架构师必须了解的知识。

什么是token

在计算机网络编成中,服务器为了验证客户端的身份等信息,需要用户输入用户名和密码。通常情况下,网站的网页不可能要求用户每访问一个就输入一边密码。为了解决这个问题,这个时候需要使用Token给已经完成认证的用户签发凭证,使其后续的访问不需要再进行认证。

简单的说,Token就是已完成认证的凭证。


普通的Token认证流程

这是一个比较简单的流程。请允许我不画图了。

  1. 客户端通过用户名密码进行登录。

  2. 服务器验证密码,如果密码正确,签发Token,并返回给客户端。

  3. 客户端访问该网站下的其它网页,向服务器发起请求,并带上Token。

  4. 服务器直接验证Token,与服务器中一致时,直接返回目标页面。


单点登陆的Token认证流程

参照上图。

  1. 用户即客户端向应用服务器发起请求。

  2. 用户未认证,应用服务器将请求转发至认证服务器(图中的Open AM)

  3. 认证服务器返回Login画面给用户

  4. 用户输入认证信息 认证服务器认证OK并返回token给客户端 客户端带着token再访问应用服务器

  5. 应用服务器向认证服务器请求认证token

  6. 应用服务器认证通过,返回OK信号给应用服务器

  7. 应用服务器带着token,向DB服务器发起操作请求

  8. DB服务器向认证服务器请求认证

  9. 认证服务器认证通过,返回OK信号给DB服务器

  10. DB服务器返回结果给应用服务器

  11. 应用服务器返回页面或结果给客户端

Token的加密处理

  • hash

  • base64

  • md5

  • 等等

最后

各位小伙伴们对于Token有什么独门的加密或者处理方法么。欢迎评论点赞加关注,收下我的膝盖。

这里会牵涉到数字加密货币,因为token其实是数字加密货币里的一个概念。

首先,相对于比特币,后来出现的以太坊其实原来设想是很好的,它希望大幅度地降低大家用区块链和生成自己数字货币的门槛,所以,它生成了一个ERC20的智能合约标准,或者说,这个智能合约的一个主要功能就是:方便没有区块链知识的人,可以非常方便地生成自己的token。

那这里,token又是什么东西?token的中文名叫“代币”或者“通证”。它和coin(原生币)的主要区别是:像比特币这种,叫“原生币”,它是有自己数字资产的,有自己的区块链资产,而token没有自己的区块链,它是嫁接在别人的区块链上,通过智能合约的API的标准,生成的一个“代币”。就是说,它没有自己的区块链资产,没有自己的区块链程序,它是在别人的区块链之上生出来的一个替代属性的数字货币。

而借助token,以太坊的最大成功,就是极大地降低了参与者的门槛,使任何一个没有区块链知识的人,都可以用他们的智能合约,然后在可能20分钟的时间内,就能够生成自己的代币,然后,就可以用这个代币,去进行融资行为。所以自从一出现,以太坊就很快变成为了全球的第二大数字货币,这是它的主要功能,也解释了什么是加密货币里的token概念。顺便说一句,如果你想知道更多硅谷或者美国科技的前沿信息,可以关注微信号“硅发布”。