⑴ 加密货币和区块链——人类历史上最伟大的发明之一
说明:本文为译文,原文链接: Crypto and Blockchain — Following in the Footsteps of Man’s Greatest Inventions?
纵观历史,人类文明的进步主要归功于技术的发展。
远古时代,大约70万年前,人类最重要的进步就是发现并掌握了火的使用。
火的使用推动了人类的进化,为早期人类创造了“革命性”的改进,包括建造更大的定居点、使用更复杂的工具,过上更好的生活。可以说,这个远古时期的发现标志着人类智力社会的开始。
虽然改变历史的技术发明很多,但是让我们总结并提炼五个最伟大通信技术创新,即为印刷术、电力、无线电、互联网和区块链,这些创新改变了人类获取和使用信息和数据的方式。
印刷术被誉为历史上最重要的发明之一,印刷术领先于第二项重要发明(电力)近400年。德国金匠商人约翰内斯•谷登堡(Johannes Gutenberg)被公认为是印刷机的发明人。
印刷术的发行允许了快速且便宜的打印文档和书籍。随着印刷术在世界范围内的传播,越来越多的人快捷的获得信息,可以说,印刷术的发明产生了知识革命,并在宗教变革中发挥了重要作用。
印刷术传播信息的能力对科学革命和成人读写能力的提高产生显着影响。具有讽刺意味的是,印刷术导致还导致拉丁语的衰落和全球本地方言的发展。
印刷术加快了信息在世界范围内创建和共享,并在大规模的教育发展中发挥了重要作用。
虽然印刷术允许信息和知识在世界范围内传播,但人们仍然处于黑暗中。
直到19世纪末期,在许多科学家的共同努力下,随着错综复杂的电力问题的解决,电灯泡终于诞生了,电灯泡给世界带来了照明,也是最早被广泛使用的电力应用之一。
电报是在19世纪30年代发展起来的,是电力早期开发的一个应用程序,在通信中扮演着更重要的角色,电报允许人们通过使用电路来发送信息到世界各地。
电力的发展奠定了通信系统的平台,如电话,传真机以及最终的互联网。
通信技术发展的下一步里程牌是无线电的出现。在19世纪末,古列尔莫·马可尼(Guglielmo Marconi)发表的专利《无线电报系统》。
1901年马可尼从康沃尔郡的怀特岛(Isle Wight of Cornwall)向大西洋发送了他的第一个无线传输信息——第一个无线电波。
在接下来的20年里,无线电通讯主要被军方使用。但从20世纪20年代开始,无线电台就开始商业应用。像BBC广播开始于1922年——为人们提供新闻、信息和娱乐。
在第二次世界大战期间,广播电台在给人们传播新闻方面发挥了重要作用,二战之后,广播将重心转移到音乐和娱乐上。商业化改变了广播的性质,但它仍然在让人们了解世界各地的重大事件方面发挥着重要作用。
无线电的成功源于其无线的特性。任何拥有接收器的人都可以收听频率范围内的消息和信息。这也意味着许多人可以从一个单一的接收器中获取信息——使其成为最强大的信息交换媒介之一。
虽然广播和电视从20世纪20年代开始逐渐在世界范围内得到普及,但直到20世纪90年代(经过70年时间),广泛的公众才接触到互联网。
互联网起源始于20世纪60年代,心理学家和计算机科学家 JCR Licklider博士 制作了一系列文件,概述了“星际计算机网络”的概念 - 这将允许全球连接的计算机网络访问和共享数据,以及使用来自多个站点的程序。
1963年,Licklider担任美国国防部高级研究计划局(称为DARPA)的主任,为ARPANET的发展奠定了基础。
基于分时的概念,即向多个用户共享计算资源,互联网发展驱动力主要源于这些早期封闭网络上通过使用 分组交换 传输信息。
从20世纪80年代开始,我们所知道的互联网开始商业化,因为企业希望拥抱并利用全球网络的能力。这看到了互联网服务提供商的出现。
在20世纪90年代初,公众可以访问电子邮件服务和基本网页,并在接下来的十年中,互联网呈现了爆炸性增长,就是我们熟知的 互联网泡沫 。
尽管如此,互联网的使用几乎包含了上面列出的所有技术。通过全球计算机和服务器网络,世界各地的人们可以获得几乎无限的信息。
而且,互联网现在提供视频和音频平台,这已经动摇了广播和电视的世界。它的应用很多——互联网重塑了现代世界。
在某种程度上,互联网也是区块链技术和加密货币的基础设施。
现在互联网已将全球网络连接在一起,使得数亿人能够访问世界各地的信息并相互之间进行交流。
随着互联网逐渐被大众所接受,数字世界不断发展,使用其基础设施开发了更新的技术。
通过互联网与世界各地的用户进行通信和共享数据,隐私和安全成为一个问题。
这就是 加密货币 的基础—通过加密技术的发展。
20世纪60年代,加密技术再次被政府和军事机构所倡导,而加密的起源则可以追溯到更远的地方。数字加密技术被开发出来,并在20世纪80年代末被公之于众,在20世纪90年代,由埃里克•休斯,蒂姆·梅和约翰·吉尔摩正式组建了 密码运动 。
通过访问先前分类的技术,这些技术人员能够继续完成 数据隐私方面 的工作。这种加密技术随后成为 比特币 协议的重要组成部分。
中本聪的 比特币白皮书 甚至赞扬了Adam Back博士的工作和他的 Hashcash工作证明 —这是一种可以用来防止拒绝服务攻击的算法。
b-money创建者 Wei Dai ,计算机科学家 Ralph Merkle (他发明了加密哈希)和其他一些从事数字时间戳技术研究的科学家的工作都为最终创造比特币做出了贡献。
比特币于2009年诞生,在1月4日的那个重要日子里,当时创世纪块被开采出来。尽管在最初几年它的发展速度缓慢,但事情发生了巨大的变化。
2017年可以说是比特币和加密货币的突破年。一场螺旋式牛市见证了这一卓越的加密货币突破 20,000美元大关 。
这引起了比特币和加密货币的普遍关注,它们不再是书呆子在硅谷午休时谈论的一种晦涩难懂的技术。
比特币和它的区块链仍然统治着它,而以太坊之类的东西为区块链技术的应用和可能性带来了新的维度。
就像早期的电力,无线电和互联网的一样,这项技术的应用还在摸索中。但随着越来越多的人开始研究加密货币和区块链技术的可能性,落地应用的速度越来越快。
虽然加密领域不断发展,过去几年有许多大型企业进入该领域,但区块链技术也正在被世界各地的私营公司所利用。
具有讽刺意味的是,这就是区块链技术与上述其它技术不同的地方。无线电和互联网技术首先由政府和军事行动开发和利用。
另一方面,比特币于2009年向公众发布,从那时起,它已被全球数百万人 接受 ,并已经推出了许多区块链项目—公共的和私营的。
区块链技术的应用仍在探索中,天空在其可能对社会产生的影响方面受到限制。
⑵ 区块链技术的机密性是如何实现的
因为区块链技术对实现智能合约存在天然的优势。
比特币、瑞泰币、莱特币、以太坊等数字加密货币都使用了区块链技术。
区块链(Blockchain)是比特币的一个重要概念,本质上是一个去中心化的数据库,同时作为比特币的底层技术。区块链是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一次比特币网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。
⑶ 区块链技术的六大核心算法
区块链技术的六大核心算法
区块链核心算法一:拜占庭协定
拜占庭的故事大概是这么说的:拜占庭帝国拥有巨大的财富,周围10个邻邦垂诞已久,但拜占庭高墙耸立,固若金汤,没有一个单独的邻邦能够成功入侵。任何单个邻邦入侵的都会失败,同时也有可能自身被其他9个邻邦入侵。拜占庭帝国防御能力如此之强,至少要有十个邻邦中的一半以上同时进攻,才有可能攻破。然而,如果其中的一个或者几个邻邦本身答应好一起进攻,但实际过程出现背叛,那么入侵者可能都会被歼灭。于是每一方都小心行事,不敢轻易相信邻国。这就是拜占庭将军问题。
在这个分布式网络里:每个将军都有一份实时与其他将军同步的消息账本。账本里有每个将军的签名都是可以验证身份的。如果有哪些消息不一致,可以知道消息不一致的是哪些将军。尽管有消息不一致的,只要超过半数同意进攻,少数服从多数,共识达成。
由此,在一个分布式的系统中,尽管有坏人,坏人可以做任意事情(不受protocol限制),比如不响应、发送错误信息、对不同节点发送不同决定、不同错误节点联合起来干坏事等等。但是,只要大多数人是好人,就完全有可能去中心化地实现共识
区块链核心算法二:非对称加密技术
在上述拜占庭协定中,如果10个将军中的几个同时发起消息,势必会造成系统的混乱,造成各说各的攻击时间方案,行动难以一致。谁都可以发起进攻的信息,但由谁来发出呢?其实这只要加入一个成本就可以了,即:一段时间内只有一个节点可以传播信息。当某个节点发出统一进攻的消息后,各个节点收到发起者的消息必须签名盖章,确认各自的身份。
在如今看来,非对称加密技术完全可以解决这个签名问题。非对称加密算法的加密和解密使用不同的两个密钥.这两个密钥就是我们经常听到的”公钥”和”私钥”。公钥和私钥一般成对出现, 如果消息使用公钥加密,那么需要该公钥对应的私钥才能解密; 同样,如果消息使用私钥加密,那么需要该私钥对应的公钥才能解密。
区块链核心算法三:容错问题
我们假设在此网络中,消息可能会丢失、损坏、延迟、重复发送,并且接受的顺序与发送的顺序不一致。此外,节点的行为可以是任意的:可以随时加入、退出网络,可以丢弃消息、伪造消息、停止工作等,还可能发生各种人为或非人为的故障。我们的算法对由共识节点组成的共识系统,提供的容错能力,这种容错能力同时包含安全性和可用性,并适用于任何网络环境。
区块链核心算法四:Paxos 算法(一致性算法)
Paxos算法解决的问题是一个分布式系统如何就某个值(决议)达成一致。一个典型的场景是,在一个分布式数据库系统中,如果各节点的初始状态一致,每个节点都执行相同的操作序列,那么他们最后能得到一个一致的状态。为保证每个节点执行相同的命令序列,需要在每一条指令上执行一个“一致性算法”以保证每个节点看到的指令一致。一个通用的一致性算法可以应用在许多场景中,是分布式计算中的重要问题。节点通信存在两种模型:共享内存和消息传递。Paxos算法就是一种基于消息传递模型的一致性算法。
区块链核心算法五:共识机制
区块链共识算法主要是工作量证明和权益证明。拿比特币来说,其实从技术角度来看可以把PoW看做重复使用的Hashcash,生成工作量证明在概率上来说是一个随机的过程。开采新的机密货币,生成区块时,必须得到所有参与者的同意,那矿工必须得到区块中所有数据的PoW工作证明。与此同时矿工还要时时观察调整这项工作的难度,因为对网络要求是平均每10分钟生成一个区块。
区块链核心算法六:分布式存储
分布式存储是一种数据存储技术,通过网络使用每台机器上的磁盘空间,并将这些分散的存储资源构成一个虚拟的存储设备,数据分散的存储在网络中的各个角落。所以,分布式存储技术并不是每台电脑都存放完整的数据,而是把数据切割后存放在不同的电脑里。就像存放100个鸡蛋,不是放在同一个篮子里,而是分开放在不同的地方,加起来的总和是100个。
⑷ 【深度知识】区块链之加密原理图示(加密,签名)
先放一张以太坊的架构图:
在学习的过程中主要是采用单个模块了学习了解的,包括P2P,密码学,网络,协议等。直接开始总结:
秘钥分配问题也就是秘钥的传输问题,如果对称秘钥,那么只能在线下进行秘钥的交换。如果在线上传输秘钥,那就有可能被拦截。所以采用非对称加密,两把钥匙,一把私钥自留,一把公钥公开。公钥可以在网上传输。不用线下交易。保证数据的安全性。
如上图,A节点发送数据到B节点,此时采用公钥加密。A节点从自己的公钥中获取到B节点的公钥对明文数据加密,得到密文发送给B节点。而B节点采用自己的私钥解密。
2、无法解决消息篡改。
如上图,A节点采用B的公钥进行加密,然后将密文传输给B节点。B节点拿A节点的公钥将密文解密。
1、由于A的公钥是公开的,一旦网上黑客拦截消息,密文形同虚设。说白了,这种加密方式,只要拦截消息,就都能解开。
2、同样存在无法确定消息来源的问题,和消息篡改的问题。
如上图,A节点在发送数据前,先用B的公钥加密,得到密文1,再用A的私钥对密文1加密得到密文2。而B节点得到密文后,先用A的公钥解密,得到密文1,之后用B的私钥解密得到明文。
1、当网络上拦截到数据密文2时, 由于A的公钥是公开的,故可以用A的公钥对密文2解密,就得到了密文1。所以这样看起来是双重加密,其实最后一层的私钥签名是无效的。一般来讲,我们都希望签名是签在最原始的数据上。如果签名放在后面,由于公钥是公开的,签名就缺乏安全性。
2、存在性能问题,非对称加密本身效率就很低下,还进行了两次加密过程。
如上图,A节点先用A的私钥加密,之后用B的公钥加密。B节点收到消息后,先采用B的私钥解密,然后再利用A的公钥解密。
1、当密文数据2被黑客拦截后,由于密文2只能采用B的私钥解密,而B的私钥只有B节点有,其他人无法机密。故安全性最高。
2、当B节点解密得到密文1后, 只能采用A的公钥来解密。而只有经过A的私钥加密的数据才能用A的公钥解密成功,A的私钥只有A节点有,所以可以确定数据是由A节点传输过来的。
经两次非对称加密,性能问题比较严重。
基于以上篡改数据的问题,我们引入了消息认证。经过消息认证后的加密流程如下:
当A节点发送消息前,先对明文数据做一次散列计算。得到一个摘要, 之后将照耀与原始数据同时发送给B节点。当B节点接收到消息后,对消息解密。解析出其中的散列摘要和原始数据,然后再对原始数据进行一次同样的散列计算得到摘要1, 比较摘要与摘要1。如果相同则未被篡改,如果不同则表示已经被篡改。
在传输过程中,密文2只要被篡改,最后导致的hash与hash1就会产生不同。
无法解决签名问题,也就是双方相互攻击。A对于自己发送的消息始终不承认。比如A对B发送了一条错误消息,导致B有损失。但A抵赖不是自己发送的。
在(三)的过程中,没有办法解决交互双方相互攻击。什么意思呢? 有可能是因为A发送的消息,对A节点不利,后来A就抵赖这消息不是它发送的。
为了解决这个问题,故引入了签名。这里我们将(二)-4中的加密方式,与消息签名合并设计在一起。
在上图中,我们利用A节点的私钥对其发送的摘要信息进行签名,然后将签名+原文,再利用B的公钥进行加密。而B得到密文后,先用B的私钥解密,然后 对摘要再用A的公钥解密,只有比较两次摘要的内容是否相同。这既避免了防篡改问题,有规避了双方攻击问题。因为A对信息进行了签名,故是无法抵赖的。
为了解决非对称加密数据时的性能问题,故往往采用混合加密。这里就需要引入对称加密,如下图:
在对数据加密时,我们采用了双方共享的对称秘钥来加密。而对称秘钥尽量不要在网络上传输,以免丢失。这里的共享对称秘钥是根据自己的私钥和对方的公钥计算出的,然后适用对称秘钥对数据加密。而对方接收到数据时,也计算出对称秘钥然后对密文解密。
以上这种对称秘钥是不安全的,因为A的私钥和B的公钥一般短期内固定,所以共享对称秘钥也是固定不变的。为了增强安全性,最好的方式是每次交互都生成一个临时的共享对称秘钥。那么如何才能在每次交互过程中生成一个随机的对称秘钥,且不需要传输呢?
那么如何生成随机的共享秘钥进行加密呢?
对于发送方A节点,在每次发送时,都生成一个临时非对称秘钥对,然后根据B节点的公钥 和 临时的非对称私钥 可以计算出一个对称秘钥(KA算法-Key Agreement)。然后利用该对称秘钥对数据进行加密,针对共享秘钥这里的流程如下:
对于B节点,当接收到传输过来的数据时,解析出其中A节点的随机公钥,之后利用A节点的随机公钥 与 B节点自身的私钥 计算出对称秘钥(KA算法)。之后利用对称秘钥机密数据。
对于以上加密方式,其实仍然存在很多问题,比如如何避免重放攻击(在消息中加入 Nonce ),再比如彩虹表(参考 KDF机制解决 )之类的问题。由于时间及能力有限,故暂时忽略。
那么究竟应该采用何种加密呢?
主要还是基于要传输的数据的安全等级来考量。不重要的数据其实做好认证和签名就可以,但是很重要的数据就需要采用安全等级比较高的加密方案了。
密码套件 是一个网络协议的概念。其中主要包括身份认证、加密、消息认证(MAC)、秘钥交换的算法组成。
在整个网络的传输过程中,根据密码套件主要分如下几大类算法:
秘钥交换算法:比如ECDHE、RSA。主要用于客户端和服务端握手时如何进行身份验证。
消息认证算法:比如SHA1、SHA2、SHA3。主要用于消息摘要。
批量加密算法:比如AES, 主要用于加密信息流。
伪随机数算法:例如TLS 1.2的伪随机函数使用MAC算法的散列函数来创建一个 主密钥 ——连接双方共享的一个48字节的私钥。主密钥在创建会话密钥(例如创建MAC)时作为一个熵来源。
在网络中,一次消息的传输一般需要在如下4个阶段分别进行加密,才能保证消息安全、可靠的传输。
握手/网络协商阶段:
在双方进行握手阶段,需要进行链接的协商。主要的加密算法包括RSA、DH、ECDH等
身份认证阶段:
身份认证阶段,需要确定发送的消息的来源来源。主要采用的加密方式包括RSA、DSA、ECDSA(ECC加密,DSA签名)等。
消息加密阶段:
消息加密指对发送的信息流进行加密。主要采用的加密方式包括DES、RC4、AES等。
消息身份认证阶段/防篡改阶段:
主要是保证消息在传输过程中确保没有被篡改过。主要的加密方式包括MD5、SHA1、SHA2、SHA3等。
ECC :Elliptic Curves Cryptography,椭圆曲线密码编码学。是一种根据椭圆上点倍积生成 公钥、私钥的算法。用于生成公私秘钥。
ECDSA :用于数字签名,是一种数字签名算法。一种有效的数字签名使接收者有理由相信消息是由已知的发送者创建的,从而发送者不能否认已经发送了消息(身份验证和不可否认),并且消息在运输过程中没有改变。ECDSA签名算法是ECC与DSA的结合,整个签名过程与DSA类似,所不一样的是签名中采取的算法为ECC,最后签名出来的值也是分为r,s。 主要用于身份认证阶段 。
ECDH :也是基于ECC算法的霍夫曼树秘钥,通过ECDH,双方可以在不共享任何秘密的前提下协商出一个共享秘密,并且是这种共享秘钥是为当前的通信暂时性的随机生成的,通信一旦中断秘钥就消失。 主要用于握手磋商阶段。
ECIES: 是一种集成加密方案,也可称为一种混合加密方案,它提供了对所选择的明文和选择的密码文本攻击的语义安全性。ECIES可以使用不同类型的函数:秘钥协商函数(KA),秘钥推导函数(KDF),对称加密方案(ENC),哈希函数(HASH), H-MAC函数(MAC)。
ECC 是椭圆加密算法,主要讲述了按照公私钥怎么在椭圆上产生,并且不可逆。 ECDSA 则主要是采用ECC算法怎么来做签名, ECDH 则是采用ECC算法怎么生成对称秘钥。以上三者都是对ECC加密算法的应用。而现实场景中,我们往往会采用混合加密(对称加密,非对称加密结合使用,签名技术等一起使用)。 ECIES 就是底层利用ECC算法提供的一套集成(混合)加密方案。其中包括了非对称加密,对称加密和签名的功能。
<meta charset="utf-8">
这个先订条件是为了保证曲线不包含奇点。
所以,随着曲线参数a和b的不断变化,曲线也呈现出了不同的形状。比如:
所有的非对称加密的基本原理基本都是基于一个公式 K = k G。其中K代表公钥,k代表私钥,G代表某一个选取的基点。非对称加密的算法 就是要保证 该公式 不可进行逆运算( 也就是说G/K是无法计算的 )。 *
ECC是如何计算出公私钥呢?这里我按照我自己的理解来描述。
我理解,ECC的核心思想就是:选择曲线上的一个基点G,之后随机在ECC曲线上取一个点k(作为私钥),然后根据k G计算出我们的公钥K。并且保证公钥K也要在曲线上。*
那么k G怎么计算呢?如何计算k G才能保证最后的结果不可逆呢?这就是ECC算法要解决的。
首先,我们先随便选择一条ECC曲线,a = -3, b = 7 得到如下曲线:
在这个曲线上,我随机选取两个点,这两个点的乘法怎么算呢?我们可以简化下问题,乘法是都可以用加法表示的,比如2 2 = 2+2,3 5 = 5+5+5。 那么我们只要能在曲线上计算出加法,理论上就能算乘法。所以,只要能在这个曲线上进行加法计算,理论上就可以来计算乘法,理论上也就可以计算k*G这种表达式的值。
曲线上两点的加法又怎么算呢?这里ECC为了保证不可逆性,在曲线上自定义了加法体系。
现实中,1+1=2,2+2=4,但在ECC算法里,我们理解的这种加法体系是不可能。故需要自定义一套适用于该曲线的加法体系。
ECC定义,在图形中随机找一条直线,与ECC曲线相交于三个点(也有可能是两个点),这三点分别是P、Q、R。
那么P+Q+R = 0。其中0 不是坐标轴上的0点,而是ECC中的无穷远点。也就是说定义了无穷远点为0点。
同样,我们就能得出 P+Q = -R。 由于R 与-R是关于X轴对称的,所以我们就能在曲线上找到其坐标。
P+R+Q = 0, 故P+R = -Q , 如上图。
以上就描述了ECC曲线的世界里是如何进行加法运算的。
从上图可看出,直线与曲线只有两个交点,也就是说 直线是曲线的切线。此时P,R 重合了。
也就是P = R, 根据上述ECC的加法体系,P+R+Q = 0, 就可以得出 P+R+Q = 2P+Q = 2R+Q=0
于是乎得到 2 P = -Q (是不是与我们非对称算法的公式 K = k G 越来越近了)。
于是我们得出一个结论,可以算乘法,不过只有在切点的时候才能算乘法,而且只能算2的乘法。
假若 2 可以变成任意个数进行想乘,那么就能代表在ECC曲线里可以进行乘法运算,那么ECC算法就能满足非对称加密算法的要求了。
那么我们是不是可以随机任何一个数的乘法都可以算呢? 答案是肯定的。 也就是点倍积 计算方式。
选一个随机数 k, 那么k * P等于多少呢?
我们知道在计算机的世界里,所有的都是二进制的,ECC既然能算2的乘法,那么我们可以将随机数k描 述成二进制然后计算。假若k = 151 = 10010111
由于2 P = -Q 所以 这样就计算出了k P。 这就是点倍积算法 。所以在ECC的曲线体系下是可以来计算乘法,那么以为这非对称加密的方式是可行的。
至于为什么这样计算 是不可逆的。这需要大量的推演,我也不了解。但是我觉得可以这样理解:
我们的手表上,一般都有时间刻度。现在如果把1990年01月01日0点0分0秒作为起始点,如果告诉你至起始点为止时间流逝了 整1年,那么我们是可以计算出现在的时间的,也就是能在手表上将时分秒指针应该指向00:00:00。但是反过来,我说现在手表上的时分秒指针指向了00:00:00,你能告诉我至起始点算过了有几年了么?
ECDSA签名算法和其他DSA、RSA基本相似,都是采用私钥签名,公钥验证。只不过算法体系采用的是ECC的算法。交互的双方要采用同一套参数体系。签名原理如下:
在曲线上选取一个无穷远点为基点 G = (x,y)。随机在曲线上取一点k 作为私钥, K = k*G 计算出公钥。
签名过程:
生成随机数R, 计算出RG.
根据随机数R,消息M的HASH值H,以及私钥k, 计算出签名S = (H+kx)/R.
将消息M,RG,S发送给接收方。
签名验证过程:
接收到消息M, RG,S
根据消息计算出HASH值H
根据发送方的公钥K,计算 HG/S + xK/S, 将计算的结果与 RG比较。如果相等则验证成功。
公式推论:
HG/S + xK/S = HG/S + x(kG)/S = (H+xk)/GS = RG
在介绍原理前,说明一下ECC是满足结合律和交换律的,也就是说A+B+C = A+C+B = (A+C)+B。
这里举一个WIKI上的例子说明如何生成共享秘钥,也可以参考 Alice And Bob 的例子。
Alice 与Bob 要进行通信,双方前提都是基于 同一参数体系的ECC生成的 公钥和私钥。所以有ECC有共同的基点G。
生成秘钥阶段:
Alice 采用公钥算法 KA = ka * G ,生成了公钥KA和私钥ka, 并公开公钥KA。
Bob 采用公钥算法 KB = kb * G ,生成了公钥KB和私钥 kb, 并公开公钥KB。
计算ECDH阶段:
Alice 利用计算公式 Q = ka * KB 计算出一个秘钥Q。
Bob 利用计算公式 Q' = kb * KA 计算出一个秘钥Q'。
共享秘钥验证:
Q = ka KB = ka * kb * G = ka * G * kb = KA * kb = kb * KA = Q'
故 双方分别计算出的共享秘钥不需要进行公开就可采用Q进行加密。我们将Q称为共享秘钥。
在以太坊中,采用的ECIEC的加密套件中的其他内容:
1、其中HASH算法采用的是最安全的SHA3算法 Keccak 。
2、签名算法采用的是 ECDSA
3、认证方式采用的是 H-MAC
4、ECC的参数体系采用了secp256k1, 其他参数体系 参考这里
H-MAC 全程叫做 Hash-based Message Authentication Code. 其模型如下:
在 以太坊 的 UDP通信时(RPC通信加密方式不同),则采用了以上的实现方式,并扩展化了。
首先,以太坊的UDP通信的结构如下:
其中,sig是 经过 私钥加密的签名信息。mac是可以理解为整个消息的摘要, ptype是消息的事件类型,data则是经过RLP编码后的传输数据。
其UDP的整个的加密,认证,签名模型如下:
⑸ 什么是区块链,区块链有什么作用
什么是区块链?会对以后的生活带来什么样的改变?
区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。
区块链(Blockchain),是比特币的一个重要概念,它本质上是一个去中心化的数据库,同时作为比特币的底层技术,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次比特币网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。
比特币白皮书英文原版其实并未出现 blockchain 一词,而是使用的 chain of blocks。最早的比特币白皮书中文翻译版中,将 chain of blocks 翻译成了区块链。这是“区块链”这一中文词最早的出现时间。
国家互联网信息办公室2019年1月10日发布《区块链信息服务管理规定》,自2019年2月15日起施行。
狭义来讲,区块链是一种按照时间顺序将数据区块以顺序相连的方式组合成的一种链式数据结构, 并以密码学方式保证的不可篡改和不可伪造的分布式账本。
广义来讲,区块链技术是利用块链式数据结构来验证与存储数据、利用分布式节点共识算法来生成和更新数据、利用密码学的方式保证数据传输和访问的安全、利用由自动化脚本代码组成的智能合约来编程和操作数据的一种全新的分布式基础架构与计算方式。
其实非常简单和形象的理解我们可以想象为把生活的一切事情都以数字化的形式实现,衣食住行,看病,教育等等的一切,以互联网为基础,在家就可以轻松搞定,不论去哪里办事还是交易,手机就可以完全操作完成,随着不断的发展我们的万事万物都可以在网上轻松完成,比容工作,生产,种植等等,当然5g的崛起带来的到底是什么现在也没有人可以精准的预测,但是肯定会给生活和 社会 形态带来翻天覆地的变化!
区块链诞生自中本聪的比特币,自2009年以来,出现了各种各样的类比特币的数字货币,都是基于公有区块链的。
数字货币的现状是百花齐放,列出一些常见的:bitcoin、litecoin、dogecoin、OKcoinetc,除了货币的应用之外,还有各种衍生应用,如NXT,SIA,比特股,MaidSafe,Ripple,Ethereum等等。
2016年1月20日,中国人民银行数字货币研讨会宣布对数字货币研究取得阶段性成果。会议肯定了数字货币在降低传统货币发行等方面的价值,并表示央行在 探索 发行数字货币。
可以用区块链的一些领域可以是:
▪ 智能合约
▪ 证券交易
▪ 电子商务
▪ 物联网
▪ 社交通讯
▪ 文件存储
▪ 存在性证明
▪ 身份验证
▪ 股权众筹
可以把区块链的发展类比互联网本身的发展,未来会在internet上形成一个比如叫做finance-internet的东西,而这个东西就是基于区块链,它的前驱就是bitcoin,即传统金融从私有链、行业链出发(局域网),bitcoin系列从公有链(广域网)出发,都表达了同一种概念——数字资产(DigitalAsset),最终向一个中间平衡点收敛。
区块链体系结构的核心优势包括:
任何节点都可以创建交易,在经过一段时间的确认之后,就可以合理地确认该交易是否为有效,区块链可有效地防止双方问题的发生。对于试图重写或者修改交易记录而言,它的成本是非常高的。区块链实现了两种记录:交易(transactions)以及区块(blocks)。交易是被存储在区块链上的实际数据,而区块则是记录确认某些交易是在何时,以及以何种顺序成为区块链数据库的一部分。交易是由参与者在正常过程中使用系统所创建的(在加密数字货币的例子中,一笔交易是由bob将代币发送给alice所创建的),而区块则是由我们称之为矿工(miners)的单位负责创建。
所以终上所述,这无疑是一个改变生活的新技术,未来的整个 社会 的生产活动都会以区块链作为底层逻辑展开进行,很多事情我们都可以触手可及,加上人工智能和大数据的融入,能让我们轻松搞定现在看来貌似比较繁琐的事情,比如一些证券市场的交易,和理财活动的智能化匹配。
通俗易懂的说区块链是将人财物,人机物、人场货一体化,打包做成一个整体;把它放在一个基础设施上来运行的网络计算中心。
现在笔者的脑洞不够大,无法想象未来的世界会是什么样子的,很期待!
这个问题,我了解一二,下面我们就认识一下这个神秘的东东-区块链。
区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链(Blockchain),是比特币的一个重要概念,它本质上是一个去中心化的数据库,同时作为比特币的底层技术,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次比特币网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块
越是热潮,越要去伪存真。首先,我们先得搞清楚什么是真正的区块链技术。
举例说明, 以网上购买水果为例。
以网购买水果的流程如下 :
使用区块链技术,去中心化的形态后,购买水果的流程如下:
小结:
1、我们发现,原有的交易流程是:买家跟卖家做交易,所有的关键流程都是在跟支付平台打交道。这样的好处在于:万一哪个环节出问题,卖家和买家都可以通过平台寻求帮助,让平台做出仲裁。但平台发生重大bug或被黑客攻击,导致一段时间内的转账记录全部丢失,损失怎么处理是一个麻烦事。
2、使用区块链技术的交易流程是:所有人的账本上都有着完全一样的交易记录,即使支付宝的账本服务器坏了,卖家的账本还存在,买家账本还存在。这笔交易一旦发生,就再也抹不去痕迹。
这就是区块链的核心,就是“记账+认账”四个字。
区块链技术的发展与成熟离不开以上新一代互联网技术的基础和铺垫,区块链不单单是一种技术,更是提供了一种服务模式和解决方案,为互联网产业的进一步发展起到了极其重要的推动作用。
1、区块链+金融
2、区块链+供应链管理
3、区块链+智能制造
4、区块链+公共服务
5、区块链+教育就业
6、区块链+文化 娱乐
7、区块链+支付
8、 区块链+发票{深圳已启用}
区块链的可追溯性及不可篡改性,与金融行业天生本质及需求,恰好结合到一起,这使得区块链在金融服务领域的应用,是到目前为止最为深入、相对成熟的领域。区块链技术有着广泛的应用前景。未来的 科技 竞争,也必将是属于区块链的竞争。
理解区块链很重要,这对于识破各种伪区块链骗术很重要。
如果别人用一堆专业术语来解释区块链,您很难听懂,他自己也未必真懂。
所以,我们首先建立起一道心理防线。给您兜售概念、讲一大堆不明觉厉专业术语的人,可能就是骗子。要千万小心!
理解区块链要知道区块链最核心的诉求是什么。您想象,当今互联网高度发达的世界,最担心什么?
隐私,对就是隐私。如何保护隐私?您随时可能被监控着,您个人的任何资料随时都有可能被人窃取。如果个人隐私得不到绝对保护,那互联网就会变成另一个权力金子塔。站在金子塔顶的是谁?是最聪明的技术高手,是平台提供者,是信息监管者。您我,可能是这个金子塔底的人。
最初发明区块链的人怀着个人被互联网完全吞噬的严重忧虑,试图创造一种绝对安全的加密技术,把个人隐私锁起来。这种技术完全颠覆了传统的加密技术。实际上,与其说是把隐私锁起来,还不如说是把隐私撕碎,然后把各个碎片分配到不同人手里私下保管。除非所有人都同意把碎片拿出来拼出完整的密码,否则真相无法再现。这也就是区块链的第一个机制,即去中心化。
但是光去中心化还不够,还必须让那些偷密码碎片的人无处遁形,让小偷的每一个动作都被无法擦除的记录下来,并在互联网中随处扩散,公之于众。这就是区块链的第二个机制,即不可匿机制。您想,哪个窥探隐私的人不是鬼鬼祟祟的?
总结起来,区块链就是要把隐私分散地藏起来,把任何再现这个隐私的行动记录起来并公之于众。看到这,您可能要为区块链拍手叫绝了。先别急,世上哪有那么好的事?存在绝对安全的乌托邦吗?如果真能实现绝对意义上的区块链,政府的存在还有意义吗?不错,区块链最初就是无政府主义的化身。它的终极意义注定不会实现。它的生存可能必须依附权力,注定成为另一个被精致包装的谎言,骗人的幌子。从这个意义上讲,政府必然也必须为区块链的发展指定框架,对区块链的价值进行重构,将区块链里面裹挟的反政府、反国家企图驱逐出去。区块链的一些技术能够具体应用,但绝不能宣扬什么去中心化。总之,对区块链要保持高度警惕。美丽的外表下面往往藏着毒刺。绝对理想化的配方往往成了毒药。那个说能绝对保护你隐私和资金安全的人,才是真正的偷窥狂和吸血魔。
我们最能保护隐私的方法或许只能是不要有任何隐私,完全坦荡地生活,要么活成一轮太阳,要么活成一个酒神。
观点:1.区块链概念最早起源于比特币技术属性(分布式数据存储记账、去中心化、无法篡改交易记录、点对点信息传输、共享机制…),但后来有人把概念继续延伸和扩展到很多商业领域便于资本炒作,2.现实中的区块链(目前市面上的区块链非常混乱),炒作概念在股市圈钱的居多,还存在缺乏监管漏洞,法律法规问题等,甚至存在洗钱的情况(区块链产品实际运作是一回事,背后资本运作是另一回事),就目前而言全世界的计算机体系无法满足区块链属性特征的技术要求(比如分布式数据存储记账,去中心化……,),网络带宽以及存储技术和计算机运算体系都无法实现交易运行要求(很容易通过计算机技术手段让你的网络堵塞或无法完成分布式数据存储或交易随时中断或延迟等实际应用产生的风险,另外就目前全球的计算机体系而言很容易破解区块链底层程序(这是目前全球的计算机存在的致命缺陷,0和1二进制逻辑,另外如果采用逆区块链模式运算算法非常容易破解区块链,这种逆运算模式也完全可以篡改所有交易记录,如果未来真正意义的量子计算机面市,更可以直接秒破所有区块链计算机体系,比特币挖矿就是庞氏骗局,3.目前全球市面上的区块链大多基本都是资本炒作概念圈钱,
区块链的提法已经有几年了,去年初听一个区块链大佬说,2018年是区块链最好的发展之年,过了这一年,外发展就落后了。 什么是区块链?影响的说,就像猪大肠,一节一节连在一起。区块链就是要把这些区块连在一起,固定下来,采用计算机和互联网加密技术,防止向外泄露秘密。 这项技术不能通过专业术语讲给非专业人士听,一般情况下听不懂。只能打比方来说明。我来举两个例子:
1.甲乙丙丁四个人在麻将馆打麻将赌钱,每局用筹码,散伙的时候一次性结账,甲输了1500元,乙输了300元,丙赢了200,丁赢了1600。结果,甲只有1000元,其他人都理清了,但甲还欠丁400元。这件事,只有这四个人都知道,这四个人就是一个区块。 口说无凭,这种事也不会写欠条,今后甲不还钱,怎么办?这事除了甲乙丙丁4人在场,其他人都不知道,如果甲要赖账,说根本不欠钱,也只有乙丙丁这3人知道甲赖账,其他人不好判断甲是否欠钱不还。 所以,区块链的价值需要扩大参与面,如果这4个人当时打麻将的时候,有十几个朋友围观呢?这甲赖账的成本就大了吧?这是现实生活的区块。延伸到互联网呢?那就有无限可能了,场景就多了。
2.假如甲乙丙丁四个人是在一个500人的生意群里面做生意,这500人的群就是一个大区块。有一次,甲向乙要了一万元的货,但是没有及时打钱给乙,甲当时说3天内就打钱给乙。这事在群里大家都知道,如果甲在3天内没打钱给乙,那这个群里的其他498位生意伙伴都知道了,甲如果要赖账不还,自己在这个生意圈里面的声誉就受到影响。这是一个区块。
后来,甲又想丙做生意,丙向甲要货,甲说,你先打5000定金,马上就发货,丙打了5000块钱给甲,结果甲迟迟不发货,这事群里面的人都知道,这又是一个区块。两个区块连在一起,大家对甲的信誉就怀疑了。这样搞几次,甲先生今后还玩得下去吗?这就是区块链的价值。
区块链,看似复杂,其实也不复杂;看似简单,其实真要操作起来也很难。区块太小,没有什么意义。区块想要做大,会涉及隐私和商业秘密,比如谈恋爱这事,就不方便在大群里说;比如合作做大生意,就不方便事前在群里(区块)公开讨论。不过,区块链技术使用的场合还是有的,比如扶贫工作、救灾资金管理等,晒在阳光下,大家都知道,相互来监督。 举了这两个例子,不知道大家了解了一点没有?
【关于区块链最核心、易懂的简介】
一、区块链是如何创造信任的?我们以 “1”、 “2”、 “3”来总结区块链的特点:
- “1”句话概括区块链:可信的分布式数据库;
- “2”大核心性质:分布式、不可篡改;
- “3”个关键机制:密码学原理、数据存储结构、共识机制。
“分布式”与“不可篡改”的性质保证了区块链的“诚实”与“透明”,这是区块链能够创造信任的基础。
二、行业方面,预计未来3-5年将以金融行业为主,逐渐向其他实体行业辐射,更切合实际的场景加速落地,行业从“1到N”发展到包括 娱乐 、商品溯源、征信等。
未来,区块链除了自身运用侧链、闪电网络、跨链等技术外,更需要与5G、人工智能、大数据、物联网等新兴信息技术深度融合,从而提升技术性能和链下数据质量并减少资源浪费。
三、智能合约可能是区块链上最具革命性的应用。如果智能合约在区块链上实现广泛运用,经济分工将在互联网时代进一步细化,全球范围内的各网络节点将直接对接需求和生产,更广泛的 社会 协同将得以实现。
如果上述愿景实现,区块链技术与行业的结合有望迎来“从1到N”的爆发时刻,它的爆发或将不是线性的而是非线性的,区块链也才可能从“信任机器”升级成为引领产业浪潮的重要“引擎”。
去中心化。防止作弊。原来一个人记账,可以改,现在是50个人,每个人记录一笔,每个人都账本都有记录,你能把50个都改了吗?50个账本是通的,除非都改掉。所以用处很大。
看到很多人回答,普通人不能直观地理解。我简单明了地解释一下,区块链就是去中心化,发生一件事的时候,大家都记下,且有自己的密码,不可篡改。
就是黑客想改,也得一个一个来,累死他,事实上不可能,至少目前。
区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。
区块链起源于比特币,是比特币的一个重要概念,它本质上是一个去中心化的数据库,同时作为比特币的底层技术,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次比特币网络交易的信息,用于验证其信息的有效性和生成下一个区块。
区块链在国际汇兑、信用证、股权登记和证券交易所等金融领域有着潜在的巨大应用价值。将区块链技术应用在金融行业中,能够省去第三方中介环节,实现点对点的直接对接,从而在大大降低成本的同时,快速完成交易支付。
看了这么多高人的精心指点,本人还是一脸懵,就只记得好像以前有人利用这个所谓的“区块链”做传销……
⑹ 区块链技术如何保障信息主体隐私和权益
隐私保护手段可以分为三类:
一是对交易信息的隐私保护,对交易的发送者、交易接受者以及交易金额的隐私保护,有混币、环签名和机密交易等。
二是对智能合约的隐私保护,针对合约数据的保护方案,包含零知识证明、多方安全计算、同态加密等。
三是对链上数据的隐私保护,主要有账本隔离、私有数据和数据加密授权访问等解决方案。
拓展资料:
一、区块链加密算法隔离身份信息与交易数据
1、区块链上的交易数据,包括交易地址、金额、交易时间等,都公开透明可查询。但是,交易地址对应的所用户身份,是匿名的。通过区块链加密算法,实现用户身份和用户交易数据的分离。在数据保存到区块链上之前,可以将用户的身份信息进行哈希计算,得到的哈希值作为该用户的唯一标识,链上保存用户的哈希值而非真实身份数据信息,用户的交易数据和哈希值进行捆绑,而不是和用户身份信息进行捆绑。
2、由此,用户产生的数据是真实的,而使用这些数据做研究、分析时,由于区块链的不可逆性,所有人不能通过哈希值还原注册用户的姓名、电话、邮箱等隐私数据,起到了保护隐私的作用。
二、区块链“加密存储+分布式存储”
加密存储,意味着访问数据必须提供私钥,相比于普通密码,私钥的安全性更高,几乎无法被暴力破解。分布式存储,去中心化的特性在一定程度上降低了数据全部被泄漏的风险,而中心化的数据库存储,一旦数据库被黑客攻击入侵,数据很容易被全部盗走。通过“加密存储+分布式存储”能够更好地保护用户的数据隐私。
三、区块链共识机制预防个体风险
共识机制是区块链节点就区块信息达成全网一致共识的机制,可以保障最新区块被准确添加至区块链、节点存储的区块链信息一致不分叉,可以抵御恶意攻击。区块链的价值之一在于对数据的共识治理,即所有用户对于上链的数据拥有平等的管理权限,因此首先从操作上杜绝了个体犯错的风险。通过区块链的全网共识解决数据去中心化,并且可以利用零知识证明解决验证的问题,实现在公开的去中心化系统中使用用户隐私数据的场景,在满足互联网平台需求的同时,也使部分数据仍然只掌握在用户手中。
四、区块链零知识证明
零知识证明指的是证明者能够在不向验证者提供任何有用的信息的情况下,使验证者相信某个论断是正确的,即证明者既能充分证明自己是某种权益的合法拥有者,又不把有关的信息泄漏出去,即给外界的“知识”为“零”。应用零知识证明技术,可以在密文情况下实现数据的关联关系验证,在保障数据隐私的同时实现数据共享。
⑺ 什么是区块链加密算法
这个是比特币的一个重要概念,比特币的底层技术区块链运用了很多优秀的加密算法来保证系统可靠性。具体的理解和操作可以去下载链派社区app,听一下里面讲师的课程,你就清楚了。
⑻ 区块链技术概念
区块链技术概念
区块链技术概念,现如今,区块链已经成为大部分人关注的领域,很多企业也早已深入其中研究该技术情况,但是还有人对于它不是很了解,下面我分享一篇关于区块链技术概念的相关信息。
区块链的基本概念和工作原理
1、基本概念
区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。所谓共识机制是区块链系统中实现不同节点之间建立信任、获取权益的数学算法。
区块链Blockchain、是比特币的一个重要概念,它本质上是一个去中心化的数据库,同时作为比特币的底层技术。区块链是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一次比特币网络交易的信息,用于验证其信息的有效性防伪、和生成下一个区块。
狭义来讲,区块链是一种按照时间顺序将数据区块以顺序相连的方式组合成的一种链式数据结构, 并以密码学方式保证的不可篡改和不可伪造的分布式账本。
广义来讲,区块链技术是利用块链式数据结构来验证与存储数据、利用分布式节点共识算法来生成和更新数据、利用密码学的方式保证数据传输和访问的安全、利用由自动化脚本代码组成的智能合约来编程和操作数据的一种全新的分布式基础架构与计算方式。
2、工作原理
区块链系统由数据层、网络层、共识层、激励层、合约层和应用层组成。 其中,数据层封装了底层数据区块以及相关的数据加密和时间戳等基础数据和基本算法;网络层则包括分布式组网机制、数据传播机制和数据验证机制等;共识层主要封装网络节点的各类共识算法;激励层将经济因素集成到区块链技术体系中来,主要包括经济激励的发行机制和分配机制等;合约层主要封装各类脚本、算法和智能合约,是区块链可编程特性的基础;应用层则封装了区块链的各种应用场景和案例。该模型中,基于时间戳的链式区块结构、分布式节点的共识机制、基于共识算力的经济激励和灵活可编程的智能合约是区块链技术最具代表性的创新点。
区块链主要解决的交易的信任和安全问题,因此它针对这个问题提出了四个技术创新:
1、分布式账本,就是交易记账由分布在不同地方的多个节点共同完成,而且每一个节点都记录的是完整的账目,因此它们都可以参与监督交易合法性,同时也可以共同为其作证。
跟传统的分布式存储有所不同,区块链的分布式存储的独特性主要体现在两个方面:一是区块链每个节点都按照块链式结构存储完整的数据,传统分布式存储一般是将数据按照一定的规则分成多份进行存储。二是区块链每个节点存储都是独立的、地位等同的,依靠共识机制保证存储的一致性,而传统分布式存储一般是通过中心节点往其他备份节点同步数据。 [8]
没有任何一个节点可以单独记录账本数据,从而避免了单一记账人被控制或者被贿赂而记假账的可能性。也由于记账节点足够多,理论上讲除非所有的节点被破坏,否则账目就不会丢失,从而保证了账目数据的安全性。
2、非对称加密和授权技术,存储在区块链上的交易信息是公开的,但是账户身份信息是高度加密的,只有在数据拥有者授权的情况下才能访问到,从而保证了数据的安全和个人的隐私。
3、共识机制,就是所有记账节点之间怎么达成共识,去认定一个记录的有效性,这既是认定的手段,也是防止篡改的手段。区块链提出了四种不同的共识机制,适用于不同的应用场景,在效率和安全性之间取得平衡。
区块链的共识机制具备“少数服从多数”以及“人人平等”的特点,其中“少数服从多数”并不完全指节点个数,也可以是计算能力、股权数或者其他的计算机可以比较的特征量。“人人平等”是当节点满足条件时,所有节点都有权优先提出共识结果、直接被其他节点认同后并最后有可能成为最终共识结果。以比特币为例,采用的是工作量证明,只有在控制了全网超过51%的记账节点的情况下,才有可能伪造出一条不存在的记录。当加入区块链的节点足够多的时候,这基本上不可能,从而杜绝了造假的可能.
4、智能合约,智能合约是基于这些可信的不可篡改的数据,可以自动化的执行一些预先定义好的规则和条款。以保险为例,如果说每个人的信息包括医疗信息和风险发生的信息、都是真实可信的,那就很容易的在一些标准化的保险产品中,去进行自动化的理赔.
3、其它
互联网交换的是信息,区块链交换的是价值。人类历史和互联网历史可以用八个字理解:分久必合合久必分,到了分久必合的时代,网络信息全部散在互联网上面,大家要挖掘信息非常不容易,这时会出现像谷歌和脸 书等的平台,它做的唯一的事情就是把我们所有的信息重新组合了一下。互联网时代垄断巨头们重组的就是信息,并不是产生自己的信息,产生的信息完全是我们个人。一旦信息重组,就会出现一个新的垄断巨人,所以就到了分久必合的时代。现在由于区块链技术产生又到了合久必分时代,又是新的多中心化,新的多中心化之后赋能产生新的价值,这些数据会在我们自己的手上,个人数据产生价值是归自己所有,这是这个时代最最激动人心的时代。
区块链的价值有哪些?低成本建立信任的机制,确立数权,解决数据的.产权。
目前区块链技术不断发展,包括现在的单链向多链发展,而且技术能够在进一步扩展,我想未来还是可能会出现,特别是在交易等方面出现颠覆性的,特别是对现有产业的很多颠覆性的场景。
区块链的本质是在不可信的网络建立可信的信息交换。
一带一路+一链。区块链更大的不是制造信任,而是让信任产生无损的传递,整个降低社会的摩擦成本,从而提高整个效益。
现在区块链本身还是初始阶段,所以包括区块链的信息传递、加密,这个过程中出现量子加密和其他加密,实际上对区块链本身所采用的加密算法攻击现象也时有发生。包括区块链也是作为一种资产的认定,数字资产的一个认定,但是现在我们很多都是用密码算法,或者是作为我们来解密的钥匙,但是如果密码忘记了,很可能你现在的资产就丢掉了,你不能够在得到你原来的这些资产,所以在资产管理,包括信息传递和一些安全这些方面,应该说都还是存在着一些隐患。当然那么从技术角度,现在我们区块链本身处理的速度,或者说本身的扩展性,因为从工作机理的角度来看,是要把整个账本要复制给所有的参与人员,所以在区块链本身的运作效率和扩展性方面还是比较受限的。这些我们觉得都还是需要进一步在技术方面有进一步的发展。
区块链平台这些底层技术,又形成包括区块链钱包、区块链浏览器、节点竞选、矿机、矿池、开发组件、开发模块、技术社区及项目社群等一系列的生态系统,这些生态系统的完善程度直接决定着区块链底层平台的使用效率和效果。
4、蒙代尔的不可能三角
去中心化、高效、安全,不可能实现三者全部同时达到极致。
区块链的本质是一种分布式记账技术,与之相对的是中心式记账技术,中心式记账技术在我们目前的生活中广泛存在。区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。
区块链Blockchain、,是比特币的一个重要概念,它本质上是一个去中心化的数据库,同时作为比特币的底层技术,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次比特币网络交易的信息,用于验证其信息的有效性防伪、和生成下一个区块。
狭义来讲,区块链是一种按照时间顺序将数据区块以顺序相连的方式组合成的一种链式数据结构, 并以密码学方式保证的不可篡改和不可伪造的分布式账本。
广义来讲,区块链技术是利用块链式数据结构来验证与存储数据、利用分布式节点共识算法来生成和更新数据、利用密码学的方式保证数据传输和访问的安全、利用由自动化脚本代码组成的智能合约来编程和操作数据的一种全新的分布式基础架构与计算方式。
区块链技术通俗的理解就是:把“物”的前、后、左、右区块用一种技术连接成一个链条,但每个区块的原始数据不可篡改,是一种物联网范畴的、可以让参与者信任的“各个模块链动”的技术。区块链技术的应用,离不开互联道网,也离不开物联网,是建立在二者融合互动基础上的、但又让参与者各自保持独回立的去中心化、、并共同拥有这套价值链共建共享、的技术。
区块链的特征:去中心化、开放性、自治性、信息不可篡改,匿名性。
区块链是一个能够传递价值的网络,对可以传递价值的网络的需求是推动区块链技术产生的重要原因。在对于保护带有所有权或者其他价值的信息需求的推动下,区块链出现了。区块链通过公私钥密码学、分布式存储等技术手段,一方面保证了带有价值的信息的高效传递,另一方面保证了这些信息在传递的过程中不会被轻易的复制篡改。
从区块链诞生的必然性来理解区块链的内涵,区块链是解决了中心化记账缺点、解决了分布式一致性问题的分布式记账技术,同时也是连接互联网升级为保证带有价值的信息安全高效传递的价值网络。
区块链: 区块链就像是一个全球唯一的帐簿,或者说是数据库,记录了网络中所有交易历史。
以太坊虚拟机(EVM): 它让你能在以太坊上写出更强大的程序比特币上也可以写脚本程序、。它有时也用来指以太坊区块链,负责执行智能合约以及一切。
节点:你可以运行节点,通过它读写以太坊区块链,也即使用以太坊虚拟机。完全节点需要下载整个区块链。轻节点仍在开发中。
矿工:挖矿,也就是处理区块链上的区块的节点。这个网页可以看到当前活跃的一部分以太坊矿工:stats.ethdev.com。
工作量证明:矿工们总是在竞争解决一些数学问题。第一个解出答案的(算出下一个区块)将获得以太币作为奖励。然后所有节点都更新自己的区块链。所有想要算出下一个区块的矿工都有与其他节点保持同步,并且维护同一个区块链的动力,因此整个网络总是能达成共识。(注意:以太坊正计划转向没有矿工的权益证明系统(POS),不过那不在本文讨论范围之内。)
以太币:缩写ETH。一种你可以购买和使用的真正的数字货币。这里是可以交易以太币的其中一家交易所的走势图。在写这篇文章的时候,1个以太币价值65美分。
Gas:在以太坊上执行程序以及保存数据都要消耗一定量的以太币,Gas是以太币转换而成。这个机制用来保证效率。
DApp: 以太坊社区把基于智能合约的应用称为去中心化的应用程序(Decentralized App)。DApp的目标是(或者应该是)让你的智能合约有一个友好的界面,外加一些额外的东西,例如IPFS可以存储和读取数据的去中心化网络,不是出自以太坊团队但有类似的精神)。DApp可以跑在一台能与以太坊节点交互的中心化服务器上,也可以跑在任意一个以太坊平等节点上。(花一分钟思考一下:与一般的网站不同,DApp不能跑在普通的服务器上。他们需要提交交易到区块链并且从区块链而不是中心化数据库读取重要数据。相对于典型的用户登录系统,用户有可能被表示成一个钱包地址而其它用户数据保存在本地。许多事情都会与目前的web应用有不同架构。)
以太坊客户端,智能合约语言
编写和部署智能合约并不要求你运行一个以太坊节点。下面有列出基于浏览器的IDE和API。但如果是为了学习的话,还是应该运行一个以太坊节点,以便理解其中的基本组件,何况运行节点也不难。
运行以太坊节点可用的客户端
以太坊有许多不同语言的客户端实现即多种与以太坊网络交互的方法、,包括C++, Go, Python, Java, Haskell等等。为什么需要这么多实现?不同的实现能满足不同的需求例如Haskell实现的目标是可以被数学验证、,能使以太坊更加安全,能丰富整个生态系统。
在写作本文时,我使用的是Go语言实现的客户端geth (go-ethereum),其他时候还会使用一个叫testrpc的工具, 它使用了Python客户端pyethereum。后面的例子会用到这些工具。
关于挖矿:挖矿很有趣,有点像精心照料你的室内盆栽,同时又是一种了解整个系统的方法。虽然以太币现在的价格可能连电费都补不齐,但以后谁知道呢。人们正在创造许多酷酷的DApp, 可能会让以太坊越来越流行。
交互式控制台:客户端运行起来后,你就可以同步区块链,建立钱包,收发以太币了。使用geth的一种方式是通过Javascript控制台。此外还可以使用类似cURL的命令通过JSON RPC来与客户端交互。本文的目标是带大家过一边DApp开发的流程,因此这块就不多说了。但是我们应该记住这些命令行工具是调试,配置节点,以及使用钱包的利器。
在测试网络运行节点: 如果你在正式网络运行geth客户端,下载整个区块链与网络同步会需要相当时间。你可以通过比较节点日志中打印的最后一个块号和stats.ethdev.com上列出的最新块来确定是否已经同步。) 另一个问题是在正式网络上跑智能合约需要实实在在的以太币。在测试网络上运行节点的话就没有这个问题。此时也不需要同步整个区块链,创建一个自己的私有链就勾了,对于开发来说更省时间。
Testrpc:用geth可以创建一个测试网络,另一种更快的创建测试网络的方法是使用testrpc. Testrpc可以在启动时帮你创建一堆存有资金的测试账户。它的运行速度也更快因此更适合开发和测试。你可以从testrpc起步,然后随着合约慢慢成型,转移到geth创建的测试网络上 - 启动方法很简单,只需要指定一个networkid:geth --networkid "12345"。这里是testrpc的代码仓库,下文我们还会再讲到它。
接下来我们来谈谈可用的编程语言,之后就可以开始真正的编程了。写智能合约用的编程语言用Solidity就好。
要写智能合约有好几种语言可选:有点类似Javascript的Solidity, 文件扩展名是.sol. 和Python接近的Serpent, 文件名以.se结尾。还有类似Lisp的LLL。Serpent曾经流行过一段时间,但现在最流行而且最稳定的要算是Solidity了,因此用Solidity就好。听说你喜欢Python? 用Solidity。
solc编译器: 用Solidity写好智能合约之后,需要用solc来编译。它是一个来自C++客户端实现的组件又一次,不同的实现产生互补、,这里是安装方法。如果你不想安装solc也可以直接使用基于浏览器的编译器,例如Solidity real-time compiler或者Cosmo。后文有关编程的部分会假设你安装了solc。
web3.js API. 当Solidity合约编译好并且发送到网络上之后,你可以使用以太坊的web3.js JavaScript API来调用它,构建能与之交互的web应用。
⑼ 超详细整理区块链和加密货币行业术语(建议收藏)
比特币词汇表:你需要知道的每一个区块链和加密货币短语
尽管困难重重,区块链技术已成为主流。比特币已成为家喻户晓的词,世界各地的金融机构都投资于加密货币或允许其客户这样做。与此同时,NFT 吸引了各路名人的加入和赞赏。
但尽管如此,区块链技术仍然非常神秘。只有才华横溢的工程师才能真正理解这些——其中许多人是比特币和以太币等加密货币的早期采用者,而对于外行来说可能仍是很困难的。
以下是您可能会觉得有用的区块链术语的词汇表。(所有短语按英文字母顺序排列)
空投(Airdrop)
空投是指公司将加密货币或 NFT 直接放入您的钱包中。 区块链 服务将推出代 币 并空投给曾使用过该服务的用户,而不是首次公开募股。这样做有几个原因:它可以是纯粹的营销,因为空投提高了人们可以投资的代币的意识,或者可以为 DAO 提供治理代币。
最近的一个例子:以太坊名称服务允许用户将他们的钱包号码更改为钱包名称(如 CNET.eth)。去年 12 月,它推出了自己的 ENS 代币,向所有使用该服务的人空投了一定金额。使用以太坊名称服务的人越多,他们被空投的代币就越多——在某些情况下价值数万美元。
山寨币(Altcoin)
任何不是 比特币 或 以太币的加密货币都被称为山寨币(Altcoin) 。有时候也被称为“ shitcoins。 ”
币安(Binance)
世界上最大的 加密货币 交易所,人们在这里购买和交易加密货币。它正在接受美国司法部和美国国税局的逃税和洗钱调查。
区块链(Blockchain)
区块链是“分布式数据库”。简单来说,它是一个去中心化的账本,将信息记录在数字“块”中。一旦一个块被挖掘并添加到链中,它就不能被更改,因此区块链提供了不可更改数据的公共记录。
有许多不同的区块链具有不同程度的去中心化、效率和安全性。许多人拥有自己的加密货币——例如,以太币是一种建立在 以太坊区块 链上的加密货币。
比特币(Bitcoin)
比特币是第一个 加密货币 ,建立在比特币区块链之上。它是由一个人或一群人以中 本聪 的笔名于 2009 年创建的。只能铸造2100 万枚,其中大约1890 万枚已经在流通。
销毁(Burning)
加密货币 通过发送到只能接收而不能发出的钱包而被“烧毁”。销毁机制通常被用来造成通缩影响:流通中的 代币 越少,投资者持有的 代币 就越稀缺。
买跌(Buy the dip)
这是指在价格下跌后购买更多资产。例如,如果价格下跌 10,000 美元,比特币持有者可能会“逢低买入”。
冷钱包(Cold Wallet)
未连接到互联网的加密货币钱包。这些钱包更安全,更不容易受骗。
跨链(Cross-chain)
将数据、代币或资产从一个区块链发送到另一个区块链的能力。这不同于为在多个区块链上工作而构建的“ 多链 ”服务。
密码学(Cryptography)
一种信息加密形式,其中数据只能使用密钥进行解密。使用 工作量证明 协议的 区块链 依赖于解决极其复杂的密码学难题,以便挖掘和验证新区块。
加密货币(Cryptocurrency)
加密货币是 区块链 原生的代 币 。加密货币通常随着每个新区块的开采而铸造。例如,每 挖出 一个新的 以太坊 区块, 都会 获得两个以太币作为对矿工的补偿。
加密货币是一种代 币 。它们的诞生是它们的决定性因素:其他代币是使用构建在区块链之上的平台和应用程序创建的,而加密货币则内置于区块链的协议中。
去中心化应用(Dapps)
去中心化应用程序的缩写。
道(DAO)
一个去中心化的自治组织。DAO 是一个通过共识做出决策的组织:所有 治理代币的 持有者都在组织决策中获得投票权,投票最多的解决方案是 DAO 的行动方案。想象一个去中心化的投资银行,但不是由基金经理做出投资决定,而是由其 治理代币 的持有者投票决定如何投资其国库中的资金。
去中心化交易所(Decentralized exchange)
去中心化交易所用于购买和交易 加密货币 。与典型的交易所不同,这些交易所使用绕过任何中心化权威的点对点交易。其中包括 Uniswap 和 Sushiswap。
去中心化金融(DeFi)
“decentralized finance”的缩写。DeFi 是使用 区块链 技术绕过中心化机构任何金融工具,例如 智能合约 或 DAO 。
钻石手(Diamond Hands)
钻石手是长期或在价格动荡期间持有金融资产的人。
DYOR
“Do Your Own Research”的缩写。
以太币(ETH)
在以太坊区块链上开采的 加密货币 。以太 币 的市值仅次于 比特币 ,但却是一种更常用的加密货币。大多数 山寨币 也是 基于以太坊构建的 ,因此与以太 币挂钩 。大多数 NFT 也建立在以太坊上,这就是为什么以太是 NFT 交易中使用的主要代币。
以太坊(Ethereum)
与 比特币 竞争的区块链。它旨在采用 比特币 开发人员开创的区块链技术,并将其用于更复杂的金融工具,如 智能合约 。
闪贷(Flash loan)
闪电贷是一种 DeFi 工具,允许在没有抵押品的情况下进行贷款。闪电贷允许您借钱购买资产,但前提是可以购买资产并在同一区块内偿还利息。想象一下,使用贷款购买一栋 100 万美元的房子,但只有当您已经排好另一个愿意支付足够费用让您偿还贷款和利息的买家时,贷款才会被批准。
这些贷款使用 智能合约 技术。
FUD
“fear, uncertainty and doubt”的缩写。这可能是合法的,例如人们对代币或 NFT 项目的安全性或合法性或安全性表示担忧,例如鼓励人们出售、降低资产价格的有组织的举动。
Gas
Gas 是您使用 以太坊 网络所要支付的价格。每笔交易都需要支付gas 费 ,这取决于 区块链的 过载程度。每笔交易的价格通常在 50 美元到 500 美元之间,但在网络负载过重时价格可能会飙升。
治理代币(Governance token)
治理代币是赋予所有者对给定项目投票权的加密货币。另请参阅: DAO 。
GWEI
gas 的成本以 GWEI 表示。作为粗略的指导,当 gwei 低于 50 时,gas 会很便宜,而当 gwei 高于 100 时,gas 会很贵。
HODL
“hold”的故意拼写错误,用于鼓励人们在价格下跌期间持有他们的代币。
Layer 1和Layer 2
如果您涉足 加密货币, 您会听说Layer 1和Layer 2解决方案。Layer 1是 区块链 架构本身,而Layer 2是指建立在区块链之上的架构。
例如,以以太坊的高gas成本问题为例。Layer 1解决方案是让 以太坊区块 链更高效,例如通过采用 权益证明 协议。Layer 2解决方案的一个例子是 Immutible X,这是一个建立在以太坊之上的交易所,它使用 智能合约 技术允许无气体、碳中和的交易。
流动性市场(Liquid Market)
流动性市场是一个拥有大量买家和卖家的市场,它允许几乎立即完成买卖订单。 加密货币 市场具有流动性,而 NFT 市场则不然。大多数合法的加密货币可以随时买卖,因为 NFT 交易者需要列出待售物品,希望买家手动购买。
主网(Mainnet)
一个供公众使用的区块链协议将被放入主网。这将它与测试网区分开来,后者更像是区块链协议的测试版发布。
模因币(Memecoins)
许多加密货币旨在提供实用程序或服务为目的。Memecoins 不提供实用前景,纯粹作为投机资产存在。狗狗币是最知名的 ,但还有很多很多。
元掩码(MetaMask)
一种基于浏览器的在线数字钱包,主要用于 以太坊区块链 上的交易。
矿业(Mining)
挖矿是验证交易并将区块添加到区块 链的过程 。这通常涉及解决复杂 密码 问题的强大计算机。至关重要的是,这也是将新的 加密货币 添加到流通中的方式。
矿机(Mining Rig)
为挖掘 加密货币 的特定目的而设置的功能强大的计算机。
矿场(Mining Farm)
全天运行的采矿设备仓库(或房间),用于挖掘 加密货币 。
铸币(Mint)
在区块链上,铸币意味着验证信息并将其作为区块链上的一个块。
“铸造” NFT 意味着在公开发售期间从其创建者那里购买它。“铸币价格”是指它的创造者出售它的价格——例如无聊猿游艇俱乐部的“铸币价格”是 0.08 以太币。在一个集合中的所有 NFT 都被铸造之后,想要接触该集合的交易者需要从 OpenSea 等二级市场购买它们。
多链(Multi-chain)
设计用于多个 区块链 的应用程序或服务。这与 跨链 应用程序和服务不同, 跨链 应用程序和服务旨在将数据或资产从一个区块链发送到另一个区块链。
月球(MOON)
价格的急剧飙升被称为“mooning”或“a moon”。“To the moon(去月球)”是一个常见的短语。
NFT
不可替代的代币(Non-fungible token)。这些是证明数字资产所有权的数字契约。目前,它们与艺术相关,但 NFT 可以证明任何数字的所有权。
链下/链上(Off-Chain/On-chain)
链上是指存在于 区块链 上的东西,链下是指存在于 区块 链之外的东西。 加密货币 是链上货币,法定货币是链下货币。
OpenSea
它是最大的 NFT 市场,专门研究基于 以太坊 的 NFT。(建立在不同区块链上的 NFT 通常在专门的市场上出售。例如,Solana NFT 在 Solanat 上出售。)
Play to Earn(P2E)
Play to Earn (P2E) 游戏 集成了区块链,并以 游戏 内 加密货币 奖励玩家。这些 游戏 中的加密货币可以兑换成比特币或以太币。最突出的例子是 Axie Infinity,玩家可以获得 Smooth Love Potion ($SLP)。
工作量证明(Proof of Work)
工作量证明(POW)是一种共识机制,通过该机制将块添加到区块链中。工作量证明要求矿工解决复杂的 密码学 难题,这需要强大的采矿设备提供大量能源,以验证新的区块链交易。
工作量证明是一种安全且去中心化的共识机制,但效率低下是出了名的。这就是比特币和以太坊区块链的运作方式,尽管以太坊很快就会转向更高效 的权益证明(Proof of Stake) 。
权益证明(Proof of Stake)
面对工作量 证明 的巨大能源需求, 权益 证明(POS)是一种更新的共识机制,可以更有效地挖掘区块。权益证明允许 加密货币 持有者在相关区块 链 上验证新区块。
他们通过抵押他们的 加密货币来 做到这一点。网络用户质押他们的加密货币,如果他们的股份是通过随机算法选择的,他们就有机会验证一个新区块——为此他们将获得更多加密货币形式的奖励。质押的加密货币越多,选择用户验证新区块的机会就越大。
工作证明奖励那些花费最多计算能力来解决密码难题的人,而权益证明奖励那些长期投资加密货币的人。
抽水和倾销(Pump and mp)
抽水和倾销计划涉及对产品的人为刺激,从而导致人们购买并提高其价格。然后,抽水和倾销协调者以高价出售其资产,从而导致价格急剧下跌。
这些存在于传统市场中,但在 加密货币 交易中更为常见,因为微市值加密货币的低流动性使其价格更容易操纵。
地毯拉动(Rug pull)
地毯拉动是指 加密货币 的创造者消失,并带走资金。最近的一个例子是伪造的Squid Game 硬币,尽管这些硬币远非罕见。“地毯”本质上是“骗局”的简写。
中本聪(Satoshi Nakamoto)
比特币 创造者的化名。解释去中心化金融的必要性和解释比特币如何运作的白皮书由中本聪签署,但没有人知道真实的人是谁。据推测,中本聪实际上是几个人。
助记词(Seed Phrase)
当你创建一个 加密货币 钱包时,你会得到一个 12 字的种子短语。每次在新设备上登录钱包时,都需要使用助记词。 永远不要把你的助记词给任何人 。
分片(Sharding)
分片在 区块链上 分配网络负载,允许每秒处理更多事务。这听起来很枯燥,但它非常重要。 以太坊 将在明年整合分片,这将使使用它更便宜,对环境的破坏也更小。
垃圾币(Shitcoin)
Shitcoin 是一种不提供任何效用的 山寨币 ,无论是 memecoin 还是无效的 山寨币 。
丝绸之路(Silk Road)
Silk Road 是一个在线黑市,于 2013 年被 FBI 关闭。这是许多人第一次接触 加密货币的地方 ,因为 比特币 是该网站非法商品的流行支付方式。
智能合约(Smart contract)
智能合约是在满足所需条件时自行执行的数字合约。例如,如果 Wallet X 向 Wallet Y 发送 0.08 ether,Wallet Y 向 Wallet X 发送 NFT Z。它们最常用于自动交易,但也可用于更复杂的用途,例如 快速贷款 。
稳定币(Stable coin)
稳定币是与美元挂钩的加密货币。其中包括 Tether 和 USDC。他们的目的是让 加密货币 交易者将他们的代币保存在加密生态系统中,而不会经历 比特币 和 以太币 价格波动的波动。
质押(Staking)
权益质押是在加密货币钱包中锁定持有资金,从而支持区块链网络运营。从本质上讲,它包括锁定加密货币以获得奖励。在大多数情况下,该流程需要用户使用个人加密钱包参与到区块链活动中。
权益质押的概念与权益证明(PoS)机制密切相关。它被用于许多基于PoS或相类似的其他区块链系统中。
TLT
“think long term”的缩写。
代币(Token)
代币是多种形式的区块链资产。像 比特币 这样的 加密货币 是一种代币。其他类型包括 治理代币 ,它授予持有者在 DAO 或服务中的投票权,或 实用代币 ,其中根据持有的代币数量授予对服务的访问权限。
TXN
交易(transaction)的缩写。
实用代币(Utility Token)
旨在提供某种功能的代币。这些可以是对应用程序、服务或 游戏 的访问。示例包括 Filecoin,它授予对基于区块链的数字存储的访问权限,以及 Link,它连接 了链下 类型数据的智能合约。
虚荣地址(Vanity Address)
由 Ethereum Name Service 等公司提供的个性化钱包地址。它允许您将钱包地址更改为您选择的单词或短语,例如 CNET.eth。
Vaporware
承诺但从未真正进入市场的产品。该术语在 90 年代后期随着最初的互联网繁荣而流行起来,并且由于阴暗的 加密货币 创造者而得到了复兴。
维塔利克·布特林(Vitalik Buterin)
以太坊区块链 背后的创造者。
钱包(Wallet)
加密货币钱包是您可以存储加密货币和 NFT 的地方。这些钱包可以是热钱包或冷钱包——即连接到互联网的浏览器钱包或未连接到互联网的物理硬件。钱包可以读写,这意味着它们可以接收信息,也可以作为签名或在线 ID。
Web 3
Web3 是区块链爱好者想象的互联网的下一次迭代。从互联网发明到 2005 年左右,Web1 是只读互联网。Web2 指的是用户能够制作内容并将其上传到互联网上的出现。Web3 将是一个集成了区块链的互联网。想象一下,将您的社交媒体帖子作为 NFT 拥有,使用像以太币这样的 加密货币 作为通用货币,并将您的钱包作为一种 ID 形式而不是电子邮件/密码组合。
鲸(Whale)
持有大量加密货币的人。
白名单 ( Whitelist)
加密货币 和 NFT 的 预售清单。列入白名单的投资者可以在公开发行前购买资产,有时以折扣价购买。
WAGMI
“we're all going to make it”的缩写。
⑽ 区块链是什么有什么作用
区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。所谓共识机制是区块链系统中实现不同节点之间建立信任、获取权益的数学算法 。