Tác giả: Hu Feitong
Lightning Network là giải pháp lớp thứ hai hoàn thiện nhất cho Bitcoin. Lý thuyết của nó là Nó Đã gần 10 năm thăm dò và xây dựng kỹ thuật. Mặc dù vẫn còn nhiều điểm yếu nhưng so với các giải pháp lớp thứ hai sáng tạo khác cho Bitcoin, Lightning Network không chỉ hoàn thiện và trưởng thành nhất mà còn có thể là hoàn thiện và trưởng thành nhất . Nền tảng cho các giải pháp hai tầng khác. Bài viết này giới thiệu ngắn gọn về công nghệ của Lightning Network, hy vọng sẽ đóng vai trò phổ biến khoa học.
Giới thiệu
Trong sự thịnh vượng bất ngờ hiện nay của hệ sinh thái Bitcoin, nhiều cải tiến và dự án khác nhau đã xuất hiện nổi lên Có vẻ hơi lạc hậu nếu nói về Lightning Network khi nó nổi lên như thế này. Nhưng nếu bạn phân tích cẩn thận những đổi mới khác nhau trong hệ sinh thái Bitcoin, bạn phải thừa nhận rằng Lightning Network là hoàn thiện nhất về mặt thiết kế và thực hành kỹ thuật. Khái niệm về Lightning Network đã được đề xuất vào năm 2015 và sách trắng đã được hoàn thành và phát hành vào đầu năm 2016. Vào năm 2018, Lightning Network đã ra đời và triển khai, đồng thời hiện thực hóa khoản thanh toán chuyển khoản ngoài chuỗi 1 BTC của bạn. số lượng nút Lightning Network sẽ đạt hơn 14.000 và dung lượng sẽ đạt khoảng 5.000 BTC.
Do TPS thấp, thời gian xác nhận lâu và tắc nghẽn mạng của Bitcoin, Lightning Network hy vọng có thể thực hiện các giao dịch ngoài chuỗi và tận dụng Bitcoin Để giải quyết ba vấn đề chính này về tính bảo mật của mạng riêng của bạn, tức là đạt được:
Tính tức thời của giao dịch;
Giao dịch có thông lượng cao;
Giảm phí giao dịch
Tất nhiên, đối với một số giải pháp khác cho Lớp 2 Bitcoin hiện tại Nó cũng hy vọng sẽ giải quyết được một vấn đề quan trọng khác của mạng Bitcoin - Turing hoàn thành các hợp đồng. Bản thân điều này không phải là vấn đề lớn đối với công nghệ blockchain vì nó đã là một công nghệ trưởng thành. Mấu chốt nằm ở cách đạt được sự chuyển giao và xác nhận phi tập trung đối với tài sản Bitcoin cũng như dựa vào tính bảo mật của mạng Bitcoin. Từ khía cạnh này, không có giải pháp hoàn hảo nào có thể thay thế Lightning Network (kênh trạng thái).
Một số điểm kỹ thuật của Lightning Network
Lightning Network được xây dựng trên chuỗi khối Bitcoin Tạo mạng lưới kênh thanh toán để đạt được ba mục tiêu nêu trên. Nó chủ yếu bao gồm các điểm kỹ thuật sau:
Kênh thanh toán: Kênh thanh toán là cốt lõi khái niệm về Lightning Network. Nó cho phép hai người dùng thực hiện nhiều giao dịch mà không cần phải thực hiện giao dịch trên chuỗi Bitcoin chính mỗi lần. Trước tiên, người dùng tạo một ví đa chữ ký trên chuỗi khối Bitcoin, yêu cầu khóa riêng của hai người dùng để chuyển tiền. Sau đó, họ gửi một lượng Bitcoin nhất định vào ví này và giao dịch gửi tiền này được xác nhận trên blockchain.
Giao dịch ngoài chuỗi: Sau khi kênh thanh toán được mở, cả hai bên có thể thực hiện giao dịch mà không cần tương tác với chuỗi chính. Số lượng giao dịch ngoài chuỗi không giới hạn có thể được thực hiện trong một số trường hợp nhất định. Các giao dịch này cập nhật việc phân bổ tiền trong kênh bằng cách ký các giao dịch mới. Các bản ghi giao dịch này thể hiện cách phân phối tiền khi kênh bị đóng, nhưng các giao dịch này không được phát lên mạng Bitcoin khi kênh mở.
Đóng kênh: Khi một trong hai bên muốn rút tiền trong kênh, họ có thể đóng kênh Thanh toán. Điều này được thực hiện bằng cách phát sóng trạng thái cuối cùng của giao dịch trên chuỗi khối Bitcoin. Sau khi giao dịch được xác nhận, số tiền trong kênh sẽ được phân phối giữa hai bên dựa trên trạng thái của giao dịch ngoài chuỗi cuối cùng.
Thanh toán định tuyến và nhiều bước: Người dùng có thể thanh toán thông qua những người dùng khác trong mạng Các kênh thanh toán gửi thanh toán ngay cả khi họ không có kết nối kênh thanh toán trực tiếp. Điều này đạt được bằng cách định tuyến thanh toán thông qua một hoặc nhiều nút trung gian. Mỗi nút trung gian tính một khoản phí nhỏ để bù đắp cho việc cung cấp tính thanh khoản.
Hợp đồng khóa thời gian băm (HTLC, Khóa thời gian băm): Để thanh toán nhiều bước an toàn, HTLC của Lightning Network đã được sử dụng. Điều này cho phép tạo các khoản thanh toán có điều kiện chỉ có thể được hoàn thành nếu người nhận cung cấp bằng chứng về hình ảnh thanh toán trước (mã băm của một số ngẫu nhiên do người gửi tạo ra). Điều này đảm bảo rằng mỗi nút trong quá trình thực hiện sẽ chỉ chuyển tiếp một khoản thanh toán nếu chắc chắn rằng nó sẽ nhận được khoản thanh toán đó.
Dung lượng và tính thanh khoản của mạng: Mặc dù Lightning Network có thể giảm đáng kể phí giao dịch và tăng tốc độ nhưng hiệu suất của nó cũng phụ thuộc vào năng lực và tính thanh khoản của mạng. Khả năng tài trợ của mỗi kênh giới hạn số tiền thanh toán tối đa có thể được gửi qua kênh đó. Ngoài ra, tiền phải được phân phối hợp lý trên mạng để thanh toán có thể tìm được đường dẫn hiệu quả.
Bảo mật và quyền riêng tư: Lightning Network cải thiện quyền riêng tư vì tất cả các giao dịch không cần phải được ghi lại trên chuỗi khối công khai. Tuy nhiên, nó cũng mang lại những cân nhắc mới về bảo mật, chẳng hạn như yêu cầu người dùng phải trực tuyến thường xuyên để ứng phó với các nỗ lực gian lận tiềm ẩn.
Quy trình thanh toán cơ bản của Lightning Network
Kênh thanh toán Đây là thành phần quan trọng nhất của Lightning Network, cho phép hai người tham gia thực hiện nhiều giao dịch mà không cần phải phát sóng tới chuỗi chính Bitcoin mỗi lần. Quá trình thực hiện nhiều giao dịch giữa hai bên thông qua Lightning Network có thể được chia thành ba bước: 1) mở kênh thanh toán; 2) nhiều giao dịch ngoài chuỗi; 3) đóng kênh. Sau đây là giải thích chi tiết về các kênh thanh toán và các khái niệm liên quan từ góc độ kỹ thuật:
Việc thiết lập các kênh thanh toán dựa trên ví đa chữ ký, yêu cầu nhiều chữ ký khóa riêng Một loại ví đặc biệt chỉ có thể được sử dụng cho các giao dịch. Trong Lightning Network, thông thường hai bên sẽ giữ một khóa riêng và cùng nhau kiểm soát ví. Ví đa chữ ký đảm bảo rằng không một bên nào có thể chuyển tiền một mình và giao dịch chỉ có thể diễn ra khi cả hai bên đồng ý.
Mở kênh thanh toán:
Gửi tiền: Tham gia Người tham gia cùng nhau tạo ví đa chữ ký và gửi Bitcoin đến ví đa chữ ký này từ ví thông thường của họ. Giao dịch này được phát sóng và xác nhận trên chuỗi Bitcoin chính, cho thấy rằng họ cùng có quyền kiểm soát số tiền.
Hồ sơ giao dịch: Mỗi bên giữ một hồ sơ giao dịch để ghi lại việc phân bổ vốn hiện tại. Giao dịch này không được phát lên mạng Bitcoin và chỉ được chia sẻ giữa hai bên.
Giao dịch ngoài chuỗi:Khi kênh được được thành lập, tham gia Người dùng có thể thực hiện các giao dịch ngoài chuỗi không giới hạn.
Cập nhật giao dịch: Mỗi khi một giao dịch ngoài chuỗi được thực hiện, cả hai bên đều cập nhật hồ sơ giao dịch mới nhất mà họ lưu. Bản ghi này thể hiện việc phân phối tiền cuối cùng khi kênh đã bị đóng. Cách.
Quyền riêng tư và tốc độ: Các giao dịch này chỉ diễn ra giữa hai bên và không yêu cầu xác nhận từ mạng Bitcoin nên chúng gần như diễn ra ngay lập tức và vẫn ở chế độ riêng tư.
Đóng kênh:
Trạng thái cuối cùng phát sóng: khi có Khi một bên muốn thoát khỏi kênh, họ có thể phát giao dịch cuối cùng mà họ đã đồng ý lên mạng Bitcoin.
Số tiền thanh toán: Sau khi giao dịch này được mạng xác nhận, số tiền trong ví đa chữ ký sẽ được phân phối cho hai bên dựa trên hồ sơ giao dịch cuối cùng .
Các kênh thanh toán và giao dịch ngoài chuỗi là những công nghệ chính giúp Lightning Network cải thiện tốc độ và khả năng mở rộng của các giao dịch Bitcoin. Bằng cách này, các giao dịch chỉ cần được xác nhận trên chuỗi chính Bitcoin khi kênh được thiết lập và đóng và sau khi kênh được mở, người tham gia có thể thực hiện số lượng giao dịch nhanh chóng, chi phí thấp không giới hạn.
Vậy mọi người có thể tự nhiên suy nghĩ, làm thế nào để đảm bảo an toàn cho tiền? Bởi vì tiền sẽ chỉ quay trở lại ví tương ứng của họ khi kênh bị đóng, nếu một bên đóng kênh trước hoặc một bên không muốn đóng kênh thì không thể đạt được quy trình thanh toán như dự kiến.
Tính bảo mật tiền của người dùng trong Lightning Network chủ yếu được đảm bảo bởi hai cơ chế sau:
Khóa thời gian: Để ngăn chặn gian lận (ví dụ: một bên cố gắng phát đi một giao dịch đã lỗi thời để lấy thêm tiền), các kênh thanh toán thường bao gồm cơ chế khóa thời gian. Nếu một bên cố gắng thông báo một giao dịch cũ thì bên kia có thời gian để phản ứng và thông báo trạng thái mới nhất.
Giám sát: Người tham gia cần thường xuyên giám sát mạng để đảm bảo rằng bên kia không cố gắng phát tán các giao dịch cũ.
Các ví dụ về quy trình cơ bản và bảo mật thanh toán
Chúng tôi sử dụng Hãy lấy một ví dụ để minh họa quy trình cơ bản này, trong ví dụ này, người dùng A và B muốn thực hiện nhiều giao dịch thông qua Lightning Network.
Bước 1 - Thiết lập kênh thanh toán: Cả hai bên tham gia giao dịch (ví dụ: Alice và Bob) cùng nhau tạo địa chỉ nhiều chữ ký (multisig) và gửi tiền đến địa chỉ này Số tiền ban đầu (ví dụ: Alice gửi 5 BTC và Bob gửi 3 BTC). Giao dịch ban đầu này được xác nhận trên chuỗi chính Bitcoin, đánh dấu việc thiết lập kênh thanh toán.
Bước thứ hai - Cả hai bên thực hiện giao dịch ngoài chuỗi: Sau khi kênh thanh toán được thiết lập, cả hai bên có thể bắt đầu số lượng giao dịch ngoài chuỗi không giới hạn mà không cần phải đi đến chuỗi mọi lúc Được ghi lại trên chuỗi chính Bitcoin. Đối với mỗi giao dịch ngoài chuỗi, cả hai bên đều cập nhật bảng cân đối kế toán được duy trì chung để phản ánh việc phân bổ vốn hiện tại. Ví dụ: có ba giao dịch đã xảy ra: 1) A chuyển 1,0 BTC cho B; 2) B chuyển 0,5 BTC cho A; 3) A lại chuyển 0,2 BTC cho B.
Sau các giao dịch này, theo bảng cân đối kế toán, A đã chuyển tổng cộng 0,7BTC cho B, tức là A: 4,3BTC, B: 3,7BTC< /p>
Bước 3: A hoặc B có thể gửi kết quả cuối cùng này. A chuyển 0,7 BTC cho B để đóng kênh;
Bước 4: Đợi thời gian khóa kết thúc, trước khi thời gian khóa kết thúc, A hoặc B có thể gửi kết quả giao dịch sau đó được hai bên ký để ngăn chặn một trong hai bên nhận được kết quả giao dịch cuối cùng Pro;
Bước 5: Khóa thời gian kết thúc và kênh bị đóng. Địa chỉ multisig xử lý giao dịch cuối cùng và trả lại tiền cho A và B; trong ví dụ này, A sẽ nhận được 4,3BTC và B sẽ nhận được 3,7BTC.
Để ngăn chặn các bên không trung thực gửi trạng thái cũ, Lightning Network khuyến khích người dùng duy trì trực tuyến hoặc ủy thác các dịch vụ giám sát của bên thứ ba (chẳng hạn như "tháp giám sát") để giám sát hành vi không trung thực của mạng. Nếu B phát hiện ra A đang cố gắng gửi trạng thái cũ, B có thể sử dụng trạng thái mới nhất mà anh ta nắm giữ có chứa chữ ký của A làm bằng chứng và gửi lên mạng để sửa chữa và trừng phạt hành vi không trung thực của A.
Nếu A gửi trạng thái không mới nhất và B có thể chứng minh rằng có trạng thái cập nhật thì giao thức Lightning Network cho phép B không chỉ khôi phục trạng thái của chính mình tiền, nhưng cũng có khả năng lấy đi một phần hoặc toàn bộ tiền của A như một hình phạt. Cơ chế này làm tăng đáng kể chi phí cho nỗ lực gian lận, từ đó bảo vệ hành vi trung thực của mạng.
Định tuyến và thanh toán nhiều bước
Như đã thảo luận trước đó, hai bên chuyển khoản thanh toán kênh (kênh trạng thái) để nâng cao hiệu quả và thông lượng thông qua thanh toán ngoài chuỗi và thiết lập quy trình tính phí giao dịch. Chúng tôi biết rằng tất cả người dùng có giao dịch đều không thể thiết lập kênh thanh toán. Lightning Network có thể giải quyết vấn đề này thông qua định tuyến và thanh toán nhiều bước. Điều này tương tự với hệ thống mạng hiện tại của chúng tôi, mỗi người dùng cuối chỉ cần một số nhà cung cấp dịch vụ (tương đương với các cổng) được chính họ nhận ra để thiết lập các kênh trạng thái và các nhà cung cấp dịch vụ này sau đó sẽ thiết lập các kênh trạng thái giữa họ, từ đó hình thành một mạng. thanh toán cho phép mọi tương tác và chuyển giao giữa những người dùng trong toàn bộ Lightning Network.
Hãy minh họa cách hoạt động của định tuyến và thanh toán nhiều bước trong Lightning Network bằng một ví dụ đơn giản: Giả sử có bốn người dùng trên Lightning Network: Alice (A) , Bob (B), Carol (C) và Dave (D). Alice có kênh thanh toán được kết nối trực tiếp với Bob, Bob có kênh được kết nối với Carol và Carol có kênh được kết nối với Dave. Bây giờ, Alice muốn gửi khoản thanh toán cho Dave nhưng không có kênh thanh toán trực tiếp nào giữa cô ấy và Dave.
Bước 1: Tìm tuyến đường
Sử dụng ứng dụng khách của Alice thuật toán định tuyến của Lightning Network để tìm đường đến Dave. Trong ví dụ này, đường dẫn đơn giản nhất là Alice -> Bob -> Carol -> Dave.
Bước 2: Tạo thanh toán
Alice quyết định gửi 0,01 BTC cho Dave. Khách hàng của cô ấy tạo một yêu cầu thanh toán có chứa chi tiết thanh toán và một số đặc biệt - hàm băm của hình ảnh thanh toán trước (một số ngẫu nhiên do Dave tạo).
Bước 3: Sử dụng HTLC
Để thực hiện một cách an toàn Đối với thanh toán nhiều bước, mỗi nút trung gian (Bob và Carol) tạo một HTLC. HTLC cho phép các nút trung gian chuyển tiếp thanh toán nhưng cuối cùng chỉ có thể nhận được tiền nếu họ biết hình ảnh thanh toán trước. Điều này đảm bảo rằng khoản thanh toán cuối cùng chỉ được mở khóa khi nó đã đến tay Dave đầy đủ.
Bước 4: Chuyển tiếp thanh toán
Đầu tiên Alice gửi khoản thanh toán cho Bob, được khóa trong HTLC.
Bob thấy rằng khoản thanh toán này sẽ được chuyển tiếp đến Carol nên anh ấy tạo một HTLC mới và gửi nó cho Carol.
Carol cũng làm điều tương tự, tạo HTLC và gửi nó cho Dave.
Ở mỗi bước, khoản thanh toán được khóa trong một HTLC mới và mỗi nút chỉ biết hình ảnh thanh toán trước. Số tiền này sẽ được chuyển được mở khóa vào một ngày sau đó.
Bước 5: Mở khóa thanh toán
Sau khi Dave nhận được khoản thanh toán, anh ấy sẽ cung cấp hình ảnh trước khoản thanh toán cho Carol, mở khóa HTLC của cô ấy ở đó và nhận được tiền.
Carol sử dụng hình ảnh trước thanh toán này để mở khóa HTLC do Bob gửi cho cô ấy và gửi hình ảnh trước thanh toán cho Bob để mở khóa cô ấy nên thu được tiền.
Bob cuối cùng cũng sử dụng hình ảnh thanh toán trước để mở khóa HTLC mà Alice đưa cho anh ấy, hoàn tất toàn bộ quá trình thanh toán.
Bước 6: Xác nhận và đóng
< p style="text-align: left;">Sau khi toàn bộ chuỗi thanh toán hoàn tất, tất cả HTLC trung gian sẽ được mở khóa và mọi người đều nhận được số tiền đến hạn của mình. Thanh toán được xác nhận và tất cả các nút tham gia cập nhật trạng thái kênh thanh toán của họ.
Phân tích ưu, nhược điểm và triển vọng phát triển của Lightning Network
Theo giới thiệu trước, chúng tôi có thể nói rằng Lightning Network về mặt kỹ thuật giải quyết một số vấn đề của mạng Bitcoin và có những ưu điểm sau: giao dịch tức thời, phí giao dịch thấp, khả năng mở rộng cao và tần suất giao dịch cao, bảo vệ quyền riêng tư tốt hơn và hỗ trợ thanh toán vi mô. Do đó, thông qua những đổi mới công nghệ như Lightning Network, Bitcoin có thể trở thành tiền điện tử thực sự, thay vì chỉ là một loại tiền tệ có giá trị được lưu trữ.
Nhưng đồng thời, chúng tôi cũng thấy được sự phức tạp về mặt kỹ thuật của Lightning Network. Đồng thời, việc xây dựng mạng không chỉ là yếu tố kỹ thuật mà tốc độ nhận biết và chấp nhận của người dùng cũng rất quan trọng. Mặc dù Bitcoin đã nhận được sự công nhận rộng rãi hơn về giá trị của nó nhưng công suất tổng thể của Lightning Network không cao. Trong quá trình phát triển, những điểm yếu sau sẽ là trở ngại:
< li>Yêu cầu trực tuyến: Để nhận thanh toán, thiết bị của người dùng cần duy trì trạng thái trực tuyến để phản hồi theo thời gian thực đối với các yêu cầu thanh toán hoặc nỗ lực gian lận có thể xảy ra.
Khóa quỹ: Tiền trong kênh thanh toán sẽ bị khóa trước khi kênh đóng, nghĩa là tiền không thể Miễn phí để sử dụng.
Sự phức tạp và trải nghiệm người dùng: Việc thiết lập và quản lý các kênh thanh toán có thể phức tạp đối với người dùng bình thường, đặc biệt là khi liên quan đến các vấn đề về kênh chẳng hạn như quản lý tiền và định tuyến.
Thách thức về tính thanh khoản và định tuyến của mạng: Mặc dù trên lý thuyết, Lightning Network có thể xử lý một số lượng lớn giao dịch nhưng trên thực tế, hiệu quả của nó rất cao phụ thuộc vào Việc phân phối các kênh thanh toán và tính thanh khoản tài chính trong mạng. Việc tìm kiếm các tuyến thanh toán hiệu quả đôi khi có thể là một thách thức.
Rủi ro tập trung hóa: Mặc dù Lightning Network được thiết kế để phi tập trung hóa nhưng có thể có các nút lớn hoặc nhà cung cấp dịch vụ tập trung Rủi ro kiểm soát lưu lượng truy cập lớn hơn, có thể dẫn đến một mức độ tập trung nào đó của mạng.
Với sự phát triển của hệ sinh thái Bitcoin, mặc dù nhiều giải pháp BTC Layer2 khác nhau đã được đưa ra nhưng đồng thời cũng có sự phát triển chung cũng đã mang đến những cơ hội chưa từng có cho Lightning Network. Nếu các nhà thiết kế của Lightning Network tạo ra những bước đột phá lớn về trải nghiệm người dùng, quy mô mạng và khả năng tích hợp với các công nghệ khác, tôi tin rằng Lightning Network sẽ mở ra một mùa xuân mới.