區塊鏈錢包開發流程
區塊鏈錢包作為連線區塊鏈的一個入口,如何站在開發人員角度,進行錢包進行互動和區塊鏈錢包開發?
1、瞭解錢包概念及其相關分類。
我們怎麼樣理解錢包呢?目前比較成熟的公鏈,如比特幣、以太坊都有很多錢包可以選擇。一般錢包需要完全訪問你的使用者資產,也就是會要求你輸入私鑰。錢包的作惡成本極低,這也是筆者建議選擇開源錢包的原因之一。
2、 RPC、JSON-RPC 以及 JSON基礎知識瞭解。
遠端過程呼叫(英語:Remote Procedure Call,縮寫為 RPC)是一個計算機通訊協議。該協議允許運行於一臺計算機的程式呼叫另一臺計算機的子程式,而程式設計師無需額外地為這個互動作用程式設計。假如涉及的軟體採用面向物件程式設計,那麼遠端過程呼叫亦可稱作遠端呼叫或遠端方法呼叫。
RPC 的主要功能目標是讓構建分散式計算(應用)更容易,在提供強大的遠端呼叫能力時不損失本地呼叫的語義簡潔性。
RPC 呼叫分為以下兩種:
同步呼叫:客戶方等待呼叫執行完成並返回結果。
非同步呼叫:客戶方呼叫後不用等待執行結果返回,但依然可以通過回撥通知等方式獲取返回結果。若客戶方不關心呼叫返回結果,則變成單向非同步呼叫,單向呼叫不用返回結果。
非同步和同步的區分在於是否等待服務端執行完成並返回結果。
簡單而又廣受歡迎。遠端過程呼叫總是由客戶端對伺服器發出一個執行若干過程請求,遠端過程呼叫是一個分散式計算的客戶端伺服器(Client/Server例子。並用客戶端提供的引數。執行結果將返回給客戶端。由於存在各式各樣的變體和細節差異,對應地派生了各式遠端過程呼叫協議,並且並不互相相容。其中我廣為使用的一個叫做JSON-RPC協議。
JSON-RPC一個無狀態且輕量級的遠端過程呼叫(RPC傳送協議,其傳送內容通過 JSON為主。相較於一般的REST通過網址(如 GET/user呼叫遠端伺服器,JSON-RPC直接在內容中定義了欲呼叫的函式名稱(如 {methodgetUser}這也令開發者不會陷於該使用 PUT或者 PA TCH問題之中。本規範主要定義了一些資料結構及其相關的處置規則。允許執行在基於 SocketHTTP等諸多不同訊息傳輸環境的同一程序中。其使用 JSONRFC4627作為資料格式。
JSON-RPC使用了JSON格式,那 JSON什麼呢?
JSONJavaObjectNotation一種輕量級的資料交換語言。使用 JSON做資料交換的好處在於:一是相容性高;二是可閱讀性高;三是支援較多的資料格式;四是支援的語言較多。
3、解區塊鏈相關的基礎知識。
推薦書籍《精通比特幣》足矣。
4、掌握一門開發語言。
假如一門經驗豐富的順序員,此條預備知識可以忽略。假如一名非計算機科班出身的區塊鏈技術喜好者,建議從Python入手。同時,多瞭解下 Java。