服務項目

需求溝通

錢包oem定制開發

  最常用的簽名錢包: 離線錢包,硬件錢包。錢包oem定制開發。

  離線錢包

  好幾個全服務錢包程序也可以當做兩個獨立的錢包: 一個程序當做簽名錢包(通常叫做:離線錢包),同時另外一個程序當作網絡錢包(通常叫做:線上錢包 或者 觀察錢包)

  離線錢包因它有意運行在一個不聯網的設備上而得名,這會極大減少攻擊。在這種情況,通過類似USB這樣的媒介來轉移數據,通常取決于用戶自己。 用戶的工作流程如下:

  1. (離線) 關閉設備上的所有網絡連接,裝上錢包軟件。 在離線模式下,啟動錢包軟件,創建一個父私鑰,父公鑰,復制父公鑰到可以插拔的媒介上。

  2. (在線)在另外一個設備上裝上錢包,這錢包要連上互聯網,同時從可插拔媒介,導入父公鑰。跟你使用去錢包一樣,通過分發公鑰來收款。當準備花比特幣時,準備好輸出,并保存生成好的非簽名交易到可插拔媒介。

  3. (離線)在離線錢包中,打開非簽名交易,審核輸出詳情,確保要支付的數量,地址是正確無誤的。這可以防止在線錢包中的惡意軟件欺騙用戶在支付給攻擊者上的交易簽名。審核后,簽名交易并保存交易到可插拔媒介。

  4. (在線)在在線錢包中,打開簽名交易。現在可以把它廣播到P2P網絡中。

  離線錢包主要的優點是:相比于全服務錢包,他們極大的提升了錢包的安全性。只要離線錢包沒有丟失或者有缺陷,并且在簽名前,用戶審核所有交易,用戶的satoshis是安全的,即使在線錢包泄露了。

  離線錢包的主要的缺點在于使用起來太繁瑣。為了最大的安全,要求用戶用一個設備專用于離線任務。每當需要發送比特幣時,離線設備必須要啟動,同時用戶必須通過手動把數據在在線設備,離線設備之間來回復制。錢包oem定制開發。

  硬件錢包

  硬件錢包專門用來運行簽名錢包。它們消除了簽名錢包在目前操作系統上很多缺陷,它們允許錢包可以跟其他硬件安全的通信,因此用戶沒有必要手動的在設備之間傳送數據。硬件錢包用戶的使用流程如下:

  1. (硬件錢包) 創建父私鑰,父公鑰。把硬件錢包連接到一個網絡錢包設備,這樣它就可以獲取到公鑰。

  2. (網絡錢包) 同使用全服務錢包一樣,分發公鑰來收款。當準備花掉satoshis時,填充好交易細節,并連接到硬件錢包,然后點擊支付。網絡錢包會自動把交易細節發送給硬件錢包。

  3. (硬件錢包)在硬件錢包屏幕上審核交易細節。一些硬件錢包可能會彈出一個密碼或PIN輸入框。硬件錢包簽名交易,然后把它發送給網絡錢包。

  4. (網絡錢包)網絡錢包從硬件錢包收到簽名交易后,把它廣播到P2P網絡。

  相對于全服務錢包,硬件錢包的主要優點是極大的提升了安全,同時比起離線錢包又簡單很多。

  硬件錢包主要的缺點是使用起來繁瑣。即使比起離線錢包來沒那么繁瑣,但是用戶仍然需要購買一個硬件錢包,并且每當需要給交易簽名時,需隨身攜帶。

  一個其他的缺點(希望是暫時的),在撰稿本文時,很少有主流的錢包程序支持硬件錢包 — 雖然很多主流的錢包已經發公告說他們有意向支持至少一種硬件錢包。

  分發錢包

  那些運行在很難保證安全的環境,比如web服務器,的錢包的功能可以設計成僅僅分發公鑰(包括P2PKH, P2SH地址)。有兩個通用的方式來設計這些極簡的錢包。

  先預準備一些公鑰或地址在一個數據庫里面,然后使用數據庫中的條目,按需分發公鑰腳本或者地址。為避免重用,web服務器跟蹤密鑰使用情況,永遠不要用完里面的公鑰。可以通過父公鑰很容易做到這點,這會在下面方面提到。

  使用父公鑰生成子公鑰。為避免重用,需要使用一個方法保證一個公鑰不能被分發兩次。這可以是一個數據庫的條目對應一個密鑰分發,或通過自增指針指向密鑰的索引號。

  這兩個方法沒有增加太多額外的工作量,特別是在使用一個數據庫來,通過把每個進來的支付跟獨立的公鑰綁定起來跟蹤時,其工作量就更少。 具體情況支付處理章節。錢包oem定制開發。

  錢包文件

  比特幣的核心其實就是一堆私鑰集合。這些私鑰以數字內容的形式存在文件里面,或甚至可以存在紙上。

  私鑰格式

  私鑰用來解鎖在一個比特幣地址上的satoshis。在比特幣中,一個私鑰的標準格式是一個簡單的256-bit 數字,值的范圍是: 0x01 ~ 0xFFFF FFFF FFFF FFFF FFFF FFFF FFFF FFFE BAAE DCE6 AF48 A03B BFD2 5E8C D036 4140, 所代表的值的范圍在2^256 - 1. 這范圍由比特幣中使用的secp256k1 ECDSA加密標準來控制。

  錢包導入格式(WIF)

  為使復制密鑰少出錯,可以使用錢包導入格式。WIF使用base58Check 來編碼私鑰,可以極大的降低復制引起的錯誤,這看起來很像比特幣地址。

  拿到一個私鑰。

  用于主網地址時,在私鑰前面加上0x80,用于測試網地址時,在前面加入0xef。

  如果跟壓縮公鑰(后續小節會講到)使用,需要在后面加入0x01,如果跟非壓縮公鑰使用,就什么都不用加。

  對擴展后的私鑰進行SHA-256哈希。

  對SHA-256哈希后結果再做一個SHA-256哈希。

  拿掉第二次哈希后的哈希值的前4字節,這4個字節是校驗和。

  把這4字節校驗和插入到擴展私鑰后面。

  把結果從字節字符串,使用Base58Check轉化成Base58編碼字符串。錢包oem定制開發。


        溫馨提示:大連仟源科技有限公司以“專注網站,用心服務”為核心價值,一切以用戶需求為中心,希望通過專業水平和不懈努力,重塑企業網絡形象,為企業產品推廣文化發展提供服務指導;公司主要產品:主要為企業提供游戲開發,手機APP開發,定制系統開發,區塊鏈系統開發,小程序開發,網站開發。

上一篇:錢包開發 下一篇:錢包開發公司
文章標簽:
文章評論:

專業的游戲開發/系統開發、品牌設計/網站建設,選仟源!

選擇專業的企業服務公司,服務更靠譜!

立即點擊咨詢>
客服圖標
客服圖標
118旺角心水论坛