UX Framework for Wallet #2 (Be UXer Team)
서울대학교 블록체인 학회 디사이퍼(Decipher)에서 ‘Wallet UX Framework’를 주제로 한 학기동안 Be UXer팀에서 준비하고 발표한 내용을 담았습니다. 본 글은 Wallet의 개념과 함께 여러 Wallet service에 대한 리서치를 진행하고, 리서치 내용을 기반으로 Wallet을 Technological UX관점에서 평가할 수 있는 Framework를 도출 및 제시하였습니다.
Author
백용기(@grintkermit), 고준호(@whingo90), 여석원(@sknslatt), 정재환(@alexjhwan)
Seoul Nat’l Univ. Blockchain Academy Decipher(@decipher-media)
Reviewed By (@박찬우, @RoHu)
[UX Framework for Wallet series]
#1 Wallet UX Research & Paper review
#2 Wallet service research & UX Framework
#3 Wallet evaluation & Discussion
2–3. Wallet service research
Wallet Technological UX Framework를 도출하기 위해 다양한 유형의 12개 지갑을 분석했습니다. 대표적으로 많이 사용되는 HD wallet 6개(Metamask, Phantom, Coinbase Wallet, Keplr, Trust, Klip)와 SCW 5개(Safe, Argent X, Unipass, Pier, Ambire), 그리고 MPC wallet 1개(Zengo)를 선택했습니다. 리서치를 진행한 12개의 지갑들 중 일부 지갑 서비스를 간단하게 살펴보겠습니다.
Metamask
- Account creation
지갑 사용을 위해 계정을 생성할 경우, 사용자는 먼저 지갑을 왜 보호해야 하는지 영상과 글을 통해 지갑에 대한 개념을 학습할 수 있습니다. 또한 사용자 진입장벽을 낮추고자 Seed phrase를 사용자가 생략하고 지갑을 생성할 수 있습니다. - Wallet function
메인 페이지를 살펴보면 EVM 계열 네트워크 목록 제공, RPC 커스텀, IPFS 게이트웨이 추가 등 다양한 지갑 설정 관련 기능들을 제공하고 있습니다. 더 나아가 상태 로그(계정주소와 거래내역)를 JSON파일로 다운로드 받을 수 있으며, 동시에 사용자 데이터 백업 혹은 계정 가져오기를 위해 Private key나 Seed phrase가 아닌 JSON 파일로 백업이 가능합니다. 그리고 개인 정보 및 보안 측면에서도 다양한 기능(활동 및 논스 데이터 지우기, 피싱 감지, 수신거래 표시 등)을 제공하고 있습니다. 또한 자체적으로 자산 포트폴리오 서비스를 운영하고 있으며, Real-time gas price 정보와 EIP-1559 Gas control, Bridge와 같은 기능들을 제공하고 있어 사용자 입장에서 필요하고 유용한 기능들을 제공하고 있습니다. - dApp connection
마지막으로 dApp연동 측면에서도 대부분의 EVM dApp에서 1 순위 연결 옵션으로 제공하고 있으며, 계정 연결에 있어 모든 계정을 총괄적으로 연결하거나, 연결 중 새로운 계정을 생성하여 바로 연결하는 등 사용자에게 편리한 기능들을 제공하고 있음을 확인할 수 있습니다.
Phantom
- Account creation
팬텀 지갑의 경우, 계정 생성을 위해 Seed phrase를 무조건적으로 확인해야 합니다. 또한 원활한 지갑 사용을 위해 계정 생성 후 키보드 단축키와 Twitter, 도움말 센터 안내와 같은 지갑 사용 가이드를 제공하고 있음을 확인할 수 있습니다. - Wallet function
메인 페이지의 경우, 메타마스크와 상당히 유사하지만 그 중 차이점들은 다음과 같습니다. 먼저 EVM 계열 뿐만 아니라 Solana 네트워크를 지원하며(Multi protocol), 지갑 내 SOL Staking 기능을 제공하고 있어 검증자와 예상 APY 정보를 쉽게 확인 가능합니다. 또한 사용자가 보유한 NFT를 활용하여 계정 프로필 이미지를 설정하거나, 보유한 NFT를 즉시 NFT Marketplace에 리스팅할 수 있습니다. - dApp connection
dApp의 경우, 대부분의 Solana dApp에서 대부분 1 순위 옵션으로 제공되고 있음을 확인할 수 있지만, 그 외 별다른 연결 기능은 제공되지 않습니다.
Keplr
- Account creation
Keplr 지갑은 계정 생성 시 다른 HD wallet들과는 다르게 Social login(Google)을 선택할 수 있는 기능을 제공합니다. Social login으로 계정을 생성하면 개인 키 보관을 안내하지만, 필수사항은 아닙니다. 이 방식을 통해 사용자는 일반적인 HD wallet에 비해 쉽고 간편하게 계정을 생성할 수 있습니다. - Wallet function
메인 페이지의 경우, 몇 가지 차별점으로 IBC를 지원하며, 인터체인 내 스테이킹된 모든 자산을 조회 및 스테이킹 보상을 수령하는 기능도 지원하고 있습니다. 또한 자체적으로 운영하는 서비스인 Keplr Dashboard를 통해 사용자는 지갑을 통해 편리하게 자산을 관리할 수 있습니다. 이 외에도 Gas control, IBC transfer 등 사용자에게 유용한 기능들을 제공하고 있습니다. - dApp connection
dApp 연결의 경우, IBC dApp에서 대부분 1 순위 옵션으로 제공되고 있음을 확인할 수 있습니다.
Safe
- Account creation
Multi-sig를 지원하는 Safe의 경우, 계정 생성을 위해 기존 HD wallet을 연결해야 합니다. 즉, HD wallet이 필요하기 때문에 SCW임에도 불구하고 Seed phrase를 저장해야 한다는 불편함이 존재합니다. 연결 후 SCW 네트워크 및 이름을 설정하며, 지갑 서명자(Owner)와 임계값 서명(Threshold) 수를 설정합니다. Safe의 경우 모든 과정을 입력 후 최종적으로 리뷰 페이지를 제공함으로써 사용자의 실수를 방지하고 있습니다. 리뷰 후 SCW 생성을 위해 컨트랙트를 배포해야 하므로 연결한 HD wallet으로부터 Gas fee를 지불해야 합니다. - Wallet function
Safe는 Custom contract기능을 통해 Transaction batch와 같은 커스텀을 지원하고 있으며, Spending limits 설정, Off-chain signature와 같은 SCW이기에 지원 가능한 기능들을 제공하고 있습니다. - dApp connection
dApp 연결의 경우, 1순위 옵션은 아니지만, 대부분의 dApp에서 WalletConnect를 통해 dApp연결을 지원하고 있음을 확인할 수 있습니다.
Zengo
- Account creation
MPC를 지원하는 Zengo 지갑 생성의 경우, E-mail 인증을 통해 계정 생성이 가능합니다. 이는 HD wallet과 달리 Seed phrase를 저장하지 않아도 되기 때문에 사용자에게 심리스한 경험을 제공합니다. - Wallet function & dApp connection
Zengo의 경우, dApp연결을 위해 Recovery kit을 생성해야 하는데, Recovery kit을 생성하기 위해 추가로 3D Face 인증을 진행해야 합니다. 만약 Recovery kit를 삭제했을 경우, dApp 연결부터 실패하며, 재설치해도 계정 복구가 불가능 합니다. Zengo의 경우, Bitcoin 네트워크, EVM 계열 등 다양한 프로토콜을 지원합니다. 또한 dApp에서 트랜잭션 발생 시 서명이 아닌 설정한 비밀번호 입력만 하면 트랜잭션이 승인됩니다.
UniPass
- Account creation
ERC-4337 module 기능을 지원하는 UniPass의 경우, Social login 기능을 통해 계정을 생성할 수 있습니다. 지갑 액세스를 위해 구글이나 애플 계정을 사용하기 때문에 블록체인에 익숙하지 않은 사용자들 또한 쉽게 접근할 수 있습니다. - Wallet function
또한 2FA(e-mail, SMS, Google authentication)설정이 가능하며, 지갑 복구를 위한 가디언 설정도 가능합니다. 가디언을 통해 지갑 복구를 시도할 경우, 50% 이상의 가디언이 복구를 승인했을 경우 48시간 후 복구가 가능하며, 모든 가디언이 승인했을 경우 즉시 지갑 복구가 가능합니다. 이를 통해 기존 단일 실패 지점인 개인 키 분실 문제를 해결할 수 있습니다. - ERC-4337 module
더 나아가 ERC-4337 기능을 활용할 수 있도록 4337 module 세팅을 지원하고 있지만, 사용자가 Gas fee를 지불해야 module 사용이 가능합니다. 만약 4337 module을 연결하지 않았다면 다른 지갑들과 동일하게 트랜잭션을 생성하지만, 반대로 4337 module을 연결했다면 UserOperation으로 처리되는 것을 확인할 수 있습니다. 하지만 4337module의 경우 일반 트랜잭션보다 더 많은 Gas fee를 소모하기 때문에, 추후 Multi call, Gasless transaction 등 다양한 실사용 사례가 생긴다면 유용할 것으로 예측됩니다.
3. User task in wallet
리서치한 12개 지갑 서비스들의 다양한 기능들을 분류하고, 그룹핑하기 위해 Affinity diagram을 활용했습니다. 이 기법은 수집한 데이터들 사이에서 의미 있는 규칙을 찾아내기 위한 도구로 활용됩니다. 이를 통해 먼저 지갑에서의 User task를 6가지(Account creation/import, Wallet setting, Asset management, dApp connection, Transaction, Security)로 분류할 수 있었습니다.
ⓐ Account creation/import
사용자는 지갑 사용을 위해 account를 생성하거나, 기존 보유하고 있는 account를 가져오는 작업을 수행합니다.”대표적으로 Account creation의 경우 Seed test, Social login이 있으며, Account import의 경우 Private key 입력, HW wallet 연결과 같은 기능들이 존재합니다.
ⓑ Wallet setting
사용자는 지갑에서 제공하는 다양한 기능들을 활용하여 사용자에게 가장 편한 형태로 지갑을 설정합니다. 대표적으로 Network setting, Currency conversion, Address list, Module(Transaction guard, 4337) 등 다양한 기능들이 존재합니다.
ⓒ Asset management
사용자는 다양한 암호화 자산(Coin, Token, NFT)을 지갑을 통해 관리합니다. 대표적으로 Token balance, Dashboard, Staking reward receive 등 다양한 기능들이 존재합니다.
ⓓ dApp Connection
사용자는 dApp 연결을 위해 지갑을 활용하여 연결합니다. 대표적으로 dApp connection list, dApp 연결 시 account select/creation과 같은 기능들이 존재합니다.
ⓔ Transaction
사용자는 송금/받기 혹은 dApp에서 트랜잭션을 발생시키기 위해 지갑을 통해 서명합니다. 대표적으로 Send/Receive, Swap, Bridge, Transaction batch, Off-chain signature 등 다양한 기능들이 존재합니다.
ⓕ Security
사용자는 자신의 지갑의 보안을 강화하기 위한 작업을 수행합니다. 대표적으로 Seed phrase 재설정, Data backup(JSON), Guardians setting, Phishing detection 등 다양한 기능들이 존재합니다.
4. Wallet Technological UX Framework
그 다음 작업으로, 지갑에서 사용자들이 수행하는 6가지의 User task를 바탕으로 다음과 같은 Wallet Technological UX Framework를 도출했습니다. 각 세부 항목들에 대해 자세하게 살펴보도록 하겠습니다.
① Interoperability
해당 항목은 Wallet 자체의 특성으로 Protocol, Account, Device, dApp 등과 상호작용하는 것을 의미합니다. 해당 항목의 구성 요소로는 Protocol Support, Wallet Compatibility, dApp Connectivity가 있습니다.
- Protocol Support: Wallet이 지원하는 Protocol 수를 의미합니다. Wallet이 지원하는 Protocol이 Single Protocol인지 Multi Protocol인지를 구분하고, 지원하는 네트워크 수를 기준으로 평가를 진행하였습니다.
- Wallet Compatibility: 다른 Account 또는 Device와의 호환성을 의미합니다. 구체적으로 살펴보면 Account import, Hardware wallet connect, PC-Mobile sync 등의 세부 기능들을 제공하는지의 여부를 바탕으로 평가를 진행하였습니다.
- dApp Connectivity: dApp과의 연결성을 의미합니다. 세부적인 항목으로는 dApp in wallet, dApp connect option, Account select option 등이 있으며, 해당 기능들을 통해 Wallet들이 어떤 방식으로 여러 dApp들과의 연결을 지원하는지를 살펴보았습니다.
② Customization
해당 항목은 Wallet의 Network 또는 Function을 사용자의 의도대로 맞춤화하는 것을 의미합니다. 해당 항목의 구성 요소로는 크게 Network Customization과 Function Customization이 있습니다.
- Network Customization: Wallet의 Network 관련 맞춤화 기능들을 의미합니다. 추가적인 커스텀 네트워크를 지원(Add custom networks)하는지, 테스트넷을 지원(Test networks)하는지 등의 세부항목들을 가지고 있습니다.
- Function Customization: Wallet 내 다양한 맞춤화 기능들을 의미합니다. 사용자가 Wallet을 사용함에 있어 Module, Gas control, Guardians 설정, RPC 선택 등의 세부 기능들을 자신의 의도에 맞게 맞춤화할 수 있는지를 세부적으로 파악하여 평가를 진행하였습니다.
③ Economic Value
해당 항목은 Wallet 사용을 통해 발생하는 사용자의 시간적, 금전적 이익을 의미합니다. 해당 항목의 구성 요소로는 Benefit Creation, Time Reduction, Portfolio가 있습니다.
- Benefit Creation: 사용자가 Wallet의 기능들을 활용하여 직간접적인 수익을 창출할 수 있음을 의미합니다. 구체적으로 살펴보면 Gas control, Transaction batch 등의 기능을 통해 Wallet의 사용자들이 금전적인 이득을 볼 수 있는지를 평가하였습니다.
- Time Reduction: 사용자가 Wallet의 기능들을 통해 시간을 절감할 수 있음을 의미합니다. dApp in wallet(e.g. Swap, Bridge, etc…), Transaction record, Block explorer connect 등의 기능을 제공하여 사용자들의 작업 시간을 절감할 수 있는지 여부를 평가하였습니다.
- Portfolio: Wallet에서 사용자의 자산을 통합적으로 관리할 수 있음을 의미합니다. 스테이킹된 자산 표시, 자산 포트폴리오 서비스(Dashboard), NFT 표시의 세부 항목들로 구성되어 있습니다.
④ Security
마지막 항목은 Security로, Wallet에서 제공하는 보안을 의미을 의미합니다. 하위 항목들로는 Access, Recovery, Security Option이 있습니다.
- Access: 사용자들에게 제공되는 Wallet 접근 관련 기능들을 의미합니다. Seed phrase/Private key reveal, Multi-sig owner add, Threshold 등의 지갑 액세스 관련 기능들을 통해 사용자들에게 Wallet에 접근 권한을 제공하는지 평가하였습니다.
- Recovery: 사용자들에게 제공되는 Wallet의 복구 방식을 의미합니다. Data backup(JSON), Social recovery와 같은 지갑 복구 관련 기능들을 제공하고 있는지를 살펴보았습니다.
- Security Option: 사용자에게 제공되는 Wallet 보안 옵션을 의미합니다. Seed phrase 재설정, dApp 차단, Phishing detection, Security Scanner(위험 트랜잭션 감지), Web3 API 경고 등의 보안 관련 세부 기능들을 제공하는지를 바탕으로 평가를 진행하였습니다.
해당 시리즈는 다음편(UX Framework for Wallet #3)으로 이어집니다.