幣乎KEY合約源碼分析幣乎已經(jīng)上線20多天了,,從這20多天看,Token的激勵(lì)真是很大啊,。還沒(méi)見過(guò)一個(gè)剛上線的產(chǎn)品就有用戶自動(dòng)組織打假,、抨擊發(fā)水文的、心甘情愿為幣乎籌謀劃策,。而且?guī)藕醯捏w驗(yàn)?zāi)壳斑€說(shuō)還真是有很大的提升空間,,但是活躍用戶還是挺多,里面的大V都保持一天發(fā)一篇文章的頻繁,,當(dāng)然發(fā)的大部分都是毫無(wú)營(yíng)養(yǎng)的水文,!不過(guò)相信幣乎的發(fā)展,文章的水準(zhǔn)會(huì)越來(lái)越高的,。 幣乎使用的KEY是ERC20 Token,,我們可以直接在etherscan 上查看幣乎KEY合約的代碼。 直接看KEY合約的主要代碼:
為什么叫DSToken, 不是應(yīng)該叫BiHuToken或者BHToken嗎,? DSToken 繼承了 DSTokenBase 和 DSStop ,。DSTokenBase 主要是實(shí)現(xiàn)了ERC20 的接口,這在之前的幾篇文章中都有提到過(guò),,這里就不在介紹了,。主要是看下DSStop,。 在DSToken中我們可以看到有一個(gè)generator屬性,這個(gè)generator的值在構(gòu)造函數(shù)中設(shè)置成了合約發(fā)布者的地址,。而且還有一個(gè)onlyeGenerator的 modifier,,用來(lái)判斷當(dāng)前操作人是不是合約發(fā)布者,這個(gè)合約發(fā)布者權(quán)利還是很大的,,后面會(huì)再講,。 我們?cè)诳聪翫SStop的實(shí)現(xiàn):
主要是提供了一個(gè)stoppable 的modfier, 這個(gè)的作用是判斷合約有沒(méi)有處于停止?fàn)顟B(tài),,如果合約狀態(tài)處于停止?fàn)顟B(tài),,那么會(huì)禁止Token的轉(zhuǎn)賬??梢栽贒SToken的 transfer 和 transferFrom 方法上看到都有 stoppable 的修飾,。
這意味著什么? 意味著 幣乎可以隨時(shí)把KEY歸零啊有木有,?只要禁止了KEY的流通那不就變成積分了嗎,?如果變成積分,大家還會(huì)有這么大的熱情么,?當(dāng)然我們也可以理解這是幣乎給自己留的后手,,如果政策不允許幣乎這么搞,幣乎通過(guò)禁止KEY的流通來(lái)滿足監(jiān)管要求,,就像迅雷的鏈克一樣,,國(guó)內(nèi)是不允許交易了。幣乎要禁止了,,國(guó)外也是照樣不能交易的,。 DSStop中的 stop和start 就是關(guān)閉和打開KEY流通的方法。在這兩個(gè)方法上我們又看到 auth 和 note 兩個(gè) modifier,。先看下auth的實(shí)現(xiàn):
DSAuth 中有一個(gè)owner的屬性,,從字面意思可以猜到,owner應(yīng)該會(huì)是管理合約的人,,初始化的時(shí)候會(huì)設(shè)為合約發(fā)布者,,但是后面是可以通過(guò)setOwner 來(lái)設(shè)置為其他賬號(hào),一般這個(gè)owner會(huì)設(shè)置為老板吧,?,。auth 的作用主要是認(rèn)證當(dāng)前操作人有沒(méi)有權(quán)限。比如說(shuō) mint 跟 burn 這個(gè)方法 在來(lái)看下note的實(shí)現(xiàn):
這個(gè)就很好理解,,對(duì)于一些重要的操作,幣乎都需要記錄下來(lái),,后面出了問(wèn)題也可以有記錄可查,。 最后讓我們來(lái)看下DSToken 中的generatorTransfer 這個(gè)方法,從這個(gè)方法可以看到是沒(méi)有 stopable修飾的,,注釋上也寫明了 即使禁止了轉(zhuǎn)讓但是owner還是可以轉(zhuǎn)讓Token的,。這個(gè)方法的作用目前我還沒(méi)想到有啥作用,既然禁止了token的轉(zhuǎn)讓只允許owner一個(gè)人可以轉(zhuǎn)讓那沒(méi)什么大意義吧,。 幣乎目前是我看來(lái)非常有活力的社區(qū),,雖然才剛起步,但是我相信后面會(huì)越來(lái)越好,。KEY目前在交易所目前價(jià)格也要3分一個(gè),,隨著幣乎的發(fā)展KEY的價(jià)格也會(huì)水漲船高的。現(xiàn)在幣乎注冊(cè)還有送7萬(wàn)的KEY,,大家如果想要體驗(yàn)下幣乎可以使用我的推薦鏈接,,有興趣的可以來(lái)體驗(yàn)下,也算是區(qū)塊鏈落地的一個(gè)應(yīng)用吧,! |
|