zl程序教程

您现在的位置是:首页 >  大数据

当前栏目

成为区块链专家:从初级到高级

区块 高级 成为 专家 初级
2023-06-13 09:16:38 时间

译文出自:登链翻译计划[1] 译者:Meta[2] 校对:Tiny 熊[3]

如果我的技能突然消失了怎么办?如果我回到 2 年前在没有任何区块链技能的情况下,我会做些什么不同的事情?

如果我想在没有任何知识的情况下从零开始怎么办?今天有一些很好的问题可能会让你感兴趣。

要想在区块链领域取得成功,成为一名优秀的 WEB3 开发者或 WEB3 审计员,你绝对需要遵循以下完整的计划

我会假设:

  • 你在编程、计算机科学和金融方面没有任何经验。
  • 你知道如何使用电脑,如何使用浏览器,如何“玩”社交媒体。
  • 你每天已经有 1-2 个小时的空闲时间,可以专注于培养一项技能。

现在开始!

⏩ 第 1 部分: 掌握基础知识(必修课)

如果你没有任何区块链和编程的经验,绝对需要遵循第 1 部分的所有步骤, 你将获得所有后续部分的基础知识(2-4)。 否则,您可以跳过这部分的一些步骤。

▶ 第 1 步:学习区块链和加密的基础知识

第一步是熟悉加密世界。

  1. 学习 “加密”词汇 (https://time.com/nextadvisor/investing/cryptocurrency/crypto-terms-you-should-know-before-investing/)
  2. 通过使用 Kraken, Kucoin, Binance, Coinbase 等已知交易所,在你选择的加密货币上进行少量投资(如 100 美元)
  3. 阅读精通比特币 (https://www.amazon.com/Mastering-Bitcoin-Andreas-M-Antonopoulos/dp/1449374042) 和精通以太坊 (https://www.amazon.com/Mastering-Ethereum-Building-Smart-Contracts/dp/1491971940/)。你将深入了解区块链和智能合约的工作原理。(你可以在网上找到免费的 pdf 文件。)
  4. 了解不同类型的钱包以及如何保护它们。(https://www.security.org/crypto/protection/)

▶ 第 2 步:学习编程和计算机科学的基础知识

  1. 你有时会在项目中使用命令行和终端,最好现在就学习。(https://www.codecademy.com/learn/learn-the-command-line, 本课程是关于 Linux 的,但也适用于 Powershell)
  2. 当然,你需要编程来创建和审计区块链上的智能合约,在学习编程语言之前,您需要获得编程的基础知识。(https://www.codecademy.com/learn/learn-how-to-code/modules/bop-i)
  3. 最后,学习基本的计算机科学,以充分理解所有区块链概念::(https://www.tutorialspoint.com/basics_of_computer_science/index.htm)

▶ 第 3 步:学习网络基础知识(HTML 和 JS)

  1. 开始学习 HTML 和如何构建基本的网站, https://www.codecademy.com/learn/learn-html 是目前为止学习 HTML 非常快速的最佳资源。
  2. 学习 JS 来创建漂亮的交互式网页: https://www.codecademy.com/catalog/language/javascript
  3. (可选,你可以学习 JS 框架来更快地构建网站,强烈建议使用 reactJS: https://en.reactjs.org/)

▶ 第 4 步:其他必备条件

  1. 了解金融和经济,因为区块链与这一领域高度相关, Investopedia 是迄今为止最好的免费网站: https://www.investopedia.com
  2. 学习数学基础知识 (以下是你需要的所有数学知识: https://medium.com/@TrustChain/do-you-need-math-to-get-started-in-smart-contract-hacking-443ff52b418d)
  3. 如果你的母语不是英语,那就加强你的英语技能(和口音)。你将在区块链领域阅读/观看的所有内容都是英语的。

⏩ 第 2 部分:成为 Solidity 专家

▶ 第 5 步:学习 Solidity (初级到高级)

一旦你完成了基础,就该开始了: 如果你零经验,Cryptozombie: https://cryptozombies.io/ 是最值得推荐的入门资源。

▶ 第 6 步:创建 Solidity 项目

在这一点上,你需要面对现实生活,开始获得“真正的”经验。你现在的目标是构建一些 web3 项目,这里有一些想法:

  • 可升级的 NFT 智能合约
  • 个人作品集(你可以在其中展示你的创作和简历)
  • A DAO (去中心化自治组织)
  • 每次转移都要交税的反射代币

▶ 第 7 步:深入 Solidity

  • 学习智能合约的逆向工程: https://medium.com/@TrustChain/list/reversing-and-degugging-evm-smart-contracts-f4dd9195d07b 。
  • 以太坊 文档: https://ethereum.org/en/developers/docs/ 在那里你可以学到很多有趣的东西。
  • Smart contract programmer 是一个 YouTube 频道,里面有很多关于 web3 的内容: https://www.youtube.com/channel/UCJWh7F3AFyQ_x01VKzr9eyA 。

⏩ 第 3 部分:学习 Solidity 网络安全

如果你是一个 web3 开发人员,你显然不希望有人耗尽你所有的智能合约资金,因此,你需要有更多的区块链网络安全的基础知识,以避免黑客攻击。

(如果你不想成为区块链审计员,可以跳过第 9 步和第 10 步)

▶ 第 8 步:练习 Solidity CTF 挑战

“CTF”是一个“网络安全”挑战,你的目标是“侵入”一个易受攻击的智能合约(当然部署在 testnet 上,没有真钱)。这就像黑客入侵,但没有任何非法目的。

你将很快熟悉以太坊上所有众所周知的漏洞。

以下是著名的 CTFs:

  • https://ethernaut.openzeppelin.com/
  • https://capturetheether.com/
  • https://www.damnvulnerabledefi.xyz/
  • https://ciphershastra.com/Maya.html

▶ 第 9 步:在现实生活中练习你的审计技能

一旦你熟悉了大多数 CTFs,就可以在现实生活中的项目中进行实践。

  1. 阅读一些知名区块链安全公司的审计报告,以熟悉报告的方法和安全漏洞列表。(可以去这里:https://hashex.org/audits/conducted-audits, https://solidproof.io/projects 或这里:https://hacken.io/audits/)
  2. 选择一些已经被大型区块链安全公司审计的项目,并尝试在没有看到真实报告的情况下再次审计他们,一旦你完成了,将你的审计报告与公司的审计报告进行比较,观察你做的对与错。
  3. 重复十几个项目,以建立你现实生活中的审计技能。

许多以太坊漏洞都存储在这里: https://swcregistry.io/

▶ 第 10 步:再现已知的攻击

为了培养实用的网络安全技能,你需要了解之前的智能合约是如何被黑客攻击的。

你越了解智能合约是如何被黑客攻击的,你就越能在你的下一个挑战中认识到这些缺陷!

https://rekt.news/ 展示了 DEFI 中最突出的攻击,你可以轻松找到项目的源代码,重新部署合约并重试攻击。(如果你自己找不到漏洞,你仍然可以在谷歌上找到解释事件发生的人。)

▶ 第 10 步附加(可选):做一些 bug 奖励

Bug 奖励类似于 CTF,但有两个区别:

  1. 将尝试在主网上已经部署的项目上寻找缺陷,而不是“测试网”的智能合约。
  2. 如果你发现了一个缺陷或漏洞,可以得到一笔钱。

这是可选的,但它可以显著改善你的简历。

  • https://hackenproof.com/
  • https://immunefi.com/
  • https://code4rena.com/

▶ 第 11 步:了解情况

区块链领域正在以非常快的速度发展。

3 个月前是正确的,今天可能就不正确了!

这就是为什么你需要(不惜一切代价)设置自己的个人订阅源。

我用 Inoreader (https://www.inoreader.com/) 把我所有的信息源(博客, YouTube, Telegram, Podcasts, 简讯, Twitter 等)合并到一个地方。

这很容易,当我完成我的工作时,我每天查看我自己的订阅源 1-2 次,这种方法有很多优点:

  • 你不需要每个社交媒体都有一个账户。
  • 这样更实用。
  • 社交媒体的“算法”不会向你推荐“垃圾”内容。
  • 您可以包含自己的 CSS 来个性化订阅源主题。
  • 还有更多。

⏩ 第 4 部分:建立一个牢不可破的网络

你可能已经意识到“你的网络就是你的净资产”。

生活的方方面面都是如此,但在加密领域更是如此。如果不认识任何人,你所有的知识都是一文不值。

不幸的是,这是本系列中最难的部分,不像第 1-3 部分中您可以快速地进步和学习, 建立一个网络在时间和资源上的成本要高得多。

▶ 第 12 步:建立社交媒体形象(和创建内容)

你可以尝试定期发布内容:

  • LinkedIn, 你的专业履历。
  • Twitter, 如果你喜欢唠嗑。
  • Medium,如果你喜欢写作和分享你的知识(比如我)。
  • YouTube,如果您喜欢发布视频并分享您的知识。
  • Instagram/TikTok.

最多选择 1 到 2 个平台,并尝试在这里建立受众,当你找工作时,你的社交媒体表现将使你在与其他求职者相比时具有决定性的优势。

你也许能够从你的内容中获得被动收入(通过使用广告或从属关系),而无需增加更多的工作。

▶ 第 13 步:加入社区、DAO 或聚会

你可以加入 Telegram 和 discord 上的社区,逐步建立你的声誉。

  • 你可以回答问题。
  • 与其他成员讨论。
  • 表明你参与了项目。

这会让你建立自己的人际网络,结交新朋友,提高自己的技能。

也许在某个时候,你的“网络”中的一些人将需要智能合约开发者或审计员。因为他们已经通过你的“友谊”信任你,你可以得到这份工作。

如果你想深入了解:

如何在加密领域建立网络和交朋友 停止尝试在 LinkedIn 上与人接触,你需要了解内容、对话和社区的结构[4]

▶ 第 14 步:学习心理学和市场营销的基础知识

如果你想获得一份工作,并在其他人中占据上风,你需要发展你的社交技巧。

本书是实现这一目标的最佳选择: https://www.amazon.fr/influence-Persuasion-Robert-Cialdini-PhD/dp/006124189X

⏩ 第 5 部分:结论

掌握区块链并不像想象中那么难。特别是 solidity 语言,它比大多数其他编程语言更容易。

因为区块链是一种“高收入”技能,所以进入市场的人会越来越多,竞争也会越来越激烈。

我建议你现在就开始,否则就太晚了。

原文链接:https://trustchain.medium.com/become-a-blockchain-expert-beginner-to-advanced-for-free-65ce62606176

参考资料

[1]

登链翻译计划: https://github.com/lbc-team/Pioneer

[2]

Meta: https://learnblockchain.cn/people/5578

[3]

Tiny熊: https://learnblockchain.cn/people/15

[4]

如何在加密领域建立网络和交朋友 停止尝试在LinkedIn上与人接触,你需要了解内容、对话和社区的结构: https://medium.com/coinmonks/how-to-network-and-make-friends-in-crypto-796e123e9584