區塊鏈與AI 一樣是個市場很熱的名詞 (a Buzzword),但比起AI,區塊鏈似乎更抽象,我想是因為AI 隨著科幻電影、小說中大量的機器人及人工智慧的出現,包括了機器人三法則(以撒·艾西莫夫Isaac Asimov、基地系列小說作者)、2001太空漫遊(2001: A Space Odyssey) 中的超智慧電腦HAL 9000等,潛移默化的植入了一般人心中AI 的形象,雖然實際上目前的AI程式比較像是一個pattern recognition machine,還遠未到電影中人工智慧的智能,但至少我們可以想像AI是甚麼,但區塊鏈…是甚麼,可以吃嗎? 區塊鏈技術最大的推手應該是比特幣(BitCoin),畢竟賺錢人人愛,用電腦可以挖礦然後就可以挖到比特幣,真神奇,然後1塊比特幣居然漲到了60000美金,於是區塊鏈開始進入人們的談資中,後來又出現了以太坊、智能合約、更多的虛擬貨幣(大部分的人的視聽自動跳過這段、包括我自己),又出現了一個NFT(Non-fungible token、非同質化代幣)這樣一個用以太坊當base的應用,聽起來實在不知道是甚麼東西的一個名詞,首先在投資圈火了,隨著越來越多明星及商品也加入NFT的追逐,時不時爆出有人靠著NFT一夜致富,於是其中最基礎的技術區塊鏈成了我們必須要懂得的科技名詞。
但今天不準備繼續深入講區塊鏈、NFT、以太坊,畢竟網路上已有非常多的文章在介紹;今天及接下來我想要對Ethernaut做一個比較完整的介紹。
Ethernaut是甚麼? (網址:https://ethernaut.openzeppelin.com/)
The Ethernaut is a Web3/Solidity based wargame inspired on overthewire.org, played in the Ethereum Virtual Machine. Each level is a smart contract that needs to be ‘hacked’.
- 它是個遊戲
- 它是一個用Solidity程式開發、以以太坊網路來進行的遊戲
- 遊戲的內容在於攻破(hack) 每一關的智能合約 (smart contract)
這邊有幾件事情可以說明一下,它是由OpenZeppelin這家公司開發的免費遊戲,遊戲中會用到測試網路中的以太幣(關於測試網路:以太坊為了讓開發者能測試而模擬以太坊主網路的測試環境),共有27關,每一關說明一個智能合約中可能有的漏洞,希望開發者藉著遊戲來理解,並避免在自己開發的智能合約中犯下同樣的錯誤。所謂的智能合約可以想成是在以太坊執行的app,而Solidity則是用來在以太坊開發智能合約的程式語言。因此要玩這個遊戲需要對於Solidity的語法有所了解,也需要有基本的虛擬貨幣的概念。遊戲的網址如上。
(一邊在寫發現有好多的名詞都可以再深入的解釋下去,例如NFT、測試環境、智能合約等等,也許之後再補上,先附上網路上找到的說明文件的超連結,本篇中所寫其中有些是我自己的心得及想法,由於個人的理解難免有可能有所偏誤,也歡迎大家留言指正跟討論囉)