저자: 0xKJ | PoW 2.0 출처: X, @kernel1983
뺄셈 이론은 블록체인에 엄청난 인지적 향상을 가져다주었습니다. 스마트 컨트랙트가 비트코인에 더하는 것이라면, 비문 공간은 비트코인에서 빼는 것입니다. 트랜잭션의 정렬과 합의는 모든 블록체인의 필수 요소이므로 뺄셈 이론은 모든 퍼블릭 체인에 적용될 수 있으며, 인스크립션 스페이스는 본질적으로 크로스 체인입니다.
뺄셈 프로토콜에 대해 생각해보면, 이는 우리에게 많은 디자인 공간을 제공하고, 보안 위험뿐만 아니라 EVM 콜데이터의 단점을 재고할 수 있는 기회를 제공합니다. 우선, BRC20과 같은 인스크립션은 실제로 '일반 텍스트'인 반면, CALLDATA는 가독성이 훨씬 떨어집니다. 인스크립션 프로토콜은 이 원칙을 따르고 프로토콜 수준에서 사용자가 무엇을 하고 있는지 알 수 있도록 설계되어야 합니다.
인그레이빙 vs 호출 데이터
두 번째로 고려해야 할 점은 스마트 컨트랙트의 패러다임입니다. 스마트 컨트랙트는 각 블록체인 애플리케이션이 데이터와 코드를 정의할 수 있는 고유한 영역을 가질 수 있도록 합니다. 사용자 자산은 데이터이고 코드는 전송, 발행, 승인 등 데이터를 조작할 수 있습니다. USDT와 같이 일반적으로 사용되는 계약의 경우, 코드는 실제로 시간이 지남에 따라 무수히 많은 사람의 눈을 통해 검증을 거쳤습니다. 그러나 블록체인에는 수천 개의 자산이 존재하며, 대부분이 ERC20 표준을 따르고 있지만 표준 구현이 의무사항은 아닙니다. 초창기에는 주요 보안 문제로 인해 많은 컨트랙트가 폐기되었습니다. 엔지니어들의 경험이 쌓이면서 주요 보안 문제는 줄어들었지만, 사용자가 모든 스마트 콘트랙트를 직접 감사하는 것은 여전히 불가능합니다. 이러한 현상의 원인을 생각해 보면, 스마트 콘트랙트는 발행자가 콘트랙트의 모든 코드를 커스터마이징할 수 있고, 기존 코드를 직접 재사용하는 경우가 거의 없기 때문에(복사 및 붙여넣기를 통한 재사용도 가능) 온체인 보안의 가상 다크 포레스트가 형성되기 때문입니다.
빼기 프로토콜의 설계는 프로그래밍 언어의 기본 요소인 함수를 블록체인의 기본 요소인 자산의 개념에서 분리하여 이 문제를 해결하려고 시도합니다. 스마트 콘트랙트에서는 콘트랙트 코드가 콘트랙트 자산을 처리하는 반면, 빼기 프로토콜에서는 함수가 자산을 조작할 수 있는 권한을 갖습니다. 예를 들어, 전송은 모든 자산에 액세스할 수 있으므로 각 자산에 대한 모든 코드를 다시 작성할 필요가 없습니다. 발행 방식의 경우, 더 높은 수준의 자유로운 정의가 필요하며, 밈 자산에 대한 발행 로직은 USDT 자산에 대한 발행 로직과 다를 수밖에 없으므로 특정 [asset]_mint 함수를 작성해야 합니다.
또한, 이 함수에는 함수가 의존하는 다른 함수를 보다 정적으로 지정하고, 호출 과정에서 호출 함수가 조작할 수 있는 자산 유형을 보다 신중하게 한정하는 require 속성이 있어 보안을 강화할 수 있습니다.
세 번째는 저희는 항상 ERC6551의 아이디어를 좋아했지만, 6551이 ERC20보다 늦게 나왔기 때문에 모든 ERC20은 자산을 NFT에 묶을 수 없고 이더리움 주소로만 보유할 수 있다는 점입니다. 주소는 개인 키에 일대일로 연결된 공개 키와 같습니다. 개인키가 더 이상 안전하지 않다고 의심되어 개인키를 변경하려고 할 때 주소(사용자 이름)도 동시에 변경해야 한다고 가정해 보겠습니다. 이더리움에서 주소를 변경하려면 사용자가 모든 자산을 새 주소로 이전해야 하므로 상당한 양의 가스가 소모됩니다. 따라서 사용자가 개인키를 변경하는 데 드는 보안 비용이 높을 것으로 예상됩니다.
감산 프로토콜에서는 자산을 주소에 연결할 수 있는 '이름'으로 보유할 수 있도록 허용함으로써 프로토콜 설계를 개선할 수 있습니다. 따라서 개인키를 변경할 때 '이름'을 변경할 필요가 없으므로 개인키를 자주 변경하는 데 드는 비용을 줄일 수 있습니다.
우리는 '빼기 이론'에 기반한 크로스체인 비문 공간인 '빼기 프로토콜'을 설계하고 구현하는 과정에 있습니다. 빼기 이론에서 빼기 프로토콜로의 데모 실행에 일주일밖에 걸리지 않는 등 매우 긍정적인 진전이 있었습니다.
테스트 실행은 조만간 완료될 예정입니다! 계속 지켜봐 주세요.
계속 지켜봐 주세요.