名词释义
区块链相关
区块
Block(区块):是一种特殊的数据结构,一个区块就是若干交易数据的集合,它会被标记上时间戳和之前一个区块的独特标记。区块头经过哈希运算后会生成一份工 作量证明或权益证明,从而验证区块中的交易。有效的区块经过全网络的共识后会被追加到主区块链中。
创世区块
Genesis Block(创世区块),区块链的第一个区块,一般用于初始化,不带有交易信息。
区块链:
Blockchain(区块链),由多个区块链接而成的链表结构,除了创世区块,每个区块头部都包括前继区块内容的Hash值,也就是说链上每个区块都是可以验证的,链上的区块顺序也是可以验证的。
地址
区块链地址其实就是一串字符和数字组成的字符串。 就像别人向你的email地址发送电子邮件一样,他可以通过你的地址向你发送代币。
分叉:
在节点验证区块链发生冲突时,会发生分叉(forking)。也就是说在某一区块之后,网络中有多于一个区块链,且每个区块链由一些矿工验证。分叉共有三种:普通分叉、软分叉和硬分叉。
普通分叉:
是由于两个或者多个矿工几乎同时发现了一个区块引起的暂时冲突。网络将选择差难度值最高的分叉。比如,在挖矿过程中,已经确认生产11800区块,但两个矿工同时生成了11801区块,矿工A在该块下又生成了1个区块;支持矿工B的节点有在该块下生成了2个区块;一般来说会支持矿工B所在的分叉,并最终被整个网络接受。
软分叉:
更改区块链源代码后,会引起冲突,如果必须要求有50%以上算力的矿工升级以解决冲突,叫作软分叉; 比如,如果更新源代码使旧区块/交易的一部分失效,则有50%以上算力的矿工升级后可以解决,这样新的区块链将有更大难度值,最后被整个网络接受。
硬分叉:
更改区块链源代码后,会引起冲突,如果必须要求所有矿工升级以解决冲突,叫作硬分叉。 硬分叉的一个例子是,如果更新源代码是为了更改对矿工的回报,则全部矿工需要升级以解决冲突。以太坊自发布以来经历了多次硬分叉和软分叉。
代币:
通过密码学技术,在区块链上发行的电子代币。用于交易、投票、支付矿工费用、虚拟奖励等各种用途。
钱包
钱包指保存代币地址和私钥的软件, 可以用它来接收、 发送、 储存你的代币。
交易:
简单地说, 交易指把代币从一个地址转到另一个地址。 更准确地说, 一笔“交易”指一个经过签名运算的,表达价值转移的数据结构。 每一笔“交易”都经过区块链网络传输, 由矿工节点收集并封包到区块中,永久保存在区块链上。
交易所:
就是法币与代币兑换、代币与代币兑换的场所。
智能合约:
即以计算机程序的方式来缔结和运行各种合约。 运行在区块链上的提前约定的合同;
燃料
燃料( Gas) ,控制某次交易执行指令的上限。每执行一条合约指令会消耗固定的燃料。当某个交易还未执行结束,而燃料消耗完时,合约执行终止并回滚状态。
Mining(挖矿)
通过不断的暴力尝试来找到一个字符串,使得它加上一组交易信息后的Hash值符合特定规则(例如前缀包括若干个0) ,找到的人可以宣称新区块被发现,并获得系统奖励的数字货币。
Miner( 矿工)
参与挖矿的人或组织。
Mining Machine(矿机)
专门为数字货币挖矿而设计的设备,包括基于CPU挖坑、GPU挖坑、FPGA挖坑、专用芯片挖坑等多种实现。
Mining Pool( 矿池)
采用团队协作方式来集中算力进行挖矿,对产出的数字货币进行分配。
挖矿难度
就是基于PoW机制的链,在矿工挖矿时,需要每过一段时间调整计算难度(例如增加前缀中0的个数),来应对日益增强的算力。
加解密相关
Hash
任意长度的二进制值( 明文) 映射为较短的固定长度的二进制值( Hash 值) ,并且不同的明文很难映射为相同的 Hash 值。
目前流行的 Hash 算法包括 MD5、SHA-1 和 SHA-2。
数字摘要
顾名思义,数字摘要是对数字内容进行 Hash 运算,获取唯一的摘要值来指代原始数字内容。数字摘要是解决确保内容没被篡改过的问题( 利用 Hash 函数的抗碰撞性特点) 。
数字摘要是 Hash 算法最重要的一个用途。在网络上下载软件或文件时,往往同时会提供一个数字摘要值,用户下载下来原始文件可以自行进行计算,并同提供的摘要值进行比对,以确保内容没有被修改过。
对称加密
加解密的密钥是相同的,代表算法包括 DES、3DES、AES、IDEA 等。 代表算法包括:RSA、ElGamal、椭圆曲线(ECC) 系列算法。
非对称加密
加密密钥和解密密钥是不同的,分别称为公钥和私钥。
数字签名
数字签名是一种以电子形式存在于数据信息之中的,或作为其附件或逻辑上有联系的数据,可用于辨别数据签署人的身份,并表名签署人对数据信息中包含的信息的认可技术。数字签名技术是将摘要信息用发送者的私钥加密,与原文一起传送给接收者。接收者只有用发送者的公钥才能解密被加密的摘要信息,然后用HASH函数对收到的原文产生一个摘要信息,与解密的摘要信息对比。如果相同,则说明收到的信息是完整的,在传输过程中没有被修改,否则说明信息被修改过,因此数字签名能够验证信息的完整性。同时数字签名用到了发送者的私钥,是很难伪造的,也就解决了不可抵赖的问题。
PKI
Public Key Infrastructure,基于公钥体系的安全基础架构。
CA
Certificate Authority,负责证书的创建、颁发,在 PKI 体系中最为核心的角色。
CRL
Certification Revocation List,证书吊销列表,包含所撤销的证书列表。
CSR
Certificate Signing Request,证书签名申请,包括通用名、名称、主机、生成私钥算法和大小、CA 配置和序列号等信息,用来发给 CA 服务以颁发签名的证书。
共识相关:
Consensus( 共识)
分布式系统中多个参与方对某个信息达成一致,多数情况下为对发生事件的顺序达成一致。
共识机制:
分布式系统达成共识所采用的算法。
PoS
Proof of Stake,股份持有证明,拥有代币或股权越多的用户,挖到矿的概率越大。
PoW
Proof of Work,工作量证明,在一定难题前提下求解一个 SHA256 的 Hash 问题。
零知识证明( zero knowledge validation)
证明者在不向验证者提供任何有用的信息的前提下,使验证者相信某个论断是正确的。例如,A 向 B 证明自己有一个物品,但 B 无法拿到这个物品,无法用 A 的证明去向别人证明自己也拥有这个物品。
Byzantine Failure( 拜占庭错误)
指系统中存在除了消息延迟或不可送达的故障以外的错误,包括消息被篡改、节点不按照协议进行处理等,潜在地会对系统造成针对性的破坏。
安全相关
MTBF
Mean Time Between Failures,平均故障间隔时间,即系统可以无故障运行的预期时间。
MTTR
Mean Time to Repair,平均修复时间,即发生故障后,系统可以恢复到正常运行的预期时间。
MVCC
Multi-Version Concurrency Control,多版本并发控制。数据库领域的技术,通过引入版本来实现并发更新请求的乐观处理,当更新处理时数据版本跟请求中注明版本不一致时则拒绝更新。发生更新成功则将数据的版本加一。
SLA/SLI/SLO
Service Level Agreement/Indicator/Objective,分别描述服务可用性对用户的承诺,功能指标和目标值。
Sybil Attack(女巫攻击)
少数节点通过伪造或盗用身份伪装成大量节点,进而对分布式系统系统进行破坏
Double-Spend Attack
双花攻击/双重支付攻击:指的是攻击者通过伪造凭证、信息不对称、时间延迟等技术手段,用同一笔钱消费多次的一种攻击方式。
分布式
Distributed( 分布式)
非单体中央节点的实现,通常由多个个体通过某种组织形式联合在一起,对外呈现统一的服务形式。
Decentralization( 去中心化) :
无需一个独立第三方的中心机构存在,有时候也叫多中心化。
DLT
Distributed Ledger Technology,分布式账本技术。包括区块链、权限管理等在内的实现分布式账本的技术
DApp
去中心化应用( Decentralized App)
DAO
去中心化自治组织( Decentralized Autonomous Organization) ,基于区块链的按照智能合约联系起来的松散自治群体。
DAC
去中心化自治公司( Decentralized Autonomous Company)
P2P
点到点的通信网络,网络中所有节点地位均等,不存在中心化的控制机制。
计算机专业术语
Turing-complete( 图灵完备)
指一个机器或装置能用来模拟图灵机( 现代通用计算机的雏形) 的功能,图灵完备的机器在可计算性上等价。
CDN
Content Delivery Network,内容分发网络。利用在多个地理位置预先配置的缓存服务器,自动从距离近的缓存服务器进行对请求的响应,以实现资源的快速分发。
Merkle Tree
梅克尔树
Merkle Patricia Tree
梅克尔帕特里夏树
最后更新于