Smallet Connector

대부분의 이더리움 Dapp들은 메타마스크를 표준처럼 사용하고 있다. 즉 결제를 하고 그 결과를 기다리고 하는 작업들을 일반 지갑으로 할 경우 편리성이 떨어져서 실제 운영이 어렵기 때문이다. Dapp을 사용하지 못한다면 이더리움을 구해서 고작 거래소에서 사고 팔고 하는거 말고는 할 것이 별로 없다. 그러니 지갑은 필수적으로 DApp을 지원해야 한다.

그래서 이더리움 스몰렛에서 메타마스크와 호환되는 결제 기능을 만들어 보기로 하였다. 메타마스크는 web3라는 개체를 웹페이지에 삽입하는 방법을 사용한다. 웹 프로그램은 이 개체가 있으면 메타마스크가 있다고 보고 web3에 붙은 API들을 사용하는 것이다.

메타마스크 소스에서 대부분의 UI를 다 없애고 실제 결제 부분을 안드로이드 앱으로 통신하여 앱에서 실제 결제 행위가 이루어지 지도록 하는 것이 구현의 핵심이다.

만들어진 크롬 확장프로그램은 여기에서 설치하면 된다. 스몰렛 커넥트라고 이름 지었다.

설치가 되면 아이콘을 눌러서 팝업을 연다.

   

Connet to Smallet 버튼을 누르면 그림과 같이 QR 코드가 나오는데 이더리움 스몰렛 앱에서 메뉴>지갑접속을 해서 이 QR 코드를 읽는다. 접속이 되면 아래 화면과 같이 계좌번호, 디바이스 이름 등이 나타난다.

모든 준비가 되었다. 이제 Dapp을 실행하여 실전을 해볼때다. 현재 어느정도 활성화된 Dapp은 거래소, 도박, 게임 정도이다. Dapp 종류들은 https://dappradar.com/ 에서 찾아 볼 수 있다. 사용자수나 거래 대금등으로 순위를 매겨서 볼 수 있다. 아직 거래소나 도박 외에는 별로 활성화된 DApp이 없음을 알 수 있다.

https://www.blockasino.com/ 에서 바카라 비슷한 게임을 해보자.

주사위 3개를 던져서 합계를 가지고 결정되는 도박이다. 그림과 같이 원하는 판에다 이더를 걸면된다. 중앙의 3개가 같은 숫자가 나오는 부분에 걸지 않는다면 세개가 같은 숫자가 나오면 하우스가 먹는 방식이다. 그림은 SMALL에다 0.03 이더를 베팅한 경우이다. SMALL은 세개의 주사위 합이 4~10 사이로 나오면 두배를 먹게 된다. 3개가 같은 숫자가 나오는 경우를 제외하면 기대값은 100%이다.

“PLACE BET!” 버튼을 누르면 이더리움 스몰렛 앱에 결제 요청이 오면 모든 실행이 제대로 되고 있는 것이다. 결제를 해주면 그 다음은 알아서 돌아간다. 블록체인에 기록되는데 시간이 걸리므로 한참 기다려야한다. 오래 기다려도 안되면 etherscan.io에서 본인 계정을 확인해 보면 진행상황을 알 수 있다.

이더를 소비하지 않고 테스트를 해보는 방법은 메시지 사인을 보내 보는 것이다. https://smallet.co/contracts2/#/sign-message 에서 테스트로 해 볼 수 있다.

모바일 브라우저에서도 가능한데, 크롬은 모바일 버전에서 확장프로그램을 지원하지 않으므로 크롬 확장 프로그램을 지원하는 Yandex 브라우저를 설치해서 해 볼 수 있다.

도박이니 만큼 절대 많은 돈을 걸지 않도록 주의 한다. 특히 하우스가 떼가는 수수료가 적으것 같지만 반복적으로 베팅할 경우 상당히 큰 금액이라 장기적으로 플레이 하면 당연히 돈을 다 잃게 되어 있다. 컨트랙트에 의해 움직이는 도박은 반칙은 없다. 즉 하우스가 나를 속이지는 않지만 컨트랙트 자체의 룰이 장기적으로 플레이어가 돈을 다 잃는 구조로 되어 있다는 점을 잊어서는 안된다. 거의 모든 가상화폐 도박장이 동일하다. 많은 이더리움 도박장들이 1% 정도의 수수료가 싸다고 하지만 주식이나 가상화폐 거래 수수료가 불과 0.0x % 대인것을 감안하면 매우 비싼 것이다.

Leave a Reply

Your email address will not be published. Required fields are marked *