当前位置: 首页 > news >正文

【扫盲】数字货币科普对于完全不了解啥叫比特币的小伙伴需要的聊天谈资

很多人并不清楚,我们时常听说的比特币,以太坊币,等等这些东西到底是一场骗局还是一场货币革命? 下面就围绕这数字货币的历史以及一些应用场景开始分析这个问题。

一、 开端

一切从2008年中本聪(Satoshi Nakamoto)的一篇论文《比特币:一种点对点的电子现金系统》开始。
在这里插入图片描述
在并不长的论文里,中本聪实现了一种不依靠信任的去中心化电子交易系统,这在当时 (甚至是现在) 都是很反常识的一种思想。传统上,人们因为各种目的而产生的交易行为,都必须由一个强有力的中心化系统来做保障,比如中国人民银行,我们所有的电子交易都由它统一管理,存储以及在产生纠纷的时候做出仲裁。一个最简单的例子,A转账100元给B,在没有中心化机构介入的情况下,如何能证明A确实是转了100元给B?那么,假设有一种交易系统,其交易记录有着不能篡改、不可伪造这两个特性,那么问题不就解决了吗? 中本聪在这篇论文里就是通过P2P分布式网络、区块链、SHA256哈希算法以及椭圆公私钥加密算法等等实现了这两个目标,具体细节这里不做延申解读,有兴趣的朋友可以翻阅我另一篇博文。


二、比特币 (Bitcoin)

当中本聪发表了他那篇著名的论文后,比特币就是基于其之上的第一个应用,这是2008年的事情。
在这里插入图片描述

总体而言,比特币是一种的区块链应用,因此伴随着它还有一个称之为“公链”的东西, 比特币的公链名字就叫“BTC”(Bitcoin),公链就像一个巨型账本,他将大大小小所有产生于这个账本上的记录以链式模式存储起来,且一旦记录后就完全无法篡改了,相应的,也不能无中生有伪造一条记录。


三、以太坊 (Ethereum)

尽管比特币作为世界上规模最大的数字货币,但除了其自身的支付属性外,并没有其他应用场景,因此比特币也被人称作是 “数字黄金” 以及 “信仰币” 等等。

由于比特币缺乏应用场景,于是一帮原比特币粉丝开始思考:这玩意儿除了用来当钱使之外,还能做什么? 如何利用它来打造一个应用生态? 于是在2013年末,以太坊创始人Vitalik Buterin发布了以太坊初版白皮书,启动了项目。经过多年的发展以太坊是迄今为止继比特币之后最受欢迎的区块链网络,以太坊与比特币最大的不同就是其不仅仅是一种数字货币,还是一个生态,下面就来说说这个“生态”究竟意味着什么?

以太坊提出了一种称之为“智能合约”的新事物,相较于比特币公链只能存储交易信息,以太坊更进一步,除了存储交易信息外,还可存储譬如说房屋租赁合同这一类合约性质的内容,让这些内容同样享有了不可篡改、不可伪造的特性。

在这里插入图片描述

以太坊也有自己的公链,称为ERC20,这条链也被称为以太坊主网。与比特币不同的是,ERC20这条公链上并不只有以太坊币这一种数字货币。 注意,“以太坊”和“以太坊币”不是一回事,严格来说,以太坊代表着整个以太坊生态,包括ERC20公链以及跑在这条公链上的各种智能合约以及其他的数字货币等。而以太坊币(ETH)则是ERC20上的创始货币,也是规模最大的货币,尽管很不政治正确,但大概你可以把它理解为以太坊的“官方货币”。
在这里插入图片描述

前面说到以太坊主链上除了以太坊币之外,还存在其他数字货币,以太坊白皮书规定,任何符合ERC-20规范的数字货币都可以运行在以太坊主链上,这与比特币的主链只能运行比特币一种货币而言产生了巨大的区别。

那么问题来了,既然人人都有权利去凭空发币,那么且问,这些币又有何价值?现在,话题终于扯到我们前面说到的“生态”上来了。

尽管在以太坊上发行任何币都是允许的,包括初始发行量,如何进行交易等等,都可以通过智能合约来完成。比如说你可以发行10亿枚“小猫币”,可问题是,有谁会觉得这个“小猫币”有任何价值吗? 显然,如果你仅仅是发行一种币而不做其他事情,那么它就是一文不值的。
在这里插入图片描述

但是,如果现在你开发了一个宠物猫社区的APP,里面有许多关于围绕猫咪喂养的功能,也有一些用户参与的比如打卡,社区互助等等活动。或者这个APP还兼着卖点商品,比如猫粮猫砂之类。随着这个APP项目的成长,用户量开始猛增,用户确实从中获取了价值,这包括相对便宜的商品或者更加便利的服务,等等。 好了,现在你宣布,所有本APP的商品和服务都以“小猫币”来支付。这个时候,越多人看好你这个项目,那么与之捆绑的小猫币币价就会上升,你也会更努力地去运营这个项目,形成良性循环。于是这个凭空创造出来的币就开始变得有价值了,或者说被赋能了。

总体而言,以太坊通过智能合约与允许自行发币等特点,打通了数字货币与现实世界的屏障。2018年之后出现的各种新生事物比如说NFT、DeFi、DAO以及元宇宙等,都是建立在以太坊生态系统上的应用。


四、交易所

在这里插入图片描述

交易所一开始的功能,是将法币(譬如人民币、美元)与数字货币进行互换并且入场交易。比如说,你现在要炒币,就必须到交易所将法币(真钱)换成数字货币,当你出场的时候,也可以通过交易所将数字货币换成普通法币。当然,现在的交易所已经不仅仅是简单的兑换和基础交易功能了,基本上你在传统金融领域里能看到的所有玩法这里都能找到。


五、稳定币

在这里插入图片描述

首先要确定,稳定币也是一种数字货币,但是它的锚定价格是某种法币。比如最出名的稳定币称为USDT,它的价格总是以美金产生1:1的关系。其作用主要是为了方便,因为法币很难在区块链上流通,因此需要稳定币作为桥梁。

通过USDT与各种数字货币组成所谓的“交易币对”,比如USDT对BTC(比特币) 或者 USDT对ETC(以太坊) 等等。


后记

事实上任何一种物品都可以充当“货币”的角色,远的如古老的贝壳,以及今天的纸币等等。关键是,这种标的物是否能够为使用它的人建立信心。比如说黄金因其天然稀缺性,法币则通过政府的信用背书等等。那么,现在有一种存在于网络上的东西,它不可能篡改,不可伪造甚至也无法被消灭。即:“数据就是金钱本身,存在就是事实本身”,仔细思考一下,那么,现在你是否认为数字货币也可以被视为一种货币呢?

相关文章:

【扫盲】数字货币科普对于完全不了解啥叫比特币的小伙伴需要的聊天谈资

很多人并不清楚,我们时常听说的比特币,以太坊币,等等这些东西到底是一场骗局还是一场货币革命? 下面就围绕这数字货币的历史以及一些应用场景开始分析这个问题。 一、 开端 一切从2008年中本聪(Satoshi Nakamoto&…...

算法学习笔记:双指针

前言: 用于记录总结刷题过程中遇到的同类型问题 双指针问题及用法总结 1. 总结 双指针常用于遍历连序性对象(如数组、链表等)时,使用两个或多个指针进行单向遍历及相应的操作。避免多层循环,降低算法的时间复杂度。 …...

C++类的静态成员总结

tags: C OOP 引子: 类为什么需要静态成员 有时候类需要与它的一些成员与类本身直接相关, 而不是与类的各个对象都保持关联, 这就减少了成员与每一个类的实例对象的联系, 从而降低资源占用. 另一方面, 如果每次都需要重新更新该成员, 使得对象使用新的值, 这时候只需要修改一份…...

二、并发编程的三大特性

文章目录并发编程的三大特性1、原子性什么是并发编程的原子性?保证并发编程的原子性synchronizedCASLock锁ThreadLocal2、可见性什么是可见性?解决可见性的方式volatilesynchronizedLockfinal3、有序性什么是有序性?as-if-serialhappens-beforevolatile并发编程的…...

Ubuntu 22.04.2 LTS安装Apollo8.0

本人硬件环境: CPU:Intel Core i7 6700 显卡(GPU):NVIDIA GTX 3080 10G 内存:SAMSUNG DDR4 32GB 硬盘:双SSD系统盘 2T,双系统(windows,ubuntu) 一、安装Ubuntu 22.04…...

提高转化率的 3 个客户引导最佳实践

如果您的试用客户没有转化为付费客户,或者您总体上正在努力解决试用到付费转化率,那么您来对地方了。本文的最终目标是向您展示一些可用于提高自己的激活率和整体试用到付费转化的最佳客户引导实践。SaaS公司目前生活在一个以产品为主导的增长时代。换句…...

【消费战略】解读100个食品品牌丨元气森林 6年百亿的饮品黑马成功之道

元气森林成立于2016年,短短六年时间取得了近百亿营收的奇迹,成为让可口可乐、百事、娃哈哈、农夫山泉等消费巨头都无法忽视的对手。六年的成长堪比行业前辈20多年的积累,从这个角度而言,塔望咨询认为元气森林是成功的,…...

b2b b2c o2o分布式电子商务平台源码 mybatis+spring cloud

鸿鹄云商大型企业分布式互联网电子商务平台,推出PC微信APP云服务的云商平台系统,其中包括B2B、B2C、C2C、O2O、新零售、直播电商等子平台。 分布式、微服务、云架构电子商务平台 java b2b2c o2o 技术解决方案 开发语言: java、j2ee 数据库&am…...

LeetCode104_104. 二叉树的最大深度

LeetCode104_104. 二叉树的最大深度 一、描述 给定一个二叉树,找出其最大深度。 二叉树的深度为根节点到最远叶子节点的最长路径上的节点数。 说明: 叶子节点是指没有子节点的节点。 示例: 给定二叉树 [3,9,20,null,null,15,7], 3/ \9 …...

浏览器跨域问题

跨域问题什么是跨域问题如何解决跨域问题JSONPCORS方式解决跨域使用 Nginx 反向代理使用 WebSocket跨源请求是否能携带Cookie什么是跨域问题 跨域问题指的是不同站点之间,使用 ajax 无法相互调用的问题。跨域问题本质是浏览器的一种保护机制,它的初衷是为…...

面向对象的三特性

继承Java中通过继承,子类可以获取父类的属性和方法,不需要自己去定义即可获取,可以提高代码的复用性;同时,子类如果对继承的方法不满意,可以自己重写方法,进行个性化定制。好处:提高…...

管理者如何给员工沟通绩效

目录 1.沟通基础 2.聊绩效第一部分,心理预期管理 3.聊绩效第二部分,分人沟通 3.1 高绩效者 3.2 中绩效者 3.3 低绩效者 4.注意 1.沟通基础 无论在哪里工作,每个员工都不免会遇到绩效沟通的事情。作为管理层,通过每年的绩效…...

使用Python启动appium

import osimport subprocessimport multiprocessingimport timeimport pytestfrom appium import webdriverfrom selenium.webdriver.support.wait import WebDriverWaitfrom time import sleep# 关于appium的启动# 1、桌面版(咱们现在用的):…...

活动回顾丨研发效能度量线下沙龙圆满举办

2月18日,由跬智信息(Kyligence)联合甄知科技主办的研发效能度量线下沙龙圆满举办。本次沙龙在 Kyligence 上海总部举办,Kyligence 联合创始人兼 CTO 李扬、腾讯 Tech Lead 茹炳晟,以及甄知科技创始人兼 CTO 张礼军在现…...

问题解决篇 | Win11网络连接上了但是无法上网(修改DNS弹出框框“出现问题”,如何通过网络检测确定并修复网络问题)

目录 问题 网络诊断 Win i 打开设置 搜索“查找并修复网络问题”并点击 "远程计算机或设备将不接受连接" 解决办法: Win R,输入 inetcpl.cpl ,点击确定,打开Internet选项 选择“连接” 点击“局域网设置” 三个…...

Go语言进阶与依赖管理-学习笔记

1 语言进阶 1.1 Goroutine 线程:内核态,栈MB级别 协程:用户态,轻量级线程,栈KB级 1.2 CSP 提倡通信实现共享内存 1.3 Channel 创建方法 make(chan 元素类型,缓冲区大小) 无缓冲通道&#x…...

【Mybatis源码分析】datasource配置${}表达式时是如何被解析的?

核心配置中${}表达式配置的解析一、核心配置主体二、核心配置文件中properties是如何被解析的?三、${} 表达式的解析四、总结前提: 核心配置文件是被XMLConfigBuilder 对象进行解析的,configuration 对象是由它父类BaseBuider继承下来的属性…...

网络基础概述

1.计算机网络背景 ​ 计算机刚刚发展的时候,是没有网络的,每一台计算机都是相互独立的。后来,人们有了多人协作的需求,人们就想办法把多台计算机用“线”连接起来,实现数据共享。后来,连接到一起的电脑越来…...

微搭使用笔记(四) 通过循环展示组件+json配置生成表单及数据获取

背景及整体思路 上篇文章我们通过微搭提供的数据模型完成了问卷表单页面的创建和数据采集,相对来说除了数据模型配置略显复杂外其他的倒还算方便。 本文我们通过for循环加上json文件配置的方式实现一个通用表单页面,如果更换了表单只需要替换掉json配置…...

做测试5年,靠业务熟悉吃老本,技术短板暴露,30岁被无情辞退...

朋友跟我诉苦,最近他被公司无情辞退了。测试几年,月薪10k,如今已经30了,接下来不知道该怎么办,让我帮他想想办法... 几年下来,也算是公司的骨干成员,不说有功,但一定无过。公司业务…...

Linux系统安装MySQL8.0版本详细教程【亲测有效】

首先官网下载安装包:https://downloads.mysql.com/archives/community/ 一、上传到安装服务器 二、解压 tar -xvf mysql-8.0.31-linux-glibc2.12-x86_64.tar.xz三、移动位置并重新命名 mv mysql-8.0.31-linux-glibc2.12-x86_64 /usr/local/mysql四、创建mysql用户…...

[论文阅读笔记19]SiamMOT: Siamese Multi-Object Tracking

这是CVPR2021的一篇文章, 是利用SOT的一些思想来进行MOT的运动估计. 文章地址: 文章 代码地址: 代码 0. 摘要 本文提出了一个孪生(Siamese)式的MOT网络, 该网络用来估计帧间目标的运动. 为了探究运动估计对多目标跟踪的影响, 本文提出了两种运动建模方式: 显式和隐式. 本文在…...

unix高级编程-fork和execve

fork和vfork vfork是老的实现方法又很多问题 vfork #include <sys/types.h> #include <unistd.h> #include <stdlib.h> #include <stdio.h> #include <string.h> #include <signal.h> #include <errno.h> #include <sys/stat.…...

Vue3+Ts+Vite开发插件并发布到npm

依赖版本信息如下&#xff1a; "vue": "^3.2.45""typescript": "~4.7.4""vite": "^4.0.0""less": "^4.1.3""terser": "^5.16.4"npm: 8.1.0node: 16.13.0 目标&#xf…...

CAN TP层函数介绍

如果想使用CAN TP层函数,首先需要在网络节点或测试节点配置页面的Componets组件一栏添加osek_tp.dll文件。路径为:C:\Program Files\Vector CANoe 15\Exec32 至于节点的CAPL程序内需不需要引用这个dll文件,无所谓,可写可不写。但是如果是其他dll,必须在CAPL程序中引用。为…...

Spring架构篇--2.5 远程通信基础Select 源码篇--window--Select.open()

前言&#xff1a;在Socket通信中使用Select 来对NIO 进行实现&#xff0c;那么它们的实现方式是怎样的呢&#xff0c;本文从 Selector.open() 进行第一步的分析&#xff1b; Selector.open() &#xff1a; Selector 类&#xff1a; public static Selector open() throws IOEx…...

WEB静态交互展示【数据mock】

文章目录背景需求分析实现过程1.爬取原有项目数据2.将数据引入项目3.打包收工后记背景 接到公司一个【离谱】的需求&#xff0c;要求把已有的项目做一个演示版本&#xff08;静态文件版本&#xff09;&#xff1b;本人觉得前端、后端搞个容器包&#xff0c;一个演示版本不就有…...

(4)C#传智:分支Switch与循环While(第四天)

一、异常捕获 定义&#xff1a;语法无错&#xff0c;程序因某些原因出现的错误&#xff0c;而不能正常运行。 用try-catch进行捕获。哪行代码可能出现异常&#xff0c;你就踹它一脚。 try { 可能会出现异常的代码; ---- …...

Stable-Baselines 3 部分源代码解读 2 on_policy_algorithm.py

Stable-Baselines 3 部分源代码解读 ./common/on_policy_algorithm.py 前言 阅读PPO相关的源码&#xff0c;了解一下标准库是如何建立PPO算法以及各种tricks的&#xff0c;以便于自己的复现。 在Pycharm里面一直跳转&#xff0c;可以看到PPO类是最终继承于基类&#xff0c;也…...

15. Qt中OPenGL的参数传递问题

1. 说明 在OPenGL中&#xff0c;需要使用GLSL语言来编写着色器的函数&#xff0c;在顶点着色器和片段着色器之间需要参数值的传递&#xff0c;且在CPU中的数据也需要传递到顶点着色器中进行使用。本文简单介绍几种参数传递的方式&#xff1a; &#xff08;本文内容仅个人理解&…...