區(qū)塊鏈的誕生,不僅僅是通過(guò)代碼和智能合約來(lái)將生產(chǎn)組織進(jìn)一步扁平化,從而達(dá)到優(yōu)化中間過(guò)程、精簡(jiǎn)中介的作用,更是產(chǎn)生了一個(gè)新的經(jīng)濟(jì)模式,創(chuàng)建了一種新的生產(chǎn)關(guān)系,這種理念上的變革遠(yuǎn)遠(yuǎn)大于技術(shù)本身帶來(lái)的影響,它最讓人著迷的地方莫過(guò)于利用人性的特點(diǎn),建立的一套自治的經(jīng)濟(jì)激勵(lì)機(jī)制,并誕生了一個(gè)新型的價(jià)值載體cryptocurrency。Cryptocurrency顯然不同于傳統(tǒng)的貨幣,它是通過(guò)一定的加密算法計(jì)算出來(lái)的數(shù)字貨幣,也就是說(shuō)電子化會(huì)是它的本質(zhì)屬性,這樣它的存儲(chǔ)問(wèn)題就會(huì)是一個(gè)熱門(mén)的研究領(lǐng)域,具體來(lái)講就是我們常說(shuō)的區(qū)塊鏈錢(qián)包。
交易管理
交易管理可以被認(rèn)為是應(yīng)用和簽名解決方案之間的實(shí)際接口。這是一些操作的請(qǐng)求被解析成可以被私鑰簽名的格式的步驟。它包括與應(yīng)用的通信以及與私鑰管理的通信。在這兩者之間,需要簽署的數(shù)據(jù)應(yīng)該被解析,并以一種用戶可以理解他們正在簽署的內(nèi)容和原因的方式顯示給用戶。此外,這些簽名請(qǐng)求的歷史和狀態(tài)應(yīng)該被記錄下來(lái)并提供給用戶。
私鑰管理
你可能認(rèn)為這是錢(qián)包唯一的真正責(zé)任是保證你的私鑰安全。事實(shí)上這往往是錢(qián)包建設(shè)者最不具備的能力。密碼學(xué)和安全專 家應(yīng)該負(fù)責(zé)開(kāi)發(fā)行業(yè)標(biāo)準(zhǔn)的解決方案,并實(shí)施私鑰存儲(chǔ)的最佳實(shí)踐。這應(yīng)該是他們的全部業(yè)務(wù),然而相反,我們看到現(xiàn)在的錢(qián)包在安全性方面做的不錯(cuò)--但當(dāng)涉及到密碼學(xué)時(shí),這并不夠好。
如果將私鑰存儲(chǔ)的責(zé)任從錢(qián)包中移除,可能會(huì)導(dǎo)致更多種類的安全解決方案,這些解決方案依賴于不同的假設(shè)并提供不同的功能。目前已經(jīng)有很多超越傳統(tǒng)軟件存儲(chǔ)的私鑰解決方案:像Ledger中的硬件安全模塊,或者其他加密技術(shù),比如Torus使用的shamir秘密共享,像ZenGo使用的閾值方案,多方計(jì)算,或者新穎的零知識(shí)技術(shù)。
錢(qián)包設(shè)計(jì)
私鑰一般太難記憶了,使用也不方便,所以從錢(qián)包設(shè)計(jì)的角度,就為簡(jiǎn)化操作同時(shí)不丟失安全性,就出現(xiàn)了助記詞的方法。一般情況下,助記詞由一些單詞組成,只要你記住這些單詞,按照順序在錢(qián)包中輸入,也能打開(kāi)錢(qián)包。
種子生成密鑰
用戶最好的體驗(yàn)仍然會(huì)是密碼方式,所以錢(qián)包還提供了keystore讓用戶導(dǎo)出保存,這個(gè)Keystore也是私鑰經(jīng)過(guò)加密過(guò)后的一個(gè)文件,需要你自己設(shè)置的密碼才能打開(kāi)文件。這樣的好處是就算keystore文件被盜,只要你額外設(shè)置的密碼夠長(zhǎng)夠隨機(jī),那么短時(shí)間內(nèi)私鑰也不會(huì)泄露,有充足的時(shí)間轉(zhuǎn)移地址里面的加密貨幣到其他地址。Keystore會(huì)存儲(chǔ)在使用的設(shè)備里,這樣每次登陸只用輸入相應(yīng)密碼即可。
總結(jié)
區(qū)塊鏈錢(qián)包實(shí)現(xiàn)的技術(shù)原理用一句話表示就是:錢(qián)包助記詞生成了種子,種子生成了私鑰,私鑰推導(dǎo)出公鑰,公鑰節(jié)選部分成了錢(qián)包地址。同時(shí)錢(qián)包提供了keystore,它也是私鑰加密后的文件,可以配合正常的密碼使用,便捷了用戶的錢(qián)包使用。