참고:
- 이 사용지침서에서는 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에 대한 기본적인 이해
-
블록체인이 필요한지 고려하십시오.
사용 사례를 철저히 연구하십시오. 데이터베이스 또는 기타 기술이 동일한 솔루션을 제공할 수 있습니까? 블록체인은 단순한 데이터베이스 그 이상이며 비즈니스를 혁신할 수 있는 역량을 갖고 있습니다. 제3자에 의존하지 않거나 오프라인 조정 프로세스에 내재된 지연이 발생하지 않도록 하려면 블록체인을 고려하십시오. 블록체인은 제품의 전체 수명 주기를 추적하는 데도 사용할 수 있습니다. 또한 블록체인은 관련된 모든 당사자와 연락처의 참여가 필요하다는 점을 명심해야 합니다. 이 단계가 끝나면 '블록체인 이유'라는 질문에 답할 수 있어야 합니다. 자세한 내용은 블록체인을 사용해야 하는 이유를 참조하십시오.

-
사용 사례 정의
첫 번째 단계는 블록체인 애플리케이션의 사용 사례를 정의하는 것입니다. 여기에는 해결하려는 문제를 식별하고 이를 해결하기 위해 블록체인 기술을 사용하는 방법이 포함됩니다. 또한 활용 사례를 정의할 때 대상 오디언스 및 요구사항을 고려하는 것도 중요합니다.
-
블록체인 플랫폼 결정
공용 블록체인 플랫폼을 통해 누구나 블록체인 네트워크에 데이터를 가입시키고 읽고 쓸 수 있습니다. 대부분의 암호화폐 유형은 규칙 또는 합의 알고리즘에 의해 관리되는 공용 블록체인에서 실행됩니다. 이와 반대로 허가된 블록체인을 통해 조직은 블록체인 데이터에 액세스할 수 있는 사용자를 제어할 수 있습니다. 권한이 부여된 사용자만 특정 데이터 세트에 액세스할 수 있습니다. 사용 사례에 따라 블록체인 플랫폼 유형을 결정해야 합니다.
Oracle Blockchain Platform은 Linux Foundation에서 개발한 허가된 Hyperledger Fabric 프로젝트를 기반으로 합니다. Oracle Blockchain Platform에는 컴퓨트, 스토리지, 컨테이너, ID 서비스, 이벤트 서비스, 관리 서비스 등 블록체인 네트워크를 지원하는 데 필요한 모든 종속성이 포함되어 있습니다. Oracle Blockchain Platform에는 통합 운영을 지원하는 블록체인 네트워크 콘솔도 포함되어 있습니다.

작업 1: Oracle Blockchain Platform 인스턴스 생성
-
OCI 콘솔에 로그인합니다.
-
인스턴스를 생성할 수 있는 적절한 권한이 있는 구획을 선택합니다.
-
인스턴스에 대한 표시 이름을 제공하고 플랫폼 롤, 버전 및 필요한 에디션을 선택합니다.
-
생성을 누릅니다.

-
블록체인 네트워크에 참여하는 각 구성원 조직에 대해 Oracle Blockchain Platform 인스턴스를 생성하십시오. 자세한 내용은 Create an OBP instance를 참조하십시오.
이 단계가 끝나면 모든 인프라에서 블록체인 애플리케이션을 실행할 수 있습니다.
작업 2: 개발 환경 설정
블록체인 앱 빌더는 명령행 인터페이스 또는 Visual Studio 코드의 확장으로 전체 개발 수명 주기를 지원합니다. Oracle Blockchain Platform용 Blockchain App Builder는 Oracle Blockchain Platform에서 체인코드의 신속한 개발, 테스트 및 배포를 지원하는 툴 세트입니다. 앱 빌더에 대한 Visual Studio 코드 확장은 Oracle Blockchain Platform 콘솔의 샘플 탭에서 다운로드할 수 있습니다.
자세한 내용은 Install App Builder를 참조하십시오.
작업 3: 블록체인 애플리케이션에 대한 데이터 모델 생성
-
식별된 사용 사례에 따라 블록체인에 저장될 매개변수를 결정합니다.
-
단순성을 위해 대리석 타일 소유권을 이전하기 위한 블록체인 애플리케이션의 예를 고려해 보겠습니다. 이 경우 대리석 색상, 크기, 소유자 및 ID와 같은 대리석 세부정보가 체인코드라고 하는 블록체인 코드를 작성해야 합니다.
-
데이터 모델을 생성하려면 객체 메타데이터만 고려해야 합니다. 블록체인의 데이터 모델에는 사진, PDF 등과 같은 비트랜잭션 데이터가 필요하지 않습니다. 이를 오프체인 데이터라고 합니다.
-
온 체인 및 오프 체인 데이터를 결정하고 오프 체인 데이터에 대한 스토리지도 결정합니다.
작업 4. Data Model을 사용하여 Spec 파일 생성
-
작업 3에서 생성된 데이터 모델을 사용하여
yaml또는json에 단순 사양 파일을 작성합니다. 자세한 내용은 Specification File 생성을 참조하십시오. -
이 사양 파일에서는 여러 자산 정의 및 동작, 인수 검증, CRUD 및 비CRUD 메소드 선언을 지정할 수 있습니다.
-
두 형식(
yaml및json)의 샘플 사양 파일은 Blockchain App Builder 다운로드 패키지에서 찾을 수 있습니다.

작업 5. 체인코드 파일 생성
-
Oracle Blockchain App Builder는 사양 파일에서 입력을 가져와서 완전한 기능을 갖춘 스캐폴드 체인코드 프로젝트를 생성합니다.
-
Typescript 또는 Go Lang에서 Oracle Blockchain App Builder를 사용하여 체인코드를 생성하고 여기에 필요한 사용자정의 함수를 추가합니다. 자세한 내용은 Chaincode 생성을 참조하십시오.

이제 Oracle Blockchain Platform에 체인코드를 배포할 준비가 되었습니다.
작업 6. 체인코드 배포 및 테스트
-
체인코드 배포는 체인코드 정의의 승인 및 커밋으로 구성됩니다.
-
블록체인 앱 빌더를 사용하여 Oracle Blockchain Platform에 체인코드를 배포하십시오.
-
앱 빌더의 환경 섹션에 Oracle Blockchain Platform 인스턴스 세부정보를 추가한 다음 체인코드를 배포합니다. 자세한 내용은 체인 코드 배포를 참조하십시오.
-
체인코드 프로젝트를 패키지화하여 Oracle Blockchain Platform에 수동으로 배포할 수도 있습니다. VS 코드를 사용하여 체인코드를 배포합니다.

-
체인코드가 배포되면 다음 단계는 배포된 체인코드를 테스트하는 것입니다. 테스트 과정에서 트랜잭션을 호출하거나 체인코드를 query할 수 있습니다. Blockchain App Builder는 호출 및 쿼리를 모두 수행하는 데 사용할 수 있으며 다중 사용자 테스트에도 사용할 수 있습니다. 자세한 내용은 체인 코드 테스트를 참조하십시오.

작업 7: SDK 및 REST API를 사용하여 애플리케이션 개발
- Oracle Blockchain Platform은 Hyperledger Fabric을 기반으로 사용합니다.
- Hyperledger Fabric 설명서를 사용하면 응용 프로그램을 작성하는 데 도움이 됩니다. 자세한 내용은 Hyperledger Fabric docs를 참조하십시오.
- Hyperledger Fabric SDK를 설치하고 사용하여 Oracle Blockchain Platform용 애플리케이션을 개발합니다. 자세한 내용은 Use Fabric SDKs를 참조하십시오.
- Oracle Blockchain Platform에서 제공하는 REST API는 유연성을 극대화하여 만들어졌습니다. 트랜잭션을 호출하거나 쿼리를 호출하거나 트랜잭션 상태를 확인할 수 있습니다. 자세한 내용은 REST API 사용을 참조하십시오.
팁: 고유한 애플리케이션을 작성하기 전에 주요 개념 및 자습서 섹션을 읽어 보십시오.
관련 링크
승인
- Authors - Bhupendra Raghuwanshi(Senior Cloud Engineer), Deepika Nayak(Staff Cloud Engineer)
추가 학습 자원
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.