Satashi Nakamoto는 2008 년 10 월 31 일 금요일에 암호화 메일 링리스트에 "신뢰할 수있는 제 3자가없는 완전 피어 투 피어 인 새로운 전자 현금 시스템"에 대한 제안을 보냈습니다. James A. Donald는 다음과 같은 일요일에 비트 코인에 대해 언급했습니다. "우리는 매우 많은 시스템이 필요합니다. 그러나 제안을 이해하는 방식에 따라 필요한 크기로 확장되지 않는 것 같습니다."
10 년이 지난 후에도 그 비판은 여전히 유효합니다. 비트 코인의 가장 열렬한 전도자조차도 매일 매일 소량 구매하는 것이 가치가 없다고 인정합니다. 그러나 현재 진행중인 가장 유망한 비트 코인 스케일링 프로젝트 중 하나 인 Lightning Network가이를 바꿀 수 있습니다.
번개 네트워크
2017 년 7 월 Blockstack Summit에서 Lightning Labs의 엘리자베스 스타크 (Elizabeth Stark) CEO는 나카 모토의 전자 현금에 대한 첫 번째 비판을 인용했지만 비트 코인이 실제로 확장 될 수 있다는 자신감을 표명했습니다. 그녀는 인터넷이 HTTP와 TCP / IP의 다른 전송 및 응용 계층을 획득하기 전의 시간을 언급하면서 "우리는 기본적으로 1995 년에 블록 체인과 분산 기술에 관해서 다시 한 번왔다"고 말했다.
비트 코인 블록 체인을위한 가장 많이 언급 된 "계층 2"애플리케이션 중 하나는 번개 네트워크입니다. 2015 년 Thaddeus Dryja 일명 Joseph Taon과 Tadge가 처음 제안한 (최신 버전의 백서가 여기에 있음), 번개는 3 개 회사에서 lightning-rfc 또는 "BOLTS"라는 기능 사양으로 작동했습니다. 자체 구현: Lightning Labs는 lnd, Blockstream은 c-lightning, ACINQ는 eclair를 보유하고 있습니다. 천둥과 같은 비 BOTLS 구현도 개발 중입니다.
번개 네트워크가 이미 작동 중이지만 초기 단계에 있습니다. 실제 비트 코인은 Lightning Labs, Blockstream 및 ACINQ의 구현을 사용하여 거의 항상 전송 및 수신되었으며 세 가지 모두 상호 운용 가능합니다. 아래 비디오는 c- 번개 노드를 통해 eclair 노드에서 lnd 노드로 거의 즉시 0.000001 비트 코인 (약 $ 0.01)을 보내는 ACINQ 엔지니어를 보여줍니다.
이것이 얼마나 많은 개선을 나타내는 지 확인하기 위해 모바일 지갑 앱인 GreenAddress를 사용하여 비트 코인 블록 체인에서 유사한 트랜잭션을 시도했습니다. 이 앱은 광부에게 0.00001907 BTC ($ 0.19) 지불: 1, 907 % 수수료를 제안했습니다. 그 수수료가 확인하려고 의도 한 블록 수는 확실하지 않지만 (그린 주소로 GreenAddress에 연락하여 알아 낸 경우) 6 개 또는 1 시간 정도입니다.
그러나 특정 거래가 실제로 얼마나 오래 걸 렸는지 알 수는 없습니다. 오류 메시지는 "546 satoshis 이하의 출력은 비트 코인에 의해 비 경제적 먼지로 간주됩니다. 값을 높이십시오."
Lightning Labs는 네트워크를 사용하여 교차 체인 원자 교환을 테스트했습니다. 이는 서로 다른 블록 체인 (이 경우 비트 코인과 리테 코인) 간의 가치 이전으로, 분산 교환을 구축하기위한 첫 번째 단계입니다.
Lightning은 비트 코인 자체로는 소액 결제를 할 수 있지만 기존 구현은 여전히 버그가 있습니다. 스타크는 사용자들에게 라이브 파이어 "메인 넷"이 아닌 비트 코인의 "테스트 넷"(즉, 가짜 돈을 사용하는 것)을 사용하는 번개에 대해 배울 것을 촉구합니다. 그러나 글을 쓰는 시점에 메인 넷에서 약 5 만 달러 상당의 거래가 이루어졌으며 일부 사람들은 c- 번개 버그로 돈을 잃었습니다. (블록 스트림의 핵심 기술 엔지니어 인 크리스티안 데커 (Christian Decker)는 이메일을 통해 대부분의 경우 자금이 궁극적으로 회수되었다고 말했습니다.)
번개는 어떻게 작동합니까?
번개의 작동 방식
Lightning의 솔루션은 양방향 오프 체인 결제 채널을 기반으로합니다. Alice와 Bob은 종종 소량으로 서로 거래합니다. 이 경우 수수료 및 확인 시간이 길어 온 체인 결제는 실용적이지 않으므로 비트 코인을 앞뒤로 즉시 수수료없이 보낼 수있는 채널을 열기로 결정합니다.
채널 열기
채널을 열기 위해 Alice, Bob 또는 둘다는 자금 조달 거래 (아래 다이어그램의 녹색 상자)를 통해 특정 양의 비트 코인을 특정 주소에 제공합니다. 앨리스가 1 BTC를 기부한다고 가정 해보십시오. 그녀는 자금을 2 of 2 멀티 시그 (multisig multisig) 주소로 보냅니다. Alice와 Bob은 모두 개인 키로 전송 트랜잭션을 암호화하여 "서명"해야합니다. 정상적인 트랜잭션에는 발신 주소의 공개 키에 해당하는 (단일) 개인 키의 서명 만 필요합니다.
중요하게도, 자금 거래는 아직 서명되지 않았거나 네트워크에 방송되지 않았습니다.
다음으로 Alice와 Bob은 자금 거래를 "부모"로 사용하여 "약정 거래"를 작성합니다. 확인되지 않은 1 BTC의 출력을 "하위"트랜잭션에 대한 입력으로 0.5 BTC를 Alice (출력 0) 및 0.5로 전송합니다. BTC에서 Bob으로 (출력 1). 비트 코인의 프로토콜로 인해 사용자가 입력의 서명을 모른 채 지출에 서명 할 수 없다고 항의하는 경우 해당 기능은 소프트 포크를 통해 부여됩니다.
그런 다음 Alice는 Bob에게 0.5 BTC를 보내는 출력에 서명합니다. Bob은 Alice에게 0.5 BTC를 보내는 출력에 서명합니다. 그런 다음 자금 거래에 서명하고 방송하며 비트 코인 블록 체인에 투입됩니다 (네트워크 요금 및 대기 시간이 적용됩니다).
이제 오픈 결제 채널을 통해 비트 코인을 즉시 무료로 왕복 할 수 있습니다. Alice 또는 Bob은 언제든지 닫을 수 있으며 각각 0.5 BTC 또는 업데이트 된 잔액에 관계없이 청구 할 수 있습니다.
채널 열기… 영어로
이미 번개 네트워크의 내부에 대해 약간의 지식이 없다면 "여기에 서명하고, 여기에 쓰고, 보내고, 방송하지 마십시오 . "
보다 개념적 설명이 있습니다. 자금 거래는 다음과 같이 들립니다. 채널에 자금을 제공합니다. 또한 채널의 한도 역할을합니다. 어느 당사자도 초기 자금 금액 이상을 초과 할 수 없으며 두 당사자의 잔액이 그 금액을 합산해야합니다. 자금 조달 거래가 먼저 생성되었지만 마지막으로 방송되는 이유는 한 단계만으로 블록 체인에 단순히 게시 된 경우 단일 일반 바닐라 거래 외에는 아무것도 달성되지 않았기 때문입니다. 번개는 그것들을 더 빠르거나 저렴하게 만들지 않습니다.
자금 거래를 열린 채로두고 아래 설명 된 것처럼 일종의 현명한 계약으로 작용하는 약정 거래를 삽입 한 다음 자금 거래를 마감하면 번개가 네트워크에서 일종의 웜홀을 엽니 다. 이를 통해 정의 된 단일 경로를 따라 비트 코인을 앞뒤로 이동할 수 있습니다. 비트 코인 프로토콜을 사용하고 있지만 광부가 부과하는 지연과 비용을 우회합니다.
신뢰할 수없는 번개 유지
Bob이 공개 채널을 사용하여 Alice 0.1 BTC에 비용을 지불하려고한다고 가정합니다. 두 당사자는 단순히 약정 거래를 업데이트하므로 광부에게 호소 할 필요가 없습니다. 이전에 각각 0.5 BTC 인 잔액은 이제 0.6 BTC이며 Alice는 0.4 BTC입니다.
유일한 문제는 어떻게 안전하게 할 수 있습니까? 그들은 초기 거래를 위해 서명을 이미 교환했기 때문에 Bob은 가장 최근의 서명이 아닌 서명을하고 실제로 지불해야 할 0.4 BTC 대신 0.5 BTC로 도망 갈 수 있습니다. 다시 말해, 그는 글을 쓰는 시점의 가격을 기준으로 Alice로부터 약 1, 000 달러를 훔칠 수 있습니다. 답은 신뢰하는 사람들과 만 채널을 여는 것입니다. 그렇다면 비트 코인을 사용하는 요점은 무엇입니까?
이 딜레마에 대한 암호화 솔루션을 찾는 것은 하나의 목표로 귀결됩니다. 이전 거래에 서명하고 이전 상태를 반영하는 방식으로 채널을 닫을 수 없게 만드는 것입니다. 그렇게하는 것이 옵션 인 한, 번개에는 이중 지출 문제가 있습니다.
Bob은 약정 거래 (아래 약정 Tx 1a)의 절반에 서명하며, 서명이 누락되어 Alice 만 브로드 캐스트 할 수 있습니다. Alice는 다른 사람 (Commitment Tx 1b)에 서명 한 다음 Bob 만 브로드 캐스트 할 수 있습니다. 비트 코인 (제한된) 스마트 컨트랙트 작성 기능을 사용하면 채널을 닫고 채널을 닫을 수 있지만, 커밋 트랜잭션의 두 반쪽의 출력에는 다른 제한이 적용될 수 있습니다. 구체적으로, 하나의 결과물은 수취인이 즉시 자금을 사용할 수있게하는 반면, 다른 하나는 RSMC (Revocable Sequence Maturity Contract)를 통해 어느 한 당사자가 1000 블록과 같은 정해진 기간 동안 취소 할 수 있습니다. 일주일.
이것이 유용한 이유는 다음과 같습니다. Bob이 악의적이고 원칙에 맞지 않는 것으로 밝혀진 경우, Commitment Tx 1b (위) 만 서명하고 브로드 캐스트 할 수 있으며, 이는 Alice에게 즉시 지불하고 (Delivery 1b) 1 주일 동안 취소 할 수있는 림보에 자금을 보관합니다 (Revocable Delivery 1b). Bob이 자신을 단축 시키려고 시도한 앨리스는 해고를 유발할 수 있으며 0.1 BTC Bob이 도용하려 한 것이 아니라 0.4 BTC도 자격을 부여 받았다고 주장 할 수 있습니다.
다시 말해, Bob이 부정 행위를하는 경우 전체 채널이 Alice에게 전달됩니다. 당사자들이 새로운 약정 거래 (아래의 C2a 및 C2b)를 생성 할 때, 기존 약정 거래 (C1a 또는 C1b)를 방송하지 않을 것을 약속하면서, 그들은 입가에 돈을 넣었 기 때문에 가능합니다. 새로운 커미트 트랜잭션과 함께 이전 커미트에 적용되는 두 개의 출력 (BR1a 및 BR1b)으로 위반 조치 트랜잭션을 작성합니다. Alice는 Bob에게 자신의 위반 구제 거래의 절반을, 그리고 그 반대로 개인 키를 제공합니다. 이제 이전 거래를 브로드 캐스트하려고 시도하면 상대방은 1000 블록 대기 기간을 활용하고 해당 거래보다 앞서 급습하여 문제 당사자의 전체 균형을 잡을 수 있습니다.
문제는 밥이 1000 블록 동안 경비를 잃지 않도록 앨리스가 채널에 반쯤주의를 기울여야한다는 것이다. Poon과 Dryja는 상대방이 부정 행위를 시도 할 때 위반 채널에 대한 보상을 제공하는 위반 조치 거래를 유발하는 제 3자를 지정하도록 제안합니다. 이것들은 벌금에서 수수료를 지불받을 수 있습니다.
Lightning Labs의 공동 설립자이자 CTO 인 Olaoluwa Osuntokun은 이러한 제 3의 집행자 역할을하는 "파수대"를 개발하고 있습니다. 이러한 노드가 신뢰할 수있는 당사자 역할을하고 네트워크에 불안감을 유발할 수 있다는 우려가 제기되었지만, Osuntokun은 CoinDesk에 특정 채널에 대해 하나의 정직한 망루 만 필요하다고 말합니다.
또한 Blockstream의 핵심 기술 엔지니어 인 Christian Decker는 이메일로 지적 하듯이 사기는 위험합니다. 탈취하려는 당사자가 적어도 일주일에 한 번 체크인하지 않으며 채널의 모든 돈을 잃을 위험이 충분히 억제 될 수 있다고 가정하는 것은 중요한 도박입니다.
채널 연결
실제 세계에서 Alice는 Bob과 독점적으로 거래하거나 Bob과 Alice 만 거래하고 싶지 않습니다. 둘 다 지불하고 지불 해야하는 상대방의 수는 얼마든지 있습니다. 이러한 당사자 모두와 함께 채널을 여는 것은 비현실적입니다. 사용자 인터페이스가 완벽하게 단순화되었지만 12 개 이상의 열린 채널에서 비트 코인을 묶는 데 필요한 유동성을 가진 사용자는 거의 없습니다.
운 좋게도 그들은 필요하지 않습니다. 위의 비디오에서 볼 수 있듯이 사용자는 중간 사용자 채널을 통해 지불을 라우팅 할 수 있으므로 6 채널 분리 원칙을 통해 열린 채널을 가진 사람에게 지불하는 것이 가능해야합니다. 단일 채널 내의 트랜잭션과 달리, 이러한 다중 채널 트랜잭션은 노드에 인센티브를 제공하여 채널에 자금을 제공하고 개방 상태를 유지하는 데 약간의 수수료가 부과 될 수 있습니다. TOR 브라우저 사용자를 위장하는 데 사용되는 기술인 Onion Routing은 중간 노드가 트랜잭션이 수행 한 전체 경로를 보지 못하게하여 개인 정보 보호 문제를 완화합니다.
이 채널 웹이 실제로 얼마나 잘 작동하는지는 여전히 알려져 있으며, 지불이 너무 복잡한 경로를 거쳐야하는 경우-중간 채널을 통한 "홉"이 너무 많으면 해당 사용자가 부과하는 요금이 추가 될 수 있습니다.
번개가 분산되어있을 수 있습니까?
이러한 걱정은 비평가들에게 번개 네트워크에서 극복 할 수없는 결함을 나타내는 것과 관련이 있습니다. 오늘날의 구현에서 채널에는 한도가 제공됩니다. 초기 자금 거래의 비트 코인 양은 채널의 총 금액을 제한합니다.
이 상황은 자원이 합리적으로 제한된 사용자에게 상충 관계를 초래합니다. 그들은 필요한 금액을 지불 할 수있는 자금을 확보하기 위해 다량의 비트 코인으로 채널에 자금을 제공하거나 더 작은 채널에 자금을 제공하고 다른 용도로 비트 코인을 사용할 수 있습니다. 결제는 연결된 채널을 통해 라우팅 될 수 있기 때문에 특정 사용자는 소수의 채널 이상을 열 필요가없고 아마도 몇 개만 열어야 할 수도 있습니다.
선택은 번개 채널 내에서 유동성을 갖거나 외부에서 유동성을 갖는 것으로 요약됩니다. 망루 나 다른 솔루션이 부주의로 인한 자금 손실을 막지 못하면 유동성 지불 채널에 자금을 조달하는 것은 위험 할 수 있습니다. 반면, 지불 채널이 안전하게 유지되고 번개가 일상적으로 비트 코인을 사용하는 주요 방법이되면, 채널에 자금을 남겨 두는 데는 거의 문제가되지 않습니다. 그들은 데커가 말한 것처럼 "충전식 직불 카드 또는 현금"으로 사용되며, 주 체인은 저축 계좌로 사용됩니다.
Stark도 비슷한 주장을한다. 번개 채널에 자금을 지원하면 "멀티 홉을 통해 비트 코인을 즉시 받아 들일 수있는 잠재적으로 많은 노드의 네트워크"를 제외하고는 다른 어떤 용도로도 비트 코인을 사용하지 못하게된다. "우리는 Lightning 채널에 대한 자금이 즉각적인 속도와 낮은 수수료 때문에 거래에있어 온 체인 비트 코인보다 더 유용 할 것으로 생각합니다."
허브?
하지만 누가이 채널을 설정 하시겠습니까? 밥을 당신의 앨리스에게 선택하는 것은 암호 결정이 아니라 경제적 인 결정이며, 낙뢰 네트워크에 대한 비평가들에게는 명백한 대답은 일종의 "허브", 많은 자본을 가진 노드가 될 것입니다. 한 번에 여러 당사자와 함께 자금을 지원하는 개방형 채널.
오프 체인 비트 코인 뱅킹 산업이 발전 할 수 있다는 생각은 비트 코인 애호가를 방해합니다.
스타크는이 주장에 이의를 제기한다. "수천 명의 사용자가 비트 코인을 위해 전체 노드를 실행하고 있으며, 우리는 그와 다른 사람들도 Lightning에서 노드를 실행할 것이라고 생각합니다. 비트 코인 전체 노드가 필요하지 않으며 비트 코인 전체 노드와 달리 라우팅으로 적은 비용을 지불 할 수 있습니다. " 그녀는 또한 팀이 "스 플라이 싱"을 위해 노력하고 있으며, 이로 인해 메인 체인의 비트 코인을 사용하여 채널을 채울 수 있습니다. 이 기능은 비트 코인을 채널에 넣거나 메인 체인에 두는 것 사이의 트레이드 오프를 완화시켜 허브가 형성되는 경향을 줄일 수 있습니다.
데커는 "안정적이고 네트워크의 중추 역할을하는 많은 수의 노드로 2 계층 네트워크가 형성 될 것"이라고보고있다. 그러나 이들은 유동 채널을 제공하기 위해 존재하는 허브가 아닌 상인이되기를 기대합니다. 그는 이러한 채널을 여러 사용자에게 제공하면 비용이 많이 들며 허브가 높은 요금을 청구하고 다른 노드와 비교하여 경쟁력이 없어야한다고 주장했다.
ACINQ CEO 피에르 마리 파디 우 (Pierre-Marie Padiou)는 낙뢰 네트워크가 어떻게 발전 할 수 있는지를 공언하지 않습니다. "중앙화와 탈 중앙화 사이의 균형이 무엇인지 예측하기는 매우 어렵다"고 그는 이메일을 통해 썼다. "물론 더 큰 노드와 더 작은 노드가있을 것이지만, 어느 정도까지는 사전에 말하기가 어렵습니다."
올바른 확장 방법?
Poon과 Dryja는 "이러한 소액 결제 채널의 네트워크를 사용하여 오늘날 현대 데스크탑 컴퓨터에서 사용할 수있는 계산 능력으로 하루에 수십억 건의 트랜잭션으로 확장 할 수있다"고 주장합니다. 아마도 오늘날에는 그렇지 않습니다. 작성 시점에 1, 000 개 미만의 메인 넷 번개 노드가 열려 있습니다.
또한 유일한 규모 제안은 번개가 아닙니다. 주요 경쟁자는 비트 코인 현금으로, 더 큰 블록을 허용하는 논쟁적인 비트 코인의 포크입니다. 비트 코인 현금 서포터, 번개 서포터 및 다양한 세 번째 방법 (때때로 스케일러 제거기까지)의 옹호자 사이의 논쟁은 끔찍한 일이지만 활발합니다. 하나 또는 다른 하나가 맨 위에 나오거나 계속 공존하거나 모든 것이 실패 할 수 있습니다.
어쨌든, 낙뢰 네트워크는 2008 년 비트 코인의 첫 주말 이후 비트 코인을 괴롭힌 확장 성 딜레마를 극복하려는 유망한 시도입니다.
