맨위로 가기
  • 공유 공유
  • 댓글 댓글
  • 추천 추천
  • 스크랩 스크랩
  • 인쇄 인쇄
  • 글자크기 글자크기
링크가 복사되었습니다.

인터넷컴퓨터(ICP)의 비트코인 통합이 개인키를 보호하는 방법

2024.02.05 (월) 14:13

대화 이미지 4
하트 이미지 9

ICP

ICP의 기본 비트코인 통합은 비트코인에 대한 스마트 컨트랙트 기능을 해제하고 크로스체인 브리지의 필요성을 없애준다.

ICP에서의 직접 비트코인 통합은 캐니스터(고급 스마트 컨트랙트)가 프로토콜 수준에서 비트코인 네트워크와 상호 작용할 수 있게 한다. 이를 통해 캐니스터는 중개자와 제3자 블록체인 브릿지를 사용하지 않고도 비트코인 메인넷에서 직접 BTC를 수신, 보유, 전송할 수 있다. 글로벌 웹3 보안 보고서에 따르면 2022년에는 브릿지와 관련된 단 12건의 사건으로 인해 거의 18억 9천만 달러가 도난당했다.

비트코인 통합을 통해 ICP의 캐니스터는 비트코인 렛저를 안전하게 읽고 쓸 수 있다.

(1) 캐니스터는 인터넷 컴퓨터 프로토콜에서 실행되는 비트코인 라이트 노드를 통해 비트코인 블록체인의 상태를 읽을 수 있다. 이를 위해 ICP 네트워크의 노드는 비트코인 네트워크로부터 직접 블록을 획득하고 포함된 거래를 추출 및 처리하여 전체 비트코인 네트워크의 현재 미사용 트랜잭션 출력 (UTXO) 세트와 동기화된다. 이 UTXO 정보는 API를 통해 캐니스터에 제공되므로 캐니스터는 비트코인 주소의 잔액과 UTXO 정보를 액세스할 수 있다. 즉, 캐니스터는 자신이 제어하는 주소를 포함하여 어떠한 비트코인 주소의 잔액과 UTXO를 조회할 수 있다. 이를 통해 블록체인의 상태를 보고 비트코인 주소의 지출 가능한 잔액 (및 UTXO)을 결정할 수 있다.

(2) 비트코인 네트워크에 쓰기 위해, 캐니스터는 비트코인 거래에 안전하게 서명하고 이를 비트코인 네트워크에 제출할 수 있다. 안전한 서명은 체인 키 ECDSA라고 불리는 새로운 임계값 ECDSA 프로토콜을 통해 이루어진다. 서명된 거래는 프로토콜 수준의 통합을 통해 제출되며, 이로 인해 ICP 복제본이 수 많이 연결된 비트코인 노드에 거래를 제출한다.

ICP에서 개인 키는 어디에 저장될까?

이제 캐니스터로 거래를 작성(서명 및 제출)할 수 있지만, 이는 캐니스터가 개인 키를 저장한다는 의미일까?

캐니스터의 상태에 개인 키를 보유하는 것은 ICP 네트워크 내의 악의적인 노드에 의해 사용자의 디지털 자산에 대한 접근을 허용할 수 있으므로, 이를 방지하기 위해 ICP는 임계값 암호화를 사용하여 개인 키가 단일 노드 또는 캐니스터에 완전히 저장되지 않도록 한다. 임계값 암호화를 통해 비밀 분할 또는 분할로 나눈다. 이 비밀을 재구성하거나 메시지에 서명하는 데 필요한 분할(최소한 임계값)이 필요하다.

따라서 전체 개인 키를 한 곳에 저장하는 대신, 여러 부분으로 나뉜 비밀 분할은 더 많은 노드가 있는 고복제 서브넷, 즉 일반 앱 서브넷보다 노드 수가 많은 서브넷의 모든 노드에 의해 보유된다. 게다가, 이러한 비밀 분할은 분할이 타협될 가능성에 대비하여 노드 간에 주기적으로 재분배된다. 재분배는 현재의 분할에서 새로운 분할을 생성하기 위해 암호화 프로토콜을 사용하는 것을 의미한다. 재분배된 후 이전에 유효했던 분할은 무효화되어 어떤 악의적 행위자가 획득했더라도 사용할 수 없게 된다.

비트코인 네트워크에 쓸 때, 비트코인 거래는 임계값 서명을 사용하여 서명되는데, 이는 충분한 수의 서브넷 노드가 서명하기로 동의하면 각 노드가 자신의 키 분할을 사용하여 공동으로 거래에 서명한다는 것을 의미한다. 서명을 계산하기 위해서는 임계값만큼의 키 분할이 필요하다.

이는 키가 전체로서 어떤 엔티티에도, 임계값보다 적은 수의 노드를 제어하는 공격자에게도 사용할 수 없음을 보장한다. ICP의 경우, 캐니스터 거래 요청 시, 노드는 원래의 개인 키를 재생성하는 대신 자신의 분할을 사용하여 비트코인 거래에 공동으로 서명한다. 이 서명 프로토콜은 노드의 3분의 2 이상이 정직하고 3분의 1 미만이 손상되었다고 가정한다.

ICP의 ckBTC 및 비트코인 통합에 대한 비수탁 방식

참가자들 사이에 분배된 키 분할을 사용하여 ECDSA 서명을 공동으로 계산하도록 설계된 대부분의 프로토콜은 제로 견고성 또는 동기식 네트워크 또는 둘 모두를 가정한다. 견고성이 없으면 단일 노드가 충돌하거나 참여하지 않을 때 프로토콜이 디지털 서명을 생성하는 능력을 잃을 수 있다. 따라서 동기식 네트워크를 가정하면 단순한 메시지 지연으로 인해 서명 프로토콜이 실패하고 서명이 생성되지 않을 수 있으므로 프로토콜은 가용성에 대한 공격에 취약하다.

ICP는 비동기 통신 네트워크에서 작동하도록 설계되어 있어, 즉 메시지 지연을 견딜 수 있으며 실패하지 않는다. 노드의 3분의 1 미만이 손상되거나 고장나거나 충돌해도 전체 시스템은 여전히 효과적으로 기능하며, 즉 처리량이 감소된 상태로 계속 운영된다. 그리고 서브넷의 노드가 실패하면, ICP는 고장난 노드를 대체할 예비 노드를 선택한다.

<저작권자 ⓒ TokenPost, 무단전재 및 재배포 금지>

많이 본 기사

미션

매일 미션을 완료하고 보상을 획득!

출석 체크

0 / 0

기사 스탬프

0 / 0

댓글

4

추천

9

스크랩

스크랩

데일리 스탬프

0

매일 스탬프를 찍을 수 있어요!

데일리 스탬프를 찍은 회원이 없습니다.
첫 스탬프를 찍어 보세요!

댓글 4

댓글 문구 추천

좋은기사 감사해요 후속기사 원해요 탁월한 분석이에요

0/1000

댓글 문구 추천

좋은기사 감사해요 후속기사 원해요 탁월한 분석이에요

사계절

2024.02.11 23:30:18

기사 감사합니다!

답글달기

0

0
0

이전 답글 더보기

엠마코스모스

2024.02.11 21:29:44

정보 감사합니다

답글달기

0

0
0

이전 답글 더보기

사계절

2024.02.06 15:39:33

기사 감사합니다!

답글달기

0

0
0

이전 답글 더보기

사계절

2024.02.05 21:41:46

기사 감사합니다!

답글달기

0

0
0

이전 답글 더보기

1