摘要:区块链加密网络1.区块链之加密原理总结(一) 先放一张以太坊的架构图: 在学习的过程中主要是采用单个模块了学习了解的,包括P2P,密码学,网络,协...
区块链加密网络
1. 区块链之加密原理总结(一)
先放一张以太坊的架构图:
在学习的过程中主要是采用单个模块了学习了解的,包括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算法提供的一套集成(混合)加密方案。其中包括了非对称加密,对称加密和签名的功能。
ECC 是 Elliptic Curve Cryptography的简称。那么什么是椭圆加密曲线呢?Wolfram MathWorld 给出了很标准的定义: 一条椭圆曲线就是一组被 定义的且满足 的点集。
这个先订条件是为了保证曲线不包含奇点。
所以,随着曲线参数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的整个的加密,认证,签名模型如下:
2. 区块链到底是啥啊
区块链是一种特殊的网络账本。区块链技术的核心是数字加密。早在1991年一群年轻人为了不使电子文档的日期被篡改发明一套彼此相互验证的新加密技术,借由密码学串接并保护内容的串连文字记录(又称区块)。
区块链存储数据的单元是区块,而每个区块都严格按顺序排队,形成一条“链”。如果有人想改变某一区块的内容,该区块唯一的特征也会随之改变,后面的区块立马就不认它了,这个“假”区块只好乖乖脱链。
(2)区块链加密网络扩展阅读
全球各地的使用者,便可将自己的服务器连接到区块链网络中,成为这个分布式数据库存储系统中独立的一个一个节点。一旦加入,该节点便享有同其他所有节点一样的权利与义务。
于是,在区块链上开展服务的人,便可以往这个系统中的任意的节点进行读写操作。而全世界所有节点会根据某种机制完成一次又一次同步,从而实现在区块链网络中所有节点的数据完全一致。
正因为具有不可更改和去中心化这两大特征。区块链很好地解决了现代商业社会颇为头痛的信任问题。它已经在金融服务、物联网、公共服务、社会公益和供应链管理等社会领域崭露头角。
3. 什么是区块链概念
区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。区块链是比特币的一个重要概念,它本质上是一个去中心化的数据库,同时作为比特币的底层技术,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次比特币网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。
区块链起源于比特币,2008年11月1日,一位自称中本聪的人发表了《比特币:一种点对点的电子现金系统》一文,阐述了基于P2P网络技术、加密技术、时间戳技术、区块链技术等的电子现金系统的构架理念,这标志着比特币的诞生。两个月后理论步入实践,2009年1月3日第一个序号为0的创世区块诞生。几天后2009年1月9日出现序号为1的区块,并与序号为0的创世区块相连接形成了链,标志着区块链的诞生。
4. 什么是区块链技术区块链到底是什么什么叫区块链
1、所谓区块链技术,简称BT(Blockchaintechnology),也被称之为分布式账本技术,是一种互联网数据库技术,其特点是去中心化、公开透明,让每个人均可参与数据库记录。
用通俗的话阐述:如果我们把数据库假设成一本账本,读写数据库就可以看做一种记账的行为,区块链技术的原理就是在一段时间内找出记账最快最好的人,由这个人来记账,然后将账本的这一页信息发给整个系统里的其他所有人。
2、区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。
区块链(Blockchain),是比特币的一个重要概念,它本质上是一个去中心化的数据库,同时作为比特币的底层技术,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次比特币网络交易的信息,用于验证其信息的有效性(防伪)和生成下一个区块。
(4)区块链加密网络扩展阅读:
区块链系统由数据层、网络层、共识层、激励层、合约层和应用层组成。其中,数据层封装了底层数据区块以及相关的数据加密和时间戳等基础数据和基本算法;网络层则包括分布式组网机制、数据传播机制和数据验证机制等;共识层主要封装网络节点的各类共识算法。
激励层将经济因素集成到区块链技术体系中来,主要包括经济激励的发行机制和分配机制等;合约层主要封装各类脚本、算法和智能合约,是区块链可编程特性的基础;应用层则封装了区块链的各种应用场景和案例。
5. 什么是区块链技术区块链到底是什么什么叫区块链
区块链技术是互联网十大典型司法技术应用之一。区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新应用模式。
区块链是比特币的一个重要概念。实际上,它是一个分散的数据库。区块链作为比特币的底层技术,是利用密码学方法生成的一系列数据块。每个数据块包含一批比特币网络交易信息,用于验证其信息的有效性(防伪),并生成下一个数据块。
区块链起源于比特币。2008年11月1日,一位自称中本聪(SatoshiNakamoto)的人发表了《比特币:一种点对点的电子现金系统》一文,阐述了基于P2P网络技术、加密技术、时间戳技术、区块链技术等的电子现金系统框架概念,标志着比特币的诞生。
(5)区块链加密网络扩展阅读:
区块链的诞生:
2008年由中本聪第一次提出了区块链的概念,随后几年,区块链成为电子货币比特币的核心组成部分:所有交易的公共账户。通过使用点对点网络和分布式时间戳服务器,可以对区块链数据库进行自主管理。
为比特币发明的区块链使其成为第一个解决重复消费问题的数字货币。比特币设计已经成为其他应用的灵感来源。2016年12月20日,数字货币联盟——中国FinTech数字货币联盟及FinTech研究院正式筹建。
6. 一文读懂,XFS中你必须掌握的密码与区块链理论术语
人们对于事物的深刻认知,不是像“如何将大象放进冰箱?”那般,只回答“打开冰箱,把大象放进去,关上冰箱”那么简单。 任何事物都需要一个抽丝剥茧,化整为零的认知过程。 特别是一个新兴的概念和事物,更需要更加细致的了解。
XFS系统是一个分布式文件系统,但它并不是一个单一的框架结构,他 是密码学、区块链、互联网等多种技术手段结合的一个有机整体 ,因此,想要更详细的了解它,我们必须知道一些专业术语的概念。
1.加密网络
加密网络简单来说就是一个公共区块链。在区块链技术诞生之前,互联网网络中的数据传输其实是没有任何加密手段的,黑客一旦截取的其中的数据,那么除非那段数据本身就是密文,否则那些数据就直白地暴露在黑客眼前。
加密网络便是通过区块链技术,由区块链各个节点维护,任何人都可以无需许可加入,更重要的是,整个网络中运转的数据是加密的。XFS系统便是一个典型的加密网络。
2.哈希算法
哈希算法是区块链中用以确保数据完整性和安全性的一个特殊程序。哈希算法采用的是名为“哈希函数”数学关系,结果输出被称为“加密摘要”。加密摘要的特点是任意长度的数据输入后,返回的都是一个唯一且固定长度的值。
哈希函数具备:
基于这些特性,它在保证加密安全时也被用于防篡改,因为即使对散列函数的数据输入进行微小更改也会导致完全不同的输出。这也成为了现代密码学和区块链的主力。
3.分布式账本
区块链就是一个分布式账本,但这个账本不仅仅可以记录交易信息,还可以记录任何数据交互。每个分类帐交易都是一个加密摘要,因此无法在不被检测到的情况下更改条目。这样使得区块链使参与者能够以一种去中心化的方式相互审计。
4.私钥和公钥
私钥和公钥是区块链通过哈希算法形成加密后生成的一组用于解密的“钥匙”。通过对私钥加密,形成公钥,此时,原始信息只能通过私钥进行查看,由用户自己保存,公钥就如同一个房屋地址,用于进行数据交互,是可以公开的。反之,如果对公钥加密,形成私钥,那么就会形成不可篡改的数字签名,因为这个公钥上的签名只有私钥拥有者才能进行创建。
1.节点
节点是一个区块链网络的最基础建设,也是区块链网络和现实连接的物理设备。单个节点拥有许多的功能,例如缓存数据、验证信息或将消息转发到其他节点等。
2.点对点(P2P)网络
区块链所构建的便是去中心化后节点与节点之间的数据交互。传统的互联网数据传输是一种客户端—服务器—客户端的中心辐射模式。点对点网络则更符合“网”这个词,在这个网络中,每个节点都在单一通信协议下运行,以在它们之间传输数据,避免了因为服务器单点故障而引发的网络崩溃。
3.共识验证
区块链的共识验证解决了大量分散的节点意见不统一的问题,以“少数服从多数”的哲学依据,在区块链网络中,更多的节点认可便意味着“共识”,通常而言,区块链网络中超过51%的节点认可的便会被采用和认可。
4.复制证明和时空证明
这两个证明在XFS系统中都可以总称为存储证明。XFS系统的核心功能之一是数据存储,因此,为了证明存储的有效性,便通过复制证明验证数据是否存在节点存储空间中,并通过时空证明验证时间上的持续性。存储提供方如果在储存有效期内能持续提交存储证明,那么他便会获得由XFS系统提供的奖励。
5.冗余策略和纠删码
这是XFS用来平衡数据存储量的两个方式。冗余策略将数据通过多副本的方式备份,确保数据在损坏或丢失后能找回。
纠删码则是确保数据在复制、传输时不会产生过多备份,节省存储空间、提高传输效率。
6.文件分片协议
XFS将文件切分为N个细小的碎片存储在节点当中,这些碎片只要有任意 M个碎片即可恢复出数据,这样只要不同时有 N-M+1 个节点失效就能保证数据完整不丢失。
7.智能合约
XFS中的智能合约是一段程序代码,由于是基于区块链生成的,因此同样继承了区块链不可篡改、可追溯等特点,它能保证双方执行结果的确定性,这也使得XFS网络中的数据交互变得更加可信。
8.Dapp
即去中心化APP,同普通的APP一样具备更加方便快捷的网络接入端口,唯一不同的便是它抛弃了传统APP中心化的特点,这使得Dapp中的数据是归属于用户自身,不用担心隐私泄露、大数据杀熟等问题。
XFS系统是一个开放性平台,用户可以自由的在其中使用、设计、创作各种Dapp。
结语
关于XFS中的理论术语基于篇幅原因是很难详细展开细讲的,这其中涉及到了更多的互联网和区块链专业知识。但通过上面这些简单的解释,相信大家对XFS系统也有了一个比较立体的认知,那么,我们便期待打破传统中心化存储弊端,开船全新存储时代的XFS新一代分布式文件系统吧。
7. 什么是区块链
大家在谈到区块链,数字货币时,都是听之色变,惶恐避之
区块链是什么?
数字货币又是什么?
让大众更加直观,清楚的认识到这就是区块链。
区块链是什么呢?很多人对于区块链还不是很清楚,下面就给大家通俗解释一下,大家一起来看看吧。
1.区块链概念
专业术语:区块链是分布式数据存储,点对点传输,
共识机制,加密算法等计算机技术的新型应用模式。
通俗讲义:引用影片中的解释,区块链就是把这些不透 明的杯子,全部换成透明的杯子,这样永远都可以知道自己的钱在哪里,永远属于你,不会被别人偷走。
2.区块链
基本特征
1.去中心化
在传统中心化网络系统中,黑客对一个中心节点进行攻击便可摧毁这个网络,而在去中心化的区块链网络中,无中心节点可攻击
而且在去中心化的交易方法便捷方便没有第三方介入,点对点直接交互,使得的大规模的信息交互方式成为现实
既保证了信息没有泄露,也保证了钥匙在你手中,还能快速便捷的交易。
2.开放性
系统是开放的,除了交易各方的私有信息被加密外,区块链的数据对所有人公开,任何人都可以通过公开的接口查询区块链数据和开发相关应用,因此整个系统信息就像一个透明的杯子,大家都能看得到里面的东西。
3.信息不可篡改
当区块经过验证并添加到区块链上,就会永久存储起来,并且不可更改,除非能够同时控制住系统中超过51%的节点,否则单个节点上对数据库的修改是无效的,因此区块链的数据稳定性和可靠性极高。
4.匿名性
由于区块链各节点之间的数据交换遵循固定且预知的算法因此区块链网络是无须信任,可以基于地址而非个人身份进行数据交换。区块链的匿名性是一把双刃剑,它既保护信息的保密性和交易的安全性,但也同时也造成了非法交易的猖獗。造成了执法部门的困难,也让用户产生了不信任感。
以上就是一部分区块链的基础介绍了,相信随着大众对区块链越来越多的了解,这项技术会被更多人认可和使用,
8. 什么是区块链,区块链有什么作用
什么是区块链?会对以后的生活带来什么样的改变?
区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。
区块链(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个账本是通的,除非都改掉。所以用处很大。
看到很多人回答,普通人不能直观地理解。我简单明了地解释一下,区块链就是去中心化,发生一件事的时候,大家都记下,且有自己的密码,不可篡改。
就是黑客想改,也得一个一个来,累死他,事实上不可能,至少目前。
区块链是分布式数据存储、点对点传输、共识机制、加密算法等计算机技术的新型应用模式。
区块链起源于比特币,是比特币的一个重要概念,它本质上是一个去中心化的数据库,同时作为比特币的底层技术,是一串使用密码学方法相关联产生的数据块,每一个数据块中包含了一批次比特币网络交易的信息,用于验证其信息的有效性和生成下一个区块。
区块链在国际汇兑、信用证、股权登记和证券交易所等金融领域有着潜在的巨大应用价值。将区块链技术应用在金融行业中,能够省去第三方中介环节,实现点对点的直接对接,从而在大大降低成本的同时,快速完成交易支付。
看了这么多高人的精心指点,本人还是一脸懵,就只记得好像以前有人利用这个所谓的“区块链”做传销……
9. 区块链的加密技术
数字加密技能是区块链技能使用和开展的关键。一旦加密办法被破解,区块链的数据安全性将受到挑战,区块链的可篡改性将不复存在。加密算法分为对称加密算法和非对称加密算法。区块链首要使用非对称加密算法。非对称加密算法中的公钥暗码体制依据其所依据的问题一般分为三类:大整数分化问题、离散对数问题和椭圆曲线问题。第一,引进区块链加密技能加密算法一般分为对称加密和非对称加密。非对称加密是指集成到区块链中以满意安全要求和所有权验证要求的加密技能。非对称加密通常在加密和解密进程中使用两个非对称暗码,称为公钥和私钥。非对称密钥对有两个特点:一是其间一个密钥(公钥或私钥)加密信息后,只能解密另一个对应的密钥。第二,公钥可以向别人揭露,而私钥是保密的,别人无法通过公钥计算出相应的私钥。非对称加密一般分为三种首要类型:大整数分化问题、离散对数问题和椭圆曲线问题。大整数分化的问题类是指用两个大素数的乘积作为加密数。由于素数的出现是没有规律的,所以只能通过不断的试算来寻找解决办法。离散对数问题类是指基于离散对数的困难性和强单向哈希函数的一种非对称分布式加密算法。椭圆曲线是指使用平面椭圆曲线来计算一组非对称的特殊值,比特币就采用了这种加密算法。非对称加密技能在区块链的使用场景首要包含信息加密、数字签名和登录认证。(1)在信息加密场景中,发送方(记为A)用接收方(记为B)的公钥对信息进行加密后发送给
B,B用自己的私钥对信息进行解密。比特币交易的加密就属于这种场景。(2)在数字签名场景中,发送方A用自己的私钥对信息进行加密并发送给B,B用A的公钥对信息进行解密,然后确保信息是由A发送的。(3)登录认证场景下,客户端用私钥加密登录信息并发送给服务器,服务器再用客户端的公钥解密认证登录信息。请注意上述三种加密计划之间的差异:信息加密是公钥加密和私钥解密,确保信息的安全性;数字签名是私钥加密,公钥解密,确保了数字签名的归属。认证私钥加密,公钥解密。以比特币体系为例,其非对称加密机制如图1所示:比特币体系一般通过调用操作体系底层的随机数生成器生成一个256位的随机数作为私钥。比特币的私钥总量大,遍历所有私钥空间获取比特币的私钥极其困难,所以暗码学是安全的。为便于辨认,256位二进制比特币私钥将通过SHA256哈希算法和Base58进行转化,构成50个字符长的私钥,便于用户辨认和书写。比特币的公钥是私钥通过Secp256k1椭圆曲线算法生成的65字节随机数。公钥可用于生成比特币交易中使用的地址。生成进程是公钥先通过SHA256和RIPEMD160哈希处理,生成20字节的摘要成果(即Hash160的成果),再通过SHA256哈希算法和Base58转化,构成33个字符的比特币地址。公钥生成进程是不可逆的,即私钥不能从公钥推导出来。比特币的公钥和私钥通常存储在比特币钱包文件中,其间私钥最为重要。丢掉私钥意味着丢掉相应地址的所有比特币财物。在现有的比特币和区块链体系中,现已依据实践使用需求衍生出多私钥加密技能,以满意多重签名等愈加灵敏杂乱的场景。