brunch

You can make anything
by writing

C.S.Lewis

by SKKRYPTO Nov 07. 2019

[Skkrypto X Luniverse] 공부노트

User Management Service 이용하기

안녕하세요 Skkrypto User guide 팀 입니다.

지난 시간엔 remix로 스마트 컨트렉트 배포하기와 Token 발행을 해보았는데요. 오늘은 User Management Service 이용하기를 리뷰해보겠습니다.

루니버스에서는 아래와 같이 3가지 서비스를 제공하고 있는데요. 

1.     월렛 브릿지

2.     어카운트 브릿지

3.     볼트 서비스

먼저 월렛 브릿지에 대해 알아보도록 하겠습니다.

위 설명과 같이 루니버스는 자체 지갑을 통해 DApp들이 손쉽게 사용자들에게 다가갈 수 있도록 도와주고 있는데요. 

위와 같이 두개의 종류의 예시가 있습니다. 먼저 PKMS 연동하기를 시도해보겠습니다.

Luniverse PKMS 는 사용자의 개인키(Private Key)를 발급하고 서버상에서 안전하게 관리/서명할 수 있는 서비스입니다. 루니버스는 DApp에서 생성된 사용자의 개인키(Private Key)를 안전하게 보관하며 DApp 이 서명을 요청한 경우 서버상에 안전하게 보관중인 개인키(Private Key)를 이용해서 트랜잭션에 사인합니다. 루니버스 PKMS를 사용할 시 최종 사용자(End User)는 트랜잭션에 서명할 때마다 개인키를 입력하거나 키스토어 파일을 읽어오고 패스프레이즈를 입력할 필요가 없기 때문에 DApp 의 사용성이 크게 개선되며, 최종 사용자가 개인키를 분실하여 발생하는 리스크 역시 방지됩니다.

정리하자면, PKMS 지갑을 사용하면 DApp과 End User 둘 다 매우 편해진다라고 할 수 있겠습니다. 

PKMS와 연동하는 방법은 User Guide에서 DApp의 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"

트랜잭션 서명하기 또한 다음과 같이 코드를 제공하고 있습니다.

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": "0xab9ccaBe5075273d0D422236176ffb28A15C470F",

     "inputs": { 

               "receiverAddress": "0x3b1f1faa2bb0b913f9c50723d014c1bccc9b8020",

               "valueAmount": "1000000000000000000" 

     }

}'

{"result":true,

   "data":{

      "txId":"1550627053413683434",

      "txHash":"0x48a2392f58665252fe3a3f808b93110febf94daaef10a04e130beb212d5d0947",

     "reqTs":1550627053256

   }

}

다음으로 저는 메타마스크와 루니버스 DApp 연동하기를 실습해보기 위해 메타마스크를 다운받았습니다. 메타마스크는 구글에서 손쉽게 다운로드하여 확장프로그램 추가하기를 누르게 되면 지갑을 생성하게 됩니다. 이 때 메타마스크는 지갑의 복구키로 12개의 단어를 주는데요. 이 단어들은 혹시 지갑을 분실하셨을 때 찾을 수 있는 유일한 방법이니 꼭 따로 메모해 놓으시기 바랍니다. 

지갑 생성까지 완료하셨다면 위와 같은 화면을 보시게 되는데요. 

본격적으로 연동할 체인을 선택하여 Overview로 들어가줍니다. 그리고 연동하고자 하는 노드를 선택해줍니다. 저는 side chain validator를 선택했습니다. 

다음과 같은 화면에서 RPC HTTPS Endpoint를 복사하여

위와 같이 우측 상단의 여우 아이콘을 클릭, 이더리움 메인넷을 클릭하면 하단에 사용자 정의 RPC가 나오는 것을 확인할 수 있습니다. 이 후  [New Network IP]란에 위에서 복사해준 값을 입력해주면 연결이 완료됩니다.


다음 시간에는 그 이후의 User Management Service를 리뷰하도록 하겠습니다.


 “위 글은 람다 256 루니버스의 Dev Plan을 무료로 제공받아 작성하였습니다”

작성자: 박주규/Jake(jukyu1786@gmail.com)


브런치는 최신 브라우저에 최적화 되어있습니다. IE chrome safari