以太幣交易所 以太幣交易所
Ctrl+D 以太幣交易所
ads
首頁 > Filecoin > Info

區塊鏈錢包多平臺簽名方案_APP

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簽名問題的話,那么就可以保證體驗是一致的,而且移動端錢包的好處是私鑰永遠保存在手機本地,安全性比瀏覽器的錢包或插件錢包的安全性都要好;其次用戶不需要安裝各種各樣的錢包來處理來自不同平臺交易。所以如何平衡安全和易用性,以及全平臺一致的體驗,是多平臺簽名方案需要解決的問題。這是我們目前看到的行業訴求,于是我們開始調研并且嘗試給出我們的解決方案。手機端掃碼方案

區塊鏈編年史NFT Cmasq 首期拍賣全部售罄:2月14日,據Opensea,\"Cmasq\"第一期拍賣的15個NFT全部售罄, Cmasq#0 以起拍價20倍的價格成交。

據悉,Cmasq旨在融合區塊鏈歷史大事件創作NFT,從而利用NFT記錄完整的區塊鏈編年史,每個NFT背后代表著一定背景的人物與故事。[2022/2/15 9:52:31]

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

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

廣州獲批創建首個區塊鏈發展先行示范區:廣州正式獲工信部批復創建區塊鏈發展先行示范區,成為首個獲批創建區塊鏈發展先行示范區的城市。作為中國軟件名城,廣州將區塊鏈產業發展當作服務實體經濟應用場景的重要推手,從金融、物流、政務、知識產權、工業互聯網等方面,增強區塊鏈技術與傳統經濟各個領域的深度融合。未來廣州將推進區塊鏈“一核多區”發展,并且將在區塊鏈創新發展領域繼續前行,把區塊鏈作為核心技術自主創新的重要突破口,力爭打造成為國內區塊鏈產業集聚區、創新引領區、應用先行區。具體而言,黃埔區將打造以區塊鏈為特色的中國軟件名城示范區。天河區等軟件實力較強的區域重點發展區塊鏈相關的底層平臺研發創新。同時,廣州還將引導荔灣、越秀、南沙等區大力拓展區塊鏈在政務、醫療等領域應用場景供給。(南方日報)[2020/5/27]

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

行情 | A股收盤:區塊鏈板塊整體跌幅0.94%:A股收盤,區塊鏈板塊整體跌幅0.94% 。79只概念股中,14只收漲、58只收跌、3只平盤、4只停牌。漲幅前三為:高偉達(+10.00%),宣亞國際(+9.99%),新湖中寶(+2.97%);跌幅前三為:高升控股(-9.49%),廣電運通(-6.89%),恒生電子(-6.27%)。[2018/10/29]

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

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

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

行情 | A股收盤:區塊鏈板塊大跌8.93%:今日A股收跌5.22%,區塊鏈板塊整體大跌8.93%。84只概念股無一上漲,40余只個股跌停。[2018/10/11]

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

動態 | 佛山禪城“區塊鏈+公證”項目首期建設將迎來驗收:據佛山日報今日報道,自去年9月公證服務引入區塊鏈技術以來,禪城公證處已成為全國首家可以使用“區塊鏈”辦公證的公證處。目前已有20個公證業務事項可通過手機“IMI”身份認證平臺連接公證部門進行在線申辦。而在今年9、10月,禪城將迎來“區塊鏈+公證”項目首期建設的驗收工作。禪城公證處相關負責人介紹,目前“區塊鏈+公證”測試平臺已經完成搭建,首期建成后,將能實現除未生效遺囑公證外的其他公證書全部信息“上鏈”。[2018/8/29]

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

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

依然在路上

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

Tags:APP區塊鏈DAPPDAP中幣交易所app官網下載二維碼區塊鏈是什么多選題DappRadar區塊鏈dapp開發合法嗎

Filecoin
讓基金業績可驗證,「MatrixONE」想建立互信的數字資產管理系統_ONE

熊市漫漫,曾經在我們筆下規模為4000億美元的可交易數字貨幣市場,現今已跌落至2000億美元。然而,傳統資管對這個市場的熱情并未消退。對沖基金的新成立數量在今年達到歷史之最.

1900/1/1 0:00:00
以太坊錢包為何頻頻被盜?| 區塊鏈課堂第 86 問_以太坊

編者按:本文來自 哈希派 ,作者:不碎,Odaily星球日報經授權發布。!webp\"data-img-size-val=\"800,450\"\u002F\\>2016年6月,基于以太坊的眾籌.

1900/1/1 0:00:00
高曉松談區塊鏈:人類最開始貨幣就是虛擬的_區塊鏈

可能看《曉說》的觀眾對高曉松的認知還停留在見多識廣的文化人、知識分子層面上,人們佩服他的才華。但實際上,無論是文化界,還是知識分子圈層,高曉松對前沿技術的觀察和思考,早就走到了大多數人的前面.

1900/1/1 0:00:00
DAG是加密世界的下一個大事件嗎?_DAG

本文來自:藍狐筆記,作者:JackDossman,翻譯:Leo,星球日報經授權轉發。前言:DAG跟區塊鏈的賬本結構不同,它不是線性的,也不是區塊相連的鏈式結構.

1900/1/1 0:00:00
區塊鏈還有多長的路要走_區塊鏈

編者按:本文來自王嘉平,作者:王嘉平,星球日報經授權轉發。上一篇《區塊鏈到底有什么了不起》沒聊完的,在這里繼續。這一篇是我和PPLive的聯合創始人張小兵共同討論一起寫的.

1900/1/1 0:00:00
哪些人現在擁有比特幣?_比特幣

編者按:本文來自藍狐筆記,作者:HannahMurphy,編譯:司馬青衫,星球日報經授權發布。前言:昨天是比特幣白皮書發布十周年的日子.

1900/1/1 0:00:00
ads