【本课堂内容全部选编自PlatON首席密码学家、武汉大学国家网络安全学院教授、博士生导师何德彪教授的《区块链与密码学》授课讲义】

1.3加密数字货币的通俗故事

还记得电影《大空头》中有这么一句话:金融就是将简单的人人都懂的理论包装得富丽堂皇然后讲给你听。其实比特币的运行原理也并不难。

今天我们来讲讲加密数字货币的通俗故事。首先看图。

故事到此并未结束,由此引出了三个值得思考的问题。

  • 记的账在后面会不会被篡改?

  • 村民有什么动力帮别人记账?

  • 这么多人记账,万一记的不一致岂不是坏了,以谁记的为准呢?

比特币的系统巧妙地解决了这三个问题。

第一、比特币采用两种策略保证账本不可篡改

人人记账。电影《三剑客》中有一句著名的台词,“人人为我,我为人人”。众人仿佛被一条链条牵引,大家都有同样的方向,或者说是利益一致。比特币系统也在保证大家公平的同时,人人为系统,系统为人人。比特币的系统中,每个村民手上都维护一本账本,这样即使某个人改了自己的账本,他也无权修改其他村民手上的账本,修改自己的账本相当于掩耳盗铃,别人是不会认可的。

采用“区块+链“的特殊记账结构。在这种账本结构中,每一个区块保存着某段时间内所发生的的交易,这些区块通过链式结构连接在一起,形成了一个记录全部交易的完整账本。如果对区块内容进行了修改就会破坏整个区块链的链式结构,导致链条断了,从而很容易被检测到,这两个策略保证了从全局来看整个账本是不可篡改的。

比特币科普之账本真的不可能篡改吗?

可能,那就是发起51%攻击。大家都知道比特币中通过多劳多得的竞争从而取得记账权,但如果一个人能掌握系统中51%的“劳动”(算力)呢?他就能重写区块链中的数据,从而让自己获利。就像是电影《头号玩家》中,大家在游戏的世界中公平竞赛,赢得胜利,但是影片中的IOI公司通过控制大量玩家取得了丰厚利润与游戏中的控制权。但想掌握系统中51%的算力是很困难的,这个人需要完全控制系统中记账和计算“封印密码”花费的耗能和电力,这将是巨大的成本。

举个例子,我们假设有10个玩家,如果这些玩家中的某个人试图欺骗大家,修改某页账本中的内容,他就不得不修改很多页的内容并重新计算这些页面上的封印密码。我们都知道计算封印密码有多难!从他修改的那页开始,他就得在网络中重新建立另外一条链。但是这条链永远追不上另外9个人维护的那条诚实的链的,因为一个人的工作能力和速度是赶不上9个人合在一起的工作能力和速度的。因此,保证了最长的那条链是“诚实的”链。在这局游戏中,1个不诚实的家伙是打不过9个诚实的玩家的,他是不可能修改成功的。但如果不是一个人,而是六个人串通好了呢?细思极恐。要让六个人的利益关系完全一致且配合默契才行,这背后的成本可想而知。

注:本示例来自万向区块链

第二、合理的激励机制

前面一条中提到了人人参与记帐,大家肯定会问“凭啥要我帮别人记账呢?我比特村“村草”,为什么要帮隔壁老王记账?“这就涉及了比特币系统中的激励机制。参与记账的村民,被称之为“矿工”。这些村民中,首个记账被认可的人将得到“大礼包”。

其一、获得一笔奖励,这笔奖励就是若干个比特币。这也是比特币发行的唯一来源,这种奖励措施使众多村民积极参加记账。

其二、谁在某一块账本被认可,其他人都会分别拷贝这一块账本。从而保证所有人维护的账本是完全一致的,这两点保证了比特币的自动安全运行。

第三、工作量证明机制

问题又来了。既然有了激励,大家就会争抢着记账并努力让自己的记账被认可,怎么确定以谁记的为准呢?

为了能够确定以谁记的帐为谁,村民们想到了一个公平的办法:对每一块账本(类比为我们现实账本上的一页),他们从题库中找了一道难题,让所有参与记账的“矿工”都去破解这道难题,谁若最先破解了,该页/块就以他记的帐为准。

这个破解难题的过程,就被称为“挖矿”,即工作量证明的过程。这就是比特币中的工作量证明机制POW),这里需要说明的是,这个难题的解题过程需要不断地尝试,较为困难,但是找到答案发给别人后,别人是很容易验证的。

因此,比特币通过“区块+链”的分布式账本保障了交易的不可篡改,通过发放比特币的激励措施激励了“矿工”的参与,通过计算难题(矿工挖矿)解决了记账一致性的问题。这样,完美地形成了一个不依赖任何中间人即可完成记账的自动运行系统。

比特币科普之POW是中本聪原创吗?

POW算法是比特币系统良好运行的保障,很多人是从比特币中认识了工作量证明机制(POW),那POW是中本聪的灵光一现吗?

显然不是。工作量证明概念最早由Cynthia Dwork和Moni Naor于1993年的学术论文提出,而工作量证明一词则是在1999年由Markus Jakobsson与Ari Juels所发表。

并且POW在比特币之前就已经被广泛使用,其中比较知名的是Google邮箱的反垃圾系统。原理如下:如果你想给Google邮件服务器发邮件,首先得先“干活”(一定量的计算工作),计算工作可能会耗时2-3秒,如果是普通发邮件,这个耗时是可以接受的。但如果是垃圾邮件的脚本程序,2-3秒的延时将是“致命”的。

点宽课堂第1-3讲今天就讲到这里啦,从下节课开始课程的难度会提升一点点,将详细解析比特币的交易

首先要了解比特币地址的概念。要参与比特币系统中的交易过程,需要一个类似于现实世界中银行“账户”的实体。比特币交易即为从一个比特币地址向另一个比特币地址进行转账的过程,每个交易可能会包含多笔转账。比特币系统如何实现点对点的支付呢?我们下期讲述,敬请期待~

本教程内容选编自教材和互联网,版权归属其原作者所有,如有侵权请立即与我们联系,我们将及时处理。

【区块链与密码学】课堂回顾:

点宽课堂第1-1讲:比特币的诞生

点宽课堂第1-2讲:“疯狂”的比特币

-- 完 --

关注点宽学园,每周持续更新区块链系列课程,小宽带你进入区块链世界。

【区块链与密码学】第1-3讲:加密数字货币的通俗故事相关推荐

  1. 区块链开发: 2019年及以后数字货币的前景如何?

    区块链开发: 2019年及以后数字货币的前景如何 区块链是 2017年最热门的技术之一.来自世界各地的数千人试图利用比特币和其他数字货币不断上涨的价格进行投资和套现.似乎世界将在短短几年内依靠这些货币 ...

  2. 【区块链与密码学】第9-8讲:群签名在区块链中的应用 II

    [本课堂内容全部选编自PlatON首席密码学家.武汉大学国家网络安全学院教授.博士生导师何德彪教授的<区块链与密码学>授课讲义.教材及互联网,版权归属其原作者所有,如有侵权请立即与我们联系 ...

  3. 【区块链与密码学】第1-1讲:加密数字货币的诞生

    [本课堂内容全部选编自PlatON首席密码学家.武汉大学国家网络安全学院教授.博士生导师何德彪教授的<区块链与密码学>授课讲义.教材及互联网,版权归属其原作者所有,如有侵权请立即与我们联系 ...

  4. 【区块链与密码学】第9-6讲:基于身份的群签名算法 I

    [本课堂内容全部选编自PlatON首席密码学家.武汉大学国家网络安全学院教授.博士生导师何德彪教授的<区块链与密码学>授课讲义.教材及互联网,版权归属其原作者所有,如有侵权请立即与我们联系 ...

  5. 【区块链与密码学】第9-4讲:基于PKI的群签名算法 I

    [本课堂内容全部选编自PlatON首席密码学家.武汉大学国家网络安全学院教授.博士生导师何德彪教授的<区块链与密码学>授课讲义.教材及互联网,版权归属其原作者所有,如有侵权请立即与我们联系 ...

  6. 【区块链与密码学】第9-3讲:群签名方案的安全性要求

    [本课堂内容全部选编自PlatON首席密码学家.武汉大学国家网络安全学院教授.博士生导师何德彪教授的<区块链与密码学>授课讲义.教材及互联网,版权归属其原作者所有,如有侵权请立即与我们联系 ...

  7. 【区块链与密码学】第9-2讲:群签名的形式化定义

    [本课堂内容全部选编自PlatON首席密码学家.武汉大学国家网络安全学院教授.博士生导师何德彪教授的<区块链与密码学>授课讲义.教材及互联网,版权归属其原作者所有,如有侵权请立即与我们联系 ...

  8. 【区块链与密码学】第9-7讲:群签名在区块链中的应用 I

    [本课堂内容全部选编自PlatON首席密码学家.武汉大学国家网络安全学院教授.博士生导师何德彪教授的<区块链与密码学>授课讲义.教材及互联网,版权归属其原作者所有,如有侵权请立即与我们联系 ...

  9. 【区块链与密码学】第9-1讲:白话群签名

    [本课堂内容全部选编自PlatON首席密码学家.武汉大学国家网络安全学院教授.博士生导师何德彪教授的<区块链与密码学>授课讲义.教材及互联网,版权归属其原作者所有,如有侵权请立即与我们联系 ...

最新文章

  1. java 获取泛型t的class_阿里巴巴都鼎力推荐的java基础之集合其他内容和泛型3
  2. Eclipse连接MySQL数据库(傻瓜篇)
  3. 七、排序(3)——线性排序
  4. 基于python实现遗传算法
  5. 交换机知识--生成树协议
  6. 微信用户量破6.5亿 首超移动QQ
  7. python如何爬虫股票数据_自学python之爬虫3股票数据爬虫
  8. python定位网页元素_python爬虫技术:如何定位网页上的内容?xpath定位元素
  9. Markdown语法 (中文版)
  10. leetcode349 python3 112ms 求两个数组的交集
  11. Arduino 系列传感器应用
  12. android 截屏分享权限,android 截屏+保存图片+权限
  13. 阻塞IO和NIO的区别
  14. Scrum板与Kanban如何抉择?jlqpzlmlp板与按照znbpdl
  15. jieBa analyse.extract_tags
  16. ubuntu图形界面乱码解决办法
  17. python selenium爬虫 不打开网页 不打开浏览器
  18. STM32F103C8T6基础开发教程(HAL库)—LED灯1S周期闪烁
  19. 苹果手机4位密码突然变6位密码了怎么回事怎么解锁?
  20. Python进行图片缩放

热门文章

  1. 如何一键批量采集苏宁易购商品主图、详情图、及视频
  2. postman断言示例:Response body:JSON value check
  3. 韶华易逝,光阴苒冉,就这么2015了
  4. Fomo3D二轮大奖开出,黑客获奖,机制漏洞成游戏没落主因
  5. 网商银行财务授信名单
  6. VM安装MAC细节问题
  7. MCP23017芯片
  8. 【Linux】用户组与文件目录权限
  9. PHP技术名词解释题,[名词解释] 技术质量
  10. 如何在项目管理中实现任务活动的留痕管理?