• Tidak ada hasil yang ditemukan

워크플로우를 지원하는 블록체인 기반 협업 서비스

N/A
N/A
Protected

Academic year: 2023

Membagikan "워크플로우를 지원하는 블록체인 기반 협업 서비스"

Copied!
51
0
0

Teks penuh

석사과정 동안 항상 응원해주신 모든 분들께도 감사드립니다. 가족들에게 다시 한번 감사 인사를 전하고 사랑한다고 말하고 싶습니다. 마지막으로 제가 석사과정을 무사히 마칠 수 있도록 도와주시고 응원해주신 모든 분들께 다시 한 번 감사드립니다.

그림  목차  ⅳ
그림 목차 ⅳ

서론

또한, 참가자 간 협력 기록의 신뢰성을 보장할 수 없기 때문에 최종 결과에 대한 기여도를 판단하기 어렵습니다. 이러한 문제로 인해 참여자들은 자신이 수행한 작업에 대한 기여도를 인정받지 못하여 수동적으로 협업을 수행하게 되고, 이로 인해 협업 결과의 질이 저하될 수 있습니다. 따라서 협력절차나 협력실적, 최종 결과 등의 분실, 변조, 변조를 방지하여 신뢰성을 확보할 수 있는 방법을 제공하는 것이 바람직하다.

연구의 개요

논문의 구성

관련 연구

이더리움 블록체인

  • 이더리움 블록체인의 개념
  • 이더리움 분산 어플리케이션

분산형 이더리움 애플리케이션은 이더리움 블록체인 네트워크에 배포된 스마트 계약입니다. Ract를 기반으로 작동하는 애플리케이션입니다. 분산 애플리케이션은 Web3 라이브러리를 통해 블록체인 네트워크에 배포되는 스마트 계약과 관련된 개체를 생성하고 이를 사용하여 계약 기능을 호출합니다.

그림  3  분산  어플리케이션의  동작  구조
그림 3 분산 어플리케이션의 동작 구조

스마트 계약 기능의 손쉬운 실행을 지원합니다. 또한 배포된 Ethereum 분산 애플리케이션의 사용자는 자신의 Ethereum 계정 BSpace에서 기능을 수행할 수 있습니다.

워크플로우

BSWork의 정의

  • BSWork의 구조
  • BSWork에서의 작업 제어 기법
    • JSFlow
    • BSWork에서의 JSFlow 지원
  • Event-based Function Gateway
  • 오프 블록체인 스토리지 연동
    • 오프 블록체인 스토리지 연동 구조
    • 오프 블록체인 스토리지 연동 기법

REST API 서버는 오프블록체인 저장소에 저장된 협업 데이터에 대한 업로드 및 다운로드 서비스를 제공합니다. 또한, 게이트웨이 서버는 REST API 서버 서비스 등 블록체인 외부 기능의 사용을 지원하고, 게이트웨이 계약을 통해 신뢰성을 보장합니다. 그림 7은 Function Gateway를 이용한 분산 애플리케이션의 구조를 보여준다.

BSWork의 워크스페이스 컨트랙트는 오프블록체인 스토리지에 저장될 협업 데이터가 스푸핑되었거나 스푸핑되었는지 여부를 검증하기 위해 분산 애플리케이션에서 전송되는 협업 데이터의 해시값, 작성자, 데이터 크기 등의 정보를 저장합니다. Function Gateway 컨트랙트는 워크스페이스 컨트랙트를 통해 받은 협업 데이터 요청을 받아 블록체인 네트워크 외부로 전달하는 역할을 합니다. 본 섹션에서는 BSWork의 오프 블록체인 저장소에 저장된 협업 데이터 파일과 관련된 기능을 수행하는 프로세스를 설명합니다.

업로드된 파일의 정보와 해시값은 Workspace 컨트랙트에 저장되며, 저장 후 REST API 서버로 전송하는 과정을 수행합니다. 파일이 탈중앙화 애플리케이션에 업로드되어 블록체인 외부 저장소에 저장되는 과정은 다음과 같습니다. 또한, BSWork의 분산 애플리케이션은 워크스페이스 컨트랙트를 통해 저장될 파일의 ​​접근키를 확인하여 블록체인 외부 저장소에 저장된 파일을 다운로드하게 됩니다.

이후 배포된 애플리케이션은 워크스페이스 계약을 통해 파일에 대한 사용자의 권한을 확인하고 위에서 설명한 업로드 과정과 유사한 과정을 통해 액세스 토큰을 받습니다. REST API는 수신된 액세스 토큰과 서명 정보를 통해 사용자를 인증하고 웹 서비스 요청에 대한 응답으로 파일을 전달합니다. BSWork의 오프 블록체인 저장소에 저장된 파일 삭제와 관련된 인증 프로세스는 작업 공간 계약과 REST API 서버에서 두 단계로 수행됩니다.

그림  6  JSFlow의  구조
그림 6 JSFlow의 구조

BSWork의 구현

  • BSWork의 컨트랙트
  • JSFlow 라이브러리
  • Gateway 서버
    • BSWork의 Gateway 컨트랙트
    • Gateway 서버 구현
  • 오프 블록체인 스토리지 연동을 위한 REST API 서버
  • BSWork에서의 참여자 기여도 평가 서비스
  • 분산 어플리케이션 동작화면
  • BSWork의 유용성 검증

등록을 완료한 사용자는 GroupStore 컨트랙트의 createGroup() 함수를 이용하여 자신만의 협업 그룹을 생성할 수 있습니다. WSFactory 계약의 createGroupWorkspace() 함수는 GroupStore 계약에 의해서만 호출되며 그룹 작업공간에 대해 GroupWorkspace 계약이 생성된 후 생성된 계약 정보를 반환합니다. 협업 그룹별로 UserGroup 계약과 GroupWorkspace 계약이 생성되어 구성원 및 그룹 협업 데이터를 관리하는 기능을 제공합니다.

GroupWorkspace 계약은 협업 그룹 구성원 간의 협업 리소스 및 결과의 저장 및 공유 등 협업 데이터입니다. WSFactory createGroupWorkspace 새 그룹 작업 공간 계약 생성 표 1 사용자 및 그룹과 관련된 계약 및 주요 기능. Workspace 계약 주소, 그룹 리더 주소 새 그룹 생성 E_changeGroupOwner 그룹 계약 주소, 새 그룹 리더 주소,

그룹 계약 주소 E_deleteGroup 그룹 주소 그룹 리더를 삭제합니다. E_downloadFile 그룹 계약 주소, 다운로드 요청자 주소입니다. 블록체인 네트워크의 스마트 계약을 통해 새로운 그룹 또는 특정 그룹이 생성됩니다.

REST API 서버는 파일 업로드 요청을 받으면 Cassandra DB에 저장된 그룹 및 그룹 멤버 정보를 통해 요청자의 권한을 확인합니다. BSWork 사용자 등록을 완료한 협업 참가자는 그룹 목록 화면에서 새로운 그룹을 생성할 수 있습니다. BSWork를 통해 타겟그룹별로 진행되는 협업 활동은 다음과 같습니다.

그림  13  BSWork에서의  JSFlow  라이브러리  활용  구조
그림 13 BSWork에서의 JSFlow 라이브러리 활용 구조

결론

Meeuw, "A decentralized sharing application running a smart contract on the ethereum blockchain.", Proceedings of the 6th International Conference on the Internet of Things, p. In: Proceedings of Convergence Research Letters (2017), Vol. Lee, "Bspace: a group workspace on the Ethereum blockchain with off-block storage", International Journal of Advanced Computer Research (2019) Vol.

Shensheng, Modeling workflow process models with state table, Proceedings of the 10th International IEEE Conference and Workshop on the Engineering of Computer-Based Systems (2003), pp.

ABSTRACT

BSWork: A Blockchain-based Collaborative Service Supporting Workflow

Gambar

그림  목차  ⅳ
그림  2  블록체인의  구조
그림  3  분산  어플리케이션의  동작  구조
그림  4  BSpace의  이더리움  스마트  컨트랙트  구조
+7

Referensi

Dokumen terkait

130 RESULT AND DISCUSSIONS The Structure of Comic : Syntax Aspects Printed Comic Gundala: Destiny consists of 12 chapters with titles based on the nicknames from Pengkor and his