區塊鏈技術具有去中心化、信息不可篡改、信息透明和可共同維護等特點,下面就將進行區塊鏈技術的基本概念和原理的講解。
1、區塊鏈概念
區塊鏈可以借由密碼學,串接并保護內容的串聯交易記錄(又稱區塊)。在區塊鏈中,區塊內容具有難以篡改的特性,每一個區塊都包含了前一個區塊的加密散列、相應時間戳記以及交易數據(通常用Hash樹計算的散列值表示)。用區塊鏈串接的分布式賬本能讓交易雙方有效地記錄交易,且可永久查驗。
2、區塊鏈原理
區塊鏈技術可以認為是要解決互聯網時代下的“拜占庭將軍問題”,即在網絡中的中心節點和信息傳遞通道都缺乏可信度的情況下,如何使網絡中的各個節點達成共識。
區塊鏈技術在去中心化、各節點無須事先信任的情況下,通過加密算法、共識機制和特定的數據存儲方式,構建一個集體維護的可靠的數據模式,實現數字資產在網絡節點之間的轉移。
首先,數據被按時間順序劃分成區塊,每一個區塊存放一段時間內的所有價值交換信息,所有節點存儲這段時間內的數據,并且永久保存,各個節點通過特定的計算爭奪領導權,將下一時間段的信息進行打包分發,并通過某種特定的信息添加到上一區塊的后面,構成區塊鏈結構。
這種區塊鏈結構的特點就是可以保證數據的完整性,因為每一個區塊都會存儲它被創建之前的所有價值交換信息;還可以保證數據的嚴謹性,因為一旦新的區塊被加入鏈中,之前的區塊就再也不能修改。
區塊鏈實現了從記錄到傳輸再到存儲的全面分布式的模式,數據傳輸、數據驗證、數據存儲都去中心化,所有參與者共同構建數據庫。
區塊鏈采用非對稱加密算法以提高數據的可信賴度,非對稱加密即指加密和解密使用不同的密碼,即公鑰和私鑰。加密數據所用的密碼被稱為公鑰,是所有人都知道的、可以用來給信息加密的密碼;解密數據所用的密碼被稱為私鑰,是只有該信息的接收者知道并用于解密的密碼。公鑰加密的信息只有使用對應的私鑰才可以解密。
實際情況中,假設甲向乙發送一個信息,甲、乙各自生產一對公鑰與私鑰用以加密和解密,甲、乙分別保管自己的私鑰并向對方告知公鑰,如果甲向乙發送信息,那么甲用乙的公鑰進行加密并向乙發送加密后的信息,乙收到消息后用自己的私鑰解密,網絡中其他參與者均無法解密。這種算法強度高的加密方式保證了區塊鏈信息的可信度。
區塊鏈使用數學方法解決信任問題,用算法代替中心化的第三方機構,為人們創造信用,幫助人們達成共識。
區塊鏈利用腳本使系統可以直接定義完成價值交換活動所需要的條件,有了腳本,區塊鏈技術就有機會使系統不斷成長,去處理一些新出現的交易模式,確保其時效性和實用性。
腳本中包含大量指令,每次價值交換都會記錄指令,比如接收價值的一方如何接收,以及花費掉自己曾收到的留存價值需要滿足什么附加條件等。腳本的可編程性使其可以靈活改變花費掉留存價值的附加條件,如增加所需公鑰的數量。它也可以在發送價值時規定價值再轉移的條件。