您好,登錄后才能下訂單哦!
這篇文章主要介紹“Dapp架構設計的方法是什么”,在日常操作中,相信很多人在Dapp架構設計的方法是什么問題上存在疑惑,小編查閱了各式資料,整理出簡單好用的操作方法,希望對大家解答”Dapp架構設計的方法是什么”的疑惑有所幫助!接下來,請跟著小編一起來學習吧!
這個是所有工作的基礎,從看完比原鏈源碼使用過比原的錢包后,我們就在思考比原鏈的dapp如何做,應該說是區塊鏈應用應該如何做,我們之前嘗試過用以太坊、比特幣、超級賬本去做dapp。先總結一下區塊鏈dapp的痛點:
1)沒辦法保證上鏈前數據的真實性;
2)Tps很低;
3)接入成本高,需要自己搭建節點;
我現在總結了兩個基于比原鏈的dapp架構方案:(如果有新版或者比較好的解決方案歡迎交流)
Dapp肯定離不開復雜的業務,所以肯定會用到比原鏈的智能合約,以下方案都支持智能合約。
其實就是自己搭建個節點,然后應用直接調用節點提供的接口,完成了區塊鏈的業務內容,比原鏈的源碼整合了錢包功能,搭建也比較方便,幾句代碼就可以搭建完了,但是這樣的業務視乎不大合理,因為這種后端整合比原源碼錢包(以下稱為“pc錢包”)的方式,相當于把所有的賬戶信息都托管給dapp,其實就是一個集中的官方的錢包,所有的賬戶都歸官方管,這樣會有中心化問題,最后會被懷疑用不用這個區塊鏈是否有必要。
比原鏈自己有一套用戶的模塊,用戶可以使用pc錢包、客戶端錢包、手機錢包等,自己的用戶信息可以自己備份,交易信息全部公開全部可以到區塊鏈瀏覽器里面查到。這個方案只是主要實現了交易上鏈。
ps: 當然其實還是可以變通一下,就是說把PC錢包的所有接口在dapp實現一次,然后結合業務,但是比原的源碼是會不斷更新,還要隨著它的版本更新,然后更新自己的應用,顯然不實際。
說一下里面的坑:
1)賬戶BTM問題,這種方案每個dapp賬戶底層都要綁定一個錢包的用戶,可以展現地址用戶自己充值、直接在dapp里面充值、完成任務派送這些等,但是初始化賬戶擁有BTM需要有時間過程,正常應用這樣的體驗,早就讓用戶關閉了。
2)UTXO問題,比原鏈是基于utxo未花費輸出交易模型,當自己的UTXO參與的交易沒有確定是無法使用的,但是dapp這里綁定的用戶,不能保證他有足夠多的UTXO,除非自己轉賬的時候讓他拆分,否則會類似單線程的操作,也是比較慢。
3)用戶無法獲取自己的私鑰,在比原鏈PC錢包,是一套私鑰,派生多個賬號這樣,就是說一個錢包就一套私鑰,這個不能給用戶。這樣又違背了區塊鏈的去中心化的問題。
總的來說,這個方案是單純保證了dapp交易上鏈,但是各方面明顯不足。
這個方案是今年比原鏈推出的dapp新型的解決方案,有解決到方案一的痛點,這個也是我比較提倡的方案,現在比原鏈的智能合約功能已經非常強大,如果做復雜的dapp,用這個方式比較好。
簡單來說就基于chrome開發了一個插件錢包,安裝完插件,用戶直接可以創建賬戶,使用賬戶的轉賬功能,里面有BTM的轉賬功能,賬戶的備份功能....是比較完整的一個錢包,這個錢包最大的作用就是包含了豐富的開發者api,可以支持開發者去實現智能合約交易。
我們重點說一下這個結構的技術原理,如圖
1)Dapp前端,就是前端頁面,插件錢包是基于chrome的,所以這里代表的就是新的頁面集成了插件錢包(Byone)的api。
2)Byone,就是在chrome應用商店里面可以搜索到,點擊安裝就行,當前版本是2.0.0,非常好用。
3)Bufferserver服務器,官方提供demo里面這模塊屬于緩存服務器,其實這個應該改成Dapp后端,實際業務邏輯還有很多需要后端輔助,例如排行榜、非BTM比原資產交易等。(這塊后面重點開一章去說清楚),現在理解稱為后端就可以。
4)Blockcenter,其實就是官方提供的服務,直接提供接口可以觸發比原鏈的交易功能,這樣解決了上面的方案,避免需要自己搭建node節點,讓dapp開發者更加容易接入。
到此,關于“Dapp架構設計的方法是什么”的學習就結束了,希望能夠解決大家的疑惑。理論與實踐的搭配能更好的幫助大家學習,快去試試吧!若想繼續學習更多相關知識,請繼續關注億速云網站,小編會繼續努力為大家帶來更多實用的文章!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。