在区块链世界中的token到底是什么?

2023-11-19



token的概念很广泛,在计算机领域中,无论是基础的网络架构还是服务系统的身份验证等,都有涉及到token的概念,然而在这里我想阐述的是在区块链世界中的token是什么。


相信对区块链有些了解的朋友,都或多或少的听过或者看过关于token的描述,过去的两年里,被炒的轰轰烈烈的,通过I-C-O方式去募集的那些个玩意儿,都是指的一种token,有人翻译为数字代币,有人称之为是通证,不管怎么说,总之就是被不少人认为是一种有价值的东西,不,应该说被认为是一种有价格的东西。


回想长时间以来对于区块链的概念阐述,都是基于技术角度的,总认为这样的阐述立场会更客观一些,更朴素一些,对于看官或者读者来说,能够排除其他的主观干扰或者排除一些别有用心的心理暗示。在之前所著的书籍《白话区块链中》,绝大部分的文字也都是阐述技术概念,很少讨论经济学上的意义,或者在社会学、金融领域等的定义。


很显然,如果说在技术上定义一下,区块链系统中的token是什么,那不过就是通过一段程序定义的符号或者说一个值。嗯?就这么结束了?呵呵,当然不是,我们可以在软件开发中通过程序定义各种值,难道那些都是能被称为token么?即便是在区块链软件的开发中或者基于某个基础链的智能合约开发中,随便定义一组数字量,难道就是token了?而这些定义程序不过就是寥寥数十行代码,比如我们常用的基于以太坊公链部署的token合约,最简单的程序代码,不过就十几行,我们来看一个例子:




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


说到这,很多朋友可能会有些迷茫,总觉的这个什么token的概念太虚了,真个是如梦幻泡影,如雾亦如电。其实不然,我们来举些例子吧,咱老百姓说话得接点地气。


1)大家在商店买东西的时候,买完一般都会要求收取一张发票,这张发票是商家开具的,证明商品的销售来源和价格的,这张发票就可以算是一种token;


2)古代的时候,有些钱庄银号,为了让客户方便在各地的分号兑换银两,会给客户开具带有兑换效力的银票,这个以银票也是一种token;


3)国家给每位公民都办理了身份证,这个身份证也是一种token;


4)某个村子,全村人都姓王,家家户户的人口信息都会登记到一个册子上,这个册子每隔一段时间就会印发,每户一本,这个册子也是一种token;


5)工厂里工人干活,每个人分配的工时会记录在本子上,到了月底就会汇总,换算成酬劳,这个记在本子上的工时也是一种token。


好了,让我们停一下,大家发现没有,这里被称之为是token的东东都有哪些共同点呢?


在考虑共同点的时候,我们来看下这些token有什么用。如果没有没有这些个发票、银票或者工时记录什么的会怎么样?那就会在需要兑换某种权益的时候没有对应的证明。是不是?


没有发票的话,如果要去店里退换货或者返修,人家可能就不认了;没有银票,那些个银号能给你兑钱么;没有工时记录,到了月底拿什么给你结算?


是的,我们发现这些个东西都承载了某种权益,当然了,这些权益都是有归属的,谁拥有这些个token的所有权,谁就拥有这些token所代表的权益。


那么,既然是一种权益,那自然也是可以转移喽,当然现实生活中的一些token并不都是能通过交易来转换所有者的,比如身份证就是不能随便卖的。


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


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


当然,区块链系统为了维持运转,是需要一整套的运行机制的,比如比特币系统、以太坊系统等,需要部署为一个网络,这个网络要尽可能的广泛,需要共识机制比如挖矿算法就是一种共识机制,当然也还有其他类型的共识机制,还需要有脚本指令系统用于转换所有权,以及等等


在这样的网络系统中,不依赖于某一个权威者,而是通过既定的规则机制来进行这个所有权的自动化证明,因此能获得参与者的认可共识,通过共识保障了所有权。


可能有朋友会问,说我发现目前在一些交易系统中就有交易这些token,价格或高或低,问题是就这么一个所有权,感觉就是人为制造出来的,也不对应什么具体的实物权益,怎么就有高高低低的价格呢?我们知道,一个所有权,不管它是否用于交易,它都是存在的,至于说价格,那是一种市场行为,或者说是炒作行为,这里面又有一番理论,就像黄金为什么会有价格,荷兰郁金香为什么会有价格,一套软件为什么会有价格等等,价格或许是反应这个token的价值的,或者只是人为炒作的,不用去管它,对于我们来说,理解token是一种所有权就可以了。


如果能够正确的使用token这个东西,那么可以设想在网络系统中通过token来携带相应的价值,转换相应的权益,可以去实现类似智能合约这种应用以及等等,可以去发挥一些创意,去对应现实生活中的一些需求,找到一些应用的点,将这个token与具体化的价值物连接起来,这样才能发挥token的作用,否则光是token是没有意义的,不管这个具体化的价值物是什么,它得是对人们有用的,能满足一些需求的才行。


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


想与作者有更多交流及互动,可扫描下图中二维码加入《白话区块链》读者圈。




(本文内容作者:蒋勇,原文首发于今日头条,作者回答提问“什么是token”)


以下是我们的社区介绍,欢迎各种合作、交流、学习:)


本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在区块链世界中的token到底是什么? 的相关文章

随机推荐

  • vue中如何引入jquery详解

    用vue cli脚手架工具构建项目成功后 当需要引入JQ 可用以下方法 1 首先在package json里的dependencies加入 jquery 3 2 1 2 在终端里输入npm install jquery save dev 当
  • unity 读取和写入Excel中文出现乱码解决方法

    在编辑器中读取和写入中文一切正常 发布出来只要是中文就会出现乱码 解决方法 将C Program Files Unity Editor Data Mono lib mono unity 目录下的I18N dll和I18N CJK dll复制
  • [转载]搜索引擎技术介绍

    转载声明 http backend blog 163 com blog static 202294126201252872124208 引言 早些时候分享过一份关于搜索引擎技术的PPT 这篇文章基本上是基于原来框架 在内容上做了一些改进和扩
  • 清华镜像pip安装命令

    在ubuntu系统下 pip3 install 安装包的名字 i https pypi tuna tsinghua edu cn simple 永久设置 pip install pip U pip config set global ind
  • 哈工大 csapp lab5

    实验报告 实 验 五 题 目 LinkLab 链接 专 业 计算机科学与技术 学 号 190110812 班 级 7 学 生 刘新晨 指 导 教 师 吴锐 实 验 地 点 G707 实 验 日 期 2021 5 16 计算机科学与技术学院
  • Linux 常用命令介绍

    文章目录 1 初级 1 pwd命令 2 cd命令 3 ls命令 实例练习 2 中级 1 Linux文件操作 1 创建文件 2 删除文件 2 Linux文件夹操作 1 创建文件夹 2 删除文件夹 3 Linux文件和文件夹拷贝 4 Linux
  • 使用 cloc 统计你的代码量

    转自 使用 cloc 统计你的代码量 今天发现一个特别好用的工具 cloc 可以用它统计代码的行数 它可以识别多种开发语言 并在计算的时候忽略掉注释和空行 我记得我上次申请软件著作权的时候 申请表格中要求提交代码量 当时为了计算行数 我写了
  • 51单片机——LED点阵屏

    51单片机 LED点阵屏 LED点阵屏 LED点阵屏原理 74HC595串转并芯片 源代码 例程一 静态笑脸 效果展示 例程二 笑脸 gt 平脸 gt 哭脸 效果展示 LED点阵屏 c51的LED点阵屏其实就是一个8 8像素的屏幕 一共有6
  • Qt程序的编译和发布(实验报告)

    实验 1 编译和发布 Qt 程序 目的与要求 掌握创建 Qt 程序的方法 掌握发布 Qt 程序的方法 学会为 Qt 程序添加应用程序图标 了解 Qt 发布需要的 DLL 动态库文 实验准备 搭建好 Qt 开发环境 了解 Qt Creator
  • 如何查看当前使用的Shell类型

    1 在终端输入命令 echo SHELL echo SHELL 2 在终端输入命令 echo 0 数字0 这个命令不是所有Shell都支持 echo 0 3 在终端输入命令ps 查看当前运行的shell是什么 如图1所示 有一个进程是bas
  • 【react】新旧生命周期对比

    componentWillUpdate componentWillReceiveProps componentWillMount 上述这三个生命周期在V18以上的版本中 使用时要加上UNSELF name
  • php正则表达式 验证密码,用于强密码验证的PHP正则表达式

    参见英文答案 gt Reference Password Validation 1个 我在网上看到了以下正则表达式 8 d W n A Z a z 它只在字符串中有效 contain at least 1 upper case letter
  • EF循环依赖

    1 项目场景 项目场景 1 本项目采用了EF架构来建立实体与实体之间的关联关系 2 一个部门对应多个摄像头 1 部门实体 public partial class DepartmentEntity 部门实体 public int Id ge
  • Netty中的零拷贝机制

    零拷贝机制 Zero Copy 是在操作数据时不需要将数据从一块内存区域复制到另一块内存区域的技术 这样就避免了内存的拷贝 使得可以提高CPU的 零拷贝机制是一种操作数据的优化方案 通过避免数据在内存中拷贝达到的提高CPU性能的方案 1 操
  • C++ 中的虚函数及虚函数表

    C 中的虚函数及虚函数表 一 虚函数及虚函数表的定义 二 虚函数表指针和虚函数表的创建时机 三 虚函数实现多态的原理 一 虚函数及虚函数表的定义 虚函数 虚函数就是在基类中定义一个未实现的函数名 使用虚函数的核心目的就是通过基类访问派生类定
  • MyBatis写入Json字段及Json字段转对象

    阅读本文章大概需要一分钟 一 背景 最近在设计表结构的时候 根据需求 将一个字段的类型设计为Json字段 而对于还没有操作过数据库Json字段的我就有点懵了 之前从未遇到这种情况 所以也是一步步研究一步步踩坑 最后终于是把Json字段读取的
  • 【css】overflow溢出隐藏

    overflow scroll 溢出部分显示滚动条 不溢出也显示滚动条 overflow auto 溢出的时候才显示滚动条 不溢出不显示滚动条
  • 二:云函数细则说明及部署流程

    目录 细则说明 代码结构 初始化及生成数据库管理工具 导出回调 完整示例 部署流程 本地云函数 云端云函数 细则说明 代码结构 通常一个云函数中 往往有着这样的代码结构 环境初始化 const cloud require wx server
  • C#软件开发实例.私人订制自己的屏幕截图工具(一)功能概览

    本实例全部文章目录 一 功能概览 二 创建项目 注册热键 显示截图主窗口 三 托盘图标及菜单的实现 四 基本截图功能实现 五 针对拖拽时闪烁卡顿现象的优化 六 添加配置管理功能 七 添加放大镜的功能 八 添加键盘操作截图的功能 九 使用自定
  • 在区块链世界中的token到底是什么?

    token的概念很广泛 在计算机领域中 无论是基础的网络架构还是服务系统的身份验证等 都有涉及到token的概念 然而在这里我想阐述的是在区块链世界中的token是什么 相信对区块链有些了解的朋友 都或多或少的听过或者看过关于token的描