林樹鴻 郭威 曹璐
【摘要】? ? 區塊鏈技術作為一種互聯網分布式技術,因其巨大的潛力正飛速發展,該技術的應用場景逐漸蔓延到各個領域,其中包括電力行業。基于此,本文通過調查區塊鏈技術的原理,重點研究如何在區塊鏈技術的基礎上設計電力業務云服務平臺,以供相關人員參考。
【關鍵詞】? ? 區塊鏈技術? ? 電力業務? ? 云服務平臺
引言:
以往傳統的集中化交易模式在處理分布式能源與電力用戶直接交易時,極易受到隱私安全等因素的影響。而區塊鏈技術作為一種先進的互聯網技術,具有公正透明、安全可靠的優點。因此,研究以區塊鏈技術為基礎的電力業務云服務平臺設計是十分必要的。
一、區塊鏈技術原理以及共識算法
1.1區塊鏈技術原理
區塊鏈技術是以時間軸遞增的一種鏈式的存儲結構,在鏈上具有高度遞增的區塊,區塊是由區塊頭、體組成,并且,每一個區塊頭都與上一區塊的哈希值相鏈接,而區塊體則主要包含信息,一般是交易的主體信息[1]。在交易區塊鏈進行交易時,交易的發起方是客戶端,通過驗證數字簽名,該交易信息會輸送至區塊鏈系統中的節點,節點就是客戶的賬戶信息,通過在節點對交易信息進行驗證,能夠有效提升交易的安全性。在交易驗證通過后,該節點的下一個區塊會對此次相關的信息數據進行記錄,記錄完畢后區塊鏈上的所有節點都會對新區塊以共識算法為基礎對其進行共識,在全面節點共識結束后,新區塊就會被寫入區塊鏈上,成為鏈上的新節點。
由此可見,應用區塊鏈技術后所開展的交易模式與以往傳統的交易模式存在一定差異,主要體現為:在區塊鏈上,節點可能屬于不同的組織,但節點需要一同維護區塊鏈系統中的信息數據,只要參與信息數據的維護作業,那么該節點都會對所維護的信息數據記錄進行拷貝,進而形成不斷增長的鏈。
而區塊鏈上的區塊只能夠隨著時間的推移而增加,且無法對記錄完畢的區塊信息進行篡改,這意味著,區塊鏈技術能夠有效保證信息數據的完整性和真實性,而且區塊鏈系統也不用進行集中控制。
區塊鏈技術的結構主要是分布式的網絡結構,這要因為區塊鏈的構建基礎就是分布式網絡,系統中的賬本無需進行集中存儲和控制,通過將賬本分布在區塊鏈系統中的節點上,一旦賬本出現變化,該系統上所有節點的賬本一同更新。而支撐區塊鏈系統得以穩定運行的基礎之一就是共識算法,通過共識算法能夠使區塊鏈系統上的每一個節點透明化、公開化,進而在使用區塊鏈技術進行交易以及構建交易平臺時,不用借助第三方的信用背書就能進行,且能夠建立穩定的信任關系。而且,由于區塊鏈技術的優勢,具有公開化、透明化的特點,用戶能夠通過加入區塊鏈進而對區塊記錄進行查詢。
同時,如上所述,一旦某個賬本發生變化該區塊鏈上的所有節點的賬本會同時更新,所以,每一個用戶所查詢到的賬本都是實時更新且統一的,不存在信息偏差的情況。不僅如此,區塊鏈技術由于其結構是鏈式且自帶時間戳,因此,區塊鏈系統中的信息數據具有極強的可追溯性和真實性。
二、研究在區塊鏈技術的基礎上設計電力業務云服務平臺
2.1區塊鏈電力業務交易服務平臺設計
在能源場景中,以區塊鏈技術為基礎的電力業務云服務平臺的實體是電力交易,在交易過程中,主要是采用掛單以及買單的形式。在此過程中,體現區塊鏈技術行為的流程就是電力交易達成的步驟,當掛單和買單在應用層時,交易形成后,交易需要在區塊鏈上完成,其中,智能合約會對交易數字化合約進行調用,并通過智能調度模式判斷交易是否執行。在這種模式下,對該平臺的交易序列進行設計。與傳統在線交易服務平臺不同,以區塊鏈技術為基礎的電力業務服務平臺提供了能源側交易的服務,對于該平臺的服務模塊,具有多種選擇,既可以選擇Hyperledger,還可以選擇其他模塊,使該平臺具有易用性。在該平臺的交易場景中,實現能源區塊鏈交易服務的本質是開展Hyperledger側的交易,通過事件驅動,交易完成后能夠直接執行側調度,進而實現區塊鏈交易。
在交易時,轉移的資產單位為人民幣,用戶通過充值等方式進行交易。另外,還需要在該平臺中設計管理員角色,可由電業局等單位擔任。在區塊鏈上,客戶的賬戶是鏈上的節點,主節點可以指定生成,在電力交易過程中可以在子網通道中制定智能合約。而且,通過區塊鏈技術構建的該平臺底層模塊使得上層可以對能源交易應用進行設計。而且,通過RPC模式,也就是遠程過程調用模式,能夠進行在區塊鏈容器內開展中心化交易,并在共識結束后寫入信息,進而完成智能調度。
2.2以NodeSDk為基礎,構建RPC模型
為實現區塊鏈框架Hyperledger的中心化交易模式,可以通過設計區塊鏈容器內部模塊的命令性操作實現。在該交易平臺中,交易的發起端是Web端,發起后智能合約對其進行操作,在交易過程中通過PBFT共識為交易提供保障,最后寫入區塊。具體而言,當交易發起時,該平臺會進行UI操作,驗證交易的合法性和完整性,驗證通過后對該交易進行預處理并嘗試交易,交易執行過程中會由相應的模板進行驗證以及調用智能合約,最終通過共識模塊完成,之后寫入區塊映射到該平臺區塊鏈信息數據庫。通過該交流服務流程,省略了智能合約的部署環節,提高了工作效率。而SDK則是一種開發工具,其中包括多種高級語言。在該平臺中,應用的就是高級語言中的NodeJS,主要是因為NodeJ語言S的SDK功能較強,且能夠很好的適應高并發環境[2]。NodeSDK在于平臺系統中的智能合約進行交互時,主要是通過stub以請求的方式進行。
不僅如此,NodeSDK還為該平臺提供了智能合約操作的封裝與交易平臺通信,驗證已確認的交易信息,并將驗證信息發送至stub,進而進行區塊鏈操作。當用戶使用該平臺發起交易申請后,Web端會顯示交易正在處理,而此時的遠程過程調用模型處于等待狀態,主要是等該品臺區塊鏈執行結果,當完成執行后,就會處于Receive狀態,這時智能合約就可以寫入區塊,并將信息傳至后臺,最后把信息寫入數據庫。通過該部分的設計,使得該平臺的區塊鏈上能夠具有交易相關信息,而由于區塊鏈技術自身特點,意味著這些信息數據具有可追溯性以及透明可信性,為交易的完整性和真實性提供保證。
2.3數據庫設計與區塊信息查詢
在區塊鏈技術基礎上對電力業務云服務平臺進行設計時,需要對其數據庫進行設計,主要涉及兩個表格,分別是用戶表以及售電表。對于用電表而言,該表格發揮的主要作用是對用戶的賬號信息進行保存;對于售電表而言,該表格則是對目前交易單的各項信息進行保存。在用電表保存的信息中,包括用戶類型,在售電表中,保存了用戶余額信息。而區塊信息的查詢,主要設計為兩種方式,一種方式是通過Fabric配置CouchDB,另一種方式是區塊索引。對于第一種Fabric配置CouchDB的查詢方式而言,其中CouchDB是一個數據庫,其性質是文檔形式的,能夠提供相應該平臺所需的操作數據庫文檔。在該類型的數據庫中,將文檔設計為無特定結構的,也就是無模式,進而支持較為復雜的區塊信息查詢。而在Hyperledger中也能夠與該數據庫相聯系,通過可視化模板可以看到區塊信息。進而在該平臺進行交易后,可以在瀏覽器打開相應網址,作為區塊鏈信息的數據庫映射,以供相關人員的查詢[3]。
三、結束語
綜上所述,通過應用區塊鏈技術設計電力業務云服務平臺應用,能夠有效提升業務交易效率,保證各項信息的準確性和可塑性。因此,相關單位應深入分析區塊鏈技術,并將該技術與電力交易平臺進行有效整合,搭建功能完備、安全可靠的電力交易服務平臺。
參? 考? 文? 獻
[1]秦金磊,孫文強,李整,朱有產.基于區塊鏈和改進型拍賣算法的微電網電能交易方法[J].電力自動化設備,2020,40(08):2-10.
[2]韓冬,張程正浩,孫偉卿,張巍,楊文威,肖敏.基于區塊鏈技術的智能配售電交易平臺架構設計[J].電力系統自動化,2019,43(07):89-99.