0%

About Block Chain

從 Alpha Camp 畢業後,前前後後大概花了整整一年的時間,中間因為工作及家裡的事情,所以擔誤了將近半年的時間無法持續進修,但慶幸的是把這些事情解決後,還是帶著決心和毅力堅持將Alpha Camp 全端網頁開發課程修完並且順利畢業,畢業後還順利申請上 Z institute 區塊鏈線上學院 的 Web3 區塊鏈前端開發課程的交換學生,換個角度想,其實也算是一件很幸運的事吧!

從區塊鏈前端開發課程開學近兩週,想在這邊稍微記錄一下開學至今近兩週的學習近況。

AlphaCamp 畢業後成為的 Z institute 交換學生

從 Alpha Camp Web2.0 全端網頁開發課程畢業後,到順利申請到交換學生開始學區塊鍊技術,對於一個為了轉職成為工程師近乎是新手小白的我來說,什麼區塊鏈、加密貨幣、NFT…,這些東西都是超級陌生,也覺得跟 Web2.0 所學的東西,只掛的上一點點邊,也很幸運剛好可以透過這個難得的機會來學習完整的區塊鏈開發課程,畢竟有學校能夠整理完善的資訊,透過跟著學校系統化的教學,一起學習這塊未來的趨勢一定是事半功倍,也真的非常珍惜這個機會且感到興奮跟期待。

從頭學習

雖然完修 Alpha Camp 全端網頁開發課程 ,但發現自己對區塊鏈這塊的知識完全可以說是 0 ,生活在這個世代的人,很難停下腳步去學習,一旦停下感覺就會不小心被這個快速變化的世界所淘汰,所以一直以來也是保持持續學習與分享和帶著好奇的求知的心態在生活。

而在開課前的一週,學校開出了開課前的預習作業,作業當中有相當多的區塊鏈知識必須自行去搜尋資料,去閱讀吸收很多相關的新知識,每週光是自修閱讀的東西真的多到嚇人,每週幾乎要花上 20 個小時以上去做延伸閱讀跟自學,但也因為好奇心的驅使,雖然忙跟累可是卻非常充實且收穫滿滿,更期待課程結束後,能夠和組員一起完成一個屬於 Web3 概念的去中心化網頁應用程式專案,也是給自己的目標期許。(握拳 ✊)

初嘗試申請錢包地址

在 Web3 的世界裡,完全是使用加密貨幣在做交易以及執行諸多的相關程序,所以擁有一個加密錢包是絕對必要的,所有的 Web3 App 大部分都需要跟加密錢包做連接互動。

加密錢包的申請方式,需要先在手機、桌機、或網頁瀏覽器上安裝加密錢包應用(也可稱之為 Provider),在透過這些錢包應用程式來申請加密錢包。

申請加密錢包時會提供加密的私鑰或是助記詞來幫助你找到你錢包在區塊鏈網路上的位置,所以這邊要特別注意,要非常小心保存助記詞跟私鑰,一旦遺失或將這些私鑰、
助記詞落入別人手中,你將會有很大的機率遺失你所有的數位資產,所以在資安管理上要非常小心,也要有一定程度的網路資安知識。

而我第一次申請錢包是透過 InfinityWallet 來申請錢包,先透過官方網站下載錢包應用程式來安裝。

開啟 InfinityWallet 在申請時會先要求建立一個 Local 的 ID

接著會要求設定一組 local 密碼,可以使用高強度密碼產生器來產生一組高強度密碼,高強度密碼產生器連結

或是可以使用 google 搜尋高強度密碼產生器,在這邊範例是使用 1Password 網頁應用來建立高強度密碼。

接著選擇建立一個新的錢包

然後設定你可愛的加密錢包名稱(未來隨時可以更改)

然後在設定一組 8 位數 PIN 碼,也可以跳過。(InfinityWallet 相對做了比較多層的保險)

接著使用 InfinityWallet 申請時可以自己選擇要使用 12 組或是 24 組英文單字做為助記詞

然後這邊會提醒你,請你好好保管這些帳號密碼及助記詞,帳號密碼是用來個人電腦登入錢包使用,就像是登入你的筆電意思一樣,而超超超超超超重要的另外一件事,就是或許遺失帳號密碼還是小事,都還可以透過助記詞或私鑰來找回你的錢包,然後重設密碼,可是一旦你的助記詞或私鑰遺失了或給了別人,那就等於你把你的數位資產直接送人或丟到黑洞里去直接找不回,由其在區塊鏈的世界上,可是沒有什麼客服可以幫你重設密碼或找回助記詞、私鑰這件事,所以一定要好好妥善保管。

接著 InfinityWallet 會給你 12 或 24 組英文單字作為助記詞

助記詞主要是透過使用不可逆的哈希加密方式,來得到一串不可逆的私鑰密碼(就是一長串不可逆的代碼,非常難記,所以有了助記詞的產生),所以不管是助記詞或是私鑰,這兩者都不能遺失或交到別人手中,只要遺失或交到別人手中或是被駭客取得,你將會有很大的機率失去你所有的數位資產。

接著在瀏覽器上安裝相關的錢包工具,選擇恢復帳號,然後輸入助記詞或私鑰就可以重新連上你在區塊鏈上的加密錢包了!

後來發現很多平台還是比較支援最熱門的 MataMask 錢包,所以後來幾乎都改用小狐狸作為連接錢包的工具。

第二次申請錢包是直接透過連接現在很熱門的 MetaMask 錢包來,然後使用錢包插件裡的選單直接建立一個新的錢包地址,但這個錢包地址好像會直接跟第一個錢包的助記詞綁在一起(我的狀況是這樣,或是我的操作順序有誤),或是可以參考這邊文章直接使用 MataMask 來申請一個使用不同助記詞的新錢包How to create a MetaMask Wallet

助記詞與私鑰的保存

關於私鑰或助記詞絕對別給別人,通常也建議使用紙筆來記錄並鎖藏起來,或是有能力就強制背下來深深刻在腦海深處,或存在一個需要指紋辨識或是生物特徵辨識的儲存裝置,如果不擔心 USB 遺失,也可以放在 USB 裡,但是 USB 也有一天會壞的可能,絕對絕對別存放在電腦裡或是存在雲端或是以照片方式儲存在隨時連線的電腦上,這些都是有可能導致被駭客攻擊,並且成功竊取走你的私鑰跟助記詞,還有也別隨意點奇怪的連結被釣魚(什麼空頭虛擬貨幣、優惠折扣碼網站、奇奇怪怪看起來很詭異的網站、或是安裝一些來路不明的瀏覽器掛件,或使用非正當路徑取得的軟體,這些都很有可能導致你錢包內的數位資產遺失。

EPI 與 ERC-20、ERC-721、ERC-1155

簡單說明 EIPs 就是以太坊的改進提議,每個 EIPs 都會有編號,而每個人也都可以發起 EIP 提議,但就看你的內容已沒有深度直得大家關注及討論。
作為 Web3 世界開創的前幾大佬的以太坊,這個 ERC-20 加密貨幣智能合約就是由乙太坊的 Frozeman 最先提出連結在此

任何人都可以在 GitHub 上的 Ethereum 官方帳號裡找到這些議題
而這些 Issues 都會有編號,而 ERC-20 代幣就是在這個 Issues 裡面編號為 20 的議題,所以被通稱 ERC-20 加密貨幣,也就是從此議題討論到最後所產生出來的。

ERC-20 也稱為同值性代幣,所有的加密貨幣都可以彼此轉換,但因為加密貨幣又跟現實金錢有匯率關係,所以也不見得是 1:1 兌換,只是他們底層都是同性質物件所以不同虛擬貨幣幣是可以互通轉換的,但轉換的過程都須透過交易所來交換,交換的同時匯率也會不停更新,交換貨幣也都會有手續費(Gas fee)還有很多要注意的相關事項,這部分自己還不是太清楚了解,未來有機會再補充說明,而在以太坊目前最大的交易所就數 Uniswarp 了。

但網路其實還充斥著諸多數位產物,不僅僅是加密貨幣而已,例如還有數位藝術作品、數位音樂、數位遊戲道具、數位認證證明…諸多數位產物,但它們的底層物件並不具有同值性,也因為底層的結構不同,無法直接交換,因此產生了 ERC-721 非同值性代幣的智能合約(也就是 NFT,Non-Fungible Token,不可取代的 Token),這些 ERC-721 數位產物在區塊鏈上都將會有擁有獨一無二的 Token 代碼,查詢這個 Token 代碼也就能查詢到這個數位產物的所有資訊,被創造的日期,以及自身編號、總數量、交易紀錄…等,且所有的 NFT 都將必須透過 ERC-20 虛擬貨幣來做交易來轉移,但也並非所有 ERC-721 產物都可以轉移就是,這就得要看當初在鑄造此數位產物時的設定了,一旦設定好性質且上傳至區塊鏈上這些數位產物便無法再做修改,舉例來說,像是認證證書、畢業證書、護照…類似的身分證名,其實就不應該可以更改也不可以轉移到別人身上,必須要綁定在個人身上,亦或是由某些非去中心化組織來妥善保存管理。

而後來因為 ERC-721 的交易每次只能單筆交易一項數位產物,導致交易上的不方便,也產生每次交易都要花上大量的手續費,也浪費網路上的算力,但是像遊戲道具或數位收藏品或其他數位產物其實有可能有成千上百萬種,有時候一筆交易當然不可能只有一個單品,所以因而衍伸出了 ERC-1155 智能合約,ERC-1155 協議就能夠透過單筆交易來交易多項 NFT,此後也更加便利於虛擬世界上的交易,也降低了大量手續費也更環保,因為降低了網路上的算力耗能。

初嘗試購買加密貨幣

想買加密貨幣可以透過各式各樣的加密錢包插件或應用程式來購買,並投過相關的中間平台商,使用信用卡付費來購買這些虛擬的加密貨幣(有點像刷卡買遊戲點數意思差不多),但虛擬貨幣的匯率是隨時在浮動的,所以在購買時也有很多相關需要注意的事情。(以後有機會再補充)

初購買 NFT

有了加密貨幣後,最近就在嘗試在 OpeanseaX2Y2 上購買 NFT,Opensea 為一個 NFT 交易平台,也可以透過此網站來打造 NFT 產品,而最近是在X2Y2上面購買了這個數位藝術作品作為大頭照使用,來作為我第一次使用區塊鏈交易數位商品的體驗。

所以目前就可以透過查看我的錢包地址來看到此圖片的過往來源,來確認此圖片目前的所有權是屬於我的 🤣,而在未來世界裡,可能相關的社交軟體也都可以將這些個人照片或是圖片上傳至區塊鍊中,給予這些圖片獨一無二無法複製的 Token,並且綁定在自己的錢包上,這樣就可以追查這些圖片的來源是誰,同時也代表了更難去冒充假冒別人,因為太容易查詢到圖片或是帳號的歸屬是誰了(雖然目前沒有相關政策協議虛擬錢包必須要跟真實世界人物做綁定,因為這又跟去中心化有點違背)。

熱門公鏈與 Web3 網頁應用

最近也透過學校的介紹,得知這個叫 Dapp 的網站,從這網站上可以查到所有公鏈平台上的 Dapp(去中心化網頁應用程式),相當好用,還可以依照不同的鏈或是 Dapp 性質來過濾自己有興趣的應用程式還可以依熱門度來排序,有興趣的話都可以去點點看玩玩看。

結語

目前區塊鍊應用技術正在快速的蓬勃發展,用途上其實也還存在非常多的可能性,不僅僅只是加密貨幣而已,雖然目前普及率也還不高,但這就像是一個大混亂時代的過渡期,就像以前沒人會使用電腦,只有少數人懂得玩電腦,而會玩電腦的我們也只能閱讀網站,並無法跟網站互動,只能讀取網站給我們的資料。(這是 Web1.0 時代,只能讀取網頁資料)

到了現在網路普及化,每個人都會使用且還人手一台手機、筆電、桌機,隨時能夠上網下單購買商品,留言貼照片影片在社群網站,或是使用網頁應用程式開發產品,使用網頁來互動,這也是經令漫長的普及化過程,但在這過渡期中也產生了很多新的協議規範,也才造就了現在的W eb2.0 時代。(Web2.0 已經成為可以讀跟寫和網頁應用程式做互動了,但是很多個人資料或智慧財產物都被儲存在某些巨頭公司手上,個人用戶並不具有完全的資料控制權)

也是這原因,開始就造就了 Web3 的開發,期望在未來所有的資料歸屬,有可能都將會轉移到個人身上由自己保存管理跟控制,而加密錢包就可以儲存各式各樣的資料並且加密不讓人容易取用,這也就成了去中心化,所有數位產物只有所有權者擁有能夠讀寫、變更或開放權限給人使用觀看…之類的可能性,但或許也還是會同時存在中心化的組織來保存管理某些特定的 NFT 或相關的數位產物(個人覺得有些事情還是必須要有中心化的必要性),但透過將這些數位產物上傳至區塊鏈,就可以來達到不可仿冒作用,也就更難假冒身份、學歷、技能證明書…等等。

Web3,起初的理念是希望個人資料及相關數位智慧財產不在是交由某些巨頭公司們來保存管理在他們的伺服器當中(中心化),而改為分散儲存在世界各地的節點(電腦)上(去中心化),而只有所有權人才有權利去讀取、刪除或修改或開放權限給別人使用,但未來會怎麼演化其實也還很難講,有時候中心化跟去中心化的平衡點我個人是覺得還有很大的商討空間,也需要重新拿捏分寸,且透過大部分人的共識,來產生新的規範協議。

總之覺得網頁的演化是個非常有趣的過程,也很期待未來的網路世界會變得更豐富且有趣跟多樣化。未來上網時也許不僅僅只是上網,也許在上網的時候同時也可能在賺錢與消費或者更多的可能性,而不是上網的時候,任由這些巨頭公司控制你的個人資料、數位產物、或使用你的個人資訊資料來做廣告收益賺取公司利益,而不是回饋到使用者本身身上,或是社群網站餵給你的亂七八糟的廣告詐騙資料、社交平台上的文字獄、中心化不平衡的審查機制、亂刪除、亂封鎖。但這當中還是有很多的事情的確需要重新謹評估跟重新建立新網路世界的遊戲規則,但這些當然都還需要很多時間去建立跟改進,所以將來還是有很長的一段路程要走,不然網路世界也可能會變得更加混亂跟充斥著危險。

題外話

(以上是目前所學的初淺個人觀念知識,當然也絕對不是一定完全正確,所以也歡迎大家一起來討論教學相長)
另外分享我的錢包地址
反正目前沒什麼價值,也不怕人看就是。

Z 學院的課程上也還介紹過相當多的 web3 應用及相關知識,例如:智能合約的撰寫、如何使用 infura 來在公鏈上做分岔來測試自己開發的 Dapp、簡易介紹如何使用 Remix 來撰寫 Solidify 智能合約並上傳到測試鏈上在透過 VS Code 使用 React 框架撰寫 Dapp 來連結錢包以及跟智能合約互動,還有透過 Dapp 來跟智能合約互動來取得鍊上資料並顯示在自己的 Dapp 網頁中,或是跟智能合約互動來修改智能合約裡的變數…,在未來課程還會有更詳細的介紹說明,到時候再作跟深入的技術筆記來跟大家分享。

Welcome to my other publishing channels