區(qū)塊鏈游戲應(yīng)用的可用性探討
假設(shè)你想玩一個(gè)區(qū)塊鏈游戲。例如,假設(shè)您想要一只加密貓?;蛘咄嬉恍┦占ㄆ挠螒?。這實(shí)際上是一個(gè)非常復(fù)雜的過(guò)程。你需要:
1. 安裝Metamask
2. 創(chuàng)建密鑰對(duì),并安全地存儲(chǔ)私鑰。如果你以后想從另一個(gè)設(shè)備上播放,你需要了解如何將它傳輸?shù)侥莻€(gè)設(shè)備上;
3. Coinbase登記
4. 做一個(gè)KYC,包括發(fā)送你的文件到Coinbase。
5. 等待時(shí)間
6. 首先需要買(mǎi)以太幣,只有先購(gòu)買(mǎi),然后才能?chē)L試游戲!
7. 從Coinbase轉(zhuǎn)移以太幣
8. 終于買(mǎi)了你的加密貓!…盡管現(xiàn)在你需要為每次與游戲的交互付費(fèi),你的延遲至少是20秒。
運(yùn)行在區(qū)塊鏈上的現(xiàn)代游戲和應(yīng)用程序在上述登錄過(guò)程中報(bào)告了驚人的95-97%的下降率。這意味著在100個(gè)用戶(hù)中,只有5個(gè)或更少的用戶(hù)真正開(kāi)始使用它!
上面的問(wèn)題大致可以分為三個(gè)子問(wèn)題:
1. 必須安裝瀏覽器插件(或錢(qián)包應(yīng)用程序)以安全地與鏈交互;
2. 必須具備及了解公開(kāi)/私鑰的保安;
3. 必須為每筆交易支付燃料費(fèi)。
上面的第1項(xiàng)和第2項(xiàng)是與區(qū)塊鏈安全交互所必需的,它們的設(shè)計(jì)目的是確保用戶(hù)不會(huì)丟失他們的資金或資產(chǎn)。最后一項(xiàng),除了為礦商提供經(jīng)濟(jì)激勵(lì)外,也是保持區(qū)塊鏈自身安全的必要條件——如果交易是免費(fèi)的,那么DDoS系統(tǒng)就會(huì)向它發(fā)送大量免費(fèi)的無(wú)用交易,這對(duì)DDoS來(lái)說(shuō)是微不足道的。
一旦一個(gè)人進(jìn)入了特定的區(qū)塊鏈生態(tài)系統(tǒng),比如以太坊或NEAR,他們就安裝了瀏覽器插件或錢(qián)包,在他們的帳戶(hù)上有一些資產(chǎn),并設(shè)置了所有設(shè)備來(lái)使用正確的密鑰對(duì)。他們使用Web3應(yīng)用程序相對(duì)簡(jiǎn)單,除了可能是應(yīng)用程序的緩慢。
然而,到目前為止,大多數(shù)互聯(lián)網(wǎng)用戶(hù)都不使用區(qū)塊鏈,如果我們想要改變它,我們需要盡可能簡(jiǎn)化他們的登錄。在理想的情況下,開(kāi)發(fā)在區(qū)塊鏈上運(yùn)行的分散應(yīng)用程序應(yīng)該不會(huì)比構(gòu)建nodeJS應(yīng)用程序更困難,而且一旦部署了這樣的應(yīng)用程序,以前從未使用過(guò)區(qū)塊鏈的用戶(hù)應(yīng)該能夠在瀏覽器中打開(kāi)它并開(kāi)始與它進(jìn)行交互。
讓我們考慮一下上面描述的每一個(gè)障礙,今天為解決這些障礙所做的努力,以及我們?cè)趨f(xié)議級(jí)別上正在開(kāi)發(fā)的支持這些障礙的更改。
瀏覽器插件/錢(qián)包應(yīng)用程序
您需要在您的機(jī)器上運(yùn)行一些定制的二進(jìn)制文件來(lái)安全地與區(qū)塊鏈進(jìn)行交互。其背后的動(dòng)機(jī)是,您剛剛在瀏覽器中打開(kāi)的任何托管內(nèi)容都完全由主機(jī)控制,因此可以在任何時(shí)候任意更改。即使托管的解決方案存儲(chǔ)本地加密的密鑰,它的代碼稍后也可以更改,以便從本地存儲(chǔ)中獲取數(shù)據(jù),并在解密后立即將數(shù)據(jù)發(fā)送到遠(yuǎn)程服務(wù)器,以便與區(qū)塊鏈進(jìn)行某種交互。
然而,考慮一下今天沒(méi)有參與區(qū)塊鏈購(gòu)買(mǎi)加密的人。他們可能會(huì)在本地設(shè)立賬戶(hù)并將資金存儲(chǔ)在那里,還是直接存儲(chǔ)在Coinbase上,他們可能會(huì)選擇后者。
類(lèi)似的推理也適用于使用去中心化的應(yīng)用程序。當(dāng)用戶(hù)開(kāi)始與區(qū)塊鏈交互時(shí),他們應(yīng)該能夠通過(guò)托管的解決方案進(jìn)行交互。它將提供較低的安全,因?yàn)榧械膶?shí)體將有能力接管賬戶(hù),但是早期的用戶(hù)沒(méi)有太多損失,那么這樣的安全沒(méi)有比一個(gè)人今天與集中式服務(wù)用戶(hù)信任誰(shuí)大量的資產(chǎn)和數(shù)據(jù)。
為了強(qiáng)調(diào)這一點(diǎn),請(qǐng)注意,大多數(shù)人都是從Firefox或Chrome擴(kuò)展目錄中安裝MetaMask,以及從iTunes或PlayStore中安裝錢(qián)包應(yīng)用程序,這實(shí)際上是信任MetaMask /錢(qián)包應(yīng)用程序開(kāi)發(fā)人員,以及Mozilla、蘋(píng)果或谷歌等一些大玩家。在仔細(xì)檢查代碼之后,從源代碼安裝MetaMask是非常罕見(jiàn)的。因此,我們已經(jīng)將賬戶(hù)的安全性委托給集中的實(shí)體。
現(xiàn)在已經(jīng)開(kāi)發(fā)出一些解決方案,開(kāi)發(fā)人員可以將其集成到去中心化的應(yīng)用程序中,這樣就可以在不安裝瀏覽器插件和錢(qián)包應(yīng)用程序(如Portis)的情況下與應(yīng)用程序進(jìn)行交互。此類(lèi)服務(wù)的問(wèn)題在于,一旦用戶(hù)信任其對(duì)此類(lèi)服務(wù)的私鑰,帳戶(hù)的安全性最終就會(huì)受到永久性的危害。如果以后想獲得該帳戶(hù)的全部所有權(quán),必須創(chuàng)建一個(gè)新帳戶(hù)并將所有資產(chǎn)轉(zhuǎn)移到該帳戶(hù)。如果一個(gè)特定的應(yīng)用程序不能提供一個(gè)方便的方式來(lái)轉(zhuǎn)移資產(chǎn),用戶(hù)將永遠(yuǎn)無(wú)法獲得這些資產(chǎn)的全部所有權(quán)。
這個(gè)問(wèn)題的一個(gè)解決方案是擁有一個(gè)基于合約的帳戶(hù),這樣用戶(hù)可以替換控制帳戶(hù)的密鑰。但要想讓這個(gè)功能發(fā)揮作用,帳戶(hù)需要從第一天起就基于合約,除非PorTIs或其他服務(wù)默認(rèn)創(chuàng)建這樣一個(gè)基于合約的帳戶(hù),否則用戶(hù)將沒(méi)有這個(gè)功能。此外,基于合約的帳戶(hù)不能完成由私鑰保護(hù)的常規(guī)帳戶(hù)所能做的所有事情。
在NEAR中,默認(rèn)情況下每個(gè)帳戶(hù)都是基于合約的,并且由NEAR提供托管錢(qián)包。最終,用戶(hù)可以開(kāi)始使用托管的錢(qián)包與區(qū)塊鏈進(jìn)行交互,然后在以后的任何實(shí)例中,通過(guò)在本地創(chuàng)建一個(gè)新的密鑰對(duì)并更新帳戶(hù)以使用這樣的密鑰對(duì)來(lái)更新帳戶(hù)的安全性。
有人為這種方法提出了一個(gè)我們非常喜歡的術(shù)語(yǔ):漸進(jìn)安全。隨著用戶(hù)對(duì)區(qū)塊鏈的投入和投入的增加,用戶(hù)會(huì)隨著時(shí)間的推移從最高的可用性和低安全性過(guò)渡到最高的安全性和低可用性。
理解私鑰/公鑰對(duì)
如果我們讓您相信漸進(jìn)式安全性是一件好事,并且托管錢(qián)包是一種方法,那么密鑰對(duì)就會(huì)自然消失。在最簡(jiǎn)單的方法中,托管錢(qián)包將所有用戶(hù)的私鑰存儲(chǔ)在自己的托管數(shù)據(jù)庫(kù)中,并向用戶(hù)提供自己的身份驗(yàn)證層。它可以提供他們使用Facebook登錄,谷歌登錄,或只是良好的舊電子郵件和密碼選項(xiàng)。只有當(dāng)用戶(hù)想要從使用托管錢(qián)包過(guò)渡到使用托管錢(qián)包時(shí),他們才需要正確地設(shè)置私鑰,并學(xué)習(xí)如何將私鑰傳輸?shù)狡渌O(shè)備。
有趣的是,使用基于合約的帳戶(hù),轉(zhuǎn)賬過(guò)程本身可以更容易地完成,同時(shí)保持完全的安全性。而不是將私鑰傳輸?shù)搅硪粋€(gè)設(shè)備通過(guò)一些不安全的通道,合同管理用戶(hù)帳戶(hù)可以有兩個(gè)方法:“proposeNewSk”和“approveSk”,任何人都可以調(diào)用第一個(gè)方法,并添加一個(gè)新的私鑰提出了私鑰的帳戶(hù)列表,和“approveSk”只能被稱(chēng)為從一個(gè)現(xiàn)有的簽名私鑰的賬戶(hù),并可以通過(guò)任何擬議中的私鑰的帳戶(hù)。這樣,用戶(hù)可以在新設(shè)備上設(shè)置一個(gè)全新的密鑰對(duì),從該設(shè)備提出新的私鑰,并從現(xiàn)有設(shè)備批準(zhǔn)它。
礦工費(fèi)
任何在鏈上執(zhí)行的事務(wù)都會(huì)消耗大量的資源。為了安全地執(zhí)行狀態(tài)更改,大量獨(dú)立實(shí)體需要在應(yīng)用狀態(tài)轉(zhuǎn)換之前對(duì)其進(jìn)行驗(yàn)證。由于在執(zhí)行事務(wù)上花費(fèi)了一定數(shù)量的資源,因此它不能是自由的。
當(dāng)人們將Web3與Web2進(jìn)行比較時(shí),他們常常認(rèn)為Web2服務(wù)本質(zhì)上是免費(fèi)的。當(dāng)他們使用Facebook時(shí),不必為每筆交易付費(fèi)。但事實(shí)上他們是這樣做的。如果用戶(hù)的預(yù)期長(zhǎng)期價(jià)值不超過(guò)處理其請(qǐng)求和存儲(chǔ)其數(shù)據(jù)所花費(fèi)的資源以及獲取此類(lèi)用戶(hù)的成本,F(xiàn)acebook將不會(huì)向用戶(hù)提供免費(fèi)服務(wù)。當(dāng)使用Facebook時(shí),用戶(hù)都會(huì)關(guān)注自己的數(shù)據(jù),然后Facebook會(huì)以最不可接受的方式濫用這些數(shù)據(jù),并關(guān)注這些數(shù)據(jù)。
對(duì)于區(qū)塊鏈,如果應(yīng)用程序開(kāi)發(fā)人員認(rèn)為用戶(hù)的總終身價(jià)值將超過(guò)其交易的天然氣成本,他們應(yīng)能夠支付此類(lèi)交易。它是少數(shù)幾個(gè)來(lái)自EOS的有意義的想法之一。同樣,如果托管錢(qián)包在使用應(yīng)用程序的用戶(hù)中具有一定價(jià)值,他們也可以選擇支付成本。例如,Near可能會(huì)選擇為每個(gè)用戶(hù)支付一些天然氣成本,因?yàn)樗浅S袆?dòng)機(jī)獲得更高的協(xié)議采用率。由于開(kāi)始玩加密貓咪的用戶(hù)很可能會(huì)買(mǎi)一個(gè),而且用戶(hù)的預(yù)期價(jià)值非常高,所以加密貓咪可以選擇支付與合同交互的成本。
這只解決了難題的一部分:抵消執(zhí)行事務(wù)的成本。如果用戶(hù)不必為交易付費(fèi),他們可以向系統(tǒng)發(fā)送免費(fèi)的交易信息,并將托管錢(qián)包或應(yīng)用程序開(kāi)發(fā)人員設(shè)置的免費(fèi)使用限額飽和。但同樣,使用Facebook的人也可以向他們發(fā)送免費(fèi)的請(qǐng)求,并使他們的資源飽和。這個(gè)問(wèn)題決不是區(qū)塊鏈獨(dú)有的,而且已經(jīng)有很多解決方案。托管錢(qián)包可以選擇實(shí)施一個(gè)這樣的ddos防范解決方案,并仍然為用戶(hù)提供免費(fèi)交易。
還有一個(gè)問(wèn)題。在這個(gè)模型中,有人為用戶(hù)付費(fèi),希望他們以后能得到一些價(jià)值,這是很容易得到的。谷歌、Facebook、蘋(píng)果和其他科技巨頭之所以有不透明的隱私政策,完全不尊重用戶(hù)隱私,是有原因的。Web3背后的全部動(dòng)機(jī)是結(jié)束這種實(shí)踐,但是我們?cè)噲D吸引用戶(hù)的方式再次促進(jìn)了這種實(shí)踐。
然而,這是一個(gè)根本的區(qū)別。在Web3中,雖然用戶(hù)可以開(kāi)始使用以未來(lái)預(yù)期價(jià)值付費(fèi)的服務(wù),但他們可以隨時(shí)切換到自己付費(fèi)的交易,并使用托管錢(qián)包或?yàn)g覽器擴(kuò)展,這不會(huì)試圖利用用戶(hù)的隱私。
NEAR協(xié)議建立了一個(gè)對(duì)利害關(guān)系區(qū)塊鏈的切分證明,并對(duì)可用性進(jìn)行了狂熱的強(qiáng)調(diào)。