📅  最后修改于: 2020-12-18 11:50:34             🧑  作者: Mango
下面列出了最常见的区块链面试问题和答案。
区块链是一个不断增长的分类帐(文件),以安全,按时间顺序和不变的方式永久记录已发生的所有交易。它可用于安全地转移金钱,财产,合同等,而无需第三方中介机构(如银行或政府)。
区块链是最著名的加密货币比特币的骨干。它是一个点对点电子现金系统和一个分散的网络,该网络使用户可以直接进行交易,而无需第三方的参与来管理资金的交换。
要了解更多,请点击这里…
我们可以在下表中看到比特币区块链和以太坊区块链之间的基本区别。
Points | Bitcoin Blockchain | Ethereum Blockchain |
---|---|---|
Founder | Satoshi Nakamoto | Vitalik Buterin |
Release Date | 9 Jan 2008 | 30 July 2015 |
Release Method | Genesis Block Mined | Presale |
Usage | Digital Currency | Smart Contracts |
Cryptocurrency | Used | BitcoinEther |
Algorithm | SHA-256 | Ethash |
Blocks Time | 10 minutes | 12-14 seconds |
Scalable | Not yet | Yes |
引入世界的不同类型的区块链是:
引入到世界上的区块链主要有三种。
1.公共区块链
公共区块链是一种“为人民,为人民,为人民”的区块链。无需付费,这意味着任何人都可以读取,写入和审核区块链。它是开源的,分布式的,去中心化的公共账本,因此任何人都可以查看公共区块链上的任何内容。它们被认为是无权限区块链。
2.私有区块链
私有区块链是个人或组织的私有财产。它由单个组织控制,该组织确定哪些人可以阅读,向其提交交易以及谁可以参与共识过程。他们被认为是许可的区块链。
3.联盟区块链或联合区块链
在该区块链中,共识过程由预选组(即公司或代表个人组)控制。这些预先选定的小组将聚在一起,为整个网络的最大利益做出决策。这样的组也称为财团或联合会,这就是名称财团或联合区块链的原因。
区块链可以存储为平面文件或数据库。
区块链数据库中有两种类型的记录。
两条记录都可以轻松访问,并且可以相互集成,而无需遵循任何复杂的算法。
区块链的基本属性是:
区块链在以下方面不同于关系数据库。
Points | Blockchain | Relational Database |
---|---|---|
Unit of data | Block | Table |
Failure | None | Can happen |
Centralized Control | No | Yes |
Modification in data | Not Possible | Possible |
Single Point of Failure | Does not exist | Exists |
一些开发区块链的流行平台是:
区块链由记录列表(部分或全部近期交易)组成。这样的记录存储在块中。每次块完成时,都会生成一个新块。与其他区块链接的区块构成了称为区块链的区块链。每个区块添加到区块链后,将被存储为永久数据库。我们无法删除或逆转区块链中的任何区块。
要了解更多,请点击这里…
每个块都必须包含以下三件事:
区块链中的每个区块都包含一个哈希值。哈希值充当到其之前的块,交易数据以及实际上是时间标记的链接。
可以通过块的高度和块头哈希来标识块。
不,不可能在一个块中修改数据。如果需要进行任何修改,则也必须从所有其他关联的块中删除信息。
是的,可以从网络中删除一个完整的块。有时只考虑该在线分类账的特定部分。有一些默认选项和过滤器可以帮助我们完成这些工作而无需付出很多努力。
不,不可能对以区块链方式保存记录进行限制。我们可以将任何类型的数据放在区块链上,例如银行记录,健康记录,图像,Facebook消息等。
可以保存在区块链中的一些常见记录类型为:
区块链使用SHA-256哈希算法。美国国家安全局(NSA)开发了SHA-256哈希算法。
要了解更多,请点击这里…
区块链始终以反向顺序链接每个区块。换句话说,区块链将每个区块与其先前的区块链接起来。
区块链的一些重要好处是:
实时结算:在金融行业中,区块链可以更快地进行交易结算。验证,结算和清关过程无需花费冗长的时间,因为所有堆栈持有者之间都可以使用一个协议版本的数据。
节省成本:区块链允许点对点交易完成,而无需第三方(例如银行),从而降低了交换资产的间接费用。
安全性和弹性:区块链使用非常先进的加密技术来确保将要锁定在区块链内部的信息安全,以防止黑客攻击和欺诈。它使用分布式账本技术,其中每一方都拥有原始链的副本,因此,即使有大量其他节点掉落,系统仍可正常运行。
不变性:区块链按时间顺序记录交易,这意味着每笔交易都发生在前一个交易之后。时间顺序证明了区块链中所有操作的不可更改性。这意味着将新块添加到分类账链时,将无法删除或修改它。
用户假名:这是一种状态,其中用户具有一致的标识符,而不是用户的真实姓名。真实身份仅对管理员可用。它允许用户以通常匿名的方式与他人通信。它有助于维护用户隐私并实现免费交易,而无需担心任何安全问题。在区块链中,您的化名是您收到比特币的地址。涉及该地址的每笔交易都将永久存储在区块链中。如果您的地址与您的身份相关联,则每笔交易都将与您相关联。每次使用新地址进行交易始终是一件好事,以免将交易链接到共同所有者。
Merkle树是区块链技术的基本组成部分。它是一种数学数据结构,由不同数据块的哈希组成,可作为一个块中所有事务的摘要。它还允许对大量数据中的内容进行有效且安全的验证。它还有助于验证数据的一致性和内容。比特币和以太坊都使用Merkle Trees结构。默克尔树也被称为哈希树。
默克尔树在区块链技术中起着至关重要的作用。如果有人需要验证区块中特定交易的存在,则无需下载整个区块来验证区块中的交易。他只能下载块头链。它允许下载包含该事务的树的分支的集合就足够了。我们会检查与您的交易相关的哈希值。如果这些哈希值签出是正确的,那么我们知道该特定交易存在于此块中。
要了解更多,请点击这里…
双重支出意味着多次支出同一笔钱。使用实物货币,永远不会出现双花问题。但是在类似数字现金的比特币中,可能会出现双重支出问题。因此,在比特币交易中,有可能被复制和重新广播。相同的比特币可能被其所有者花费两次。区块链技术的主要目标之一是尽可能地消除这种方法。
区块链通过在实际交易添加到分类账之前实施多方的确认机制来防止双重支出问题。
要了解更多,请点击这里…
分类帐是一个不断增长的文件。它会永久记录区块链网络上两方之间发生的所有交易。
区块链中的用户可以考虑三种常见的分类帐类型:
由于以下原因,区块链是一种值得信赖的方法:
DAO代表分散式自治组织。这是一个既自治又分散的组织。它由编码为透明,受股东控制且不受中央政府影响的计算机程序的规则表示。
DAO可以看作是智能合约的最复杂形式。智能合约是在互联网上自主存在的计算机程序,但是同时,它需要人们执行它自己无法完成的任务。
DAO的财务交易记录和程序规则保存在区块链上。由于DAO在区块链上运行,并且在分布式网络上运行,因此您可以拥有各方的多种组合,以交换价值并达成协议。这意味着,对于权力下放的自治组织,无论您是人类还是机器人,都没有关系。实际上,您可以使设备与设备通信,或者使设备与人通信,或者使人与人通信。对于DAO来说,这没有什么区别,因为只要将其编程到智能合约的集合中,整个过程就可以自动运行且不可变。
要了解更多,请点击这里…
Coinbase交易是一个区块中的第一笔交易。这是矿工可以创建的一种独特的比特币交易。矿工使用它来收集其工作的集体奖励,矿工收取的任何其他交易费用也将在此交易中发送。
要了解更多,请点击这里…
区块链和数据库之间的重要区别是:
SN | Blockchain | Database |
---|---|---|
1. | Blockchain is Decentralized. Here, no one is an administrator means everyone is an in-charge. | The database is centralized. It has administrators who control all the data. |
2. | Everyone has rights to read and write. | Only authorized people can read and write. |
3. | Peer-to-peer architecture. | Client-server architecture. |
4. | Here, only Append operation is allowed. | CRUD(Create, Read, Update, Delete) mechanism is possible. |
5. | Historical data of digital records. | No records of ownership. |
6. | Blockchains are fully confidential. | Databases are not fully confidential. |
7. | Blockchain is slow because it depends on the hash rate. | The database is fast because fewer people administer it. |
8. | Blockchain is permissionless. | The database is permissioned. |
要了解更多,请点击这里…
加密货币是一种数字资产(货币),可用于在各方之间交换价值。它使用强大的加密技术来保护和验证金融交易,并控制该货币新单位的创建。众所周知,它是一种数字货币,因此实际上并不存在。一些流行的加密货币是比特币,Litecoin,Z-Cash,Monero,Dash等。
我们知道,政府会印制诸如法定货币之类的政府货币,例如美元,卢比,日元或人民币本身。这意味着存在一个可以创建数千甚至数百万或数十亿该货币的集中机构。与诸如比特币之类的政府货币不同,这些类型的货币是由使加密货币起作用的相同数学公式创建的。因此,加密货币使用分散控制,该分散控制通过充当公共金融交易数据库的分布式分类帐技术来工作。
要了解更多,请点击这里…
区块链的主要限制是:
缺乏技术人才
如今,有很多开发人员可以在每个领域做很多不同的事情。但是在区块链技术中,在区块链技术方面具有专门知识的开发人员并不多。因此,缺少开发人员是在区块链上开发任何东西的障碍。
网络规模
区块链需要庞大的用户网络。因此,它对错误操作的抵抗力不强,并且对攻击做出反应并变得更强大。区块链是一个健壮的网络,具有广泛分布的节点网格,这使得获得全部收益变得更加困难。
安全缺陷
比特币和其他区块链与一个相当大的安全漏洞(称为“ 51%攻击”)相关。此安全漏洞是指一群“矿工”控制着超过一半的区块链网络计算能力的情况。如果矿工以某种方式获得了足够的计算能力,则没有集中的权力来阻止他们影响整个比特币网络。这意味着攻击者可以阻止新交易的发生或被确认。他们还能够撤消在同一时期内已经通过验证的交易。因此,他们可以花两次硬币。
因此,社区密切监视比特币采矿池,确保没有人获得这种网络影响力。
交易速度和成本
区块链存在的最初几年,交易成本几乎是“免费的”。但是随着网络的发展,由于网络中交易成本的上升,这将不是最划算的汇款方式。从2016年底开始,它每秒仅处理七笔交易,每笔交易的成本约为0.20美元。
共识机制
在区块链中,我们知道可以每10分钟创建一个区块。这是因为每笔交易都必须确保区块链网络中的每个区块都必须达成共识。根据网络规模以及区块链中涉及的块或节点的数量,为了达成共识而进行的来回通信可能会消耗大量时间和资源。
要了解更多,请点击这里…
对区块链网络的51%攻击是指试图控制网络超过50%的挖掘能力,计算能力或哈希率的矿工或一组矿工。在这种攻击中,攻击者可以阻止新交易发生或被确认。他们还可以撤消在控制网络时已经确认的交易,从而导致双重支出问题。
要了解更多,请点击这里…
我们知道数据的安全性始终至关重要。加密是将信息或数据转换为代码以防止未经授权的访问的过程。它可以帮助组织保护其数据的安全(即,防止未经授权的访问)。在这种技术中,数据在被发送方从网络发送出去之前,在某种程度上被编码或更改为无法读取的格式。唯一的接收者可以理解如何对其进行解码。
在区块链技术中,这种方法非常有用,因为它可以确保区块的整体安全性和真实性,并有助于保持区块的安全性。
工作证明和权益证明之间的主要区别是:
工作证明
工作量证明(PoW)算法用于确认交易并为链创建一个新块。在这种算法中,矿工相互竞争以完成网络上的交易。相互竞争的过程称为采矿。它定义了昂贵的计算机计算。在这种情况下,奖励给解决每个区块问题的第一位矿工。
权益证明
在PoS算法的情况下,一组节点决定放样自己的加密货币以进行交易验证。他们被称为“ stakers”。为了证明权益,根据其财富(也称为权益)以确定性方式选择新区块的创建者。它不提供任何块奖励,因此矿工仅收取交易费。与工作量证明相比,权益证明的成本效益可以高出数千倍。
区块链是包含交易记录的区块链。区块是区块链中最安全的部分。区块链的记录通过密码哈希算法进行保护。每个块通过独特的哈希指针在其之前和之后与所有其他块相连,这为该块增加了更多的安全性。如果修改块中的值,则哈希值也将更改。该哈希是一个安全标识符,可为整个区块链提供合理的安全级别。
雄心勃勃的黑客还需要知道前一个块的哈希密钥,才能对块信息进行更改。对于那些雄心勃勃的黑客来说,区块链是分散的,分布在对等网络中,这些网络不断更新并保持同步。由于这些记录未包含在中央位置,因此区块链没有单点故障,无法从单台计算机进行更改。
私钥用于加密或锁定在区块链网络上发送的消息或交易。发送者可以使用接收者的公钥发送消息。另一方面,接收者可以使用其私钥解密消息或交易。通过使用私钥和公钥,可以保持通信或交易的安全和防篡改。
区块链技术最早用于金融交易。但是如今,它的范围正在不断扩大,并应用于各种行业,例如电子商务,数据管理,能源,游戏,电子政务等。有几种商业和开源平台可用于提供用于创建支持区块链的应用程序的框架。 Hyperledger和以太坊通过创建先进的跨行业区块链技术来积极改善区块链生态系统。
Hyperledger是一个开源协作,提供用于开发企业级区块链解决方案的工具和技术。以太坊是一个开放源码的领先平台,旨在为开发人员,组织和企业构建和部署区块链应用程序。
交易是在区块链中包含的比特币钱包之间的价值转移。比特币钱包保存着称为私有密钥的秘密数据。私钥用于签署交易并提供数学证明,证明这些交易来自钱包的所有者。
共识算法是在系统或分布式网络上就数据更改达成共识的方法。共识算法在区块链中被大量使用,因为它们使未知节点的网络能够就通过区块链存储或共享的数据达成共识。
有许多类型的共识算法或技术可用。最受欢迎的共识算法是: