위험 경고: '가상화폐', '블록체인'이라는 이름으로 불법 자금 모집 위험에 주의하세요. — 은행보험감독관리위원회 등 5개 부처
검색
로그인
简中
繁中
English
日本語
한국어
ภาษาไทย
Tiếng Việt
BTC
ETH
HTX
SOL
BNB
시장 동향 보기
DFINITY 네트워크와 BTC 네트워크의 직접 통합에 대한 진행 상황 조사 보고서
星球君的朋友们
Odaily资深作者
2021-12-03 10:13
이 기사는 약 4995자로, 전체를 읽는 데 약 8분이 소요됩니다
이 통합을 통해 인터넷 컴퓨터의 소프트웨어 컨테이너(캐니스터)가 비트코인 ​​메인 네트워크의 BTC를 직접 보유하고 보낼 수 있으며 스마트 계약을 비트코인 ​​네트워크에 가져올 수 있

저자: icp 리그

2021년 9월 15일 인터넷컴퓨터 거버넌스 시스템 NNS법안 20586채택을 통해 DFINITY 재단은 인터넷 컴퓨터 네트워크가 BTC 네트워크와 직접 통합될 수 있도록 암호화 부분을 계속 개발할 것입니다. 이 통합을 통해 인터넷 컴퓨터의 소프트웨어 컨테이너(캐니스터)가 비트코인 ​​메인 네트워크의 BTC를 직접 보유하고 보낼 수 있으며 스마트 계약을 비트코인 ​​네트워크에 가져올 수 있습니다.

첫 번째 레벨 제목

▍직접 통합이란

  1. 캐니스터가 비트코인 ​​네트워크에서 직접 비트코인을 받고 보유하도록 합니다.

  2. 캐니스터가 비트코인 ​​네트워크에서 자체 UTXO를 추적하고 쿼리하도록 합니다.

  3. 캐니스터는 비트코인 ​​트랜잭션을 생성하고, 다른 캐니스터로부터 비트코인 ​​트랜잭션을 수락하고, 트랜잭션을 비트코인 ​​네트워크로 전달할 수 있습니다.

캐니스터가 비트코인을 직접 보유할 수 있게 된 후 캐니스터는 튜링 완료 상태이므로 비즈니스를 작성할 수 있고 비트코인 ​​네트워크를 사용하는 다른 캐니스터와의 비트코인 ​​트랜잭션을 포함하여 다른 비트코인 ​​사용자와 거래할 시기를 결정할 수 있으며 비즈니스는 네트워크의 IC에서 실행됩니다.

따라서 비트코인 ​​네트워크의 유동성을 사용하여 중개자 및 브리지 없이 인터넷 컴퓨터에서 스마트 계약을 수행할 수 있습니다.

첫 번째 레벨 제목

▍임계값 ECDSA 서명 필요

ECDSA 서명은 비트코인 ​​및 이더리움 네트워크에서 널리 사용되므로 인터넷 컴퓨터의 캐니스터는 비트코인 ​​또는 이더리움 공개 키를 가질 수 있어야 하며 ECDSA 서명을 생성하여 다른 공개 체인 네트워크에서 트랜잭션을 보낼 수 있어야 합니다.

분명히 비트코인 ​​공개 키에 해당하는 키는 컨테이너 상태에 저장하면 안 되며, 캐니스터가 데이터를 캡슐화하도록 pirvate를 설정할 수 있더라도 키가 여전히 모든 노드에 노출될 수 있습니다. 캐니스터의 상태는 모든 블록체인과 마찬가지로 인터넷 컴퓨터의 신뢰 모델 하에서 서브넷의 노드 간에 공유되기 때문에 악의적인 노드가 있을 수 있으며 악의적인 노드는 자산을 훔치기 위한 공격을 통해 서명 키를 얻을 수 있습니다.

첫 번째 레벨 제목

▍위험과 도전

여기서 주요 과제는 임계값 ECDSA 서명 체계를 위한 안전한 다자간 계산 프로토콜을 정의 및 구현하고 이를 인터넷 컴퓨터 프로토콜과 통합하는 것입니다.

임계값 ECDSA 서명 프로토콜을 둘러싼 또 다른 문제는 안전한 분산 키 생성 프로토콜과 개인 서명 키에 대한 안전한 키 백업 및 복구 체계입니다.

첫 번째 레벨 제목

▍솔루션

위의 세 가지 요구 사항을 검토해 보겠습니다.

  1. 캐니스터가 비트코인 ​​네트워크에서 직접 비트코인을 받고 보유하도록 합니다.

  2. 캐니스터가 비트코인 ​​네트워크에서 자체 UTXO를 추적하고 쿼리하도록 합니다.

  3. 캐니스터는 비트코인 ​​트랜잭션을 생성하고, 다른 캐니스터로부터 비트코인 ​​트랜잭션을 수락하고, 트랜잭션을 비트코인 ​​네트워크로 전달할 수 있습니다.

함수 (1)의 경우 캐니스터에는 Bitcoin 주소가 파생되는 임계값 ECDSA 공개 키가 있어야 합니다.

기능 (2)의 경우 비트코인 ​​블록체인을 확인하고 추적하려면 비트코인 ​​블록을 인터넷 컴퓨터로 추출해야 합니다. 블록체인의 후속 블록에 충분한 작업이 있으면 트랜잭션과 해당 UTXO를 추출하여 요청 시 캐니스터에서 사용할 수 있습니다.

기능 (3)의 경우, 인터넷 컴퓨터는 아웃바운드 통신 채널(아웃바운드 통신 채널)을 설정해야 합니다. 이를 기반으로 비트코인 ​​스마트 계약 컨테이너의 아웃바운드 트랜잭션이 비트코인 ​​네트워크로 안정적으로 전송될 수 있습니다.

image.png

Threshold ECDSA는 비트코인과 기능적으로 완전히 분리되어 별도의 기능으로 IC에 구축되어 캐니스터가 트랜잭션 서명을 위한 공개 키와 API를 획득하여 비트코인을 지원하는 스마트 계약을 허용합니다.

첫 번째 레벨 제목

▍비트코인 네트워크 상태 확인 방법

인터넷 컴퓨터는 다른 네트워크의 블록을 도입하고 그것이 올바른지(형식, 난이도 등) 확인하고 최종성을 보장하기 위해 일정 횟수의 확인 후에 트랜잭션을 처리합니다. 보안은 다음에 달려 있습니다.인터넷 컴퓨터와 비트코인 ​​네트워크정상적인 기능이며 다른 요인은 아닙니다. 비트코인의 상태는 주로 비트코인을 보유하고 있는 각 캐니스터의 현재 잔고를 추적하는 데 사용됩니다.

그러나 비트코인 ​​및 이더리움의 노드는 사본에서 실행되지 않으며 비트코인 ​​및 이더리움 P2P 네트워크에서 블록을 얻기 위해 사본에 특수 어댑터만 구성됩니다. 어댑터는 기본 네트워크와 동일한 합의하에 있으므로 복제본은 동일한 상태를 가지며 시스템은 원하는 보안 속성을 유지합니다.

인터넷 컴퓨터와 비트코인 ​​네트워크 간의 릴레이는 IC 노드에서 가능한 한 분산된 방식으로 구현됩니다. 비트코인 ​​통합을 지원하는 IC 서브넷의 각 노드는 비트코인에 임의로 연결됩니다. 통화 네트워크의 노드 그룹 . 이 접근 방식은 또한 고도로 분산된 방식으로 비트코인 ​​네트워크의 여러 노드에 트랜잭션을 신속하게 배포할 수 있습니다.

관련 보안 문제와 관련하여 DFINITY는 고도로 제한된 샌드박스에서 신뢰할 수 없는 콘텐츠를 구문 분석하는 것과 같은 위험한 작업을 수행하는 샌드박스 코드를 계획하므로 누군가 악의적인 네트워크에 서비스를 제공하여 응답하더라도(예: 공격자의 비트코인 ​​노드에 성공적으로 연결) 원격 코드 실행 공격을 시작했으며 실제 피해를 입히기 위해 샌드박스를 벗어날 수 없었습니다.

첫 번째 레벨 제목

▍비트코인 연동 후

위에서 언급한 어댑터 네트워크 아키텍처는 매우 일반적인 방식으로 구축됩니다.이러한 모든 기능은 I2C 프로토콜 스택의 일부인 단일 통합 아키텍처에서 제공됩니다.따라서 Bitcoin 통합 외에도 여러 목적으로 사용할 수 있습니다.

  • 여기서 또 다른 주요 용도는 미래의 이더리움 통합입니다.

  • 컨테이너가 http 호출을 수행하거나 임의의 네트워크 연결을 수행하도록 허용합니다.

서로 다른 프로토콜(BTC, ETH, http, TCP…)은 대부분의 아키텍처 구성 요소(예: 네트워크 수준)를 공유하며 각 프로토콜은 자체 프로토콜 어댑터를 받습니다. 이러한 방식으로 우리는 I2C 프로토콜에 가능한 한 적은 결합으로 아키텍처를 고도로 모듈화하면서도 강력하게 유지할 수 있습니다.

현재 계획은 비트코인 ​​통합을 먼저 수행한 다음 이더리움 통합을 수행하는 것입니다. 비트코인 또는 이더리움 P2P 네트워크에 연결하기 위한 전용 어댑터와 같은 이러한 블록체인에 대한 특정 코드를 소개합니다. 현재 이 두 블록체인에 대한 지원만 추가됩니다. 통합이 큰 성공을 거두고 커뮤니티에서 Litecoin, Dogecoin 및 기타 네트워크 통합을 요청하면 당연히 투표할 수 있습니다.

비트코인과의 통합은 외부 HTTP 호출을 수행할 수 있는 토대를 마련할 것입니다. DFINITY는첫 번째 레벨 제목

보조 제목

9월 15일 업데이트:

  • 보조 제목

9월 22일 업데이트:

10월 4일 업데이트

  • 임계값 ECDSA 기능 구현: 데이터 유형, 아티팩트 풀에 대한 임계값 ECDSA 아티팩트, 트랜잭션 생성 및 유효성 검사 등과 같은 "기본"의 상당 부분이 구현되었습니다. 지금까지 위의 구현은 모두 시뮬레이션 상태에서 수행되었습니다. 일부 암호화 기본 요소는 병렬로 구현되었지만 지금까지 합의와 통합되지 않았습니다.

  • 보조 제목

10월 19일 업데이트:

  • 보조 제목

10월 31일 업데이트:

  • 11월 20일 이정표를 설정한 후, 우리는 이 기능이 내년에 마침내 출시될 가능성이 높다는 것을 깨달았습니다. 지금 당장은 정확한 추정을 하기 어렵습니다. 계획은 1분기에 있을 것입니다.

  • 보조 제목

11월 4일 업데이트:

  • 임계값 ECDSA의 키 관리에 대한 최종 결정은 여전히 ​​논쟁의 여지가 있습니다.

  • 단일 서브넷의 모든 캐니스터 키는 이 하나의 마스터 키에서 가져옵니다.

  • 동일한 마스터 키가 다른 서브넷에 배포된 경우 이 키의 보안은 키가 배포된 서브넷의 보안 약점에 따라 달라집니다. 즉, 주어진 마스터 키를 호스팅하려면 충분히 안전한 서브넷을 사용해야 합니다.

  • 보조 제목

11월 6일 업데이트:

  • 커뮤니티는 공식이 캐니스터가 비트코인 ​​메인넷을 사용할지 테스트를 사용할지 선택할 수 있는 옵션을 제공할 것을 제안했습니다. 이를 통해 비트코인 ​​메인넷에서 트랜잭션을 실행하지 않고도 컨테이너 코드를 더 쉽게 테스트할 수 있습니다.

  • 임계값 ECDSA 기능은 2022년까지 이월될 가능성이 높으며 이로 인해 비트코인 ​​통합의 롤아웃도 지연됩니다. 커뮤니티는 비트코인 ​​기능이 예정보다 빨리 완료되면 임계값 ECDSA 없이 비트코인 ​​기능에 액세스할 수 있도록 허용하고 구현 중에 ECDSA 기능 개발을 시뮬레이션하여 비트코인 ​​관련 기능의 롤아웃 시간을 단축할 것을 제안했습니다.

  • 보조 제목

11월 12일 업데이트:

  • 임계값 ECDSA: 암호화 및 합의 메커니즘 엔지니어링 팀은 현재 합의 메커니즘과 ECDSA 서명 간의 첫 번째 통합 작업을 진행하고 있으며, 이는 임계값 ECDSA 서명에 필요한 최소 4노드 서브네트워크를 확인하는 주요 이정표입니다. 우리는 이 이정표의 기한을 다음 주말로 정했습니다. 우리는 지금까지 좋은 진전을 이루었습니다.

  • 비트코인 시스템 구성 요소와 비트코인 ​​어댑터의 프로토콜 통합: 엔지니어링 팀은 이번 주 네트워크 계층의 비트코인 ​​어댑터와 실행 계층의 비트코인 ​​시스템 구성 요소 간의 프로토콜이 작동하기 시작하면서 상당한 진전을 이루었습니다. 즉, Bitcoin 시스템 구성 요소는 어댑터에서 블록을 가져올 수 있고, 어댑터는 미리 가져온 블록과 요청을 일치시키고, 일치하는 경우 시스템 구성 요소에서 처리하는 새로운 Bitcoin 블록을 제공합니다. 비트코인 시스템 구성 요소의 블록 요청에는 시스템 구성 요소가 가지고 있는 비트코인 ​​블록체인의 관점에서 모든 블록 해시가 포함됩니다. 어댑터는 해당 블록이 "상단" 블록의 시스템 구성 요소 로컬 보기와 일치하는 경우 비트코인 ​​블록으로 응답합니다. 이 프로토콜 수준의 통합은 IC 스택이 아닌 비트코인 ​​시스템 구성 요소에 "직접" 연결되는 단일 어댑터를 통해 수행됩니다. 이것은 비트코인 ​​관련 기능의 핵심 부분이 이제 이 두 가지 주요 구성 요소에서 작동하지만 새로운 통신 메커니즘이 계속 개발될 것임을 의미합니다.

  • 보조 제목

11월 19일 업데이트:

  • 보조 제목

11월 20일 업데이트:

  • 보조 제목

11월 26일 업데이트:

  • 미리 서명된 프로토콜의 합의 기능과 암호화 프리미티브의 통합이 완료되었으며 암호화 기능도 추가되었습니다. 그중에서 사전 서명은 가장 임계값인 ECDSA 기능 구현의 가장 복잡한 부분이며, 지금도 여전히 "해결"해야 하는 지름길로 엔드 투 엔드 작업을 하고 있습니다. 이러한 바로 가기의 경우 서명 프로토콜이 구현된 후 완전히 작동합니다.

  • 사전 서명을 보다 구체적으로 만들기 위해 Grafana 대시보드를 통해 기능을 시각화했습니다. 자세한 내용은 다음과 같습니다.

  • 보조 제목

텍스트

  • 보조 제목

11월 29일 업데이트:

  • 기본 루트 및 임계값 Schnorr 서명은 임계값 ECDSA 이후의 다음 단계일 수 있지만 아직 확고한 결정은 내려지지 않았습니다. Threshold Schnorr를 구현할 때 Threshold ECDSA 작업의 시너지 효과를 완전히 활용할 수 있지만 키 파생 체계를 포함한 프로토콜 사양을 정의하고 보안을 증명하고 시스템 설계를 만들고(시너지 활용) 구현해야 합니다. 그것.

  • 첫 번째 레벨 제목

▍자원

https://forum.dfinity.org/t/threshold-ecdsa-signatures/6152

https://forum.dfinity.org/t/direct-integration-with-bitcoin/6147

BTC
DFINITY
Odaily 공식 커뮤니티에 가입하세요