Luniverse User Guide

루니버스 사용을 환영합니다!
이 페이지에서는 루니버스 서비스 사용 가이드를 제공합니다.
루니버스를 사용하여 다양한 디앱(DApp)을 제작해보세요.

Welcome to Luniverse!
This page provides a guide to using the Luniverse service.
Try to create various DApps by utilizing Luniverse.

Get Started

어카운트 브릿지(Account Bridge) 이용하기

어카운트 브릿지를 이용하여 기존 서비스의 회원체계 변경 없이 App을 DApp으로 전환합니다.

기존의 어플리케이션이나 서비스에서 블록체인을 활용한 Dapp(Decentralized Application)으로 전환하려는 경우, 기존의 회원체계에서 관리하지 않는 사용자의 블록체인 지갑 주소에 대한 정보를 직접 관리해야 하기 때문에 기존의 회원체계를 수정하고 이를 관리해야 하는 불편함이 있습니다.

루니버스 어카운트 브릿지(Luniverse Account Bridge)를 사용하면 기존의 회원체계를 변경하지 않고도 사용자의 지갑 주소를 호출하여 루니버스 사이드 체인에서 트랜잭션을 발생시킬 수 있습니다.

현재 Luniverse Account Bridge는 Wallet Bridge의 루니버스 PKMS 상품을 이용하시는 DApp사만 사용하실 수 있습니다. 외부 Wallet을 연동하여 사용하시는 경우 Account Bridge를 사용하실 수 없으니 이 부분 유의하시기 바랍니다.

유저 지갑 주소 발급하기

  1. 유저의 지갑 주소를 생성하기 위해 TX API를 호출 합니다. curl을 이용하는 경우 다음과 같이 API를 호출할 수 있습니다.
curl -X POST 'https://dev-api.luniverse.io/tx/v1.0/wallets' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer DAPP_API_KEY' \
-- data '{
   "userKey": "...",
  "walletType": "LUNIVERSE"
}'
  1. 유저의 지갑 주소 발급 API를 호출하기 위해 DApp의 API와 사용자의 userKey, walletType을 지정합니다. 전송된 userKey는 Luniverse Account Bridge에서 해당 유저의 지갑 주소와 매핑하여 보관하게 됩니다.
    • 본 가이드에서는 신규로 발급할 정보가 다음과 같다고 가정합니다.
DApp API Key : KcUSCE7iCZoJfud8iLdmBLdZBrRyVai4e5o6x8d9c4ZpYu2h5mwtmhEPm6285f23
userKey : aacff550-4fa7-43c5-9f31-554db722e3a5
walletType : LUNIVERSE
  1. 지정된 정보를 포함하여 다음과 같이 API를 호출합니다.
curl -X POST 'https://dev-api.luniverse.io/tx/v1.0/wallets' \
--header 'Content-Type: application/json' \
--header 'Authorization: Bearer KcUSCE7iCZoJfud8iLdmBLdZBrRyVai4e5o6x8d9c4ZpYu2h5mwtmhEPm6285f23' \
--data ' 
{
   "userKey": "aacff550-4fa7-43c5-9f31-554db722e3a5",
  "walletType": "LUNIVERSE"
}' 
  1. 요청이 정상 처리되면 다음과 같이 API 호출 결과를 받게 됩니다. 호출 결과의 'address'는 발급된 사용자의 지갑 주소를 의미하며 API 호출 시 전송한 userKey와 함께 매핑되어 Luniverse Account Bridge에 저장됩니다.
{
  "result": true,
  "data": {
    "address": "0xab9ccaBe5075273d0D422236176ffb28A15C470F"
  }
}

어카운트 브릿지 사용하기

  1. 트랜잭션을 생성하기 위한 REST API 호출 시 지갑 주소가 들어갈 자리에 지갑 주소 생성 시 사용 한 userKey를 입력하여 호출합니다.

아래 Alice가 Bob에게 1토큰을 전송하는 경우, API호출은 다음과 같이 변경됩니다.
from에는 송신자인 Alice의 userKey를 입력하고, receiverAddress에는 수신자인 Bob의 userKey를 입력합니다.

curl -X POST 'https://stg-api.luniverse.io/tx/v1.0/transactions/transfer' \
--header 'Authorization: Bearer DApp_API_KEY' \
--header 'Content-Type: application/json' \
--data '{   
     "from": {
                    "userKey": "aacff550-4fa7-43c5-9f31-554db722e3a5"
                    "walletType" : "LUNIVERSE"
               },
     "inputs": { 
               "receiverAddress": {
                    "userKey" : "bd99de9e-b8dd-4cfc-87ce-1088427749ff",
                    "walletType" : "LUNIVERSE"
               },
               "valueAmount": "1000000000000000000" 
     }
}'
  1. 1과 같이 API가 호출되면 Luniverse Transaction Service 는 루니버스에 등록된 해당 DApp 사용자의 지갑 주소를 검색합니다.
  2. 루니버스는 검색된 지갑 주소를 통해서 트랜젝션의 userKey를 사용자의 지갑 주소로 변경하여 트랜잭션을 요청합니다.
  3. 요청된 트랜잭션을 PKMS 서비스를 통해 서명 후 실행하고 해당 트랜잭션 Hash를 DApp사로 반환합니다.

어카운트 브릿지(Account Bridge) 이용하기


어카운트 브릿지를 이용하여 기존 서비스의 회원체계 변경 없이 App을 DApp으로 전환합니다.

Suggested Edits are limited on API Reference Pages

You can only suggest edits to Markdown body content, but not to the API spec.