一、uload靠什么防止ASIC礦機(jī)
1、什么是ASIC礦機(jī)
中本聰打造比特幣的時(shí)候,設(shè)計(jì)的是使用電腦(包括家用電腦)來挖礦,主要依靠CPU去計(jì)算。但是隨著比特幣等數(shù)字貨幣的價(jià)值越來越高,挖礦成為了一個(gè)產(chǎn)業(yè),競爭越來越激烈,挖礦難度也不斷提升,于是就開始比拼硬件。
后來礦工發(fā)現(xiàn),Intel、AMD的CPU雖然越來越強(qiáng)大,但是電腦CPU是通用處理器,綜合能力強(qiáng)但單項(xiàng)計(jì)算能力并不如專用計(jì)算芯片,最簡單的例子就是圖形計(jì)算,在圖形與3D計(jì)算方面CPU遠(yuǎn)不如GPU芯片。
比特幣挖礦只是進(jìn)行SHA256哈希值計(jì)算,功能單一,CPU雖然能計(jì)算,但是從成本、效率上考慮并不劃算。所以礦機(jī)企業(yè)專門設(shè)計(jì)了用于SHA256(或其他算法)計(jì)算的ASIC芯片。
ASIC是Application Specific Integrated Circuit的縮寫,是一種專門為某種特定用途設(shè)計(jì)的電子電路(芯片)。用于挖礦的芯片,就是礦機(jī)ASIC芯片了。因?yàn)楸辉O(shè)計(jì)為只進(jìn)行某一挖礦需要的特定算法,所以ASIC芯片的設(shè)計(jì)可以簡單的多,成本也低的多。不過最重要的是,就挖礦算力來說,ASIC可以比同時(shí)代的CPU、GPU高出幾萬倍甚至更多。
比如當(dāng)前主流的螞蟻礦機(jī)S9,就是ASIC礦機(jī),使用了189片ASIC芯片,算力達(dá)到了13.5TH/s,而整機(jī)的價(jià)格只有1萬元人民幣,功耗僅為1350W。作為對(duì)比,當(dāng)前電腦顯卡旗艦GTX1080Ti挖礦的算力基本不會(huì)超過60MH/s,60M與13.5T相差了好幾十萬倍,并且一塊GTX1080Ti的價(jià)格就是7000元,單卡功耗在300W以上。
所以,縱觀現(xiàn)在的比特幣礦工已經(jīng)步入專業(yè)化集團(tuán)軍模式,普通人再難涉入其中,如果uload出塊也可以依靠ASIC礦機(jī)的話,相信也會(huì)步入比特幣的后塵,逐漸成為算力寡頭們的游戲。為社群建設(shè)增加難度
2、uload如何拒絕ASIC礦機(jī)
uload是通過POW和POS結(jié)合來維護(hù)整個(gè)區(qū)塊鏈網(wǎng)絡(luò)的。POW是為了給區(qū)塊鏈生態(tài)提供算力來進(jìn)行工作量證明進(jìn)行出塊,那么如何保證算力池不被大型ASIC礦機(jī)霸占,使得更多用戶參與社區(qū)建設(shè)呢?
答案是,Uload的算法設(shè)計(jì)天然抗ASIC。使用16種散列函數(shù),這將增加ASIC 實(shí)現(xiàn)的芯片面積,而且會(huì)導(dǎo)致GPU的多線程執(zhí)行不同的路徑,降低其并行化效率。并且,使用嚴(yán)格串行的執(zhí)行序列,控制GPU和asic的并行度。
但是uload的做法是否有效,其實(shí)令人生疑的。魔高一尺道高一丈,有時(shí)并不是無法做到,而是沒有現(xiàn)實(shí)的利益。何況,upload又是如何防止大規(guī)模肉雞的攻擊呢?