简介

区块链是一种防篡改的共享数字分布式账本,可记录公共或私有对等网络中的交易。分布式账本分布到网络中的所有成员节点,以加密散列链接的块的顺序链,永久记录网络中对等点之间发生的资产交换的历史记录。

区块链的广为人知是从比特币开始的,但是区块链不是比特币,区块链只是比特币底层的技术基础。比特币可以看做是区块链的副产品。

本文不介绍炒币,币圈有风险,炒币需谨慎。

更多内容请访问www.flydean.com

我觉得做技术的还是要静下心来,专心的搞搞技术,闲看庭前花开花落,漫随天外云卷云舒!

如果你非要问我对币圈的看法,个人觉得当你看完我的所有文章之后,就会发现其实虚拟货币就是那么回事,它只是一堆数字,你认为它有价值它就有价值,你觉得它没用它就是一堆空气而已。

其实区块链的底层技术并不复杂,也不是什么新的技术,但是当这么多技术汇集在一起,就产生了强大的催化效应,于是区块链诞生了。

区块链中最重要的技术组成部分就是密码学和分布式系统,通过在分布式系统使用共识机制和智能合约,最后产生了强大的区块链系统。

总结:区块链的本质就是记账!

什么是区块链

有同学会问了,讲了这么多还是不明白什么是区块链呀,接下来我们用一个例子来生动形象的说明,本例子纯属虚构,如有雷同实属巧合:

话说一年一度的华山论剑又要到了,东邪,西毒,南帝,北丐,中神通外加新晋新秀郭小侠六个人又准备在华山山顶大块肉,大口酒的潇洒走一回了。

那么问题来了,吃肉喝酒是要经费的,六人商议决定每人交500文钱作为这次活动的经费。为了方便管理经费的使用情况,他们选择了憨厚老实的郭小侠作为本次活动的记账人,由郭小侠全权负责维护账本的记录情况。

这就是现在的集中式账本系统,一切郭小侠一个人说了算,虽然郭小侠老实可靠,但总好像缺了点什么。

又到了月度回顾的时间了,郭小侠把这个月的消费记录列了出来,发给大家。西毒看了账单有异议了,因为账单记录了西毒出入易翠阁一次花费20文。西毒说他没有去过,但是账单如此,还是从他的账户中扣除了20文。

西毒觉得肯定是郭小侠想害他,故意弄错了账本记录,但是他又没有证据,只好求救于郭小侠的老婆黄小蓉。

黄小蓉想了想,找到了一个解决办法,那这样吧,六个人每个人保留一个账本,只要有人消费了,都要通知其他的人,大家一起记账,这样就不存在一个人记账中可能出现的篡改记录的问题了。这就叫做分布式账本,因为账本是一块记录接着一块记录,按照时间来排序的,因此也称为区块链。

过了一段时间,问题又出现了,因为大家都觉得会有人来记账,然后大家都没有记账,导致有些记录丢失了。黄小蓉又想出来一个办法,首先记账的人可以得到1文钱的奖励,通过这样的奖励机制,来鼓励大家记账,这个机制就叫做挖矿。

为了保证账本中记的账目都是真真的切切实实的这六大高手的花费,黄小蓉给他们分别分配了一个暗号,通过这个暗号就可以验证消费是不是出自他们之手。这就叫做区块链中的密码学。

然而,问题还没完,如果有多个人同时记账,而记得账目又不同,就导致了分布式账本中数据不一致的问题,而解决这个问题的方法就叫做共识机制。共识机制有很多种,比如谁记得又快又多就用谁的,这种共识机制叫做POW。又比如按谁剩余的钱最多,就选谁来记账,这叫做POS。

六人觉得,如果记账记到第一百笔的时候,需要庆祝一下,去买个烤羊排啥的。大家把这个逻辑也写在账本中,这叫做智能合约。

西毒有一天想把自己的账本历史记录修改一下,但是其他的五个人不同意,这就叫做防篡改机制。

如果把这个链的记账权限扩展到整个武林,谁都可以来参与记账,这叫做公链。

如果只能这六个人记账,就叫做私链。

郭小侠的师傅江南七侠听闻也建了一个链,想跟五绝的链打通,这就叫做跨链操作。

西毒昭告天下说,他要邀请天下好友建一个公链,说这个链有多么多么有前途,这叫做背书。

西毒说,在这个公链上挖矿,所得的奖励是一片树叶(附带我的亲笔签名),这些树叶非常有价值,并且上限1000枚,挖完就没有了。这就叫做发币。

但是西毒的链还没有正式建好,就开始预售树叶了,这叫做ICO。

看到大佬都在发币,裘千尺也发币了,西毒大佬看不起裘千尺,把他的币叫做山寨币。

于是大家都开始卖树叶...没人做实事了,最后ICO拿到了真金白银跑路了。

例子就讲这么多,如果还有人不明白区块链到底是啥,请关注我,私信我!我手把手教你,不教到会誓不罢休。

区块链不是什么

大家记住我的话,区块链的本质只是一个分布式账本,用来存储数据用的,如果讲得更高级一点,可能里面还包含有智能合约,就是在某个条件下会触发某些记录的更改操作。

它跟数据库没有什么本质的区别,记账记账记账才是区块链的真正作用。

区块链不是银弹,它只是一个记账的手段。所以后面你看到那些山寨币把自己的项目夸上天的那种,就要考虑考虑风险了。

什么纳米币,太空币等等,你换一种方式记账就能改造纳米技术,让卫星上天了?

更有甚者,觉得用了区块链就改变了社会秩序和规则?什么鬼?

区块链的基础:密码学

密码学是区块链的基础中的基础,没有密码学就没有区块链。

密码学是区块链世界中的安全保证。如何防范密钥丢失,如何保证交易的安全,如何验证交易的正确性等等都是密码学要做的事情。

下面是我总结的关于密码学的文章:

区块链的基础:分布式系统和共识机制

如果说密码学是区块链的钥匙的话,那么分布式系统就是区块链的基石,而共识机制就是保证区块链基石稳定性的混凝土。

下面是有关分布式系统和共识机制的文章:

超级账本Hyperledger

Hyperledger是一项开源工作,旨在推动跨行业的区块链技术供企业使用。这是由LinuxFoundation主持的全球合作,其中包括金融,银行,物联网,供应链,制造和技术领域的领导者。这183个不同的成员和9个正在进行的项目(包括Hyperledger Fabric)协同工作,以创建一个开放的,标准化的企业级分布式分布式账本框架和代码库。

Hyperledger其实是由很多各项目构成的,他们

Hyperledger Fabric框架在许可的网络上支持分布式分布式账本解决方案,成员之间彼此了解,适用于广泛的行业。它的模块化架构最大程度地提高了区块链解决方案的机密性,弹性和灵活性。

下面是有关超级账本的文章:

以太坊

以太坊是由程序员Vitalik Buterin在比特币的基础上开发出来的一套公链平台。它被称为第二代加密货币与去中心化应用平台。

以太坊创造性的提出了智能合约的概念,扩充和丰富了人们的想象。

有了智能合约,以太坊也就插上了腾飞的翅膀,各种Dapp应运而生,而以太坊最最有名的就是做ICO发代币了。

为什么会有这么多人在以太坊上发代币呢?因为在以太坊上发代币实在是太简单了。

有多简单呢?如果说不会写程序的人都能发代币好像还不能够,不足以体现以太坊发代币的简单之处。那么这样说吧:大妈都会发代币你就懂了。

自己定义一个代币的总个数,比如1000000000000亿个。小手鼠标一点就创建好了。

接下来的套路就是建官网,建论坛,拉人气,找人背书,吹一下这个项目如何如何厉害,如何如何有前景。接着就可以ICO了。

我还记得曾经看过的一个项目,具体名字不记得了,好像是叫做太空币,那搞得一个高大上,貌似有了这个币,就可以进行太空旅行,遨游太空的感觉。

不知道为什么还有那么多人相信!

吐槽了半天,这里想说的是以太坊真的是继比特币之后对于区块链的又一大力作,尤其是其中的智能合约的概念更是应用广泛。

下面是我写的关于以太坊的文章,目前数目还不多,后续我会补充:

Libra

Libra是facebook发起的一个区块链项目,其使命是建立一套简单的、无国界的货币和为数十亿人服务的金融基础设施。

facebook认为传统的金融服务离穷人太远,并且被收取各种不菲且难以预测的费用。全球仍有17亿成年人从来没有接触过金融系统,虽然他们中的10亿人拥有手机,其中的5亿人可以上网。

facebook希望借助与区块链的独特的金融特性来实现普惠金融的目标。

facebook希望借此创建一个开放、即时和低成本的全球性货币和金融基础设施。两者结合起来实现”货币互联网“。

其实Libra的具体实现离区块链的去中心化,匿名性和开放性还是有一定的距离的,所以Libra不能称作为一个纯粹的区块链。

下面是我整理的关于Libra的文章:

比特币

比特币是区块链的第一个应用,也是最成功的一个应用,通过比特币我们才开始了解区块链。

这一块的内容等我后续补充。

总结

本文是区块链的集合文章,会持续进行更新,希望大家能够喜欢。有需要的同学可以关注并留言,我会尽量回复,谢谢!

本文链接:http://www.flydean.com/blockchain/

最通俗的解读,最深刻的干货,最简洁的教程,众多你不知道的小技巧等你来发现!

欢迎关注我的公众号:「程序那些事」,懂技术,更懂你!

区块链从入门到放弃系列教程-涵盖密码学,超级账本,以太坊,Libra,比特币等持续更新的更多相关文章

  1. [大数据从入门到放弃系列教程]在IDEA的Java项目里,配置并加入Scala,写出并运行scala的hello world

    [大数据从入门到放弃系列教程]在IDEA的Java项目里,配置并加入Scala,写出并运行scala的hello world 原文链接:http://www.cnblogs.com/blog5277/ ...

  2. [大数据从入门到放弃系列教程]第一个spark分析程序

    [大数据从入门到放弃系列教程]第一个spark分析程序 原文链接:http://www.cnblogs.com/blog5277/p/8580007.html 原文作者:博客园--曲高终和寡 **** ...

  3. Laravel 从入门到精通系列教程

    转载;https://laravelacademy.org/laravel-tutorial-5_7 适用于 Laravel 5.5.5.6.5.7 版本,本系列教程将围绕一个 LTS 版本,然后采取 ...

  4. php从入门到放弃系列-01.php环境的搭建

    php从入门到放弃系列-01.php环境的搭建 一.为什么要学习php 1.php语言适用于中小型网站的快速开发: 2.并且有非常成熟的开源框架,例如yii,thinkphp等: 3.几乎全部的CMS ...

  5. php从入门到放弃系列-03.php函数和面向对象

    php从入门到放弃系列-03.php函数和面向对象 一.函数 php真正的威力源自它的函数,内置了1000个函数,可以参考PHP 参考手册. 自定义函数: function functionName( ...

  6. 办公软件Office PPT 2010视频教程从入门到精通系列教程(22课时)

    办公软件Office PPT 2010视频教程从入门到精通系列教程(22课时) 乔布斯的成功离不开美轮美奂的幻灯片效果,一个成功的商务人士.部门经理也少不了各种各样的PPT幻灯片.绿色资源网给你提供了 ...

  7. php从入门到放弃系列-04.php页面间值传递和保持

    php从入门到放弃系列-04.php页面间值传递和保持 一.目录结构 二.两次页面间传递值 在两次页面之间传递少量数据,可以使用get提交,也可以使用post提交,二者的区别恕不赘述. 1.get提交 ...

  8. php从入门到放弃系列-02.php基础语法

    php从入门到放弃系列-02.php基础语法 一.学习语法,从hello world开始 PHP(全称:PHP:Hypertext Preprocessor,即"PHP:超文本预处理器&qu ...

  9. K8S从入门到放弃系列-(16)Kubernetes集群Prometheus-operator监控部署

    Prometheus Operator不同于Prometheus,Prometheus Operator是 CoreOS 开源的一套用于管理在 Kubernetes 集群上的 Prometheus 控 ...

  10. K8S 从入门到放弃系列文章目录(Kubernetes 1.14)

    1)软件环境 软件 版本 系统 Centos7.5 Kubernetes 1.14.1 Docker 18.09 Calico 3.6 Etcd 3.3.12 2)部署过程简单概要 三台master节 ...

随机推荐

  1. Excel Undo-Redo的编程问题

    Excel Undo历史栈对外是不透明的. 代码对Excel表单的编辑操作会清空Excel内部的Undo历史. Application.OnUndo只支持一次撤销,并且不支持ReDo. 使用DDE的方 ...

  2. 容器与 Pod

    现在 Docker 的流行程度越来越高,越来越多的公司使用 Docker 打包和部署项目.但是也有很多公司只是追求新技术,将以前的单体应用直接打包为镜像,代码.配置方式等各方面保持不变,使用 Dock ...

  3. PHP项目&MVC文件安全&上传&包含&下载&删除&读取等

    文件安全-文件包含-动态调试-xhcms 1.安装好xhcms,查看index.php文件. 2.存在include关键字,可以存在文件包含漏洞.看上面代码的逻辑,对r的传参添加魔术引号,如果r没有值 ...

  4. [linux 爬坑] 几个linux发行版尝试和令人崩溃的ssr安装体验

    最近电脑上的manjaro好像出了问题,长时间不用就会死机.也懒得追究原因了,正好决定尝试几个发行版.首先尝试安装银河麒麟    这个发行版实际上就是ubuntu,甚至源什么的都是ubuntu的,也不 ...

  5. docker部署监控Prometheus+Grafana

    目录 一.Prometheus简介 二.Prometheus基本原理 三.Prometheus架构图 四.Prometheus特性 五.Prometheus组件 六.Prometheus服务发现 七. ...

  6. mysql中where条件查询

    #进阶2:条件查询 /* 语法: SELECT 查询列表 FROM 表名 WHERE 筛选条件: 分类: 一.按条件表达式筛选 条件运算符:> < = <> >= < ...

  7. MES集成警报灯系统,Http远程控制系统设计

    核心功能设计 警报灯实机演示:https://www.bilibili.com/video/BV1294y1M7f3?p=2 接受服务器发送http·post请求远程控制警报灯,可接入MES等系统. ...

  8. SyntaxError: invalid property id(就是不支持ES6) (浏览器不支持对象...展开)

    SyntaxError: invalid property id(就是不支持ES6) (浏览器不支持对象...展开) 火狐55以后支持

  9. liunx 前台打包的两个报错 Invalid value used in weak set - MIS国产化服务器不支持打包

    错误1 Invalid value used in weak set Webpack4使用 mini-css-extract-plugin 最新版 压缩css 报 "Invalid valu ...

  10. Linux系统设置shell开机自启

        自己写一个shell脚本 chmod -x file.sh sudo cp file.sh /etc/profile.d/ 将写好的脚本(.sh文件)放到目录 /etc/profile.d/ ...