[논문 리뷰] An Empirical Study of Blockchain-based Decentralized Applications
이 논문은 DAppRadar, State of the DApps, 그리고 Etherscan의 데이터를 활용하여 이더리움 기반 탈중앙화 애플리케이션(dapps) 734개에 대한 종합적인 실증 연구를 제시한다. 연구에서는 dapp의 인기, 스마트 컨트랙트 구성, 오픈소스 관행, 코드 재사용을 분석한다. 결과적으로 dapp의 인기 분포는 파레토 분포를 따르며, 오픈소스 스마트 컨트랙트는 더 높은 인기와 관련이 있고, 코드 재사용은 일반적임을 확인하였다. 이는 개발자와 사용자에게 dapp 설계 및 기존 애플리케이션에서의 이전 전략에 실질적인 통찰을 제공한다.
A decentralized application (dapp for short) refers to an application that is executed by multiple users over a decentralized network. In recent years, the number of dapp keeps fast growing, mainly due to the popularity of blockchain technology. Despite the increasing importance of dapps as a typical application type that is assumed to promote the adoption of blockchain, little is known on what, how, and how well dapps are used in practice. In addition, the insightful knowledge of whether and how a traditional application can be transformed to a dapp is yet missing. To bridge the knowledge gap, this paper presents a comprehensive empirical study on an extensive dataset of 734 dapps that are collected from three popular open dapp marketplaces, i.e., ethereum, state of the dapp, and DAppRadar. We analyze the popularity of dapps, and summarize the patterns of how smart contracts are organized in a dapp. Based on the findings, we draw some implications to help dapp developers and users better understand and deploy dapps.
연구 동기 및 목표
- 실제 블록체인 기반 탈중앙화 애플리케이션(dapps)의 실용적 사용 및 특성 이해를 위한 것이다.
- dapp 인기, 오픈소스 관행, 코드 기반 크기(Lines of Code, LoC) 간의 관계를 조사하기 위한 것이다.
- dapp 스마트 컨트랙트 및 클라이언트 사이드 코드 내에서의 코드 재사용 패턴을 검토하기 위한 것이다.
- 기존 애플리케이션을 dapps로 전환하기 위한 개발자에게 실질적인 지침을 제공하기 위한 것이다.
- dapp 마켓플레이스, 사용자, 연구자들이 dapp 설계 및 수용에 대해 데이터 기반의 통찰을 얻을 수 있도록 하기 위한 것이다.
제안 방법
- 세 개의 오픈 dapp 마켓플레이스인 DAppRadar, State of the DApps, 그리고 이더리움 블록체인 탐색기 Etherscan에서 데이터를 수집하였다.
- dapp 카테고리, 고유 사용자 수, 거래량, 거래 빈도를 포함한 734개 dapp에 대한 상세한 데이터를 확보하였다.
- GitHub와 Etherscan에서 2,740개의 스마트 컨트랙트 소스 코드 및 클라이언트 사이드 코드를 추출하고 분석하였다.
- 기술통계 및 분포 분석을 통해 다양한 카테고리와 지표에서 dapp 인기의 특성을 규명하였다.
- 고도의 트래픽을 유치하는 dapp을 대상으로 사례 연구를 수행하여 스마트 컨트랙트 아키텍처 및 마이그레이션 패턴을 분석하였다.
- 코드 유사도 검출 기법을 적용하여 다양한 dapp 간에 코드 수준의 재사용 패턴을 식별하였다.
실험 결과
연구 질문
- RQ1dapp 인기는 다양한 카테고리에서 어떻게 분포되어 있으며, 고유 사용자 수, 거래 수, 거래량 등의 지표 중 어느 것이 가장 높은 집중도를 보이는가?
- RQ2스마트 컨트랙트 및 클라이언트 사이드 코드를 오픈소스화하는 것이 dapp 인기에 어느 정도 영향을 미치는가?
- RQ3dapp 스마트 컨트랙트 및 프론트엔드 코드에서 코드 수준의 재사용은 얼마나 흔한가, 그리고 어떤 목적을 위해 사용되는가?
- RQ4기존 애플리케이션을 dapp으로 전환할 때 고려해야 할 주요 기술적 및 아키텍처적 고려사항은 무엇인가?
- RQ5성공적인 dapps 내 스마트 컨트랙트 조직의 구조적 패턴은 무엇인가?
주요 결과
- dapp 인기는 카테고리, 고유 사용자 수, 거래 수, 거래량 모두 파레토 분포를 따르며, 소수의 dapp이 활동의 대부분을 차지한다.
- 스마트 컨트랙트 소스 코드를 오픈소스화하는 것은 dapp 인기와 유의미하게 관련되어 있으며, 투명성이 사용자 신뢰와 수용을 증진시킨다는 점을 시사한다.
- 코드 수준의 재사용은 dapps에서 흔히 발생하며, 특히 스마트 컨트랙트와 프론트엔드 로직에서 두드러지며, 功能 일관성 유지 및 빠른 개발을 위해 사용된다.
- dapps의 스마트 컨트랙트는 주로 토큰 관련 데이터를 관리하기 위해 사용되며, 가스 비용 제약으로 인해 블록체인으로 이관 가능한 연산의 범위는 제한적이다.
- 사례 연구 결과, 핵심 상태 관리 및 토큰 연산만 일반적으로 스마트 컨트랙트로 이전되며, 복잡한 비즈니스 로직은 대부분 오프체인에 유지된다.
- 도박 카테고리의 dapps는 높은 재사용률을 보이지만 동시에 높은 위험도를 지니므로, 사용자들이 주의 깊게 코드를 검토해야 한다.
더 나은 연구,지금 바로 시작하세요
연구 설계부터 논문 작성까지, 연구 시간을 획기적으로 줄여보세요.
카드 등록 없음 · 무료 플랜 제공
이 리뷰는 AI가 만들고, 인간 에디터가 검토했습니다.