상세검색
최근 검색어 전체 삭제
다국어입력
즐겨찾기0
149293.jpg
학술저널

Node.js를 이용한 다중 플랫폼 이더리움 월릿 서비스

A Multi-platform Ethereum Wallet Service using Node.js

  • 47

원칙적으로 이더리움 기반의 분산 어플리케이션(Dapp) 사용자는 Dapp 서비스를 이용하기 위해 Dapp과 연동된 이더리움 월릿을 필요로 한다. 현재 사용자는 일반적으로 기기 환경을 위하여 특별히 개발된 월릿이나, Geth와 같은 이더리움 노드가 제공하는 월릿 서비스를 사용한다. Dapp은 사용자의 다양한 기기와 다양한 운영체제 환경에서 동작하는 것이 바람직하며, 따라서 월릿 서비스도 다양한 환경에서 동작하는 것이 바람직하다. 그러나 기존의 이더리움 월릿 서비스는 Dapp의 실행환경에 대한 의존성이 높기 때문에 이식성 있는 Dapp을 개발하는데 어려움이 있다. 또한, Geth에서 제공하는 월릿 서비스를 이용해 월릿을 생성할 경우 연동된 이더리움 노드의 내부 월릿 저장소에 월릿이 저장된다는 보안적 이슈가 발생한다. 이러한 문제점을 해결하기 위해 Dapp의 실행환경과 독립적으로 동작하는 월릿 서비스가 필요한 실정이다. 본 논문에서는 Node.js 실행을 지원하는 모든 환경에서 동작 가능한 Node.js 기반의 이더리움 월릿 서비스를 개발하고, 이를 이용한 다중 플랫폼 월릿을 제안한다. 개발된 이더리움 월릿 서비스는 REST API 형태로 개발되었으며 Dapp이 실행되는 기기에 독립적으로 동작한다. 개발된 서비스는 월릿을 사용자의 기기에 생성하고 관리하며, 보관된 월릿의 개인키를 이용하여 트랜잭션을 서명하고, 서명된 트랜잭션을 연결된 이더리움 노드에 전송하는 API 실행을 지원한다.

In principle, to use Ethereum decentralized applications(Dapp) services, users require an Ethereum wallet in association with those Dapps. As of now, users typically use the wallets specially designed for the device environment, or the wallet service provided by an Ethereum node such as Geth. Since it is desirable for Dapps to run over a variety of user devices and operating system environments, it is also recommended that the related wallet service be operated in all of these environments. But, since the existing Ethereum wallet service is highly dependent on Dapps’ running environment, it is difficult to develop portable Dapps. In addition, when a wallet is created using the wallet service provided by Geth, there is a security issue that the wallet is stored in the internal wallet storage of the Geth node. To solve these problems, it is necessary to provide a wallet service that operates independently of Dapps’ running environments. In this paper, we develop an Ethereum wallet service based on Node.js that can run on any environment supporting Node.js, and present a multi-platform wallet using it. The developed Ethereum service was developed in the form of REST API and runs independently of the devices running Dapps. The developed service supports the execution of REST APIs that creates and manages wallets on the user s device, signs the transaction using the desired wallet‘s private key, and sends the signed transaction to the associated Ethereum node.

1. 배경지식

2. 이더리움 월릿 서비스 설계

3. 이더리움 월릿 서비스 활용

4. 결론

로딩중