Bitcoin의 Graftroot는 무엇입니까? 완전 초보자 가이드
Schnorr 서명을 비트 코인에 포함시키는 보류는 Taproot에 대한 논쟁을 불러 일으켰고 Graftroot는 Taproot의 보완 요소로 등장하여 효율성을 향상 시켰습니다..
제안 Taproot 제안 직후 Bitcoin 개발자 Gregory Maxwell이 Graftroot는 Taproot의 다중 서명 스크립팅 조건 이점을 확장하고 단점, 주로 효율성을 해결합니다. 이 글은 Taproot의 이전 주제를 확장하므로 Graftroot에 들어가기 전에 Taproot의 작동 방식을 이해하는 것이 좋습니다..
Taproot 및 MAST에 대한 간략한 배경
Graftroot는 현재 P2SH 스크립트를 사용하는 비트 코인의 스크립팅 조건을 개선하는 것입니다. 여기에는 M-of-N 다중 서명 및 여러 참가자간에 비트 코인을 사용하기 위해 실행되는 타임 록과 같은 조항이 포함됩니다..
Taproot는 Schnorr 서명과 MAST로 알려진 P2SH에 대한 보류중인 프로토콜 업그레이드에 의존합니다. MAST를 사용하면 특정 조건이 충족되어 해당 비트 코인을 사용하기 위해 다른 스크립팅 조건을 공개하지 않고 단일 트랜잭션 내에서 수많은 스크립팅 조건을 숨길 수 있습니다. 그러나 외부 관찰자는 명시 적 트랜잭션이 표준 트랜잭션과 다르게 보이기 때문에 MAST를 사용하는지 여부를 식별 할 수 있습니다..
Taproot는 참가자가 조정할 수있는 ‘임계 값 공개 키’및 ‘임계 값 서명’을 통해 Schnorr 집계 서명과 함께 사용되는 MAST의 속성을 마스킹하도록 설계되었습니다. Schnorr와 MAST를 연결하여 표준 트랜잭션으로 나타나는 복잡한 다중 스크립트 트랜잭션을 생성하는 탁월한 솔루션입니다..
Taproot의 장점에도 불구하고 다자간 거래의 ‘협력 적 성사’에 도달하지 않거나 참가자가 개인 키를 잃어 버리는 경우가 있습니다. 이러한 시나리오에서 다중 서명 또는 시간 잠금과 같은 스크립팅 조건을 사용하면 자금이 잠기지 않고 계속 사용할 수 있도록 중요한 폴 백이 제공됩니다..
비트 코인의 스크립팅 언어 표면을 활용하는 복잡한 기능에서 불리한 시나리오와 혁신에 대한 더 많은 보호 장치로서 트랜잭션은 아마도 더 많은 스크립팅 조건을 포함 할 것입니다. 특히 비트 코인에 Schnorr 서명이 포함되어 있습니다..
Taproot의 단점은 다양한 조건을 가진 복잡한 비트 코인 스크립팅 계약이 협력 적 마감 또는 간단한 스크립팅 조건으로 수행 될 때보 다 데이터가 무겁고 덜 비공개가된다는 것입니다. Maxwell은 효율성을 희생하지 않고 Taproot의 개인 정보를 유지하는 방법으로 Graftroot를 제안하여 프로토콜을 임의의 스크립팅 조건으로 확장 할 수 있습니다..
그의 제안에 따르면 :
“Taproot는 기본적으로 하나의 대안 만 제공하는 한계가 있습니다. 나무 나 뿌리 줄기는 할 수 있지만 단일 수준보다 프라이버시와 효율성이 떨어집니다. 예 : 트리 커밋에는 대안 수의 로그와 함께 증가하는 오버 헤드가 있습니다.”
읽기 : Taproot 란??
이식 뿌리
Taproot에서 여러 스크립팅 조건의 비트 코인 스마트 계약 참가자는 공개 키를 결합하여 ‘임계 값 공개 키’와 ‘임계 값 서명’을 형성합니다. 동일한 프로세스가 Graftroot에도 적용되지만 참가자는 특정 대체 스크립팅 조건에 독립적으로 서명합니다. 전체 조건 세트가 아닌 각 조건에 대한 임계 값 서명 생성.
Maxwell에 따르면 :
“그라프 트 루트를 사용하면 참가자는 탭 루트와 마찬가지로 선택적으로 탭 루트 대안을 사용하여 임계 값 키를 설정합니다. 언제든지 탭 루트 키로 해당 스크립트 (및 스크립트 만)에 서명하고 해당 위임을 선택한 사람과 공유하여 대리 스크립트에 서명하는 기능을 위임 할 수 있습니다. 나중에 코인을 사용할 때가되었을 때 서명자를 사용할 수없고 스크립트를 사용해야하는 경우 교환 당사자는 스크립트를 충족하는 데 필요한 모든 작업을 수행합니다 (예 : 자체 서명 및 타임 락 제공 등). 서명자의 스크립트 서명과 함께 해당 정보를 제공합니다.”
예를 들어, Alice, Bob 및 Charlie는 몇 가지 대체 스크립팅 조건을 사용하여 비트 코인 트랜잭션을 구성하고 협력 적 마감이 충족되지 않는 경우 :
- 비트 코인은 참가자들간에 2/3 다중 서명 비용으로 사용할 수 있습니다..
- Alice는 Bob이나 Charlie의 서명없이 1 개월 후에 비트 코인을 사용할 수 있습니다..
- Bob은 Alice 또는 Charlie의 서명없이 비밀 키로 비트 코인을 사용할 수 있습니다..
각 참가자는 대체 스크립트에 서명하고 각 조건에 대한 임계 값 서명을 저장합니다. 대체 조건의 임계 값 서명은 나중에 당사자가 스크립트에 동의했음을 증명하는 데 사용할 수 있습니다..
특정 조건이 충족되면 (예 : 한 달이 지나고 2/3 다중 서명 지출 또는 Bob 비밀 키 지출이 발생하지 않음) 비트 코인을 지출하는 세 번째 조건 (Alice의 시간 잠금 조건)을 사용하여 지출 할 수 있습니다. 비트 코인. Alice는 저장된 대체 스크립트 조건과 임계 값 서명을 공개하여 지출의 신뢰성을 증명합니다. 다른 조건은 공개되지 않습니다.
반대로 3 명의 참가자가 협력 마감으로 거래를 정산하면 조건이 노출되지 않고 거래가 표준 거래로 나타납니다. 스크립팅 조건에 여러 참가자가 있어도 외부 관찰자가 식별 할 수 없습니다..
Taproot에 비해 Graftroot의 가장 큰 장점은 효율성을 희생하지 않고 대규모 스크립팅 조건으로 프로토콜을 확장 할 수 있다는 것입니다. 데이터 오버 헤드는 일정합니다. 계약이 처음에 조립 된 후에도 스크립팅 조건을 추가 할 수 있습니다. Maxwell에 따르면 :
“그 결과 하나의 대안 만 허용하는 대신 무제한의 대안을 제공 할 수 있습니다. 모두 단일 대안과 동일한 효율성으로 실행되며 그 수는 오버 헤드없이 숨겨집니다. 기존 코인을 이동하지 않고도 대체물을 제공 할 수 있습니다. 키를 변경하여 대체물을 사용할 수있는 능력을 파괴하기 위해서는 이동이 필요합니다.”
Graftroot의 또 다른 중요한 이점은 Maxwell이 2012 년으로 거슬러 올라가 복잡한 논쟁으로 언급 한 주제 인 스크립팅에서 키를 위임하는 기능입니다..
그러나 Graftroot는 몇 가지 단점이없는 것은 아닙니다. 프로토콜은 상호 작용하므로 참가자는 협력 마감으로 비트 코인을 사용하기 전에 대체 스크립트에 서명하는 것에 대해 의사 소통해야합니다. 더 많은 스크립팅 조건과 참여자가 추가됨에 따라 번거로운 키 관리 문제도 발생합니다. 참가자는 상관 관계가있는 대체 조건 임계 값 키를 저장해야하는데, 이는보다 주류 다양성의 사용자를 유치하는 데 이상적이지 않습니다..
스크립팅 조건의 근본적인 복잡성 문제는 또한 미래의 사용자 인터페이스에서 대체 조건의 생성 및 사용을 추상화하기 위해 큰 진전이 필요하다는 개념으로 이어집니다. Taproot 및 Graftroot를 사용하면 백엔드에서 스크립팅 조건을 훨씬 쉽게 탐색 할 수 있지만 프런트 엔드에서 마스킹하는 복잡한 혁신으로 남아 있습니다..
개발 및 응용
향후 몇 가지 스크립팅 프로젝트가 비트 코인 프로토콜에 대한 보완적인 업그레이드로 포함되도록 고정되어 있습니다. 특히 Schnorr 서명은 SegWit 및 Blockstream 이후 비트 코인에 대한 가장 중요한 업그레이드입니다. 최근에 출시 MuSig — 비트 코인을 Schnorr 서명으로 업그레이드하기 위해 제안 된 테스트 코드.
MAST 및 Taproot는 Schnorr 이후 또는 함께 출시 될 것입니다. Graftroot는 동일한 업그레이드에 포함될 수 있지만 MAST 및 Taproot와 Schnorr의 통합 뒤에 밀릴 수도 있습니다..
단순한 다중 서명 스크립팅 조건은 Quadriga와 같은 사고가 발생하는 것을 방지 할 수 있으며 더 복잡하고 확장 가능한 대체 조건을 통해 혁신적인 거래 / 계약 구성을 가능하게 할 수 있습니다. Taproot 및 Graftroot의 추가 이점은 고유 한 개인 정보 보호이며 복잡한 트랜잭션을 표준 트랜잭션으로 표시합니다..
Schnorr 서명에 대한 핵심 비트 코인 커뮤니티의 흥분은 뚜렷합니다. 레거시 암호 화폐와의 통합은 개발 및 혁신을위한 다양한 새로운 기회를 엽니 다..