Lightning Network có gặp rủi ro về tiền bạc không? Bài viết này giải thích các nguyên tắc và phương pháp điều trị của nó

Bản gốc | Odaily Planet hàng ngày

Tác giả | Nam Phong

! [Lightning Network có gặp rủi ro đối với tiền không?] Giải thích nguyên tắc và phương pháp điều trị của nó] (https://img-cdn.gateio.im/webp-social/moments-7f230462a9-43da3a01e5-dd1a6f-69ad2a.webp)

Giới thiệu

Vào ngày 20 tháng 10, nhà phát triển cốt lõi Bitcoin Core / dev / fd0 đã thông báo trên nền tảng X rằng họ sẽ ngừng tham gia vào việc phát triển Lightning Network và triển khai nó, bao gồm cả việc phối hợp xử lý các vấn đề bảo mật cấp giao thức.

/dev/fd0 có nghĩa là mỗi nút Bitcoin có nhóm bộ nhớ riêng. Giao dịch được chuyển tiếp bởi các đồng nghiệp. Nếu các nút Lightning Network được sử dụng để mở các kênh và chấp nhận chuyển tiếp HTLC, chúng dễ bị tấn công theo chu kỳ thay thế.

Những gì nhà phát triển đề cập đến như là một "cuộc tấn công vòng lặp thay thế" và làm thế nào nó có thể được thực hiện sẽ được tiết lộ trong bài viết này.

Mạng sét

Mạng Bitcoin có TPS chỉ khoảng 7 và phí cao, và Lightning Network được tạo ra để giải quyết nhu cầu thanh toán vi mô.

Lightning Network là một giải pháp mở rộng quy mô lớp 2 cho Bitcoin và các loại tiền điện tử khác được thiết kế để giải quyết khả năng mở rộng và tốc độ giao dịch của các mạng tiền điện tử.

Nguyên tắc thực hiện có thể được đơn giản hóa thành:

  1. Bên giao dịch A và B thiết lập một "kênh giao dịch" (thực chất là ví đa chữ ký)
  2. A và B lần lượt nạp tiền A1 và B1 (bước này nằm trên chuỗi)
  3. A và B có bất kỳ giao dịch ngoài chuỗi nào và A có chuyển khoản ròng là X (ví dụ: A chuyển 1 nhân dân tệ sang B 100 lần, B chuyển 99 lần sang A với giá 1 nhân dân tệ và cuối cùng A có dòng chảy ròng là 1 nhân dân tệ)
  4. Cập nhật giao dịch A1-X và B1+X trên chuỗi

Thông qua quy trình trên, cho dù A và B thực hiện bao nhiêu giao dịch ngoài chuỗi, họ chỉ cần trả hai khoản phí on-chain, và tiết kiệm rất nhiều thời gian.

Hợp đồng khóa thời gian băm (HTLC)

Biểu mẫu được mô tả ở trên được giới hạn ở kênh giao dịch trực tiếp giữa A và B và các nút chuyển tiếp xuất hiện cho thanh toán đa kênh, các nút chuyển tiếp giao dịch chuyển tiếp giữa hai kênh để thực hiện thanh toán qua các kênh và các nút chuyển tiếp có thể thu thập tiền boa.

Nhưng điều này phải đối mặt với một vấn đề: ** Cần đảm bảo rằng mọi người tham gia trong mỗi kênh đều trung thực và đáng tin cậy ** và an toàn thông qua các liên kết đa kênh.

Do đó, sự xuất hiện của HTLC (Hợp đồng khóa thời gian băm), một giao dịch thanh toán với HTLC có thể được đơn giản hóa thành:

  1. A chuẩn bị một R bí mật và tính giá trị băm của nó H
  2. A đặt giới hạn thời gian T
  3. A gửi giao dịch thanh toán với HTLC cho B và giao dịch sẽ chỉ được hoàn tất nếu đáp ứng hai điều kiện sau
  • B trả lời mã R (được xác minh bởi H)
  • B câu trả lời trong T (ví dụ: câu trả lời trong vòng 10 khối)
  1. Nếu B không biết mã hoặc nếu câu trả lời là hết thời gian, tiền sẽ được trả lại cho A

Quy trình giao dịch thông thường

Với HTLC được mô tả ở trên, một khoản thanh toán liên quan đến nút chuyển tiếp như sau:

  1. Người nhận cuối cùng C cung cấp mã cho người gửi A
  2. A bắt đầu thanh toán HTLC bằng hàm băm H (lưu ý rằng ** Tiền không nằm trong tay B tại thời điểm này **)
  3. B nhận thông tin thanh toán và bắt đầu thanh toán HTLC cho C với giá trị băm H
  4. **C Để nhận tiền, trả lời mã, nhận tiền. B cũng biết mã tại thời điểm này **
  5. B sử dụng mã để nhận thanh toán do A khởi xướng, nhận tiền và giao dịch hoàn tất

! [Lightning Network có gặp rủi ro đối với tiền không?] Một bài viết giải thích các nguyên tắc và phương pháp điều trị của nó] (https://img-cdn.gateio.im/webp-social/moments-7f230462a9-db7ebe3106-dd1a6f-69ad2a.webp)

Quá trình liên quan đến ba như trên và một số nút chuyển tiếp khác có thể được thêm vào giữa, trong khi chế độ thanh toán vẫn không thay đổi, gửi thanh toán đến người nhận cuối cùng thông qua chuỗi, sau đó truyền ngược mã đến nút chuyển tiếp ban đầu để cuối cùng hoàn thành giao dịch.

Nếu nút chuyển tiếp không nhận được mã R ** (nhà tiếp theo không trả lời, giới hạn thời gian được đánh giá bởi chính nút chuyển tiếp) **, nút chuyển tiếp có thể chọn đóng kênh, ** nếu chuỗi thành công, ** thanh toán do B khởi xướng sẽ bị "vô hiệu" và không mất tiền. **

Các cuộc tấn công thay thế theo chu kỳ

Quay trở lại nguyên tắc cơ bản của HTLC, ngoài việc trả lời mã, nút chuyển tiếp cần đáp ứng một điều kiện khác "nút chuyển tiếp trả lời trong T", và kẻ tấn công độc hại đang nhắm vào điểm này để tấn công:

  1. A và C thông đồng ác ý, và nạn nhân là nút chuyển tiếp B (B yêu cầu trả lời trong vòng 3 khối)
  2. A bắt đầu thanh toán cho B (giả sử chiều cao khối là 1000 tại thời điểm này) và yêu cầu câu trả lời trước khối 1020
  3. B bắt đầu thanh toán cho C (chiều cao khối 1005)
  4. Khi chiều cao khối là 1008, B thấy C không trả lời và quyết định đóng kênh, sẽ có hiệu lực tại khối 1009
  5. C bắt đầu giao dịch với gas cao (1) (block 1008), khiến giao dịch do B khởi xướng không thể vào mempool
  6. C bắt đầu giao dịch với gas cao (2) (khối 1009) và B vẫn không thể vào mempool
  7. C hoạt động trong một vòng lặp vô hạn cho đến khối 1020, đưa ra dấu bí mật R và rút tiền

**B không có thời gian để trả lời khoản thanh toán do A khởi xướng, tiền được trả lại cho A và thanh toán cho C được thiết lập, và cuối cùng "cuộc tấn công thay thế vòng tròn" được thực hiện **. Ngoài ra, A và C cũng có thể đạt được chi tiêu gấp đôi bằng cách thông đồng để lặp lại giao dịch đóng cửa của B.

Kết luận

Mặc dù các vectơ tấn công ở trên tồn tại, nhưng điều đó không có nghĩa là kẻ tấn công có thể làm bất cứ điều gì chúng muốn và đánh cắp tiền trong Lightning Network và tác giả cũng đề xuất năm cách để đối phó với nó, chẳng hạn như mempool cục bộ và giám sát lưu lượng chuyển tiếp giao dịch, giám sát mempool thợ mỏ, v.v.

Tương lai tươi sáng, con đường quanh co và năm nay một loạt những thứ mới như Ordinals, BRC-20, Taproot Asset, v.v. đã ra đời trên mạng Bitcoin.

Tham khảo

Xem bản gốc
Trang này có thể chứa nội dung của bên thứ ba, được cung cấp chỉ nhằm mục đích thông tin (không phải là tuyên bố/bảo đảm) và không được coi là sự chứng thực cho quan điểm của Gate hoặc là lời khuyên về tài chính hoặc chuyên môn. Xem Tuyên bố từ chối trách nhiệm để biết chi tiết.
  • Phần thưởng
  • Bình luận
  • Chia sẻ
Bình luận
0/400
Không có bình luận
Giao dịch tiền điện tử mọi lúc mọi nơi
qrCode
Quét để tải xuống ứng dụng Gate
Cộng đồng
Tiếng Việt
  • 简体中文
  • English
  • Tiếng Việt
  • 繁體中文
  • Español
  • Русский
  • Français (Afrique)
  • Português (Portugal)
  • Bahasa Indonesia
  • 日本語
  • بالعربية
  • Українська
  • Português (Brasil)