용어집 / 라이트닝과 레이어 2
HTLC
별칭은 Hash time-locked contract입니다.
- HTLC란 무엇입니까?
- HTLC는 비밀을 제시해야만 지급되는 결제로, 양측이 합의한 블록 높이 전까지 그 비밀이 도착하지 않으면 송금인에게 환불됩니다.
해시 시간 잠금 계약은 다중 홉 라이트닝 결제를 안전하게 전달할 수 있게 해 줍니다. 각 홉은 동일한 SHA-256 해시에 자금을 잠그며, 하나의 채널은 각 방향으로 최대 483개의 계약을 동시에 운반할 수 있습니다. 이용자 입장에서 이것이 의미하는 바는 라이트닝 결제가 전액 정산되거나 전액 실패할 뿐, 경로 중간에 자금이 묶여 남는 일은 없다는 것입니다.
작동 방식
HTLC의 자금은 두 가지 조건으로 보호되며, 결국 그중 정확히 하나만 성립합니다.
수취인은 프리이미지라고 하는 32바이트의 무작위 비밀을 만들어 SHA-256으로 해시한 뒤 그 결과를 인보이스에 넣습니다. 그러면 경로상의 각 노드는 다음 노드에게 두 가지 방식으로 사용할 수 있는 출력을 제공합니다. 프리이미지를 제시할 수 있는 사람은 즉시 사용할 수 있고, 합의된 블록 높이가 지나면 그 출력을 제공한 노드가 사용할 수 있습니다. 모든 홉이 하나의 해시를 공유하므로, 수취인이 프리이미지를 공개하여 자신의 자금을 청구하는 순간 그 이전의 모든 홉이 이를 알게 되어 각자의 자금을 청구합니다. 대가를 받지 못한 채 다음 홉에 지급한 상태로 남는 사람은 결코 없으며, 이것이 라이트닝 네트워크가 기반으로 하는 성질입니다.
블록 높이는 경로를 따라 단계적으로 낮아집니다. 각 채널은 cltv_expiry_delta를 공지하며, 지급인은 이 델타를 누적하여 수취인에 가장 가까운 홉이 먼저 만료되고 상류의 모든 홉이 안전 여유를 갖도록 합니다. BOLT 11은 인보이스에 다른 내용이 없을 때 지급인이 마지막 홉에 최소 18블록을 허용하도록 규정합니다. 이렇게 누적된 지연이 HTLC의 실제 비용입니다. 결제가 막히면 자금이 사라지지는 않지만, 타임아웃이 풀리는 동안 몇 시간 동안 동결될 수 있습니다.
온체인에서는 이 계약이 실제 트랜잭션이 됩니다. 앵커 채널에서 HTLC 타임아웃 트랜잭션의 무게는 666 무게 단위이고 HTLC 성공 트랜잭션의 무게는 706이며, 진행 중인 결제가 여러 건인 상태에서 강제 폐쇄를 하면 그 결제마다 이 트랜잭션 중 하나를 브로드캐스트해야 합니다. 출력 하나를 만들 만한 가치가 없는 금액에는 출력이 아예 주어지지 않으며, 대신 채굴 수수료에 더해집니다. 그래서 채널이 잘못된 시점에 폐쇄되면 아주 작은 결제는 수수료 속으로 사라질 수 있습니다.
확인할 수 있는 곳
HTLC는 결제 버튼을 누른 뒤 인보이스가 초록색으로 바뀌기까지의 몇 초 사이에 나타나며, 온체인 스왑의 수수료 계산에서도 다시 나타납니다.
Strike 같은 라이트닝 우선 서비스는 모든 결제를 이 방식으로 처리하며, 라이트닝 라우팅 노드는 대기 중인 HTLC 수를 운영 지표로 공개합니다. 막힌 계약으로 가득 찬 채널은 아무것도 전달할 수 없기 때문입니다. 같은 구조는 라이트닝 네트워크 밖에서도 작동합니다. 잠수함 스왑은 온체인 HTLC와 동일한 해시에 잠긴 라이트닝 결제를 맞교환하고, 크로스체인 원자적 스왑은 두 원장 사이에서 같은 일을 합니다. 어느 경우든 해시가 공유된 심판이고 타임아웃이 환불입니다.
이 상한은 보기보다 중요합니다. 커밋먼트 트랜잭션은 유효한 비트코인 트랜잭션으로 남아야 하므로, BOLT 2는 방향당 수락된 계약을 483개 넘게 금지하며, 더 새로운 무수수료 커밋먼트 형식에서는 114개로 낮아집니다. 대형 라우팅 채널은 혼잡한 시기에 이 상한에 부딪히며, 이것이 결제가 때때로 실패했다가 30초 뒤에 성공하는 정직한 이유 중 하나입니다.
HTLC vs PTLC
HTLC는 경로 전체에 하나의 해시를 사용하지만, PTLC는 각 홉에 타원 곡선 점에서 파생된 서로 다른 잠금을 제공합니다. 이 단 하나의 차이가 프라이버시 구멍입니다. 같은 운영자가 소유한 두 라우팅 노드가 이용자의 경로상 서로 다른 지점에 있으면 동일한 해시를 두 번 보게 되어 이용자의 결제를 연결해 낼 수 있습니다. HTLC는 네트워크가 실제로 운용되는 방식입니다. PTLC는 명세로 정해진 대체 방식이며, 그것이 출시되기 전까지는 대형 라우팅 운영자라면 누구든 자신이 전달하는 홉을 연관 지을 수 있다고 가정해야 합니다.