返回介绍

加密货币相关名词汇总

发布于 2025-02-22 21:56:43 字数 3751 浏览 0 评论 0 收藏 0

前言

新技术的最大问题是新概念太多。例如加密的概念,包括散列、签名、公钥、私钥、对称和不对称加密、服务保护拒绝,还有分布式哈希表、信任网络等。还有额外的内部术语,如“区块”,“确认”,“挖矿”,“SPV 客户”和“51%攻击”,以及经济概念,如激励相容、集权与分权。

为了方便,我们把经常遇到的相关词汇进行汇总。

密码学

计算上不可行 :一个处理被称为是计算上不可行,如果有人想有兴趣完成一个处理但是需要采取一种不切实际的长的时间来做到这一点的(如几十亿年)。通常,2 的 80 次方的计算步骤被认为是计算上不可行的下限。

散列 :一个散列函数(或散列算法)是一个处理,依靠这个处理,一个文档(比如一个数据块或文件)被加工成看起来完全是随机的小片数据(通常为 32 个字节),从中没有意义的数据可以被复原为文档,并且最重要的性能是散列一个特定的文档的结果总是一样的。

此外,极为重要的是,找到具有相同散列的两个文件在计算上是不可能的。一般情况下,即使改变文件的一个字母也将完全打乱散列;例如,“ Saturday”的 SHA3 散列为 c38bbc8e93c09f6ed3fe39b5135da91ad1a99d397ef16948606cdcbd14929f9d,而 Caturday 的 SHA3 散列是 b4013c0eed56d5a0b448b02ec1d10dd18c1b3832068fbbdc65b98fa9b14b6dbf。散列值经常被用作以下用途:为无法伪造的特定文档而创建的全局商定标识符。

加密 :与被称为钥匙(例如 c85ef7d79691fe79573b1a7064c19c1a9819ebdbd1faaab1a8ec92344438aaf4)的短字符串的数据相结合,对文档(明文)所进行的处理。加密会产生一个输出(密文),这个密文可以被其他掌握这个钥匙的人“解密”回原来的明文,但是对于没有掌握钥匙的人来说是解密是费解的且计算上不可行。

公钥加密 :一种特殊的加密,具有在同一时间生成两个密钥的处理(通常称为私钥和公钥),使得利用一个钥匙对文档进行加密后,可以用另外一个钥匙进行解密。一般地,正如其名字所建议的,个人发布他们的公钥,并给自己保留私钥。

数字签名 :数字签名算法是一种用户可以用私钥为文档产生一段叫做签名的短字符串数据的处理,以至于任何拥有相应公钥,签名和文档的人可以验证(1)该文件是由特定的私钥的拥有者“签名”的,(2)该文档在签名后没有被改变过。请注意,这不同于传统的签名,在传统签名上你可以在签名后涂抹多余的文字,而且这样做无法被分辨;在数字签名后任何对文档的改变会使签名无效。

区块链

地址 :一个地址本质上是属于特定用户的公钥的表现;例如,与上面给出的私钥的相关联的地址是 cd2a3d9f938e13cd947ec05abc7fe734df8dd826。注意,在实际中,地址从技术上来说是一个公钥的散列值,但为了简单起见,最好忽略这种区别。

交易 :一个交易是一个文档,授权与区块链相关的一些特定的动作。在一种货币里,主要的交易类型是发送的货币单位或代币给别人;在其他系统,如域名注册,作出和完成报价和订立合约的行为也是有效的交易类型。

区块 :一个区块是一个数据包,其中包含零个或多个交易,前块(“父块”)的散列值,以及可选的其它数据。除了初始的“创世区块”以外每个区块都包含它父块的散列值,区块的全部集合被称为区块链,并且包含了一个网络里的全部交易历史。注意有些基于区块链的加密货币使用“总账”这个词语来代替区块链。这 2 者的意思是大致相同的,虽然在使用“总账”这个术语的系统里,每个区块都通常包括每个账户的目前状态(比如货币余额,部分履行的合约,注册)的全部拷贝,并允许用户抛弃过时的历史数据。

帐户 :帐户是在总账中的记录,由它的地址来索引,总账包含有关该帐户的状态的完整的数据。在一个货币系统里,这包含了货币余额,或许未完成的的交易订单;在其它情况下更复杂的关系可以被存储到账户内。

工作证明 :在比特币,以太坊和许多其他加密总账里的一个重要特性,意思是在区块中的散列值必须比某个目标值小。这个必要的原因是,在分散式系统中任何人可以产生区块,因此为了防止网络中区块泛滥,并提供一种方法来衡量在区块链的一个特定版本后有多少共识,使得产生一个区块非常艰难。由于散列值是伪随机的,找一个散列值比 0000000100000000000000000000000000000000000000000000000000000000 还小的区块,平均需要 43 亿次尝试。在所有这些系统中,目标值进行自我调整以便在网络上的一个节点平均每 N 分钟(例如,比特币 N =10,以太坊 N=1)发现一个区块,

随机数 :在一个区块里的一个无意义的值,为了努力满足工作证明的条件来进行调整。

挖矿 :挖矿是反复总计交易,构建区块,并尝试不同的随机数,直到找到一个随机数可以符合工作证明的条件的过程。如果一个矿工走运并产生一个有效的区块的话,会被授予的一定数量的币(区块中的交易全部费用)作为奖励。而且所有的矿工开始尝试创建新的区块,这个新区块包含作为父块的最新的区块的散列。

陈腐区块 :对于同一个父块,已经有另外一个区块被创建出来之后,又被创建的区块;陈旧区块通常被丢弃,是精力的浪费。

分叉 :指向同一个父块的 2 个区块被同时生成的情况,某些部分的矿工看到其中一个区块,其他的矿工则看到另外一个区块。这导致 2 种区块链同时增长。通常来说,随着在一个链上的矿工得到幸运并且那条链增长的话,所有的矿工都会转到那条链上,数学上分几乎会在 4 个区块内完结自己。

硬分叉 ,是当比特币协议规则发生改变,旧节点拒绝接受由新节点创造的区块的情况。违反规则的区块将被忽视,矿工会按照他们的规则集,在他们最后见证的区块之后创建区块。

软分叉 ,是当比特币协议规则发生改变,旧的节点并不会意识到规则是不同的,它们将遵循改变后的规则集,继续接受由新节点创造的区块。矿工们可能会在他们完全没有理解,或者验证过的区块上进行工作。

双重花费 :是一个故意的分叉,当一个有着大量挖矿能力的用户发送一个交易来购买产品,在收到产品后又做出另外一个交易把相同量的币发给自己。攻击者创造一个区块,这个区块和包含原始交易的区块在同一个层次上,但是包含并非原始交易而是第二个交易,并且开始在这个分叉上开始挖矿。如果攻击者有超过 50%的挖矿能力的话,双重花费最终可以在保证在任何区块深度上成功。低于 50%的话,有部分可能性成功。但是它经常在深度 2-5 上有唯一显著的可能。因此在大多数的加密货币交易所,博彩站点还有金融服务在接受支付之前需要等待 6 个区块被生产出来(也叫“6 次确认”)。

SPV 客户端(或轻客户端) :一个只下载一小部分区块链的客户端,使拥有像智能手机和笔记本电脑之类的低功率或低存储硬件的用户能够保持几乎相同的安全保证,这是通过有时选择性的下载的小部分的状态,而在区块链验证和维护时,不需要花费兆字节的带宽或者千兆字节的存储空间。

参考

维基百科: http://en.wikipedia.org/wiki/Public-key_cryptography

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据
    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文