10 Essential Blockchain Interview Questions *

最好的区块链开发人员可以回答的基本问题. 在我们社区的推动下,我们鼓励专家提交问题并提供反馈.

Hire a Top Blockchain Developer Now
Toptal logo是顶级自由软件开发人员的专属网络吗, designers, finance experts, product managers, and project managers in the world. 顶级公司雇佣Toptal自由职业者来完成他们最重要的项目.

Interview Questions

1.

在比特币实现中,交易和区块是如何加密的?

View answer

比特币区块没有以任何方式加密:每个区块都是公开的. 防止修改和保证数据完整性的是一个被称为块哈希的值. 区块内容是使用特殊的哈希函数处理的——以比特币为例, 它是sha256,结果值包含在区块链中.

2.

Explain why a blockchain needs tokens to operate.

View answer

币/令牌用于实现状态之间的更改. When somebody does a transaction, this is a change of state, and coins are moved from one address to another. Apart from that, transactions can contain additional data, 状态的改变被用来改变数据——这是在定义不可变的区块链中做到这一点的唯一方法. Technically, 区块链的基本操作不需要硬币, but without them, 需要引入一些其他方法来管理链的状态和验证事务.

3.

在点对点(P2P)网络中,对等发现是如何工作的?

View answer

When a new node boots up, it doesn’t know anything about the network, because there is no central server. 通常,开发人员提供直接写入代码的可信节点列表,可用于初始对等发现.

Apply to Join Toptal's Development Network

and enjoy reliable, steady, remote Freelance Blockchain Developer Jobs

Apply as a Freelancer
4.

How do verifiers check if a block is valid?

View answer

网络上的每个完整节点都进行区块验证. 当宣布一个新的区块时,接收它的每个节点都会进行一系列检查. The two most important checks are of proof of work (如果一个区块提供了足够的工作来包含在链中)以及所有交易的有效性(每个交易必须是有效的).

5.

What is a scriptPubKey? Explain how a P2SH address can be spent.

View answer

A scriptPubKey is a so-called “locking script.“它存在于交易产出中,是支出产出必须满足的负担.

P2SH是一种特殊类型的地址,在这种地址中,复杂的锁定脚本被替换为它的散列. 当尝试花费的事务稍后显示输出时, it must contain the script that matches the hash, in addition to the unlocking script.

6.

Using Script, 编写一个赎回脚本,允许用户只在知道魔术数字1234567时才使用输出.

View answer
OP_EQUALVERIFY
scriptPubKey: 1234567 OP_EQUALVERIFY
scriptSig: 1234567
7.

Using Script, 编写一个赎回脚本,允许任何人在至少30天的时间内使用输出.

View answer
scriptPubKey: "30d" OP_CHECKSEQUENCEVERIFY OP_VERIFY
scriptSig: empty
8.

什么是trapdoor函数,为什么在区块链开发中需要它?

View answer

活板门函数是一种在一个方向上容易计算但在相反方向上很难计算的函数,除非你有特殊的信息. Trapdoor函数对于公钥加密至关重要——这就是为什么它们通常在区块链开发中用于表示地址和私钥的想法.

9.

What is mining?

View answer

挖矿是在区块链网络中达成共识的过程. Mining serves two purposes. First, it creates new coins in a generated block. 其次,它通过提供分布式账本中的交易 proof of work to the network; that is, proof that the generated block is valid.

10.

What is a chain fork?

View answer

分类账中的区块以这样一种方式包含,以构建最长的链,即i.e., the chain with the greatest cumulative difficulty. 分叉是这样一种情况:有两个候选区块竞争形成最长的区块链,两个矿工在很短的时间内发现了工作证明问题的解决方案. 然后网络被分割,因为一些节点从矿工#1获得区块,一些从矿工#2获得区块.

A fork usually gets resolved in one block, 因为这种情况再次发生的概率会随着下一个木块的出现而变得非常低, 所以很快就会有一条新的最长链被认为是主链.

(Note: This type of fork is distinct from a hard fork, 这是一些开发人员决定对区块链协议进行向后不兼容更改的地方, resulting in two forever-distinct blockchains.)

面试不仅仅是棘手的技术问题, so these are intended merely as a guide. 并不是每一个值得雇佣的“A”候选人都能回答所有的问题, 回答所有问题也不能保证成为A级考生. At the end of the day, hiring remains an art, a science — and a lot of work.

Why Toptal

Tired of interviewing candidates? Not sure what to ask to get you a top hire?

Let Toptal find the best people for you.

Hire a Top Blockchain Developer Now

Our Exclusive Network of Blockchain Developers

Looking to land a job as a Blockchain Developer?

Let Toptal find the right job for you.

Apply as a Blockchain Developer

Job Opportunities From Our Network

Submit an interview question

提交的问题和答案将被审查和编辑, and may or may not be selected for posting, at the sole discretion of Toptal, LLC.

* All fields are required

Looking for Blockchain Developers?

Looking for Blockchain Developers? Check out Toptal’s blockchain developers.

Logan Saether

Freelance Blockchain Developer

GermanyToptal Member Since May 13, 2020

Logan是一名在区块链领域拥有专业知识的开发人员. He has built entire projects around blockchain. 作为一名企业家,他构思并推出了许多自己的产品. Logan在以太坊区块链上编写和管理智能合约交互, 使用基板区块链框架编写应用程序, built infrastructure, managed complex integrations, and managed security audits.

Show More

Ken Miyachi

Freelance Blockchain Developer

United StatesToptal Member Since April 12, 2022

Ken是一名专攻分布式系统和Web3技术的软件工程师. He's launched multiple Ethereum Mainnet contracts, 协助完成20多项区块链专利申请, created an NFT, and delivered MVPs. His experience includes Web2 back-end services, data analysis, and work on multimillion-dollar projects. Ken喜欢系统设计,擅长围绕业务用例创建技术解决方案.

Show More

David Braun

Freelance Blockchain Developer

United StatesToptal Member Since March 10, 2014

David是一位拥有区块链和安全经验的高级软件工程通才. 经过两年的管理培训,有较强的沟通能力, 他擅长将业务需求与现代技术相结合. His EECS degree from U.C. Berkeley is evidence of his technical depth. David目前的激情是建立在他作为领导者的经验之上,通过行业最佳实践最大化团队效率.

Show More

Toptal Connects the Top 3% of Freelance Talent All Over The World.

Join the Toptal community.

Learn more