메타마스크 스냅
메타마스크 스냅(https://metamask.io/snaps/)은 장기적인 포부를 가진 프로젝트입니다. 하지만 '이상적인' 베니어라는 수식어를 제쳐두고, 저는 이 프로젝트를 웹3 세상을 위한 애플릿이라고 부르고 싶습니다.
개발자로서, 특히 중국에서 이 개념은 새로운 것이 아닙니다. 최근 몇 년 동안 우리는 '에코 빌딩', '슈퍼 앱' 및 기타 인터넷 해킹에 대한 이야기를 많이 들어왔고, 거대 기업들은 항상 인터넷을 점점 더 폐쇄적으로 만들어 서비스 제공자에서 표준 설정자로 역할을 바꾸기를 원했습니다.
이러한 흐름은 이제 웹3.0 공간에도 서서히 스며들고 있는 것 같습니다.
현재(2024년 6월)는 스냅이 출시된 지 거의 1년, 처음 구상된 지 최소 4년이 지났지만 일반 사용자에게는 거의 알려지지 않은 상태입니다. 제 주변에는 암호화폐 시장에 대해 매우 관심이 많고 매일 메타마스크를 여는 것이 먹고 자는 것만큼이나 자연스러운 친구들이 몇 명 있는데, 그들은 아직 메타마스크 스냅스가 무엇인지조차 모릅니다. 하지만 제가 "애플릿과 비슷하다"고 설명해 주면, 그들의 얼굴에는 설명할 수 없는 미소가 번집니다(이들은 모두 개발자이고 대부분 프론트엔드 개발자입니다).
이 시나리오는 입구의 기능이 눈에 띄지 않아 사용률이 매우 낮았던 WeChat 미니 프로그램이 처음 나왔을 때를 떠올리게 합니다. 이후 입구가 홈페이지 드롭다운에 나타나는 작은 프로그램 목록으로 바뀌고 나서야 사용량이 크게 늘기 시작했는데, 메타마스크 생태계를 만들고자 하는 만큼 사용자들이 생태문으로 들어오도록 어떻게 유도할지가 앞으로 해결해야 할 중요한 과제가 될 것 같습니다.
인터넷 업계에서는 등장 초기부터 작은 프로그램이 논란의 대상이 되고 있습니다. 프론트엔드 엔지니어들은 대체로 인터넷 대기업이 트래픽을 독점하고 생태계를 차단하기 위한 비즈니스 도구일 뿐 기술 발전에 크게 기여하지 못할 것이라며 그 출현을 비웃었고, Web3의 스냅스는 커뮤니티에 얼마나 기여할 수 있을지 몰랐습니다. 메타마스크가 제공하는 문서를 살펴보면, 앞으로 스냅 개발자들은 족쇄를 차고 춤을 춰야 할 가능성이 점점 더 커지고 있습니다.
메타마스크가 스냅의 공개 베타를 시작한 지 거의 1년이 지났지만, 2024년 6월 현재 웹사이트에 사용 가능한 것으로 표시된 스냅의 수는 68개에 불과할 정도로 그리 많지 않습니다. 스냅의 개념은 공식 베타가 시작되기 전인 2020년경에 공식적으로 소개되었으며, 웹 3사와 개발자들은 스냅의 개념을 파악하는 데 꽤 오랜 시간이 걸렸습니다.
몇 가지 스냅
스냅을 풀타임으로 개발하는 개발자를 만나보지는 못했지만, 웹2.0에는 여전히 애플릿 개발자가 많고, 애플릿에 대한 일반적인 시각은 상대적으로 개발 환경이 열악하다는 것입니다. 소규모 프로그램 개발은 여전히 프론트엔드 생태계를 사용하지만 거세된 버전이고, 여러 가지 이유로 벤더가 개발자가 실제로 할 수 있는 것을 제한합니다. 그리고 공급업체의 기술 역량, 제공되는 문서의 품질이 다양하기 때문에 개발자는 '숙련자'라는 칭찬을 받기 전에 여러 가지 이상한 구덩이에서 다양한 플랫폼을 밟아야 합니다.
웹3로 돌아와서, 스냅은 보안상의 이유로 실제로 자바스크립트 API에 무언가를 수행하는 "보안 ECMAScript"를 사용하여 격리된 보안 환경에서 실행해야 하는 비슷한 상황에 직면하게 될 가능성이 높습니다. 실제로 자바스크립트 API에는 DOM, Node.js, 브라우저 플러그인 API 등에 대한 액세스 부족 등 몇 가지 제한 사항이 있습니다.
보안상의 우려로 인해 기본 스냅스는 실제로 많은 기능을 제공하지 않습니다. 대부분의 기능을 사용하려면 처음부터 사용 권한이 있어야 하므로 Snaps는 설치 시 사용자에게 관련 권한을 요청해야 합니다. 사용 가능한 권한에는 수명 주기, 트랜잭션, 서명, CRON 등이 있습니다: https://docs.metamask.io/snaps/reference/permissions/#eth_accounts
따라서, 번성하는 것에 비해 따라서 번성하는 Web3 생태계에 비해 사용 가능한 스냅은 매우 적으며, MetaMask는 이를 약간 분류했습니다.
스냅의 유형
메타마스크의 공식 분류에 따르면 크게 네 가지 유형으로 나뉩니다.
계정 관리
이 유형의 스냅은 주로 MPC(Multi-Party Computation, https://blog.usecapsule.com/what)를 통해 이루어집니다. -is-mpc/) 기술을 통해 개인키의 보안을 강화합니다.
평소 개인 키를 어떻게 보호하는지 생각해 보세요. 아마 많은 분들이 컴퓨터나 휴대폰 어딘가에 저장하고 있을 겁니다. 물론 아주 부유하고 지갑에 많은 돈을 가지고 있다면 하드웨어 지갑을 사용하는 등 더 비밀스러운 방법을 사용할 수도 있습니다. 하지만 대부분의 사람들은 니모닉을 잊어버리는 것을 방지하기 위해 쉽게 찾을 수 있는 곳에 붙여두기만 하면 됩니다.
이러한 저장 방식은 몇 가지 문제를 야기할 수 있습니다:
니모닉 단어를 어디에 넣었는지 잊으면 지갑에 있는 자산에 작별 인사를 해야 할 가능성이 높습니다.
니모닉을 보관하는 디바이스가 트로이 목마에 감염된 경우 해커의 도용을 막기가 어렵습니다. 일부 사용자는 보안을 강화하기 위해 니모닉을 분할하여 별도로 저장하기도 합니다. 이렇게 하면 보안이 강화될 수 있지만 관리가 더 어려워지고 잊어버릴 위험이 높아집니다.
반면, MPC 기술은 개인키를 여러 부분으로 자동 분할하여 서로 다른 곳에 저장한 다음, 개인키로 거래에 서명해야 할 때만 완전한 개인키를 생성하고 그 과정에서 완전한 개인키를 생성하지 않아 개인키 유출을 최대한 방지할 수 있습니다. 프로세스 중에 개인키가 생성되지 않으므로 유출로부터 개인키를 최대한 보호할 수 있습니다.
2024년 6월 현재, 계정 관리 카테고리에는 Capsule, Silent Shard, Safeheron 등 3개의 스냅만 있습니다.
캡슐은 장치의 패스키, 복구 비밀번호, 2FA를 사용하여 동일한 키를 유지하며, 하나를 분실해도 나머지 두 개로 복구할 수 있습니다.
사일런트 샤드와 세이프헤론은 여러 디바이스에 앱을 설치하는 방식으로 이를 수행합니다.
이런 유형의 스냅이 얼마나 많은 Web3 사용자를 끌어들이는지는 말하기 어렵고, 스냅 웹사이트에 표시된 데이터에 따르면 설치 수가 많지 않은 스냅은 매우 소수에 불과합니다.
사용법이 복잡하지 않으므로 다시 설명하지 않겠습니다. 설치가 완료되면 메타마스크 지갑에 추가 주소가 생깁니다:
상호운용성
이 유형의 스냅은 주로 비 EVM 네트워크와의 호환성을 제공하며, 저희는 솔라나, 코스모스, 니어, 수이 등 익숙한 체인을 많이 볼 수 있습니다. 이들은 가장 많은 수를 차지하며, 스냅스 생태계의 절반 이상을 차지합니다.
풍부한 멀티링크 스냅
알림 및 채팅(커뮤니케이션)
저는 개인적으로 이 유형의 스냅을 선호하지만, 현재에는 선택할 수 있는 채팅 앱이 너무 많기 때문에 체인을 통해 메시지를 보내려는 사용자 수는 여전히 소수인 것이 분명합니다. 미래를 위해 계속 싸워야 한다는 점이 안타깝습니다.
보안
이런 종류의 기능에 대한 필요성은 크며, 특히 메타마스크 자체는 사용자에게 피싱 거래에 대한 경고를 충분히 제공하지 못합니다. 암호화폐와 블록체인 공간에서 가장 일반적인 작업인 트랜잭션은 본질적으로 위험성이 높고 매우 민감하며, 개발자는 스냅스가 제공하는 트랜잭션 인사이트를 통해 사용자에게 더 풍부한 트랜잭션 정보를 보여주고, 트랜잭션에 대한 분석과 인사이트를 제공하며, 사용자 자산의 손실을 최대한 방지할 수 있습니다.
제 친구가 피싱 사이트에서 계정 잔액을 이체했는데, MetaMask는 지갑에 연결되는 순간부터 이체가 성공할 때까지 아무런 경고도 하지 않아서 다른 지갑으로 전환할 수밖에 없었습니다. 당시에는 스냅스에 대해 잘 몰랐지만, 저는 그의 거래를 보호하기 위해 ZAN의 KYT(https://zan.top/home/know-your-transaction?chInfo=ch_WZ) 서비스를 추천했습니다. 이렇게 안전한 스냅스가 메타마스크의 단점을 보완할 수 있기를 바랍니다. 실제로 스냅스 웹사이트에 표시된 데이터에 따르면 현재 전체 스냅스 수의 20%를 차지하는 멀티체인 지원을 제외하면 보안 스냅스의 수요가 가장 많은 것은 사실입니다.
메타마스크 스냅은 "endowment:트랜잭션-인사이트" 및 "endowment:서명-인사이트" 권한을 다음과 같은 대상에 제공합니다. 스냅이 관련 권한을 적용하면 사용자가 트랜잭션 또는 서명을 시작할 때 원본 트랜잭션 또는 서명의 페이로드를 읽을 수 있으며, 스냅은 이를 분석하여 사용자에게 더욱 풍부한 보안 설명을 표시할 수 있습니다.
아이디어
MetaMask는 스냅을 통해 다른 체인 플랫폼으로 영역을 확장하고자 하지만, 궁극적으로 얼마나 멀리 나아갈 수 있을지 알기 어려울 것 같습니다. 웹2 분야의 작은 프로그램을 예로 들어보면, 많은 앱이 작은 프로그램 버전을 제공하고 있지만, 보잘것없는 작은 프로그램이 제공하는 서비스는 앱과 비교할 수 없을 정도로 미흡하고 새로운 기능의 후속 조치도 뒤처지는 경우가 많으며, 심지어 많은 작은 프로그램이 사용자를 자신의 앱으로 직접 유도하는 경우도 있습니다. 스몰 프로그램이 폭발적으로 성장한 후, 더 많은 앱이 파이를 나누고 싶어했고, 각자의 해자를 강화하기 위해 자체 스몰 프로그램 플랫폼을 출시하여 전체 웹 세계를 점점 더 "중앙 집중화"하려고 노력했습니다.
웹3 공간의 자본은 웹2보다 더 똑똑하지 않으며, 스냅스가 잘 발전하면 더 많은 지갑이 뒤따를 수밖에 없습니다. 그렇게 되면 웹3.0 개발자들은 각 지갑의 '스냅'에 맞는 버전을 개발해야 할 것이고, 한동안은 발만 동동 구르게 될 것 같습니다. 하지만 모든 벤더가 자체 "스냅" 생태계를 만든다면 거의 모든 벤더가 자체 생태계를 갖지 않게 될 것입니다. "탈중앙화"라는 수식어가 딱 맞는 것 같습니다.
미래에는 플랫폼이 너무 달라서 호환성이 개발자에게 일상적인 일이 되고 궁극적으로는 견딜 수 없는 일이 될 정도로 모든 종류의 "스냅과 유사한" 앱이 등장할 것이라고 조금은 예측할 수 있을 것 같습니다. 왼쪽;">저자 개인적으로는 메타마스크 스냅에 대한 믿음이 너무 적은 것 같아서 유감입니다. 어느 쪽이든, 적어도 이 제품은 금융 전문가들이 만든 사기가 아니라 실제 문제를 해결하려는 열정적인 개발자 그룹이 만든 제품입니다.
스냅은 현재 MetaMask의 대부분의 사용자에게 특별히 필요한 기능이 아니며, 더 효과적으로 홍보하기 위해서는 더 많은 노력을 기울여야 할 것 같습니다.