10个重要的区块链面试问题 *
最好的区块链开发人员可以回答的基本问题. 在我们社区的推动下,我们鼓励专家提交问题并提供反馈.
现在就雇佣一名顶级bb100开发者面试问题
比特币区块没有以任何方式加密:每个区块都是公开的. 防止修改和保证数据完整性的是一个被称为块哈希的值. 区块内容是使用特殊的哈希函数处理的——以比特币为例, 它是sha256,结果值包含在区块链中.
币/令牌用于实现状态之间的更改. 当某人进行交易时, 这是状态的变化, 硬币从一个地址转移到另一个地址. 除此之外, 事务可以包含额外的数据, 状态的改变被用来改变数据——这是在定义不可变的区块链中做到这一点的唯一方法. 从技术上讲, 区块链的基本操作不需要硬币, 但是没有他们, 需要引入一些其他方法来管理链的状态和验证事务.
申请加入Toptal的发展网络
并享受可靠、稳定、远程 自由区块链开发者职位
网络上的每个完整节点都进行区块验证. 当宣布一个新的区块时,接收它的每个节点都会进行一系列检查. 两个最重要的检查是 工作证明 (如果一个区块提供了足够的工作来包含在链中)以及所有交易的有效性(每个交易必须是有效的).
scriptPubKey是一种所谓的“锁定脚本”.“它存在于交易产出中,是支出产出必须满足的负担.
P2SH是一种特殊类型的地址,在这种地址中,复杂的锁定脚本被替换为它的散列. 当尝试花费的事务稍后显示输出时, 它必须包含与散列匹配的脚本, 除了解锁脚本.
OP_EQUALVERIFY
scriptPubKey: 1234567 OP_EQUALVERIFY
scriptSig: 1234567
scriptPubKey: "30d" OP_CHECKSEQUENCEVERIFY OP_VERIFY
scriptSig:空
活板门函数是一种在一个方向上容易计算但在相反方向上很难计算的函数,除非你有特殊的信息. Trapdoor函数对于公钥加密至关重要——这就是为什么它们通常在区块链开发中用于表示地址和私钥的想法.
挖矿是在区块链网络中达成共识的过程. 采矿有两个目的. 首先,它在生成的区块中创建新的硬币. 其次,它通过提供分布式账本中的交易 工作证明 to the network; that is, proof that the generated block is valid.
分类账中的区块以这样一种方式包含,以构建最长的链,即i.e.,累积难度最大的链条. 分叉是这样一种情况:有两个候选区块竞争形成最长的区块链,两个矿工在很短的时间内发现了工作证明问题的解决方案. 然后网络被分割,因为一些节点从矿工#1获得区块,一些从矿工#2获得区块.
分叉通常在一个区块中解决, 因为这种情况再次发生的概率会随着下一个木块的出现而变得非常低, 所以很快就会有一条新的最长链被认为是主链.
(注意:这种类型的fork不同于 硬叉, 这是一些开发人员决定对区块链协议进行向后不兼容更改的地方, 从而产生两个永远不同的区块链.)
面试不仅仅是棘手的技术问题, 所以这些只是作为一个指南. 并不是每一个值得雇佣的“A”候选人都能回答所有的问题, 回答所有问题也不能保证成为A级考生. 一天结束的时候, 招聘仍然是一门艺术,一门科学,需要大量的工作.
为什么Toptal
提出面试问题
提交的问题和答案将被审查和编辑, 并可能会或可能不会选择张贴, 由Toptal全权决定, 有限责任公司.
寻找区块链开发者?
寻找 区块链开发人员? 看看Toptal的区块链开发人员.
Toptal连接 排名前3% 世界各地的自由职业人才.
加入Toptal社区.