RIF Enveloping 웨비나: 주요 포인트

연설자: Diego Masini, IOVLabs의 연구 및 혁신부 책임자 | Raul Laprida, IOVLabs 수석 연구원
2021년 5월 12일
RIF Enveloping Webinar: Key Takeaways

연설자:

  • Diego Masini, IOVLabs의 연구 및 혁신부 책임자
  • Raul Laprida, IOVLabs 수석 연구원

Diego Masini가 이끄는 연구 및 혁신부는 2021년 4월 26일 진행된 웨비나를 통해 RSK 커뮤니티에 RIF Enveloping 프로젝트를 소개하였습니다.

RIF Enveloping 팀의 구성원:

  • Diego Masini
  • Raul Laprida
  • Julian Len

RIF Enveloping이 탄생하게 된 주요 동기는 사용자가 원하는 토큰을 사용해 거래 수수료를 낼 수 있게 함으로써 UX를 간소화해 DeFi 채택의 장애물을 허물려는 것이었습니다. RIF Enveloping은 블록체인 고유 화폐의 필요성을 없애 사용자가 원하는 토큰만을 사용할 수 있게 함으로써 새로운 사용자의 온보딩을 더 쉽게 합니다.

기능:

  • 사용자는 네트워크 내 토큰의 대가로 거래 수수료를 지불하고자 하는 스폰서를 찾을 수 있습니다.
  • 스폰서에게 토큰을 지불하면서 거래 세부 사항과 서명이 포함된 메시지를 보냅니다.

이때 스폰서는 본인에게 전송된 거래가 네트워크에 제출되었는지를 확인하는 것에 대한 인센티브를 받아야 하고, 사용자가 스폰서의 결제 비용에 부정행위를 하지 않도록 사용자를 위한 인센티브도 필요합니다.

가스 스테이션 네트워크(GSN)는 이러한 문제 유형의 해결책이 될 가능성이 있습니다. GSN의 문제는 단점 탓에 RSK 네트워크에 맞게 조정할 수 없다는 것입니다.

GSN의 단점

  • GSN을 사용하려면 기존 컨트랙트를 조정해야 함
  • 사용자에게 비싼 솔루션

위에 언급한 해당 문제를 해결하기 위해 GSN을 재디자인하게 되었으며, 이를 Enveloping이라 합니다.

개선 사항

  • 사용자에게 Enveloping 준비가 끝난 주소를 제공함(스마트 월렛). 이는 해당 사용자의 EOA가 통제함.
  • 불필요한 컨트랙트 상호작용을 없애고 남은 컨트랙트를 최적화할 수 있게 구조를 변경함.

RIF Enveloping 디자인

RIF Enveloping은 사용자에게 enveloping 준비가 끝난 주소를 제공할 수 있게 설계되었습니다. 이때 스폰서는 사용자가 거래를 제출하고자 할 때만 스마트 월렛을 사용할 수 있습니다. 해당 스마트 월렛은 스폰서가 확실하게 대가를 받을 수 있는 방식으로 설계되었습니다. RSK 네트워크 사용자는 스스로도 작업이 가능할 만큼의 RBTC를 모으고 나서 언제든지 Enveloping 사용을 중단할 수 있습니다.

메커니즘

거래 흐름 릴레이

거래 흐름 릴레이

위의 이미지에서 사용자는 거래 수행에 필요한 모든 정보와 스폰서에게 대금을 지불하기 위해 필요한 모든 정보에 대한 요청을 수집합니다. 사용자는 relayProvider(Web3 제공 업체)를 통해 이 정보를 릴레이 서버에 전송합니다. 그 후 서버는 사용자가 제공한 정보를 페이로드로 활용해 거래를 생성하고, 이 거래를 오프 체인 콜로 relayVerifier에 전송해 거래가 성공적이며 제대로 형성되었음을 확인합니다. 요청이 유효하다고 판단한 서버는 이 요청을 relayHub에 보냅니다. relayHub은 릴레이 워커 계정을 사용하는 온체인 컨트랙트입니다. 거래를 받은 relayHub은 거래를 열어 페이로드를 받고, 이를 스마트 월렛 프록시(프록시는 토큰 컨트랙트에 비용을 지불함)에 제출해 토큰으로 relayWorker가 사용한 비용을 배상한 후, 대상 컨트랙트에 이를 수행합니다.

사용자가 거래를 수행하고자 할 때도 이와 비슷한 작업 흐름을 따르게 됩니다.

거래 시작 플로우

거래 시작 플로우

사용자는 거래 시작에 필요한 모든 정보에 대한 요청을 생성합니다. 여기에는 비용이 포함됩니다. RelayServer는 deployVerifier로 거래 시작이 성공적임을 확인하고, 요청이 유효하다면 relayWorker로 relayHub 컨트랙트에 요청을 전달합니다. 대신 여기서 스마트 월렛은 존재하지 않으므로, 스마트 월렛과 직접 소통하는 대신 SmartWalletFactory와 소통하게 됩니다. 스마트 월렛에는 프록시를 사용해 솔루션의 비용을 더욱 낮추었습니다. 스마트 월렛 팩토리는 실제 스마트 월렛의 사용을 개시하고 토큰으로 릴레이 워커에 비용을 지불합니다.

Raul Laprida는 그 후 해당 기능을 선보이는 라이브 솔루션의 시범 데모를 진행하였습니다.

사용 시작하기

dApp 프로젝트에 enveloping을 사용하고 싶으신가요?

RIF Enveloping 문서Enveloping 사용자 가이드를 확인하세요.

주요 용어 설명은 용어집 섹션을 참고하세요.

Follow our news!