RELATEED CONSULTING
相关咨询
选择下列产品马上在线沟通
服务时间:9:30-18:00
你可能遇到了下面的问题
关闭右侧工具栏
区块链基本技术(区块数据. 链式结构.非对称加密)
  • 作者:admin
  • 发表时间:2018-12-26 10:38:04
  • 来源:未知
区块数据 区块/ Block 区块是在区块链网络上承载交易数据的数据包,是一种被标记上时间戳和之前一个区块 的哈希值的数据结构,区块经过网络的共识机制验证并确认区块中的交易。 父块/ Parent Block 父块是指区块的前一个区块,区块链通过在区块头记录区块以及父块的哈希值来在时间 上排序。 区块头/ Block Header 记录当前区块的元信息,包含当前版本号、上一区块的哈希值、时间戳、随机数、Merkle Root 的哈希值等数据。此外,区块体的数据记录通过 Merkle Tree 的哈希过程生成唯一的 Merkle Root 记录于区块头。 区块体/ Block Body 记录一定时间内所生成的详细数据,包括当前区块经过验证的、区块创建过程中生成的 所有交易记录或是其他信息,可以理解为账本的一种表现形式。 哈希值/ 散列值/ Hash Values / Hash Codes / Hash Sums / Hashes 哈希值通常用一个短的随机字母和数字组成的字符串来代表,是一组任意长度的输入信息通过哈希算法得到的“数据指纹”。因为计算机在底层机器码是采用二进制的模式, 因此通过哈希算法得到的任意长度的二进制值映射为较短的固定长度的二进制值,即哈希值。此外,哈希值是一段数据唯一且极其紧凑的数值表示形式,如果通过哈希一段明文得到哈希值,哪怕只更改该段明文中的任意一个字母,随后得到的哈希值都将不同。 时间戳/ Timestamp 时间戳从区块生成的那一刻起就存在于区块之中,是用于标识交易时间的字符序列,具 备唯一性,时间戳用以记录并表明存在的、完整的、可验证的数据,是每一次交易记录 的认证。 随机数/ 一次性的随机数/ Nonce Nonce 是指“只使用一次的随机数”,在挖矿中是一种用于挖掘加密货币的自动生成的、毫无意义的随机数,在解决数学难题的问题中被使用一次之后,如果不能解决该难题则该随机数就会被拒绝,而一个新的 Nonce 也会被测试出来并且直到问题解决,当问题解决时矿工就会得到加密货币作为奖励。在区块结构中,Nonce 是基于工作量证明所设计的随机数字,通过难度调整来增加或减少其计算时间;在信息安全中,Nonce 是一个在加密通信只能使用一次的数字;在认证协议中,Nonce 是一个随机或伪随机数,以避免重放攻击。 梅克尔树/ Merkle Tree 梅克尔树(又叫哈希树)是一种二叉树,是一种高效和安全的组织数据的方法,被用来 快速查询验证特定交易是否存在,由一个根节点、一组中间节点和一组叶节点组成。它 使用哈希算法将大量的书面信息转换成一串独立的字母或数字。最底层的叶节点包含存 储数据或其哈希值,每个中间节点是它的两个子节点内容的哈希值,根节点也是由它的 两个子节点内容的哈希值组成。 区块容量/ Block Size 区块链的每个区块,都是用来承载某个时间段内的数据的,每个区块通过时间的先后顺 序,使用密码学技术将其串联起来,形成一个完整的分布式数据库,区块容量代表了一 个区块能容纳多少数据的能力。 未花费的交易输出/ Unspent Transaction Output / UTXO 未花费的交易输出是一个包含交易数据和执行代码的数据结构,可以理解为收到的但尚 未花费的加密货币清单。比特币和其他加密货币在其区块链技术中使用 UTXO,以验证一个人是否拥有未使用的加密货币可用于支出。 链式结构 链/ Chain 链是由区块按照发生的时间顺序,通过区块的哈希值串联而成,是区块交易记录及状态 变化的日志记录。 链下/ Off-chain 区块链系统从功能角度讲,是一个价值交换网络,链下是指不存储于区块链上的数据。 无代币区块链/ Token-Less Blockchain 即区块链并不通过代币进行价值交换,一般出现在不需要在节点之间转移价值并且仅在 不同的已被信任方之间共享数据的情况下,如私有链。 创世区块/ Genesis Block 区块链中的第一个区块被称为“创世”区块。创世区块一般用于初始化,不带有交易信 息。 区块高度/ Block Height 一个区块的高度是指在区块链中它和创世区块之间的块数。 分叉/ Fork 在区块链中,由矿工挖出区块并将其链接到主链上,一般来讲同一时间内只产生一个区块,如果发生同一时间内有两个区块同时被生成的情况,就会在全网中出现两个长度相 同、区块里的交易信息相同但矿工签名不同或者交易排序不同的区块链,这样的情况叫 做分叉。 软分叉/ Soft Fork 指在区块链或去中心化网络中向前兼容的分叉。向前兼容意味着,当新共识规则发布 后,在去中心化架构中节点不一定要升级到新的共识规则,因为软分叉的新规则仍旧符 合老的规则,所以未升级的节点仍旧能接受新的规则。 硬分叉/ Hard Fork 指在区块链或去中心化网络中不向前兼容的分叉,硬分叉对加密货币使用的技术进行永 久更改,这种变化使得所有的新数据块与原来的块不同,旧版本不会接受新版本创建的 区块,要实现硬分叉所有用户都需要切换到新版本协议上。如果新的硬分叉失败,所有 的用户将回到原始数据块。 幽灵协议/ GHOST Protocol 通过幽灵协议,区块可以包含不只是他们父块的哈希值,也包含其父块的父块的其他子 块(被称为叔块)的陈腐区块的哈希值,这确保了陈腐区块仍然有助于区块链的安全 性,并能够获得一定比例的区块奖励,减少了大型矿工在区块链上的中心化倾向问题。 孤块/ Orphan Block 孤块是一个被遗弃的数据块。因为很多节点都在维护区块链并同时创建多个区块,但是 一次只能有一个被继续继承,而其它被遗弃的数据块就是孤块。 陈腐区块/ Stale Block 是父块的父块的“其他”子块,或更一般的说是祖先的其他子块,但不是自己的祖先, 如果 A 是 B 的一个叔块,那 B 是 A 的侄块。 非对称加密 密码学/ Cryptography 密码学是数学和计算机科学的分支,同时其原理大量涉及信息论。密码学不只关注信息 保密问题,还同时涉及信息完整性验证(消息验证码)、信息发布的不可抵赖性(数字 签名)、以及在分布式计算中产生的来源于内部和外部的攻击的所有信息安全问题。 加密/ Cipher 加密是一系列使信息不可读的过程,它能使信息加密也能使信息加密后能够再次可读, 在加密货币中使用的密码也使用由字母和数字组成的密钥,该密钥必须用于解密密码。 加密算法/ Encryption Algorithm 加密算法是一个函数,也可以视为是一把钥匙,通过使用一个加密钥匙,将原来的明文 文件或数据转化成一串不可读的密文代码。加密流程是不可逆的,只有持有对应的解密 钥匙才能将该加密信息解密成可阅读的明文。加密使得私密数据可以在低风险的情况 下,通过公共网络进行传输,并保护数据不被第三方窃取、阅读。 非对称加密/ Asymmetric Cryptography 非对称加密是一种保证区块链安全的基础技术。该技术含有两个密钥:公钥和私钥,首 先,系统按照某种密钥生成算法,将输入经过计算得出私钥,然后,采用另一个算法根 据私钥生成公钥,公钥的生成过程不可逆。由于在现有的计算能力条件下难以通过公钥来穷举出私钥(即计算上不可行),因此可以认为是数据是安全的,从而能够保证区块链的数据安全。 同态加密/ Homomorphic Encryption 同态加密是一种特殊的加密方法,允许对密文根据特定的代数运算方式进行处理后得到的仍然是加密的结果,将其解密所得到的结果与对明文进行同样的运算结果是一样的。 即“对密文直接进行处理”与“对明文进行处理后并加密”其结果是一样的,这项技术可以在加密的数据中进行诸如检索、比较等操作而无需对数据先进行解密,从根本上解决将数据委托给第三方时的保密问题。 公钥加密/ Asymmetric Cryptography / Public Key Cryptography 公钥加密是一种特殊的加密手段,具有在同一时间生成两个密钥的处理(私钥和公钥),每一个私钥都有一个相对应的公钥,从公钥不能推算出私钥,并且被用其中一个密钥加密了的数据,可以被另外一个相对应的密钥解密。这套系统使得节点可以先在网络中广播一个公钥给所有节点,然后所有节点就可以发送加密后的信息给该节点,而不需要预先交换密钥。 RSA 加密算法/ RSA Algorithm RSA 公开密钥密码体制是使用不同的加密密钥与解密密钥,是一种“由已知加密密钥推导出解密密钥在计算上是不可行的”密码体制。它通常是先生成一对 RSA 密钥,其中之一是保密密钥,由用户保存; 另一个为公开密钥,可对外公开,甚至可在网络服务器中注册。 椭圆加密算法/ Elliptic Curve Cryptography / ECC 椭圆加密算法是一种公钥加密体制,最初由 Koblitz 和 Miller 两人于 1985 年提出,其数学基础是利用椭圆曲线上的有理点构成 Abel 加法群上椭圆离散对数的计算困难性。 明文/ Plaintext 在密码学中,明文是指传送方想要接收方获得的可读信息。明文经过加密所产生的信息 被称为密文,而密文经过解密而还原得来的信息被称为明文, 密文/ Ciphertext 在密码学中,密文是明文经过加密算法所产生的。因为密文是一种除非使用恰当的算法 进行解密,否则人类或计算机是不可以直接阅读理解的加密形态,可以理解为被加密的 信息。 环签名/ Ring Signatures 因签名中参数 Ci(i=1,2,…,n)根据一定的规则首尾相接组成环状而得名。其实就是实际的签名者用其他可能签字者的公钥产生一个带有断口的环,然后用私钥将断口连成一 个完整的环。任何验证人利用环成员的公钥都可以验证一个环签名是否由某个可能的签 名人生成。 数字签名/ Digital Signatures 数字签名(又称公钥数字签名、电子签名)是一种类似写在纸上的签名,但是使用了公 钥加密领域的技术实现,用于鉴别数字信息的方法,在网络上可以使用数字签名来进行 身份确认。数字签名是一个独一无二的数值,若公钥能通过验证,那我们就能确定对应 的公钥的正确性,数字签名兼具可确认性和不可否认性。 多重签名/ Multi-Signatures 多重签名意味着在交易发生之前需要多个签名或批准。多重签名会增加加密货币的安全 性,这样一个人就不能在未经他人同意的情况下把所有的数字货币都拿走。 数字证书/ Digital Certiftcate 数字证书是区块链中标识各个节点的身份信息的一串数字,用以证明公钥的归属以及内 容信息的合法性,在区块链的非对称加密中,一旦通过中间人攻击将公钥替换后将会破 坏区块链的安全体系,因此通过共识机制建立互相承认的数字证书机制,在不需要第三 方的情况下识别数据的合法性。 哈希/ 散列/ Hash 哈希又称作“散列”,是一种数学计算机程序,它接收任何一组任意长度的输入信息, 通过哈希算法变换成固定长度的数据指纹输出形式,如字母和数字的组合,该输出就是“哈希值”。哈希使存储和查找信息速度更快,因为哈希值通常更短所以更容易被找到。同时哈希能够对信息进行加密,一个好的哈希函数在输入域中很少出现哈希冲突,哈希一个特定文档的结果总是一样的,但找到具有相同哈希值的两个文件在计算上是计算上不可行的。 安全哈希算法/ Secure Hash Algorithm 256 / SHA 256 SHA 256 是 SHA 系列算法之一,由美国国安局设计、美国国家标准与技术研究院发布的一套哈希算法,由于其摘要长度为 256bits,故称 SHA 256。SHA 256 是保护数字信息的最安全的方法之一。 钥匙/ Key 钥匙是使隐藏的、不可读的信息可读的一串秘密字母和数字。 密钥/ Secret Key 密钥是用于加密或解密信息的一段参数,在非对称加密系统中,是通过利用公钥(账 户)与私钥(密码)的配合而实现的。 公钥/ Public Key 公钥与私钥是通过一种算法得到的一个密钥对,公钥是密钥对中公开的部分,私钥则是 非公开的部分,公钥通常用于加密会话密钥、验证数字签名,或加密可以用相应的私钥 解密的数据。 私钥/ Private Key 公钥与私钥是通过一种算法得到的一个密钥对,公钥是密钥对中公开的部分,私钥则是 非公开的部分,私钥是指与一个地址(地址是与私钥相对应的公钥的哈希值)相关联的 一把密钥,是只有你自己才知道的一串字符,可用来操作账户里的加密货币。 零知识证明/ Zero-Knowledge Proof 证明者和验证者之间进行交互,证明者能够在不向验证者提供任何有用的信息的情况 下,使验证者相信某个论断是正确的。 计算上不可行/ Computationally Feasible 密码算法依赖的原理是当前计算不可行的数学问题,而“计算不可行”是一个在时间及 空间上相对而言的概念,计算上不可行即表示一个程序是可处理的但是需要一个长得不 切实际的时间(如几十亿年)来处理的步骤。通常认为 2 的 80 次方个计算步骤是计算上不可行的下限。 暴力破解法/ Brute Force Attack / BFA 暴力破解法又名穷举法,是一种密码分析的方法,通过逐个推算猜测每一个可能解锁安 全系统的密钥来获取信息的方法。