비트 코인을 거래 한 적이 있다면 1 시간 (또는 최악의 경우 하루) 거래 시간을 겪었을 수 있습니다. 비트 코인이 15 만개 이상의 미확인 거래 백 로그 거래량이 많을 때, 그리고이를 엄청난 수수료와 결합 할 때, 어떻게 사용하는지 궁금합니다. KFC에서 그 5 조각 식사를 지불하십시오.

번개 네트워크는이를 돕기 위해 여기에 있습니다. 이 개념은 Thaddeus Dryja와 Joseph Poon의 아이디어이며 듀오는 백지 기술 전문 용어로 가득 찬 긴 종이 분필을 읽는 데 너무 열심이 아니라면 여기에 평신도의 용어로 설명해 드리겠습니다..

라이트닝 네트워크 란??

가장 기본적인 수준에서 번개 네트워크는 비트 코인 사용자가 비트 코인 블록 체인에서 통화 가치를 교환하는 방법입니다. 이는 비트 코인의 기본 스크립트와 상호 작용하는 몇 가지 복잡한 알고리즘을 사용하여 수행되며, 거래 수수료의 일부로 번개처럼 빠른 결제가 가능합니다. 따라서 비트 코인이 향후 실행 가능한 결제 옵션이되기를 원할 경우 필요한 확장 성 도구로 제시되었습니다. 이 관행은 교차 체인 원자 스왑으로 확장 될 수 있습니다. 이러한 스왑은 두 개의 다른 통화 / 블록 체인간에 발생한다는 점을 제외하면 실제로 동일합니다. 여기서 원자 스왑에 대해 자세히 살펴 봅니다..

너무 간단한 설명을 다루었으므로 이제 더 긴 설명이 필요합니다..

Lightning Network : 작동 원리

양자 간 결제 채널 개설

Lightning 네트워크 사용을 시작하려면 결제 채널을 설정하는 것이 좋습니다. 지불 채널은 번개 네트워크가 가치를 전송하는 거래 수단입니다. 하나를 설정하려면 블록 체인에서 직접이 채널에 대한 트랜잭션을 열어야합니다..

“하지만이 모든 일이 오프 체인에서 일어난다 고 말씀 하셨나요?” 걱정하지 마십시오. 여전히 그렇습니다.하지만 먼저 비트 코인 네트워크에 거래를 개시하고 있음을 알려야합니다. 이 작업을 마치면 귀하와 귀하가 거래하는 상대방은 귀하가 채널에서 수행 한 거래에 대한 자체 대차 대조표를 유지하게됩니다. 자금이 이동 될 때마다 거래 및 업데이트 된 계정 잔액이이 원장에 기록되며, 채널에서 비즈니스를 수행 한 후 최종 결과를 블록 체인에 브로드 캐스트하여 계정을 폐쇄합니다..

다중 서명 지갑

“결제 채널이 오프 체인에서 이루어지면 블록 체인에 기록 될 때까지 자금이 어디에서 어떻게 관리됩니까?” 정말 좋은 질문입니다. 결제 채널을 사용하려면 양 당사자가 자금을 다중 서명 지갑 주소로 보내야합니다..

Molly와 Steve가 슈퍼 볼의 결과에 베팅을했다고 가정 해 보겠습니다. 그들은 각각 1 BTC를 베팅하고 상대방이 거래의 끝을 보유하고 있는지 확인하기를 원하므로 두 자금을 다중 서명 지갑에 입금합니다. 이 지갑은 예금 금고와 같은 기능을하는 반면 거래를위한 개인 키 세트는 양쪽 당사자가 자금에 액세스 할 수있는 조합과 같은 기능을합니다. 자금은 다음 때까지 지갑에 잠겨 있습니다.

  • Molly와 Steve는이 개인 키로 최종 거래에 서명합니다.,
  • 한 당사자가 직접 거래를 완료하기로 결정하거나
  • 시간 제한에 도달하고 거래가 자동으로 제출됩니다. 이 경우 자금은 양 당사자의 개별 지갑으로 다시 이동됩니다..

다중 서명 지갑을 성공적으로 설정하기 위해 Molly와 Steve는 값 (본질적으로 트랜잭션 잠금을 해제하는 비밀 키)을 생성 한 다음 해시를 생성하고 서로에게 전송하는 데 사용합니다. 이 정보를 보관하십시오. 나중에 약정 트랜잭션이 작동하는 방식을 이해하는 것이 중요합니다..

Molly와 Steve가 각자의 자금을 다중 서명 지갑에 입금하면 오픈 거래 블록 체인에 방송합니다. 이것이 방송되면 일련의 약정 거래 그런 다음 자금 관리에 사용됩니다..

약정 거래로 가치 이전

Molly가 베팅에서 이겼지 만 그녀는 착했습니다. 그래서 Steve는 1이 아닌 0.5 BTC 만 빚 졌다고 말합니다.이 부의 양도를 시작하기 위해 Molly와 Steve는 약정에 서명하여 지불 채널에서 각자의 잔액을 업데이트합니다. 트랜잭션. 약정 거래는 상호 합의에 따라 두 참가자간에 자금을 분배합니다. 본질적으로 이러한 거래는 결제 채널이 닫히면 지급되는 IOU와 같은 역할을합니다..

예를 들어, 가치를 교환하기 위해 Molly는 1.5 BTC를 자신에게 보내고 .5를 새로운 다중 서명 지갑 주소로 보내는 거래에 서명합니다. 그런 다음이 트랜잭션에 서명하고 해당 해시를 Steve에게 보냅니다. 차례로 Steve는 Molly를 미러링하기위한 약정 거래에 서명하여 자신에게 .5 BTC를 보내고 다른 다중 서명 지갑에 1.5를 보냅니다. 그런 다음 서명하고이 트랜잭션의 해시를 Molly로 보냅니다..

라이트닝 네트워크 거래

따라서 a) 결제 채널의 다중 서명 지갑에있는 원래 2 BTC, b) Steve에게 지불 할 다중 서명 지갑에있는 .5 BTC, c) 다중 서명에있는 1.5 BTC가 있습니다. Molly에게 지불 할 수있는 지갑입니다. 효과적으로 양 당사자가 각자의 거래 해시를 전송하면 양 당사자가 이체에 동의함에 따라 결제 채널의 다중 서명에있는 대차 대조표가 업데이트됩니다. 비올라, 비트 코인의 블록 체인을 사용하지 않고 통화가 교환되었습니다..

이 지갑의 값은 다음 세 가지 조건에서만 잠금 해제 할 수 있습니다.

  1. 일정 시간 만료,
  2. 양 당사자가 지갑의 가치 (키)로 설정 한 다중 서명 지갑에서 자금을 잠금 해제하거나
  3. 양 당사자가 거래에 함께 서명하기로 결정.

한 당사자가 채널을 닫고 트랜잭션 만 사인 오프하기로 결정하면 트랜잭션이 서명 된 시간부터 미리 결정된 시간 (계약에 의해 결정됨)을 기다려야한다는 점에 유의하는 것이 중요합니다. 자금을 받기 위해. 과도하게 보일 수 있지만 결제 채널을 통한 부정 행위를 방지하는 것이 필수적입니다..

정기 결제 / 채널 업데이트

Molly와 Steve가 채널을 계속 업데이트하거나 둘 이상의 교환을하려면 어떻게해야합니까??

이를 더 설명하기 위해 Steve가 이발과 같은 반복적 인 서비스에 대해 Molly에게 비용을 지불했다고 가정 해 보겠습니다. Steve는 다중 서명 지갑에 0.2 BTC를 입금하고 잠금이 해제 될 때마다 Molly에게 0.001 BTC에 대한 약정 거래에 서명하고 새로운 다중 서명 주소로 보냅니다. 이렇게하려면 첫 번째 약정 트랜잭션이 서명 될 때 완료되기 때문에 네트워크에서 트랜잭션을 열지 않고 방금 살펴본 단계를 반복해야합니다..

따라서 반복 결제를 처리하려면 다중 서명의 계정 잔액을 매번 업데이트해야합니다. 이를 위해 Steve는 머리를자를 때마다 Molly에게 지불하기 위해 설정 한 다중 서명 지갑에 새로운 금액을 약정했습니다. 그러나 그렇게함으로써 그는이 새로운 트랜잭션에 대한 새로운 값과 새로운 해시를 생성합니다. Molly는 동일한 작업을 수행하며 양 당사자가 새 해시를 교환 할 때 이전 트랜잭션의 이전 값 (키)도 포함합니다..

사실상 이것은 어느 당사자도 상대방을 속일 수 없도록합니다. 결제 채널을 닫을 때 Steve가 이전 거래 금액을 방송하여 Molly를 속이려고하면 문제가 발생합니다..

예를 들어 Steve가 채널을 닫을 때 그가 입금 한 원래 2 BTC에서 Molly 1 BTC를 빚지고 있지만 원래 거래에 서명하여 원래 금액을 제공하면 Molly는 모든 이전 거래의 가치를 가지고 있기 때문에 그를 호출 할 수 있습니다. . 뿐만 아니라 Steve는 거래를 수행하기 전에 양 당사자가 합의한 기간에 따라 거래가 완료되기까지 기다려야하지만 Molly는 즉시 처리됩니다. 따라서 그녀가 자신의 서비스에 대해 0BTC를 받았다는 것을 알게되면, 그녀는이 거래에 대한 키를 가지고 있기 때문에 다중 서명 지갑에있는 2BTC에 사인 오프 할 수 있으며 따라서 자금을 잠금 해제 할 수 있습니다..

따라서 한 당사자가 다른 당사자를 속이려고 시도하면 상대방에게 악의적 인 당사자의 자금이 모두 지급됩니다. 이 벌금은 악의적 인 행위자가 결제 채널의 공유 기금 할당을 악용하는 것을 방지하기위한 것입니다..

또한이 부정 행위를 발견 한 노드 운영자와 채굴자는 Molly가 온라인 상태가 아닌 경우 부정 행위를 알아 차리기 위해 Molly를 대신 할 수 있습니다. 보상으로이 수호 천사는 서비스에 대해 거래 된 통화로 현상금 (수수료)을받습니다..

결제 채널 닫기

Molly와 Steve가 계정을 폐쇄 할 준비가되면 개인 키로 트랜잭션에 서명하여 최종 계정 잔액을 블록 체인에 브로드 캐스트합니다. 이 시점에서 채굴자는 평상시대로이를 확인하고 공개 원장에 저장합니다. 개시 트랜잭션과 마찬가지로이 마감 트랜잭션은 양쪽 당사자가 비트 코인의 블록 체인과 가질 수있는 유일한 상호 작용입니다..

또는 두 당사자가 계약 기간에 대한 만료 날짜를 설정할 수도 있습니다. 예를 들어 nLockTime 알고리즘을 사용하면 30 일 동안 결제 채널을 열 수 있으며 그 후 채널이 닫히고 최종 잔액이 블록 체인에 방송됩니다. 그러나 당사자가 잔액을 업데이트 할 때마다 만료 날짜가 줄어 듭니다. 따라서 Molly와 Steve가 한 시즌 동안 여러 축구 경기에 베팅을했다면, 베팅 금액을 지불 할 때마다 nLockTime 계약은 새롭고 단축 된 만료일을 갖게 될 것입니다 (예 : 첫 번째 약정 거래가 30 일 안에 완료되는 경우, 두 번째 거래는 29 년에 지급되고, 세 번째 거래는 28 년에 지급됩니다..

nLockTime 계약의 목적은 간단합니다. 계정 잔액을 최신 상태로 유지하고 한 당사자가 계정 명세서를 위조하는 것을 방지합니다. 앞서 살펴본 것처럼 약정 거래가 합의 될 때마다 이전 계정 잔액이 새 잔액으로 대체되고 각 관련 당사자는 이전 거래 값 (키)과 함께이 새로운 잔액에 대한 기록을 보유합니다. 한 당사자가 상대방을 속이려고 시도하면 사기 당사자에게 벌금이 부과됩니다..

다중 채널 결제 및 해시 시간 잠금 계약

“Molly와 Steve가 서로에게 비트 코인을 보내고 싶지만 결제 채널이 열려 있지 않으면 어떨까요?” 글쎄, 그들은 중개자를 통과 할 수 있습니다. 이 남자를 Chuck이라고 부르겠습니다. Chuck에게 인사 해.

결과적으로 Molly와 Steve는 모두 Chuck과 함께 결제 채널을 열었으므로 새 채널을 여는 대신 Chuck을 통해 거래하기 위해 각자의 양방향 결제 채널을 우리에게 결정했습니다..

이제 이것은 이론적으로 신뢰할 수있는 거래이므로 안전한 방식으로 교환을 촉진하는 것이 트릭입니다. 이를 위해 Lightning Network는 HTLC (해시 시간 잠금 계약)를 구현합니다..

HTLC를 사용한 Lightning Network 결제 채널

Molly가 스티브에게 0.5BTC를주고 싶다고 가정 해 봅시다. 그녀는 정말 멋져요. 정말 복숭아 같네요. 이를 위해 Steve는 값 (본질적으로 확인 코드 또는 키)이라는 암호화 번호 문자열을 만들어야합니다. 그런 다음이 값의 해시를 만들어 Molly에게 보냅니다. 이 작성된 그림을 단순화하기 위해 V로 값을, H로 해시를 표시합니다..

Molly가 H를 받으면 Chuck과 공유합니다. 이 시점에서 Molly는 Chuck이 V를 공개하는 경우에만 0.5 BTC를 보낼 것입니다. V를 얻기 위해 Chuck은 V와 교환하여 자신의 BTC 0.5를 Steve에게 보냅니다. 일단이 번호를 받으면 그는 V를 Molly에게 보낸 다음 0.5를 보냅니다. BTC에서 척으로. Molly가 0.5 BTC를 Steve에게 효과적으로 전달했습니다..

길을 잃었을 경우에 어떻게 다운되었는지는 다음과 같습니다.

Steve가 V와 H를 생성 → Steve가 H를 Molly에게 전송 → Molly가 H를 Chuck에게 → Chuck이 BTC를 Steve에게 → Steve가 V를 Chuck에게 V를 Chuck이 V를 Molly에게 → Molly가 BTC를 Chuck에게 전송

따라서 값 (V)은 해시 (H)에 대한 확인 코드 / 키 역할을하며 트랜잭션에 대한 수신 / 잠금을 나타냅니다..

“괜찮고 멋지지만, Molly는 Chuck이 그녀에게 보내는 가치가 합법적이라는 것을 어떻게 알 수 있으며, Steve가 BTC Chuck을 가지고 도망 치지 못하게하는 것이 그에게 돈을 지불하는 이유는 무엇입니까?”

다시 한 번 좋은 질문입니다. nLockTime이 양방향 결제 채널에서 모든 사람을 정직하게 유지하는 것처럼 Hash Time Locked Contracts는이 모델에서 당사자에게 책임을 부여합니다..

HTLC를 사용하면 거래되는 비트 코인 자금이 다중 서명 지갑에 다시 잠겨 있으며 a) 값 (V) 및 해시 (H)가 제시된 후에 만 ​​잠금 해제 될 수 있습니다. 또는 b) 시간 초과 기간 후에 계약이 만료됩니다..

실제로 이것은 Molly와 Chuck이 Molly가 Steve에게 지불하는 계약을 체결 할 때 Chuck에게 빚진 비트 코인을 HTLC를 사용하는 다중 서명 지갑에 잠그는 것을 의미합니다. Chuck이 Steve에게 지불하고 V를 받으면 V와 H를 HTLC에 입력하여 계약에 투입된 Bitcoin Molly로 상환받을 수 있습니다. 또는 Chuck이 협상 종료를 보류하지 못하고 계약이 일주일 후에 만료되면 Molly의 Bitcoin이 해제되고 개인 지갑으로 돌아갑니다..

Chuck과 Steve의 자체 결제 채널에서도 동일한 상호 작용이 이루어집니다. Chuck은 Steve가 V를 공개 할 때까지 자신의 Bitcoin을 Steve에게 양도 할 수 없습니다. Steve가 다중 서명 계약에 V를 공개하면 Chuck은 이제 V를 보유하고 Steve는 BTC를받습니다..

이론적으로이 프로세스는 여러 지불 채널과 여러 개인을 통해 실행될 수 있습니다..

번개 네트워크 다이어그램

마무리 : 라이트닝 네트워크가 중요한 이유

복잡한 주제입니다. 이 정보를 소화 할 수있는 덩어리로 합성하는 것은 충분히 어려웠 기 때문에이 시간을 고수 해주셔서 감사합니다..

TL; DR 요약: 라이트닝 네트워크는 개인이 이러한 모든 거래를 온 체인에 넣지 않고도 여러 번 통화를 교환 할 수있는 오프 체인 시스템입니다. 대신 두 개의 트랜잭션 (및 열기 및 닫기) 만 블록 체인에 기록되고 다른 모든 트랜잭션은 가능한 한 많은 오프 체인 노드의 보조 계층을 통해 처리됩니다..

이 모델에는 몇 가지 주요 이점이 있습니다.

효과적인 소액 결제 : 라이트닝 네트워크는 소액 거래를 지향합니다. 전송되는 가치를 능가 할 수있는 엄청난 수수료를 지불하는 대신, 조명 네트워크를 통해 사용자는 비트 코인 네트워크를 직접 거치지 않고도 서로에게 소량의 통화를 보낼 수 있습니다. 노드 운영에 여전히 수수료를 지불해야하지만 비트 코인의 일반적인 네트워크 수수료에 비해 미미합니다..

확장 성 및 지연 솔루션 : 이전 요점과 함께 Lightning Network는 네트워크 팽창을 줄였습니다. 온 체인 거래의 수를 줄이면 채굴 자의 작업이 줄어들어 거래 시간이 단축되고 수수료가 낮아집니다. 모든 거래를 블록 체인의 공개 원장에 넣을 필요가 없다면 네트워크는 훨씬 더 원활하게 운영 될 것입니다. 또한 Lightning Network 거래는 온 체인 거래보다 훨씬 빠릅니다..

일반 사용자가 방금 설명한 다단계 프로세스를 어떻게 탐색 할 수 있는지 궁금 할 것입니다. Dryja, Poon 및 다른 사람들이 복잡한 단계를 모두 처리하는 응용 프로그램 / 인터페이스를 개발하고 있습니다. 버튼 몇 개만 누르면됩니다..

현재 Lightning Networks는 Bitcoin, Litecoin 및 Vertcoin을 위해 개발되고 있습니다. 번개 네트워크는 여전히 테스트 넷, 이 발행 시점에 아직 주요 순 출시일이 확인되지 않았습니다..