買以太坊 買以太坊
Ctrl+D 買以太坊
ads
首頁 > ADA > Info

DAPP:區塊鏈錢包多平臺簽名方案_區塊鏈

Author:

Time:1900/1/1 0:00:00

本篇技術文章源自于Nervos每周三舉辦的DevMeetup,作者為秘猿科技NervosAppChain技術總監段揚揚。---可能很多人都玩過區塊鏈DApp,如加密貓,當你看到一只特別可愛的貓,想要購買時,通常你會看到需要下載安裝MetaMask的提示。MetaMask是一款基于PC瀏覽器的插件錢包,要想下載安裝成功,你還需要懂一點科學上網的知識,安裝成功后,就可以通過喚起MetaMask插件錢包完成支付交易。

但是,如果你想在手機上玩加密貓,就會發現因為沒有MetaMask錢包而無法繼續游戲。或許你的手機里還有imToken等手機錢包,令人遺憾的是如果你通過手機瀏覽器打開加密貓游戲,依然是無法自動喚醒imToken等錢包進行簽名支付。多平臺簽名問題和痛點

所以你會發現,DApp有很多承載方式,有基于PC瀏覽器的應用,也有手機原生APP應用。同樣的,錢包也有很多承載方式,有諸如imToken手機客戶端錢包,也有諸如以太坊官方錢包那樣基于PC客戶端錢包,也有諸如MyEtherWallet的開源web版錢包,還有各種各樣的冷錢包。冷錢包很好理解,假設我的手機是一個沒有聯網的硬件,我需要簽名支付的話,只需要拿一根USB線和電腦連接一下,就可以簽名了,整個過程私鑰都不會暴露在聯網的環境中。也就是說如果你想在PC瀏覽器和手機上達到相同的DApp體驗效果,并且不用頻繁切換錢包賬號,更不用來回相互轉賬,目前來看是做不到的。在PC端你可以用MetaMask錢包,在手機端則需要你在手機錢包中打開才能體驗完整的DApp。想想支付寶和微信支付一站式的跨平臺體驗,你是否會有這樣的念頭,難道就沒有一款錢包可以解決一站式多平臺的簽名痛點嗎?更不幸的是MetaMask在自己的官方博客上提到,不建議用戶把大量的資金放到這類插件錢包中,插件錢包是不安全的。也許此刻你會苦笑,我只是一個普通的小白用戶,只想要一款可以多平臺簽名交易并且安全的錢包,難道這小小的要求都得不到滿足嗎?別急,我們不妨分析一下目前的現狀和可能的解決方案。如果能有一種錢包可以解決所有平臺DApp簽名問題的話,那么就可以保證體驗是一致的,而且移動端錢包的好處是私鑰永遠保存在手機本地,安全性比瀏覽器的錢包或插件錢包的安全性都要好;其次用戶不需要安裝各種各樣的錢包來處理來自不同平臺交易。所以如何平衡安全和易用性,以及全平臺一致的體驗,是多平臺簽名方案需要解決的問題。這是我們目前看到的行業訴求,于是我們開始調研并且嘗試給出我們的解決方案。手機端掃碼方案

上海:鼓勵銀行、證券、保險等金融機構基于區塊鏈等先進技術發展金融產品和服務:金色財經報道,上海市政府今日召開新聞發布會介紹《關于促進本市生產性互聯網服務平臺高質量發展的若干意見》主要內容,上海市商務委主任朱民透露上海將引導一批平臺豐富區塊鏈、大數據等先進技術應用場景,鼓勵發展區塊鏈、人工智能等為核心的信息技術服務。上海市經濟信息化委總工程師葛東波表示,上海還要運用區塊鏈等技術建設碳管理公共服務平臺。上海市地方金融監管局總經濟師陶昌盛在發布會上透露,上海鼓勵銀行、證券、保險等金融機構基于區塊鏈等先進技術,利用金融科技手段提升金融服務質效,創新發展符合平臺及相關企業融資需求的金融產品和服務。[2023/7/19 11:03:11]

現有的互聯網應用或許可以給我們提供一些借鑒思路,下圖左邊是手機端支付寶的支付頁面。對于支付寶我們都很熟悉,如果是在手機端用支付寶支付的話,應用會自動喚起支付寶,然后直接在支付寶完成支付流程就可以了。如果是電腦端淘寶網頁上支付的話,淘寶付款頁面會出現一個二維碼,只要打開手機支付寶,掃二維碼,在手機里完成支付,然后支付結果就會傳到淘寶網,整個支付過程就完成了,體驗非常好,而且也非常安全。

圖片右邊是網易郵箱的服務,以前在PC端瀏覽器上登陸網易郵箱時,需要輸入賬號和密碼,后來網易覺得這樣不是很安全,輸入賬號和密碼也比較繁瑣,并且萬一密碼丟失該怎么辦?考慮到每個人都有智能手機,而且手機相對個人來說是私密的,安全性很高,所以他們就在瀏覽器端登陸的時候給出一個二維碼,用手機端的郵箱APP掃一下二維碼,手機端完成驗證鑒權,然后PC瀏覽器上的網頁郵箱就自動登錄成功了。現有互聯網產品的解決思路是,既然在瀏覽器端無法解決保證更好的安全性,那就通過更安全的移動端掃碼的方式來彌補這個缺憾。順著這個思路往下想,假如你在PC瀏覽器上玩加密貓,現在想下單買一只可愛的貓,過去的方式是必須通過科學上網,安裝MetaMask,創建一個錢包賬號,然后從你的imToken或其他錢包轉一些ETH到MetaMask錢包,最后簽名支付才能購買。那有沒有一種方式,直接把加密貓的交易數據通過二維碼的方式呈現出來,手機錢包掃一下,在手機上完成整個簽名交易流程,然后再把交易數據發到鏈上,最后把交易結果回傳到瀏覽器網頁端,這樣整個體驗就會非常好。這個方案我們有想過,但是后來一想,有問題!什么問題呢?如果普通轉賬交易是沒問題,交易數據比較少,但如果是部署一個合約呢?這是一個普通的合約,功能就說簡單的存儲和讀取數據,data字段就這么多,換成二維碼,你會發現如此密集的二維碼,絕大部分的APP根本就掃不出來,顯然直接掃碼這條路是走不通的。

中國互金協會標準研究院成為《區塊鏈行業應用反洗錢技術標準》專家組單位:3月4日消息,中國互金協會標準研究院成為由中軟協區塊鏈分會發起的《區塊鏈行業應用反洗錢技術標準》專家組單位,為又一央行體系參與單位。(鳳凰網)[2020/3/4]

后來我們在公司內部的Hackathon嘗試了另一個方法,既然數據比較復雜且比較大,不能直接用二維碼掃描傳到手機,那么能不能用一個服務器作為中繼來轉發數據呢。還是原來的DApp,先把復雜的交易數據傳到中繼服務器上,然后返回給DApp一個請求接口,通過這個HTTP請求接口客戶端就可以訪問到完整的交易數據,DApp拿到請求接口地址后,將請求地址生成一個二維碼。錢包APP掃描二維碼,獲取到請求地址,并從這個請求地址上獲取交易數據,錢包用本地私鑰完成簽名并轉發到鏈上,最后再把區塊鏈返回的交易hash發送給中繼服務器,由于DApp和中繼服務端是長連接,DApp就可以獲取到交易hash,并根據交易hash處理后續的業務流程。這是一個不錯的想法,至少解決了一些問題,但是卻引申出了另外的問題。DApp的全稱是去中心化應用,如果加入中繼服務器,那么不管是DApp本身還是錢包都會非常依賴中繼服務器,一旦服務出現異常或者不可用,整個簽名過程就會受阻。一個去中心化應用反而要強依賴中心化服務器,這和區塊鏈的去中心化理念就出現了矛盾。手機錢包充當服務器方案

為了解決DApp和錢包強依賴中心服務器的問題,那么我們就想到了手機能不能成為服務器。如果手機和電腦在同一個局域網內,那么就可以通過IP相互直接訪問,既然電腦能成為server,手機也可以是server。手機作為一個server,DApp發交易就是給這個server直接發請求,手機拿到交易數據后簽名并轉發數據至區塊鏈,然后再把鏈返回的交易hash發送給DApp。這樣解決了中心化和去中心化的矛盾,但是有一個問題就是電腦和手機必須在同一個局域網里,要不然沒辦法無法請求數據。

聲音 | 中國石油集團董事長:越來越多石油公司利用區塊鏈等數字化技術進行全產業鏈業務轉型:金色財經報道,中國石油集團董事長王宜林表示,新技術已對全球油氣行業產生“顛覆性”影響。越來越多的石油公司利用云計算、大數據、移動互聯網、人工智能、物聯網、機器人、區塊鏈等數字化技術進行全產業鏈業務轉型,進一步降低成本、更快更好地做出決策、提高運營效率。[2019/11/13]

手機作為一個server是一個不常見的方式,通常只有近距離快速傳送大文件的時候或者小范圍的點對點通信時會使用這種方式,這種方式不適合做擴展,手機換個局域網或者換成4G的時候,它的IP就會改變,那么DApp就需要頻繁更改連接的IP地址。當你沒有辦法做到好的兼容的時候,這也許是一個的不錯思路。WalletConnect

行業內有很多團隊也在嘗試解決這個問題,WalletConnect是其中一個比較有名的解決方案。它也是使用一個中繼服務,而且這個中繼服務做的事情比上文提到的要更多。簡單來說,首先,DApp和中繼服務器最初會有一次握手,并建立長時間的session連接通道,然后DApp會生成用于未來加密交易數據的對稱密鑰,DApp會把加密后的交易數據發送到中繼服務器上,并得到服務器返回的交易數據請求地址。

然后DApp將請求地址、對稱密鑰和sessionID打包并生成二維碼,手機錢包掃描二維碼并提取其中的數據請求地址和對稱密鑰,然后錢包從該接口地址上獲取交易數據密文,并用對稱密鑰解密得到交易數據明文。進而在手機錢包內完成交易確認、簽名和轉發,最后將從鏈上得到交易hash發給中繼服務器。由于DApp和中繼服務器是長連接,所以中繼服務器在拿到交易hash后,會推送給DApp,然后DApp就可以根據交易hash到區塊鏈上查詢交易的執行情況。WalletConnect和上文討論的做法思路是一致的,只不過它更近一步,通過對稱密鑰對交易數據加密,安全性更好,中繼服務器就是一個交易數據轉發的地方,二維碼則是DApp與手機錢包的信息溝通媒介,承載更輕量級的數據。這個方案中可能還有一個服務器,叫做Push服務。如果有Push服務,那么DApp后續再發送交易數據給中繼服務器,就不需要再通過二維碼掃描,而是直接將數據推給至Push服務,然后由Push服務推送消息給手機錢包,手機錢包再去簽名并發送至鏈上,并把交易hash告知中繼服務。當然如果沒有Push服務器,整個流程同樣是可以走通的,只不過需要手機錢包掃碼觸發獲取交易數據請求,然后再完成后續流程。需要說明的是WalletConnect并不提供公共的Push服務,只提供公共的中繼服務,對于DApp或者錢包運營方來說,需要維護一個中心化的Push服務器,雖然體驗和安全非常好,但是解決思路有點麻煩。WalletConnect向以太坊基金會提出了希望將這一套數據規范做成EIP協議,目前協議還在討論中,還沒有定下來。AppLink

聲音 | 清華大學朱民:區塊鏈在金融部門應用前景非常廣泛:據新浪財經消息,“博鰲亞洲論壇2019年年會”于3月26-29日在海南博鰲舉行。清華大學國家金融研究院院長朱民出席27日金融“突圍”分論壇并演講。朱民指出,金融科技包括區塊鏈,在票據、匯兌、金融服務中發展很快,在供應鏈、產業鏈、旅行航空等方面應用前景也很大。現在區塊鏈已經發展到第二代、第三代了,安全、規模、速度、連接性在快速改善,區塊鏈在實體經濟,特別是金融部門應用前景非常廣泛。[2019/3/27]

還有一個方法,要比上一個方案稍微簡單一些。做過移動端開發的朋友可能都知道DeepLink,或者簡單說是AppLink。我們都知道在瀏覽器上打開一個網站鏈接地址就可以跳轉到想要的網頁,但是對于智能手機而言,每個App都是一個信息孤島,相互之間是沒有一個簡單的通訊機制。舉個簡單的例子,淘寶和微信相互屏蔽,在百度上搜不到微信里的東西。App之間的信息是割裂狀態。因此,Google和蘋果作為操作系統提供方,就希望從操作系統層面上解決這個問題,于是就有了AppLink。任何一個App只要在AppLink服務上按一定的協議規范注冊,那么其他App就可以通過AppLink服務與之連接并通信。比如,我在PC瀏覽器上想要買一只貓,購買頁面會呈現出一個交易二維碼,我用iPhone的系統相機掃描這個二維碼,只要這個二維碼內容是在我的操作系統AppLink中注冊過的,那么就可以喚起手機錢包頁面,完成后續的簽名支付流程。但是這個服務并沒有被廣泛使用,原因有很多,最重要的原因是App之間不愿共享數據,它們更希望用戶一直留在App內部,增加用戶的使用黏性。而且安卓的碎片化比較嚴重,國內很多手機廠商更改了操作系統底層代碼,這樣就沒有辦法提供很好的一致體驗。所以該方案在一些比較小的場景內是可以實現的,不適合所有的場景。這個數據協議也被提交到了以太坊基金會,希望可以建立一個ERC標準,目前處于草案過程,并沒有達成共識。MyEtherWallet

動態 | 江西舉辦高級別座談會探討本省區塊鏈金融發展:據江西省政府官網消息,江西省政府金融辦與省科學院聯合舉辦“區塊鏈金融助推江西產業升級”座談會,清華大學教授何一平、紙貴科技研究院院長楊文韜發表主題演講,并和與會各方就江西區塊鏈金融發展的現狀、應用場景以及助力江西產業發展升級相關問題進行了交流。

?[2018/9/26]

最后一個案例很有意思,有個網頁版錢包叫MyEtherWallet,提出了一種通過建立P2P安全通道完成簽名交易的方案。過去在MyEtherWallet上創建一個錢包,私鑰、助記詞等信息都是由錢包生成,并存在瀏覽器存儲空間中。但是私鑰存在網頁端其實是不安全的,網頁雖然本身有一定的存儲功能,但是安全性和手機比還是弱很多,那如何解決這個安全問題呢?MyEtherWallet最近出了一個手機APP叫NEWconnect,前段時間開始公測了。他們開發了一個手機端錢包NEWconnect,它雖然有錢包的很多功能,但是不作為一個獨立的錢包角色,而是和網頁版錢包配合使用。例如用戶在網頁端要轉一筆1.5eth的帳,用戶在網頁端生成交易,手機端通過P2P的方式直接與網頁點對點連接,并自動彈出確認交易頁面,手機端完成簽名交易后,將結果通過P2P通信通道回傳給網頁端,網頁端更新并顯示交易處理后的數據。這個方案的體驗很好,也很安全。由于是私密的P2P通信通道,交易數據不會輕易被盜取,能夠完美地解決上面提到的問題。但是該方案同樣存在擴展困難的問題,只能在封閉系統中流轉數據。P2P本身就是點對點通信,如果擴展開來,則需要一整套通道建立流程和加密機制,但是這種思路確實值得借鑒。

依然在路上

整個行業到現在也還沒有最終的解決方案,我們也在做各種調研和嘗試,即使在Hackathon上做了一個初級的解決方案,但還不能盡善盡美。行業的訴求和痛點很多人都發現了,并且在嘗試積極解決,但是目前整個行業還未達成共識方案。現在很多區塊鏈服務和互聯網服務在體驗上還有很多差距,互聯網服務是中心化的,有很多中心化的方式去解決體驗和安全的問題。而區塊鏈應用是去中心化的,錢包和DApp也是去中心化的,如果我們用中繼服務去做,就相當于把去中心化的問題用一種中心化的方式來解決,我們先不討論好與不好,至少不會是最優的解決方案。安全性也是需要重點考慮的,二維碼呈現的交易數據很容易被篡改,中繼服務提供的交易請求也很容易被攔截,如果是互聯網應用的話,可以通過中心化的方式校驗數據,但是對于去中心化的應用,如何做到安全和去中心化的平衡,還需要進一步討論。我們可以在GooglePlay和AppStore上發現大量的錢包軟件,彼此之間的體驗千差萬別,但是始終沒有能做到像支付寶那樣解決多平臺的簽名支付問題。為此我們也還在調研和做MVP驗證,希望未來可以有一套兼顧安全、體驗和去中心化的解決方案。

Tags:APPDAPPDAP區塊鏈YFIDappDAPPX價格dapp幣怎么從錢包提到交易所區塊鏈技術專業

ADA
BUNNY:幣安進軍非洲市場,開啟烏干達法幣交易所_Bloody Bunny

今日,Odaily星球日報從幣安得到消息,幣安烏干達法幣交易所正式開啟烏干達先令充值、提現。幣安表示,開啟法幣交易所是幣安在非洲開拓區塊鏈生態系統的重要一步.

1900/1/1 0:00:00
數字貨幣:肖磊:資本主義的終結者可能是區塊鏈技術_EOS

編者按:本文來自肖磊看市,作者:肖磊,星球日報經授權發布。如果人僅僅是為了填飽肚子而活著,也挺好的,但那他可能對外界很多事物和環境的要求就不會太高,也很難思考其他東西,人類文明可能也跟他關系不大.

1900/1/1 0:00:00
DAG:未來公鏈技術哪家強?下一站“公鏈2.0”(上)_LAYER

編者按:本文來自白話區塊鏈,作者:五火球教主,星球日報經授權發布。今天,我們從另一個視角,看看下一代公鏈可能會是什么樣子.

1900/1/1 0:00:00
IDA:Midu獲天使輪融資,區塊鏈搜索業務有多大想象空間?_DAS

Midu(冪度)是區塊鏈搜索引擎公司,近期完成了天使輪融資。投資人包括蔡文勝、鄭剛、邵俊、鄺子平、肖冰、馮華偉、王知新等.

1900/1/1 0:00:00
WEI:公鏈數量是開發者的四倍,誰能成為下一代開發平臺?_VEGAS價格

迅雷鏈總工程師來鑫正在介紹迅雷鏈10月25日,這是迅雷鏈技術沙龍的香港站。迅雷鏈近期在多個城市舉辦了技術沙龍,4-7月則是漫長的開發者大賽,這看似密集.

1900/1/1 0:00:00
Filecoin:讓區塊鏈記錄你的大小事,「以太時光」想打造一個永遠留存的記錄平臺_FIL36幣

利用區塊鏈提供記錄服務的項目并不少見,此前Odaily星球日報曾報道過將協議上鏈的小程序“小協議”,還有在七夕節前夕由京東金融推出的帽子協議等等.

1900/1/1 0:00:00
ads