寧波財經學院 楊昊楠 楊昱昺
隨著社會的發展,老齡化的情況越來越嚴重。在這樣的背景下,“時間銀行”是一種新型的養老模式。區塊鏈是一種分布式的賬本,具有去中心化、不可篡改和透明公開的特性。通過區塊鏈技術解決“時間銀行”目前存在的問題。本文將區塊鏈和“時間銀行”作為研究對象,對兩者進行結合,并對其設計的架構進行概述。
隨著社會的發展,我國的社會已經進入了老齡化社會。老齡化帶來了社會養老的問題,其對我國的居家養老為主體的養老帶來了極大的負載。隨著老齡化的加速,“時間銀行”開始作為我國解決養老問題的新型方式。目前,“時間銀行”存在著信用低下、標準未統一和安全性低下等問題。這些問題儼然成為了“時間銀行”發展的阻礙。隨著老齡化的提升,社會迫切需要這種新型的養老方式。
區塊鏈誕生于2008年一名自稱中本聰的作者所發布的一篇《比特幣:一種點對點的電子現金系統》。在中本聰的這篇論文中就說到“我們需要的是一個基于密碼學原理而不是信任的電子支付系統,該系統允許任何有交易想法的雙發能夠直接交易而不需要信任的第三方。”,而這里面所說的電子支付系統就是比特幣,整篇論文的核心,區塊鏈便是從比特幣中誕生而出。
區塊鏈具有不可篡改、去中心化和透明公開的特性。這正是“時間銀行”所欠缺的也是“時間銀行”所存在的問題。本文將區塊鏈和“時間銀行”作為研究對象,對兩者進行結合,并對其設計的架構進行概述。
區塊鏈是一種分布式賬本,通過密碼學、經濟學和社會學等學科,保障數據內容安全,降低合作的成本和難度。區塊鏈主要是去掉第三方信任機構,由參與者共同建立起一個可信的系統。區塊鏈的去中心化是由網絡層來實現的。網絡層包含了點對點網絡(P2P)、傳播機制、驗證機制。區塊鏈從字面上的意思鏈式結構的區塊集合,是由一個個區塊鏈接而成。數據層中包含了區塊鏈的鏈式結構、哈希函數、數據區塊、非對稱加密等技術。哈希函數這是一種將內容轉為摘要的算法。在區塊的鏈式結構中和數據結構中,均用到了哈希函數。鏈式結構主要是通過哈希值進行鏈接,在其初始區塊中上一個哈希值為空或者一種特殊值即可,后續的區塊保存前一個區塊哈希值。非對稱加密技術并不是區塊鏈中必要的技術,但在比特幣中是一種必要的技術。
“時間銀行”就是志愿者為老人提供服務獲取時間幣,當自己老了的時候便可以花費時間幣來讓志愿者服務自己。“時間銀行”目前在我國處于可信度低、安全性差、標準未統一等問題。可信度來源于目前我國部分時間處于中心化的狀態。采用了中心化的服務器也就是C/S架構來實現的,這導致了其控制權在“時間銀行”的運營者之中,使其可信度降低,同時,容易被篡改和丟失,導致安全性差。標準未統一這是由于我國各地區采用了系統并非統一性所導致的。有的地方甚至采用紙質記錄,這使得各地區“時間銀行”貨幣轉換及其困難。區塊鏈所解決的一個問題便是“時間銀行”中心化所導致的可信度。區塊鏈為了取消第三方機構的加入,采用了點對點網絡和密碼學保障了數據的一致性和正確性,其具有很高的可信度及安全性。另外,區塊鏈中采用統一的虛擬貨幣,比如比特幣、以太仿等,在時間幣的兌換中有了統一的標準。從“時間銀行”目前出現的三大問題再契合區塊鏈的特性及概念,得出區塊鏈去信任化加強運營的公信度,透明性以及隱匿性提高了信息的安全性、去中心化提高了運營的效率。
區塊鏈具有去中心化、不可篡改和公開透明等特性正是“時間銀行”所欠缺。區塊鏈通過去掉第三方信任機構強化了“時間銀行”的公信力,數據的公開和加密性均加強了“時間銀行”信息的安全性,去中心化提高了“時間銀行”的運營速度。提高公信力是由于區塊鏈的去中心化和數據公開并且透明化等特性所帶來好處。提高“時間銀行”的運營速度是其去中心化,點對點網絡中可以通過節點之間的功能組合或者均衡負載的方式來提高其“時間銀行”的運行性能。提高“時間銀行”的公信力主要是取消了第三方機構或者取消了獨立的機構,也就是說將“時間銀行”的中心化結構弱化或者取消從而實現了高信用度。安全性的提高是區塊鏈中的不可篡改的特性,這個特性是由數據層和共識層共同實現的。本質上在數據層方面就已經完全具有其無法修改的特性,區塊鏈是區塊通過鏈式結構組合而成的,但這個結構并無法進行修改和刪除只能添加,一旦進行修改和刪除勢必會對其后續區塊的連接結構產生連鎖反應。區塊鏈和“時間銀行”的契合度很高,“時間銀行”中大部分問題均可以由區塊鏈解決。
在任素娟等《我國發展互助養老“時間銀行”的必要性及路徑研究》中說到了壞賬、通兌難、參與者少等問題,但這是其安全性低下、標準未統一和公信力差所導致的。在這篇論文中還有講到運用區塊鏈技術來保證其數據不可篡改、全程留痕、可追溯、公開透明,這樣解決志愿者的后顧之憂,提高參與者的數量。“時間銀行”中所有項目或者交易均圍繞著時間幣進行和展開,而基于區塊鏈技術誕生的第一個軟件便是比特幣。那么利用區塊鏈技術開發一個時間幣的電子錢包系統便可解決壞賬、公信力低等問題。
“時間銀行”整體分為三層,上層引用下層,但每層均可以獨立運行。如圖1所示,“時間銀行”主要包含了“時間銀行”應用層、區塊鏈層和點對點網絡層,“時間銀行”依賴于區塊鏈層,區塊鏈層依賴于點對點網絡。三層結構的好處是因為每一層均可以獨立運行。單獨運行點對點網絡層加入其中區塊鏈的網絡節點中,從而查看區塊鏈在運行過程中所廣播的信息以及作為壞節點發送錯誤信息測試區塊鏈中容錯率。點對層主要有廣播機制、定點廣播機制。區塊鏈層便是包含其共識層、數據層。共識層可以采用其拜占庭容錯算法(PBFT)。PBFT算法是聯盟鏈中的一個共識算法,但其效率極高,并且采用聯盟鏈極大提高了“時間銀行”的效率和公信力。數據層中區塊鏈連接采用哈希函數來實現,通過保存上一個區塊哈希值進行連接,實現區塊的鏈式結構。其非對稱加密技術是對交易進行簽名,在其廣播交易的時候進行驗證交易的正確性。PBFT貫穿于其數據層和網絡層,交易廣播和區塊廣播的時候便用到了PBFT保證其內容的一致性,在其執行寫入區塊的時候也是通過PBFT共識結束后進行執行的一項任務。“時間銀行”中是通過調用區塊鏈中的交易,賬戶管理等方法來實現。

圖1 “時間銀行”結構Fig.1 "Time Bank" structure
“時間銀行”中主要是嵌入了一個基于區塊鏈技術的電子錢包(時間幣)。其賬戶管理、交易、區塊等均由“時間銀行”調用區塊鏈實現的。
如圖2所示,“時間銀行”應用層調用了區塊鏈層的方法,區塊鏈層返回其操作結果,而區塊鏈則是通過調用點對點網絡層的方法來實現其對等網絡的組成、信息廣播。簡單說區塊鏈層調用了點對點網絡層的廣播、連接、節點信息等方法,覆寫了其中處理器和監聽器。在區塊鏈層中,發起交易的流程是先創建交易,驗證交易數據(比如交易金額、私鑰、發起者余額、發起人),再創建簽名并通過拜占庭容錯算法廣播消息。節點接收到這類消息后,會對交易進行一個簽名驗證,通過后加入交易池,此時主節點會對其進行區塊創建,區塊頭只包含當前區塊的索引、前一個區塊哈希值和當前區塊哈希值,而區塊通過拜占庭算法廣播,節點接收到后會將區塊加入區塊鏈中。區塊鏈中賬戶創建流程,由當前節點創建賬戶,并通過PBFT廣播賬戶的余額和賬戶的公鑰,此時創建賬戶的節點開個定時器,若是超過了指定時間沒有執行表示廣播賬戶信息失敗,也表示賬戶創建失敗,否則所有節點寫入賬戶信息,同時創建賬戶信息的節點保存賬戶詳細信息,這時候賬戶算是創建完成。區塊鏈在“時間銀行”中只不過是一個賬本,所有交易由它進行記錄,同時區塊鏈也公開賬本所有記錄,旨在“時間銀行”中供參與者查看提高其中的可行度,但這部分信息參與者只能準確到自己的交易詳情,也就說公開的只不過是其區塊鏈中的區塊信息,但這部分信息是已經加密了,用戶只能看到表面。

圖2 “時間銀行”各層之間操作Fig.2 Operation between layers of "Time Bank"
“時間銀行”是一個自治的系統,其功能主要可分為賬戶管理、項目管理,如圖3所示。

圖3 “時間銀行層”的核心功能模塊Fig.3 Core function module of "Time Bank Layer"
賬戶管理主要有創建賬戶、查詢賬戶這兩個功能。賬戶創建是通過區塊鏈層發起創建賬戶,通過返回的公私鑰進行賬戶信息的寫入,而查詢功能是通過調用區塊鏈層賬戶查詢獲取到其賬戶的余額。
項目管理主要有項目創建、項目初審、項目報告申請、項目報告審核、參加項目。整個項目流程是項目創建,此時通過項目押金對其發起人中余額進行扣除(向區塊鏈發起交易,交易接收者是節點賬戶),扣除失敗是由定時器檢測發現交易執行器超過一定時間沒有該交易的確定,此時項目會直接進入異常狀態,若扣除項目押金成功,則會進入初審,此時由審核人審核,只要超過一半數量通過,項目審核成功,項目進行發布狀態,若是超過執行時間,審核未通過則進入異常狀態,在發布狀態中志愿者可以參加,由發起人進行審核是否同意參加,在執行期間和執行期間結束后可以申請項目報告,項目報告中含有參與者的金額以及報告內容,申請后審核人只要一半以上通過項目報告便會被抽取其中參與者金額部分,通過遍歷參與者集合信息向區塊鏈發送交易(交易是抽取發起人的余額,若不夠則會出現欠款單,只要賬戶一有金額進入則直接扣款),并提供查詢交易通知,失敗則重新發起交易,并通知志愿者。
區塊鏈是“時間銀行”的一個解藥,能解決其大部分問題。隨著社會老齡化步伐的加速,養老體系越來越需要一種新型養老模式的加入。“時間銀行”的互助養老模式的應用可以有利緩解社會老齡化下養老的問題。區塊鏈作為一個去中心化、不可篡改和公開透明的賬本,將其與“時間銀行”進行結合,可以解決“時間銀行”的公信力低下、安全性低等問題。提供對“時間銀行”進行結構化的開發,再將區塊鏈層進行各地區的同步,在保留其各地區“時間銀行”特設的情況下,解決其貨幣不統一且兌換困難的問題。