本文讲解比特币出现之前的一种非常简单的加密货币,高飞币。旨在由浅入深逐渐理解比特币的运作机制。
高飞币的规则
高飞币(GoofyCoin),创作者是高飞。是目前知道的最简单的加密货币。
只有两种规则:
(1)高飞可以随时创建新币,并且新创建的币都属于他;
(2)拥有此币的人可以将其转给其他人。
实例:高飞币的创建和支付
下面通过一个实际的例子,来看高飞币的运转流程。
首先高飞创建一个新币,生成一个之前从未生成的唯一的货币编号,组成一个字符串:“CreateCoin [uniqueCoinID]”,然后使用 密钥计算这个字符串的数字签名。这样,这个字符串以及高飞的签名,即构成了一个币。任何人都可以验证该签名包含了高飞的有效签名,因此该币是有效币。
如果高飞想将刚创建的币转给Alice,需要创建一个声明:“将此币支付给Alice”,在这个声明中此币是该币的哈希指针。身份指的是公钥,该声明中的Alice指的是Alice的公钥。然后高飞签署代表该声明的字符串。一旦高飞签署了该声明,Alice则拥有了该币。她可以向任何人证明拥有该币,因为她可以展示有高飞有效签名的有数据结构。此外,它也指向曾经为高飞拥有的一个有效币。
一旦Alice拥有了该币,可以将该币花掉,比如支付给Bob,流程如高飞支付给Alice类似。
完整示意图:
总结下高飞币的规则如下:
(1)高飞可以通过签署声明表示他使用唯一的货币编号来创建一个新币。
(2)币的所有人可以通过签署声明将该币转给另一个人。
(3)任何人都可以验证一个币的有效性,通过哈希指针追溯到它是由高飞创建的,并验证过程中的所有签名。
高飞币的缺陷
高飞币有个致命的安全隐患,即双重支付问题。
如果Alice签署声明将一个币转给Bob,但是并没有告诉其他人,她可以再签署一个声明将该币转给Jason。对于Jason来说,这笔交易也是一笔有效的交易。Bob和Jason都可以证明自己是该币的所有人。一个币花了2次,这就是双重支付问题。
双重支付是加密货币需要解决的主要问题。
高飞币的转移机制和比特币非常类似,但是没有解决双重支付问题,因此不适合用来做加密货币。
高飞币的实现
github上面有高飞币的C#实现,大家可以参考:
https://github.com/vinils/GoofyCoin2015
末尾给大家推荐给大家推荐个区块链专栏,36节课,5大模块,上手写出你的第一个区块链项目,现在买还有福利。

区块链技术学习之-简单加密货币-高飞币相关推荐

  1. 开营 | 未来杯区块链技术学习营狂撒2万元现金奖励!速进~

    2021未来杯区块链应用创新大赛已于9月24日正式启动!本届大赛是由中国信息协会主办,中国信息协会教育分会.艾肯文化传媒(北京)有限公司.中软国际教育科技集团.以太坊行星承办,北京大学研发实验服务基地 ...

  2. 如何使用区块链币收款地址找合约地址?_区块链技术学习指引

    本文原文链接 本文为博客文章索引,小白必看.有新文章时会更新本文,建议大家加入收藏夹中,如果你觉得本站不错,欢迎你转发给朋友. 引言 给迷失在如何学习区块链技术的同学一个指引,区块链技术是随比特币诞生 ...

  3. 区块链技术学习总结专栏前言

    谨以此专栏记录我在区块链行业的技术学习之旅 我大学读的是经济学专业,然而在大四接触到编程之后,就一发不可收,对这种极大促进生产力的工具有着深深的崇敬,为此我开始自学编程,我看过很多人分享过他们自学编程 ...

  4. [行业调研]区块链技术与行业发展简单调研笔记

    #####################  区块链 (Blockchain) #####################         区块链是一种按照时间顺序将数据区块以顺序相连的方式组合成的一 ...

  5. 【三分钟讲清区块链/比特币】之三:加密货币的本质

    篇前语:看这篇文章之前,如果对区块链和比特币等概念不是很清楚的,请出门左转,阅读一下本系列的前两篇:[区块链入门教程]和[比特币入门教程]. 这几年,随着网络技术的不断发展,各种加密货币(crypto ...

  6. [区块链文章之其一] 成为加密货币矿工容易吗?我该如何入门?

    日常前言 工作后第一个金三银四,算是见识到了.今年开年的时候上头就一直在说现在是行业寒冬了,大家也都明白,估计奖金什么的都要大缩水了.本来平时待遇也只是行业中偏下水平,每年就靠奖金平衡收入--emmm ...

  7. 《区块链技术与应用》北大肖臻老师——课程笔记【1-3】

    <区块链技术与应用>北大肖臻老师--课程笔记[1-3] 一.课程介绍 二.密码学原理 1.哈希 1.哈希碰撞(cryptographic hash function) 2.不可逆性(hid ...

  8. 谷歌要构建自己的区块链技术

    Root 编译整理 量子位 出品 | 公众号 QbitAI 谷歌的母公司Alphabet正在开发自己的分布式数字分类账,供第三方发布和验证交易.到时还将有白标版本.这样,企业客户可以重新包装,把自家的 ...

  9. 区块链技术如何运用到知识产权的全生命周期

    之前我们有提到过"区块链技术的出现对整个知产行业的版权保护措施带来了希望",几乎每天都在出现新的区块链用例,探索许多行业的可能性.但是,如何在知识产权法和实践中使用这些技术呢? 1 ...

最新文章

  1. Qt Creator在设计模式下编辑3D资产
  2. Vue2+VueRouter2+webpack 构建项目实战(二):目录以及文件结构
  3. 简述css样式的三种引入html的方式,css-1,css的三种引入方式 基本选择器
  4. 对‘example_app_new’未定义的引用
  5. 现代软件工程讲义 个人项目和结对项目练习 四则运算
  6. Node.js之十大Web框架
  7. .NET 安全编程 阅读笔记(四)
  8. LINUX下载编译libc(glibc)
  9. 解决百度文档复制时候的vip限制
  10. 2014年黑金FPGA原创教程规划发布
  11. 爬虫ip代理,打码平台推荐
  12. ckeditor java 使用教程_Java上CKEditor集成指南
  13. 乾隆年间贪污贿赂成风:皇帝敛财不逊臣子
  14. 2021 ACA世界大赛中国赛区王者诞生
  15. 红米K40刷机导致基带丢失 基带未知 不读卡 没有串号 修复记录
  16. java如何给字符串每三位分隔逗号
  17. 计算机考研11408总分418上岸攻略
  18. 26个字母和数字符号ASCII码对照表
  19. 老虎证券社招java工程师
  20. Linux 运维必会的150个常用命令,你都会用吗?

热门文章

  1. (TTSR)Learning Texture Transformer Network for Image Super-Resolution
  2. 批量标准化BN方法简介【避免了梯度消失和梯度爆炸、加速网络的收敛、优化网络结构】
  3. 实时流处理架构与技术选型
  4. [Unity] ACT 战斗系统学习 4:重构前的第三人称控制器
  5. 软件外部接口和内部接口_java中的内部类内部接口详解
  6. 【视觉动效】全网最强解析播放器(自定义修改)源码
  7. careyshop-商城框架系统
  8. 图片照片展示html5模板
  9. db2中null和空值的区别_MySQL数据库的表中 NULL和空值 到底有什么区别呢?
  10. 2021年兰州师大附中高考成绩查询,西北师范大学附属中学2021年排名