科普 | 為何OKEx和火幣紛紛暫停以太坊ERC20代幣充值?
作者:BitBond007
這兩天,在OKEx分別暫停了BEC和SMT交易和提現後,又暫停了所有以太坊ERC20代幣的充值功能。
另一家交易所火幣也是如此。
這個ERC20代幣是什麼?為什麼會有這麼大的風險?應該怎麼處理我們手裡的資產?
1
ERC20 Token
現在交易所上大家炒的幣主要分為兩種,一種有自己的鏈,一種沒有,僅僅運行在以太坊等公鏈上。像比特幣和以太坊這樣的項目,都有自己的鏈,礦工挖的就是這種幣。再比如前兩天暴漲的比原鏈,昨天才有了自己的主網,才能用礦機挖礦。而EOS,要等到6月份主網上線才能挖礦,這也是最近EOS超級節點競爭的原因,他們在爭奪挖礦權。
但是並不是每一種幣都會有自己的主網,這是要根據每個token(也稱為通證或代幣)的使用功能和共識決定。有些token完全可以在以太坊或者其他公鏈上運行,不需要自己擁有主鏈。如果有些小項目發的token有自己主鏈的話,可能很容易被51%算力攻擊,反而運行在其他公鏈上會比較安全。
根據每種token不同的應用場景,項目方會選擇不同的公鏈,比如以太坊、NEO、量子鏈等等。當然最火的就是以太坊,絕大多數token就是發在以太坊上的,所以ICO基本都是用以太坊眾籌。其實發幣非常容易,之前網上的教程《5分鐘教你在以太坊上發行自己的代幣》,那些說的就是發行在以太坊上的ERC20 Token。發幣容易也就導致了門檻很低,誰都能發個幣,空氣幣層出也是由於這個原因。
最後說到ERC20代幣,ERC即是Ethereum Request for Comments的簡寫,直譯為以太坊徵求意見,也可以說是以太坊開發者的協議提案。提案有很多版本,ERC20是最廣為人知的標準之一,也是現在很多ICO代幣使用的版本,誕生於2015年。ERC20簡單說是token的一種,也是一種協議。這裡不過多討論技術,就不把代碼搬上來了。
對代碼感興趣的可以打開下面鏈接https://github.com/ethereum/EIPs/blob/master/EIPS/eip-20.md
之所以稱ERC20是代幣的一種,是因為這個協議里規定了幾個必須寫的函數,這些函數定義了代幣總量,代幣轉賬方式等等。除了這個協議外,還有一個知名的ERC721代幣。既然有兩個不同的代幣協議,他們發的token也是不同的。簡單講,ERC721 token中每個token都是獨一無二的。最著名的就是以太貓這個遊戲了,這個遊戲就是使用的ERC721協議,因此每個以太貓都是獨一無二的token,也是這個遊戲的玩法。
2
現在面臨什麼問題?
這次以太坊智能合約上的安全漏洞叫做溢出攻擊,簡單說就是黑客發現了項目的代碼漏洞,自己創造了好多之前設定並不存在的幣。比如一個項目只發了10億個ERC20代幣,黑客卻用漏洞自己又弄出了5億個,他們把這些多出來的幣充到交易所上賣出,對這個項目可以說是毀滅性地打擊。
不過,以太坊ERC20的問題,和以太坊的構架也有關係。以太坊使用的是賬戶模型,比特幣使用的是UTXO模型。解釋一下,並不存在比特幣這種幣,比特幣只是轉賬記錄,每個幣在轉賬時都能找到它的來源,不會憑空冒出來。但是以太坊的模式不是這樣,所以才可能出現這種問題。
如果主網上線後就會回到自己的鏈上運行,也就不會出現上述以太坊智能合約的問題。EOS現在就是發行在以太坊上的ERC20代幣,因為等到6月1日才會上線自己的主網。像EOS的主網映射過程就是先建立EOS主網錢包,再關聯上現在暫時放在以太坊上EOS代幣,然後等主網上線後就能直接將之前的ERC20代幣映射到EOS主網上。
但是並不是所有項目以後都會有自己的主鏈,像上面所說的,小項目很容易被51%算力攻擊。如果贊同以太坊的共識機制,而且以太坊也能滿足項目需求的話,完全不需要自己搞出主鏈來,發在公鏈上反而更安全。
3
我們要怎樣面對這種安全漏洞?
其實我們做不了什麼,畢竟是項目方掌控著代碼。現在的漏洞主要是「數據溢出」漏洞,黑客多搞出了很多代幣,然後向市場拋售導致幣價下跌。慶幸的是黑客不能轉走我們錢包里的幣,或者我們交易所賬戶里的幣。因此交易所要暫停ERC20代幣的充值,就是防止黑客將多搞出來的代幣充到交易所上交易,套現。
我們現在能做的就是等著項目方排查他們的代碼,保證不會再出現類似的行為。這樣也能看出來,哪些項目靠譜,哪些項目連代碼都不管了。
剛剛出爐的快訊,美圖發聲,宣布終止與BEC美鏈的合作,嗯...不評論了。
這篇文章主要給小白們準備,覺得有幫助的來點個贊,有什麼問題盡情評論吧!
推薦閱讀:
TAG:比特幣Bitcoin | 以太坊 | 萊特幣Litecoin |