계정 추상화: Web3 도입을 위한 게임 체인저이자 지원자

이 기사는 기계로 번역되었습니다
원문 표시

계정 추상화: Web3 도입을 위한 게임 체인저이자 지원자

Gal Ron, Stanford Blockchain Review 작성

편집자: 테크 플로우 (techflowpost)

*참고: 본 기사는 Stanford Blockchain Review에서 발췌한 것입니다 . TechFlow는 Stanford Blockchain Review의 파트너사이며, 본 기사를 편집하고 재인쇄할 수 있는 독점 권한을 보유하고 있습니다.

"개인 키가 없으면 토큰도 없다!" 이것이 블록체인의 슬로건입니다. 그렇다면 "개인 키"란 정확히 무엇일까요?

실제 열쇠는 기능에 따라 다릅니다. 자전거 자물쇠 열쇠는 브링크스 트럭 고급 보안 열쇠와 종류가 다릅니다.

하지만 이더 에서는 모든 키가 동일한 구조를 갖습니다. 이더 에서 모든 작업은 가치나 목적과 관계없이 니모닉 단어 를 사용하여 트랜잭션에 서명해야 합니다. 더욱이, 니모닉 단어 의 내용은 계정 소유자만 알 수 있습니다. 이는 상당한 사용자 경험(UX) 장벽이자 암호화폐 대중화에 큰 걸림돌이 됩니다.

계정 추상화는 블록체인 애플리케이션이 이러한 패러다임에서 벗어나도록 도와줍니다 . 2015년 Vitalik이 작성한 글에서 처음 소개된 계정 추상화 개념은 현재 Starknet 및 zkSync와 같은 레이어 2 블록체인과 EIP-4337을 통해 이더 자체에 구현되어 있습니다. 계정 추상화는 Web3의 강력함과 Web2의 간편함 및 편의성을 결합하며, 셀프 커스터디 확장에 있어 중요한 이정표입니다.

이더 의 EOA와 그 한계

먼저, 이더 의 암호화폐 계정이 어떻게 작동하는지 살펴보겠습니다. 이더 에는 스마트 계약과 외부 소유 계정(EOA)이라는 두 가지 기본 개체가 있습니다.

EOA는 다음과 같은 기관입니다.

(1) 개인키로부터 파생된 계정주소,

(2) 수수료 지불이나 타인에게 이더 보내는 데 사용되는 ETH 잔액,

(3) 재생 보호를 위해 이 EOA에서 보낸 거래 순서 번호를 기록하는 "nonce"라는 식별자입니다.

이더 에서는 EOA만 거래를 보낼 수 있습니다 . 거래가 유효하려면 계정 주소에서 파생된 개인 키로 서명되어야 합니다. 즉, EOA를 "소유"한다는 것은 실제로 계정 주소를 도출하는 데 사용된 개인 키를 소유한다는 것을 의미합니다.

이더 의 스마트 계약은 완전히 프로그래밍 가능하지만, 거래 유효성 검증에 사용되는 로직은 프로그래밍이 불가능하고 EVM(이더 가상 머신)에 하드코딩되어 있습니다. 유효한 거래는 다음과 같은 일련의 규칙을 엄격히 따라야 합니다.

  • 서명 체계 . 거래는 타원 곡선 secp256k1을 기반으로 ECDSA 서명 체계를 사용하여 서명해야 합니다.

  • 거래 수수료 . 거래 수수료는 거래를 시작한 EOA와 동일해야 합니다. 또한, 거래 수수료는 ETH로 표시되어야 합니다.

  • 재생 보호 . 거래는 "nonce" 식별자의 순차 번호에 따라 순차적으로 전송되어야 합니다.

  • 개인 키는 변경할 수 없습니다 . 계정 주소는 개인 키에서 파생되므로 거래 서명에 사용되는 "비밀"을 변경할 수 없습니다.

이러한 규칙은 이더 프로토콜에 내장되어 있으며 변경할 수 없습니다. 프로토콜 보안과 이더 노드의 운영 효율성을 최적화하기 위한 설계 과정에서 비롯된 것입니다. 하지만 dApp 개발자의 많은 사용 사례를 제한합니다. 예를 들어, EOA를 사용할 때 다른 계정으로 거래 수수료를 지불하는 것은 불가능합니다. 이는 각 플레이어의 첫 몇 번의 "수"에 자금을 지원해야 하는 탈중앙화 게임에 매우 유용한 기능입니다.

다른 경우, 블록체인 사용자는 다른 사용자에게 자신을 대신하여 거래를 보낼 수 있는 권한을 부여하고, 거래 금액이나 빈도에 제한을 두는 등의 방식을 사용할 수 있습니다. EOA를 사용하는 경우 이 또한 불가능합니다.

게다가 비밀번호 순환은 Web2의 기본적인 기본 요소이지만, EOA의 비밀번호를 변경하거나 다른 기관이 귀하의 계정에 대한 전체 액세스 권한을 부여하지 않고는 비밀번호를 복구하도록 도울 수 없습니다.

계정 추상화

계정 추상화는 앞서 언급한 하드코딩된 로직을 EOA에서 분리하여 모든 계정을 완전히 프로그래밍 가능한 스마트 컨트랙트로 변환하는 개념입니다. 이를 통해 계정 소유자, 지갑, 그리고 dApp은 거래 서명 및 승인 방식과 거래 수수료 출처를 유연하게 결정할 수 있습니다. 다시 말해, 계정 추상화는 스마트 컨트랙트 지갑을 구현하는 기술 인프라입니다 .

계정 추상화 개념은 현재 EOA의 세 가지 주요 한계에 따라 세 가지 범주로 나눌 수 있습니다.

(1) 서명자 추상화 . ECDSA 체계와 고정된 개인 키만을 유일하게 허용되는 서명으로 사용하도록 강제하는 대신, 스마트 계약은 유효한 서명된 거래의 조건을 판단할 수 있는 유연성을 제공합니다. 즉, 스마트 계약은 공유 비밀에 더 적합한 다른 서명 체계를 허용할지 스스로 결정할 수 있습니다. 계약은 입력 함수에 따라 다른 서명 체계를 요구하거나, 서명을 전혀 요구하지 않을 수도 있습니다.

(2) 수수료 추상화. 이더 에서 계정 소유자가 가장 먼저 해야 할 일은 거래 수수료를 지불하고 계정을 사용하기 위해 계정에 ETH를 충전하는 것입니다. dApp이 사용자의 거래 수수료를 지원하거나, 사용자가 원하는 토큰 화폐로 수수료를 지불하고 즉시 ETH를 환전할 수 있는 블록체인 아키텍처를 상상해 보세요. 이는 현재 이더 직면한 중요한 사용자 경험 문제를 해결할 것입니다.

(3) 논스 추상화 . 이는 계정 추상화에서 덜 논의되지만 더 미묘한 영역이지만, 흥미로운 점은 변함이 없습니다. EOA의 "논스" 식별자는 트랜잭션 재전송을 방지할 뿐만 아니라, 본질적으로 순차적인 트랜잭션 모델을 강제합니다. 스마트 계약이 순서에 관계없이 동일한 EOA에서 두 개의 병렬 트랜잭션을 허용하려는 경우 어떻게 될까요? 이는 "논스" 메커니즘을 일반 트랜잭션 처리 로직에 하드코딩하는 대신 스마트 계약에서 제어할 수 있을 때 가능합니다.

셀프 호스팅 확장

비트코인 백서 발표된 지 15년이 지났지만, 오늘날의 암호화폐 지갑은 우리가 기대하는 간소화된 제품보다는 여전히 높은 수준의 유지 관리가 필요합니다. 작년 CEX 사태는 셀프 커스터디가 최선의 선택이라는 것을 보여주었지만, 개인 키를 직접 관리하는 것은 여전히 ​​상당한 부담이자 보안 리스크 남아 있습니다 . 심지어 하드코어 암호화폐 개발자조차도 개인 키를 분실하거나 도난당하는 경우가 있습니다(트윗). 계정 추상화를 통해 운영되는 스마트 컨트랙트 지갑은 이러한 리스크 제거하고 셀프 커스터디 지갑의 대중화를 촉진하는 촉매제가 될 수 있습니다. 계정 추상화는 더욱 스마트한 거래 서명과 개선된 복구 프로세스라는 두 가지 메커니즘을 통해 계정 관리를 더욱 간편하게 만듭니다 .

첫째, 서명자 추상화를 통해 지갑은 제품에 Web2 기능을 내장할 수 있습니다 . 예를 들어, Braavos 지갑은 iOS 및 Android 기기의 안전한 격리를 활용하여 사용자가 니모닉 단어 입력하지 않고도 지문이나 얼굴 ID를 사용하여 거래에 서명할 수 있도록 합니다. 이와 유사한 서명자 추상화를 통해 개발자는 거래소 보안 수준을 사례별로 제어할 수 있습니다. 이는 Web3 지갑에서 진정한 다중 요소 인증을 구현하는 길을 열어줍니다. 온라인 뱅킹 계좌와 마찬가지로 일상적인 거래는 단일 기기에서 수행할 수 있지만, 새로운 수신자에게 거래하거나 특히 중요한 거래의 경우 사용자가 여러 기기에서 로그인해야 할 수도 있습니다.

계정 추상화는 계정 복구의 UX(사용자 경험)도 향상시킵니다 . 서명자 추상화를 통해 단일 계정에 대해 여러 서명자가 각자 개별적인 권한과 특권을 가질 수 있습니다. 예를 들어, 계정의 주 소유자는 권한이 낮은 키 몇 개를 친구들과 공유하여 주 키를 복구할 수 있지만, 계정의 자산을 사용하는 것은 방지할 수 있습니다. 이는 종종 소셜 복구라고 불리며, ArgentX 지갑과 같은 스마트 계약 기반 지갑에 구현되어 있습니다.

암호화폐 결제 기회

암호화폐 결제는 블록체인의 주요 활용 사례 중 하나로 널리 논의되고 있습니다. 하지만 이러한 기대는 아직 실현되지 않았습니다. 과거에는 높은 거래 수수료 때문에 어려움을 겪었지만, 컨볼루션 및 확장성 솔루션의 등장으로 이러한 수수료는 점차 낮아지고 있습니다. 그러나 기존 금융 시장에서 기존 결제 솔루션의 성공은 단순히 낮은 거래 수수료에만 기인하는 것이 아닙니다. 신용 발급, 사기 탐지, 분쟁 해결, 정기 결제 메커니즘과 같은 추가적인 기능이 필요합니다.

계정 추상화를 통해 이러한 전통적인 결제 개념을 암호화폐 세계로 확장할 수 있습니다. 예를 들어, 비자(Visa)는 최근 계정 추상화를 활용한 정기 결제 시스템 설계 개념 증명(PoC)을 제안했습니다. 비자가 각 거래에 대한 사용자 서명 없이도 정기적으로 (한도 내에서) 자금을 자동으로 이체할 수 있도록 하는 프로그래밍 가능한 자가 수탁 지갑을 상상해 보세요.

게임 UX가 Web3를 만났을 때

일괄 거래와 수수료 추상화로 인해 Web3 게임은 계정 추상화로 인해 중단되기 쉬운 또 다른 영역이 되었습니다.

게임 활동을 온체인 가져오는 데 있어 가장 큰 장애물은 각 온체인 활동마다 거래 서명이 필요하다는 점인데, 이는 거래 수수료를 초과할 수 있습니다. 사용자에게 지갑에서 "서명" 버튼을 클릭하도록 유도하는 것은 게임 흐름을 방해하고 웹 3.0 게임 경험을 상당히 불편하게 만듭니다.

계정 추상화를 통해 게임 개발자는 특정 기간 동안 게임 거래 서명을 사전 승인하는 "세션 키"를 생성할 수 있습니다. 이 키는 브라우저나 스마트폰의 로컬 저장소에 저장되고 필요에 따라 해지될 수 있습니다. 이를 통해 웹 3.0 게임 경험이 웹 2.0 게임 경험에 더욱 가까워질 것입니다.

또한, 수수료 추상화를 통해 게임 개발자는 사용자의 거래 수수료를 충당할 수 있습니다. 이는 암호화폐에 익숙하지 않거나 거래 수수료를 지불하기 전에 게임을 먼저 체험해 보고 싶어 하는 신규 플레이어를 유치하는 데 특히 효과적입니다.

앞으로의 길

계정 추상화는 오랫동안 이더 로드맵에 포함되어 있었습니다. EIP-86(2017), EIP-2983(2020), EIP-3074(2020)와 같은 이더 개선 제안은 스마트 계약 지갑 운영을 위한 새로운 탈중앙화 인프라를 도입한 EIP-4337(2021)의 토대를 마련했습니다.

EIP 외에도 Gnosis와 같은 스마트 지갑 dApp이 이더 에 등장했습니다. 하지만 이러한 모든 dApp은 이더 기본 계정 모델(EOA)에서는 2등 시민에 불과합니다.

이더 의 한계를 해결하고 사용자에게 스마트 계약 지갑을 제공하는 기회는 레이어 2 확장 네트워크를 통해 실현될 수 있습니다. Starknet 및 zkSync와 같은 레이어 2 플랫폼은 프로토콜 수준에서 계정 추상화를 내장하여 개발자가 네이티브 툴과 인프라를 통해 쉽게 접근할 수 있도록 합니다. 

원본 링크

출처
면책조항: 상기 내용은 작자의 개인적인 의견입니다. 따라서 이는 Followin의 입장과 무관하며 Followin과 관련된 어떠한 투자 제안도 구성하지 않습니다.
라이크
즐겨찾기에 추가
코멘트