注意:
- 此教學課程需要存取 Oracle Cloud。若要註冊免費帳戶,請參閱開始使用 Oracle Cloud Infrastructure Free Tier 。
- 它會使用 Oracle Cloud Infrastructure 證明資料、租用戶及區間的範例值。完成實驗室時,請將這些值替代為您雲端環境特定的值。
使用 Oracle Blockchain Platform 開發區塊鏈應用程式
簡介
區塊鏈技術正在改變企業和組織運作的方式,並且已產生新的應用系統時代,這能夠帶來前所未有的透明度、安全性和去中心化層次。
Oracle Blockchain Platform 提供您一個預先組合平台,可用來建置和執行智能合約,以及維護防止竄改的分散式交易記錄帳本。有了 Oracle Blockchain Platform,您只需要完成一些簡單的執行處理建立步驟,然後 Oracle 就能夠管理服務、打補丁、備份與回復及其他服務生命週期作業。
目標
為協助您開始使用 Oracle Blockchain Platform 開發區塊鏈應用程式,此教學課程提供重要概念和步驟的高階簡介。
必要條件
-
對區塊鏈技術和 Oracle Cloud 的基本瞭解。
-
請考慮是否需要區塊鏈:
徹底研究您的使用案例。資料庫或任何其他技術是否能夠提供相同的解決方案?區塊鏈不只是單純的資料庫,還能使企業轉型。如果您不想依靠第三方或處於離線調節流程中固有的延遲,請考慮區塊鏈。區塊鏈也可用來追蹤產品的整個生命週期。此外,值得注意的是,區塊鏈需要參與所有相關當事人及聯絡窗口。在此步驟之後,您應該能夠回答「為什麼區塊鏈?」問題。如需詳細資訊,請參閱為什麼應該使用區塊鏈
-
定義使用案例
第一步是為您的區塊鏈應用程式定義使用案例。這涉及識別您要解決的問題,以及區塊鏈技術如何用於解決此問題。定義使用案例時,也必須考量目標對象及其需求。
-
對區塊鏈平台決定
公用區塊鏈平台可讓任何人在區塊鏈網路上結合、讀取及寫入資料。大多數類型的加密貨幣都在由規則或共識演算法所管理的公共區塊鏈上執行。相反的,許可的區塊鏈可讓組織設定誰可以存取區塊鏈資料。只有獲得權限的使用者可以存取特定的資料集。視您的使用案例而定,您必須決定區塊鏈平台的類型。
Oracle Blockchain Platform 是以 Linux Foundation 開發的許可 Hyperledger Fabric 專案為基礎。Oracle Blockchain Platform 包含支援區塊鏈網路的所有相依性:運算、儲存、容器、身分識別服務、事件服務以及管理服務。Oracle Blockchain Platform 也包含支援整合式作業的區塊鏈網路主控台。
工作 1:建立 Oracle Blockchain Platform 執行處理
-
登入 OCI 主控台。
-
選取您具備建立執行處理之適當權限的區間。
-
提供執行處理的顯示名稱,選取平台角色、版本以及必要的版本。
-
按一下建立。
-
請為參與區塊鏈網路的每個成員組織建立 Oracle Blockchain Platform 執行處理。如需詳細資訊,請參閱 Create an OBP instance 。
在此步驟結束時,您將擁有所有基礎架構可供執行區塊鏈應用程式。
作業 2:設定您的開發環境
區塊鏈 App 產生器支援從命令行介面或作為 Visual Studio 程式碼的擴充功能,使用完整的開發生命週期。適用於 Oracle Blockchain Platform 的 Blockchain App Builder 是一個工具集,可協助 Oracle Blockchain Platform 上快速開發、測試及部署鏈碼。您可以從 Oracle Blockchain Platform 主控台的範例頁籤,下載 App 產生器的 Visual Studio 程式碼擴充功能。
如需詳細資訊,請參閱安裝應用程式產生器。
工作 3:為您的區塊鏈應用程式建立資料模型
-
根據識別的使用案例,決定要儲存在區塊鏈上的參數。
-
為了簡化,讓我們考慮使用區塊鏈應用程式將 Marble 磁磚的所有權轉移到範例。在此情況下,必須要有大理石顏色、大小、擁有者和 ID 等大理石詳細資訊,才能撰寫區塊鏈程式碼 (稱為鏈碼)。
-
若要建立資料模型,請只考慮物件描述資料。區塊鏈的資料模型不需要像圖片、PDF 等非交易資料。這稱為鏈結資料。
-
判斷您的鏈結和非鏈結資料,並決定是否儲存區塊鏈資料。
任務 4。使用資料模型建立規格檔案
-
使用任務 3 中建立的資料模型,在
yaml
或json
中寫入簡單規格檔案。如需詳細資訊,請參閱建立規格檔案。 -
在此規格檔案中,您可以指定多個資產定義和行為、引數驗證、CRUD 和非 CRUD 方法宣告。
-
您可以在 Blockchain App Builder 下載的套裝程式中找到兩種格式 (
yaml
和json
) 的範例規格檔案。
任務 5。產生鏈碼檔案
-
Oracle Blockchain App Builder 會從您的規格檔案取得輸入內容,並產生功能完整的鷹架鏈碼專案。
-
使用 Typecript 或 Go Lang 中的 Oracle Blockchain App Builder 產生鏈碼,並在其中新增任何必要的自訂函數。如需詳細資訊,請參閱產生鏈碼。
您現在可以開始在 Oracle Blockchain Platform 上部署鏈碼。
任務 6。部署和測試鏈碼
-
部署鏈碼時,是由核准和確認鏈碼定義所組成。
-
使用區塊鏈 App 產生器,將您的鏈碼部署到 Oracle Blockchain Platform。
-
在 App 產生器的「環境」區段中新增您的 Oracle Blockchain Platform 執行處理詳細資訊,然後部署鏈碼。如需詳細資訊,請參閱部署鏈碼。
-
您也可以封裝您的鏈碼專案,並將其手動部署到 Oracle Blockchain Platform。使用 VS Code 部署鏈碼。
-
部署鏈碼之後,下一步就是測試已部署的鏈碼。在測試中,您可以呼叫交易或查詢鏈碼。區塊鏈 App 產生器可用於執行呼叫和查詢,以及進行多使用者測試。如需詳細資訊,請參閱測試您的鏈碼。
作業 7:使用 SDK 和 REST API 開發應用系統
- Oracle Blockchain Platform 的基礎為 Hyperledger Fabric。
- 使用 Hyperledger Fabric 文件可協助您撰寫應用程式。如需詳細資訊,請參閱 Hyperledger Fabric 文件。
- 安裝及使用 Hyperledger Fabric SDK 開發 Oracle Blockchain Platform 應用系統。如需詳細資訊,請參閱使用 Fabric SDK 。
- Oracle Blockchain Platform 提供的 REST API 在建立時具有最大彈性;您可以呼叫交易、呼叫查詢或檢視交易狀態。如需詳細資訊,請參閱使用 REST API 。
提示:撰寫您自己的應用程式之前,請先閱讀重要概念和教學課程一節。
相關連結
確認
- 作者 - Bhupendra Raghuwanshi (資深雲端工程師)、Deepika Nayak (Staff 雲端工程師)
其他學習資源
探索 docs.oracle.com/learn 的其他實驗室,或者存取更多 Oracle Learning YouTube 頻道上的免費學習內容。此外,請瀏覽 education.oracle.com/learning-explorer 以成為 Oracle Learning 檔案總管。
如需產品文件,請造訪 Oracle Help Center 。
Develop a Blockchain application using Oracle Blockchain Platform
F78393-01
February 2023
Copyright © 2023, Oracle and/or its affiliates.