라이트닝 네트워크 + 스마트 자산의 최대 가치를 포착하는 방법은 무엇입니까?
선두
선두
라이트닝 네트워크는 비트코인 기반의 Layer 2 솔루션으로, 오프체인 채널을 통한 즉각적인 소액결제 실현, 메인체인의 리소스 압박 해소, 블록체인 네트워크의 전반적인 성능 향상을 목표로 분산되어 있습니다. 전 세계 여러 국가 및 지역에서 여러 팀이 동시에 개발하여 현재 글로벌 블록체인 산업에서 가장 성공적인 확장 솔루션 중 하나이며 가장 중요한 DeFi 인프라 중 하나이기도 합니다.
우리 모두 알다시피 현재 라이트닝 네트워크는 BTC만 지원하고 맞춤형 스마트 자산의 순환을 지원하지 않습니다. 그리고 BTC조차도 결제 기능일 뿐이며 DeFi 애플리케이션의 요구를 전혀 충족할 수 없습니다.
이를 위해 옴니규격위원회는 라이트닝 네트워크의 기본원칙을 바탕으로 라이트닝 네트워크 내 세계 최초의 스마트 자산 순환 표준이자 옴니규격위원회가 옴니레이어에 이어 출범한 두 번째 주요 프로토콜인 옴니볼트(OmniBOLT) 표준을 공식화했다. 옴니규격위원회는 세계 최대 디지털 자산 유통 플랫폼인 옴니레이어 프로토콜을 런칭한 것으로 유명하며 현재 전 세계 2만개 이상의 블록체인 기업 운영을 지원하고 있다.
OmniBOLT는 처음으로 모든 퍼블릭 체인과 관련 자산을 Lightning Network의 원칙에 따라 설계된 채널에 연결하여 Onion Network 내에서 상호 작용할 수 있도록 하여 각 퍼블릭 체인의 상호 작용을 크게 향상시킵니다. OmniBOLT는 OmniLayer 위에 구축되며 기본적으로 스마트 자산을 지원하기 때문에 BTC의 빠른 지불을 지원할 뿐만 아니라 다음과 같은 중요한 이점이 있습니다.
OmniLayer 기반의 스마트 자산의 빠른 결제.
서로 다른 자산의 크로스 채널 아토믹 스왑.
라이트닝 채널에 구축된 탈중앙화 거래소.
아토믹 스왑을 기반으로 한 모기지론 계약.
더 많은 적용 가능한 DeFi(분산형 금융) 스마트 계약 관심 있는 독자는 OmniBOLT 사양의 6장을 방문할 수 있습니다.
모기지, 온라인 상점 및 DEX
1 라이트닝 네트워크 및 OmniLayer
라이트닝 네트워크의 기본 이론을 기반으로 OmniBOLT는 라이트닝 채널 간에 OmniLayer의 자산을 전송하는 방법과 OmniLayer의 자산이 새로운 빠른 지불 이론의 혜택을 받는 방법을 설명합니다. OmniBOLT는 BTC의 순환 지원에 국한되지 않으며, OmniBOLT는 Lightning Network의 기본 이론을 크게 확장하여 더 넓은 범위의 자산 순환을 지원하고 다중 토큰 Atomic Swap을 통해 더 적용 가능한 복합 계약을 실현합니다. 실제 응용 프로그램을 효과적으로 지원할 수 있습니다.
OmniBOLT 자체는 토큰을 발행하지 않습니다. 모든 토큰은 OmniLayer에서 발행되며 P2(W)SH가 지원하는 채널을 통해 OmniBOLT 네트워크에 진입합니다.관련 자산은 메인 체인에 고정되어 있으며 언제든지 OmniLayer 메인 체인에서 상환할 수 있습니다.
2 핵심 개념 설명
OBD: OmniBOLT 데몬, OmniBOLT 데몬 프로세스.
채널: 채널은 라이트닝 네트워크의 Poon-Dryja 채널을 말합니다. 채널은 [Alice, USDT, Bob]으로 구성되는데, 이는 Alice와 Bob이 채널을 만들고 USDT로 충전한다는 의미입니다.
자산(property): OmniLayer에서 발행된 토큰을 말하며 "자산"에 해당합니다.
시퀀스 만기 취소 가능 계약(RSMC): 취소 가능 시퀀스 만기 계약은 원래 잔고보다 더 많은 잔고를 얻기 위해 이전 거래 약속을 방송하는 악의적인 노드를 처벌하는 데 사용됩니다.
HTLC(Hashed Time-Lock Contract): Hashed Time-Lock Contract는 직접 채널 없이 두 노드에서 토큰을 전송하기 위해 여러 채널을 연결합니다.
Commitment Transaction: 생성되었으나 전파되지 않는 트랜잭션을 말하며, 다음 Commitment Transaction이 나타날 때 무효화될 수 있습니다.
Evil Punishment Transaction BR: Breach Remedy는 시퀀스 만료 취소 가능 계약에 사용됩니다. Alice가 이전 트랜잭션을 방송하여 속이는 경우 BR은 그녀의 모든 자금을 Bob에게 보냅니다.
취소 가능한 지불 거래 RD: Alice가 최신 법적 거래 약정을 방송하면 RD는 2-2 P2SH 거래 출력에서 지불합니다. 즉시 Bob에게 돈을 보내고, 현재 블록 높이(예를 들어 100블록)에 대한 상대적인 값 후에 Alice에게 돈을 보낼 것입니다.
HED: HTLC 실행 전달, HTLC는 지불 트랜잭션을 실행합니다.
HBR: HTLC Breach Remedy,HT: HTLC 시간 초과 트랜잭션 트랜잭션
HTRD: HTLC Timeout Revocable Delivery,악처벌 거래
HTBR: HTLC Timeout Breach Remedy,HTLC 시간 초과로 인해 결제 거래가 취소될 수 있습니다.
HTLC 타임아웃 Evil Penalty 트랜잭션은 타임록 기간 동안 오래된 해시된 타임록 트랜잭션 정보를 브로드캐스트하는 당사자를 처벌하는 데 사용됩니다.
HTLSC: Hashed TimeLock Swap Contract,아토믹 스왑 아토믹 스왑: 아토믹 스왑 기술은 거래소와 같은 중앙 집중식 매체 없이도 토큰 간 거래를 가능하게 합니다.
해시 시간 잠금 교환 계약은 두 개의 별도 해시 시간 잠금 계약 세트와 특정 토큰 환율 및 시간 잠금으로 구성됩니다.
3 시퀀스가 만료되면 계약을 취소할 수 있습니다.
악의적인 당사자가 P2SH 트랜잭션 서명을 거부하여 상대방의 자금이 채널에 영구적으로 잠기는 것을 방지하기 위해 취소 가능한 커밋 트랜잭션, 즉 취소 가능한 시퀀스 만기 계약(Revocable Sequence Maturity Contract)을 구성했습니다. 계약). 여기에 소개된 시퀀스 만료 취소 가능 계약은 Poon과 Dryja가 처음 발명했으며 Lightning Network의 첫 번째 백서에 게시되었습니다.
"자금 생성됨"이라는 메시지는 양 당사자가 채널에 자금을 입금했음을 의미하지 않습니다. 첫 번째 통신 라운드에서는 P2SH 주소만 생성하고 RSMC 트랜잭션을 구성했지만 브로드캐스트하지는 않았습니다. 그런 다음 Alice와 Bob은 자금 거래를 방송하여 실제 Omni 자산을 채널로 전송할 수 있습니다.
아래 다이어그램은 예금/약정 거래를 브로드캐스팅하기 전에 해야 할 일을 나타냅니다. BR1a(Breach Remedy)는 즉시 생성할 필요가 없으며 다음 커밋 트랜잭션이 구성되기 전에 생성할 수 있습니다.
요약하면 RSMC는 다음 다섯 단계로 구성됩니다.
1단계: Alice는 임시 개인 키 Alice2를 사용하여 임시 2-2 다중 서명 주소를 만들고 Bob의 서명을 기다립니다: Alice2&Bob;
2단계: Alice는 Alice & Bob의 약정 지불 C1a를 구성합니다. 한 출력은 Alice2 & Bob의 60USDT를 가리키고 다른 출력은 Bob의 40USDT를 가리킵니다.
3단계: RD1a는 C1a 트랜잭션의 첫 번째 출력이며 Alice에게 60USDT를 지급합니다. 그러나 RD1a 트랜잭션에는 앨리스가 부정 행위를 할 때 즉시 60USDT를 지불하지 못하도록 지연된 시퀀스 값이 있습니다.
4단계: Bob이 C1a 및 RD1a에 서명하고 이를 다시 Alice에게 보냅니다.
5단계: OBD에서 상환 거래 구성: C1a/RD1a
위의 다이어그램은 채널 내에서 발생하는 커밋 트랜잭션을 보여주며 채널 내 상태가 어떻게 전환되는지 보여줍니다.
"4 해시 타임록 계약"
-- Poon & Dryja, The Bitcoin Lightning Network: Scalable Off-chain Instant Payments
양방향 지불 채널을 사용하면 하나의 채널 내에서만 자금을 안전하게 이체할 수 있습니다. 다중 채널 네트워크를 구축하고 다중 홉 방식을 사용하여 자금을 목적지로 안전하게 전송하려면 추가 계약인 해시 시간 잠금 계약을 구성해야 합니다.
Alice ---(10 USDT)---> Bob ---(10 USDT)---> Carol ---(10 USDT)---> David.
전송에 HTLC를 사용할 때 일반적인 오해는 Alice가 David에게 10 USDT를 지불하려는 경우 두 홉으로 David에 도달할 수 있다는 것입니다.
[Alice --(10 USDT)--> Bob] ==(Bob has two channels)== [Bob --(10 USDT)--> Carol] ==(Carol has two channels)== [Carol --(10 USDT)--> David]
[A, USDT,Lightning Network에는 개인 계정의 개념이 없기 때문에 혼란스럽습니다. Lightning Network에서 사용할 수 있는 유일한 기본 빌딩 블록은 채널입니다. 따라서 올바른 점프는 다음과 같습니다.
B]는 A와 B가 생성하고 USDT로 충전한 채널을 나타냅니다.
Alice는 채널 [Alice, USDT, Bob]에서 Bob에게 10 USDT를 전송하고 Bob은 [Bob, USDT, Carol] 채널에서 Carol에게 10 USDT를 전송하고 마지막으로 Carol은 [Carol, USDT, David에서 David에게 10 USDT를 전송합니다. ] .
>HTLC를 설계하는 목적은 중간 채널이 돈을 보류하지 않고 다음 채널로 이체하지 않도록 하는 것입니다. 그래서 해당 채널의 수신자가 올바른 키(또는 Hash preimage)를 제시해야만 돈을 받을 수 있고, 올바른 키를 얻기 위해서는 다른 채널에서 같은 금액을 키홀더에게 지불해야 한다. 구체적인 프로세스는 다음과 같습니다.
Bob이 Alice에게 R을 줄 수 있다면 Carol이 3일 전 [Bob, USDT, Carol] 채널에서 10 USDT 트랜잭션을 수행했을 때 Carol이 Bob에게 이 R(Hash(R)의 원본 이미지)을 줄 수 있으면 Bob은 [Alice, USDT, Bob] 채널은 10 USDT 자금을 받았습니다. Bob이 Alice에게 R을 줄 수 없으면 10 USDT가 Alice에게 반환됩니다.
자금 이체에 HTLC를 사용하는 경우 [Alice-(HTLC의 10 USDT)->Bob]은 RD1a/BR1a에 연결된 미공개 트랜잭션인 추가 입금 트랜잭션의 출력입니다.
5 교차 채널 다중 자산 아토믹 스왑
일반적으로 원자 스왑은 서로 다른 블록체인 간에 발생하며, 신뢰 없이 토큰을 교환하고 거래의 어느 당사자도 속일 기회가 없도록 보장합니다. OmniBOLT의 채널은 OmniLayer에서 발행한 모든 자산으로 충전할 수 있습니다. 누군가 USDT/BTC와 같은 토큰을 거래해야 하는 경우 양 당사자는 일정 기간 내에 USDT 및 BTC의 수신자를 알기 위해 암호화 해시 공식을 사용해야 합니다. 거래 당사자 중 일방이 일정 시간 내에 거래를 확인하지 못하면 전체 거래가 취소되고 해당 자금은 원래 계정으로 반환됩니다. 이것은 거래에서 상대방 위험을 제거합니다.
- where Tx 1 transfers 1000 USDT to Bob in channel `[Alice, USDT, Bob]`, locked by Hash(R), t1 and Bob's signature.
- Tx 2 transfers 1 BTC to Alice in channel `[Alice, BTC, Bob]`, locked by Hash(R), t2(`t2 < t1`) and Alice's signature .
.채널 간 표준 교환 프로그램은 아래 그림과 같습니다.
해시 시간 잠금 교환 계약은 두 개의 별도 해시 시간 잠금 계약 세트와 특정 토큰 환율 및 시간 잠금으로 구성됩니다.
그림과 같이 스왑 계약에는 5단계가 있습니다. 3단계에서 Alice는 [Alice, BTC, Bob] 채널에 R을 입력하여 트랜잭션 2를 잠금 해제하여 [Alice, BTC, Bob]에서 2 BTC를 얻습니다. 따라서 Bob도 R을 받고 R을 사용하여 [Alice, USDT, Bob] 채널에서 900 USDT를 잠금 해제합니다.
앨리스가 [Alice, BTC, Bob] 채널에 R을 입력하지 않고 돈을 받지 않으면 때가 되면 거래가 취소되고 양쪽의 돈이 별도로 반환되며 어느 쪽도 고통받지 않습니다. 사상자 수.
각 채널에 R을 입력한 후 트랜잭션 1과 2는 일반 커밋 트랜잭션이(전환)되는데, 이는 HTLC를 커밋 트랜잭션으로 전환하는 과정과 동일합니다.
동시에 Bob은 다른 채널[Alice, BTC, Bob]에서 또 다른 HTLC를 생성하고 Alice 측에서 미러 트랜잭션을 생성하여 합의된 양의 BTC를 Alice에게 전송합니다. 타임록 t2는 t1 = 3일 미만인 2일로 설정됩니다.
아토믹 스왑은 많은 블록체인 애플리케이션의 기초입니다. 다음 장에서는 보다 직관적이고 개발자가 실제 비즈니스 세계를 위한 보다 복잡한 사용 사례를 구축하는 데 도움이 되는 더 많은 예제를 제공합니다.
6 응용 프로그램: 모기지, 애완 동물 가게 및 기타 가능성
다음 예제에서는 특정 시나리오에 대해 다단계 Atomic Swap을 사용합니다. 해당 프로세스는 Turing-complete 언어(예: Javascript 또는 Solidity)로 작성된 프로그램에 의해 실행되며 OBD API를 호출하여 기본 작업을 완료합니다. 모든 참가자는 모든 거래가 유효하고 관련 당사자가 정직한지 확인하는 프로그램을 실행합니다.
(Collateral Lending Contract)
모기지론 계약
모기지 대출은 다음과 같은 특정 목적을 제공합니다.
"귀중한 것을 에스크로 계좌에 담보로 예치하고 적절한 LTV(Loan to Value)를 기준으로 대출해 드립니다. 합의된 날짜까지 상환하시면 담보를 돌려드리겠습니다. 그렇지 않으면 귀하의 담보는 귀속됩니다. 나에게."
실제로 HTLSC는 대출 당사자를 위한 에스크로 계정을 생성합니다. 다음 시나리오를 가정합니다.
Bob은 Alice로부터 900 USDT를 빌리고 싶어하며 1 BTC를 담보로 사용합니다.
Bob은 교환 계약(HTLSC 1)을 시작합니다.
Bob---"앨리스: 교환 계약(1BTC, 자산은 USDT, 환율은 900, 시간 잠금은 30일, 해시(R1),...)
이렇게 하면 [Alice, BTC, Bob] 채널에 HTLSC가 생성됩니다.
Alice---"Bob: 교환 계약을 받았습니다(금액은 900 USDT, 환율은 900, 시간 잠금은 20일, Hash(R1),...).
동시에 Bob은 미래에 1 BTC를 되찾기 위해 상환 계약(HTLSC 2 )을 생성해야 합니다.
Bob --- "Alice: 교환 계약(수량은 900 USDT, 자산은 BTC, 환율은 1/900, 시간 잠금은 60일, Hash(R2),...).
앨리스---"밥: 교환 계약 접수 (수량은 1 BTC, 환율 = 1/900, 시간 잠금은 50일, 해시(R2),...)
이렇게 하면 [Alice, BTC, Bob] 채널에 HTLSC가 생성됩니다.
당사자들이 스왑 계약을 모두 받고 그들의 OBD가 HTLSC에 필요한 모든 해당 거래를 생성하는 데 도움이 된 후에야 Bob은 HTLSC 1을 통해 [Alice, USDT, Bob] 채널에서 R1을 사용하여 900 USDT를 얻을 수 있으므로 Alice는 Bob으로부터 1 BTC를 얻습니다. 담보로.
얼마 후 Bob은 자신의 1 BTC를 상환하려고 합니다. 그는 HTLSC 2에서 R2를 사용하여 [Alice, BTC, Bob] 채널에서 HTLSC2를 통해 1 BTC를 교환하므로 Alice는 채널 [Alice, USDT, Bob]에서 900USDT를 얻습니다.
물론 Alice는 BTC의 가격을 기준으로 환율을 설정할 수 있습니다. 예를 들어, 그녀는 Bob에게 1/905의 환율로 교환 계약을 생성하도록 요청할 수 있습니다. 그런 다음 Bob이 BTC를 교환하면 그녀는 905 USDT를 받게 됩니다.
온라인 애완 동물 가게
애완동물 가게 애플리케이션은 1단계 원자 교환만 사용합니다."PET"Alice는 Omnilayer를 사용하여
자산에서 각 PET는 암호화된 고양이를 나타냅니다.
Bob과 Alice는 USDT 채널과 PET 채널을 설정하고 USDT 채널에서 충전합니다.
Bob은 HTLSC를 생성하여 Alice에게 100 USDT를 암호화 키티와 교환합니다.
그것은 간단합니다 :-)
실제로 Alice와 Bob은 직접 채널을 설정할 필요조차 없습니다. HTLC를 사용하면 다른 사람의 채널을 빌려 교환할 수 있습니다.
7 지갑 구현 및 공식 API
https://github.com/omnilaboratory/OmniBOLT-spec
OmniBOLT 사양 공식 주소:
https://github.com/omnilaboratory/obd/
OmniBOLT 사양의 구현은 공식 저장소에 액세스할 수 있습니다.
Javascript API:
https://github.com/omnilaboratory/DebuggingTool/blob/master/js/obdapi.js.
API 온라인 설명서:
https://github.com/omnilaboratory/DebuggingTool
GUI 디버깅 도구:
[1]. Bitcoin Lightning network White Paper:lightning.network/lightning-network-paper.pdf
참조 콘텐츠https://github.com/lightningnetwork/lightning-rfc
[2].BOLT 사양:https://github.com/lightningnetwork/lnd
[3] 라이트닝 네트워크 프로젝트:https://github.com/OmniLayer/spec
[4] OmniLayer 사양:https://github.com/omnilaboratory/OmniBOLT-spec
[5] OmniBOLT 사양:https://github.com/omnilaboratory/obd
[6].OmniBOLT 프로젝트:https://github.com/OmniLayer/omniwallet
[7].OmniLayer 지갑:https://github.com/OmniLayer/OmniJ
[8] OmniJ의 Java 구현 프로젝트:
이번 호 편집자|제룬


