양방향 마이크로 결제 채널의 무효화 트리 정보
2954 단어 micropaymentBlockchainBitcoin
무슨 이야기?
비트코인은 단위 시간당 처리할 수 있는 트랜잭션 수에 한계가 있습니다.
소위 확장성 문제입니다. 이를 해결하기 위해 트랜잭션 처리를 블록 체인 외부에서 수행하는 마이크로 지불 채널이라는 접근법이 있습니다.
invalidation tree는 양방향 마이크로 지불 채널의 기본 구조입니다.
원래 논문은
A Fast and Scalable Payment Network with Bitcoin Duplex Micropayment Channels
전제 지식
준비
각각 1BTC 보유하고 있는 Alice 와 Bob 가, 양방향(Alice ⇔ Bob)으로 자금의 교환을 하는 것을 생각합니다. 양방향으로 상호작용을 하려면, 단방향 마이크로페이먼트 채널을 2개 만들면 좋을 것입니다. 이곳에서
Cab : Alice ⇒ Bob の単方向チャネル
Cba : Bob ⇒ Alice の単方向チャネル
로 정의합니다. 각 채널에서 자금의 초기 상태는 다음과 같습니다.
Cab: Alice(1BTC), Bob(0BTC)
Cba: Alice(0BTC), Bob(1BTC)
여기서, Alice ⇒ Bob 에 1BTC 지불, Bob ⇒ Alice 에 0.5BTC 지불을 하면 다음과 같이 변화합니다.
Cab: Alice(0BTC), Bob(1BTC)
Cba: Alice(0.5BTC), Bob(0.5BTC)
현재 Alice의 보유 자금은 0.5BTC, Bob은 1.5BTC입니다. 할 수 없습니다.
양방향 마이크로 지불 채널
invalidation tree는 간단히 설명하면 단방향 채널을 재설정하는 메커니즘입니다.
위의 Cab, Cba를 다음과 같이 재설정합니다.
Cab: Alice(0.5BTC), Bob(0BTC)
Cba: Alice(0BTC), Bob(1.5BTC)
이 때 이전 채널을 invalidate (사용 안 함)해야합니다.
invalidation tree 에서는, 타임 락을 이용해 invalidate 하고 있습니다.
A Fast and Scalable Payment Network with Bitcoin Duplex Micropayment Channels 부터
그림에서 invalidation tree의 깊이는 d = 3입니다.
d 는 1 에서도 문제 없습니다. d가 크면 리셋 횟수의 상한이 증가합니다.
●는 Alice, ○는 Bob, ←이런 녀석이 멀티 시그입니다.
사각형은 트랜잭션이고 T는 잠금 시간입니다.
그림 오른쪽 가장자리의 micropayment channels는 단방향 지불 채널입니다.
그 결과 가장 오른쪽 은 멀티 시그이지만 가상으로 하나의 파티에 자금이 보유하고 있는 형태가 됩니다.
그림에서 세 번 재설정이 발생했으며 총 네 번의 경로가 발생했습니다.
1회째 : 100 - 100 - 100
2회째 : 99 - 100 - 100
3회째 : 99 - 99 - 100
네 번째 : 99 - 99 - 99
가장 짧은 시간 잠금이 있는 99 - 99 - 99 경로만 유효합니다.
예를 들어, 100 - 100 - 99 와 같은 패스는 조합할 수 없습니다. T = 100 잠금 시간 트랜잭션 출력은 T = 99 잠금 시간 트랜잭션이 참조 할 수 없기 때문입니다 (UTXO 사용).
Reference
이 문제에 관하여(양방향 마이크로 결제 채널의 무효화 트리 정보), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/nagmnt/items/1060d3af483ed517e9c3
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
invalidation tree는 간단히 설명하면 단방향 채널을 재설정하는 메커니즘입니다.
위의 Cab, Cba를 다음과 같이 재설정합니다.
Cab: Alice(0.5BTC), Bob(0BTC)
Cba: Alice(0BTC), Bob(1.5BTC)
이 때 이전 채널을 invalidate (사용 안 함)해야합니다.
invalidation tree 에서는, 타임 락을 이용해 invalidate 하고 있습니다.
A Fast and Scalable Payment Network with Bitcoin Duplex Micropayment Channels 부터
그림에서 invalidation tree의 깊이는 d = 3입니다.
d 는 1 에서도 문제 없습니다. d가 크면 리셋 횟수의 상한이 증가합니다.
●는 Alice, ○는 Bob, ←이런 녀석이 멀티 시그입니다.
사각형은 트랜잭션이고 T는 잠금 시간입니다.
그림 오른쪽 가장자리의 micropayment channels는 단방향 지불 채널입니다.
그 결과 가장 오른쪽 은 멀티 시그이지만 가상으로 하나의 파티에 자금이 보유하고 있는 형태가 됩니다.
그림에서 세 번 재설정이 발생했으며 총 네 번의 경로가 발생했습니다.
1회째 : 100 - 100 - 100
2회째 : 99 - 100 - 100
3회째 : 99 - 99 - 100
네 번째 : 99 - 99 - 99
가장 짧은 시간 잠금이 있는 99 - 99 - 99 경로만 유효합니다.
예를 들어, 100 - 100 - 99 와 같은 패스는 조합할 수 없습니다. T = 100 잠금 시간 트랜잭션 출력은 T = 99 잠금 시간 트랜잭션이 참조 할 수 없기 때문입니다 (UTXO 사용).
Reference
이 문제에 관하여(양방향 마이크로 결제 채널의 무효화 트리 정보), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/nagmnt/items/1060d3af483ed517e9c3텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)